自动化立体仓库 - WMS系统
*
lsh
昨天 5c1927cae2e50e31a4fe56762c040837bd80334b
*
11个文件已修改
1个文件已添加
187 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/OrderDetlPakoutController.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OrderPakoutController.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/param/QualityGroupListParam.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/mapper/OrderPakoutMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/OrderDetlPakoutService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/OrderPakoutService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/OrderDetlPakoutMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/OrderPakoutMapper.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OrderDetlPakoutController.java
@@ -183,19 +183,4 @@
        return R.ok();
    }
    @RequestMapping(value = "/orderDetl/order/v1/report/auth")
    @ManagerAuth(memo = "上报MES实际组货单")
    public R reportBatchOrder(ReportOrderBatchDetlParam param) {
        List<OrderDetlPakout> orderDetlPakoutList = orderDetlPakoutService.selectList(new EntityWrapper<OrderDetlPakout>()
                .eq("batch", param.getBatch())
        );
        for (OrderDetlPakout orderDetl : orderDetlPakoutList){
            orderDetl.setStatus(param.getStatus());
            orderDetlService.updateById(orderDetl);
        }
        return R.ok();
    }
}
src/main/java/com/zy/asrs/controller/OrderPakoutController.java
@@ -1,5 +1,6 @@
package com.zy.asrs.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -9,11 +10,16 @@
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.OrderDomainParam;
import com.zy.asrs.entity.param.QualityGroupListParam;
import com.zy.asrs.entity.result.OrderPakoutDetailVo;
import com.zy.asrs.entity.result.OrderPakoutMainVo;
import com.zy.asrs.entity.result.WrkTraceVo;
import com.zy.asrs.service.*;
import com.zy.common.constant.MesConstant;
import com.zy.common.model.DetlDto;
import com.zy.common.utils.HttpHandler;
import com.zy.common.web.BaseController;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
@@ -21,6 +27,7 @@
import java.util.*;
@Slf4j
@RestController
@RequestMapping("order/pakout")
public class OrderPakoutController extends BaseController {
@@ -43,6 +50,8 @@
    private WrkMastService wrkMastService;
    @Autowired
    private WrkMastLogService wrkMastLogService;
    @Autowired
    private ApiLogService apiLogService;
    @RequestMapping(value = "/order/nav/list/auth")
    @ManagerAuth
@@ -352,4 +361,78 @@
        }
        return R.error();
    }
    @RequestMapping(value = "/actual/shipment/order/report/auth")
    @ManagerAuth(memo = "上报MES实际组货单")
    public R actualShipmentOrder(@RequestParam String itemName) {
        Long userId = getUserId();
        List<OrderPakoutDetailVo> OrderPakoutDetailVoList = orderDetlService.selectOrderPakoutDetailVoListV1(itemName);
        List<String> boxList = new ArrayList<>();
        List<String> rollList = new ArrayList<>();
        for (OrderPakoutDetailVo orderDetl : OrderPakoutDetailVoList){
            if (!boxList.contains(orderDetl.getBatch())){
                boxList.add(orderDetl.getBatch());
            }
            if (!rollList.contains(orderDetl.getModel())){
                rollList.add(orderDetl.getModel());
            }
        }
        String box = String.join(",", boxList);
        String roll = String.join(",", rollList);
        QualityGroupListParam qualityGroupListParam = new QualityGroupListParam(itemName,box,roll);
        String response = "";
        boolean success = false;
        try {
            response = new HttpHandler.Builder()
                    .setUri(MesConstant.URL)
                    .setPath(MesConstant.PAKIN_URL)
                    .setJson(JSON.toJSONString(qualityGroupListParam))
                    .build()
                    .doPost();
            JSONObject jsonObject = JSON.parseObject(response);
            if (jsonObject.getBoolean("state")) {
                success = true;
                // 修改订单状态 4.完成 ===>> 16.已上报
                if (!orderService.updateItemName(itemName, 16L, userId)) {
                    throw new CoolException("服务器内部错误,请联系管理员");
                }
            } else {
                // 修改订单状态 4.完成 ===>> 17.已上报
                if (!orderService.updateItemName(itemName, 17L, userId)) {
                    throw new CoolException("服务器内部错误,请联系管理员");
                }
                log.error("请求接口失败!!!url:{};request:{};response:{}", MesConstant.URL+MesConstant.PAKIN_URL, JSON.toJSONString(qualityGroupListParam), response);
                throw new CoolException("上报mes系统失败");
            }
        } catch (Exception e) {
            // 修改订单状态 4.完成 ===>> 17.已上报
            if (!orderService.updateItemName(itemName, 17L, userId)) {
                throw new CoolException("服务器内部错误,请联系管理员");
            }
            log.error("fail", e);
        } finally {
            try {
                // 保存接口日志
                apiLogService.save(
                        "上报MES实际组货单",
                        MesConstant.URL + MesConstant.PAKIN_URL,
                        null,
                        "127.0.0.1",
                        JSON.toJSONString(qualityGroupListParam),
                        response,
                        success
                );
            } catch (Exception e) { log.error("", e); }
        }
        return R.ok();
    }
}
src/main/java/com/zy/asrs/entity/param/QualityGroupListParam.java
New file
@@ -0,0 +1,40 @@
package com.zy.asrs.entity.param;
import lombok.Data;
/**
 * Created by vincent on 2021/3/31
 */
