whyclxw
6 天以前 2262618a51134d89b0d9390eaff152c7a9dc1f5d
Merge branch 'master' of http://118.89.139.230:10101/r/powerIntelligenceSystem
4个文件已修改
3个文件已添加
146 ■■■■■ 已修改文件
src/main/java/com/whyc/mapper/DeviceScrapMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/web_site/DeviceScrap.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/web_site/WorkflowMain.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/DeviceScrapService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/DeviceSpareService.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/WorkflowLinkService.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/WorkflowMainService.java 1 ●●●● 补丁 | 查看 | 原始文档 | 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);