From d6502baa8e5610c04127fbee92ff6111e40956f8 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期二, 13 六月 2023 09:50:02 +0800
Subject: [PATCH] 生产入库、采购入库接口提交

---
 VueWebApi/DLL/DAL/ProductionManagementDAL.cs |  152 ++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 139 insertions(+), 13 deletions(-)

diff --git a/VueWebApi/DLL/DAL/ProductionManagementDAL.cs b/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
index 8348835..567d12b 100644
--- a/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
+++ b/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
@@ -4633,7 +4633,7 @@
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
                 var sql = @"select *   from(
-                            select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname,
+                            select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,M.id as wo_id,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname,
                             A.step_code,E.wkshp_id,M.wkshp_code,stck_id,K.code as stockcode,k.name as stockname,
                             E.saleOrderqty,E.qty,M.plan_qty,A.good_qty,isnull(A.inhouseqty,0) as inhouseqty,A.good_qty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style   
                             from  TK_Wrk_Record A
@@ -4644,7 +4644,7 @@
                             left join T_Sec_Stck K on E.stck_code=K.code
                             where A.style='B' and S.isend='Y' and A.good_qty>0
                             union all
-                            select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname,
+                            select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,M.id as wo_id,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname,
                             A.step_code,E.wkshp_id,M.wkshp_code,stck_id,K.code as stockcode,k.name as stockname,
                             E.saleOrderqty,E.qty,M.plan_qty,A.sqty as sqty,isnull(A.inhouseqty,0) as inhouseqty,A.sqty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style   
                             from  TK_Wrk_OutRecord A
@@ -4654,7 +4654,7 @@
                             left join TKimp_Ewo E on M.sourceid=E.id
                             left join T_Sec_Stck K on E.stck_code=K.code
                             where A.style='S' and S.isend='Y' and A.sqty>0
-                            ) as AA  where 1=1 " + search;
+                            ) as AA  where AA.good_qty>AA.inhouseqty " + search;
                 var data = DapperHelper.selectdata(sql, dynamicParams);
                 mes.code = "200";
                 mes.Message = "鏌ヨ鎴愬姛!";
@@ -4752,17 +4752,18 @@
                         }
                     });
                     //鍐欏叆MES搴撳瓨琛�
-                    sql = @"insert into TK_WMS_Stock(labcode,materiel_code,storehouse_code,qty,lm_user,lm_date)
-                        values(@labcode,@materiel_code,@storehouse_code,@qty,@lm_user,@lm_date)";
+                    sql = @"insert into TK_WMS_Stock(hbillno,labcode,materiel_code,storehouse_code,qty,lm_user,lm_date)
+                        values(@hbillno,@labcode,@materiel_code,@storehouse_code,@qty,@lm_user,@lm_date)";
                     list.Add(new
                     {
                         str = sql,
                         parm = new
                         {
-                            labcode=sub_arra[i]["inbarcode"].ToString(),
+                            hbillno = obj["head"]["hbillno"].ToString(),
+                            labcode = sub_arra[i]["inbarcode"].ToString(),
                             materiel_code = sub_arra[i]["partcode"].ToString(),
                             storehouse_code = sub_arra[i]["stockcode"].ToString(),
-                            qty =decimal.Parse(sub_arra[i]["stinhouseqty"].ToString()),
+                            qty = decimal.Parse(sub_arra[i]["stinhouseqty"].ToString()),
                             lm_user = username,
                             lm_date = DateTime.Now.ToString()
                         }
@@ -4776,16 +4777,16 @@
                     str = sql,
                     parm = new
                     {
-                        docu_typecode="1202",
-                        hbillno= obj["head"]["hbillno"].ToString(),
-                        hsoucenillnoid= obj["head"]["sourceVoucherId"].ToString(),
+                        docu_typecode = "1202",
+                        hbillno = obj["head"]["hbillno"].ToString(),
+                        hsoucenillnoid = obj["head"]["sourceVoucherId"].ToString(),
                         hsoucenillno = obj["head"]["sourceVoucherCode"].ToString(),
                         saleorderid = obj["head"]["saleOrderId"].ToString(),
                         saleordercode = obj["head"]["saleOrderCode"].ToString(),
                         status = "NEW",
                         wkshpcode = obj["head"]["wkshpcode"].ToString(),
                         lm_user = username,
-                        lm_date= DateTime.Now.ToString()
+                        lm_date = DateTime.Now.ToString()
                     }
                 });
 
