jiangping
2023-08-11 70ba74321b0f4ae2751c6afadf4484a4e19f99da
工单投料和产出状态流程为【生产中】
已修改7个文件
48 ■■■■ 文件已修改
server/src/main/java/doumeemes/core/utils/Constants.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/business/model/Workorder.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/business/model/WorkorderHistory.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/ext/vo/WorkPlansExtListVO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/business/impl/WorkorderCheckServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/core/utils/Constants.java
@@ -265,6 +265,7 @@
       public static final  int baogong= 4;
       public static final  int instock = 5;
       public static final  int cancel = 6;
       public static final  int producing = 7;
        static String getTitleByStatus(WorkorderExtListVO p, int status) {
            String title = "";
            switch (status){
@@ -288,6 +289,9 @@
                    break;
                case cancel:
                    title="工单取消";
                    break;
                case producing:
                    title="工单生产中";
                    break;
                default:
                    break;
@@ -317,6 +321,9 @@
                    break;
                case cancel:
                    title="工单取消";
                    break;
                case producing:
                    title="工单生产中";
                    break;
                default:
                    break;
@@ -378,7 +385,7 @@
        }
    }
    /**
     * 工单状态 0已创建、1已投料、2已完工、3已检验、4已报工、5已入库、6已暂停、7已取消、8已关闭 9已恢复 10更换人员 11 已备料 12 产出"
     * 工单状态 0已创建、1已投料、2已完工、3已检验、4已报工、5已入库、6已暂停、7已取消、8已关闭 9已恢复 10更换人员 11 已备料 12 产出 13生成中"
     */
    public interface WORKORDER_HISTORY_STATUS{
       public static final  int create = 0;
@@ -394,6 +401,7 @@
       public static final  int redistribute = 10;
       public static final  int readyMaterial = 11;
       public static final  int produce = 12;
       public static final  int producing = 13;
        static String getTitleByStatus(WorkorderExtListVO p, int status) {
            String title = "";
            switch (status){
@@ -435,6 +443,9 @@
                    break;
                case produce:
                    title="工单产出";
                    break;
                case producing:
                    title="工单生成中国";
                    break;
                default:
                    break;
@@ -483,6 +494,9 @@
                case produce:
                    title="工单产出";
                    break;
                case producing:
                    title="工单生产中";
                    break;
                default:
                    break;
            }
server/src/main/java/doumeemes/dao/business/model/Workorder.java
@@ -143,8 +143,8 @@
    @ExcelColumn(name="检验人员编码")
    private Integer checkUserId;
    @ApiModelProperty(value = "工单状态 0已创建、1已备料、2已完工、3已检验、4已报工、5已入库、6已取消", example = "1")
    @ExcelColumn(name="工单状态 0已创建、1已备料、2已完工、3已检验、4已报工、5已入库、6已取消")
    @ApiModelProperty(value = "工单状态 0已创建、1已备料、2已完工、3已检验、4已报工、5已入库、6已取消、7生产中", example = "1")
    @ExcelColumn(name="工单状态 0已创建、1已备料、2已完工、3已检验、4已报工、5已入库、6已取消、7生产中")
    private Integer status;
    @ApiModelProperty(value = "是否暂停 0未暂停 1已暂停", example = "1")
    @ExcelColumn(name="是否暂停 0未暂停 1已暂停")
server/src/main/java/doumeemes/dao/business/model/WorkorderHistory.java
@@ -76,7 +76,7 @@
    @ExcelColumn(name="处理备注")
    private String info;
    @ApiModelProperty(value = "操作类型0已创建、1已投料、2完工、3检验、4已报工、5入库、6暂停、7取消、8关闭", example = "1")
    @ApiModelProperty(value = "操作类型0已创建、1已投料、2完工、3检验、4已报工、5入库、6暂停、7取消、8关闭 13生产中", example = "1")
    @ExcelColumn(name="操作类型0已创建、1已投料、2完工、3检验、4已报工、5入库、6暂停、7取消、8关闭")
    private Integer type;
server/src/main/java/doumeemes/dao/ext/vo/WorkPlansExtListVO.java
@@ -74,7 +74,7 @@
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;
    @ApiModelProperty(value = "销售单号" )
    @Excel(name="销售单号",index = 16,width =15)
    @ExcelColumn(name="销售单号",index = 16,width =15)
    private String salesorder;
    @ApiModelProperty(value = "物料编码(关联material_distribute表)", example = "1")
    @ExcelColumn(name="物料编码(关联material_distribute表)")
server/src/main/java/doumeemes/service/business/impl/WorkorderCheckServiceImpl.java
@@ -276,8 +276,11 @@
        //工单对象
        Workorder workorder=workorderExtMapper.selectById(wc.getWorkorderId());
        if(workorder==null || workorder.getStatus()==Constants.WORKORDER_STATUS.done||workorder.getStatus()==Constants.WORKORDER_STATUS.baogong
                ||workorder.getStatus()==Constants.WORKORDER_STATUS.instock ||workorder.getStatus()==Constants.WORKORDER_STATUS.cancel){
        if(workorder==null
                || workorder.getStatus()==Constants.WORKORDER_STATUS.done
                ||workorder.getStatus()==Constants.WORKORDER_STATUS.baogong
                ||workorder.getStatus()==Constants.WORKORDER_STATUS.instock
                ||workorder.getStatus()==Constants.WORKORDER_STATUS.cancel){
            return ApiResponse.failed("工单不允许检验");
        }
        if(workorder.getPlanNum()!=null){
server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordExtServiceImpl.java
@@ -1338,6 +1338,13 @@
            order.setStatus(Constants.WORKORDER_STATUS.material);
        }else if(status ==Constants.WORKORDER_HISTORY_STATUS.done){
            order.setStatus(Constants.WORKORDER_STATUS.done);
        }else if(status ==Constants.WORKORDER_HISTORY_STATUS.produce){
            //投料操作
            if(Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.create)
                    ||Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.material)){
                //如果是已创建或者已备料状态的工单,修改其状态为【生产中】
                order.setStatus(Constants.WORKORDER_STATUS.producing);
            }
        }
        workorderExtMapper.updateById(order);
        workorderHistoryExtMapper.insertBatch(whList);
server/src/main/java/doumeemes/service/ext/impl/WorkorderRecordStandardServiceImpl.java
@@ -142,9 +142,10 @@
                recordList.add(getWorkrecordModel(user,wStock,mp,materialListDTO.getNum()));
            }
        }
        //批量插入投料记录
        workorderRecordExtMapper.insertBatch(recordList);
        //单添加历史记录(不更新状态)
        //单添加历史记录(判断更新为生产中)
        updateOrderInfo(user,mp,Constants.WORKORDER_HISTORY_STATUS.material);
        return param.getId();
    }
@@ -294,6 +295,13 @@
            order.setStatus(Constants.WORKORDER_STATUS.material);
        }else if(status ==Constants.WORKORDER_HISTORY_STATUS.done){
            order.setStatus(Constants.WORKORDER_STATUS.done);
        }else if(status ==Constants.WORKORDER_HISTORY_STATUS.material){
            //投料操作
            if(Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.create)
                    ||Constants.equalsInteger(mp.getStatus(),Constants.WORKORDER_STATUS.material)){
                //如果是已创建或者已备料状态的工单,修改其状态为【生产中】
                order.setStatus(Constants.WORKORDER_STATUS.producing);
            }
        }
        workorderExtMapper.updateById(order);
        workorderHistoryExtMapper.insertBatch(whList);