From 26704b180f9caad52156ad3828e66276c8fe6907 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期三, 30 三月 2022 08:46:29 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/OrderMapper.xml                    |    4 
 /dev/null                                                    |   62 -------
 src/main/java/com/zy/asrs/service/OrderService.java          |    2 
 src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java |   23 ++
 src/main/webapp/views/index.html                             |    2 
 src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java   |   96 +----------
 src/main/webapp/views/login00.html                           |  256 ++++++++++++++++++++++++++++++++
 src/main/resources/application.yml                           |    5 
 8 files changed, 298 insertions(+), 152 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/OrderService.java b/src/main/java/com/zy/asrs/service/OrderService.java
index f30439c..83c814a 100644
--- a/src/main/java/com/zy/asrs/service/OrderService.java
+++ b/src/main/java/com/zy/asrs/service/OrderService.java
@@ -14,4 +14,6 @@
 
     boolean updateSettle(Long orderId, Long settle, Long userId);
 
+    void checkComplete(String orderNo);
+
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
index d4192a1..7a0f5c6 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.common.Cools;
+import com.core.exception.CoolException;
 import com.zy.asrs.entity.OrderDetl;
 import com.zy.asrs.mapper.OrderDetlMapper;
 import com.zy.asrs.mapper.OrderMapper;
@@ -38,4 +39,26 @@
         return this.baseMapper.updateSettle(orderId, settle, userId) > 0;
     }
 
+    @Override
+    public void checkComplete(String orderNo) {
+        Order order = this.selectByNo(orderNo);
+        if (order.getSettle() >= 4L) {
+            return;
+        }
+        List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()));
+        boolean complete = true;
+        for (OrderDetl orderDetl : orderDetls) {
+            if (orderDetl.getAnfme() > orderDetl.getQty()) {
+                complete = false;
+                break;
+            }
+        }
+        if (complete) {
+            if (!this.updateSettle(order.getId(), 4L, null)) {
+                throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�");
+            }
+        }
+
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
index 280e7a7..934d5df 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkLogHandler.java
@@ -9,21 +9,12 @@
 import com.zy.asrs.service.*;
 import com.zy.asrs.task.AbstractHandler;
 import com.zy.asrs.task.core.ReturnT;
-import com.zy.common.model.BillDto;
-import com.zy.common.model.MatnrDto;
 import com.zy.common.service.ErpService;
