From 9c634fd767aec36ef97c3a814bf7a29c67d20ee1 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期五, 29 三月 2024 10:57:35 +0800
Subject: [PATCH] 修改单据重复显示问题,增加工单源单id关联
---
VueWebApi/DLL/DAL/ProductModelDAL.cs | 1088 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 980 insertions(+), 108 deletions(-)
diff --git a/VueWebApi/DLL/DAL/ProductModelDAL.cs b/VueWebApi/DLL/DAL/ProductModelDAL.cs
index fe78a8d..90d4eec 100644
--- a/VueWebApi/DLL/DAL/ProductModelDAL.cs
+++ b/VueWebApi/DLL/DAL/ProductModelDAL.cs
@@ -27,7 +27,7 @@
try
{
//鑾峰彇璁惧绫诲瀷鏁版嵁
- sql = @"select code,name from T_Dict where dict_type='CHLX' ";
+ sql = @"select code,name,iparent_id from T_Dict where dict_type='CHLX' ";
var data = DapperHelper.selecttable(sql);
mes.code = "200";
mes.Message = "鏌ヨ鎴愬姛!";
@@ -421,12 +421,29 @@
#endregion
#region[瀛樿揣妗f鏌ヨ]
- public static ToMessage InventoryFileSelect(string partcode, string partname, string partspec, string stocktypecode, string materialtypecode, string storehousecode, int startNum, int endNum, string prop, string order)
+ public static ToMessage InventoryFileSelect(string stu_torgcode, string stu_torgtypecode, string partcode, string partname, string partspec, string stocktypecode, string materialtypecode, string storehousecode, int startNum, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
+ string search0 = "";
string search = "";
+ string search1 = "";
try
{
+ switch (stu_torgtypecode)
+ {
+ case "":
+ break;
+ case "D":
+ search1 += "and L.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ case "W":
+ search1 += "and F.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ default:
+ break;
+ }
if (partcode != "" && partcode != null)
{
search += "and A.partcode like '%'+@partcode+'%' ";
@@ -444,7 +461,8 @@
}
if (stocktypecode != "" && stocktypecode != null)
{
- search += "and D.code=@stocktypecode ";
+ search0 += " where code = @stocktypecode";
+ search += " and CTE.iparent_id<>'' and CTE.dict_type='CHLX'";
dynamicParams.Add("@stocktypecode", stocktypecode);
}
if (materialtypecode != "" && materialtypecode != null)
@@ -463,21 +481,80 @@
}
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
- var sql = @"select A.id,A.partcode,A.partname,A.partspec,A.uom_code,B.name as uom_name,D.code as stocktypecode,D.name as stocktypename,
- C.code as materialtypecode,C.name as materialtypename,A.stck_code,T.name as stck_name,A.maxqty,A.minqty,U.username as lm_user,A.default_route,
- A.lm_date,A.proute_id
- from TMateriel_Info A
- left join TUom B on A.uom_code=B.code
- left join TMateriel_Type C on A.materieltype_code=C.code
- left join T_Dict D on A.stocktype_code=D.code and D.dict_type='CHLX'
- left join T_Sec_Stck T on A.stck_code=T.code
- left join TUser U on A.lm_user=U.usercode
- where A.is_delete<>'1' " + search;
- var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+ //var sql = @"select A.id,A.partcode,A.partname,A.partspec,A.uom_code,B.name as uom_name,D.code as stocktypecode,D.name as stocktypename,
+ // C.code as materialtypecode,C.name as materialtypename,A.stck_code,T.name as stck_name,A.maxqty,A.minqty,U.username as lm_user,
+ // A.lm_date,(case when isnull(M.materiel_code,'')='' then 'N' else 'Y' end) as proute_id,A.is_batchno,A.is_fifo,A.is_incheck,A.is_outcheck
+ // from TMateriel_Info A
+ // left join TUom B on A.uom_code=B.code
+ // left join TMateriel_Type C on A.materieltype_code=C.code
+ // left join T_Dict D on A.stocktype_code=D.code and D.dict_type='CHLX'
+ // left join T_Sec_Stck T on A.stck_code=T.code
+ // left join TUser U on A.lm_user=U.usercode
+ // left join (
+ // select distinct materiel_code from TMateriel_Route M
+ // left join TOrganization F on M.torg_code=F.org_code
+ // left join TOrganization as L on F.parent_id=L.id
+ // where 1=1 "+search1+") M on A.partcode=M.materiel_code where A.is_delete<>'1' " + search;
+ var sql0 = @"WITH CTE AS (
+ SELECT code,name,iparent_id,dict_type
+ FROM T_Dict " + search0 + " ";
+ sql0 += @"UNION ALL
+ SELECT t.code,t.name,t.iparent_id,t.dict_type
+ FROM T_Dict t
+ INNER JOIN CTE c ON c.code = t.iparent_id)
+ SELECT COUNT(1) as total FROM (
+ SELECT distinct A.id,A.partcode,A.partname,A.partspec,A.uom_code,B.name as uom_name,D.code as stocktypecode,D.name as stocktypename,D.iparent_id,
+ A.stck_code,T.name as stck_name,A.maxqty,A.minqty,U.username as lm_user,
+ A.lm_date,(case when isnull(M.materiel_code,'')='' then 'N' else 'Y' end) as proute_id,A.is_batchno,A.is_fifo,A.is_incheck,A.is_outcheck
+ FROM CTE
+ right join TMateriel_Info A on CTE.code=A.stocktype_code
+ left join TUom B on A.uom_code=B.code
+ left join T_Dict D on A.stocktype_code=D.code
+ left join T_Sec_Stck T on A.stck_code=T.code
+ left join TUser U on A.lm_user=U.usercode
+ left join (
+ select distinct materiel_code from TMateriel_Route M
+ left join TOrganization F on M.torg_code=F.org_code
+ left join TOrganization as L on F.parent_id=L.id
+ where 1=1 " + search1 + ") M on A.partcode=M.materiel_code where A.is_delete<>'1' " + search + ") AS Result";
+ var data0 = DapperHelper.selectdata(sql0, dynamicParams);
+ if (data0.Rows.Count > 0)
+ {
+ total = Convert.ToInt32(data0.Rows[0]["total"].ToString());
+ }
+ else
+ {
+ total = 0;
+ }
+
+ var sql = @"WITH CTE AS (
+ SELECT code,name,iparent_id,dict_type
+ FROM T_Dict " + search0 + " ";
+ sql += @"UNION ALL
+ SELECT t.code,t.name,t.iparent_id,t.dict_type
+ FROM T_Dict t
+ INNER JOIN CTE c ON c.code = t.iparent_id)
+ SELECT * FROM(SELECT *,ROW_NUMBER() OVER(ORDER BY lm_date desc) AS RowNum
+ FROM(
+ SELECT distinct A.id,A.partcode,A.partname,A.partspec,A.uom_code,B.name as uom_name,D.code as stocktypecode,D.name as stocktypename,D.iparent_id,
+ A.stck_code,T.name as stck_name,A.maxqty,A.minqty,U.username as lm_user,
+ A.lm_date,(case when isnull(M.materiel_code,'')='' then 'N' else 'Y' end) as proute_id,A.is_batchno,A.is_fifo,A.is_incheck,A.is_outcheck
+ FROM CTE
+ right join TMateriel_Info A on CTE.code=A.stocktype_code
+ left join TUom B on A.uom_code=B.code
+ left join T_Dict D on A.stocktype_code=D.code
+ left join T_Sec_Stck T on A.stck_code=T.code
+ left join TUser U on A.lm_user=U.usercode
+ left join (
+ select distinct materiel_code from TMateriel_Route M
+ left join TOrganization F on M.torg_code=F.org_code
+ left join TOrganization as L on F.parent_id=L.id
+ where 1=1 " + search1 + ") M on A.partcode=M.materiel_code where A.is_delete<>'1' " + search + " ) AS Temp) AS Result WHERE RowNum >= " + startNum + " AND RowNum <=" + endNum + " ORDER BY " + prop + " " + order + "";
+ var data = DapperHelper.selectdata(sql, dynamicParams);
mes.code = "200";
mes.Message = "鏌ヨ鎴愬姛!";
mes.count = total;
- mes.data = data.ToList();
+ mes.data = data;
}
catch (Exception e)
{
@@ -491,7 +568,7 @@
#endregion
#region[瀛樿揣妗f鏂板缂栬緫]
- public static ToMessage AddUpdateInventoryFile(string materialid, string materialcode, string materialname, string materialspec, string uomcode, string warehousecode, string stocktypecode, string materialtypecode, string minstockqty, string maxstockqty, string username, string operType)
+ public static ToMessage AddUpdateInventoryFile(string materialid, string materialcode, string materialname, string materialspec, string uomcode, string warehousecode, string stocktypecode, string minstockqty, string maxstockqty, string is_batchno, string is_fifo, string is_incheck, string is_outcheck, string username, string operType)
{
var dynamicParams = new DynamicParameters();
try
@@ -509,19 +586,23 @@
mes.data = null;
return mes;
}
- var sql = @"insert into TMateriel_Info(partcode,partname,partspec,uom_code,stocktype_code,materieltype_code,stck_code,maxqty,minqty,lm_user,lm_date)
- values(@materialcode,@materialname,@materialspec,@uomcode,@stocktypecode,@materialtypecode,@warehousecode,@maxstockqty,@minstockqty,@username,@CreateDate)";
+ var sql = @"insert into TMateriel_Info(partcode,partname,partspec,uom_code,stocktype_code,materieltype_code,stck_code,maxqty,minqty,lm_user,lm_date,is_batchno,is_fifo,is_incheck,is_outcheck)
+ values(@materialcode,@materialname,@materialspec,@uomcode,@stocktypecode,@materialtypecode,@warehousecode,@maxstockqty,@minstockqty,@username,@CreateDate,@is_batchno,@is_fifo,@is_incheck,@is_outcheck)";
dynamicParams.Add("@materialcode", materialcode);
dynamicParams.Add("@materialname", materialname);
dynamicParams.Add("@materialspec", materialspec);
dynamicParams.Add("@uomcode", uomcode);
dynamicParams.Add("@warehousecode", warehousecode);
dynamicParams.Add("@stocktypecode", stocktypecode);
- dynamicParams.Add("@materialtypecode", materialtypecode);
+ dynamicParams.Add("@materialtypecode", "");
dynamicParams.Add("@minstockqty", minstockqty);
dynamicParams.Add("@maxstockqty", maxstockqty);
dynamicParams.Add("@username", username);
dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
+ dynamicParams.Add("@is_batchno", is_batchno);
+ dynamicParams.Add("@is_fifo", is_fifo);
+ dynamicParams.Add("@is_incheck", is_incheck);
+ dynamicParams.Add("@is_outcheck", is_outcheck);
int cont = DapperHelper.SQL(sql, dynamicParams);
if (cont > 0)
{
@@ -541,18 +622,23 @@
if (operType == "Update")
{
var sql = @"update TMateriel_Info set partname=@materialname,partspec=@materialspec,uom_code=@uomcode,stocktype_code=@stocktypecode,materieltype_code=@materialtypecode,stck_code=@warehousecode,
- maxqty=@maxstockqty,minqty=@minstockqty,lm_user=@username,lm_date=@CreateDate where id=@materialid";
+ maxqty=@maxstockqty,minqty=@minstockqty,lm_user=@username,lm_date=@CreateDate,is_batchno=@is_batchno,is_fifo=@is_fifo,
+ is_incheck=@is_incheck,is_outcheck=@is_outcheck where id=@materialid";
dynamicParams.Add("@materialid", materialid);
dynamicParams.Add("@materialname", materialname);
dynamicParams.Add("@materialspec", materialspec);
dynamicParams.Add("@uomcode", uomcode);
dynamicParams.Add("@warehousecode", warehousecode);
dynamicParams.Add("@stocktypecode", stocktypecode);
- dynamicParams.Add("@materialtypecode", materialtypecode);
+ dynamicParams.Add("@materialtypecode", "");
dynamicParams.Add("@minstockqty", minstockqty);
dynamicParams.Add("@maxstockqty", maxstockqty);
dynamicParams.Add("@username", username);
dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
+ dynamicParams.Add("@is_batchno", is_batchno);
+ dynamicParams.Add("@is_fifo", is_fifo);
+ dynamicParams.Add("@is_incheck", is_incheck);
+ dynamicParams.Add("@is_outcheck", is_outcheck);
int cont = DapperHelper.SQL(sql, dynamicParams);
if (cont > 0)
{
@@ -645,6 +731,18 @@
}
//褰撳墠鐗╂枡鏄惁鐢熸垚鍑哄叆搴撹褰�
//鏈夋病鏈夎宸ュ崟寮曠敤
+ sql = @"select * from TK_Wrk_Man
+ where materiel_code=@materialcode";
+ dynamicParams.Add("@materialcode", materialcode);
+ var data3 = DapperHelper.selectdata(sql, dynamicParams);
+ if (data2.Rows.Count > 0)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "鐗╂枡宸叉湁鍏宠仈鐨勭敓浜у伐鍗�,涓嶅厑璁稿垹闄�!";
+ mes.data = null;
+ return mes;
+ }
//鍒犻櫎鐗╂枡
sql = @"delete TMateriel_Info where partcode=@materialcode";
@@ -677,20 +775,38 @@
#endregion
#region[瀛樿揣妗f鍏宠仈宸ヨ壓璺嚎鏌ヨ]
- public static ToMessage InventoryFileAssociationRoute(string partcode)
+ public static ToMessage InventoryFileAssociationRoute(string stu_torgcode, string stu_torgtypecode, string partcode)
{
string sql = "";
+ string search = "";
var dynamicParams = new DynamicParameters();
List<MaterialRout> list = new List<MaterialRout>();
try
{
+ switch (stu_torgtypecode)
+ {
+ case "":
+ break;
+ case "D":
+ search += "and parent.org_code=@stu_torgcode or child.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ case "W":
+ search += "and parent.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ default:
+ break;
+ }
//鑾峰彇宸ヨ壓璺嚎闆嗗悎(鍖呭惈鐗╂枡缁戝畾宸ヨ壓璺嚎鏍囪瘑)
- sql = @"select distinct A.code as routecode,A.name as routename,(case when B.route_code is null then 'N' else 'Y' end) flag from TFlw_Rout A
+ sql = @"select distinct parent.org_code,parent.org_name,A.code as routecode,A.name as routename,(case when B.route_code is null then 'N' else 'Y' end) flag from TFlw_Rout A
+ left join TOrganization parent on A.torg_code=parent.org_code
+ left join TOrganization as child on parent.parent_id=child.id
left join (
select distinct route_code from TMateriel_Route where materiel_code=@partcode and is_delete<>'1'
) B
on A.code=B.route_code
- where A.is_delete='0' and A.enable='Y'";
+ where A.is_delete='0' and A.enable='Y' " + search;
dynamicParams.Add("@partcode", partcode);
var data = DapperHelper.selectdata(sql, dynamicParams);
for (int i = 0; i < data.Rows.Count; i++)
@@ -699,7 +815,8 @@
rout.code = data.Rows[i]["ROUTECODE"].ToString();
rout.name = data.Rows[i]["ROUTENAME"].ToString();
rout.flag = data.Rows[i]["FLAG"].ToString();
-
+ rout.wkshopcode = data.Rows[i]["ORG_CODE"].ToString();
+ rout.wkshopname = data.Rows[i]["ORG_NAME"].ToString();
//鏍规嵁宸ヨ壓璺嚎缂栫爜鑾峰彇鍏宠仈鐨勫伐搴忎俊鎭�
sql = @"select A.seq,B.stepcode,B.stepname,B.enable from TFlw_Rtdt A
inner join TStep B on A.step_code=B.stepcode
@@ -726,31 +843,47 @@
#endregion
#region[瀛樿揣妗f鍏宠仈宸ヨ壓璺嚎鎻愪氦]
- public static ToMessage SaveInventoryFile(string partcode,string defaultroute_code, string username, List<ObjectData> json)
+ public static ToMessage SaveInventoryFile(string stu_torgcode, string stu_torgtypecode, string partcode, string defaultroute_code, string username, List<PartRout> json)
{
var sql = "";
+ var dynamicParams = new DynamicParameters();
+ string search = "";
List<object> list = new List<object>();
try
{
list.Clear();
- if (json == null || json.Count <= 0)
+ switch (stu_torgtypecode)
{
- //娓呴櫎鐗╂枡鍏宠仈宸ヨ壓璺嚎琛ㄦ暟鎹�
- sql = @"delete TMateriel_Route where materiel_code=@partcode";
- list.Add(new { str = sql, parm = new { partcode = partcode } });
- //鏍囪鐗╂枡琛ㄥ叧鑱斿伐鑹鸿矾绾挎爣璇�
- sql = @"update TMateriel_Info set proute_id='N',default_route='' where partcode=@partcode";
- list.Add(new { str = sql, parm = new { partcode = partcode } });
+ case "":
+ //娓呴櫎鐗╂枡鍏宠仈宸ヨ壓璺嚎琛ㄦ暟鎹�
+ sql = @"delete TMateriel_Route where materiel_code=@partcode";
+ list.Add(new { str = sql, parm = new { partcode = partcode } });
+ break;
+ case "D":
+ //娓呴櫎鐗╂枡鍏宠仈宸ヨ壓璺嚎琛ㄦ暟鎹�
+ sql = @"delete from TMateriel_Route where id in (select A.id from TMateriel_Route A
+ left join TOrganization T on A.torg_code=T.org_code
+ left join TOrganization as L on T.parent_id=L.id
+ where 1=1 and A.materiel_code=@partcode and L.org_code=@stu_torgcode)";
+ list.Add(new { str = sql, parm = new { partcode = partcode, stu_torgcode = stu_torgcode } });
+ break;
+ case "W":
+ //娓呴櫎鐗╂枡鍏宠仈宸ヨ壓璺嚎琛ㄦ暟鎹�
+ sql = @"delete from TMateriel_Route where id in (select A.id from TMateriel_Route A
+ left join TOrganization T on A.torg_code=T.org_code
+ left join TOrganization as L on T.parent_id=L.id
+ where 1=1 and A.materiel_code=@partcode and T.org_code=@stu_torgcode)";
+ list.Add(new { str = sql, parm = new { partcode = partcode, stu_torgcode = stu_torgcode } });
+ break;
}
- else
+ if (json != null && json.Count > 0)
{
- //娓呴櫎鐢ㄦ埛鍏宠仈瑙掕壊琛ㄦ暟鎹�
- sql = @"delete TMateriel_Route where materiel_code=@partcode";
- list.Add(new { str = sql, parm = new { partcode = partcode } });
+ //鐗╂枡+缁勭粐鏌ヨ鑺傛媿宸ヤ环琛ㄤ腑瀵瑰簲鐨勬墍鏈夊伐鑹鸿矾绾�,鐒跺悗鏍规嵁浼犺繃鏉ョ殑鍋氬姣旓紝鍐嶅幓鍒犻櫎鑺傛媿宸ヤ环琛�
+
//寰幆鍐欏叆鐢ㄦ埛鍏宠仈瑙掕壊琛�
for (int i = 0; i < json.Count; i++)
{
- sql = @"insert into TMateriel_Route(materiel_code,route_code,lm_user,lm_date) values(@materiel_code,@route_code,@lm_user,@lm_date)";
+ sql = @"insert into TMateriel_Route(materiel_code,route_code,lm_user,lm_date,torg_code) values(@materiel_code,@route_code,@lm_user,@lm_date,@torg_code)";
list.Add(new
{
str = sql,
@@ -759,13 +892,11 @@
materiel_code = partcode,
route_code = json[i].code,
lm_user = username,
- lm_date = DateTime.Now.ToString()
+ lm_date = DateTime.Now.ToString(),
+ torg_code = json[i].wkshopcode
}
});
}
- //鏍囪鐗╂枡琛ㄥ叧鑱斿伐鑹鸿矾绾挎爣璇�
- sql = @"update TMateriel_Info set proute_id='Y',default_route=@defaultroute_code where partcode=@partcode";
- list.Add(new { str = sql, parm = new { partcode = partcode, defaultroute_code= defaultroute_code } });
}
bool aa = DapperHelper.DoTransaction(list);
if (aa)
@@ -796,13 +927,390 @@
- #region[宸ヨ壓璺嚎鏌ヨ]
- public static ToMessage RouteSearch(string routecode, string routename, string description, string createuser, int startNum, int endNum, string prop, string order)
+ #region[鐗╂枡娓呭崟涓诲垪琛ㄦ煡璇
+ public static ToMessage BoIventorySelect(string parentpartcode, string parentpartname, string parentpartspec, string parttype, string status, string version, string createusername, string createopendate, string createclosedate, int startNum, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
try
{
+ if (parentpartcode != "" && parentpartcode != null)
+ {
+ search += "and M.partcode like '%'+@parentpartcode+'%' ";
+ dynamicParams.Add("@parentpartcode", parentpartcode);
+ }
+ if (parentpartname != "" && parentpartname != null)
+ {
+ search += "and M.partname like '%'+@parentpartname+'%' ";
+ dynamicParams.Add("@parentpartname", parentpartname);
+ }
+ if (parentpartspec != "" && parentpartspec != null)
+ {
+ search += "and M.partspec like '%'+@parentpartspec+'%' ";
+ dynamicParams.Add("@parentpartspec", parentpartspec);
+ }
+ if (parttype != "" && parttype != null)
+ {
+ search += "and M.stocktype_code=@parttype ";
+ dynamicParams.Add("@parttype", parttype);
+ }
+ if (status != "" && status != null)
+ {
+ search += "and A.status=@status ";
+ dynamicParams.Add("@status", status);
+ }
+ if (version != "" && version != null)
+ {
+ search += "and A.version like '%'+@version+'%' ";
+ dynamicParams.Add("@version", version);
+ }
+ if (createusername != "" && createusername != null)
+ {
+ search += "and U.username like '%'+@createusername+'%' ";
+ dynamicParams.Add("@createusername", createusername);
+ }
+ if (createopendate != "" && createopendate != null)
+ {
+ search += "and A.lm_date between @createopendate and @createclosedate ";
+ dynamicParams.Add("@createopendate", createopendate + " 00:00:00");
+ dynamicParams.Add("@createclosedate", createclosedate + " 23:59:59");
+ }
+ if (search == "")
+ {
+ search = "and 1=1 ";
+ }
+ // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+ var total = 0; //鎬绘潯鏁�
+ var sql = @"select A.id, M.partcode,M.partname,M.partspec,M.stocktype_code,D.name as stocktype_name,M.uom_code,T.name as uom_name,
+ A.quantity,A.status,A.startdate,A.version,U.username,A.lm_date
+ from TBom_Main A
+ left join TMateriel_Info M on A.materiel_code=M.partcode
+ left join TUom T on M.uom_code=T.code
+ left join TUser U on A.lm_user=U.usercode
+ left join T_Dict D on M.stocktype_code=D.code
+ where A.is_delete<>'1' " + search;
+ var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+ mes.code = "200";
+ mes.Message = "鏌ヨ鎴愬姛!";
+ mes.count = total;
+ mes.data = data.ToList();
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
+ #region[鐗╂枡娓呭崟鏂板鏃惰幏鍙栨渶澶х増鏈彿]
+ public static ToMessage MaterielDetailedVsion(string parentpartcode)
+ {
+ string sql = "";
+ var dynamicParams = new DynamicParameters();
+ try
+ {
+ sql = @"select isnull(max(substring(version,charindex('V',version)+1,len(version)-charindex('V',version))),0)+1 as version
+ from TBom_Main where materiel_code=@parentpartcode";
+ dynamicParams.Add("@parentpartcode", parentpartcode);
+ var data = DapperHelper.selectdata(sql, dynamicParams);
+ if (data.Rows.Count > 0)
+ {
+ mes.code = "200";
+ mes.Message = "鑾峰彇鐗堟湰鍙锋垚鍔�!";
+ mes.data = "V" + data.Rows[0]["version"].ToString();
+ }
+ 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
+
+ #region[鐗╂枡娓呭崟鏂板/缂栬緫鎻愪氦]
+ public static ToMessage AddUpdateBoIventory(string bomid, string parentpartcode, string parentpartname, string parentpartspec, string status, string uomcode, string quantity, string startdate, string version, string username, string opertype, List<BomSub> objs)
+ {
+ string sql = "";
+ List<object> list = new List<object>();
+ var dynamicParams = new DynamicParameters();
+ try
+ {
+ if (opertype == "Add")
+ {
+ //鑾峰彇涓昏〃鏈�澶D
+ string sql0 = @"select ISNULL(IDENT_CURRENT('TBom_Main')+1,1) as id";
+ var dt = DapperHelper.selecttable(sql0);
+ //鍐欏叆BOM涓昏〃
+ sql = @"insert into TBom_Main(materiel_code,quantity,status,version,lm_user,lm_date,startdate)
+ values(@materiel_code,@quantity,@status,@version,@username,@CreateDate,@startdate)";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ materiel_code = parentpartcode,
+ quantity = quantity,
+ status = status,
+ version = version,
+ username = username,
+ CreateDate = DateTime.Now.ToString(),
+ startdate = startdate
+ }
+ });
+ //鍐欏叆BOM瀛愯〃
+ for (int i = 0; i < objs.Count; i++)
+ {
+ sql = @"insert into TBom_Deta(m_id,seq,smateriel_code,base_quantity,loss_quantity,total_quantity,pn_type)
+ values(@m_id,@seq,@smateriel_code,@base_quantity,@loss_quantity,@total_quantity,@pn_type)";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ m_id = dt.Rows[0]["id"].ToString(),
+ seq = objs[i].seq.ToString(),
+ smateriel_code = objs[i].smaterirl_code.ToString(),
+ base_quantity = objs[i].base_quantity.ToString(),
+ loss_quantity = objs[i].loss_quantity.ToString(),
+ total_quantity = objs[i].total_quantity.ToString(),
+ pn_type = objs[i].pn_type.ToString()
+ }
+ });
+ }
+ bool aa = DapperHelper.DoTransaction(list);
+ if (aa)
+ {
+ mes.code = "200";
+ mes.count = 0;
+ mes.Message = "鏂板鎿嶄綔鎴愬姛!";
+ mes.data = null;
+ }
+ else
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "鏂板鎿嶄綔澶辫触!";
+ mes.data = null;
+ }
+ }
+ if (opertype == "Update")
+ {
+ //淇敼BOM涓昏〃鍩烘湰鐢ㄩ噺銆佸惎鐢ㄧ姸鎬�
+ sql = @"update TBom_Main set quantity=@quantity,status=@status,lm_user=@lm_user,lm_date=@lm_date where materiel_code=@materiel_code and id=@bomid";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ bomid = bomid,
+ materiel_code = parentpartcode,
+ quantity = quantity,
+ status = status,
+ lm_user = username,
+ lm_date = DateTime.Now.ToString()
+ }
+ });
+ //鍒犻櫎BOM瀛愯〃
+ sql = @"delete TBom_Deta where m_id=@bomid";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ bomid = bomid
+ }
+ });
+ //鍐欏叆BOM瀛愯〃
+ for (int i = 0; i < objs.Count; i++)
+ {
+ sql = @"insert into TBom_Deta(m_id,seq,smateriel_code,base_quantity,loss_quantity,total_quantity,pn_type)
+ values(@m_id,@seq,@smateriel_code,@base_quantity,@loss_quantity,@total_quantity,@pn_type)";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ m_id = bomid,
+ seq = objs[i].seq.ToString(),
+ smateriel_code = objs[i].smaterirl_code.ToString(),
+ base_quantity = objs[i].base_quantity.ToString(),
+ loss_quantity = objs[i].loss_quantity.ToString(),
+ total_quantity = objs[i].total_quantity.ToString(),
+ pn_type = objs[i].pn_type.ToString()
+ }
+ });
+ }
+ bool aa = DapperHelper.DoTransaction(list);
+ if (aa)
+ {
+ mes.code = "200";
+ mes.count = 0;
+ mes.Message = "淇敼鎿嶄綔鎴愬姛!";
+ mes.data = null;
+ }
+ else
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "淇敼鎿嶄綔澶辫触!";
+ mes.data = null;
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
+ #region[鐗╂枡娓呭崟缂栬緫鏄剧ず鍙婇瑙圿
+ public static ToMessage BoIventorySelectView(string bomid)
+ {
+ string sql = "";
+ var dynamicParams = new DynamicParameters();
+ try
+ {
+ //鍒ゆ柇鐗╂枡绫诲瀷鏄惁鏈夊叧鑱旂墿鏂�
+ sql = @"select materiel_code from TK_Wrk_Man where materiel_code in (select materiel_code from TBom_Main where id=@bomid ) and bom_id=@bomid";
+ dynamicParams.Add("@bomid", bomid);
+ var data0 = DapperHelper.selectdata(sql, dynamicParams);
+ if (data0.Rows.Count > 0)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "褰撳墠鐗╂枡娓呭崟宸茶宸ュ崟鍏宠仈浣跨敤,涓嶅厑璁镐慨鏀�!";
+ mes.data = null;
+ return mes;
+ }
+ //鑾峰彇Bom瀛愯〃鏁版嵁
+ sql = @"select A.seq,B.partcode,B.partname,B.partspec,B.uom_code,T.name as uom_name,
+ A.base_quantity,A.loss_quantity,A.total_quantity,A.pn_type
+ from TBom_Deta A
+ left join TMateriel_Info B on A.smateriel_code=B.partcode
+ left join TUom T on B.uom_code=T.code
+ where A.m_id=@bomid";
+ dynamicParams.Add("@bomid", bomid);
+ 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[鐗╂枡娓呭崟鍒犻櫎]
+ public static ToMessage DeleteBoIventory(string bomid)
+ {
+ var sql = "";
+ List<object> list = new List<object>();
+ var dynamicParams = new DynamicParameters();
+ try
+ {
+ list.Clear();
+ //鍒ゆ柇鐗╂枡绫诲瀷鏄惁鏈夊叧鑱旂墿鏂�
+ sql = @"select materiel_code from TK_Wrk_Man where materiel_code in (select materiel_code from TBom_Main where id=@bomid ) and bom_id=@bomid";
+ dynamicParams.Add("@bomid", bomid);
+ var data = DapperHelper.selectdata(sql, dynamicParams);
+ if (data.Rows.Count > 0)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "褰撳墠鐗╂枡娓呭崟宸茶宸ュ崟鍏宠仈浣跨敤,涓嶅厑璁稿垹闄�!";
+ mes.data = null;
+ }
+ else
+ {
+ //鍒犻櫎鐗╂枡娓呭崟瀛愯〃
+ sql = @"delete TBom_Deta where m_id=@bomid";
+ list.Add(new { str = sql, parm = new { bomid = bomid } });
+ //鍒犻櫎鐗╂枡娓呭崟涓昏〃
+ sql = @"delete TBom_Main where id=@bomid";
+ list.Add(new { str = sql, parm = new { bomid = bomid } });
+ bool aa = DapperHelper.DoTransaction(list);
+ if (aa)
+ {
+ mes.code = "200";
+ mes.count = 0;
+ mes.Message = "鍒犻櫎鎴愬姛!";
+ mes.data = null;
+ }
+ else
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "鍒犻櫎澶辫触!";
+ mes.data = null;
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
+
+
+
+ #region[宸ヨ壓璺嚎鏌ヨ]
+ public static ToMessage RouteSearch(string stu_torgcode, string stu_torgtypecode, string WorkShop, string routecode, string routename, string description, string createuser, int startNum, int endNum, string prop, string order)
+ {
+ var dynamicParams = new DynamicParameters();
+ string search = "";
+ try
+ {
+ if (WorkShop != "" && WorkShop != null)
+ {
+ search += "and A.torg_code=@workShop ";
+ dynamicParams.Add("@workShop", WorkShop);
+ }
+ else
+ {
+ switch (stu_torgtypecode)
+ {
+ case "":
+ search += "and T.description=@description ";
+ dynamicParams.Add("@description", "W");
+ break;
+ case "D":
+ search += "and L.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ }
+ }
if (routecode != "" && routecode != null)
{
search += "and A.code like '%'+@routecode+'%' ";
@@ -829,8 +1337,15 @@
}
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
- var sql = @"select A.id,A.code,A.name,A.description,A.enable,U.username as lm_user,A.lm_date from TFlw_Rout A
+ var sql = @"select A.id,T.org_code,T.org_name,A.code,A.name,A.description,A.enable,U.username as lm_user,A.lm_date,
+ ISNULL(STUFF((SELECT ',' + R.materiel_code
+ FROM TMateriel_Route R
+ WHERE CHARINDEX(',' + R.route_code + ',', ',' + A.code + ',') > 0
+ FOR XML PATH('')), 1, 1, ''),'') AS isrolepart
+ from TFlw_Rout A
left join TUser U on A.lm_user=U.usercode
+ left join TOrganization T on A.torg_code=T.org_code
+ left join TOrganization as L on T.parent_id=L.id
where A.is_delete<>'1' " + search;
var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
mes.code = "200";
@@ -858,7 +1373,7 @@
try
{
//鑾峰彇宸ヨ壓璺嚎淇℃伅
- sql = @"select code,name,description,enable
+ sql = @"select code,name,description,enable,torg_code
from TFlw_Rout
where code=@routecode and is_delete<>'1'";
dynamicParams.Add("@routecode", routecode);
@@ -870,6 +1385,7 @@
rout.name = data.Rows[i]["NAME"].ToString();
rout.enable = data.Rows[i]["ENABLE"].ToString();
rout.description = data.Rows[i]["DESCRIPTION"].ToString();
+ rout.wkshopcode = data.Rows[i]["torg_code"].ToString();
//鏍规嵁宸ヨ壓璺嚎缂栫爜鑾峰彇鍏宠仈鐨勫伐搴忎俊鎭�
sql = @"select A.seq,B.stepcode,B.stepname,B.enable from TFlw_Rtdt A
@@ -918,8 +1434,8 @@
return mes;
}
//鏂板宸ヨ壓璺嚎琛�
- sql = @"insert into TFlw_Rout(code,name,description,enable,lm_user,lm_date) values(@code,@name,@description,@enable,@lm_user,@lm_date)";
- list.Add(new { str = sql, parm = new { code = json.code, name = json.name, description = json.description, enable = json.enable, lm_user = username, lm_date = DateTime.Now.ToString() } });
+ sql = @"insert into TFlw_Rout(code,name,description,enable,lm_user,lm_date,torg_code) values(@code,@name,@description,@enable,@lm_user,@lm_date,@torg_code)";
+ list.Add(new { str = sql, parm = new { code = json.code, name = json.name, description = json.description, enable = json.enable, lm_user = username, lm_date = DateTime.Now.ToString(), torg_code = json.wkshopcode } });
for (int i = 0; i < json.Data.Rows.Count; i++)
{
string is_firststep = "N"; //鏄惁棣栭亾宸ュ簭
@@ -928,13 +1444,13 @@
{
is_firststep = "Y";
}
- else if (Convert.ToInt32(json.Data.Rows[i]["SEQ"].ToString()) == json.Data.Rows.Count) //鏄惁鏈亾宸ュ簭
+ if (Convert.ToInt32(json.Data.Rows[i]["SEQ"].ToString()) == json.Data.Rows.Count) //鏄惁鏈亾宸ュ簭
{
is_laststep = "Y";
}
//鏂板宸ヨ壓璺嚎鍏宠仈宸ュ簭琛�
- sql = @"insert TFlw_Rtdt (rout_code,seq,step_code,first_choke,last_choke,lm_user,lm_date) values(@rout_code,@seq,@step_code,@first_choke,@last_choke,@lm_user,@lm_date)";
- list.Add(new { str = sql, parm = new { rout_code = json.code, seq = Convert.ToInt32(json.Data.Rows[i]["SEQ"].ToString()), step_code = json.Data.Rows[i]["STEPCODE"].ToString(), first_choke = is_firststep, last_choke = is_laststep, lm_user = username, lm_date = DateTime.Now.ToString() } });
+ sql = @"insert TFlw_Rtdt (rout_code,seq,step_code,first_choke,last_choke,lm_user,lm_date,torg_code) values(@rout_code,@seq,@step_code,@first_choke,@last_choke,@lm_user,@lm_date,@torg_code)";
+ list.Add(new { str = sql, parm = new { rout_code = json.code, seq = Convert.ToInt32(json.Data.Rows[i]["SEQ"].ToString()), step_code = json.Data.Rows[i]["STEPCODE"].ToString(), first_choke = is_firststep, last_choke = is_laststep, lm_user = username, lm_date = DateTime.Now.ToString(), torg_code = json.wkshopcode } });
}
bool aa = DapperHelper.DoTransaction(list);
if (aa)
@@ -972,6 +1488,18 @@
var dynamicParams = new DynamicParameters();
try
{
+ //鍒ゆ柇宸ヨ壓璺矾绾挎槸鍚﹁瀛樿揣缁戝畾
+ sql = @"select * from TMateriel_Route where route_code=@routecode";
+ dynamicParams.Add("@routecode", routecode);
+ var data_0 = DapperHelper.selectdata(sql, dynamicParams);
+ if (data_0.Rows.Count > 0)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "瀛樿揣妗f宸插叧鑱斿伐鑹鸿矾绾匡紝涓嶅厑璁稿垹闄�!";
+ mes.data = null;
+ return mes;
+ }
//鍒ゆ柇宸ヨ壓璺嚎鏄惁琚伐鍗曞紩鐢�(琚紩鐢ㄥ垯涓嶈兘鍒犻櫎)
sql = @"select * from TK_Wrk_Man where route_code=@routecode";
dynamicParams.Add("@routecode", routecode);
@@ -982,6 +1510,7 @@
mes.count = 0;
mes.Message = "宸ヨ壓璺嚎宸茶宸ュ崟寮曠敤锛屼笉鍏佽鍒犻櫎!";
mes.data = null;
+ return mes;
}
else
{
@@ -995,6 +1524,7 @@
mes.count = 0;
mes.Message = "宸ヨ壓璺嚎宸茶缃妭鎷嶅伐浠凤紝璇峰厛鍒犻櫎璁剧疆!";
mes.data = null;
+ return mes;
}
else
{
@@ -1008,20 +1538,214 @@
sql = @"delete TMateriel_Route where route_code=@routecode";
list.Add(new { str = sql, parm = new { routecode = routecode } });
}
+ bool aa = DapperHelper.DoTransaction(list);
+ if (aa)
+ {
+ mes.code = "200";
+ mes.count = 0;
+ mes.Message = "鍒犻櫎鎴愬姛!";
+ mes.data = null;
+ return mes;
+ }
+ else
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = "鍒犻櫎澶辫触!";
+ mes.data = null;
+ return mes;
+ }
}
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = e.Message;
+ mes.data = null;
+ return mes;
+ }
+ return mes;
+ }
+ #endregion
+
+ #region[宸ヨ壓璺嚎鍏宠仈浜у搧鏌ヨ]
+ public static ToMessage RputeInventorySearch(string stu_torgcode, string stu_torgtypecode, string partcode, string partname, string partspec, string stocktypecode, string materialtypecode, string storehousecode)
+ {
+ var dynamicParams = new DynamicParameters();
+ string search0 = "";
+ string search = "";
+ string search1 = "";
+ try
+ {
+ switch (stu_torgtypecode)
+ {
+ case "":
+ break;
+ case "D":
+ search1 += "and L.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ case "W":
+ search1 += "and F.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ default:
+ break;
+ }
+ if (partcode != "" && partcode != null)
+ {
+ search += "and A.partcode like '%'+@partcode+'%' ";
+ dynamicParams.Add("@partcode", partcode);
+ }
+ if (partname != "" && partname != null)
+ {
+ search += "and A.partname like '%'+@partname+'%' ";
+ dynamicParams.Add("@partname", partname);
+ }
+ if (partspec != "" && partspec != null)
+ {
+ search += "and A.partspec like '%'+@partspec+'%' ";
+ dynamicParams.Add("@partspec", partspec);
+ }
+ if (stocktypecode != "" && stocktypecode != null)
+ {
+ search0 += " where code = @stocktypecode";
+ search += " and CTE.iparent_id<>'' and CTE.dict_type='CHLX'";
+ dynamicParams.Add("@stocktypecode", stocktypecode);
+ }
+ if (materialtypecode != "" && materialtypecode != null)
+ {
+ search += "and C.code=@materialtypecode ";
+ dynamicParams.Add("@materialtypecode", materialtypecode);
+ }
+ if (storehousecode != "" && storehousecode != null)
+ {
+ search += "and A.stck_code=@storehousecode ";
+ dynamicParams.Add("@storehousecode", storehousecode);
+ }
+ if (search == "")
+ {
+ search = "and 1=1 ";
+ }
+ // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+ var total = 0; //鎬绘潯鏁�
+ var sql0 = @"WITH CTE AS (
+ SELECT code,name,iparent_id,dict_type
+ FROM T_Dict " + search0 + " ";
+ sql0 += @"UNION ALL
+ SELECT t.code,t.name,t.iparent_id,t.dict_type
+ FROM T_Dict t
+ INNER JOIN CTE c ON c.code = t.iparent_id)
+ SELECT COUNT(1) as total FROM (
+ SELECT distinct A.id,A.partcode,A.partname,A.partspec,A.uom_code,B.name as uom_name,D.code as stocktypecode,D.name as stocktypename,D.iparent_id,
+ A.stck_code,T.name as stck_name,A.maxqty,A.minqty,U.username as lm_user,
+ A.lm_date,(case when isnull(M.materiel_code,'')='' then 'N' else 'Y' end) as proute_id,A.is_batchno,A.is_fifo,A.is_incheck,A.is_outcheck
+ FROM CTE
+ right join TMateriel_Info A on CTE.code=A.stocktype_code
+ left join TUom B on A.uom_code=B.code
+ left join T_Dict D on A.stocktype_code=D.code
+ left join T_Sec_Stck T on A.stck_code=T.code
+ left join TUser U on A.lm_user=U.usercode
+ left join (
+ select distinct materiel_code from TMateriel_Route M
+ left join TOrganization F on M.torg_code=F.org_code
+ left join TOrganization as L on F.parent_id=L.id
+ where 1=1 " + search1 + ") M on A.partcode=M.materiel_code where A.is_delete<>'1' " + search + ") AS Result";
+ var data0 = DapperHelper.selectdata(sql0, dynamicParams);
+ if (data0.Rows.Count > 0)
+ {
+ total = Convert.ToInt32(data0.Rows[0]["total"].ToString());
+ }
+ else
+ {
+ total = 0;
+ }
+
+ var sql = @"WITH CTE AS (
+ SELECT code,name,iparent_id,dict_type
+ FROM T_Dict " + search0 + " ";
+ sql += @"UNION ALL
+ SELECT t.code,t.name,t.iparent_id,t.dict_type
+ FROM T_Dict t
+ INNER JOIN CTE c ON c.code = t.iparent_id)
+ SELECT * FROM(SELECT *,ROW_NUMBER() OVER(ORDER BY lm_date desc) AS RowNum
+ FROM(
+ SELECT distinct A.id,A.partcode,A.partname,A.partspec,A.uom_code,B.name as uom_name,D.code as stocktypecode,D.name as stocktypename,D.iparent_id,
+ A.stck_code,T.name as stck_name,A.maxqty,A.minqty,U.username as lm_user,
+ A.lm_date,(case when isnull(M.materiel_code,'')='' then 'N' else 'Y' end) as proute_id,A.is_batchno,A.is_fifo,A.is_incheck,A.is_outcheck
+ FROM CTE
+ right join TMateriel_Info A on CTE.code=A.stocktype_code
+ left join TUom B on A.uom_code=B.code
+ left join T_Dict D on A.stocktype_code=D.code
+ left join T_Sec_Stck T on A.stck_code=T.code
+ left join TUser U on A.lm_user=U.usercode
+ left join (
+ select distinct materiel_code from TMateriel_Route M
+ left join TOrganization F on M.torg_code=F.org_code
+ left join TOrganization as L on F.parent_id=L.id
+ where 1=1 " + search1 + ") M on A.partcode=M.materiel_code where A.is_delete<>'1' " + search + " ) AS Temp) AS Result";
+ var data = DapperHelper.selectdata(sql, dynamicParams);
+ mes.code = "200";
+ mes.Message = "鏌ヨ鎴愬姛!";
+ mes.count = total;
+ mes.data = data;
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.Message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
+ #region[宸ヨ壓璺嚎鎵归噺鎸囧畾鐗╂枡淇濆瓨]
+ public static ToMessage RouteBatchPartSave(string stu_torgcode, string stu_torgtypecode, string username, string routecode, string[] rolebatchpartcode)
+ {
+ var sql = "";
+ var dynamicParams = new DynamicParameters();
+ List<object> list = new List<object>();
+ try
+ {
+ list.Clear();
+ //娓呴櫎宸ヨ壓璺嚎鍏宠仈鐨勭墿鏂欐暟鎹�
+ sql = @"delete TMateriel_Route where route_code=@route_code";
+ list.Add(new { str = sql, parm = new { route_code = routecode } });
+ //寰幆鍐欏叆宸ヨ壓璺嚎鐗╂枡鍏宠仈琛�
+ for (int i = 0; i < rolebatchpartcode.Length; i++)
+ {
+ sql = @"insert into TMateriel_Route(materiel_code,route_code,lm_user,lm_date,torg_code)
+ values(@materiel_code,@route_code,@lm_user,@lm_date,@torg_code)";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ materiel_code = rolebatchpartcode[i].ToString(),
+ route_code = routecode,
+ lm_user = username,
+ lm_date = DateTime.Now.ToString(),
+ torg_code = stu_torgcode
+ }
+ });
+ }
+
bool aa = DapperHelper.DoTransaction(list);
if (aa)
{
mes.code = "200";
mes.count = 0;
- mes.Message = "鍒犻櫎鎴愬姛!";
+ mes.Message = "鎿嶄綔鎴愬姛!";
mes.data = null;
}
else
{
mes.code = "300";
mes.count = 0;
- mes.Message = "鍒犻櫎澶辫触!";
+ mes.Message = "鎿嶄綔澶辫触!";
mes.data = null;
}
}
@@ -1040,15 +1764,18 @@
#region[宸ュ簭涓嬫媺鏌ヨ鎺ュ彛]
- public static ToMessage StepSelect()
+ public static ToMessage StepSelect(string WorkShop)
{
string sql = "";
+ var dynamicParams = new DynamicParameters();
try
{
//鑾峰彇宸ュ簭鏁版嵁
- sql = @"select stepcode,stepname from TStep where is_delete<>'1' and enable='Y'";
- var data = DapperHelper.selecttable(sql);
+ sql = @"select stepcode,stepname from TStep where is_delete<>'1' and enable='Y' and torg_code=@torg_code";
+ dynamicParams.Add("@torg_code", WorkShop);
+ var data = DapperHelper.selectdata(sql, dynamicParams);
mes.code = "200";
+ mes.count = data.Rows.Count;
mes.Message = "鏌ヨ鎴愬姛!";
mes.data = data;
}
@@ -1064,12 +1791,31 @@
#endregion
#region[宸ュ簭鏌ヨ]
- public static ToMessage StepSearch(string stepcode, string stepname, string enable, string steptypecode, string createuser, int startNum, int endNum, string prop, string order)
+ public static ToMessage StepSearch(string stu_torgcode, string stu_torgtypecode, string WorkShop, string stepcode, string stepname, string enable, string steptypecode, string createuser, int startNum, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
try
{
+ if (WorkShop != "" && WorkShop != null)
+ {
+ search += "and A.torg_code=@workShop ";
+ dynamicParams.Add("@workShop", WorkShop);
+ }
+ else
+ {
+ switch (stu_torgtypecode)
+ {
+ case "":
+ search += "and T.description=@description ";
+ dynamicParams.Add("@description", "W");
+ break;
+ case "D":
+ search += "and L.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ }
+ }
if (stepcode != "" && stepcode != null)
{
search += "and A.stepcode like '%'+@stepcode+'%' ";
@@ -1101,8 +1847,10 @@
}
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
- var sql = @"select A.id,A.stepcode,A.stepname,A.flwtype,A.enable,A.descr,U.username as lm_user,A.lm_date,A.is_eqp,A.is_defect from TStep A
+ var sql = @"select A.id,T.org_code,T.org_name,A.stepcode,A.stepname,A.flwtype,A.enable,A.descr,U.username as lm_user,A.lm_date,A.is_eqp,A.is_defect from TStep A
left join TUser U on A.lm_user=U.usercode
+ left join TOrganization T on A.torg_code=T.org_code
+ left join TOrganization as L on T.parent_id=L.id
where A.is_delete<>'1' " + search;
var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
mes.code = "200";
@@ -1122,7 +1870,7 @@
#endregion
#region[宸ュ簭鏂板缂栬緫]
- public static ToMessage AddUpdateStep(string stepid, string stepcode, string stepname, string steptypecode, string enable, string description, string username, string operType)
+ public static ToMessage AddUpdateStep(string stepid, string WorkShop, string stepcode, string stepname, string steptypecode, string enable, string description, string username, string operType)
{
var dynamicParams = new DynamicParameters();
List<object> list = new List<object>();
@@ -1142,8 +1890,8 @@
mes.data = null;
return mes;
}
- var sql = @"insert into TStep(stepcode,stepname,flwtype,enable,descr,lm_user,lm_date)
- values(@stepcode,@stepname,@steptypecode,@enable,@description,@username,@CreateDate)";
+ var sql = @"insert into TStep(stepcode,stepname,flwtype,enable,descr,lm_user,lm_date,torg_code)
+ values(@stepcode,@stepname,@steptypecode,@enable,@description,@username,@CreateDate,@torg_code)";
dynamicParams.Add("@stepcode", stepcode);
dynamicParams.Add("@stepname", stepname);
dynamicParams.Add("@steptypecode", steptypecode);
@@ -1151,6 +1899,7 @@
dynamicParams.Add("@description", description);
dynamicParams.Add("@username", username);
dynamicParams.Add("@CreateDate", DateTime.Now.ToString());
+ dynamicParams.Add("@torg_code", WorkShop);
int cont = DapperHelper.SQL(sql, dynamicParams);
if (cont > 0)
{
@@ -1195,7 +1944,7 @@
var data_10 = DapperHelper.selectdata(sql_10, dynamicParams);
if (data_10.Rows.Count > 0)
{
- if (data_10.Rows[0]["FLWTYPE"].ToString() != steptypecode)
+ if (data_10.Rows[0]["FLWTYPE"].ToString() != steptypecode)
{
//鍒犻櫎宸ュ簭鍏宠仈宸ヤ綔绔欒〃
sql_1 = @"delete TFlw_Rteqp where step_code=@stepcode";
@@ -1203,13 +1952,14 @@
//淇敼宸ュ簭琛ㄥ叧鑱斿伐浣滅珯鏍囪瘑
sql_1 = @"update TStep set is_eqp='N' where stepcode=@stepcode";
list.Add(new { str = sql_1, parm = new { stepcode = stepcode } });
+ //鍒犻櫎璁惧鑺傛媿宸ヤ环琛�
+ sql_1 = @"delete TPrteEqp_Stad where step_code=@stepcode";
+ list.Add(new { str = sql_1, parm = new { stepcode = stepcode } });
}
}
-
-
- sql_1 = @"update TStep set stepname=@stepname,flwtype=@steptypecode,enable=@enable,descr=@description,
+ sql_1 = @"update TStep set torg_code=@torg_code, stepname=@stepname,flwtype=@steptypecode,enable=@enable,descr=@description,
lm_user=@username,lm_date=@CreateDate where id=@stepid";
- list.Add(new { str = sql_1, parm = new { stepid = stepid, stepname= stepname, steptypecode = steptypecode, enable= enable, description = description, username= username, CreateDate= DateTime.Now.ToString() } });
+ list.Add(new { str = sql_1, parm = new { torg_code = WorkShop, stepid = stepid, stepname = stepname, steptypecode = steptypecode, enable = enable, description = description, username = username, CreateDate = DateTime.Now.ToString() } });
bool aa = DapperHelper.DoTransaction(list);
if (aa)
{
@@ -1271,7 +2021,7 @@
sql = @"delete TDefect_Step where step_code=@stepcode";
list.Add(new { str = sql, parm = new { stepcode = stepcode } });
//鍒犻櫎宸ュ簭
- sql = @"update TStep set is_delete='1' where stepcode=@stepcode";
+ sql = @"delete TStep where stepcode=@stepcode";
list.Add(new { str = sql, parm = new { stepcode = stepcode } });
bool aa = DapperHelper.DoTransaction(list);
if (aa)
@@ -1301,7 +2051,7 @@
#endregion
#region[宸ュ簭瀹氫箟鍏宠仈宸ヤ綔绔欐煡璇
- public static ToMessage StepAssociationEqp(string stepcode)
+ public static ToMessage StepAssociationEqp(string WorkShop, string stepcode)
{
string sql = "";
var dynamicParams = new DynamicParameters();
@@ -1313,16 +2063,17 @@
left join(
select distinct A.eqp_code,B.wksp_code from TFlw_Rteqp A
inner join TEqpInfo B on A.eqp_code=B.code
- where A.step_code=@stepcode and A.is_delete<>'1' and B.is_delete<>'1'
- ) B on T.org_code=B.wksp_code where T.description='W' and is_delete<>'1'
+ where A.step_code=@stepcode and A.is_delete<>'1' and B.is_delete<>'1' and B.enable='Y'
+ ) B on T.org_code=B.wksp_code where T.description='W' and is_delete<>'1' and T.org_code=@WorkShop
UNION ALL
- select distinct T.btype as wksp_code,(case T.btype when 'WX' then '澶栧崗渚涙柟' end ) as wksp_name,'W' as type,(case when B.btype is null then 'N' else 'Y' end) flag
+ select distinct T.type as wksp_code,(case when T.type='211' then '渚涘簲鍟�' when T.type='228' then '瀹㈡埛/渚涘簲鍟�' end ) as wksp_name,'W' as type,(case when B.type is null then 'N' else 'Y' end) flag
from TCustomer T
left join(
- select distinct A.eqp_code,B.btype from TFlw_Rteqp A
+ select distinct A.eqp_code,B.type from TFlw_Rteqp A
inner join TCustomer B on A.eqp_code=B.code
- where A.step_code=@stepcode and A.is_delete<>'1' and B.is_delete<>'1'
- ) B on T.btype=B.btype where T.btype='WX' and T.is_delete<>'1'";
+ where A.step_code=@stepcode and A.is_delete<>'1' and B.is_delete<>'1'
+ ) B on T.type=B.type where T.type in('211','228') and T.is_delete<>'1'"; //226(瀹㈡埛)
+ dynamicParams.Add("@WorkShop", WorkShop);
dynamicParams.Add("@stepcode", stepcode);
var data = DapperHelper.selectdata(sql, dynamicParams);
for (int i = 0; i < data.Rows.Count; i++)
@@ -1333,7 +2084,7 @@
rout.type = data.Rows[i]["TYPE"].ToString();
rout.flag = data.Rows[i]["FLAG"].ToString();
rout.children = new List<StepEqpCn>();
- if (rout.code == "WX") //澶栧崗渚涙柟
+ if (rout.code == "211" || rout.code == "228") //澶栧崗渚涙柟
{
//鏍规嵁澶栧崗渚涙柟鏍囪瘑缂栫爜鏌ユ壘澶栧崗渚涙柟淇℃伅(鍖呭惈宸插叧鑱旀爣璇�)
sql = @"select A.code,A.name,'W' as type,(case when B.eqp_code is null then 'N' else 'Y' end) flag
@@ -1341,8 +2092,9 @@
left join(
select distinct A.eqp_code from TFlw_Rteqp A
inner join TCustomer B on A.eqp_code=B.code
- where B.btype=@wxcode and A.is_delete<>'1' and B.is_delete<>'1'
- ) B on A.code=B.eqp_code where A.btype=@wxcode and A.is_delete<>'1'";
+ where A.step_code=@stepcode and B.type=@wxcode and A.is_delete<>'1' and B.is_delete<>'1'
+ ) B on A.code=B.eqp_code where A.type=@wxcode and A.is_delete<>'1'";
+ dynamicParams.Add("@stepcode", stepcode);
dynamicParams.Add("@wxcode", rout.code);
var data0 = DapperHelper.selectdata(sql, dynamicParams);
for (int k = 0; k < data0.Rows.Count; k++)
@@ -1364,7 +2116,7 @@
left join(
select distinct A.eqp_code from TFlw_Rteqp A
inner join TEqpInfo B on A.eqp_code=B.code
- where A.step_code=@stepcode and A.is_delete<>'1' and B.is_delete<>'1'
+ where A.step_code=@stepcode and A.is_delete<>'1' and B.is_delete<>'1' and B.enable='Y'
) B on A.code=B.eqp_code where A.wksp_code=@wkspcode and A.is_delete<>'1'";
dynamicParams.Add("@stepcode", stepcode);
dynamicParams.Add("@wkspcode", data.Rows[i]["WKSP_CODE"].ToString());
@@ -1397,7 +2149,7 @@
#endregion
#region [宸ュ簭瀹氫箟鍏宠仈宸ヤ綔绔欐彁浜
- public static ToMessage SaveStepAssociationEqp(string stepcode, string username, List<ObjectData> json)
+ public static ToMessage SaveStepAssociationEqp(string WorkShop, string stepcode, string username, List<ObjectData> json)
{
var sql = "";
List<object> list = new List<object>();
@@ -1412,16 +2164,23 @@
//鏍囪宸ュ簭琛ㄥ叧鑱斿伐浣滅珯鏍囪瘑
sql = @"update TStep set is_eqp='N' where stepcode=@stepcode";
list.Add(new { str = sql, parm = new { stepcode = stepcode } });
+ //鏍规嵁宸ュ簭娓呴櫎鑺傛媿宸ヤ环琛�
+ sql = @"delete TPrteEqp_Stad where step_code=@stepcode";
+ list.Add(new { str = sql, parm = new { stepcode = stepcode } });
}
else
{
//娓呴櫎宸ュ簭鍏宠仈宸ヤ綔绔欒〃鏁版嵁
sql = @"delete TFlw_Rteqp where step_code=@stepcode";
list.Add(new { str = sql, parm = new { stepcode = stepcode } });
+ //鏍规嵁宸ュ簭娓呴櫎鑺傛媿宸ヤ环琛�
+ sql = @"delete TPrteEqp_Stad where step_code=@stepcode";
+ list.Add(new { str = sql, parm = new { stepcode = stepcode } });
+
//寰幆鍐欏叆鐢ㄦ埛鍏宠仈瑙掕壊琛�
for (int i = 0; i < json.Count; i++)
{
- sql = @"insert into TFlw_Rteqp(eqp_code,step_code,style,lm_user,lm_date) values(@eqp_code,@stepcode,@style,@lm_user,@lm_date)";
+ sql = @"insert into TFlw_Rteqp(eqp_code,step_code,style,lm_user,lm_date,torg_code) values(@eqp_code,@stepcode,@style,@lm_user,@lm_date,@torg_code)";
list.Add(new
{
str = sql,
@@ -1431,7 +2190,8 @@
stepcode = stepcode,
style = json[i].name,
lm_user = username,
- lm_date = DateTime.Now.ToString()
+ lm_date = DateTime.Now.ToString(),
+ torg_code = WorkShop
}
});
}
@@ -1467,19 +2227,24 @@
#endregion
#region[宸ュ簭鍏宠仈缂洪櫡鏌ヨ]
- public static ToMessage StepAssociationDefect(string stepcode)
+ public static ToMessage StepAssociationDefect(string WorkShop, string stepcode)
{
string sql = "";
var dynamicParams = new DynamicParameters();
List<StepDefect> list = new List<StepDefect>();
try
{
+
//鑾峰彇宸ュ簭鍏宠仈缂洪櫡鏁版嵁(鍖呭惈鍏宠仈鏍囪瘑)
sql = @"select A.code,A.name,(case when B.defect_code is null then 'N' else 'Y' end) flag from TDefect A
left join(
- select distinct defect_code from TDefect_Step where step_code=@stepcode and is_delete<>'1'
+ select distinct defect_code from TDefect_Step A
+ left join TOrganization T on A.torg_code=T.org_code
+ left join TOrganization as L on T.parent_id=L.id
+ where step_code=@stepcode and A.is_delete<>'1' and T.org_code=@WorkShop
) B on A.code=B.defect_code";
dynamicParams.Add("@stepcode", stepcode);
+ dynamicParams.Add("@WorkShop", WorkShop);
var data = DapperHelper.selectdata(sql, dynamicParams);
for (int i = 0; i < data.Rows.Count; i++)
{
@@ -1505,7 +2270,7 @@
#endregion
#region[宸ュ簭鍏宠仈缂洪櫡鎻愪氦]
- public static ToMessage SaveStepAssociationDefect(string stepcode, string username, List<ObjectData> json)
+ public static ToMessage SaveStepAssociationDefect(string WorkShop, string stepcode, string username, List<ObjectData> json)
{
var sql = "";
List<object> list = new List<object>();
@@ -1529,7 +2294,7 @@
//寰幆鍐欏叆鐢ㄦ埛鍏宠仈瑙掕壊琛�
for (int i = 0; i < json.Count; i++)
{
- sql = @"insert into TDefect_Step(defect_code,step_code,lm_user,lm_date) values(@defect_code,@stepcode,@lm_user,@lm_date)";
+ sql = @"insert into TDefect_Step(defect_code,step_code,lm_user,lm_date,torg_code) values(@defect_code,@stepcode,@lm_user,@lm_date,@torg_code)";
list.Add(new
{
str = sql,
@@ -1538,7 +2303,8 @@
defect_code = json[i].code,
stepcode = stepcode,
lm_user = username,
- lm_date = DateTime.Now.ToString()
+ lm_date = DateTime.Now.ToString(),
+ torg_code = WorkShop
}
});
}
@@ -1575,15 +2341,20 @@
-
#region[浜у搧淇℃伅涓嬫媺妗嗘煡璇
public static ToMessage PartSelect()
{
string sql = "";
try
{
- //鑾峰彇璁惧绫诲瀷鏁版嵁
- sql = @"select partcode,partname,partspec from TMateriel_Info where is_delete<>'1' ";
+ //鑾峰彇鐗╂枡鏁版嵁
+ sql = @"select M.partcode,M.partname,M.partspec,M.uom_code,T.name as uom_name,
+ M.stocktype_code,D.name as stocktype_name,M.stck_code,S.name as stck_name
+ from TMateriel_Info M
+ left join TUom T on M.uom_code=T.code
+ left join T_Dict D on M.stocktype_code=D.code
+ left join T_Sec_Stck S on M.stck_code=S.code
+ where M.is_delete<>'1' ";
var data = DapperHelper.selecttable(sql);
mes.code = "200";
mes.Message = "鏌ヨ鎴愬姛!";
@@ -1601,17 +2372,35 @@
#endregion
#region[浜у搧缂栫爜鏌ユ壘宸ヨ壓璺嚎涓嬫媺妗哴
- public static ToMessage PartSelectRpute(string partcode)
+ public static ToMessage PartSelectRpute(string stu_torgcode, string stu_torgtypecode, string partcode)
{
string sql = "";
+ string search = "";
var dynamicParams = new DynamicParameters();
try
{
+ switch (stu_torgtypecode)
+ {
+ case "":
+ break;
+ case "D":
+ search += "and L.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ case "W":
+ search += "and T.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ default:
+ break;
+ }
//閫氳繃浜у搧缂栫爜鏌ユ壘鍏宠仈鐨勫伐鑹鸿矾绾夸俊鎭�
sql = @"select A.route_code,B.name as route_name
from TMateriel_Route A
inner join TFlw_Rout B on A.route_code=B.code
- where A.materiel_code=@partcode and B.is_delete<>'1' and A.is_delete<>'1'";
+ left join TOrganization T on A.torg_code=T.org_code
+ left join TOrganization as L on T.parent_id=L.id
+ where A.materiel_code=@partcode and B.is_delete<>'1' and A.is_delete<>'1' " + search;
dynamicParams.Add("@partcode", partcode);
var data = DapperHelper.selectdata(sql, dynamicParams);
mes.code = "200";
@@ -1637,12 +2426,12 @@
try
{
//閫氳繃浜у搧缂栫爜鏌ユ壘鍏宠仈鐨勫伐鑹鸿矾绾夸俊鎭�
- sql = @"select B.stepcode as code,B.stepname as name
+ sql = @"select B.stepcode as code,B.stepname as name,B.flwtype as flag
from TFlw_Rtdt A
inner join TStep B on A.step_code=B.stepcode
where A.rout_code=@routecode and B.is_delete<>'1' and A.is_delete<>'1'";
dynamicParams.Add("@routecode", routecode);
- var data = DapperHelper.select<ObjectData>(sql, dynamicParams);
+ var data = DapperHelper.select<StepDefect>(sql, dynamicParams);
mes.code = "200";
mes.Message = "鏌ヨ鎴愬姛!";
mes.data = data;
@@ -1687,29 +2476,81 @@
#endregion
#region[鏍规嵁宸ュ簭绾跨紪鐮佹煡鎵惧叧鑱旇澶囬泦鍚圿
- public static ToMessage StepSelectEqpList(string partcode, string routecode, string stepcode, int startNum, int endNum, string prop, string order)
+ public static ToMessage StepSelectEqpList(string partcode, string routecode, string stepcode, string steptype, int startNum, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
- string search = "";
+ string search = "", sql = "";
+ int total = 0;
try
{
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
- var total = 0; //鎬绘潯鏁�
- var sql = @"select B.code as eqpcode,B.name as eqpname,B.wksp_code,T.org_name as wksp_name,A.eqp_value,A.stand_value,A.cavity_qty,A.unprice
+ if (steptype == "Z") //鑷埗宸ュ簭
+ {
+ total = 0; //鎬绘潯鏁�
+ //sql = @"select B.code as eqpcode,B.name as eqpname,B.wksp_code,T.org_name as wksp_name,A.eqp_value,A.stand_value,A.cavity_qty,A.unprice
+ // from (
+ // select materiel_code, eqp_code,eqp_value,stand_value,cavity_qty,unprice from TPrteEqp_Stad
+ // where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode
+ // union all
+ // select @partcode as materiel_code,eqp_code,'0' as eqp_value,'0' as stand_value,'0' as cavity_qty,'0' as unprice
+ // from TFlw_Rteqp where step_code=@stepcode and style='E' and @partcode+eqp_code+step_code not in(select materiel_code+eqp_code+step_code from TPrteEqp_Stad)
+ // ) A
+ // left join TEqpInfo B on A.eqp_code=B.code
+ // left join TOrganization T on B.wksp_code=T.org_code
+ // left join TMateriel_Info C on A.materiel_code=C.partcode
+ // where B.is_delete<>'1' and T.is_delete<>'1' and C.is_delete<>'1' ";
+
+ sql = @"select B.code as eqpcode,B.name as eqpname,B.wksp_code,T.org_name as wksp_name,A.eqp_value,A.stand_value,A.cavity_qty,A.unprice
from (
select materiel_code, eqp_code,eqp_value,stand_value,cavity_qty,unprice from TPrteEqp_Stad
where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode
union all
- select @partcode as materiel_code,eqp_code,'0' as eqp_value,'0' as stand_value,'0' as cavity_qty,'0' as unprice
- from TFlw_Rteqp where step_code=@stepcode and style='E' and @partcode+eqp_code+step_code not in(select materiel_code+eqp_code+step_code from TPrteEqp_Stad)
+ select @partcode as materiel_code,C.eqp_code,'0' as eqp_value,'0' as stand_value,'0' as cavity_qty,'0' as unprice
+ from TFlw_Rout A
+ inner join TFlw_Rtdt B on A.code=B.rout_code
+ left join TFlw_Rteqp C on B.step_code=C.step_code
+ where A.code=@routecode and B.step_code=@stepcode and style='E' and @partcode+A.code+C.eqp_code+B.step_code
+ not in(select materiel_code+route_code+eqp_code+step_code from TPrteEqp_Stad where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode)
) A
left join TEqpInfo B on A.eqp_code=B.code
left join TOrganization T on B.wksp_code=T.org_code
left join TMateriel_Info C on A.materiel_code=C.partcode
- where B.is_delete<>'1' and T.is_delete<>'1' and C.is_delete<>'1' ";
- dynamicParams.Add("@partcode", partcode);
- dynamicParams.Add("@routecode", routecode);
- dynamicParams.Add("@stepcode", stepcode);
+ where B.is_delete<>'1' and T.is_delete<>'1' and C.is_delete<>'1'";
+ dynamicParams.Add("@partcode", partcode);
+ dynamicParams.Add("@routecode", routecode);
+ dynamicParams.Add("@stepcode", stepcode);
+ }
+ else //澶栧崗宸ュ簭
+ {
+ total = 0; //鎬绘潯鏁�
+ //sql = @"select B.code as eqpcode,B.name as eqpname,'' as wksp_code,'' as wksp_name,A.eqp_value,A.stand_value,A.cavity_qty,A.unprice
+ // from (
+ // select materiel_code, eqp_code,eqp_value,stand_value,cavity_qty,unprice from TPrteEqp_Stad
+ // where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode
+ // union all
+ // select @partcode as materiel_code,eqp_code,'0' as eqp_value,'0' as stand_value,'0' as cavity_qty,'0' as unprice
+ // from TFlw_Rteqp where step_code=@stepcode and style='W' and @partcode+eqp_code+step_code not in(select materiel_code+eqp_code+step_code from TPrteEqp_Stad)
+ // ) A
+ // left join TCustomer B on A.eqp_code=B.code
+ // where B.is_delete<>'1'";
+ sql = @"select B.code as eqpcode,B.name as eqpname,'' as wksp_code,'' as wksp_name,A.eqp_value,A.stand_value,A.cavity_qty,A.unprice
+ from (
+ select materiel_code, eqp_code,eqp_value,stand_value,cavity_qty,unprice from TPrteEqp_Stad
+ where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode
+ union all
+ select @partcode as materiel_code,C.eqp_code,'0' as eqp_value,'0' as stand_value,'0' as cavity_qty,'0' as unprice
+ from TFlw_Rout A
+ inner join TFlw_Rtdt B on A.code=B.rout_code
+ left join TFlw_Rteqp C on B.step_code=C.step_code
+ where A.code=@routecode and B.step_code=@stepcode and style='W' and @partcode+A.code+C.eqp_code+B.step_code
+ not in(select materiel_code+route_code+eqp_code+step_code from TPrteEqp_Stad where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode)
+ ) A
+ left join TCustomer B on A.eqp_code=B.code
+ where B.is_delete<>'1'";
+ dynamicParams.Add("@partcode", partcode);
+ dynamicParams.Add("@routecode", routecode);
+ dynamicParams.Add("@stepcode", stepcode);
+ }
var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
mes.code = "200";
mes.Message = "鏌ヨ鎴愬姛!";
@@ -1728,12 +2569,28 @@
#endregion
#region[鑺傛媿宸ヤ环鏌ヨ]
- public static ToMessage BeatRateSearch(string partcode, string routecode, string stepcode, string eqpcode, int startNum, int endNum, string prop, string order)
+ public static ToMessage BeatRateSearch(string stu_torgcode, string stu_torgtypecode, string partcode, string routecode, string stepcode, string eqpcode, int startNum, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
+ string search1 = "";
try
{
+ switch (stu_torgtypecode)
+ {
+ case "":
+ break;
+ case "D":
+ search1 += "and L.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ case "W":
+ search1 += "and F.org_code=@stu_torgcode ";
+ dynamicParams.Add("@stu_torgcode", stu_torgcode);
+ break;
+ default:
+ break;
+ }
if (partcode != "" && partcode != null)
{
search += "and A.materiel_code=@partcode ";
@@ -1751,7 +2608,7 @@
}
if (eqpcode != "" && eqpcode != null)
{
- search += "and A.eqp_code=@eqpcode";
+ search += "and A.eqp_code=@eqpcode ";
dynamicParams.Add("@eqpcode", eqpcode);
}
if (search == "")
@@ -1768,8 +2625,22 @@
left join TFlw_Rout C on A.route_code=C.code
left join TStep D on A.step_code=D.stepcode
left join TEqpInfo E on A.eqp_code=E.code
- left join TOrganization F on E.wksp_code=F.org_code
- where B.is_delete<>'1' and C.is_delete<>'1' and D.is_delete<>'1' and E.is_delete<>'1' and F.is_delete<>'1' " + search;
+ left join TOrganization F on C.torg_code=F.org_code
+ left join TOrganization L on F.parent_id=L.id
+ where B.is_delete<>'1' and C.is_delete<>'1' and D.is_delete<>'1' and E.is_delete<>'1' and F.is_delete<>'1' " + search1 + search;
+ sql += @"union all
+ select A.materiel_code as partcode,B.partname,B.partspec,A.route_code,C.name as route_name,
+ D.stepcode,D.stepname,A.eqp_code,E.name as eqp_name,''as wksp_code,'' as wksp_name,
+ A.eqp_value,A.stand_value,A.cavity_qty,A.unprice
+ from TPrteEqp_Stad A
+ left join TMateriel_Info B on A.materiel_code=B.partcode
+ left join TFlw_Rout C on A.route_code=C.code
+ left join TStep D on A.step_code=D.stepcode
+ left join TCustomer E on A.eqp_code=E.code
+ left join TOrganization F on C.torg_code=F.org_code
+ left join TOrganization L on F.parent_id=L.id
+ where B.is_delete<>'1' and C.is_delete<>'1' and D.is_delete<>'1' and E.is_delete<>'1' " + search;
+
var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
mes.code = "200";
mes.Message = "鏌ヨ鎴愬姛!";
@@ -1796,7 +2667,7 @@
try
{
list.Clear();
- //褰撳墠宸ュ簭鏄惁鍏宠仈宸ヨ壓璺嚎
+ //鏌ヨ鑺傛媿宸ヤ环琛�,褰撳墠浜у搧銆佸伐鑹鸿矾绾裤�佸伐搴忋�佽澶囨槸鍚﹁缃妭鎷嶅伐浠�
sql = @"select * from TPrteEqp_Stad
where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode and eqp_code=@eqpcode";
dynamicParams.Add("@partcode", partcode);
@@ -1849,6 +2720,7 @@
}
});
}
+
bool aa = DapperHelper.DoTransaction(list);
if (aa)
{
--
Gitblit v1.9.3