From 6ed9adbcf4011e7b5cc09eb7564b5c116daf9c67 Mon Sep 17 00:00:00 2001
From: cnf <3283105747@qq.com>
Date: 星期四, 25 十二月 2025 10:29:26 +0800
Subject: [PATCH] 增加自动退补料(未做完)
---
WebApi/Gs.BaseInfo/Services/MesItemsManager.cs | 159 +++++++++++++++++++++-------------------------------
1 files changed, 65 insertions(+), 94 deletions(-)
diff --git a/WebApi/Gs.BaseInfo/Services/MesItemsManager.cs b/WebApi/Gs.BaseInfo/Services/MesItemsManager.cs
index d84b0a7..dd4f9b6 100644
--- a/WebApi/Gs.BaseInfo/Services/MesItemsManager.cs
+++ b/WebApi/Gs.BaseInfo/Services/MesItemsManager.cs
@@ -1,8 +1,4 @@
-锘縰sing System.Data;
-using System.Data.SqlClient;
-using System.Dynamic;
-using System.Text;
-using Gs.BaseInfo.Models;
+锘縰sing Gs.BaseInfo.Models;
using Gs.Entity.BaseInfo;
using Gs.Entity.Sys;
using Gs.Toolbox;
@@ -12,6 +8,10 @@
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
+using System.Data;
+using System.Data.SqlClient;
+using System.Dynamic;
+using System.Text;
using SqlDataAdapter = System.Data.SqlClient.SqlDataAdapter;
namespace Gs.BaseInfo.Services;
@@ -42,25 +42,24 @@
try
{
var _sbWhere = new StringBuilder(" 1=1" + query.keyWhere);
- var _sbBy =
- new StringBuilder(query.sortName + " " + query.sortOrder);
+ var _sbBy = new StringBuilder(query.sortName + " " + query.sortOrder);
var totalCount = 0;
var itemsList = Db
.Queryable<MesItems, SysOrganization, MesUnit, MesUnit, MesUnit,
- MesUnit, MesUnit, MesUnit, MesDepots, MesItemType>((a, org,
- c, d, e, f, g, h, m, n) => new object[]
- {
- JoinType.Left, a.FSubsidiary == org.Fid,
- JoinType.Left, a.ItemUnit == c.Id.ToString(),
- JoinType.Left, a.Fpurchaseunitid == d.Id.ToString(),
- JoinType.Left, a.Saleunit == e.Id.ToString(),
- JoinType.Left, a.Storeunit == f.Id.ToString(),
- JoinType.Left, a.SubconUnit == g.Id.ToString(),
- JoinType.Left, a.ProduceUnit == h.Id.ToString(),
- JoinType.Left, a.DepotCode == m.DepotId.ToString(),
- JoinType.Left, a.Fmaterialgroup == n.Id.ToString()
- })
- .Select((a, org, c, d, e, f, g, h, m, n) => new MesItems
+ MesUnit, MesUnit, MesUnit, MesDepots, MesItemType>(
+ (a, org, c, d, e, f, g, h, m,n) => new object[]
+ {
+ JoinType.Left, a.FSubsidiary == org.Fid,
+ JoinType.Left, a.ItemUnit == c.Id.ToString(),
+ JoinType.Left, a.Fpurchaseunitid == d.Id.ToString(),
+ JoinType.Left, a.Saleunit == e.Id.ToString(),
+ JoinType.Left, a.Storeunit == f.Id.ToString(),
+ JoinType.Left, a.SubconUnit == g.Id.ToString(),
+ JoinType.Left, a.ProduceUnit == h.Id.ToString(),
+ JoinType.Left, a.DepotCode == m.DepotId.ToString(),
+ JoinType.Left, a.Fmaterialgroup == n.Id.ToString()
+ })
+ .Select((a, org, c, d, e, f, g, h, m,n) => new MesItems
{
chkInt = false,
FSubsidiary = "(" + org.FNumber + ")" + org.Name,
@@ -71,21 +70,15 @@
SubconUnit = g.Fname,
ProduceUnit = h.Fname,
DepotCode = m.DepotName,
- Fmaterialgroup = n.Tname,
- Fforbidstatus = a.Fforbidstatus + ":" +
- (a.Fforbidstatus == "A" ? "姝e父" : "绂佺敤"),
+ Fmaterialgroup=n.Tname,
+ Fforbidstatus = a.Fforbidstatus + ":" + (a.Fforbidstatus == "A" ? "姝e父" : "绂佺敤"),
DataType = a.DataType + ":"
- + SqlFunc.IF(a.DataType == "Z")
- .Return("鏆傚瓨")
- .ElseIF(a.DataType == "A")
- .Return("鍒涘缓")
- .ElseIF(a.DataType == "B")
- .Return("瀹℃牳涓�")
- .ElseIF(a.DataType == "C")
- .Return("宸插鏍�")
- .ElseIF(a.DataType == "D")
- .Return("閲嶆柊瀹℃牳")
- .End(a.DataType)
+ + SqlFunc.IF(a.DataType == "Z").Return("鏆傚瓨")
+ .ElseIF(a.DataType == "A").Return("鍒涘缓")
+ .ElseIF(a.DataType == "B").Return("瀹℃牳涓�")
+ .ElseIF(a.DataType == "C").Return("宸插鏍�")
+ .ElseIF(a.DataType == "D").Return("閲嶆柊瀹℃牳")
+ .End(a.DataType)
}, true)
.Where(_sbWhere.ToString())
.OrderBy(_sbBy.ToString())
@@ -117,13 +110,12 @@
dynamic m = new ExpandoObject();
SqlParameter[] parameters =
{
- new("@inMainGuid", guid)
+ new("@inMainGuid", guid),
};
var dset = new DataSet();
try
{
- dset = DbHelperSQL.RunProcedure("[prc_item_detail]", parameters,
- "0");
+ dset = DbHelperSQL.RunProcedure("[prc_item_detail]", parameters, "0");
if (dset != null && dset.Tables.Count > 0 &&
dset.Tables[0].Rows.Count > 0)
{
@@ -143,6 +135,7 @@
}
/// <summary>
+ ///
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
@@ -155,30 +148,25 @@
SqlParameter[] parameters =
{
new("@inItemNo", itemNo),
- new("@inOrgId", orgId)
+ new("@inOrgId", orgId),
};
var dset = new DataSet();
try
{
- dset = DbHelperSQL.RunProcedure("[prc_item_detailByOrg]",
- parameters, "0");
+ dset = DbHelperSQL.RunProcedure("[prc_item_detailByOrg]", parameters, "0");
if (dset != null && dset.Tables.Count > 0 &&
dset.Tables[0].Rows.Count > 0)
{
var dr = dset.Tables[0].Rows[0];
m = dr.RowToDynamic();
- return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success,
- "璇诲彇鎴愬姛锛�");
+ return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "璇诲彇鎴愬姛锛�");
}
-
- return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default,
- "璇诲彇澶辫触锛屾壘涓嶅埌璇ョ墿鏂欙紒");
+ return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "璇诲彇澶辫触锛屾壘涓嶅埌璇ョ墿鏂欙紒");
}
catch (Exception ex)
{
LogHelper.Debug(ToString(), ex.Message);
- return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default,
- "璇诲彇澶辫触锛�" + ex.Message);
+ return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "璇诲彇澶辫触锛�" + ex.Message.ToString());
}
}
@@ -196,7 +184,7 @@
string sortName = model.sortName;
string keyWhere = model.keyWhere;
string keyType = model.keyType;
- string keyWord = model.keyWord; //杩欎釜pguid锛屼綔涓烘柟妗堢殑涓婚敭
+ string keyWord = model.keyWord; //杩欎釜pguid锛屼綔涓烘柟妗堢殑涓婚敭
var dset = new DataSet();
try
{
@@ -213,8 +201,7 @@
new("@inSortName", sortName),
new("@inSortOrder", ""),
new("@inQueryWhere", keyWhere),
- new("@inP1",
- keyType), //褰撲负锛氭楠岄」鐩紝iqc,ipqc,fqc鏃讹紝鍏嶆鏃� 鐗瑰埆鍔犱笂杩囨护鏉′欢
+ new("@inP1",keyType),//褰撲负锛氭楠岄」鐩紝iqc,ipqc,fqc鏃讹紝鍏嶆鏃� 鐗瑰埆鍔犱笂杩囨护鏉′欢
new("@inP2", keyWord) //杩欎釜pguid锛屼綔涓烘柟妗堢殑涓婚敭
};
foreach (var parameter in parameters)
@@ -224,15 +211,13 @@
dt.Fill(dset, "0");
}
}
-
conn.Close();
}
}
catch (Exception ex)
{
LogHelper.Debug(ToString(), "GetListPage error锛�" + ex.Message);
- return ReturnDto<PageList<dynamic>>.QuickReturn(
- default(PageList<dynamic>), ReturnCode.Exception, "璇诲彇澶辫触");
+ return ReturnDto<PageList<dynamic>>.QuickReturn(default(PageList<dynamic>), ReturnCode.Exception, "璇诲彇澶辫触");
}
var _pglist = new PageList<dynamic>
@@ -260,6 +245,7 @@
return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist,
ReturnCode.Success, "璇诲彇鎴愬姛");
}
+
/// <summary>
@@ -272,36 +258,29 @@
{
var currentPage = model.currentPage;
var everyPageSize = model.everyPageSize;
- var sortName = string.IsNullOrEmpty(model.sortName)
- ? "a.staff_no"
- : model.sortName;
+ var sortName = string.IsNullOrEmpty(model.sortName) ? "a.staff_no" : model.sortName;
var keyWhere = model.keyWhere;
- var keyType = model.keyType;
- var sbJoin = new StringBuilder();
+ string keyType = model.keyType;
+ System.Text.StringBuilder sbJoin = new StringBuilder();
sbJoin.Append(" FROM MES_ITEMS [a]");
- sbJoin.Append(
- " Left JOIN [SYS_ORGANIZATION] [Org] ON ( [a].[FSubsidiary] = [Org].[FID] )");
- sbJoin.Append(" left join SYS_USER_BIND b on (b.userGuid='" + keyType +
- "' and b.aboutGuid=a.item_id and b.fType='鐗╂枡鍒嗗尯')");
+ sbJoin.Append(" Left JOIN [SYS_ORGANIZATION] [Org] ON ( [a].[FSubsidiary] = [Org].[FID] )");
+ sbJoin.Append(" left join SYS_USER_BIND b on (b.userGuid='" + keyType + "' and b.aboutGuid=a.item_id and b.fType='鐗╂枡鍒嗗尯')");
sbJoin.Append(" where 1=1 ");
sbJoin.Append(keyWhere);
var sbSql = new StringBuilder();
sbSql.Append(" SELECT * FROM ");
- sbSql.Append(
- " (SELECT N'(' +[Org].[FNumber] + N')' +[Org].[NAME] AS [FSubsidiary2]");
- sbSql.Append(
- " ,a.item_id,a.item_no,a.item_name,a.item_model,a.guid,ROW_NUMBER() OVER(ORDER BY org.FNumber asc ,a.item_no asc) AS RowIndex ");
+ sbSql.Append(" (SELECT N'(' +[Org].[FNumber] + N')' +[Org].[NAME] AS [FSubsidiary2]");
+ sbSql.Append(" ,a.item_id,a.item_no,a.item_name,a.item_model,a.guid,ROW_NUMBER() OVER(ORDER BY org.FNumber asc ,a.item_no asc) AS RowIndex ");
//濡傛灉鏃犲叧閿瓧锛屾棤闇�鎵炬煡缁戝畾
if (string.IsNullOrEmpty(keyType))
+ {
sbSql.Append(",cast(0 as bit) as chkInt");
+ }
else
- sbSql.Append(
- ",cast( (case when b.guid is null then 0 else 1 end) as bit) as chkInt ");
+ sbSql.Append(",cast( (case when b.guid is null then 0 else 1 end) as bit) as chkInt ");
sbSql.Append(sbJoin);
sbSql.Append(") T");
- sbSql.Append(" where T.rowindex>(" + currentPage + "-1)*" +
- everyPageSize + " and T.rowindex<=" + currentPage + "*" +
- everyPageSize);
+ sbSql.Append(" where T.rowindex>(" + currentPage + "-1)*" + everyPageSize + " and T.rowindex<=" + currentPage + "*" + everyPageSize);
sbSql.Append(" select count(1) as intTotal ");
sbSql.Append(sbJoin);
var dset = new DataSet();
@@ -312,10 +291,8 @@
catch (Exception ex)
{
LogHelper.Debug(ToString(), "GetListPage2 error锛�" + ex.Message);
- return ReturnDto<PageList<dynamic>>.QuickReturn(
- default(PageList<dynamic>), ReturnCode.Exception, "璇诲彇澶辫触");
+ return ReturnDto<PageList<dynamic>>.QuickReturn(default(PageList<dynamic>), ReturnCode.Exception, "璇诲彇澶辫触");
}
-
var _pglist = new PageList<dynamic>
{
total = 0,
@@ -326,8 +303,7 @@
if (dset != null && dset.Tables.Count > 0 &&
dset.Tables[0].Rows.Count > 0) //鏈夋暟鎹�
{
- var intTotal =
- int.Parse(dset.Tables[1].Rows[0]["intTotal"].ToString());
+ var intTotal = int.Parse(dset.Tables[1].Rows[0]["intTotal"].ToString());
var pages = intTotal % everyPageSize != 0
? intTotal / everyPageSize + 1
: intTotal / everyPageSize;
@@ -337,14 +313,13 @@
var _dy = dset.Tables[0].TableToDynamicList();
_pglist.list = _dy;
}
-
return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist,
ReturnCode.Success, "璇诲彇鎴愬姛");
}
/// <summary>
- /// 鎵归噺璁剧疆鎻愬墠鍒拌揣鏃ユ湡
+ /// 鎵归噺璁剧疆鎻愬墠鍒拌揣鏃ユ湡
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
@@ -354,29 +329,25 @@
string guidList = model.guidList;
string bz10 = model.bz10;
string percent = model.percent;
- var rtnInt = (int)ReturnCode.Default;
+ int rtnInt = (int)ReturnCode.Default;
try
{
- var strSql = new StringBuilder();
- strSql.Append(" update MES_ITEMS set bz10=" + bz10.Trim() + " ," +
- "loss_percent = " + percent.Trim() + " ");
- strSql.Append(" where guid in (select line from dbo.fn_split('" +
- guidList + "',','))");
- var rows = DbHelperSQL.ExecuteSql(strSql.ToString());
+ StringBuilder strSql = new StringBuilder();
+ strSql.Append(" update MES_ITEMS set bz10=" + bz10.Trim() + " ," + "loss_percent = " + percent.Trim() + " ");
+ strSql.Append(" where guid in (select line from dbo.fn_split('" + guidList + "',','))");
+ int rows = DbHelperSQL.ExecuteSql(strSql.ToString());
rtnInt = rows;
}
catch (Exception ex)
{
- LogHelper.Debug(ToString(), "SetDays error锛�" + ex.Message);
+ LogHelper.Debug(this.ToString(), "SetDays error锛�" + ex.Message);
rtnInt = (int)ReturnCode.Exception;
- return ReturnDto<int>.QuickReturn(default(int?),
- ReturnCode.Exception, "鎿嶄綔澶辫触锛�" + ex.Message);
+ return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "鎿嶄綔澶辫触锛�" + ex.Message);
}
-
if (rtnInt > 0)
- return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Success,
- "鎿嶄綔鎴愬姛锛�");
- return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception,
- "鎿嶄綔澶辫触锛岃閲嶈瘯锛�");
+ return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Success, "鎿嶄綔鎴愬姛锛�");
+ else
+ return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "鎿嶄綔澶辫触锛岃閲嶈瘯锛�");
}
+
}
\ No newline at end of file
--
Gitblit v1.9.3