@Data
public class QualityGroupListParam {
    private String groupOrderNumber;//组货单号(唯一标识)
    private String sjalbz;//一厂立库实际出库包装组号(多个逗号拼接)  //箱号
    private String sjaljh;//一厂立库实际出库卷号(多个逗号拼接)  //卷号  ,分隔
    private String factory = "1";//厂部信息(1一厂,2二厂)
    private String groupStatus = "1";//组货状态(1确认出库)
    //无用
    private String sjapbz = "";//一厂平库实际出库包装组号(多个逗号拼接)
    private String sjapjh = "";//一厂平库实际出库卷号(多个逗号拼接)
    private String sjbpbz = "";//二厂平库实际出库包装组号(多个逗号拼接)
    private String sjbpjh = "";//二厂平库实际出库卷号(多个逗号拼接)
    private String sjblbz = "";//二厂立库实际出库包装组号(多个逗号拼接)
    private String sjbljh = "";//二厂立库实际出库卷号(多个逗号拼接)
    public QualityGroupListParam() {
    }
    public QualityGroupListParam(String groupOrderNumber) {
        this.groupOrderNumber = groupOrderNumber;
    }
    public QualityGroupListParam(String groupOrderNumber, String sjalbz, String sjaljh) {
        this.groupOrderNumber = groupOrderNumber;
        this.sjalbz = sjalbz;
        this.sjaljh = sjaljh;
    }
}
src/main/java/com/zy/asrs/mapper/OrderDetlPakoutMapper.java
@@ -37,13 +37,14 @@
    int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("workQty")Double workQty);
    List<OrderPakoutDetailVo> selectOrderPakoutDetailVoList(@Param("itemName") String itemName,
                                                @Param("modiTimeStart") Date modiTimeStart,
                                                @Param("modiTimeEnd") Date modiTimeEnd,
                                                @Param("pageNumber") Integer curr,
                                                @Param("pageSize") Integer limit);
    List<OrderPakoutDetailVo> selectOrderPakoutDetailVoListV1(@Param("itemName") String itemName);
    Long selectOrderPakoutDetailVoListTotal(@Param("itemName") String itemName,
                                @Param("modiTimeStart") Date modiTimeStart,
                                @Param("modiTimeEnd") Date modiTimeEnd);
