Browse Source

问题修改

xiaochen 2 years ago
parent
commit
9f42b600ca

+ 31 - 0
src/main/java/com/tld/controller/AskGoodsController.java

@@ -236,6 +236,7 @@ public class AskGoodsController {
     public void test04(){
         askGoodsService.test04();
     }
+
     /**
      * 出库回传数据导入
      * @param file 文件流
@@ -356,4 +357,34 @@ public class AskGoodsController {
         askGoodsService.marketReturn();
     }
 
+    /**
+     * 入库流水导出
+     * @param askGoods 参数
+     * @param response 参数
+     * @return 返回结果
+     */
+    @GetMapping("getStorage")
+    @PassToken
+    public void getStorage(AskGoods askGoods, HttpServletResponse response){
+        askGoodsService.getStorage(askGoods, response);
+    }
+
+    /**
+     * 入库错误信息回调
+     * */
+    @GetMapping("storageReturnError")
+    @PassToken
+    public void storageReturnError(){
+        askGoodsService.storageReturnError();
+    }
+
+    /**
+     * 移库错误信息回调
+     * */
+    @GetMapping("parkingReturnError")
+    @PassToken
+    public void parkingReturnError(){
+        askGoodsService.parkingReturnError();
+    }
+
 }

+ 8 - 0
src/main/java/com/tld/mapper/AskGoodsMapper.java

@@ -209,4 +209,12 @@ public interface AskGoodsMapper {
     Delivery getDeliveryF(@Param("deliveryOrder") String deliveryOrder);
 
     List<Delivery> getDeliveryZ(@Param("deliveryId") String deliveryId, @Param("materialId") String materialId);
+
+    void marketImports(List<MarketReturn> list);
+
+    List<Map<String, Object>> getStorage(List<MarketReturn> list);
+
+    List<Error> getStorageReturnError();
+
+    List<Error> parkingReturnError();
 }

+ 6 - 0
src/main/java/com/tld/service/AskGoodsService.java

@@ -85,4 +85,10 @@ public interface AskGoodsService {
     void market();
 
     void marketReturn();
+
+    void getStorage(AskGoods askGoods, HttpServletResponse response);
+
+    void storageReturnError();
+
+    void parkingReturnError();
 }

+ 79 - 1
src/main/java/com/tld/service/impl/AskGoodsServiceImpl.java