@@ -4820,6 +4821,7 @@
                 //        madedate = obj["head"]["madedate"].ToString(),
                 //        createdtime = obj["head"]["createdtime"].ToString(),
                 //        DataSource = obj["head"]["DataSource"].ToString(),
+                //        idsourcevouchertype= obj["head"]["idsourcevouchertype"].ToString()
 
                 //    }
                 //});
@@ -4833,7 +4835,7 @@
                     //    str = sql,
                     //    parm = new
                     //    {
-                    //        code= subsum_arra[j]["code"].ToString(),
+                    //        code = subsum_arra[j]["code"].ToString(),
                     //        arrivalQuantity = subsum_arra[j]["arrivalQuantity"].ToString(),
                     //        quantity = subsum_arra[j]["quantity"].ToString(),
                     //        compositionQuantity = subsum_arra[j]["compositionQuantity"].ToString(),
@@ -4851,7 +4853,7 @@
                     //        idbusiTypeByMergedFlow = subsum_arra[j]["idbusiTypeByMergedFlow"].ToString(),
                     //        idinventory = subsum_arra[j]["idinventory"].ToString(),
                     //        idbaseunit = subsum_arra[j]["idbaseunit"].ToString(),
-                    //        idunit= subsum_arra[j]["idunit"].ToString(),
+                    //        idunit = subsum_arra[j]["idunit"].ToString(),
                     //        idwarehouse = subsum_arra[j]["idwarehouse"].ToString(),
                     //        SourceVoucherIdByMergedFlow = subsum_arra[j]["SourceVoucherIdByMergedFlow"].ToString(),
                     //        SourceVoucherCodeByMergedFlow = subsum_arra[j]["SourceVoucherCodeByMergedFlow"].ToString(),
@@ -4861,6 +4863,27 @@
                     //        DataSource = subsum_arra[j]["DataSource"].ToString()
                     //    }
                     //});
+                    //鍐欏叆ERP鐜板瓨閲忔煡璇㈣〃
+                    //sql = @"" + dt.Rows[2]["cname"].ToString() + "";
+                    //list.Add(new
+                    //{
+                    //    str = sql,
+                    //    parm = new
+                    //    {
+                    //        idinventory = subsum_arra[j]["idinventory"].ToString(),
+                    //        idwarehouse = subsum_arra[j]["idwarehouse"].ToString(),
+                    //        propertyName = "ProductForReceive",
+                    //        baseQuantity= subsum_arra[j]["quantity"].ToString(),
+                    //        IdMarketingOrgan="1",
+                    //        idbaseunit= subsum_arra[j]["idbaseunit"].ToString(),
+                    //        updated= DateTime.Now.ToString(),
+                    //        isCarriedForwardOut ="0",
+                    //        isCarriedForwardIn = "0"
+                    //    }
+                    //}); 
+
+
+
                     //鍐欏叆MES鍏ュ簱璁板綍瀛愯〃
                     sql = @"insert into TK_WMS_Inwh_Sub(hbillno,rownumber,materiel_code,storehouse_code,qty)
                         values(@hbillno,@rownumber,@materiel_code,@storehouse_code,@qty)";
@@ -4907,5 +4930,108 @@
             return mes;
         }
         #endregion
