chenc il y a 3 ans
Parent
commit
dcd41c4fdb

+ 11 - 2
jeecg-boot-module-system/src/main/java/org/jeecg/modules/openApi/mapper/PurchaseWarehousingMapper.java

@@ -64,10 +64,19 @@ public interface PurchaseWarehousingMapper extends BaseMapper<PurchaseWarehousin
 
     /**
     * @Author chenchuang
-    * @Description //TODO 根据供应商编码
+    * @Description //TODO 根据供应商编码查询成品仓和原材料仓库
     * @Date 2022/4/14 16:35
     * @Param [cVenCode]
     * @return java.util.Map<java.lang.String,java.lang.Object>
     */
-    Map<String,Object> getVendor(@Param("cVenCode")String cVenCode);
+    Map<String,Object> getWhCodeByVenCode(@Param("cVenCode")String cVenCode);
+
+    /**
+    * @Author chenchuang
+    * @Description //TODO 新增调拨单主表
+    * @Date 2022/4/22 17:23
+    * @Param [map]
+    * @return void
+    */
+    void saveTransVouch(@Param("map")Map<String,Object> map);
 }

+ 65 - 5
jeecg-boot-module-system/src/main/java/org/jeecg/modules/openApi/mapper/xml/PurchaseWarehousingMapper.xml

@@ -34,7 +34,10 @@
           cSource,<!--单据来源-->
           bTransFlag,<!--是否传递 -->
           bIsSTQc,<!--是否传递 -->
-          cMaker
+          cMaker,
+        cHandler,
+        dVeriDate,
+        dnverifytime
         )
         VALUES
             (
@@ -59,7 +62,10 @@
                 '云工厂',
                 0,
                 0,
-                '陈创'
+                '陈创',
+                '陈创',
+        CONVERT(varchar,GETDATE(),23),
+        CONVERT(varchar,GETDATE(),20)
         )
     </insert>
     
@@ -110,6 +116,62 @@
         </foreach>
     </insert>
 
+    <select id="getWhCodeByVenCode" parameterType="java.lang.String" resultType="java.util.HashMap">
+        select cVenCode,cVenDefine1,cVenDefine2 from Vendor where cVenCode=#{cVenCode}
+    </select>
+
+    <select id="get">
+      select sum(iQuantity)-sum(iSumBillQuantity) from rdrecords01 where iPOsID='1000000051'
+    </select>
+
+    <insert id="saveTransVouch">
+        INSERT INTO TransVouch(ID,cTVCode,dTVDate,cODepCode,cIDepCode,cOWhCode,cIWhCode,cORdCode,cIRdCode,cMPoCode,cDefine13,
+        cPersonCode,<!--业务员-->
+        cMaker,<!--制单人专用接口用户-->
+        iNetLock,
+        VT_ID,
+        cVerifyPerson,<!--审核人 专用接口用户-->
+        iverifystate,<!--审核状态 为null-->
+        dVerifyDate,<!--审核日期-->
+        cPSPCode,<!--父级产品编码?-->
+        cOrderType,
+        csource,
+        itransflag,
+        dnmaketime,<!--制单日期-->
+        dnverifytime,<!--审核时间-->
+        iswfcontrolled,
+        iPrintCount
+        ) VALUES
+        (
+        #{map.ID},
+        #{map.cTVCode},
+        #{map.dTVDate},
+        null,
+        #{map.cIDepCode},
+        #{map.cOWhCode},
+        #{map.cIWhCode},
+        23,
+        13,
+        #{map.cMPoCode},
+        #{map.cDefine13},
+        #{map.cPersonCode},
+        '陈创',
+        0,
+        89,
+        '陈创',
+        null,
+        CONVERT(varchar,GETDATE(),23),
+        #{map.cPSPCode},
+        '委外订单',
+        1,
+        '正向',
+        CONVERT(varchar,GETDATE(),20),
+        CONVERT(varchar,GETDATE(),20),
+        0,
+        0
+        )
+    </insert>
+
     <select id="getPerson" parameterType="java.lang.String" resultType="java.util.HashMap">
         select * from Person where cPersonCode=#{cPersonCode}
     </select>
@@ -118,7 +180,5 @@
       select * from OM_MODetails where moDetailsId=#{moDetailsId}
     </select>
 
-    <select id="getVendor" parameterType="java.lang.String" resultType="java.util.HashMap">
-        select * from Vendor where cVenCode=#{cVenCode}
-    </select>
+
 </mapper>

+ 48 - 14
jeecg-boot-module-system/src/main/java/org/jeecg/modules/openApi/service/impl/PurchaseWarehousingServiceImpl.java

@@ -51,6 +51,10 @@ public class PurchaseWarehousingServiceImpl extends ServiceImpl<PurchaseWarehous
                 }else{
                     throw new RuntimeException("获取入库单号失败");
                 }