@@ -329,6 +329,9 @@ public class AskGoodsServiceImpl implements AskGoodsService {
                     strJson.put("SourceType", mapList.get(0).get("sourceType").toString());//来源类型 8
                     strJson.put("MoveType", mapList.get(0).get("moveType").toString());//移动类型
                     strJson.put("IsRed", 0);//是否红单1
+                    if (realName == null || realName == ""){
+                        realName = "李兆峰" ;
+                    }
                     strJson.put("Creator", realName);//制单人姓名1
                     //子表
                     for (Map<String, Object> map : askGoodsMapper.getRemovalz(mapList.get(0).get("askGoodsId").toString(), warehouseWhere)) {
@@ -786,6 +789,9 @@ public class AskGoodsServiceImpl implements AskGoodsService {
                     strJson.put("SourceType", mapList.get(0).get("sourceType").toString());//来源类型
                     strJson.put("MoveType", mapList.get(0).get("moveType").toString());//移动类型
                     strJson.put("IsRed", 0);//是否红单1
+                    if (realName == null || realName == ""){
+                        realName = "李兆峰" ;
+                    }
                     strJson.put("Creator", realName);//制单人姓名1
                     //子表
                     for (Map<String, Object> map : askGoodsMapper.getRemovalz(mapList.get(0).get("askGoodsId").toString(), warehouseWhere)) {
@@ -955,6 +961,9 @@ public class AskGoodsServiceImpl implements AskGoodsService {
                     strJson.put("SourceBillDate", DateUtil.dateConversion(mapList.get(0).get("scrq").toString()));//业务日期
                     strJson.put("MoveType", mapList.get(0).get("warehouseTransferType").toString());//移动类型
                     strJson.put("IsRed", 0);//是否红单1
+                    if (realName == null || realName == ""){
+                        realName = "李兆峰" ;
+                    }
                     strJson.put("Creator", realName);//制单人姓名1
                     //子表
                     for (Map<String, Object> map : askGoodsMapper.getReturnWarehouseTransferZ(mapList.get(0).get("warehouseTransferId").toString(), warehouseWhere)) {
@@ -1079,6 +1088,9 @@ public class AskGoodsServiceImpl implements AskGoodsService {
                     strJson.put("SourceType", mapList.get(0).get("sourceType").toString());//来源类型
                     strJson.put("MoveType", mapList.get(0).get("moveType").toString());//移动类型
                     strJson.put("IsRed", 0);//是否红单1
+                    if (realName == null || realName == ""){
+                        realName = "李兆峰" ;
+                    }
                     strJson.put("Creator", realName);//制单人姓名1
                     //子表
                     for (Map<String, Object> map : askGoodsMapper.getNoticeSubtabulation(mapList.get(0).get("noticeId").toString())) {
@@ -1197,6 +1209,9 @@ public class AskGoodsServiceImpl implements AskGoodsService {
                     strJson.put("SourceType", returnWarehousing1.get("sourceType").toString());//来源类型
                     strJson.put("MoveType", returnWarehousing1.get("moveType").toString());//移动类型
                     strJson.put("IsRed", 0);//是否红单1
+                    if (realName == null || realName == ""){
+                        realName = "李兆峰" ;
+                    }
                     strJson.put("Creator", realName);//制单人姓名1
                     //查询信息
 
@@ -1321,6 +1336,9 @@ public class AskGoodsServiceImpl implements AskGoodsService {
                     strJson.put("SourceType", mapList.get(0).get("sourceType").toString());//来源类型
                     strJson.put("MoveType", mapList.get(0).get("moveType").toString());//移动类型
                     strJson.put("IsRed", 0);//是否红单1
+                    if (realName == null || realName == ""){
+                        realName = "李兆峰" ;
+                    }
                     strJson.put("Creator", realName);//制单人姓名1
                     //子表
                     for (Map<String, Object> map : askGoodsMapper.getRemovalz(mapList.get(0).get("askGoodsId").toString(),maps.get("warehouseWhere").toString())) {
@@ -1442,6 +1460,9 @@ public class AskGoodsServiceImpl implements AskGoodsService {
                     strJson.put("SourceType", mapList.get(0).get("sourceType").toString());//来源类型
                     strJson.put("MoveType", mapList.get(0).get("moveType").toString());//移动类型
                     strJson.put("IsRed", 0);//是否红单1
+                    if (realName == null || realName == ""){
+                        realName = "李兆峰" ;
+                    }
                     strJson.put("Creator", realName);//制单人姓名1
                     //子表
                     for (Map<String, Object> map : askGoodsMapper.getRemovalz(mapList.get(0).get("askGoodsId").toString(),maps.get("warehouseWhere").toString())) {
@@ -1689,6 +1710,7 @@ public class AskGoodsServiceImpl implements AskGoodsService {
     @Override
     public void marketImport(List<MarketReturn> list) {
         askGoodsMapper.marketImport(list);
+//        askGoodsMapper.marketImports(list);
     }
 
     /**
@@ -1720,7 +1742,7 @@ public class AskGoodsServiceImpl implements AskGoodsService {
                                  .setNum( marketReturn.getNum() )//数量-已发数量-取消数量 = 未发数量
                                  .setEntryNumber(delivery.getEntryNumber())//分录号
                                  .setDocumentPointsId("   ")//分录单id
-                                 .setStorageLocationCode("XNKW111111");//库存编号
+                                 .setStorageLocationCode("D2-3-2");//库存编号
 
                          //添加父表信息
                          askGoodsMapper.addReturnGsRemovalF(returRemoval);
@@ -1744,6 +1766,62 @@ public class AskGoodsServiceImpl implements AskGoodsService {
         }
     }
 
+    /**
+     * 入库导出
+     * @param askGoods 参数
+     * @param response 参数
+     * @return 返回结果
+     */
+    @Override
+    public void getStorage(AskGoods askGoods, HttpServletResponse response) {
+        try{
+            //导出数据汇总
+            List<List<Object>> sheetDataList = new ArrayList<>();
+            //表头数据
+            List<Object> head = Arrays.asList("物料编号", "供应商id", "连翻号", "生产日期", "生产批次", "容量", "工序", "序列号", "类型","用户编号","部门编号","库位编号","生成日期","入库单编号","WBS","采购订单号","所属公司","采购数量","传输状态0成功1失败");
+            //查询条件
+            List<MarketReturn> list1 = askGoodsMapper.getMarketList();
+            //查询数据
+            List<Map<String, Object>> list = askGoodsMapper.getStorage(list1);
+            sheetDataList.add(head);
+            for(Map<String, Object> userMap : list){
+                List<Object> listSheet = new ArrayList<>();
+                for(String key: userMap.keySet()){
+                    listSheet.add(userMap.get(key));
+                }
+                sheetDataList.add(listSheet);
+            }
+            //当前时间
+            Date time = new Date();
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMddHHmmss");
+            ExcelUtils.export(response, "出库流水数据导出" + sdf.format(time), sheetDataList);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     * 入库错误信息回调
+     * */
+    @Override
+    public void storageReturnError() {
+        List<Error> list = askGoodsMapper.getStorageReturnError();
+        for (Error error : list) {
+            queryListService.anew(error);
+        }
+    }
+
+    /**
+     * 移库错误信息回调
+     * */
+    @Override
+    public void parkingReturnError() {
+        List<Error> list = askGoodsMapper.parkingReturnError();
+        for (Error error : list) {
+            queryListService.anew(error);
+        }
+    }
+
     @Override
     public void test() {
         AskGoods askGoods = new AskGoods();

+ 62 - 14
src/main/java/com/tld/service/impl/QueryListServiceImpl.java

@@ -544,29 +544,38 @@ public class QueryListServiceImpl implements QueryListService {
         Map<String, Object> mapVal = new HashMap<>();
         try{
             HttpClientUtil httpClientUtil1 = new HttpClientUtil();
+            System.out.println("回调错误信息:"+errorVal.toString());
             Map<String, Object> result = httpClientUtil1.doPost(errorVal.getUrl(), JSON.parseObject(errorVal.getDataVal()));
             Error error = new Error();
-            if (Integer.parseInt(result.get("msg").toString()) != 200) {
+            if (Integer.parseInt(result.get("msg").toString()) != 200) {//返回失败
                 //如果失败存入报错信息跟数据
                 error.setErrorInfo(result.get("data").toString());
                 error.setUrl(errorVal.getUrl());
                 error.setDataVal(errorVal.getDataVal()).setType(errorVal.getType());
                 errorMapper.addError(error);
-            } else {
+            } else {//返回成功单据全部失败
                 JSONObject jsonObject = (JSONObject) JSONObject.parse(result.get("data").toString());
                 JSONObject jsonObject1 = (JSONObject) JSONObject.parse(jsonObject.get("result").toString());
-                if (jsonObject1.get("State").toString().equals("0")) {
+                if (jsonObject1.get("State").toString().equals("0")) {//全部失败
+                    String msg = null ;
+                    if (errorVal.getType().equals("入库回传")){
+                        msg = jsonObject1.get("FailReason").toString();
+                    }else {
+                        msg = jsonObject1.get("Msg").toString();
+                    }
                     //如果失败存入报错信息跟数据
-                    error.setErrorInfo(jsonObject1.get("Msg").toString());
+                    error.setErrorInfo(msg);
                     error.setUrl(errorVal.getUrl());
                     error.setDataVal(errorVal.getDataVal()).setType(errorVal.getType());
                     errorMapper.addError(error);
-                } else {
+                } else {//单据部分失败
                     if (errorVal.getType().equals("入库回传")) {
                         JSONObject jsonObject2 = JSONObject.parseObject(JSON.parseObject((String) result.get("data")).get("result").toString());
                         if (jsonObject2.get("State").toString().equals("0")) {
+                            String msg = null ;
+                            msg = jsonObject2.get("FailReason").toString();
                             //如果失败存入报错信息跟数据
-                            error.setErrorInfo(jsonObject2.get("Msg").toString());
+                            error.setErrorInfo(msg);
                             error.setUrl(errorVal.getUrl());
                             error.setDataVal(errorVal.getDataVal()).setType(errorVal.getType());
                             errorMapper.addError(error);
@@ -580,34 +589,73 @@ public class QueryListServiceImpl implements QueryListService {
                             if (map.get("State").toString().equals("0")) {
                                 if(errorVal.getType().equals("出库回传")){
                                     JSONObject json = (JSONObject) JSONObject.parse(errorVal.getDataVal());
-                                    List<JSONObject> data2 = (List<JSONObject>) json.get("ReqOutStocks");
+                                    JSONObject jsonObject3 = JSONObject.parseObject(json.get("strJson").toString());
+                                    List<JSONObject> data2 = (List<JSONObject>) jsonObject3.get("ReqOutStocks");
                                     for (JSONObject jsonObject2 : data2) {
                                         if (jsonObject2.get("WMSCode").toString().equals(map.get("WMSCode")) && jsonObject2.get("WareHouse").toString().equals(map.get("WareHouse"))) {
+
                                             //如果失败存入报错信息跟数据
-                                            error.setErrorInfo(map.get("FailReason").toString());
+                                            List<JSONObject> retunList2 = new LinkedList<>();
+                                            retunList2.add(jsonObject2);
+
+                                            JSONObject ReqOutStocks1 = new JSONObject();
+                                            ReqOutStocks1.put("ReqOutStocks", retunList2);
+
+                                            JSONObject ReqOutStocks2 = new JSONObject();
+                                            ReqOutStocks2.put("strJson",ReqOutStocks1);
+
+                                            //如果失败存入报错信息跟数据
+                                            String msg = null ;
+                                            msg = map.get("FailReason").toString();
+                                            error.setErrorInfo(msg);
                                             error.setUrl(errorVal.getUrl());
-                                            error.setDataVal(jsonObject2.toString()).setType(errorVal.getType());
+                                            error.setDataVal(ReqOutStocks2.toString()).setType(errorVal.getType());
                                             errorMapper.addError(error);
                                         }
                                     }
                                 } else {
                                     JSONObject json = (JSONObject) JSONObject.parse(errorVal.getDataVal());
-                                    List<JSONObject> data2 = (List<JSONObject>) json.get("BILLs");
+                                    JSONObject jsonObject3 = JSONObject.parseObject(json.get("strJson").toString());
+                                    List<JSONObject> data2 = (List<JSONObject>) jsonObject3.get("BILLs");
                                     for (JSONObject jsonObject2 : data2) {
                                         if(errorVal.getType().equals("移库")){
                                             if (jsonObject2.get("WMSCode").toString().equals(map.get("WMSCode")) && jsonObject2.get("FromWareHouse").toString().equals(map.get("FromWareHouse"))) {
+
+                                                List<JSONObject> retunList2 = new LinkedList<>();
+                                                retunList2.add(jsonObject2);
+
+                                                JSONObject ReqOutStocks1 = new JSONObject();
+                                                ReqOutStocks1.put("ReqOutStocks", retunList2);
+
+                                                JSONObject ReqOutStocks2 = new JSONObject();
+                                                ReqOutStocks2.put("strJson",ReqOutStocks1);
+
                                                 //如果失败存入报错信息跟数据
-                                                error.setErrorInfo(map.get("FailReason").toString());
+                                                String msg = null ;
+                                                msg = map.get("FailReason").toString();
+                                                error.setErrorInfo(msg);
                                                 error.setUrl(errorVal.getUrl());
-                                                error.setDataVal(jsonObject2.toString()).setType(errorVal.getType());
+                                                error.setDataVal(ReqOutStocks2.toString()).setType(errorVal.getType());
                                                 errorMapper.addError(error);
                                             }
                                         } else {
                                             if (jsonObject2.get("WMSCode").toString().equals(map.get("WMSCode")) && jsonObject2.get("WareHouse").toString().equals(map.get("WareHouse"))) {
+                                                String msg = null ;
+                                                msg = map.get("FailReason").toString();
+
+                                                List<JSONObject> retunList2 = new LinkedList<>();
+                                                retunList2.add(jsonObject2);
+
+                                                JSONObject ReqOutStocks1 = new JSONObject();
+                                                ReqOutStocks1.put("ReqOutStocks", retunList2);
+
+                                                JSONObject ReqOutStocks2 = new JSONObject();
+                                                ReqOutStocks2.put("strJson",ReqOutStocks1);
+
                                                 //如果失败存入报错信息跟数据
-                                                error.setErrorInfo(map.get("FailReason").toString());
+                                                error.setErrorInfo(msg);
                                                 error.setUrl(errorVal.getUrl());
-                                                error.setDataVal(jsonObject2.toString()).setType(errorVal.getType());
+                                                error.setDataVal(ReqOutStocks2.toString()).setType(errorVal.getType());
                                                 errorMapper.addError(error);
                                             }
                                         }

+ 3 - 0
src/main/java/com/tld/service/impl/WarehousingServiceImpl.java

@@ -280,6 +280,9 @@ public class WarehousingServiceImpl implements WarehousingService {
                 strJson.put("MoveType", returnWarehousing.getMoveType());//移动类型
                 strJson.put("IsRed", "0");//是否红单1
 //                strJson.put("Creator", returnWarehousing.getUserName());//制单人姓名
+                if (realName == null || realName == ""){
+                    realName = "李兆峰" ;
+                }
                 strJson.put("Creator", realName);//制单人姓名
                 BillItems.put("WMSItemID", returnWarehousing.getReceiveGoodsId());//利道WMS入库单分录ID
                 BillItems.put("PurOrderID", returnWarehousing.getOrderNumber());//采购单id

+ 3 - 4
src/main/java/com/tld/util/HttpClientUtil.java

@@ -97,10 +97,9 @@ public class HttpClientUtil {
 
         //设置请求超时时间
         RequestConfig requestConfig = RequestConfig.custom()
-                .setConnectTimeout(10000)
-                .setConnectionRequestTimeout(10000)
-
-                .setSocketTimeout(10000)
+                .setConnectTimeout(30000)
+                .setConnectionRequestTimeout(30000)
+                .setSocketTimeout(30000)
                 .build();
 
         CloseableHttpResponse response = null;

+ 53 - 1
src/main/resources/mapper/AskGoodsMapper.xml

@@ -397,6 +397,14 @@
             ,#{item.deliveryOrder})
         </foreach>
     </insert>
+    <!--销售出库导入数据导入物料code-->
+    <insert id="marketImports">
+        insert into tld_market_return(material_code)
+        values
+        <foreach collection="list" item="item" index="index" separator=",">
+            (#{item.materialCode})
+        </foreach>
+    </insert>
     <!-- 查询当天出库数量 -->
     <select id="getReturnRemovalCount" resultType="int">
         select count(*)
@@ -1437,7 +1445,7 @@
     <!--出库错误信息回调-->
     <select id="getOutgoingReturnError" resultType="com.tld.model.Error">
         select id,url,error_info,data_val,scrq,type,transmission_type from tld_error
-        where transmission_type = '1'
+        where transmission_type = '3'
         and type = '出库回传'
     </select>
     <!--查询销售出库导入数据-->
@@ -1461,6 +1469,50 @@
         and material_id = #{materialId}
         and out_num <![CDATA[=]]> '0'
     </select>
+    <!--查询符合条件的数据-->
+    <select id="getStorage" resultType="java.util.LinkedHashMap">
+        select
+            IFNULL(a.wllb_code, '') AS wllbCode,
+            IFNULL(a.supplier_id, '') AS supplier_id,
+            IFNULL(a.serial, '') AS serial,
+            IFNULL(a.produc_date, '') AS produc_date,
+            IFNULL(a.produc_batch, '') AS produc_batch,
+            IFNULL(a.capacity, '') AS capacity,
+            IFNULL(a.process, '') AS process,
+            IFNULL(a.seq, '') AS seq,
+            IFNULL(a.type, '') AS type,
+            IFNULL(a.user_id, '') AS user_id,
+            a.department_id,
+            IFNULL(a.wllb_code, '') AS wllbCode,
+            a.storage_location_code,
+            IFNULL(a.wllb_code, '') AS wllbCode,
+            a.scrq,
+            IFNULL(a.wllb_code, '') AS wllbCode,
+            a.storage_code,
+            IFNULL(a.wllb_code, '') AS wllbCode,
+            a.wbs,
+            IFNULL(a.wllb_code, '') AS wllbCode,
+            IFNULL(a.order_code, '') AS orderCode,
+            a.account_sleeve,
+            IFNULL(a.wllb_code, '') AS wllbCode,
+            IFNULL(a.purchase_num, '') AS purchaseNum,
+                IFNULL(a.transmission_type, '') AS transmission_type
+        from tld_storage a
+        join tld_market_return b on a.wllb_code = b.material_code
+        where account_sleeve = '8130'
+    </select>
+    <!--入库错误信息回调-->
+    <select id="getStorageReturnError" resultType="com.tld.model.Error">
+        select id,url,error_info,data_val,scrq,type,transmission_type from tld_error
+        where transmission_type = '1'
+        and type = '入库回传'
+    </select>
+    <!--移库错误信息回调-->
+    <select id="parkingReturnError" resultType="com.tld.model.Error">
+        select id,url,error_info,data_val,scrq,type,transmission_type from tld_error
+        where transmission_type = '1'
+        and type = '移库'
+    </select>
     <!-- 修改数据传输状态 -->
     <update id="updateRemoval">
         update tld_removal set transmission_type = "1" where storage_code = #{removalCode}