src/main/java/com/whyc/mapper/DeviceScrapMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/pojo/web_site/DeviceScrap.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/pojo/web_site/WorkflowMain.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/DeviceScrapService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/DeviceSpareService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/WorkflowLinkService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/WorkflowMainService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/mapper/DeviceScrapMapper.java
New file @@ -0,0 +1,6 @@ package com.whyc.mapper; import com.whyc.pojo.web_site.DeviceScrap; public interface DeviceScrapMapper extends CustomMapper<DeviceScrap>{ } src/main/java/com/whyc/pojo/web_site/DeviceScrap.java
New file @@ -0,0 +1,41 @@ package com.whyc.pojo.web_site; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.ToString; import java.util.Date; @ToString @Data @TableName(schema = "web_site",value ="tb_device_scrap") @ApiModel("设备器件报废库") public class DeviceScrap { private Integer id; @ApiModelProperty("器件名称") private String name; @ApiModelProperty("器件型号") private String model; @ApiModelProperty("器件版本") private String version; @ApiModelProperty("数量") private Integer quantity; @ApiModelProperty("品牌") private String brand; @ApiModelProperty("类型") private String type; @ApiModelProperty("供应商") private String supplier; @ApiModelProperty("报废申请人id") private Integer applyUserId; @ApiModelProperty("报废申请人名称") private String applyUserName; @ApiModelProperty("报废时间") private Date createTime; @ApiModelProperty("关联报废流程主表id,用于追溯") private Integer mainId; } src/main/java/com/whyc/pojo/web_site/WorkflowMain.java
@@ -38,6 +38,8 @@ /**创建人id*/ @ApiModelProperty("创建人id") private Integer createUserId; @ApiModelProperty("创建人名称") private String createUserName; /**创建时间*/ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "Asia/Shanghai") private Date createTime; @@ -93,9 +95,6 @@ */ @ApiModelProperty("工单流类型") private Integer type; @TableField(exist = false) private String createUserName; @TableField(exist = false) private List<WorkflowLink> linkList; src/main/java/com/whyc/service/DeviceScrapService.java
New file @@ -0,0 +1,19 @@ package com.whyc.service; import com.whyc.mapper.DeviceScrapMapper; import com.whyc.pojo.web_site.DeviceScrap; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; @Service public class DeviceScrapService { @Resource private DeviceScrapMapper mapper; public void add(List<DeviceScrap> scrapList) { mapper.insertBatchSomeColumn(scrapList); } } src/main/java/com/whyc/service/DeviceSpareService.java
@@ -1,6 +1,7 @@ package com.whyc.service; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @@ -158,4 +159,32 @@ List<DeviceSpare> deviceSpares = mapper.selectList(query); return new Response<List<DeviceSpare>>().set(1,deviceSpares); } public void add(List<DeviceSpare> spareList) { mapper.insertBatchSomeColumn(spareList); } public void addOrUpdate(List<DeviceSpare> spareList) { //查询库中是否存在该设备,存在则增加数量. for (DeviceSpare spare : spareList) { QueryWrapper<DeviceSpare> query = Wrappers.query(); query.eq("name",spare.getName()); query.eq("model",spare.getModel()); query.eq("version",spare.getVersion()); query.eq("brand",spare.getBrand()); query.eq("type",spare.getType()); query.eq("supplier",spare.getSupplier()); query.last(" limit 1"); DeviceSpare spareInDB = mapper.selectOne(query); if(spareInDB != null){ spareInDB.setQuantity(spareInDB.getQuantity()+spare.getQuantity()); mapper.updateById(spareInDB); }else{ //不存在则新增 mapper.insert(spare); } } } } src/main/java/com/whyc/service/WorkflowLinkService.java
@@ -6,10 +6,9 @@ import com.whyc.dto.Response; import com.whyc.mapper.*; import com.whyc.pojo.db_user.User; import com.whyc.pojo.web_site.WorkflowDevice; import com.whyc.pojo.web_site.WorkflowLink; import com.whyc.pojo.web_site.WorkflowMain; import com.whyc.pojo.web_site.*; import com.whyc.util.CommonUtil; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; @@ -31,6 +30,11 @@ @Autowired private WorkflowDeviceService deviceService; @Autowired private DeviceSpareService deviceSpareService; @Autowired private DeviceScrapService deviceScrapService; public void addBatch(List<WorkflowLink> links) { @@ -68,7 +72,7 @@ link.setDealAndClose(1); } }break; //设备入库申请 //设备入库申请 TODO 入库影响库存 case 2: //设备报废申请 case 3:{ @@ -77,6 +81,39 @@ mainInDB.setEndTime(now); mainInDB.setEndReason(link.getDealReason()); mainService.updateById(mainInDB); List<WorkflowDevice> deviceListInDB = deviceService.getByMainId(mainInDB.getId()); //入库 if(mainInDB.getType() == 2){ List<DeviceSpare> spareList = new ArrayList<>(); deviceListInDB.forEach(device -> { DeviceSpare spare = new DeviceSpare(); /*spare.setName(device.getName()); spare.setModel(device.getModel()); spare.setVersion(device.getVersion()); spare.setQuantity(device.getQuantity()); spare.setBrand(device.getBrand()); spare.setType(device.getType()); spare.setSupplier(device.getSupplier());*/ BeanUtils.copyProperties(device,spare); spareList.add(spare); }); deviceSpareService.addOrUpdate(spareList); }else{ //进入报废库 List<DeviceScrap> scrapList = new ArrayList<>(); deviceListInDB.forEach(device -> { DeviceScrap deviceScrap = new DeviceScrap(); BeanUtils.copyProperties(device,deviceScrap); deviceScrap.setApplyUserId(mainInDB.getCreateUserId()); deviceScrap.setApplyUserName(mainInDB.getCreateUserName()); deviceScrap.setCreateTime(now); deviceScrap.setMainId(mainInDB.getId()); scrapList.add(deviceScrap); }); deviceScrapService.add(scrapList); } }else if(link.getStatus() == WorkflowEnum.LINK_STATUS_REJECT.getValue().intValue()){ mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_REJECT.getValue()); mainInDB.setEndReason(link.getDealRejectReason()); src/main/java/com/whyc/service/WorkflowMainService.java
@@ -289,6 +289,7 @@ main.setOrderId(orderId); main.setTitle(title); main.setCreateUserId(user.getId()); main.setCreateUserName(user.getName()); main.setCreateTime(now); main.setBeginTime(now); main.setStatus(mainStatus);