-import com.zy.common.service.wms.ReplenishDto;
-import com.zy.common.service.wms.Result;
-import com.zy.common.service.wms.WmsService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Optional;
 
 /**
  * Created by vincent on 2020/7/6
@@ -49,35 +40,17 @@
     @Autowired
     private SnowflakeIdWorker snowflakeIdWorker;
     @Autowired
-    private WmsService wmsService;
+    private OrderService orderService;
+    @Autowired
+    private OrderDetlService orderDetlService;
 
     @Transactional
     public ReturnT<String> start(WrkMast wrkMast) {
         try {
-            // 鍏ュ簱
+            // 鍏ュ簱 --------------------------------------------------------------------------------
             if (wrkMast.getWrkSts() == 5) {
                 // 鍏ㄦ澘鍏ュ簱
                 if (wrkMast.getIoType() == 1) {
-                    String docNum = "PU-" + String.valueOf(snowflakeIdWorker.nextId()).substring(0, 15);
-                    // 鍗曟嵁鐘舵�佸彉鏇� 浣滀笟涓� ===>> 宸插畬鎴�
-                    List<MatnrDto> matnrDtos = new ArrayList<>();
-                    List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
-                    for (WrkDetl wrkDetl : wrkDetls) {
-                        MatnrDto dto = new MatnrDto();
-                        dto.setMatnr(wrkDetl.getMatnr());
-                        dto.setCount(wrkDetl.getAnfme());
-                        matnrDtos.add(dto);
-                    }
-                    List<BillDto> dtos = new ArrayList<>();
-                    for (MatnrDto dto : matnrDtos) {
-                        BillDto billDto = new BillDto();
-                        billDto.setMatnr(dto.getMatnr());
-                        billDto.setQty(dto.getCount());
-                        dtos.add(billDto);
-                    }
-                    if (!erpService.uploadBill(dtos, 34, docNum)) {
-                        exceptionHandle("鏃犳硶涓婃姤鑷砮rp[workNo={0}]澶辫触", wrkMast.getWrkNo());
-                    }
                     // 鍏ュ簱閫氱煡鍗�
                     if (!Cools.isEmpty(wrkMast.getBarcode())) {
                         // 淇濆瓨鍏ュ簱閫氱煡妗e巻鍙叉。
@@ -91,65 +64,20 @@
                     }
                 // 鎷f枡鍐嶅叆搴�
                 } else if (wrkMast.getIoType() == 53) {
-                    // 闈為攢鍞鍗曞嚭搴擄紝闇�瑕佽ˉ璐у埌骞充粨
-                    if (!wrkMast.getPdcType().equals("Y")) {
-                        List<ReplenishDto> replenishDtos = new ArrayList<>();
-                        List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
-                        for (WrkDetl wrkDetl : wrkDetls) {
-                            ReplenishDto param = new ReplenishDto();
-                            param.setMatnr(wrkDetl.getMatnr());
-                            param.setCount(wrkDetl.getAnfme());
-                            param.setWorkNo(wrkMast.getWrkNo());
-                            replenishDtos.add(param);
-                        }
-                        Result result = wmsService.replenish(replenishDtos);
-                        if (result.getCode() != 200) {
-                            exceptionHandle("琛ヨ揣鍒板钩浠揫workNo={0}]澶辫触", wrkMast.getWrkNo());
-                        }
-                    }
 
                 }
 
-            // 鍑哄簱
+            // 鍑哄簱 --------------------------------------------------------------------------------
             } else if (wrkMast.getWrkSts() == 15) {
-                // 闈為攢鍞鍗曞嚭搴擄紝闇�瑕佽ˉ璐у埌骞充粨
-                if (Cools.isEmpty(wrkMast.getPdcType()) || !wrkMast.getPdcType().equals("Y")) {
-                    List<ReplenishDto> replenishDtos = new ArrayList<>();
-                    List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
-                    for (WrkDetl wrkDetl : wrkDetls) {
-                        ReplenishDto param = new ReplenishDto();
-                        param.setMatnr(wrkDetl.getMatnr());
-                        param.setCount(wrkDetl.getAnfme());
-                        param.setWorkNo(wrkMast.getWrkNo());
-                        replenishDtos.add(param);
-                    }
-                    Result result = wmsService.replenish(replenishDtos);
-                    if (result.getCode() != 200) {
-                        exceptionHandle("琛ヨ揣鍒板钩浠揫workNo={0}]澶辫触", wrkMast.getWrkNo());
-                    }
-                // 閿�鍞鍗�
-                } else {
-                    if (wrkMast.getIoType() == 101) {
-                        Double more = Optional.ofNullable(wrkMast.getRefWrkno()).orElse(0.0D);
-                        List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo()));
-                        if (more > 0 && !Cools.isEmpty(wrkDetls)) {
-                            WrkDetl wrkDetl = wrkDetls.get(0);
-                            ReplenishDto param = new ReplenishDto();
-                            param.setMatnr(wrkDetl.getMatnr());
-                            param.setCount(more);
-                            param.setWorkNo(wrkMast.getWrkNo());
-                            List<ReplenishDto> replenishDtos = new ArrayList<>();
-                            replenishDtos.add(param);
-                            Result result = wmsService.replenish(replenishDtos);
-                            if (result.getCode() != 200) {
-                                exceptionHandle("琛ヨ揣鍒板钩浠揫workNo={0}]澶辫触", wrkMast.getWrkNo());
-                            }
-                        }
-                    }
-                }
+
             }
 
-
+            // 淇敼璁㈠崟鐘舵�� 浣滀笟涓� ===>> 宸插畬鎴�
+            for (WrkDetl wrkDetl : wrkDetlService.selectByWrkNo(wrkMast.getWrkNo())) {
+                if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
+                    orderService.checkComplete(wrkDetl.getOrderNo());
+                }
+            }
 
             // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
             if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
diff --git a/src/main/java/com/zy/common/service/wms/WmsService.java b/src/main/java/com/zy/common/service/wms/WmsService.java
deleted file mode 100644
index 781f8b7..0000000
--- a/src/main/java/com/zy/common/service/wms/WmsService.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package com.zy.common.service.wms;
-
-import com.alibaba.fastjson.JSON;
-import com.core.common.Cools;
-import com.zy.common.model.BillDto;
-import com.zy.common.model.ErpUpload;
-import com.zy.common.utils.HttpHandler;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-import java.io.IOException;
-import java.util.List;
-
-/**
- * Created by vincent on 2021/5/27
- */
-@Component
-public class WmsService {
-
-    @Value("${wms.url}")
-    private String wmsUrl;
-
-    public Result replenish(List<ReplenishDto> dtos) {
-        try {
-            if (Cools.isEmpty(dtos)) {
-                return new Result(200, "鎿嶄綔鎴愬姛", null);
-            }
-            ReplenishParam param = new ReplenishParam();
-            param.setList(dtos);
-            String response = new HttpHandler.Builder()
-                    .setUri(wmsUrl)
-                    .setPath("/open/api/replenish")
-                    .setJson(JSON.toJSONString(param))
-                    .build()
-                    .doPost();
-            return JSON.parseObject(response, Result.class);
-        } catch (IOException e) {
-            e.printStackTrace();
-            return new Result(500, "鏈嶅姟鍣ㄥ紓甯�", null);
-        }
-    }
-
-    public Result erpUpload(List<BillDto> dtos, Integer docId, String docNumber) {
-        try {
-            ErpUpload param = new ErpUpload();
-            param.setDtos(dtos);
-            param.setDocId(docId);
-            param.setDocNumber(docNumber);
-            String response = new HttpHandler.Builder()
-                    .setUri(wmsUrl)
-                    .setPath("/open/api/erp/upload")
-                    .setJson(JSON.toJSONString(param))
-                    .build()
-                    .doPost();
-            return JSON.parseObject(response, Result.class);
-        } catch (IOException e) {
-            e.printStackTrace();
-            return new Result(500, "鏈嶅姟鍣ㄥ紓甯�", null);
-        }
-    }
-
-}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 7a7ac42..d1e952e 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,5 +1,5 @@
 server:
