提交 2e7d8862 authored 作者: 133's avatar 133

1

上级 d759eb9d
......@@ -50,6 +50,22 @@ public enum StatusEnum {
CHECK_DETAIL_3(123, "等待核查员B处理"),
/**
* 清退任务
*/
//以下为stat状态
SEND_BACK_1200(1200, "省清退查看"),
SEND_BACK_1201(1201, "统计数据等待办结"),
SEND_BACK_1202(1202, "待审核"),
SEND_BACK_1203(1203, "出库待校验"),
SEND_BACK_1204(1204, "入库待审核"),
SEND_BACK_1205(1205, "装备入库发起成功等待审核"),
// SEND_BACK_1204(1204, "入库待审核"),
/**
* 业务完结
*/
......@@ -76,6 +92,8 @@ public enum StatusEnum {
TRAIN1009(1009,"成绩确认"),
//
TRAIN1010(1010,"待培训"),
WORKHANDOVER1011(1011,"待上传签字单"),
//
// TRAIN1011(1011,""),
//
......
package com.tykj.dev.device.sendback.controller;
import com.tykj.dev.config.swagger.AutoDocument;
import com.tykj.dev.device.sendback.entity.domain.SendBackBillDetail;
import com.tykj.dev.device.sendback.entity.vo.SendBackOutFormVo;
import com.tykj.dev.device.sendback.entity.vo.SendBackOutVo;
import com.tykj.dev.device.sendback.entity.vo.SendBackRequst;
import com.tykj.dev.device.sendback.entity.vo.SendBackVo;
import com.tykj.dev.device.sendback.service.SendBackService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
/**
* <h4>Description : </h4>
*
* @Author czq
* @Date 2020-08-18 10:39
* @Version 1.0
*/
@RestController
@Api(tags = "装备清退",description = "包括装备清退、装备异常处理、装备出库、装备入库")
@AutoDocument
@RequestMapping("/sendBack")
public class SendBackController {
private final SendBackService sendBackService;
@Autowired
public SendBackController(SendBackService sendBackService) {
this.sendBackService = sendBackService;
}
@ApiOperation(value = "选择装备,返回清退单",notes = "根据待清退装备的id集合查看清退单")
@PostMapping("/addDeviceToSendBack")
public ResponseEntity addDeviceToSendBack(@RequestBody SendBackRequst sendBackRequst){
return sendBackService.addDeviceToSendBack(sendBackRequst.getDeviceIdList(),sendBackRequst.getType());
}
@ApiOperation(value = "确定清退装备,生成Task",notes = "点击确定,生成清退单")
@PostMapping("/addSendBackTask/{userId}")
ResponseEntity addSendBackTask(@RequestBody SendBackVo sendBackVo, @PathVariable("userId") Integer userId){
return sendBackService.addSendBackTask(sendBackVo,userId);
}
@ApiOperation(value = "点击查看Task",notes = "查看清退相关的task都在这里")
@GetMapping("/getSendBackByTask/{taskId}")
ResponseEntity getSendBackByTask(@PathVariable("taskId") Integer taskId){
return sendBackService.getSendBackByTask(taskId);
}
@ApiOperation(value = "异常装备提交",notes = "上报需要上报异常的装备")
@PostMapping("/exceptionTask/{taskId}/{userId}")
ResponseEntity exceptionTask(@RequestBody SendBackRequst sendBackRequst,@PathVariable("taskId") Integer taskId,@PathVariable("userId") Integer userId){
return sendBackService.exceptionTask(sendBackRequst,taskId,userId);
}
@ApiOperation(value = "处理异常,修改装备的所属单位",notes = "处理异常,修改装备的所属单位")
@PostMapping("/endException/{userId}/{taskId}")
ResponseEntity endException(@PathVariable("userId") Integer userId,@PathVariable("taskId") Integer taskId){
return sendBackService.endException(taskId,userId);
}
@ApiOperation(value = "清退装备校对发起——专管员A",notes = "清退装备校对发起——专管员A")
@PostMapping("/sendBackOutCheck/{userId}/{taskId}")
ResponseEntity sendBackOutCheck(@PathVariable("taskId") Integer taskId,@PathVariable("userId") Integer userId){
return sendBackService.sendBackOutCheck(taskId,userId);
}
@ApiOperation(value = "装备出库发起——专管员A",notes = "装备出库发起——专管员A")
@PostMapping("/sendBackOut/{taskId}/{userId}")
ResponseEntity sendBackOut(@PathVariable("taskId") Integer taskId, @RequestBody SendBackOutVo sendBackOut, @PathVariable("userId") Integer userId){
return sendBackService.sendBackOut(taskId,sendBackOut,userId);
}
/**
*装备出库审核——专管员B
* @return 成,
*/
@ApiOperation(value = "装备出库审核——专管员B",notes = "装备出库审核——专管员B")
@GetMapping("/sendBackOutExamine/{taskId}/{userId}/{type}")
ResponseEntity sendBackOutExamine(@PathVariable("taskId") Integer taskId,@PathVariable("userId") Integer userId,@PathVariable("type") Integer type){
return sendBackService.sendBackOutExamine(taskId,userId,type);
}
/**
* 入库-专管员B
* 1、通过,完结task
* 2、修改装备的所属地
* @return 成功
*/
@ApiOperation(value = "入库-专管员B",notes = "入库-专管员B")
@GetMapping("/sendBackIn/{taskId}/{userId}/{type}")
ResponseEntity sendBackIn(@PathVariable("taskId") Integer taskId,@PathVariable("userId") Integer userId,@PathVariable("type")Integer type){
return sendBackService.sendBackIn(taskId,userId,type);
}
@ApiOperation(value = "业务详情")
@GetMapping("/bussiness/{taskId}")
public ResponseEntity bussiness(@PathVariable("taskId") Integer task){
return sendBackService.bussiness(task);
}
@ApiOperation(value = "查询清退单列表")
@PostMapping("/getList")
public ResponseEntity getList(@RequestBody SendBackOutFormVo sendBackOutFormVo){
return sendBackService.getList(sendBackOutFormVo);
}
@ApiModelProperty(value = "查看某个型号的装备")
@PostMapping("/getDeviceByModel")
public ResponseEntity getDeviceByModel(@RequestBody SendBackRequst sendBackRequst){
return sendBackService.getDeviceByModel(sendBackRequst.getDeviceIdList());
}
@ApiOperation(value = "造数据用")
@PostMapping("/save")
public ResponseEntity save(@RequestBody SendBackBillDetail sendBackBillDetailEntity){
return sendBackService.save(sendBackBillDetailEntity);
}
@ApiOperation(value = "保存入库单")
@PostMapping("/saveBill")
public ResponseEntity saveSendBackBillDetailEntity(@RequestBody SendBackBillDetail sendBackBillDetailEntity){
return sendBackService.saveSendBackBillDetailEntity(sendBackBillDetailEntity);
}
@ApiOperation(value = "清退办结")
@GetMapping("/end/{taskId}")
public ResponseEntity endTask(@PathVariable("taskId") Integer taskId){
return sendBackService.endTask(taskId);
}
@ApiOperation(value = "入库申请")
@PostMapping("/sendBackInCheck/{taskId}/{userId}")
public ResponseEntity sendBackInCheck(@PathVariable("taskId") Integer taskId,@RequestBody SendBackOutVo sendBackOut,@PathVariable("userId") Integer userId) {
return sendBackService.sendBackInCheck(taskId,sendBackOut,userId);
}
}
package com.tykj.dev.device.sendback.subject.domin;
package com.tykj.dev.device.sendback.entity.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
......
package com.tykj.dev.device.sendback.subject.domin;
package com.tykj.dev.device.sendback.entity.domain;
import com.tykj.dev.device.library.subject.domin.DeviceLibrary;
import io.swagger.annotations.ApiModel;
......@@ -33,150 +33,179 @@ public class SendBackBillDetail {
*/
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id",columnDefinition = "not null int(11) 主键id")
@ApiModelProperty(name = "主键id")
private Integer id;
/**
* 申请文号
*/
@Column(name = "apply_number",columnDefinition = "not null varchar(255) 申请文号")
@ApiModelProperty(value = "申请文号")
private String applyNumber;
/**
* 批复文号
*/
@Column(name = "replay_number",columnDefinition = "not null varchar(255) 批复文号")
@ApiModelProperty(value = "批复文号")
private String replayNumber;
/**
* 发件单位
*/
@Column(name = "send_unit",columnDefinition = "not null varchar(32) 发件单位")
@ApiModelProperty(value = "发件单位")
private String sendUnit;
/**
* 收件单位
*/
@Column(name = "receive_unit",columnDefinition = "not null varchar(32) 收件单位")
@ApiModelProperty(value = "收件单位")
private String receiveUnit;
/**
* 配发时间
*/
@Column(name = "send_time",columnDefinition = "not null datetime 配发时间")
@ApiModelProperty(value = "配发时间")
private Date sendTime;
/**
* 接收时间
*/
@Column(name = "receive_time",columnDefinition = "null datetime 接收时间")
@ApiModelProperty(value = "接收时间")
private Date receiveTime;
/**
* 发件方id(A岗位)
*/
@Column(name = "send_userA_id",columnDefinition = "not null int(11) 发件方id(A岗位)")
@ApiModelProperty(value = "发件方id(A岗位)")
private Integer sendUseraId;
private Integer sendUserAId;
/**
* 发件方id(B岗位)
*/
@Column(name = "send_userB_id",columnDefinition = "not null int(11) 发件方id(B岗位)")
@ApiModelProperty(value = "发件方id(B岗位)")
private Integer sendUserbId;
private Integer sendUserBId;
/**
* 收件方id(A岗位)
*/
@Column(name = "receive_userA_id",columnDefinition = "not null int(11) 收件方id(A岗位)")
@ApiModelProperty(value = "收件方id(A岗位)")
private Integer receiveUseraId;
private Integer receiveUserAId;
/**
* 收件方id(B岗位)
*/
@Column(name = "receive_userB_id",columnDefinition = "null int(11) 收件方id(B岗位)")
@ApiModelProperty(value = "收件方id(B岗位)")
private Integer receiveUserbId;
private Integer receiveUserBId;
/**
* 出库附件文件名
*/
@Column(name = "file_name",columnDefinition = "not null varchar(32) 出库附件文件名")
@ApiModelProperty(value = "出库附件文件名")
private String fileName;
/**
* 出库附件文件地址URL
*/
@Column(name = "file_url",columnDefinition = "not null varchar(255) 出库附件文件地址URL")
@ApiModelProperty(value = "出库附件文件地址URL")
private String fileUrl;
/**
* 账单文件名
*/
@Column(name = "bill_file_name",columnDefinition = "null varchar(32) 账单文件名")
@ApiModelProperty(value = "账单文件名")
private String billFileName;
/**
* 账单文件地址URL
*/
@Column(name = "bill_file_url",columnDefinition = "null varchar(255) 账单文件地址URL")
@ApiModelProperty(value = "账单文件地址URL")
private String billFileUrl;
/**
* 退回状态(1:退回待审核,2:退回审核失败,3:退回中,4:退回接收待审核,5:退回接收审核失败,6:退回成功)
*/
@Column(name = "send_back_status",columnDefinition = "not null int(11) 退回状态(1:退回待审核,2:退回审核失败,3:退回中,4:退回接收待审核,5:退回接收审核失败,6:退回成功)")
@ApiModelProperty(value = "退回状态(1:退回待审核,2:退回审核失败,3:退回中,4:退回接收待审核,5:退回接收审核失败,6:退回成功)")
private Integer sendBackStatus;
/**
* 退回装备数量
*/
@Column(name = "send_back_count",columnDefinition = "not null int(11) 退回装备数量")
@ApiModelProperty(value = "退回装备数量")
private Integer sendBackCount;
/**
* 已出库装备数量
*/
@Column(name = "sended_count",columnDefinition = "not null int(11) 已出库装备数量")
@ApiModelProperty(value = "已出库装备数量")
private Integer sendedCount;
/**
* 已接收装备数量
*/
@Column(name = "receive_count",columnDefinition = "null int(11) 已接收装备数量")
@ApiModelProperty(value = "已接收装备数量")
private Integer receiveCount;
/**
* 出库检查详情(装备主键id+核对结果(0缺失1无误3新增,字符x作为分隔符)),例如x10x21x32x,意为主键id为1的装备缺失,为2的无误,为3的不匹配
*/
@Column(name = "send_check_detail",columnDefinition = "not null text 出库检查详情(装备主键id+核对结果(0缺失1无误3新增,字符x作为分隔符)),例如x10x21x32x,意为主键id为1的装备缺失,为2的无误,为3的不匹配")
@ApiModelProperty(value = "出库检查详情(装备主键id+核对结果(0缺失1无误3新增,字符x作为分隔符)),例如x10x21x32x,意为主键id为1的装备缺失,为2的无误,为3的不匹配")
private String sendCheckDetail;
/**
* 出库检查结果(缺失数量x新增数量),例如1x1,意为缺失1台,新增一条
*/
@Column(name = "send_check_result",columnDefinition = "not null varchar(32) 出库检查结果(缺失数量x新增数量),例如1x1,意为缺失1台,新增一条")
@ApiModelProperty(value = "出库检查结果(缺失数量x新增数量),例如1x1,意为缺失1台,新增一条")
private String sendCheckResult;
/**
* 接收方入库检查详情(装备主键id+核对结果(0缺失1无误3不匹配,字符x作为分隔符)),例如x10x21x32x,意为主键id为1的装备缺失,为2的无误,为3的不匹配
*/
@Column(name = "receive_check_detail",columnDefinition = "null text 接收方入库检查详情(装备主键id+核对结果(0缺失1无误3不匹配,字符x作为分隔符)),例如x10x21x32x,意为主键id为1的装备缺失,为2的无误,为3的不匹配")
@ApiModelProperty(value = "接收方入库检查详情(装备主键id+核对结果(0缺失1无误3不匹配,字符x作为分隔符)),例如x10x21x32x,意为主键id为1的装备缺失,为2的无误,为3的不匹配")
private String receiveCheckDetail;
/**
* 接收方检查结果(缺失数量x新增数量),例如1x1,意为缺失1台,新增一条
*/
@Column(name = "receive_check_result",columnDefinition = "null varchar(32) 接收方检查结果(缺失数量x新增数量),例如1x1,意为缺失1台,新增一条")
@ApiModelProperty(value = "接收方检查结果(缺失数量x新增数量),例如1x1,意为缺失1台,新增一条")
private String receiveCheckResult;
/**
* Ǵ作为分隔符,维修装备的主键id加备注,例如x1Ǵ备注1Ǵx2Ǵ备注2Ǵx,意为id为1的装备在维修,备注为备注1,id为2的装备在维修,备注为备注2
*/
@Column(name = "repair_device_detail",columnDefinition = "null text Ǵ作为分隔符,维修装备的主键id加备注,例如x1Ǵ备注1Ǵx2Ǵ备注2Ǵx,意为id为1的装备在维修,备注为备注1,id为2的装备在维修,备注为备注2")
@ApiModelProperty(value = "Ǵ作为分隔符,维修装备的主键id加备注,例如x1Ǵ备注1Ǵx2Ǵ备注2Ǵx,意为id为1的装备在维修,备注为备注1,id为2的装备在维修,备注为备注2")
private String repairDeviceDetail;
/**
* 创建用户id
*/
@CreatedBy
@Column(name = "create_user_id",columnDefinition = "not null int(11) 创建用户id")
@ApiModelProperty(value = "创建用户id")
private Integer createUserId;
/**
* 创建时间
*/
@CreatedDate
@Column(name = "create_time",columnDefinition = "not null datetime 创建时间")
@ApiModelProperty(value = "创建时间")
private Date createTime;
/**
* 更新用户id
*/
@LastModifiedBy
@Column(name = "update_user_id",columnDefinition = "not null int(11) 更新用户id")
@ApiModelProperty(value = "更新用户id")
private Integer updateUserId;
/**
* 更新时间
*/
@LastModifiedDate
@Column(name = "update_time",columnDefinition = "not null datetime 更新时间")
@ApiModelProperty(value = "更新时间")
private Date updateTime;
/**
* 删除标记(0:未删除,1:已删除)
*/
@Column(name = "delete_tag",columnDefinition = "not null int(11) 删除标记(0:未删除,1:已删除)")
@ApiModelProperty(value = "删除标记(0:未删除,1:已删除)")
private Integer deleteTag;
......@@ -186,16 +215,16 @@ public class SendBackBillDetail {
@ApiModelProperty(value = "发件方名称(A岗位)")
private String sendUseraName;
private String sendUserAName;
@ApiModelProperty(value = "发件方名称(B岗位)")
private String sendUserbName;
private String sendUserBName;
@ApiModelProperty(value = "收件方名称(A岗位)")
private String receiveUseraName;
private String receiveUserAName;
@ApiModelProperty(value = "收件方名称(B岗位)")
private String receiveUserbName;
private String receiveUserBName;
@ApiModelProperty(value = "装备id")
private String deviceIds;
......@@ -207,4 +236,10 @@ public class SendBackBillDetail {
@ApiModelProperty(value = "装备List")
private List<DeviceLibrary> deviceLibraryEntities;
@ApiModelProperty(value = "不知道是什么的号码")
private String num;
@ApiModelProperty(value = "截至日期")
private Date time;
}
package com.tykj.dev.device.sendback.entity.vo;
import com.tykj.dev.device.sendback.entity.domain.SendBackBillDetail;
import io.swagger.annotations.ApiModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.List;
/**
* <h4>Description : </h4>
*
* @Author czq
* @Date 2020-08-19 19:09
* @Version 1.0
*/
@Data
@AllArgsConstructor
@ApiModel("返回查询列表")
public class ListVo {
private long count;
private List<SendBackBillDetail> sendBackBillDetailEntities;
}
package com.tykj.dev.device.sendback.entity.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import java.util.Date;
/**
* <h4>Description : </h4>
*
* @Author czq
* @Date 2020-08-17 17:26
* @Version 1.0
*/
@Data
@ApiModel("清退出库表单")
public class SendBackOutFormVo {
/**
* 申请文号
*/
@Column(name = "apply_number",columnDefinition = "not null varchar(255) 申请文号")
@ApiModelProperty(value = "申请文号")
private String applyNumber;
/**
* 批复文号
*/
@Column(name = "replay_number",columnDefinition = "not null varchar(255) 批复文号")
@ApiModelProperty(value = "批复文号")
private String replayNumber;
/**
* 发件单位
*/
@Column(name = "send_unit",columnDefinition = "not null varchar(32) 发件单位")
@ApiModelProperty(value = "发件单位")
private String sendUnit;
/**
* 收件单位
*/
@Column(name = "receive_unit",columnDefinition = "not null varchar(32) 收件单位")
@ApiModelProperty(value = "收件单位")
private String receiveUnit;
/**
* 配发时间
*/
@Column(name = "send_time",columnDefinition = "not null datetime 配发时间")
@ApiModelProperty(value = "配发时间")
private Date sendTime;
/**
* 接收时间
*/
@Column(name = "receive_time",columnDefinition = "null datetime 接收时间")
@ApiModelProperty(value = "接收时间")
private Date receiveTime;
/**
* 发件方id(A岗位)
*/
@Column(name = "send_userA_id",columnDefinition = "not null int(11) 发件方id(A岗位)")
@ApiModelProperty(value = "发件方id(A岗位)")
private String sendUserAName;
/**
* 发件方id(B岗位)
*/
@Column(name = "send_userB_id",columnDefinition = "not null int(11) 发件方id(B岗位)")
@ApiModelProperty(value = "发件方id(B岗位)")
private String sendUserBName;
/**
* 收件方id(A岗位)
*/
@Column(name = "receive_userA_id",columnDefinition = "not null int(11) 收件方id(A岗位)")
@ApiModelProperty(value = "收件方id(A岗位)")
private String receiveUserAName;
/**
* 收件方id(B岗位)
*/
@Column(name = "receive_userB_id",columnDefinition = "null int(11) 收件方id(B岗位)")
@ApiModelProperty(value = "收件方id(B岗位)")
private String receiveUserBName;
private Date startTime;
private Date endTime;
private Integer page;
private Integer size;
}
package com.tykj.dev.device.sendback.entity.vo;
import com.tykj.dev.device.library.subject.domin.DeviceLibrary;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
/**
* <h4>Description : 清退装备出库</h4>
*
* @Author czq
* @Date 2020-08-17 14:38
* @Version 1.0
*/
@Data
@ApiModel("清退装备出库")
public class SendBackOutVo {
@ApiModelProperty(value = "经办人")
private String name;
@ApiModelProperty(value = "经办人id")
private Integer id;
@ApiModelProperty(value = "截止时间")
private Date time;
@ApiModelProperty(value = "应出库")
private Integer shouldOut;
@ApiModelProperty(value = "实出库")
private Integer actualOut;
@ApiModelProperty(value = "出库确认单")
private String url;
@ApiModelProperty(value = "文件名")
private String fileName;
@ApiModelProperty(value = "审核人姓名")
private String reviewerName;
@ApiModelProperty(value = "审核人id")
private Integer reviewerNameId;
@ApiModelProperty(value = "发起人")
private String startUserIdName;
@ApiModelProperty(value = "出库装备清单")
private List<DeviceLibrary> deviceLibraryEntities;
//
// @ApiModelProperty(value = "非在库装备")
// private List<DeviceLibraryEntity> unDeviceLibraryEntities;
//
// @ApiModelProperty(value = "非在库装备备注")
// private HashMap<Integer,String> unDeviceDes;
@ApiModelProperty(value = "出库装备审核结果")
private HashMap<Integer,Integer> DeviceDes;
@ApiModelProperty(value = "清退单url")
private String returnNoteUrl;
@ApiModelProperty(value = "清退单name")
private String returnNoteName;
}
package com.tykj.dev.device.sendback.entity.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.HashMap;
import java.util.List;
/**
* <h4>Description : </h4>
*
* @Author czq
* @Date 2020-08-18 12:19
* @Version 1.0
*/
@Data
@ApiModel("用于数据接收")
public class SendBackRequst {
@ApiModelProperty(value = "装备数组")
private List<Integer> deviceIdList;
@ApiModelProperty(value = "父task的Id")
private Integer parentTaskId;
@ApiModelProperty(value = "为在库装备备注")
private HashMap<Integer,UnDeviceDesVo> unDeviceDes;
@ApiModelProperty(value = "查询类型,0:省级 1:市级 2:区县级")
private Integer type;
}
package com.tykj.dev.device.sendback.entity.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
/**
* <h4>Description : 待清退装备统计清单</h4>
*
* @Author czq
* @Date 2020-08-15 17:13
* @Version 1.0
*/
@Data
@ApiModel("待清退装备统计清单")
public class SendBackStatisticalVo {
@ApiModelProperty(value = "装备名称",example = "xxx装备")
public String name;
@ApiModelProperty(value = "统计总数",example = "200")
public Integer count = 0;
@ApiModelProperty(value = "装备id集合",example = "[1,2,3]")
private List<Integer> deviceIdList = new ArrayList<>();
@ApiModelProperty(value = "型号",example = "BM-001")
private String model;
@ApiModelProperty(value = "统计省或各市待清退统计单的数量,key为各市或各单位名称")
private HashMap<String,StatisticalVo> statistical = new HashMap<>();
}
package com.tykj.dev.device.sendback.entity.vo;
import com.tykj.dev.device.library.subject.domin.DeviceLibrary;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
/**
* <h4>Description : </h4>
*
* @Author czq
* @Date 2020-08-16 11:13
* @Version 1.0
*/
@Data
@ApiModel("清退表的表头、截至日期和经办人")
public class SendBackVo {
@ApiModelProperty(value = "经办人姓名")
private String name;
@ApiModelProperty(value = "截至日期")
private Date time;
@ApiModelProperty(value = "是否可以办结")
private Integer status;
@ApiModelProperty(value = "清退单的表头")
private List<String> header;
@ApiModelProperty(value = "清退表单内容,key为型号,value为表单内容")
private HashMap<String,HashMap<String,StatisticalVo>> map;
@ApiModelProperty(value = "所有清退装备的id")
private List<Integer> deviceIdList;
// @ApiModelProperty(value = "用于前端取值")
// private List<SendBackStatisticalVo> sendBackStatisticalVo;
//
// @ApiModelProperty(value = "将清退装备的id根据市或县分类,key为市名或县名,value该市或该县的idStrong")
// private HashMap<String,StringBuffer> cityClassify;
//
@ApiModelProperty(value = "异常装备")
private List<DeviceLibrary> unDevice;
@ApiModelProperty(value = "异常装备描述")
private List<UnDeviceDesVo> unDeviceDes;
@ApiModelProperty(value = "区域和任务id")
private HashMap<String,Integer> areaToTaskId;
@ApiModelProperty(value = "前段取值")
private List<HashMap<String,StatisticalVo>> dataList;
@ApiModelProperty(value = "查看某个区域")
private HashMap<String,List<Integer>> areaToIds;
@ApiModelProperty(value = "查看某个模板")
private HashMap<String,List<Integer>> modelToIds;
}
package com.tykj.dev.device.sendback.entity.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* <h4>Description : 统计省或各市待清退统计单的数量</h4>
*
* @Author czq
* @Date 2020-08-15 17:26
* @Version 1.0
*/
@Data
@ApiModel("统计省或各市待清退统计单的数量")
public class StatisticalVo {
@ApiModelProperty(value = "装备名称")
private String name = "";
@ApiModelProperty(value = "所有装备的数量",example = "20")
private Integer allCount = 0;
@ApiModelProperty(value = "已清退装备的数量",example = "10")
private Integer valCount = 0;
@ApiModelProperty(value = "状态",example = "1")
private Integer status = 3;
@ApiModelProperty(value = "各市或各单位的id集合",example = "[1,2,3]")
private List<Integer> deviceIdList = new ArrayList<>();
public Integer status(Integer status){
/*
判断是否可办结
*/
int allStatus = 0;
if(allCount != 0 && valCount == 0){
/*
清退完成
*/
this.status = 3;
return 0;
}else if(allCount != 0){
/*
清退未完成
*/
this.status = status;
allStatus = 1;
}
return allStatus;
}
}
package com.tykj.dev.device.sendback.entity.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* <h4>Description : </h4>
*
* @Author czq
* @Date 2020-08-19 14:41
* @Version 1.0
*/
@Data
@ApiModel("未在库装备说明")
public class UnDeviceDesVo {
@ApiModelProperty(value = "时间")
private Date time;
@ApiModelProperty(value = "用户名称")
private String name;
@ApiModelProperty(value = "单位名称")
private String unitName;
@ApiModelProperty(value = "备注")
private String des;
}
package com.tykj.dev.device.sendback.repository;
import com.tykj.dev.device.sendback.subject.domin.SendBackBill;
import com.tykj.dev.device.sendback.entity.domain.SendBackBill;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......
package com.tykj.dev.device.sendback.repository;
import com.tykj.dev.device.sendback.subject.domin.SendBackBillDetail;
import com.tykj.dev.device.sendback.entity.domain.SendBackBillDetail;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
......
package com.tykj.dev.device.sendback.response;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* Description : file-server
* Date : 2018/1/9 16:04
*
* @author : M@tr!x [xhyrzldf@foxmail.com]
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class FileServerResponse<T> {
/**
* 错误码
*/
private Integer code;
/**
* 提示信息
*/
@JSONField(ordinal = 2)
private String msg;
/**
* 具体的内容
*/
@JSONField(ordinal = 3)
private T data;
}
package com.tykj.dev.device.sendback.response;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* <p>Description : 异常结果枚举类,用于统一异常状态码与相关描述信息
*
* @author : M@tr!x [xhyrzldf@foxmail.com]
* @Date : 2017/12/13 0:51
*/
@AllArgsConstructor
@Getter
public enum ResponseCode {
/**
* 服务器成功返回用户请求的数据
*/
OK(200, "[GET]:服务器成功返回用户请求的数据,返回资源对象"),
/**
* 用户新建或修改数据成功
*/
CREATED(201, "[POST/PUT/PATCH]:用户新建或修改数据成功,返回新生成或修改的资源对象"),
/**
* 表示一个请求已经进入后台排队(异步任务)
*/
ACCEPTED(202, "[*]:表示一个请求已经进入后台排队(异步任务)"),
/**
* 用户上传文件成功
*/
UPLOADED(203, "[POST]文件上传成功"),
/**
* 用户删除数据成功
*/
NO_CONTENT(204, " [DELETE]:用户删除数据成功"),
/**
* 用户发出的请求有错误,服务器没有进行新建或修改数据的操作
*/
INVALID_REQUEST(400, "[POST/PUT/PATCH]:用户发出的请求有错误,服务器没有进行新建或修改数据的操作"),
/**
* 表示用户没有权限(令牌、用户名、密码错误)
*/
UNAUTHORIZED(401, " [*]:表示用户没有权限(令牌、用户名、密码错误)"),
/**
* 表示用户登录超时
*/
LOGINOUTTIME(402, " [*]:表示用户登录超时"),
/**
* 表示用户得到授权(与401错误相对),但是访问是被禁止的
*/
FORBIDDEN(403, " [*] 表示用户得到授权(与401错误相对),但是访问是被禁止的"),
/**
* 用户发出的请求针对的是不存在的记录,服务器没有进行操作,该操作是幂等的
*/
NOT_FOUND(404, " [*]:用户发出的请求针对的是不存在的记录,服务器没有进行操作"),
/**
* 非法参数,请求中附带的参数不符合要求规范
*/
ILLEGAL_PARAMETER(405, "[*]:非法参数,请求中附带的参数不符合要求规范"),
/**
* 用户请求的格式不可得(比如用户请求JSON格式,但是只有XML格式)
*/
NOT_ACCEPTABLE(406, " [GET]:用户请求的格式不可得(比如用户请求JSON格式,但是只有XML格式)"),
/**
* 用户的参数不得为空
*/
NOT_NULL_PARAMETER(408, "传递的参数不能为空"),
/**
* 用户请求的资源被永久删除,且不会再得到的
*/
GONE(413, "[GET]:用户请求的资源被永久删除,且不会再得到的"),
/**
* [PUT,PATCH,POST,DELETE]:操作没有成功,并没有数据发生变化
*/
NO_CHANGED(414, "[PUT,PATCH,POST,DELETE]:操作没有成功,并没有数据发生变化"),
/**
* 创建一个对象时,发生一个验证错误
*/
UNPROCESSABLE_ENTITY(422, "[POST/PUT/PATCH] 当创建一个对象时,发生一个验证错误"),
/**
* 服务器发生错误
*/
INTERNAL_SERVER_ERROR(500, "服务器发生错误");
/**
* 结果代码编号
*/
private Integer code;
/**
* 结果信息
*/
private String msg;
}
package com.tykj.dev.device.sendback.response;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* Description : 文件服务器上传的返回数据类
* Date : 2018/1/9 16:16
*
* @author : M@tr!x [xhyrzldf@foxmail.com]
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class fileDataStruct {
/**
* 原始文件名
*/
private String originalFileName;
/**
* 在服务器中的文件名
*/
private String serverFileName;
/**
* 服务器中的文件路径
*/
private String serverFilePath;
}
package com.tykj.dev.device.sendback.service;
import com.tykj.dev.device.sendback.entity.domain.SendBackBillDetail;
import com.tykj.dev.device.sendback.entity.vo.SendBackOutFormVo;
import com.tykj.dev.device.sendback.entity.vo.SendBackOutVo;
import com.tykj.dev.device.sendback.entity.vo.SendBackRequst;
import com.tykj.dev.device.sendback.entity.vo.SendBackVo;
import org.springframework.http.ResponseEntity;
import java.util.List;
/**
* <h4>Description : </h4>
*
* @Author czq
* @Date 2020-08-15 18:15
* @Version 1.0
*/
public interface SendBackService {
/**
* 选择装备,返回清退单
* @param deviceIdList 待清退装备的id集合
* @return 清退单
*/
ResponseEntity addDeviceToSendBack(List<Integer> deviceIdList, Integer type);
/**
* 确定清退装备,生成Task
* @param sendBackVo 待清退装备的表单
* @return 成功
*/
ResponseEntity addSendBackTask(SendBackVo sendBackVo, Integer startUserId);
/**
* 点击查看Task,返回请退单
* @return 清退单
*/
ResponseEntity getSendBackByTask(Integer taskId);
/**
* 异常提交
* @return 成功
*/
ResponseEntity exceptionTask(SendBackRequst sendBackRequst, Integer parentTaskId, Integer userId);
/**
* 处理异常,修改装备的所属单位
* @param taskId 上报异常的taskid
* @return 成功
*/
ResponseEntity endException(Integer taskId, Integer userId);
/**
* 清退装备校对发起——专管员A
* @param taskId 上级下发的清退装备的task
* @return 成功
*/
ResponseEntity sendBackOutCheck(Integer taskId, Integer userId);
/**
* 装备出库发起——专管员A
* @return 成功
*/
ResponseEntity sendBackOut(Integer taskId, SendBackOutVo sendBackOut, Integer userId);
/**
*装备出库审核——专管员B
* @return 成,
*/
ResponseEntity sendBackOutExamine(Integer taskId, Integer startUserId, Integer type);
/**
* 入库-专管员B
* 1、通过,完结task
* 2、修改装备的所属地
* @return 成功
*/
ResponseEntity sendBackIn(Integer taskIdy, Integer userId, Integer type);
/*
查看业务详情,只显示表格和异常装备
*/
ResponseEntity bussiness(Integer task);
/*
查询清退单
*/
ResponseEntity getList(SendBackOutFormVo sendBackOutFormVo);
/*
造数据用
*/
ResponseEntity save(SendBackBillDetail sendBackBillDetailEntity);
/*
查看此次清退的某个型号的装备
*/
ResponseEntity getDeviceByModel(List<Integer> deviceList);
ResponseEntity saveSendBackBillDetailEntity(SendBackBillDetail sendBackBillDetailEntity);
ResponseEntity sendBackInCheck(Integer taskId, SendBackOutVo sendBackOut, Integer userId);
/**
* 办结清退任务
* @param taskId 任务id
* @return 成功
*/
ResponseEntity endTask(Integer taskId);
}
......@@ -34,5 +34,4 @@
<artifactId>dev-library</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
......@@ -47,4 +47,7 @@ public interface TaskDao extends JpaRepository<Task, Integer>, JpaSpecificationE
@Query("select o.billId from Task o where o.parentTaskId = ?1 and o. businessType = ?2")
Integer findBillIdByParentId(int parentTaskId, int businessType);
List<Task> findTaskEntitiesByParentTaskId(Integer parentTaskId);
}
......@@ -2,7 +2,10 @@ package com.tykj.dev.device.train.controller;
import com.tykj.dev.config.swagger.AutoDocument;
import com.tykj.dev.device.train.entity.vo.HandoverVo;
import com.tykj.dev.device.train.entity.vo.WorkHandoverAddVo;
import com.tykj.dev.device.train.entity.vo.WorkHandoverEndAddVo;
import com.tykj.dev.device.train.service.TrainThemeService;
import com.tykj.dev.device.train.service.WorkHandoverService;
import com.tykj.dev.device.user.subject.dao.UnitsDao;
import com.tykj.dev.device.user.subject.entity.SecurityUser;
import com.tykj.dev.device.user.subject.service.MgrcertService;
......@@ -29,11 +32,7 @@ import springfox.documentation.annotations.ApiIgnore;
public class HandoverController {
@Autowired
TrainThemeService trainThemeService;
@Autowired
MgrcertService mgrcertService;
@Autowired
UnitsDao unitsDao;
WorkHandoverService workHandoverService;
@Autowired
UserService userService;
......@@ -44,27 +43,25 @@ public class HandoverController {
return ResponseEntity.ok(userService.findByIdHandoverUser(userId));
}
@PostMapping(value = "/job")
@ApiOperation(value = "用户工作交接")
public ResponseEntity getHandoverUser(@ApiIgnore @AuthenticationPrincipal SecurityUser securityUser, @RequestBody HandoverVo handoverVo) {
@PostMapping(value = "/create")
@ApiOperation(value = "新建工作交接")
public ResponseEntity getHandoverUser(@ApiIgnore @AuthenticationPrincipal SecurityUser securityUser, @RequestBody WorkHandoverAddVo workHandoverAddVo) {
return ResponseEntity.ok(workHandoverService.createWorkHandover(workHandoverAddVo,securityUser));
}
@PostMapping(value = "/uploadDocuments")
@ApiOperation(value = "完结工作交接")
public ResponseEntity getHandoverUser( @RequestBody WorkHandoverEndAddVo workHandoverEndAddVo) {
return ResponseEntity.ok(workHandoverService.endWorkHandover(workHandoverEndAddVo));
}
// jobService.findByIdsList(handoverVo.getCommissionJobIds()).forEach(
// jobEntity -> {
// if (jobEntity.getBelongUserId()==handoverVo.getHandoverUserId()) {
// jobEntity.setBelongUserId(handoverVo.getBeHandoverUserId());
// jobEntity.setInvoleUserId(jobEntity.getInvoleUserId().replace(handoverVo.getHandoverUserId().toString(),handoverVo.getBeHandoverUserId().toString()));
// jobService.update(jobEntity);
// }
// }
// );
// jobService.findByIdsList(handoverVo.getTrackingJobIds()).forEach(
// jobEntity -> {
// jobEntity.setInvoleUserId(jobEntity.getInvoleUserId().replace(handoverVo.getHandoverUserId().toString(),handoverVo.getBeHandoverUserId().toString()));
// jobService.update(jobEntity);
// }
// );
@GetMapping(value = "/query/{workId}")
@ApiOperation(value = "完结工作交接")
public ResponseEntity getHandoverUser( @PathVariable Integer workId) {
return ResponseEntity.ok("成功");
return ResponseEntity.ok(workHandoverService.findById(workId));
}
......
package com.tykj.dev.device.train.entity;
import com.tykj.dev.device.train.entity.vo.WorkHandoverVo;
import com.tykj.dev.misc.base.BeanHelper;
import com.tykj.dev.misc.utils.JacksonUtil;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.modelmapper.ModelMapper;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.annotation.LastModifiedDate;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
......@@ -58,4 +64,28 @@ public class WorkHandover {
* 文件集合(装备列表签字文件集合)
*/
private String fileLists;
/**
* 状态 1.新建 2.完成
*/
private Integer status;
/**
* 创建时间
*/
@CreatedDate
private Integer createTime;
/**
* 更新时间
*/
@LastModifiedDate
private Integer updateTime;
public WorkHandoverVo toWorkHandover(){
ModelMapper mapper= BeanHelper.getUserMapper();
WorkHandoverVo workHandoverVo= mapper.map(this, WorkHandoverVo.class);
return workHandoverVo;
}
}
package com.tykj.dev.device.train.entity.vo;
import com.tykj.dev.device.train.entity.WorkHandover;
import com.tykj.dev.misc.base.BeanHelper;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.modelmapper.ModelMapper;
/**
* @author zjm
......@@ -15,10 +18,6 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor
@NoArgsConstructor
public class WorkHandoverAddVo {
/**
* 工作交接id
*/
private Integer workHandoverId;
/**
* 交接人
......@@ -34,4 +33,14 @@ public class WorkHandoverAddVo {
* 监交人
*/
private String inUserName;
public WorkHandover toWorkHandover(){
ModelMapper mapper= BeanHelper.getUserMapper();
WorkHandover workHandover= mapper.map(this, WorkHandover.class);
workHandover.setStatus(1);
return workHandover;
}
}
......@@ -3,6 +3,8 @@ package com.tykj.dev.device.train.service;
import com.tykj.dev.device.train.entity.WorkHandover;
import com.tykj.dev.device.train.entity.vo.WorkHandoverAddVo;
import com.tykj.dev.device.train.entity.vo.WorkHandoverEndAddVo;
import com.tykj.dev.device.train.entity.vo.WorkHandoverVo;
import com.tykj.dev.device.user.subject.entity.SecurityUser;
/**
* @author zjm
......@@ -16,11 +18,16 @@ public interface WorkHandoverService {
/**
* 新建工作交接流程
*/
WorkHandover createWorkHandover(WorkHandoverAddVo workHandoverAddVo);
WorkHandover createWorkHandover(WorkHandoverAddVo workHandoverAddVo, SecurityUser securityUser);
/**
* 完结工作交接
*/
WorkHandover endWorkHandover(WorkHandoverEndAddVo workHandoverEndAddVo);
/**
* 查询工作交接详情
*/
WorkHandoverVo findById(Integer workHandoverId);
}
package com.tykj.dev.device.train.service.impl;
import com.fasterxml.jackson.core.type.TypeReference;
import com.tykj.dev.device.file.entity.FileRet;
import com.tykj.dev.device.task.service.TaskService;
import com.tykj.dev.device.task.subject.bto.TaskBto;
import com.tykj.dev.device.task.subject.domin.Task;
import com.tykj.dev.device.task.subject.vo.TaskUserVo;
import com.tykj.dev.device.train.dao.WorkHandoverDao;
import com.tykj.dev.device.train.entity.WorkHandover;
import com.tykj.dev.device.train.entity.vo.WorkHandoverAddVo;
import com.tykj.dev.device.train.entity.vo.WorkHandoverEndAddVo;
import com.tykj.dev.device.train.entity.vo.WorkHandoverVo;
import com.tykj.dev.device.train.service.TrainTaskService;
import com.tykj.dev.device.train.service.WorkHandoverService;
import com.tykj.dev.device.user.subject.entity.SecurityUser;
import com.tykj.dev.misc.base.BusinessEnum;
import com.tykj.dev.misc.base.StatusEnum;
import com.tykj.dev.misc.exception.ApiException;
import com.tykj.dev.misc.utils.JacksonUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
/**
* @author zjm
* @version 1.0.0
......@@ -17,6 +35,7 @@ import org.springframework.stereotype.Service;
* @createTime 2020年09月17日 16:09:00
*/
@Service
@Slf4j
public class WorkHandoverServiceImpl implements WorkHandoverService {
@Autowired
TaskService taskService;
......@@ -24,13 +43,55 @@ public class WorkHandoverServiceImpl implements WorkHandoverService {
@Autowired
WorkHandoverDao workHandoverDao;
@Autowired
TrainTaskService trainTaskService;
@Override
public WorkHandover createWorkHandover(WorkHandoverAddVo workHandoverAddVo) {
return null;
public WorkHandover createWorkHandover(WorkHandoverAddVo workHandoverAddVo, SecurityUser securityUser) {
log.info("[workHandover] 新建工作交接");
//创建workHandoverDB 存储数据库
WorkHandover workHandover=workHandoverDao.save(workHandoverAddVo.toWorkHandover());
List<Integer> integers=new ArrayList<>();
integers.add(securityUser.getCurrentUserInfo().getUserId());
Task task= taskService.start(new TaskBto(StatusEnum.WORKHANDOVER1011.id,"工作交接",null,null,workHandover.getWorkHandoverId(), BusinessEnum.WORK_HANDOVER.id,securityUser.getCurrentUserInfo().getUnitsId(),0,null,integers));
return workHandover;
}
@Override
public WorkHandover endWorkHandover(WorkHandoverEndAddVo workHandoverEndAddVo) {
return null;
//更新workHamdoverDb状态
WorkHandover workHandover;
Optional<WorkHandover> workHandoverOptional = workHandoverDao.findById(workHandoverEndAddVo.getWorkHandoverId());
if (workHandoverOptional.isPresent()){
workHandover=workHandoverOptional.get();
}else {
log.info("[WorkHandover] 未找到id:{} 工作交接业务",workHandoverEndAddVo.getWorkHandoverId());
throw new ApiException(ResponseEntity.status(500).body("未找到id为"+workHandoverEndAddVo.getWorkHandoverId()+" 工作交接业务"));
}
workHandover.setStatus(2);
workHandover.setFileLists(JacksonUtil.toJSon(workHandoverEndAddVo.getFileLists()));
workHandover= workHandoverDao.save(workHandover);
//把移交人的所有代办任务和跟踪任务替换名称,换成交接人
taskService.workHandover(workHandover.getHandoverUserId(),workHandover.getTurnOverUserId());
//推入完结状态
TaskBto taskBto= trainTaskService.selectFatherIsNullAndBillidAndBillType(workHandover.getWorkHandoverId(),BusinessEnum.WORK_HANDOVER.id);
taskService.moveToEnd(taskBto);
return workHandover;
}
@Override
public WorkHandoverVo findById(Integer workHandoverId) {
Optional<WorkHandover> optionalWorkHandover = workHandoverDao.findById(workHandoverId);
if (optionalWorkHandover.isPresent()){
WorkHandover workHandover=optionalWorkHandover.get();
WorkHandoverVo workHandoverVo=workHandover.toWorkHandover();
workHandoverVo.setFileLists(JacksonUtil.readValue(workHandover.getFileLists(), new TypeReference<List<FileRet>>() {}));
workHandoverVo.setCommissionWord(JacksonUtil.readValue(workHandover.getCommissionWord(), new TypeReference<List<TaskUserVo>>() {}));
workHandoverVo.setTrackingWord(JacksonUtil.readValue(workHandover.getTrackingWord(), new TypeReference<List<TaskUserVo>>() {}));
return workHandoverVo;
}else {
throw new ApiException(ResponseEntity.status(500).body("没有这个id:"+workHandoverId));
}
}
}
......@@ -13,4 +13,4 @@ server.servlet.session.timeout=PT1H
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
file.path=/Users/zjm/code/
preview.path=http://192.168.102.26:8088/file/
\ No newline at end of file
preview.path=http://192.168.102.26:8087/file/
\ No newline at end of file
//package com.tykj.dev.train;
//
//import com.github.wenhao.jpa.Specifications;
//import com.google.common.collect.Lists;
//import com.tykj.dev.device.confirmcheck.entity.vo.CheckBillVo;
//import com.tykj.dev.device.confirmcheck.entity.vo.CheckDetailVo;
//import com.tykj.dev.device.confirmcheck.entity.vo.DevLibVo;
//import com.tykj.dev.device.confirmcheck.repository.DeviceCheckDetailDao;
//import com.tykj.dev.device.confirmcheck.repository.DeviceCheckStatRepo;
//import com.tykj.dev.device.confirmcheck.utils.ObjTransUtil;
//import com.tykj.dev.device.task.repository.TaskDao;
//import com.tykj.dev.device.task.subject.domin.Task;
//import com.tykj.dev.misc.base.StatusEnum;
//import com.tykj.dev.union.BaseTest;
//import org.junit.jupiter.api.Test;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.http.MediaType;
//import org.springframework.security.test.context.support.WithMockUser;
//import org.springframework.test.context.ActiveProfiles;
//import org.springframework.test.web.servlet.MockMvc;
//import org.springframework.test.web.servlet.RequestBuilder;
//
//import java.util.HashMap;
//import java.util.Map;
//import java.util.StringJoiner;
//
//import static com.tykj.dev.misc.utils.JacksonUtil.toJSon;
//import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
//import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.put;
//import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
//
///**
// * DeviceCheckControllerTest.
// *
// * @author Matrix <xhyrzldf@gmail.com>
// * @since 2020/9/15 at 11:17 上午
// */
//@SuppressWarnings("ALL")
//@WithMockUser(username = "shena", password = "qwer1234", authorities = "省A专管员")
//@ActiveProfiles("dev")
//class DeviceCheckControllerTest extends BaseTest {
//
// @Autowired
// protected MockMvc mockMvc;
// @Autowired
//
//
// @Test
// void startManualCheck() throws Exception {
//
//
// CheckBillVo param = new CheckBillVo();
// param.setUnitId(1);
// param.setAreaRange(Lists.newArrayList(1));
// param.setCheckTitle("单元测试手动核查");
// param.setRemark("这是一段测试用的数据");
// param.setUserAId(1);
// param.setUserBId(2);
//
// // 测试
// RequestBuilder request;
//
// request = post("/check/confirm/check/bill")
// .header("Origin", "*")
// .contentType(MediaType.APPLICATION_JSON)
// .content(toJSon(param));
//
// mockMvc.perform(request)
// .andExpect(status().isOk())
// .andDo(mvcResult1 -> System.out.println("[测试结果] 手动发起核查任务测试通过"));
//
// // checkUserA 接口
// Task initTask = taskRepo.findAll(Specifications.<Task>and()
// .eq("billStatus", StatusEnum.CHECK_DETAIL_0.id)
// .build())
// .get(0);
// Integer detailBillId = initTask.getBillId();
//
// CheckDetailVo detailVoList = detailRepo.findById(detailBillId)
// .map(transUtil::CheckDetailDo2Vo)
// .orElse(null);
//
// DevLibVo devLibVo = new DevLibVo(detailVoList.getDevInLibrary(), detailVoList.getDevNotInLibrary());
//
//
// Map<String, String> paramMap = new HashMap<>();
// paramMap.put("assignUserId", "2");
// paramMap.put("checkResult", "\"检查结果无误\"");
//
// String baseUrl = "/check/confirm/detail/";
// String url_a = baseUrl + "A/" + detailBillId;
// StringJoiner joiner = new StringJoiner("&", "?", "");
//
// for (Map.Entry<String, String> entry : paramMap.entrySet()) {
// String k = entry.getKey();
// String v = entry.getValue();
// joiner.add(k + "=" + v);
// }
// url_a += joiner.toString();
// System.out.println("url is " + url_a);
// request = put(url_a)
// .header("Origin", "*")
// .contentType(MediaType.APPLICATION_JSON)
// .content(toJSon(devLibVo));
//
// mockMvc.perform(request)
// .andExpect(status().isOk())
// .andDo(s -> System.out.println(
// String.format("[测试结果] 对任务id=%d的任务执行岗位A详情审核操作成功,审核的详情表id为%d",
// initTask.getId(),
// initTask.getBillId())));
//
// // checkUserB 接口 测试审核通过
// String url_b = baseUrl + "B/" + detailBillId + "?" + "checkStatus=1";
// request = put(url_b)
// .header("Origin", "*");
//
// mockMvc.perform(request)
// .andExpect(status().isOk())
// .andDo(s -> System.out.println(
// String.format("[测试结果] 对任务id=%d的任务执行岗位B详情审核操作成功,审核的详情表id为%d",
// initTask.getId(),
// initTask.getBillId())));
//
// // checkUserC - C 接口 测试审核通过
// String url_c = baseUrl + "C/" + detailBillId + "?" + "pass=1";
// request = put(url_c)
// .header("Origin", "*");
//
// mockMvc.perform(request)
// .andExpect(status().isOk())
// .andDo(s -> System.out.println(
// String.format("[测试结果] 对任务id=%d的任务执行岗位C详情审核操作成功,审核的详情表id为%d",
// initTask.getId(),
// initTask.getBillId())));
//
// // checkUserC - D 接口 测试审核通过
// String url_d = baseUrl + "C/" + detailBillId + "?" + "pass=1";
// request = put(url_c)
// .header("Origin", "*");
//
// mockMvc.perform(request)
// .andExpect(status().isOk())
// .andDo(s -> System.out.println(
// String.format("[测试结果] 对任务id=%d的任务执行岗位D详情审核操作成功,审核的详情表id为%d",
// initTask.getId(),
// initTask.getBillId())));
//
// // 统计数据确认接口
// // 获取父级的billId
// Integer statTaskId = initTask.getParentTaskId();
// Integer statId = taskRepo.findById(statTaskId).get().getBillId();
// String url_verify = "/check/confirm/stat/verify?statId=" + statId;
// request = post(url_verify)
// .header("Origin", "*");
//
// mockMvc.perform(request)
// .andExpect(status().isOk())
// .andDo(s -> System.out.println(
// String.format("[测试结果] 对任务id=%d的任务执行统计数据确认操作成功,审核的数据表id为%d",
// statTaskId,
// statId)));
//
// // 结束之后删除本次建立的数据 包括 task 以及相应的业务表数据
// // 删除父级任务
//// Task fatherTask = taskRepo.findById(statTaskId).get();
//// Integer statBillId = fatherTask.getBillId();
//// taskRepo.deleteById(fatherTask.getId());
//// statRepo.deleteById(statBillId);
////
//// List<Task> childTask = taskRepo.findAllByParentTaskId(statTaskId);
//// List<Integer> childTaskIds = childTask.stream().map(Task::getId).collect(toList());
//// List<Integer> childBillIds = childTask.stream().map(Task::getBillId).collect(toList());
//
// }
//}
\ No newline at end of file
......@@ -19,7 +19,7 @@ import java.util.List;
public interface AreaDao extends JpaRepository<Area, Integer>, JpaSpecificationExecutor<Area> {
List<Area> findAllByFatherId(Integer areaId);
List<Area> findByFatherId(Integer areaId);
List<Area> findByFatherId(Integer fatherId);
List<Area> findAreasByType(Integer type);
......
......@@ -32,5 +32,6 @@ public interface UnitsDao extends JpaRepository<Units, Integer>, JpaSpecificatio
@Query("select o.areaId from Units o where o.unitId=?1")
int findAreaId(int id);
Units findByAreaIdAndLevel(Integer areaId , Integer level);
}
......@@ -13,8 +13,8 @@ import com.tykj.dev.device.packing.repository.PackingLibraryDao;
import com.tykj.dev.device.packing.subject.domin.PackingLibrary;
import com.tykj.dev.device.repair.repository.RepairDetailDao;
import com.tykj.dev.device.repair.subject.domin.RepairDetail;
import com.tykj.dev.device.sendback.entity.domain.SendBackBillDetail;
import com.tykj.dev.device.sendback.repository.SendBackBillDetailDao;
import com.tykj.dev.device.sendback.subject.domin.SendBackBillDetail;
import com.tykj.dev.device.storage.repository.StorageBillDao;
import com.tykj.dev.device.storage.subject.domin.StorageBill;
import com.tykj.dev.device.user.subject.service.UserPublicService;
......@@ -55,6 +55,9 @@ public class DeviceUseReportServiceImpl implements DeviceUseReportService {
@Autowired
private StorageBillDao storageBillDao;
@Autowired
SendBackBillDetailDao sendBackBillDetailDao;
@Autowired
private UserPublicService userPublicService;
......@@ -64,8 +67,7 @@ public class DeviceUseReportServiceImpl implements DeviceUseReportService {
@Autowired
private DeviceDestroyBillDao deviceDestroyBillDao;
@Autowired
private SendBackBillDetailDao sendBackBillDetailDao;
@Autowired
private PackingLibraryDao packingLibraryDao;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论