+
+
+        #region[鐢熶骇鍏ュ簱鎵弿鏉$爜]
+        public static ToMessage MesAppProductInHouseOrderBarCodeSearch(string labcode)
+        {
+            string sql = "";
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                //鍒ゆ柇鏉$爜鏄惁瀛樺湪
+                sql = @"select distinct AA.inbarcode  from (
+                         select A.inbarcode
+                         from  TK_Wrk_Record A
+                         inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+                         where A.style='B' and S.isend='Y' and A.good_qty>0 and A.inbarcode=@labcode
+                         union all
+                         select A.inbarcode
+                         from  TK_Wrk_OutRecord A
+                         inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+                         where A.style='S' and S.isend='Y' and A.sqty>0 and A.inbarcode=@labcode
+                         ) as AA";
+                dynamicParams.Add("@labcode", labcode);
+                var data0 = DapperHelper.selectdata(sql, dynamicParams);
+                if (data0.Rows.Count <= 0)
+                {
+                    mes.code = "300";
+                    mes.Message = "鏃犳晥鏉$爜!";
+                    mes.data = null;
+                    return mes;
+                }
+                //鍒ゆ柇鏉$爜鏄惁瀛樺彲鐢�
+                sql = @"select distinct AA.inbarcode,AA.good_qty,AA.inhouseqty  from (
+                        select A.inbarcode,sum(A.good_qty) as good_qty,sum(isnull(A.inhouseqty,0)) as inhouseqty
+                        from  TK_Wrk_Record A
+                        inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+                        where A.style='B' and S.isend='Y' and A.good_qty>0 and A.inbarcode=@labcode
+                        group by A.inbarcode
+                        union all
+                        select A.inbarcode,sum(A.sqty) as good_qty,sum(isnull(A.inhouseqty,0)) as inhouseqty
+                        from  TK_Wrk_OutRecord A
+                        inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+                        where A.style='S' and S.isend='Y' and A.sqty>0 and A.inbarcode=@labcode
+                        group by A.inbarcode
+                        ) as AA  where AA.good_qty>AA.inhouseqty ";
+                dynamicParams.Add("@labcode", labcode);
+                var data1 = DapperHelper.selectdata(sql, dynamicParams);
+                if (data1.Rows.Count <= 0)
+                {
+                    mes.code = "300";
+                    mes.Message = "褰撳墠鏉$爜宸插叆搴�!";
+                    mes.data = null;
+                    return mes;
+                }
+
+                //鏍规嵁閲囪喘璁㈠崟鍙锋煡璇㈢墿鏂欎俊鎭紝渚涘簲鍟嗕俊鎭�
+                sql = @"select *   from(
+                        select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,M.id as wo_id,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname,
+                        A.step_code,E.wkshp_id,M.wkshp_code,stck_id,K.code as stockcode,k.name as stockname,
+                        E.saleOrderqty,E.qty,M.plan_qty,A.good_qty,isnull(A.inhouseqty,0) as inhouseqty,A.good_qty-isnull(A.inhouseqty,0) as stinhouseqty,A.lm_date,A.style   
+                        from  TK_Wrk_Record A
+                        inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+                        inner join TK_Wrk_Man M on S.wo_code=M.wo_code
+                        inner join TMateriel_Info P on M.materiel_code=P.partcode
+                        left join TKimp_Ewo E on M.sourceid=E.id
+                        left join T_Sec_Stck K on E.stck_code=K.code
+                        where A.style='B' and S.isend='Y' and A.good_qty>0 and A.inbarcode=@labcode
+                        union all
+                        select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,M.id as wo_id,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname,
+                        A.step_code,E.wkshp_id,M.wkshp_code,stck_id,K.code as stockcode,k.name as stockname,
+                        E.saleOrderqty,E.qty,M.plan_qty,A.sqty as sqty,isnull(A.inhouseqty,0) as inhouseqty,A.sqty-isnull(A.inhouseqty,0) as stinhouseqty,A.lm_date,A.style   
+                        from  TK_Wrk_OutRecord A
+                        inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+                        inner join TK_Wrk_Man M on S.wo_code=M.wo_code
+                        inner join TMateriel_Info P on M.materiel_code=P.partcode
+                        left join TKimp_Ewo E on M.sourceid=E.id
+                        left join T_Sec_Stck K on E.stck_code=K.code
+                        where A.style='S' and S.isend='Y' and A.sqty>0 and A.inbarcode=@labcode
+                        ) as AA  where AA.good_qty>AA.inhouseqty";
+                dynamicParams.Add("@labcode", labcode);
+                var data = DapperHelper.selectdata(sql, dynamicParams);
+                if (data.Rows.Count > 0)
+                {
+                    mes.code = "200";
+                    mes.Message = "鏌ヨ鎴愬姛!";
+                    mes.data = data;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.Message = "鏆傛棤鐗╂枡鏁版嵁!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.Message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3