自动化立体仓库 - WMS系统
zjj
2023-09-13 b381a91b41726de9c0dccfb382eda4a3aecfd80f
#盘点完成
1个文件已添加
9个文件已修改
191 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/MobileController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OrderCheckController.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/LocCheck.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/ManLocDetl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/param/ExamineParam.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/OrderCheckService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OrderCheckServiceImpl.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/orderCheck/orderCheck.js 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/orderCheck/orderCheck.html 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MobileController.java
@@ -340,7 +340,7 @@
    }
    @RequestMapping("/adjustNew/auth")
    @ManagerAuth(memo = "盘点")
    @ManagerAuth(memo = "pda盘点")
    public R adjustNew(@RequestBody MobileAdjustNewParam combParam){
        mobileService.adjustNew(combParam, getUserId());
        return R.ok("盘点成功");
src/main/java/com/zy/asrs/controller/OrderCheckController.java
@@ -11,10 +11,7 @@
import com.core.common.*;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.CheckDTO;
import com.zy.asrs.entity.param.MatnrDto;
import com.zy.asrs.entity.param.OrderCheckParam;
import com.zy.asrs.entity.param.OrderDomainParam;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.entity.result.KeyValueVo;
import com.zy.asrs.service.*;
import com.zy.common.CodeRes;
@@ -65,6 +62,18 @@
    @Autowired
    private LocCheckTrimService locCheckTrimService;
    @RequestMapping(value = "/orderCheck/examine")
    @ManagerAuth(memo = "审核盘点单")
    @Transactional
    public R examine(@RequestBody ExamineParam param){
        orderCheckService.examine(param);
        return R.ok("审核完成");
    }
    @RequestMapping(value = "/orderCheck/nav/list/auth")
    @ManagerAuth
    public R navList(@RequestParam(required = false) String orderNo){
src/main/java/com/zy/asrs/entity/LocCheck.java
@@ -145,6 +145,10 @@
    @ExcelProperty({"盘点单", "真实数量"})
    private Double realAnfme;
    @ApiModelProperty(value= "批次")
    @TableField("batch")
    private String batch;
    public String getOwner$(){
        LocOwnerService service = SpringUtils.getBean(LocOwnerService.class);
        LocOwner locOwner = service.selectById(this.owner);
src/main/java/com/zy/asrs/entity/ManLocDetl.java
@@ -217,7 +217,7 @@
    @ApiModelProperty(value= "添加时间")
    @TableField("real_anfme")
    private Date realAnfme;
    private Double realAnfme;
    @ApiModelProperty(value= "订单号")
    @TableField("order_no")
src/main/java/com/zy/asrs/entity/param/ExamineParam.java
New file
@@ -0,0 +1,25 @@
package com.zy.asrs.entity.param;
import com.zy.asrs.entity.ManLocDetl;
import lombok.Data;
import java.util.List;
@Data
public class ExamineParam {
    private String orderNo;
    private List<data> list;
    @Data
    public static class data{
        private String orderNo;
        private String locNo;
        private Double anfme;
        private String matnr;
        private String maktx;
        private Double realAnfme;
    }
}
src/main/java/com/zy/asrs/service/OrderCheckService.java
@@ -1,7 +1,9 @@
package com.zy.asrs.service;
import com.baomidou.mybatisplus.service.IService;
import com.core.common.R;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.ExamineParam;
import java.util.List;
@@ -29,4 +31,6 @@
    List<OrderCheck> selectToBeHistoryOrder();
    void remove(String orderNo);
    R examine(ExamineParam param);
}
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -83,6 +83,9 @@
    @Autowired
    private  LocCheckService locCheckService;
    @Autowired
    private OrderCheckService orderCheckService;
    @Override
@@ -920,6 +923,7 @@
                locCheck.setCreateTime(now);
                locCheck.setUpdateTime(now);
                locCheck.setOrderNo(combParam.getOrderNo());
                locCheck.setBatch(detl.getBatch());
                if (!locCheckService.insert(locCheck)){
                    return R.error("盘点明细插入失败");
@@ -937,6 +941,12 @@
        }
        OrderCheck orderCheck = orderCheckService.selectOne(new EntityWrapper<OrderCheck>().eq("order_no", combParam.getOrderNo()));
        orderCheck.setSettle(2L);
        if (!orderCheckService.update(orderCheck,new EntityWrapper<OrderCheck>().eq("order_no", combParam.getOrderNo()))){
            return R.error("更新盘点单状态失败!");
        }
        return R.ok("盘点成功");
    }
src/main/java/com/zy/asrs/service/impl/OrderCheckServiceImpl.java
@@ -4,9 +4,11 @@
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.core.common.R;
import com.core.common.SnowflakeIdWorker;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.ExamineParam;
import com.zy.asrs.entity.param.OpenOrderPakinParam;
import com.zy.asrs.entity.param.OpenOrderPakoutParam;
import com.zy.asrs.mapper.OrderCheckMapper;
@@ -19,6 +21,7 @@
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Slf4j
@@ -40,6 +43,14 @@
    @Autowired
    private LocCheckService locCheckService;
    @Autowired
    private ManLocDetlService manLocDetlService;
    @Autowired
    private NodeService nodeService;
    @Autowired
    private OrderCheckService orderCheckService;
    @Override
    public OrderCheck selectByNo(String orderNo) {
@@ -179,5 +190,67 @@
        locCheckService.delete(new EntityWrapper<LocCheck>().eq("order_no", orderNo));
    }
    @Override
    public R examine(ExamineParam param) {
     for (ExamineParam.data list:param.getList()){
         EntityWrapper<ManLocDetl> wrapper = new EntityWrapper<>();
         wrapper.eq("matnr", list.getMatnr())
                 .eq("loc_no", list.getLocNo());
         ManLocDetl manLocDetl = manLocDetlService.selectOne(wrapper);
         if (manLocDetl == null){
             Date now = new Date();
             Node node = nodeService.selectOne(new EntityWrapper<Node>().eq("name", list.getLocNo()));
             ManLocDetl manLocDetl1 = new ManLocDetl();
             manLocDetl1.setLocNo(list.getLocNo());
             manLocDetl1.setNodeId(node.getId());
             manLocDetl1.setAnfme(list.getRealAnfme());
             manLocDetl1.setMatnr(list.getMatnr());
             manLocDetl1.setMaktx(list.getMaktx());
             manLocDetl1.setStatus(1);
             manLocDetl1.setCreateTime(now);
             manLocDetl1.setModiTime(now);
             manLocDetl1.setOrderNo(list.getOrderNo());
             manLocDetl1.setStockFreeze(1);
             if (!manLocDetlService.insert(manLocDetl1)){
                 return R.error("插入数据失败");
             }
         }else {
             if (list.getRealAnfme() == 0){
                 if (!manLocDetlService.delete(wrapper)){
                     return R.error("删除数据失败!");
                 }
             }else {
                 manLocDetl.setAnfme(list.getRealAnfme());
                 if (!manLocDetlService.update(manLocDetl,wrapper)){
                     return R.error("更新库存数量失败!");
                 }
             }
         }
         EntityWrapper<LocCheck> wrapper2 = new EntityWrapper<>();
         wrapper2.eq("order_no", list.getOrderNo())
                 .eq("matnr", list.getMatnr())
                 .eq("loc_no", list.getLocNo());
         LocCheck checkDetl = locCheckService.selectOne(wrapper2);
         checkDetl.setType(2);
         if (!locCheckService.update(checkDetl,wrapper2)){
             return R.error("更新盘点明细失败!");
         }
     }
        OrderCheck orderCheck = orderCheckService.selectOne(new EntityWrapper<OrderCheck>().eq("order_no", param.getOrderNo()));
        orderCheck.setSettle(4L);
        if (!orderCheckService.update(orderCheck,new EntityWrapper<OrderCheck>().eq("order_no", param.getOrderNo()))){
            return R.error("更新盘点单状态失败!");
        }
        return R.ok();
}
}
src/main/webapp/static/js/orderCheck/orderCheck.js
@@ -138,8 +138,8 @@
                            {field: 'anfme', title: '数量'},
                            {field: 'realAnfme', title: '真实数量',style: 'color: blue;font-weight: bold', edit: true},
                            {field: 'diffAnfme', title: '差异数量', style: 'font-weight: bold'},
                            {field: 'type$', title: '状态'},
                            {align: 'center', title: '操作', toolbar: '#formSSXMTableBar3', minWidth: 80, width: 80, fixed: 'right'}
                            {field: 'type$', title: '状态'}
                        ]],
                        request: {
                            pageName: 'curr',
@@ -268,9 +268,9 @@
                        {field: 'anfme', title: '库存数量'},
                        {field: 'realAnfme', title: '真实数量'},
                        {field: 'diffAnfme', title: '差异数量', style: 'font-weight: bold'},
                        {field: 'type$', title: '状态'},
                        {field: 'type$', title: '状态'}
                        {align: 'center', title: '操作', toolbar: '#formSSXMTableBarr', minWidth: 80, width: 80, fixed: 'right'}
                    ]],
                    done: function (res) {
                        $(layero).find('.layui-table-view').css('margin', '0');
@@ -782,49 +782,28 @@
    function examine(expTpe) {
        admin.open({
            type: 1,
            title: (expTpe ? '修改' : '添加') + '盘点单',
            title: '审核盘点单',
            content: $('#editDialog2').html(),
            area: '1300px',
            success: function (layero, dIndex) {
                $(layero).children('.layui-layer-content').css('overflow', 'visible');
                var isExpAdd = !expTpe;
                // 回显数据
                form.val('editForm', expTpe);
                form.val('editForm2', expTpe);
                if (expTpe) {
                    $('#orderNo').attr("disabled", "disabled");
                }
                // 表单提交事件
                form.on('submit(orderEditSubmit)', function (data) {
                    // 组装数据
                    if (xxDataList.length <= 0) {
                        layer.tips('请添加单据明细', '#matAddBtnComment', {tips: [1, '#ff4c4c']});
                        return false;
                    }
                    if (data.field.orderNo == "" || data.field.orderNo == null) {
                        layer.tips('请输入盘点单编号', '#orderNo', {tips: [1, '#ff4c4c']});
                        return false;
                    }
                form.on('submit(examine)', function (data) {
                    let nList = admin.util.deepClone(xxDataList);
                    // for (let xi = 0; xi < nList.length; xi++) {
                    //     if (nList[xi].anfme <= 0){
                    //         layer.msg('明细修改数量不合法', {icon: 2});
                    //         return false;
                    //     }
                    //     if (nList[xi].anfme < nList[xi].workQty){
                    //         layer.msg('数量不能小于已作业数量', {icon: 2});
                    //         return false;
                    //     }
                    // }
                    layer.load(2);
                    console.log(data);
                    $.ajax({
                        url: baseUrl + "/orderCheck/form/" + (isExpAdd ? "add" : "modify") + "/auth",
                        url: baseUrl + "/orderCheck/examine",
                        headers: {'token': localStorage.getItem('token')},
                        data: JSON.stringify({
                            orderId: Number(data.field.id),
                            docType: Number(data.field.docType),
                            orderNo: data.field.orderNo,
                            orderDetlList: nList
                            list: nList
                        }),
                        contentType: 'application/json;charset=UTF-8',
                        method: 'POST',
@@ -862,7 +841,6 @@
                        {field: 'realAnfme', title: '真实数量'},
                        {field: 'diffAnfme', title: '差异数量', style: 'font-weight: bold'},
                        {field: 'type$', title: '状态'}
                    ]],
                    done: function (res) {
src/main/webapp/views/orderCheck/orderCheck.html
@@ -93,7 +93,11 @@
</div>
<!-- 表格操作列 -->
<script type="text/html" id="operate">
  {{# if (d.settle == 0 || d.settle == 1 || d.settle ==2) { }}
  <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="examine">审核</a>
  {{# } }}
  {{# if (d.settle == 0 || d.settle == 1) { }}
  <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">修改</a>
@@ -185,9 +189,15 @@
</script>
<script type="text/html" id="editDialog2">
  <form id="editForm2" lay-filter="editForm" class="layui-form model-form">
  <form id="editForm2" lay-filter="editForm2" class="layui-form model-form">
    <input name="id" type="hidden"/>
    <div class="layui-form-item">
      <label class="layui-form-label">盘点单号:</label>
      <div class="layui-input-block">
        <input id="orderNo" name="orderNo" placeholder="输入单据编号" type="text" class="layui-input" maxlength="20" lay-verType="tips" />
        <!--                lay-verify="required"-->
      </div>
    </div>
@@ -200,7 +210,7 @@
    </div>
    <div class="layui-form-item text-right">
      <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button>
      <button class="layui-btn" lay-filter="orderEditSubmit" lay-submit>保存</button>
      <button class="layui-btn" lay-filter="examine" lay-submit>完成审核</button>
    </div>
  </form>
</script>