+                //日期
+                Long longtime=Long.valueOf(String.valueOf(map.get("dDate")));
+                String formatTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(longtime));
+                map.put("dDate",formatTime);
                 //红蓝标识
                 if(map.get("cVouchType").toString().equals("1")){
                     map.put("cVouchType",0);//采购入库
@@ -60,25 +64,36 @@ public class PurchaseWarehousingServiceImpl extends ServiceImpl<PurchaseWarehous
                 //入库类别、采购类型
                 if(map.get("cRdCode").toString().equals("采购入库")){
                     //采购入库
-                    map.put("cRdCode",11);
-                    map.put("cPTCode",01);
+                    map.put("cRdCode","11");
+                    map.put("cPTCode","01");
                 }else{
                     //委外入库
-                    map.put("cRdCode",12);
-                    map.put("cPTCode",02);
+                    map.put("cRdCode","12");
+                    map.put("cPTCode","01");
                 }
                 //获取部门编码
-                String cPersonCode=map.get("cPersonCode").toString();
-                if(StringUtils.isNotBlank(cPersonCode)){
+                if(map.get("cPersonCode")!=null){
+                    String cPersonCode=String.valueOf(map.get("cPersonCode"));
                     Map<String,Object> personMap=this.baseMapper.getPerson(cPersonCode);
                     map.put("cDepCode",personMap.get("cDepCode"));
                 }else{
-                    throw new RuntimeException("部门编码不能为空");
+                    throw new RuntimeException("业务员编码不能为空");
                 }
                 //获取根据供应商获取仓库编码
                 String cVenCode=String.valueOf(map.get("cVenCode"));
-                if(StringUtils.isNotBlank(cVenCode)){
-                    map.put("cWhCode","PT0002");
+                if(map.get("cVenCode")!=null){
+                    Map<String,Object> whCodeMap= this.baseMapper.getWhCodeByVenCode(cVenCode);
+                    if(whCodeMap!=null){
+                        if(whCodeMap.get("cVenDefine2")!=null){
+                            String cWhCode=String.valueOf(whCodeMap.get("cVenDefine2"));//成品仓库
+                            map.put("cWhCode",cWhCode);
+                        }else{
+                            throw new RuntimeException("未找到供应商的成品仓库");
+                        }
+                    }else{
+                        throw new RuntimeException("未找到供应商");
+                    }
+
                 }else{
                     throw new RuntimeException("供应商编码不能为空");
                 }
@@ -99,14 +114,14 @@ public class PurchaseWarehousingServiceImpl extends ServiceImpl<PurchaseWarehous
                         //订单号
                         itemMap.put("cPOID",String.valueOf(map.get("cOrderCode")));
                         //订单子表id
-                        if(map.get("cRdCode").toString().equals("采购入库")){
+                        if(map.get("cRdCode").toString().equals("11")){
                             itemMap.put("iPOsID",itemMap.get("moDetailId"));//采购订单行id
                             itemMap.put("iOMoDID","");//委外订单行id
                         }else{//委外入库
                             itemMap.put("iPOsID","");//采购订单行id
                             itemMap.put("iOMoDID",itemMap.get("moDetailId"));//委外订单行id
                             String moDetailId=String.valueOf(itemMap.get("moDetailId"));//委外订单行id
-                            if(StringUtils.isNotBlank(moDetailId)){
+                            if(itemMap.get("moDetailId")!=null){
                                 //获取来源订单号
                                 Map<String,Object> omMoDetails=this.baseMapper.getOMMoDetails(moDetailId);
                                 itemMap.put("iordercode",omMoDetails.get("csoordercode"));//来源订单号
@@ -135,7 +150,7 @@ public class PurchaseWarehousingServiceImpl extends ServiceImpl<PurchaseWarehous
         //单据日期
         Date date=new Date();
         SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        transVouchMao.put("cTVCode",formatter.format(date));
+        transVouchMao.put("dTVDate",formatter.format(date));
         //转出部门
         transVouchMao.put("cODepCode","");
         //转入部门
@@ -144,13 +159,32 @@ public class PurchaseWarehousingServiceImpl extends ServiceImpl<PurchaseWarehous
         transVouchMao.put("cOWhCode",rdRecord01Map.get("cWhCode"));
         //转入仓库??
         //通过接收方查询原材料仓库
-        String cVenCodeReceiver=rdRecord01Map.get("cVenCodeReceiver").toString();
-        transVouchMao.put("cIWhCode","");
+//        String cVenCodeReceiver=rdRecord01Map.get("cVenCodeReceiver").toString();
+        //获取根据供应商获取仓库编码
+        String cVenCodeReceiver=String.valueOf(rdRecord01Map.get("cVenCodeReceiver"));
+        if(rdRecord01Map.get("cVenCodeReceiver")!=null){
+            Map<String,Object> whCodeMap= this.baseMapper.getWhCodeByVenCode(cVenCodeReceiver);
+            if(whCodeMap!=null){
+                if(whCodeMap.get("cVenDefine1")!=null){
+                    String cWhCode=String.valueOf(whCodeMap.get("cVenDefine1"));//原材料仓库
+                    transVouchMao.put("cIWhCode",cWhCode);
+                }else{
+                    throw new RuntimeException("未找到接收方的原材料仓库");
+                }
+            }else{
+                throw new RuntimeException("未找到接收方");
+            }
+
+        }else{
+            throw new RuntimeException("接收方编码不能为空");
+        }
+//        transVouchMao.put("cIWhCode","");
         //订单号
         transVouchMao.put("cMPoCode",rdRecord01Map.get("cOrderCode"));
         transVouchMao.put("cDefine13",rdRecord01Map.get("cOrderCode"));
         //业务员
         transVouchMao.put("cPersonCode",rdRecord01Map.get("cPersonCode"));
+        this.baseMapper.saveTransVouch(transVouchMao);
     }
 
     @Override