Browse Source

获取客户订单

DLC 1 year ago
parent
commit
1afc49c58e

+ 5 - 0
cx-aps/cx-aps-common/pom.xml

@@ -66,6 +66,11 @@
             <artifactId>javase</artifactId>
             <version>3.4.1</version>
         </dependency>
+        <dependency>
+            <groupId>com.oracle.database.jdbc</groupId>
+            <artifactId>ojdbc8</artifactId>
+            <version>19.7.0.0</version>
+        </dependency>
 
     </dependencies>
 </project>

+ 27 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/SlaveOracleDao.java

@@ -0,0 +1,27 @@
+package com.rongwei.bscommon.sys.dao;
+
+import com.rongwei.bsentity.domain.VNcOrderDetailVo;
+import com.rongwei.bsentity.domain.VNcOrderVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
+
+@Mapper
+public interface SlaveOracleDao {
+
+    /**
+     * 获取创新数据库的客户订单
+     * @return
+     */
+    @Select("select * from V_NC_ORDER where ORDERNO=#{ncOrderNo}")
+    VNcOrderVo getVNcOrderVo(@Param("ncOrderNo") String ncOrderNo);
+
+    /**
+     * 获取创新数据库的客户订单明细
+     * @return
+     */
+    @Select("select * from V_NC_ORDER_DETAIL where ORDERNO=#{ncOrderNo}")
+    List<VNcOrderDetailVo> getVNcOrderDetailVo(@Param("ncOrderNo") String ncOrderNo);
+}

+ 1 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsProductDetailService.java

@@ -16,4 +16,5 @@ import java.util.Map;
  */
 public interface ApsProductDetailService extends IService<ApsProductDetailDo> {
 
+    R getCustomOrderData(Map<String, Object> params);
 }

+ 17 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/SlaveSourceService.java

@@ -0,0 +1,17 @@
+package com.rongwei.bscommon.sys.service;
+
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.rongwei.bsentity.domain.VNcOrderDetailVo;
+import com.rongwei.bsentity.domain.VNcOrderVo;
+
+import java.util.List;
+
+public interface SlaveSourceService {
+
+    @DS("slave")
+    VNcOrderVo getVNcOrderVo(String ncOrderNo);
+
+    @DS("slave")
+    List<VNcOrderDetailVo> getVNcOrderDetailVo(String ncOrderNo);
+}

+ 23 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsProductDetailServiceImpl.java

@@ -3,8 +3,11 @@ package com.rongwei.bscommon.sys.service.impl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.rongwei.bscommon.sys.dao.ApsProductDetailDao;
 import com.rongwei.bscommon.sys.service.ApsProductDetailService;
+import com.rongwei.bscommon.sys.service.SlaveSourceService;
 import com.rongwei.bsentity.domain.ApsProductDetailDo;
+import com.rongwei.bsentity.domain.VNcOrderVo;
 import com.rongwei.rwcommon.base.R;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.Map;
@@ -20,4 +23,24 @@ import java.util.Map;
 @Service
 public class ApsProductDetailServiceImpl extends ServiceImpl<ApsProductDetailDao, ApsProductDetailDo> implements ApsProductDetailService {
 
+    @Autowired
+    private SlaveSourceService slaveSourceService;
+
+    /*
+    获取客户订单
+     */
+    @Override
+    public R getCustomOrderData(Map<String, Object> params) {
+        R r = new R();
+        String ncOrderNo = params.get("CUSTOMORDERNO").toString();
+        VNcOrderVo vNcOrderVo = slaveSourceService.getVNcOrderVo(ncOrderNo);
+        if (vNcOrderVo == null) {
+            return R.error("客户订单系统没有找到该订单");
+        } else {
+            vNcOrderVo.setVNcOrderDetailVoList(slaveSourceService.getVNcOrderDetailVo(ncOrderNo));
+            r.setCode("200");
+            r.setData(vNcOrderVo);
+            return r;
+        }
+    }
 }

+ 31 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/SlaveSourceServiceImpl.java

