Ver código fonte

Merge remote-tracking branch 'origin/master'

hejiahui 2 anos atrás
pai
commit
0604ae4e75

+ 8 - 1
src/main/java/com/steerinfo/dil/controller/AmsSaleOrderController.java

@@ -581,7 +581,7 @@ public class AmsSaleOrderController extends BaseRESTfulController {
                                                          String saler
                                                          ) {
         if (con != null  && !"".equals(con) && !"null".equals(con)) {
-            mapValue.put("con", con);
+            mapValue.put("con", "%" + con + "%");
         }
         if(shipperId != null  && !"".equals(shipperId) && !"null".equals(shipperId)){
             mapValue.put("shipperId", shipperId);
@@ -1431,4 +1431,11 @@ public class AmsSaleOrderController extends BaseRESTfulController {
         int result = amsSaleOrderService.reverseCloseOrder(map);
         return success(result);
     }
+
+    @ApiOperation("查询销售订单状态")
+    @PostMapping("getSaleOrderStatus")
+    public RESTfulResult getSaleOrderStatus(@RequestParam String saleNumber){
+        int result = amsSaleOrderService.getSaleOrderStatus(saleNumber);
+        return success(result);
+    }
 }

+ 2 - 0
src/main/java/com/steerinfo/dil/mapper/AmsSaleOrderMapper.java

@@ -176,4 +176,6 @@ public interface AmsSaleOrderMapper extends IBaseMapper<AmsSaleOrder, BigDecimal
 
     Map<String, Object> getOrderMes(Map<String, Object> mapValue);
 
+    int updateSaleOrderStatus(String saleNumber);
+
 }

+ 2 - 0
src/main/java/com/steerinfo/dil/service/IAmsSaleOrderService.java

@@ -173,4 +173,6 @@ public interface IAmsSaleOrderService {
 
     int reverseCloseOrder(Map<String, Object> map);
 
+    int getSaleOrderStatus(String saleNumber);
+
 }

+ 31 - 0
src/main/java/com/steerinfo/dil/service/impl/AmsSaleOrderServiceImpl.java

@@ -1,6 +1,8 @@
 package com.steerinfo.dil.service.impl;
 
 import com.alibaba.druid.support.json.JSONUtils;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.steerinfo.dil.feign.JoinFeign;
 import com.steerinfo.dil.feign.TmsTruckFeign;
 import com.steerinfo.dil.mapper.*;
@@ -11,6 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -87,6 +90,9 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
     @Autowired
     WmspOutboundResultMaterialMapper wmspOutboundResultMaterialMapper;
 
+    @Resource
+    EasSaleOrderStatusUtil easSaleOrderStatusUtil;
+
 
     @Override
     public List<Map<String, Object>> getSaleOrderInfo(Map<String, Object> map) {
@@ -2063,5 +2069,30 @@ public class AmsSaleOrderServiceImpl implements IAmsSaleOrderService {
         return 1;
     }
 
+    @Override
+    public int getSaleOrderStatus(String saleNumber) {
+        int result = 0;
+        Map<String,Object> input = new HashMap<>();
+        // 销售订单号
+        input.put("number",saleNumber);
+        Map<String, Object> totalMap = easSaleOrderStatusUtil.getTotalMap();
+        totalMap.put("input",input);
+        // 调用金蝶关闭接口
+        String json = JSONUtils.toJSONString(totalMap);
+        System.out.println(json);
+        Map<String,Object> resultMap = joinFeign.deleteSaleOrderToEas(totalMap);
+        System.out.println(resultMap);
+        String outPutMap = (String) resultMap.get("output");
+        JSONObject jsonObject = JSON.parseObject(outPutMap);
+        if(jsonObject != null){
+            result = DataChange.dataToBigDecimal(jsonObject.get("NumberStatus")).intValue();
+        }
+        if(result == 7){
+            //如果为7则更新
+            amsSaleOrderMapper.updateSaleOrderStatus(saleNumber);
+        }
+        return result;
+    }
+
 
 }

+ 73 - 0
src/main/java/com/steerinfo/dil/util/EasSaleOrderStatusUtil.java

@@ -0,0 +1,73 @@
+package com.steerinfo.dil.util;
+
+import org.springframework.stereotype.Component;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * 配置金蝶正式环境连接常量Map
+ * @Description:
+ * @Author:HuJianGuo
+ * @GreateTime:2021/11/15 19:44
+ * @Version:V2.0
+ */
+@Component
+public class EasSaleOrderStatusUtil {
+    // totalMap
+    public final Map<String,Object> totalMap = new HashMap<>();
+    // context
+    public final Map<String,Object> context = new HashMap<>();
+    public final boolean logError = true;
+    public final boolean logData = true;
+    // context
+    public final Map<String,Object> login = new HashMap<>();
+    public final String password = "dgjt@kingdee";
+    public final String dcName = "FDDGEAS85";
+    public final String dbType = "0";
+    public final String userName = "user";
+    // context
+    public final String command = "FindStatusHandler";
+
+    /**
+     * 得到context的map
+     * @return
+     */
+    public Map<String,Object> getContext(){
+        this.context.put("logError",logError);
+        this.context.put("logData",logData);
+        return this.context;
+    }
+
+    /**
+     * 得到login的map
+     * @return
+     */
+    public Map<String,Object> getLogin(){
+        this.login.put("password",password);
+        this.login.put("dcName",dcName);
+        this.login.put("dbType",dbType);
+        this.login.put("userName",userName);
+        return this.login;
+    }
+
+    /**
+     * 得到command字符串
+     * @return
+     */
+    public String getCommand(){
+        return this.command;
+    }
+
+    /**
+     * 将所有的配置放入到totalMap的map里面
+     * @return
+     */
+    public Map<String,Object> getTotalMap() {
+        totalMap.put("context",getContext());
+        totalMap.put("login",getLogin());
+        totalMap.put("command",getCommand());
+        return this.totalMap;
+    }
+}
+

+ 6 - 1
src/main/resources/com/steerinfo/dil/mapper/AmsSaleOrderMapper.xml

@@ -1964,7 +1964,7 @@
     and ASM.DELETED IS NULL
     and ASM.SALE_MATERIAL_ID IS NOT NULL
     <if test="con != null">
-      and (instr(r_consignee.CONSIGNEE_COMPANY_NAME, #{con}) > 0 or instr(a_s_order.SALE_NUMBER, #{con}) > 0)
+      and r_consignee.CONSIGNEE_COMPANY_NAME||a_s_order.SALE_NUMBER||rm.material_name||RM.MATERIAL_SPECIFICATION || RM.MATERIAL_MODEL like #{con}
     </if>
     <if test="oneDate != null">
       and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= a_s_order.UPDATE_TIME
@@ -4609,4 +4609,9 @@
     set ASOM.SALE_ORDER_CONSIGNEE_TEL=#{consigneeTel}
     WHERE ASOM.SALE_ORDER_MATERIAL_ID=#{saleodermatetialid}
   </update>
+    <update id="updateSaleOrderStatus">
+      update AMS_SALE_ORDER ASO
+      set aso.DELETED = 2
+      WHERE ASO.SALE_NUMBER = #{saleNumber}
+    </update>
 </mapper>