From e81a7b4c19dacd486a74a463b24107a9ee92d342 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期五, 25 十一月 2022 10:45:44 +0800
Subject: [PATCH] 排产提交接口修改更新
---
VueWebApi/DLL/DAL/ProductionManagementDAL.cs | 115 +++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 91 insertions(+), 24 deletions(-)
diff --git a/VueWebApi/DLL/DAL/ProductionManagementDAL.cs b/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
index ef9e6d7..d915d4c 100644
--- a/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
+++ b/VueWebApi/DLL/DAL/ProductionManagementDAL.cs
@@ -77,7 +77,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,A.planstartdate,A.planenddate,U.username as createuser,A.createdate
+ A.stck_code,D.name as stck_name,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
@@ -102,11 +102,12 @@
#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 username)
+ 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)
{
var sql = "";
List<object> list = new List<object>();
var dynamicParams = new DynamicParameters();
+
try
{
list.Clear();
@@ -199,7 +200,7 @@
}
else //鏇存柊ERP璁㈠崟琛ㄧ姸鎬佷负CREATING:鍒涘缓涓�
{
- sql = @"update TKimp_Ewo set status='CREATING',relse_qty=relse_qty+@sumqty where wo=@wo and id=@erporderid";
+ sql = @"update TKimp_Ewo set status='CREATING',saleOrderDeliveryDate=@saleOrderDeliveryDate,relse_qty=relse_qty+@sumqty where wo=@wo and id=@erporderid";
list.Add(new
{
str = sql,
@@ -207,7 +208,8 @@
{
wo = erpordercode,
erporderid = erporderid,
- sumqty = sumqty
+ sumqty = sumqty,
+ saleOrderDeliveryDate = Convert.ToDateTime(saleOrderDeliveryDate)
}
});
}
@@ -476,6 +478,32 @@
}
#endregion
+
+ #region銆愮敓浜х鐞嗐�佸伐鍗曟柊澧炪�佺紪杈戞椂,閫夋嫨鎺掔▼鏄椂鑾峰彇鐗╂枡娓呭崟鐗堟湰鍙枫��
+ public static ToMessage JobCreationSonAddVison(string partnumber)
+ {
+ string sql = "";
+ var dynamicParams = new DynamicParameters();
+ try
+ {
+ sql = @" select id,version from TBom_Main where materiel_code=@partnumber and status='Y' order by version desc ";
+ dynamicParams.Add("@partnumber", partnumber);
+ var data = DapperHelper.selectdata(sql, dynamicParams);
+ mes.code = "200";
+ mes.Message = "鏌ヨ鎴愬姛!";
+ mes.data = data;
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
#region[MES宸ュ崟鏂板銆佺紪杈戞彁浜
public static ToMessage AddUpdateMesOrder(string mesorderstus, string sourceorder, string ordertype, string mesordercode, string partcode, string mesqty, string routecode, string wkshopcode, string planstartdate, string planenddate, string orderlev, string username, string opertype, string is_aps, string bom_id)
{
@@ -525,8 +553,8 @@
where A.m_id=@bom_id";
list.Add(new { str = sql, parm = new { wocode = mesordercode, uomqty = mesqty, bom_id = bom_id } });
- wo_status = "NEW";
- wrk_status = "NEW";
+ wo_status = "NOSCHED";
+ wrk_status = "NOSCHED";
}
else //鍚�
{
@@ -534,8 +562,8 @@
wrk_status = "ALLO";
}
//鍐欏叆宸ュ崟琛�
- sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,plan_startdate,plan_enddate,route_code,stck_code,lm_user,lm_date,materiel_code,m_po,piroque)
- values(@mesordercode,@wotype,@mesorderstus,@wkshopcode,@mesqty,@planstartdate,@planenddate,@routecode,@stck_code,@username,@CreateDate,@materiel_code,@m_po,@orderlev)";
+ sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,plan_startdate,plan_enddate,route_code,stck_code,lm_user,lm_date,materiel_code,m_po,piroque,isaps)
+ values(@mesordercode,@wotype,@mesorderstus,@wkshopcode,@mesqty,@planstartdate,@planenddate,@routecode,@stck_code,@username,@CreateDate,@materiel_code,@m_po,@orderlev,@isaps)";
list.Add(new
{
str = sql,
@@ -554,7 +582,8 @@
username = username,
CreateDate = DateTime.Now.ToString(),
materiel_code = partcode,
- orderlev = orderlev
+ orderlev = orderlev,
+ isaps = is_aps
}
});
//鍐欏叆宸ュ簭浠诲姟琛�
@@ -601,7 +630,39 @@
}
if (opertype == "Update")
{
- sql = @"update TK_Wrk_Man set route_code=@routecode,wkshp_code=@wkshopcode,plan_startdate=@planstartdate,plan_enddate=@planenddate,status=@status,piroque=@orderlev,lm_user=@username,lm_date=@CreateDate where wo_code=@mesordercode";
+ if (is_aps == "Y") //鏄惁鎺掔▼(鏄�)
+ {
+ //鍒ゆ柇鐗╂枡娓呭崟
+ sql = "select id from TBom_Main where materiel_code=@partcode and status='Y' and id=@bom_id";
+ dynamicParams.Add("@partcode", partcode);
+ dynamicParams.Add("@bom_id", bom_id);
+ var data = DapperHelper.selectdata(sql, dynamicParams);
+ if (data.Rows.Count <= 0)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "宸ュ崟瀵瑰簲鐨勪骇鍝佹病鏈夊缓绔婤OM鎴朆OM鏈鏍革紒";
+ mes.data = null;
+ return mes;
+ }
+ //澧炲姞宸ュ崟鐢ㄦ枡琛紙瀛愪欢锛�
+ sql = @"insert into TK_Wrk_Allo(wo_code, seq, materiel_code, basqty, qty,bom_id,materieltype,stck_code,stopfeed,base_quantity,loss_quantity,m_quantity)
+ select @wocode,A.seq,A.smateriel_code,A.total_quantity,(convert(decimal(18, 0), @uomqty)*A.Base_Quantity*(1+A.LOSS_QUANTITY/100))/C.quantity,
+ A.m_id,A.pn_type,'','N',A.base_quantity,A.loss_quantity,C.quantity
+ from TBom_Deta A left join TBom_Main C on A.m_Id=C.id
+ left join TMateriel_Info B on A.smateriel_code = B.partcode
+ where A.m_id=@bom_id";
+ list.Add(new { str = sql, parm = new { wocode = mesordercode, uomqty = mesqty, bom_id = bom_id } });
+
+ wo_status = "NOSCHED";
+ wrk_status = "NOSCHED";
+ }
+ else //鍚�
+ {
+ wo_status = "ALLO";
+ wrk_status = "ALLO";
+ }
+ sql = @"update TK_Wrk_Man set route_code=@routecode,wkshp_code=@wkshopcode,plan_startdate=@planstartdate,plan_enddate=@planenddate,status=@status,piroque=@orderlev,lm_user=@username,lm_date=@CreateDate,isaps=@isaps where wo_code=@mesordercode";
list.Add(new
{
str = sql,
@@ -611,11 +672,12 @@
wkshopcode = wkshopcode,
planstartdate = planstartdate,
planenddate = planenddate,
- status = "ALLO", //娲惧彂
+ status = wo_status,
routecode = routecode,
username = username,
CreateDate = DateTime.Now.ToString(),
- orderlev = orderlev
+ orderlev = orderlev,
+ isaps= is_aps
}
});
//鍐欏叆宸ュ簭浠诲姟琛�
@@ -636,7 +698,7 @@
mesqty = mesqty,
planstartdate = planstartdate,
planenddate = planenddate,
- status = "ALLO", //娲惧彂
+ status = wo_status,
username = username,
routecode = routecode,
CreateDate = DateTime.Now.ToString()
@@ -678,8 +740,8 @@
var dynamicParams = new DynamicParameters();
try
{
- //鍒ゆ柇宸ュ崟鏄惁涓烘湭寮�濮嬬姸鎬佹垨鑰呭凡娲惧彂鐘舵��(婊¤冻鍏朵腑涓�绉嶉兘鍙垹闄わ紝鍚﹀垯涓嶅厑璁稿垹闄�)
- sql = @"select * from TK_Wrk_Man where wo_code=@wocode and status in('NEW','ALLO')";
+ //鍒ゆ柇宸ュ崟鏄惁涓烘湭寮�濮嬬姸鎬佹垨鑰呭凡娲惧彂鎴栧緟鎺掔▼鐘舵��(婊¤冻鍏朵腑涓�绉嶉兘鍙垹闄わ紝鍚﹀垯涓嶅厑璁稿垹闄�)
+ sql = @"select * from TK_Wrk_Man where wo_code=@wocode and status in('NEW','ALLO','NOSCHED')";
dynamicParams.Add("@wocode", wocode);
var data = DapperHelper.selectdata(sql, dynamicParams);
if (data.Rows.Count > 0)
@@ -707,6 +769,10 @@
}
//鍒犻櫎宸ュ崟宸ュ簭琛�
sql = @"delete TK_Wrk_Step where wo_code=@wocode";
+ list.Add(new { str = sql, parm = new { wocode = wocode } });
+
+ //鍒犻櫎鍔犲伐鍗曠敤鏂欒〃(瀛愪欢)
+ sql = @"delete TK_Wrk_Allo where wo_code=@wocode";
list.Add(new { str = sql, parm = new { wocode = wocode } });
//鍒犻櫎宸ュ崟琛�
@@ -3244,7 +3310,7 @@
left join (select wo_code, max(TIME_END) MAXTime,min(time_start) MINTime from TK_Wrk_EqpAps group by wo_code) H on A.wo_code=H.wo_code
left join TUom U on C.uom_code=U.code
left join TOrganization M on A.wkshp_code=M.org_code
- where E.isbott = 'Y' and A.status='NEW' and A.isaps='Y'";
+ where E.isbott = 'Y' and A.status='NOSCHED' and A.isaps='Y' " + search;
var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
mes.code = "200";
mes.Message = "鏌ヨ鎴愬姛!";
@@ -3337,7 +3403,7 @@
string sy = "0";
for (int i = 0; i < dt0.Rows.Count; i++)
{
- if (dt0.Rows[i]["WKSHOP"].ToString() == wkshpcode) //宸ュ崟鍒涘缓杞﹂棿鏄惁绛変簬鎺掍骇璁惧 杞﹂棿
+ if (dt0.Rows[i]["WKSP_CODE"].ToString() == wkshpcode) //宸ュ崟鍒涘缓杞﹂棿鏄惁绛変簬鎺掍骇璁惧 杞﹂棿
{
sy = "1";
break;
@@ -3353,6 +3419,7 @@
mes.count = 0;
mes.Message = "鎺掍骇璁惧杞﹂棿涓庡伐鍗曞垱寤虹殑杞﹂棿涓嶅悓锛�";
mes.data = null;
+ return list;
}
else
{
@@ -3384,8 +3451,8 @@
from TWkm_capac_plan E
left join TWkm_capac_plan_sub F on E.id=F.m_id
left join TBas_wkshift_info G on F.wkshift_code=G.code
- where E.wkshop='CJ001'and E.eqp_typecode='SBLX001' and E.ClassType='D'
- and CONVERT(varchar(100), F.wkdate, 23)='2022-10-11' and E.enable='Y'";
+ where E.wkshop=@wkshop and E.eqp_typecode=@eqp_typecode and E.ClassType=@classtype
+ and CONVERT(varchar(100), F.wkdate, 23)=@wkdate and E.enable='Y'";
dynamicParams.Add("@wkshop", wkshpcode);
dynamicParams.Add("@eqp_typecode", listData[j].Style.ToString());
dynamicParams.Add("@classtype", listData[j].ClassType.ToString());
@@ -3432,7 +3499,7 @@
{
mes.code = "300";
mes.count = 0;
- mes.Message = "鎺掔▼璁惧鏈缃骇鑳斤紒";
+ mes.Message = "褰撳墠宸ュ崟鍔犲伐浜у搧瀵瑰簲宸ヨ壓璺嚎璁惧鏈缃骇鑳芥垨鏈缃敓浜ц妭鎷嶏紒";
mes.data = null;
}
}
@@ -3517,7 +3584,7 @@
string status = dt.Rows[0]["STATUS"].ToString();
Decimal nm = 0; //鐡跺緞宸ュ簭鐨勫墠缃ぉ鏁�
Decimal nn = Decimal.Parse(dt.Rows[0]["BottFrointv"].ToString()); //鐡跺緞宸ュ簭鐨勫悗缃ぉ鏁�
- if (status != "NEW" && status != "SCHED") //宸ュ簭浠诲姟鐨勭姸鎬佸凡缁忔淳鍙戯紙瀹℃牳锛�
+ if (status != "NEW" && status != "SCHED" && status != "NOSCHED") //宸ュ簭浠诲姟鐨勭姸鎬佸凡缁忔淳鍙戯紙瀹℃牳锛�
{
mes.code = "300";
mes.count = 0;
@@ -3574,7 +3641,7 @@
{
sql = @"insert into TK_Wrk_EqpApsSum (wo_code,eqp_code,step_taid,p_date, t_date, qty,status)
select min(wo_code),min(eqp_code),min(step_taid),min(time_start),max(time_end),sum(Alloc_Qty),'NEW' from TK_Wrk_EqpAps
- where wo_code=@wocode and eqp_code=''";
+ where wo_code=@wocode and eqp_code=@eqp_code";
list.Add(new { str = sql, parm = new { wocode = wocode, eqp_code = dt1.Rows[i]["EQP_CODE"].ToString() } });
}
@@ -3590,7 +3657,7 @@
list.Clear();
//鍐欏叆璁惧浠诲姟(姹囨�昏〃)鐢ㄦ枡 璁″垝鏁伴噺*瀛愪欢鍩烘湰鐢ㄩ噺*锛�1+鎹熻�楃巼锛�/姣嶄欢鍩烘湰鐢ㄩ噺
- sql = @"insert into TK_Wrk_EqpSum_Allo(m_id, seq, invcode, qty,wo_code,pn_type)
+ sql = @"insert into TK_Wrk_EqpSum_Allo(m_id, seq, materiel_code, qty,wo_code,materieltype)
select A.id M_id, B.seq,B.materiel_code,(round(A.qty,2)*BE.Base_Quantity*(1+BE.LOSS_QUANTITY/100))/BM.quantity qty,A.wo_code,B.materieltype
from TK_Wrk_EqpApsSum A
left join TK_Wrk_Allo B on A.Wo_Code= B.Wo_Code
@@ -3616,7 +3683,7 @@
}
});
//涓诲伐鍗曠殑鈥滆鍒掑紑鏈烘棩鏈� = 鐡跺緞宸ュ簭鐨勯寮�宸ユ棩鏈� - 鐡跺緞宸ュ簭鐨勫墠缃棩鏈燂級 涓诲伐鍗曪細璁″垝瀹屽伐鏃ユ湡 = 鐡跺緞宸ュ簭鐨勯瀹屽伐鏃ユ湡 + 鐡跺緞宸ュ簭鐨勫悗缃棩鏈�
- sql = @"update mes_tk_wrk_man set status='SCHED',plan_startdate =convert(varchar(100),@plan_startdate,21), plan_enddate =convert(varchar(100),@plan_enddate,21), exchag='Y',allocfag='N' where wo_code =@wocode";
+ sql = @"update TK_Wrk_Man set status='SCHED',plan_startdate =convert(varchar(100),@plan_startdate,21), plan_enddate =convert(varchar(100),@plan_enddate,21), exchag='Y',allocfag='N' where wo_code =@wocode";
list.Add(new
{
str = sql,
--
Gitblit v1.9.3