-  port: 7878
+  port: 8081
   servlet:
     context-path: /@pom.build.finalName@
 
@@ -55,9 +55,6 @@
   doubleLocs: 1,4,5,8
   # 涓�涓爢鍨涙満璐熻矗鐨勮揣鏋舵帓鏁�
   groupCount: 4
-
-wms:
-  url: http://192.168.1.57:8080/wms
 
 erp:
   url: http://123.60.34.127:6220/api
diff --git a/src/main/resources/mapper/OrderMapper.xml b/src/main/resources/mapper/OrderMapper.xml
index 1ac517d..fcd6b0b 100644
--- a/src/main/resources/mapper/OrderMapper.xml
+++ b/src/main/resources/mapper/OrderMapper.xml
@@ -46,7 +46,9 @@
         update man_order
         set settle = #{settle}
         ,update_time = getdate()
-        ,update_by = #{userId}
+        <if test="userId != null">
+            ,update_by = #{userId}
+        </if>
         where 1=1
         and id = #{orderId}
     </update>
diff --git a/src/main/webapp/views/index.html b/src/main/webapp/views/index.html
index 680cb5b..6a6c705 100644
--- a/src/main/webapp/views/index.html
+++ b/src/main/webapp/views/index.html
@@ -2,7 +2,7 @@
 <html lang="en">
 <head>
   <meta charset="utf-8">
-  <title>涓壃 - 杩愮淮绯荤粺骞冲彴</title>
+  <title>涓壃 - 鑷姩鍖栫珛浣撲粨搴� - AS / RS</title>
   <meta name="renderer" content="webkit">
   <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
   <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