src/main/java/com/zy/asrs/mapper/OrderPakoutMapper.java
@@ -41,4 +41,7 @@
                                                        @Param("status") Integer status,
                                                        @Param("modiTimeStart") Date modiTimeStart,
                                                        @Param("modiTimeEnd") Date modiTimeEnd);
    int updateItemName(@Param("itemName")String itemName,
            @Param("settle")Long settle,@Param("userId") Long userId);
}
src/main/java/com/zy/asrs/service/OrderDetlPakoutService.java
@@ -41,5 +41,6 @@
    boolean increaseWorkQty(Long orderId, String matnr, String batch, Double workQty);
    List<OrderPakoutDetailVo> selectOrderPakoutDetailVoList(String itemName, Date modiTimeStart, Date modiTimeEnd, Integer curr, Integer limit);
    List<OrderPakoutDetailVo> selectOrderPakoutDetailVoListV1(String itemName);
    Long selectOrderPakoutDetailVoListTotal(String itemName,Date modiTimeStart,Date modiTimeEnd);
}
src/main/java/com/zy/asrs/service/OrderPakoutService.java
@@ -33,4 +33,5 @@
    Long selectOrderPakoutMainVoListTotal(String itemName, String cstmrName, Integer settle, Integer status, Date modiTimeStart,Date modiTimeEnd);
    boolean updateItemName(String itemName,Long settle, Long userId);
}
src/main/java/com/zy/asrs/service/impl/OrderDetlPakoutServiceImpl.java
@@ -94,6 +94,11 @@
    }
    @Override
    public List<OrderPakoutDetailVo> selectOrderPakoutDetailVoListV1(String itemName) {
        return this.baseMapper.selectOrderPakoutDetailVoListV1(itemName);
    }
    @Override
    public List<OrderPakoutDetailVo> selectOrderPakoutDetailVoList(String itemName, Date modiTimeStart, Date modiTimeEnd, Integer curr, Integer limit) {
        return this.baseMapper.selectOrderPakoutDetailVoList(itemName,modiTimeStart,modiTimeEnd,curr,limit);
    }
src/main/java/com/zy/asrs/service/impl/OrderPakoutServiceImpl.java
@@ -46,8 +46,6 @@
        return this.baseMapper.updateSettle(orderId, settle, userId) > 0;
    }
    @Override
    public void remove(Long orderId) {
        if (!this.deleteById(orderId)) {
@@ -92,4 +90,9 @@
        return this.baseMapper.selectOrderPakoutMainVoListTotal(itemName,cstmrName,settle, status,modiTimeStart,modiTimeEnd);
    }
    @Override
    public boolean updateItemName(String itemName,Long settle, Long userId) {
        return this.baseMapper.updateItemName(itemName,settle, userId) > 0;
    }
}
src/main/resources/mapper/OrderDetlPakoutMapper.xml
@@ -271,6 +271,12 @@
        where d.row1 between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) order by d.update_time desc
    </select>
    <select id="selectOrderPakoutDetailVoListV1" resultMap="PakoutDetailResultMap">
        select a.* from v_pakout_detail as a
        where 1=1
        AND item_name = #{itemName}
    </select>
    <select id="selectOrderPakoutDetailVoListTotal" resultType="Long">
        SELECT count(1) FROM v_pakout_detail
        WHERE 1 = 1
src/main/resources/mapper/OrderPakoutMapper.xml
@@ -144,6 +144,15 @@
        and (settle = 10 or settle = 13 or settle = 98)
    </update>
    <update id="updateItemName">
        update man_order_pakout
        set settle = #{settle}
          ,update_by = #{userId}
          ,update_time = getdate()
        where 1=1
          and item_name = #{itemName}
    </update>
    <select id="selectOrderPakoutMainVoList" resultMap="PakoutMainResultMap">
        select d.* from (
            select
src/main/webapp/views/orderCargoGrouping/orderCargoGroupingOperate.html
@@ -575,16 +575,12 @@
                // 调用后台API上报数据
                $.ajax({
                    url: baseUrl + "/api/report/confirm",
                    headers: {
                        'token': localStorage.getItem('token')
                    url: baseUrl + "/order/pakout/actual/shipment/order/report/auth",
                    headers: {'token': localStorage.getItem('token')},
                    data: {
                        itemName: groupOrderNo // 传递组货单号
                    },
                    data: JSON.stringify({
                        item_name: groupOrderNo // 传递组货单号
                    }),
                    dataType: 'json',
                    contentType: 'application/json;charset=UTF-8',
                    method: 'post',
                    method: 'POST',
                    success: (res) => {
                        this.reportLoading = false;
                        if (typeof done === 'function') {