From 1d65947983e77ba73e133632bce763cb9bcd6fcc Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期三, 16 八月 2023 17:59:44 +0800
Subject: [PATCH] 生产报工、外协收料,不良数量根据不良原因分组统计
---
VueWebApi/DLL/DAL/ProductionManagementDAL.cs | 132 ++++++++++++++++++++++++++++++-------------
1 files changed, 91 insertions(+), 41 deletions(-)
diff --git a/VueWebApi/DLL/DAL/ProductionManagementDAL.cs b/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
index 54b1225..5b802fd 100644
--- a/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
+++ b/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
@@ -22,7 +22,7 @@
#region[ERP璁㈠崟鏌ヨ]
- public static ToMessage ErpOrderSearch(string stu_torgcode,string stu_torgtypecode,string erporderstus, string erpordercode, string partcode, string partname, string partspec, int startNum, string paydatestartdate, string paydateenddate, string paydatestartdate1, string paydateenddate2, string creatuser, int endNum, string prop, string order)
+ public static ToMessage ErpOrderSearch(string stu_torgcode,string stu_torgtypecode,string erporderstus, string erpordercode,string saleordercode, string partcode, string partname, string partspec, int startNum, string paydatestartdate, string paydateenddate, string paydatestartdate1, string paydateenddate2, string creatuser, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -52,6 +52,11 @@
{
search += "and A.wo like '%'+@erpordercode+'%' ";
dynamicParams.Add("@erpordercode", erpordercode);
+ }
+ if (saleordercode != "" && saleordercode != null)
+ {
+ search += "and A.saleOrderCode like '%'+@saleordercode+'%' ";
+ dynamicParams.Add("@saleordercode", saleordercode);
}
if (partcode != "" && partcode != null)
{
@@ -93,7 +98,7 @@
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
var sql = @"select A.id, A.status,A.wo,A.materiel_code as partcode,B.partname,B.partspec,A.qty,A.relse_qty,A.wkshp_code,C.org_name as wkshp_name,
- A.stck_code,D.name as stck_name,saleOrderDeliveryDate,A.planstartdate,A.planenddate,U.username as createuser,A.createdate
+ A.stck_code,D.name as stck_name,A.saleOrderCode,A.saleOrderDeliveryDate,A.planstartdate,A.planenddate,U.username as createuser,A.createdate
from TKimp_Ewo A
left join TMateriel_Info B on A.materiel_code=B.partcode
left join TOrganization C on A.wkshp_code=C.org_code
@@ -119,7 +124,7 @@
#endregion
#region[ERP璁㈠崟涓嬭揪]
- public static ToMessage MarkSaveErpOrder(string erporderid, string erpordercode, string partcode, string wkshopcode, string warehousecode, string erpqty, string markqty, string ordernum, string relse_qty, string saleOrderDeliveryDate, string username)
+ public static ToMessage MarkSaveErpOrder(string erporderid, string erpordercode,string saleordercode, string partcode, string wkshopcode, string warehousecode, string erpqty, string markqty, string ordernum, string relse_qty, string saleOrderDeliveryDate, string username)
{
var sql = "";
List<object> list = new List<object>();
@@ -157,7 +162,7 @@
}
if (i == Convert.ToInt32(ordernum)) //鏈�鍚庝竴鍗曟椂
{
- sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderDeliveryDate) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderDeliveryDate)";
+ sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderCode,saleOrderDeliveryDate) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate)";
list.Add(new
{
str = sql,
@@ -174,6 +179,7 @@
m_po = erpordercode,
username = username,
CreateDate = DateTime.Now.ToString(),
+ saleOrderCode=saleordercode,
saleOrderDeliveryDate = Convert.ToDateTime(saleOrderDeliveryDate)
}
});
@@ -182,7 +188,7 @@
else
{
- sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderDeliveryDate) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderDeliveryDate)";
+ sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderCode,saleOrderDeliveryDate) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate)";
list.Add(new
{
str = sql,
@@ -199,6 +205,7 @@
m_po = erpordercode,
username = username,
CreateDate = DateTime.Now.ToString(),
+ saleOrderCode=saleordercode,
saleOrderDeliveryDate = Convert.ToDateTime(saleOrderDeliveryDate)
}
});
@@ -323,7 +330,7 @@
#region[MES宸ュ崟鏌ヨ]
- public static ToMessage MesOrderSearch(string stu_torgcode,string stu_torgtypecode,string mesorderstus, string mesordercode, string sourceorder, string ordertype, string partcode, string partname, string partspec, int startNum, string creatuser, string createdate, int endNum, string prop, string order)
+ public static ToMessage MesOrderSearch(string stu_torgcode,string stu_torgtypecode,string mesorderstus, string mesordercode, string sourceorder,string saleordercode, string ordertype, string partcode, string partname, string partspec, int startNum, string creatuser, string createdate, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -358,6 +365,11 @@
{
search += "and A.m_po like '%'+@sourceorder+'%' ";
dynamicParams.Add("@sourceorder", sourceorder);
+ }
+ if (saleordercode != "" && saleordercode != null)
+ {
+ search += "and W.saleOrderCode like '%'+@saleordercode+'%' ";
+ dynamicParams.Add("@saleordercode", saleordercode);
}
if (ordertype != "" && ordertype != null)
{
@@ -397,8 +409,9 @@
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
var sql = @"select A.id, A.status,A.wotype,A.wo_code,A.materiel_code as partcode,B.partname,B.partspec,A.plan_qty,A.wkshp_code,C.org_name as wkshp_name,
- A.route_code,E.name as route_name,A.stck_code,F.name as stck_name,A.plan_startdate,A.plan_enddate,A.piroque,A.sourceid,A.m_po,U.username as lm_user,A.lm_date
+ A.route_code,E.name as route_name,A.stck_code,F.name as stck_name,A.plan_startdate,A.plan_enddate,A.piroque,A.sourceid,A.m_po,W.saleOrderCode,U.username as lm_user,A.lm_date
from TK_Wrk_Man A
+ left join TKimp_Ewo W on A.m_po=W.wo and A.materiel_code=W.materiel_code
left join TMateriel_Info B on A.materiel_code=B.partcode
left join TOrganization C on A.wkshp_code=C.org_code
left join T_Sec_Stck D on A.stck_code=D.code
@@ -425,7 +438,7 @@
#endregion
#region[MES鎶ュ簾琛ュ崟宸ュ崟鏌ヨ]
- public static ToMessage MesBadOrderSearch(string mesordercode, string sourceorder, string partcode, string partname, string partspec, int startNum, string creatuser, string createdate, int endNum, string prop, string order)
+ public static ToMessage MesBadOrderSearch(string mesordercode, string sourceorder,string saleordercode, string partcode, string partname, string partspec, int startNum, string creatuser, string createdate, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -440,6 +453,11 @@
{
search += "and A.m_po like '%'+@sourceorder+'%' ";
dynamicParams.Add("@sourceorder", sourceorder);
+ }
+ if (saleordercode != "" && saleordercode != null)
+ {
+ search += "and W.saleOrderCode like '%'+@saleordercode+'%' ";
+ dynamicParams.Add("@saleordercode", saleordercode);
}
if (partcode != "" && partcode != null)
{
@@ -474,8 +492,9 @@
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
var sql = @"select A.id, A.status,A.wotype,A.wo_code,A.materiel_code as partcode,B.partname,B.partspec,A.plan_qty,A.wkshp_code,C.org_name as wkshp_name,
- A.route_code,E.name as route_name,A.stck_code,F.name as stck_name,A.plan_startdate,A.plan_enddate,A.piroque,A.sourceid,A.m_po,U.username as lm_user,A.lm_date,S.bad_qty
+ A.route_code,E.name as route_name,A.stck_code,F.name as stck_name,A.plan_startdate,A.plan_enddate,A.piroque,A.sourceid,A.m_po,W.saleOrderCode,U.username as lm_user,A.lm_date,S.bad_qty
from TK_Wrk_Man A
+ left join TKimp_Ewo W on A.m_po=W.wo and A.materiel_code=W.materiel_code
left join (select wo_code,sum(bad_qty) as bad_qty from TK_Wrk_Step where bad_qty>0 group by wo_code) S on A.wo_code=S.wo_code
left join TMateriel_Info B on A.materiel_code=B.partcode
left join TOrganization C on A.wkshp_code=C.org_code
@@ -1786,10 +1805,21 @@
}
//鏍规嵁鏉′欢鏌ヨ宸ュ崟宸ュ簭鎶ュ伐(鏀舵枡)璁板綍,涓斾笉鑹暟閲忓ぇ浜�0
//瀛樺偍杩囩▼鍚�
- sql = @"h_p_IFCLD_MesReportDefectHandleSelect";
+ //sql = @"h_p_IFCLD_MesReportDefectHandleSelect";
+ sql = @"select MM.record_id as m_id,MM.wo_code,A.materiel_code,S.seq,MM.step_code,T.stepname,A.id,
+ S.plan_qty,A.good_qty as report_qty,MM.defect_qty as ng_qty,A.bad_qty as badqty,'Z' as style,MM.verify,
+ MM.defect_code,STUFF((SELECT ',' + P.name
+ FROM TDefect P
+ WHERE CHARINDEX(',' + P.code + ',', ',' + MM.defect_code + ',') > 0
+ FOR XML PATH('')), 1, 1, '') AS defect_name
+ from CSR_WorkRecord_Defect MM
+ inner join TK_Wrk_Record A on MM.record_id=a.id
+ inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
+ inner join TStep T on MM.step_code=T.stepcode
+ where MM.wo_code=@ordercode and MM.step_code=@stepcode and MM.style='B' and A.style='B' and A.ng_qty>0";
dynamicParams1.Add("@ordercode", ordercode);
dynamicParams1.Add("@stepcode", stepcode);
- DataTable dt = DapperHelper.selectProcedure(sql, dynamicParams1);
+ DataTable dt = DapperHelper.selectdata(sql, dynamicParams1);
if (dt.Rows.Count > 0)
{
list.Add("data1", rt);
@@ -1848,7 +1878,7 @@
switch (OperType)
{
case "ZZ":
- mes = ScanStartReport.ZZEncodingSeach(stu_torgcode,ordercode, stepcode);
+ mes = ScanStartReport.ZZEncodingSeach(stu_torgcode, SelectType,ordercode, stepcode);
break;
case "WX":
mes = ScanStartReport.WXEncodingSeach(stu_torgcode,SelectType, ordercode, stepcode);
@@ -1988,7 +2018,11 @@
try
{
//鐝粍鑾峰彇浜哄憳鍒楄〃
- sql = @"select usercode,username from TUser where stu_torgcode=@stu_torgcode and usergroup_code=@usergroupcode and is_delete<>'1'";
+ sql = @"select U.username,U.username
+ from TGroup G
+ inner join TGroupUser T on G.group_code=T.group_code
+ left join TUser U on T.user_code=U.usercode
+ where G.torg_code=@stu_torgcode and G.group_code=@usergroupcode";
dynamicParams.Add("@stu_torgcode", stu_torgcode);
dynamicParams.Add("@usergroupcode", usergroupcode);
var data = DapperHelper.selectdata(sql, dynamicParams);
@@ -2152,15 +2186,16 @@
string date = DateTime.Now.ToString(); //鑾峰彇绯荤粺鏃堕棿
list.Clear();
//鍒ゆ柇鏄惁鏈夊紑宸ヨ褰�
- sql = @"select * from TK_Wrk_Record where wo_code=@wo_code and step_code=@step_code and style='S'";
+ sql = @"select * from TK_Wrk_Record where wo_code=@wo_code and step_code=@step_code and eqp_code=@eqpcode and style='S'";
dynamicParams.Add("@wo_code", mesordercode);
dynamicParams.Add("@step_code", stepcode);
+ dynamicParams.Add("@eqpcode", eqpcode);
var data = DapperHelper.selectdata(sql, dynamicParams);
if (data.Rows.Count > 0)
{
mes.code = "300";
mes.count = 0;
- mes.Message = "褰撳墠宸ュ簭浠诲姟宸插紑宸�!";
+ mes.Message = "褰撳墠宸ュ簭浠诲姟璁惧宸插紑宸�!";
mes.data = null;
return mes;
}
@@ -2208,10 +2243,10 @@
#endregion
#region[鐢熶骇寮�鎶ュ伐,鎶ュ伐鎻愪氦]
- public static ToMessage SavaMesOrderStepReport(string mesordercode, string partcode, string stepseq, string stepcode, string eqpcode, string inbarcode, string reckway, string usergroupcode, string reportuser, string taskqty, string startqty, string reportqty, string ngqty, string badcode, string remarks, string username)
+ public static ToMessage SavaMesOrderStepReport(string mesordercode, string partcode, string stepseq, string stepcode, string eqpcode, string inbarcode, string reckway, string usergroupcode, string reportuser, string taskqty, string startqty, string reportqty, List<ReportDefectList> defectobjs, string remarks, string username)
{
var sql = "";
- //string[] arra = new string[] { };
+ decimal ngqty = 0;
string[] arra1 = new string[] { };
List<object> list = new List<object>();
var dynamicParams = new DynamicParameters();
@@ -2220,12 +2255,18 @@
string date = DateTime.Now.ToString(); //鑾峰彇绯荤粺鏃堕棿
//鑾峰彇鎶ュ伐浜哄憳銆佸垎閰嶆瘮渚�
JArray arra = (JArray)Newtonsoft.Json.JsonConvert.DeserializeObject(reportuser);
- if (ngqty != "" || ngqty != "0")
+ //鍒ゆ柇鏄惁鏈変笉鑹暟鎹�
+ var groupedItems = defectobjs.GroupBy(item => item.defect_code) // 鎸夌紪鐮乧ode鍒嗙粍
+ .Select(group => new { defect_code = group.Key, badqty = group.Sum(item =>Convert.ToDecimal(item.badqty)) }).ToList(); // 姹囨�绘暟閲弎ty
+ if (groupedItems.Count <= 0)
{
- //鎴彇涓嶈壇鍘熷洜
- arra1 = badcode.Split(';');
+ ngqty = 0;
}
-
+ else
+ {
+ //姹囨�讳笉鑹暟閲�
+ ngqty = groupedItems.Sum(item => Convert.ToDecimal(item.badqty));
+ }
list.Clear();
//鍒ゆ柇鏄惁鏈夋姤宸ヨ褰�(鏈夛細淇敼 鏃狅細鏂板)
sql = @"select * from TK_Wrk_Record where wo_code=@wo_code and step_code=@step_code and style='B'";
@@ -2235,9 +2276,10 @@
//鑾峰彇寮�宸ヨ褰曠殑榛樿閫変腑鐨勮澶�(浜х嚎)涓庢姤宸ユ椂鐨勮澶囦骇绾垮仛瀵规瘮鍒ゆ柇
sql = @"select A.eqp_code,B.name from TK_Wrk_Record A
inner join TEqpInfo B on A.eqp_code=B.code
- where A.wo_code=@wo_code and A.step_code=@step_code and A.style='S'";
+ where A.wo_code=@wo_code and A.step_code=@step_code and eqp_code=@eqpcode and A.style='S'";
dynamicParams.Add("@wo_code", mesordercode);
dynamicParams.Add("@step_code", stepcode);
+ dynamicParams.Add("@eqpcode", eqpcode);
var da = DapperHelper.selectdata(sql, dynamicParams);
if (da.Rows[0]["EQP_CODE"].ToString() != eqpcode)
{
@@ -2252,6 +2294,7 @@
//鑾峰彇涓昏〃鏈�澶D
sql = @"select ISNULL(IDENT_CURRENT('TK_Wrk_Record')+1,1) as id";
var dt = DapperHelper.selecttable(sql);
+
//鍐欏叆寮�鎶ュ伐璁板綍琛�
sql = @"insert into TK_Wrk_Record(wo_code,step_seq,step_code,eqp_code,materiel_code,task_qty,start_qty,good_qty,ng_qty,style,lm_user,lm_date,inbarcode)
values(@mesordercode,@stepseq,@stepcode,@eqpcode,@partcode,@taskqty,@startqty,@reportqty,@ngqty,@style,@lm_user,@lm_date,@inbarcode)";
@@ -2283,14 +2326,14 @@
});
}
- if (badcode != "" && ngqty != "0")
+ if (groupedItems.Count>0)
{
//鍐欏叆缂洪櫡璁板綍琛�
- for (int i = 0; i < arra1.Length; i++)
+ for (int i = 0; i < groupedItems.Count; i++)
{
sql = @"insert into CSR_WorkRecord_Defect(record_id,wo_code,partnumber,step_seq,step_code,defect_qty,defect_code,remarks,style,lm_user,lm_date)
values(@record_id,@wo_code,@partcode,@stepseq,@stepcode,@ngqty,@defect_code,@remarks,@style,@lm_user,@lm_date)";
- list.Add(new { str = sql, parm = new { record_id = int.Parse(dt.Rows[0]["ID"].ToString()), wo_code = mesordercode, partcode = partcode, stepseq = stepseq, stepcode = stepcode, ngqty = ngqty, defect_code = arra1[i], remarks = remarks, style = "B", lm_user = username, lm_date = date } });
+ list.Add(new { str = sql, parm = new { record_id = int.Parse(dt.Rows[0]["ID"].ToString()), wo_code = mesordercode, partcode = partcode, stepseq = stepseq, stepcode = stepcode, ngqty = groupedItems[i].badqty, defect_code = groupedItems[i].defect_code, remarks = remarks, style = "B", lm_user = username, lm_date = date } });
}
}
@@ -2354,14 +2397,14 @@
});
}
- if (badcode != "" && ngqty != "0")
+ if (groupedItems.Count > 0)
{
//鍐欏叆缂洪櫡璁板綍琛�
- for (int i = 0; i < arra1.Length; i++)
+ for (int i = 0; i < groupedItems.Count; i++)
{
sql = @"insert into CSR_WorkRecord_Defect(record_id,wo_code,partnumber,step_seq,step_code,defect_qty,defect_code,remarks,style,lm_user,lm_date)
values(@record_id,@wo_code,@partcode,@stepseq,@stepcode,@ngqty,@defect_code,@remarks,@style,@lm_user,@lm_date)";
- list.Add(new { str = sql, parm = new { record_id = int.Parse(dt.Rows[0]["ID"].ToString()), wo_code = mesordercode, partcode = partcode, stepseq = stepseq, stepcode = stepcode, ngqty = ngqty, defect_code = arra1[i], remarks = remarks, style = "B", lm_user = username, lm_date = date } });
+ list.Add(new { str = sql, parm = new { record_id = int.Parse(dt.Rows[0]["ID"].ToString()), wo_code = mesordercode, partcode = partcode, stepseq = stepseq, stepcode = stepcode, ngqty = groupedItems[i].badqty, defect_code = groupedItems[i].defect_code, remarks = remarks, style = "B", lm_user = username, lm_date = date } });
}
}
@@ -2485,20 +2528,27 @@
#endregion
#region[鐢熶骇寮�鎶ュ伐, 鏀舵枡鎻愪氦]
- public static ToMessage SavaMesOrderStepIn(string mesordercode, string partcode, string stepseq, string stepcode, string wxcode, string inbarcode, string inuser, string taskqty, string sqty, string ngqty, string badcode, string remarks, string username)
+ public static ToMessage SavaMesOrderStepIn(string mesordercode, string partcode, string stepseq, string stepcode, string wxcode, string inbarcode, string inuser, string taskqty, string sqty, List<ReportDefectList> defectobjs, string remarks, string username)
{
var sql = "";
string[] arra1 = new string[] { };
+ decimal ngqty = 0;
List<object> list = new List<object>();
var dynamicParams = new DynamicParameters();
try
{
string date = DateTime.Now.ToString(); //鑾峰彇绯荤粺鏃堕棿
- //鎴彇涓嶈壇鍘熷洜
- if (ngqty != "" || ngqty != "0")
+ //鍒ゆ柇鏄惁鏈変笉鑹暟鎹�
+ var groupedItems = defectobjs.GroupBy(item => item.defect_code) // 鎸夌紪鐮乧ode鍒嗙粍
+ .Select(group => new { defect_code = group.Key, badqty = group.Sum(item => Convert.ToDecimal(item.badqty)) }).ToList(); // 姹囨�绘暟閲弎ty
+ if (groupedItems.Count <= 0)
{
- //鎴彇涓嶈壇鍘熷洜
- arra1 = badcode.Split(';');
+ ngqty = 0;
+ }
+ else
+ {
+ //姹囨�讳笉鑹暟閲�
+ ngqty = groupedItems.Sum(item => Convert.ToDecimal(item.badqty));
}
list.Clear();
@@ -2532,7 +2582,7 @@
mes.data = null;
return mes;
}
- if ((decimal.Parse(sqty) + decimal.Parse(ngqty)) > decimal.Parse(da.Rows[0]["FQTY"].ToString())) //鏀舵枡鏁伴噺+涓嶈壇鏁伴噺>鍙戞枡鏁伴噺
+ if ((decimal.Parse(sqty) + ngqty) > decimal.Parse(da.Rows[0]["FQTY"].ToString())) //鏀舵枡鏁伴噺+涓嶈壇鏁伴噺>鍙戞枡鏁伴噺
{
mes.code = "300";
mes.count = 0;
@@ -2552,7 +2602,7 @@
{
decimal sum_sqty = data.AsEnumerable().Select(d => d.Field<decimal>("SQTY")).Sum(); //鑾峰彇鍚屽崟鍙�,鍚屽伐搴�,鍚屽鍗忎緵搴斿晢鏀舵枡鎬绘暟閲�
decimal sum_fqty = da.AsEnumerable().Select(d => d.Field<decimal>("FQTY")).Sum(); //鑾峰彇鍚屽崟鍙�,鍚屽伐搴�,鍚屽鍗忎緵搴斿晢鍙戞枡鎬绘暟閲�
- if ((sum_sqty + decimal.Parse(sqty) + decimal.Parse(ngqty)) > sum_fqty) //宸叉敹鏂欐�绘暟+褰撳墠鏀舵枡鏁伴噺+涓嶈壇鏁伴噺>鎬诲彂鏂欐暟閲�
+ if ((sum_sqty + decimal.Parse(sqty) + ngqty) > sum_fqty) //宸叉敹鏂欐�绘暟+褰撳墠鏀舵枡鏁伴噺+涓嶈壇鏁伴噺>鎬诲彂鏂欐暟閲�
{
mes.code = "300";
mes.count = 0;
@@ -2575,14 +2625,14 @@
values(@m_id,@wxcode,@in_person,@in_time,@sqty,@ng_qty,@style,@lm_user,@lm_date)";
list.Add(new { str = sql, parm = new { m_id = int.Parse(dt.Rows[0]["ID"].ToString()), wxcode = wxcode, in_person = inuser, in_time = date, sqty = sqty, ng_qty = ngqty, style = "S", lm_user = username, lm_date = date } });
- if (badcode != "" && ngqty != "0")
+ if (groupedItems.Count>0)
{
//鍐欏叆缂洪櫡璁板綍琛�
- for (int i = 0; i < arra1.Length; i++)
+ for (int i = 0; i < groupedItems.Count; i++)
{
sql = @"insert into CSR_WorkRecord_Defect(record_id,wo_code,partnumber,step_seq,step_code,defect_qty,defect_code,remarks,style,lm_user,lm_date)
values(@record_id,@wo_code,@partcode,@stepseq,@stepcode,@ngqty,@defect_code,@remarks,@style,@lm_user,@lm_date)";
- list.Add(new { str = sql, parm = new { record_id = int.Parse(dt.Rows[0]["ID"].ToString()), wo_code = mesordercode, partcode = partcode, stepseq = stepseq, stepcode = stepcode, ngqty = ngqty, defect_code = arra1[i], remarks = remarks, style = "S", lm_user = username, lm_date = date } });
+ list.Add(new { str = sql, parm = new { record_id = int.Parse(dt.Rows[0]["ID"].ToString()), wo_code = mesordercode, partcode = partcode, stepseq = stepseq, stepcode = stepcode, ngqty = groupedItems[i].badqty, defect_code = groupedItems[i].defect_code, remarks = remarks, style = "S", lm_user = username, lm_date = date } });
}
}
@@ -2624,14 +2674,14 @@
values(@m_id,@wxcode,@in_person,@in_time,@sqty,@ng_qty,@style,@lm_user,@lm_date)";
list.Add(new { str = sql, parm = new { m_id = int.Parse(dt.Rows[0]["ID"].ToString()), wxcode = wxcode, in_person = inuser, in_time = date, sqty = sqty, ng_qty = ngqty, style = "S", lm_user = username, lm_date = date } });
- if (badcode != "" && ngqty != "0")
+ if (groupedItems.Count > 0)
{
//鍐欏叆缂洪櫡璁板綍琛�
- for (int i = 0; i < arra1.Length; i++)
+ for (int i = 0; i < groupedItems.Count; i++)
{
sql = @"insert into CSR_WorkRecord_Defect(record_id,wo_code,partnumber,step_seq,step_code,defect_qty,defect_code,remarks,style,lm_user,lm_date)
values(@record_id,@wo_code,@partcode,@stepseq,@stepcode,@ngqty,@defect_code,@remarks,@style,@lm_user,@lm_date)";
- list.Add(new { str = sql, parm = new { record_id = int.Parse(dt.Rows[0]["ID"].ToString()), wo_code = mesordercode, partcode = partcode, stepseq = stepseq, stepcode = stepcode, ngqty = ngqty, defect_code = arra1[i], remarks = remarks, style = "S", lm_user = username, lm_date = date } });
+ list.Add(new { str = sql, parm = new { record_id = int.Parse(dt.Rows[0]["ID"].ToString()), wo_code = mesordercode, partcode = partcode, stepseq = stepseq, stepcode = stepcode, ngqty = groupedItems[i].badqty, defect_code = groupedItems[i].defect_code, remarks = remarks, style = "S", lm_user = username, lm_date = date } });
}
}
--
Gitblit v1.9.3