diff --git a/src/main/webapp/views/login00.html b/src/main/webapp/views/login00.html
new file mode 100644
index 0000000..5675d73
--- /dev/null
+++ b/src/main/webapp/views/login00.html
@@ -0,0 +1,256 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <title>鑷姩浠撳偍 - 绠$悊绯荤粺</title>
+    <link rel="icon" type="image/x-icon" href="../static/image/log.png" />
+    <link rel="stylesheet" href="../static/layui/css/layui.css" media="all">
+    <script type="text/javascript" src="../static/layui/layui.js"></script>
+    <script type="text/javascript" src="../static/js/common.js"></script>
+    <style>
+        html{
+            height: 100%;
+        }
+        body.login-bg {
+            color: #777;
+            height: 100%;
+            /*background-image: url("../static/image/bg-imgage.jpg");*/
+            background-image: url("../static/image/login_bg.jpg");
+            background-repeat: no-repeat;
+            background-size: cover;
+            background-position: top center;
+        }
+
+        #login-wrapper {
+            /*color: #fff;*/
+            box-sizing:border-box;
+            /*background: #576669;*/
+            background: #fff;
+            position: absolute;
+            top: 45%;
+            left: 50%;
+            margin-top: -210px;
+            margin-left: -220px;
+            width: 440px;
+            min-height: 420px;
+            padding: 50px;
+            text-align: center;
+            border-radius: 5px;
+
+            transform-origin: 50% 50%;
+            animation: loading 1s 0s forwards;
+            transform: rotateX(0deg);
+        }
+
+        #login-wrapper h2 {
+            letter-spacing: 3px;
+            font-size: 26px;
+            margin-bottom: 30px;
+        }
+
+        .layadmin-user-login-body .layui-form-item {
+            margin-bottom: 20px;
+            position: relative;
+        }
+        .layadmin-user-login-body .layui-form-item .layui-input {
+            height: 42px;
+            padding-left: 40px;
+            font-size: 16px;
+            border: 1px solid #c8cccf;
+            color: inherit;
+        }
+        .login-submit {
+            margin-top: 30px;
+        }
+        .layadmin-user-login-icon {
+            position: absolute;
+            left: 1px;
+            top: 1px;
+            width: 38px;
+            line-height: 40px;
+            text-align: center;
+            color: #B2B2B2;
+            font-size: 18px;
+        }
+        .layui-btn-normal {
+            background-color: #0767aa;
+            font-size: 20px;
+            border-radius: 4px;
+            height: 52px;
+        }
+        .layui-form-checked[lay-skin=primary] i {
+            border-color: #0767aa!important;
+            background-color: #0767aa;
+            color: #fff;
+        }
+        .layui-form-checkbox[lay-skin=primary]:hover i {
+            border-color: #0767aa;
+            color: #fff;
+        }
+        #code-box {
+            position: relative;
+            height: 42px;
+        }
+        #code-label {
+            z-index: 999;
+        }
+        #code {
+            position: absolute;
+            left: 0;
+            top: 0;
+            display: inline-block;
+            width: 60%;
+        }
+        #codeImg {
+            border: 1px solid rgba(0,0,0,0.1);
+            position: absolute;
+            right: 5%;
+            top: 0;
+            width: 30%;
+            height: 90%;
+        }
+    </style>
+</head>
+<body class="login-bg">
+
+<div id="login-wrapper">
+    <header>
+        <h2>绯荤粺鐧诲綍</h2>
+    </header>
+    <div class="layui-form layadmin-user-login-body">
+        <div class="layui-form-item">
+            <label class="layui-icon layui-icon-username layadmin-user-login-icon"></label>
+            <input id="mobile" class="layui-input" type="text" name="mobile" lay-verify="mobile" placeholder="璐﹀彿">
+        </div>
+        <div class="layui-form-item">
+            <label class="layui-icon layui-icon-password layadmin-user-login-icon"></label>
+            <input id="password" class="layui-input" type="password" name="password" lay-verify="password" placeholder="瀵嗙爜">
+        </div>
+        <div id="code-box" class="layui-form-item" style="">
+            <label id="code-label" class="layui-icon layui-icon-vercode layadmin-user-login-icon"></label>
+            <input id="code" class="layui-input" type="text" name="password" lay-verify="code" placeholder="楠岃瘉鐮�">
+            <img id="codeImg" title="鐪嬩笉娓咃紵鐐瑰嚮鎹竴寮犮��">
+        </div>
+        <div class="layui-form-item" style="text-align: left;padding-left: 3px;">
+            <input id="rememberPwd" style="vertical-align: middle" type="checkbox" lay-skin='primary' lay-filter="remPwd" title="璁颁綇瀵嗙爜" checked="checked">
+        </div>
+    </div>
+    <div class="layui-form-item login-submit">
+        <button id="login-button" class="layui-btn layui-btn-fluid layui-btn-normal" lay-submit="" lay-filter="login">鐧� 褰�</button>
+    </div>
+</div>
+
+</body>
+<script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
+<script type="text/javascript" src="../static/js/tools/md5.js"></script>
+<script type="text/javascript">
+
+    $(function () {
+        var oldUserName = localStorage.getItem('oldUserName');
+        var oldPass = localStorage.getItem('oldPass');
+        if(oldUserName){
+            $('#mobile').val(oldUserName);
+        }
+        if(oldPass){
+            $('#password').val(oldPass);
+        }
+    })
+
+    // 楠岃瘉鐮佸紑鍏�
+    var codeSwitch = 'Y';
+    $.ajax({
+        url: baseUrl+"/code/switch.action",
+        async: false,
+        success: function (res) {
+            if (res.data === 'N'){
+                codeSwitch = res.data;
+                $('#code-box').css("display", "none");
+            }
+        }
+    });
+
+    // 鍒濆鍖栭獙璇佺爜
+    initCode();
+    $('#codeImg').click(function () {
+        initCode();
+    });
+    function initCode() {
+        var random = Math.random();
+        $('#codeImg').attr("src", baseUrl+"/code.action?sd="+random);
+        setTimeout(function () {
+            $.ajax({
+                url: baseUrl+"/code.do",
+                data: {sd: random},
+                method: 'POST',
+                async: false,
+                success: function (code) {
+                    sessionStorage.setItem("code", code);
+                }
+            });
+        }, 100);
+    }
+
+    layui.use(['form','layer'],function () {
+        var form = layui.form,
+            layer = layui.layer,
+            $ = layui.jquery;
+
+        form.on('submit(login)', function (data) {
+            var mobile = $("#mobile").val();
+            if (mobile === "") {
+                layer.msg("璇疯緭鍏ユ墜鏈哄彿", {offset: '150px'});
+                return;
+            }
+            var password = $("#password").val();
+            if (password === "") {
+                layer.msg("璇疯緭鍏ュ瘑鐮�", {offset: '150px'});
+                return;
+            }
+            var code = $("#code").val();
+            if (code === "" && codeSwitch === 'Y') {
+                layer.msg("璇疯緭鍏ラ獙璇佺爜", {offset: '150px'});
+                return;
+            }
+            if (sessionStorage.getItem("code").toUpperCase() !== code.toUpperCase()&&codeSwitch==='Y'){
+                layer.msg("楠岃瘉鐮侀敊璇�", {offset: '150px'});
+                return;
+            }
+
+            var user = {
+                mobile: mobile,
+                password: hex_md5(password)
+            };
+            $.ajax({
+                url: baseUrl+"/login.action",
+                data: user,
+                method: 'POST',
+                success: function (res) {
+                    if (res.code === 200){
+                        // 璁颁綇瀵嗙爜
+                        if($('#rememberPwd').is(':checked')){
+                            localStorage.setItem('oldUserName',user.mobile);
+                            localStorage.setItem('oldPass',password);
+                        } else {
+                            localStorage.removeItem('oldUserName');
+                            localStorage.removeItem('oldPass');
+                        }
+                        localStorage.setItem("token", res.data.token);
+                        localStorage.setItem("username", res.data.username);
+                        window.location.href = "index.html";
+                    } else {
+                        layer.msg(res.msg, {offset: '150px'});
+                    }
+                }
+            });
+            return false;
+        });
+
+        $('body').keydown(function () {
+            if (event.keyCode === 13) {
+                $("#login-button").click();
+            }
+        });
+
+    });
+</script>
+</html>
\ No newline at end of file

--
Gitblit v1.9.1