@@ -0,0 +1,31 @@
+package com.rongwei.bscommon.sys.service.impl;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.rongwei.bscommon.sys.dao.SlaveOracleDao;
+import com.rongwei.bscommon.sys.service.SlaveSourceService;
+import com.rongwei.bsentity.domain.VNcOrderDetailVo;
+import com.rongwei.bsentity.domain.VNcOrderVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class SlaveSourceServiceImpl implements SlaveSourceService {
+
+    @Autowired
+    private SlaveOracleDao slaveOracleDao;
+
+    @Override
+    @DS("slave")
+    public VNcOrderVo getVNcOrderVo(String ncOrderNo) {
+        return slaveOracleDao.getVNcOrderVo(ncOrderNo);
+    }
+
+    @Override
+    @DS("slave")
+    public List<VNcOrderDetailVo> getVNcOrderDetailVo(String ncOrderNo) {
+        return slaveOracleDao.getVNcOrderDetailVo(ncOrderNo);
+    }
+
+}

+ 6 - 0
cx-aps/cx-aps-entity/pom.xml

@@ -23,6 +23,12 @@
                 </exclusion>
             </exclusions>
         </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
+            <version>3.5.0</version>
+            <scope>compile</scope>
+        </dependency>
 
         <dependency>
             <groupId>com.rongwei</groupId>

+ 3 - 8
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsProductionOrderDo.java

@@ -122,22 +122,17 @@ public class ApsProductionOrderDo extends BaseDo implements Serializable {
     /**
      * 是否来自NC系统
      */
-    private String isfromnc;
-
-    /**
-     * NC订单号
-     */
-    private String ncorderno;
+    private String isfromcustom;
 
     /**
      * NC订单类型
      */
-    private String ncordertype;
+    private String customordertype;
 
     /**
      * NC订单状态
      */
-    private String ncorderstatus;
+    private String customorderstatus;
 
     /**
      * 所属租户ID

+ 57 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/VNcOrderDetailVo.java

@@ -0,0 +1,57 @@
+package com.rongwei.bsentity.domain;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class VNcOrderDetailVo {
+    /**
+     * 物料编码
+     */
+    private String materialcode;
+    /**
+     * 物料名称
+     */
+    private String materialname;
+    /**
+     * 规格
+     */
+    private String specialfication;
+    /**
+     * 合金
+     */
+    private String alloy;
+    /**
+     * 合金状态
+     */
+    private String alloystatus;
+    /**
+     * 厚度(mm)
+     */
+    private BigDecimal thickness;
+    /**
+     * 宽度(mm)
+     */
+    private BigDecimal prowidth;
+    /**
+     * 长度(mm)
+     */
+    private BigDecimal prolength;
+    /**
+     * 订单总数量
+     */
+    private Integer totalordercount;
+    /**
+     * 卷数
+     */
+    private Integer rollnum;
+    /**
+     * 数量单位
+     */
+    private String numberunit;
+    /**
+     * 备注
+     */
+    private String remark;
+}

+ 38 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/VNcOrderVo.java

@@ -0,0 +1,38 @@
+package com.rongwei.bsentity.domain;
+
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+@Data
+public class VNcOrderVo {
+    /**
+     * 客户订单号
+     */
+    private String customorderno;
+    /**
+     * 客户名称
+     */
+    private String customname;
+    /**
+     * 下单日期
+     */
+    private Date orderdate;
+    /**
+     * 备注
+     */
+    private String remark;
+    /**
+     * 期望交货期
+     */
+    private Date deliverydate;
+    /**
+     * 所属分厂
+     */
+    private String belongfactory;
+    /**
+     * 订单明细
+     */
+    private List<VNcOrderDetailVo> vNcOrderDetailVoList;
+}

+ 13 - 1
cx-aps/cx-aps-server/src/main/java/com/rongwei/bsserver/controller/ApsProductDetailController.java

@@ -28,6 +28,18 @@ public class ApsProductDetailController {
     @Autowired
     private ApsProductDetailService apsProductDetailService;
 
-
+    /*
+    获取客户订单
+     */
+    @PostMapping("/getCustomOrderData")
+    public R getCustomOrderData(@RequestBody Map<String, Object> params) {
+        try {
+            log.info("获取客户订单;参数为:{}", params);
+            return apsProductDetailService.getCustomOrderData(params);
+        } catch (Exception e) {
+            e.printStackTrace();
+            return R.error("获取客户订单系统订单失败,请联系管理员");
+        }
+    }
 }