From 2b4019cdae3d1abbd47bb2524a620e23cd8806e3 Mon Sep 17 00:00:00 2001
From: cnf <3200815559@qq.com>
Date: 星期六, 23 八月 2025 16:17:54 +0800
Subject: [PATCH] 1增加了通用控件选择库位 2增加撤回报工,自动入库维护功能
---
WebApi/Gs.Warehouse/Services/MesAutoRkController.cs | 352 ++++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 231 insertions(+), 121 deletions(-)
diff --git a/WebApi/Gs.Warehouse/Services/MesAutoRkController.cs b/WebApi/Gs.Warehouse/Services/MesAutoRkController.cs
index f83ea1c..0c0f480 100644
--- a/WebApi/Gs.Warehouse/Services/MesAutoRkController.cs
+++ b/WebApi/Gs.Warehouse/Services/MesAutoRkController.cs
@@ -1,4 +1,5 @@
锘縰sing System.Data;
+using System.Data.SqlClient;
using System.Dynamic;
using System.Text;
using Gs.Toolbox;
@@ -27,138 +28,174 @@
#region
/// <summary>
- /// 璇诲彇鍒楄〃锛屾敮鎸佸垎椤�
+ /// 璇诲彇鍒楄〃锛屾敮鎸佸垎椤�
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
[RequestMethod(RequestMethods.POST)]
- public ReturnDto<PageList<dynamic>> GetListPage([FromBody] PageQuery model)
+ public ReturnDto<PageList<dynamic>> GetListPage([FromBody] dynamic model)
{
int currentPage = model.currentPage;
int everyPageSize = model.everyPageSize;
- string sortName = string.IsNullOrEmpty(model.sortName) ? "org.FNumber" : model.sortName;
+ string sortName = model.sortName;
string keyWhere = model.keyWhere;
- System.Text.StringBuilder _w = new StringBuilder();
- _w.Append(" from [dbo].[MES_BACK_FLASH] a");
- _w.Append(" left join MES_ITEMS i on a.ItemID=i.item_id ");
- _w.Append(" left join MES_DEPOTS d on a.depotId=d.depot_id ");
- _w.Append(" left join SYS_DEPARTMENT m on a.departmentId=m.departmentid ");
- _w.Append(" left join SYS_ORGANIZATION org on i.FSubsidiary=org.FID");
- _w.Append(" where 1=1 " + keyWhere);
- System.Text.StringBuilder sbSql = new StringBuilder();
- sbSql.Append("select * from ");
- sbSql.Append("( ");
- sbSql.Append("select top 100000 ROW_NUMBER() over(order by " + sortName + " " + model.sortOrder + ") as rowIndex,a.*,'('+org.FNumber+')'+org.NAME as orgName ");
- sbSql.Append(",i.item_no as itemNo,i.item_name as itemName,i.item_model as itemModel,d.depot_name as depotName,m.departmentname as bmName");
- sbSql.Append(_w);
- sbSql.Append(") as T ");
- sbSql.Append(" where T.rowindex>(" + currentPage + "-1)*" + everyPageSize + " and T.rowindex<=" + currentPage + "*" + everyPageSize);
- sbSql.Append(" order by rowindex asc ");
- sbSql.Append(" select count(1) as intTotal ");
- sbSql.Append(_w);
- DataSet dset = new DataSet();
- try
+ SqlParameter[] parameters =
{
- dset = Gs.Toolbox.DbHelperSQL.Query(sbSql.ToString());
- }
- catch (Exception ex)
- {
- Gs.Toolbox.LogHelper.Debug(this.ToString(), "GetListPage error锛�" + ex.Message);
- return ReturnDto<PageList<dynamic>>.QuickReturn(default(PageList<dynamic>), ReturnCode.Exception, "璇诲彇澶辫触");
- }
- PageList<dynamic> _pglist = new PageList<dynamic>
+ new("@inCurrentPage", currentPage),
+ new("@inEveryPageSize", everyPageSize),
+ new("@inSortName", sortName),
+ new("@inSortOrder", ""),
+ new("@inQueryWhere", keyWhere),
+ new("@inFid", ""),
+ new("@inP1", ""),
+ new("@inP2", ""),
+ new("@inP3", ""),
+ new("@inP4", "")
+ };
+ var dset = new DataSet();
+ var _pglist = new PageList<dynamic>
{
total = 0,
everyPageSize = 0,
pages = 0,
list = new List<dynamic>()
};
- if (dset != null && dset.Tables.Count > 0 && dset.Tables[0].Rows.Count > 0)//鏈夋暟鎹�
- {
- int intTotal = int.Parse(dset.Tables[1].Rows[0]["intTotal"].ToString());
- int pages = (intTotal % everyPageSize != 0) ? (intTotal / everyPageSize + 1) : (intTotal / everyPageSize);
- _pglist.total = intTotal;
- _pglist.everyPageSize = everyPageSize;
- _pglist.pages = pages;
- List<dynamic> _dy = dset.Tables[0].TableToDynamicList();
- _pglist.list = _dy;
- }
- return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist, ReturnCode.Success, "璇诲彇鎴愬姛");
- }
-
-
- /// <summary>
- /// 鍒犻櫎瀹炰綋
- /// </summary>
- /// <param name="model"></param>
- /// <returns></returns>
- [RequestMethod(RequestMethods.POST)]
- public ReturnDto<int?> DeleteModel([FromBody] JArray guidList)
- {
- var intArray = guidList.ToObject<string[]>();
- string guid = intArray[0];
- int rtnInt = (int)ReturnCode.Default;
- int cont = 0;
try
{
- cont = isChkOrUnChk(guid, 1);
- if (cont > 0)
- return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "鍒犻櫎澶辫触锛岃淇℃伅宸茶瀹℃牳锛�");
- StringBuilder strSql = new StringBuilder();
- strSql.Append(" delete from MES_BACK_FLASH ");
- strSql.Append(" where guid='" + guid + "'");
- int rows = DbHelperSQL.ExecuteSql(strSql.ToString());
- rtnInt = rows;
+ dset = DbHelperSQL.RunProcedure("prc_auto_rk_lst", parameters, "0");
+ 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 pages = intTotal % everyPageSize != 0
+ ? intTotal / everyPageSize + 1
+ : intTotal / everyPageSize;
+ _pglist.total = intTotal;
+ _pglist.everyPageSize = everyPageSize;
+ _pglist.pages = pages;
+ var _dy = dset.Tables[0].TableToDynamicList();
+ _pglist.list = _dy;
+ }
}
catch (Exception ex)
{
- LogHelper.Debug(this.ToString(), "DeleteModel error锛�" + ex.Message);
- rtnInt = (int)ReturnCode.Exception;
- return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "鍒犻櫎澶辫触锛�" + ex.Message);
+ LogHelper.Debug(ToString(), ex.Message);
+ return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist,
+ ReturnCode.Exception, ex.Message);
}
- if (rtnInt > 0)
- return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Success, "鎿嶄綔鎴愬姛锛屽叡鍒犻櫎" + rtnInt.ToString() + "鏉℃暟鎹紒");
- else
- return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "鍒犻櫎澶辫触锛岃閲嶈瘯锛�");
+ return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist,
+ ReturnCode.Success, "璇诲彇鎴愬姛");
}
/// <summary>
- /// 澧炲姞瀹炰綋
+ /// 璇诲彇
+ /// </summary>
+ /// <param name="guid"></param>
+ /// <returns></returns>
+ [RequestMethod(RequestMethods.POST)]
+ public ReturnDto<ExpandoObject> GetModel([FromBody] dynamic model)
+ {
+ string guid = model.guid.ToString();
+ dynamic m = new ExpandoObject();
+ m.list = new List<dynamic>();
+ m.list2 = new List<dynamic>();
+ SqlParameter[] parameters =
+ {
+ new("@inMainGuid", guid),
+ new("@inP1", ""),
+ new("@inP2", ""),
+ new("@inP3", ""),
+ new("@inP4", "")
+ };
+ var dset = new DataSet();
+ try
+ {
+ dset = DbHelperSQL.RunProcedure("[prc_auto_rk_mx]", 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();
+ }
+ }
+ catch (Exception ex)
+ {
+ LogHelper.Debug(ToString(), ex.Message);
+ }
+
+ if (m != null)
+ return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success,
+ "璇诲彇鎴愬姛锛�");
+ return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "璇诲彇澶辫触锛�");
+ }
+
+ /// <summary>
+ /// 澧炲姞鎴栫紪杈戝疄浣�
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
[RequestMethod(RequestMethods.POST)]
public ReturnDto<ExpandoObject> EditModel([FromBody] dynamic model)
{
+ Guid? guid = model.guid; //涓婚敭
string itemId = model.itemId;
string departmentId = model.departmentId;
string depotId = model.depotId;
- int? rtnInt = (int)ReturnCode.Default;
+ string depotlocid = model.depotlocid;
dynamic mObj = new ExpandoObject();
mObj.outMsg = "";
mObj.outSum = -1;
mObj.outGuid = "";
mObj.outNo = "";
- StringBuilder strSql = new StringBuilder();
- string guid = Guid.NewGuid().ToString();
- strSql.Append(" insert into MES_BACK_FLASH");
- strSql.Append(" ([guid] ,[ItemId] ,[departmentId] ,[depotId],createBy,createDate,checkStatus)");
- strSql.Append(" values(");
- strSql.Append(" '" + guid + "','" + itemId + "','" + departmentId + "'," + depotId + ",'" + _userCode + "',getdate(),0)");
- try
+ using (var conn = new SqlConnection(DbHelperSQL.strConn))
{
- rtnInt = DbHelperSQL.ExecuteSql(strSql.ToString());
- mObj.outMsg = "鎿嶄綔鎴愬姛锛�";
- mObj.outSum = rtnInt;
- mObj.outGuid = guid;
- mObj.outNo = itemId;
- }
- catch (Exception ex)
- {
- LogHelper.Debug(this.ToString(), "EditModel error锛�" + ex.Message);
- rtnInt = (int)ReturnCode.Exception;
- mObj.outMsg = ex.Message;
- mObj.outSum = -1;
+ using (var cmd = new SqlCommand("[prc_auto_rk_edt]", conn))
+ {
+ try
+ {
+ conn.Open();
+ cmd.CommandType = CommandType.StoredProcedure;
+ SqlParameter[] parameters =
+ {
+ new SqlParameter("@outMsg", SqlDbType.NVarChar, 300),
+ new SqlParameter("@outSum", SqlDbType.Int),
+ new SqlParameter("@outGuid", SqlDbType.UniqueIdentifier),
+ new SqlParameter("@outNo", SqlDbType.NVarChar, 300),
+ new SqlParameter("@inOrderGuid", CheckGuid(guid) ? guid : DBNull.Value),
+ new SqlParameter("@ItemId", string.IsNullOrEmpty(itemId) ? DBNull.Value : (object)long.Parse(itemId)),
+ new SqlParameter("@departmentId", string.IsNullOrEmpty(departmentId) ? DBNull.Value : (object)long.Parse(departmentId)),
+ new SqlParameter("@depotId", string.IsNullOrEmpty(depotId) ? DBNull.Value : (object)long.Parse(depotId)),
+ new SqlParameter("@depotlocid", string.IsNullOrEmpty(depotlocid) ? DBNull.Value : (object)depotlocid),
+ new SqlParameter("@remark", ""),
+ new SqlParameter("@inEdtUserGuid", _userGuid),
+ new SqlParameter("@inLineList", DBNull.Value), // 璁剧疆涓篋BNull.Value
+ new SqlParameter("@inLineList2", DBNull.Value) // 璁剧疆涓篋BNull.Value
+ };
+ parameters[0].Direction = ParameterDirection.Output;
+ parameters[1].Direction = ParameterDirection.Output;
+ parameters[2].Direction = ParameterDirection.Output;
+ parameters[3].Direction = ParameterDirection.Output;
+ foreach (var parameter in parameters)
+ cmd.Parameters.Add(parameter);
+ cmd.ExecuteNonQuery();
+ mObj.outMsg = parameters[0].Value.ToString();
+ mObj.outSum = int.Parse(parameters[1].Value.ToString());
+ mObj.outGuid = parameters[2].Value.ToString();
+ mObj.outNo = parameters[3].Value.ToString();
+ }
+ catch (Exception ex)
+ {
+ LogHelper.Debug(ToString(),
+ "prc_item_tbl_edt error锛�" + ex.Message);
+ mObj.outMsg = ex.Message;
+ mObj.outSum = -1;
+ }
+ finally
+ {
+ conn.Close();
+ }
+ }
}
if (mObj.outSum <= 0)
return ReturnDto<dynamic>.QuickReturn(mObj, ReturnCode.Exception, mObj.outMsg);
@@ -166,48 +203,121 @@
}
/// <summary>
- /// 璇诲彇瀹炰綋
+ /// 鍒犻櫎涓昏〃鎴栨槑缁�
/// </summary>
- /// <param name="guid"></param>
+ /// <param name="model"></param>
/// <returns></returns>
[RequestMethod(RequestMethods.POST)]
- [AllowAnonymous]
- public ReturnDto<System.Dynamic.ExpandoObject> GetModel([FromBody] dynamic model)
+ public ReturnDto<int?> DeleteModel([FromBody] dynamic model)
{
- dynamic m = new System.Dynamic.ExpandoObject();
- System.Text.StringBuilder sbSql = new StringBuilder();
- sbSql.Append("select top 1 a.*,org.FID as orgId ,i.item_no as itemNo,i.item_name as itemName,i.item_model as itemModel from MES_BACK_FLASH a left join MES_ITEMS i on a.ItemID=i.item_id left join SYS_ORGANIZATION org on i.FSubsidiary=org.FID where 1=1 and a.guid='" + model.guid.ToString() + "' ");
- try
+ int? rtnInt = (int)ReturnCode.Default;
+ Guid? guid = model.guid; //鍒拌揣鍗曚富閿�
+ var _outMsg = "";
+ var _outSum = -1;
+ using (var conn = new SqlConnection(DbHelperSQL.strConn))
{
- DataSet dset = new DataSet();
- dset = DbHelperSQL.Query(sbSql.ToString());
- if (dset != null && dset.Tables.Count > 0 && dset.Tables[0].Rows.Count > 0)
+ using (var cmd = new SqlCommand("[prc_auto_rk_del]", conn))
{
- System.Data.DataRow dr = dset.Tables[0].Rows[0];
- m = dr.RowToDynamic();
- return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "璇诲彇鎴愬姛锛�");
+ try
+ {
+ conn.Open();
+ cmd.CommandType = CommandType.StoredProcedure;
+ SqlParameter[] parameters =
+ {
+ new("@outMsg", SqlDbType.NVarChar, 300),
+ new("@outSum", SqlDbType.Int),
+ new("@inOrderGuid",
+ CheckGuid(guid)
+ ? guid
+ : DBNull.Value),
+ new("@inEdtUserGuid", _userGuid)
+ };
+ parameters[0].Direction = ParameterDirection.Output;
+ parameters[1].Direction = ParameterDirection.Output;
+ foreach (var parameter in parameters)
+ cmd.Parameters.Add(parameter);
+
+ cmd.ExecuteNonQuery();
+ _outMsg = parameters[0].Value.ToString();
+ _outSum = int.Parse(parameters[1].Value.ToString());
+ }
+ catch (Exception ex)
+ {
+ LogHelper.Debug(ToString(),
+ "prc_auto_rk_del error锛�" + ex.Message);
+ _outMsg = ex.Message;
+ _outSum = -1;
+ }
+ finally
+ {
+ conn.Close();
+ }
}
- else
- return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "璇诲彇澶辫触锛�");
}
- catch (Exception ex)
- {
- LogHelper.Debug(this.ToString(), "GetModel error:" + ex.Message);
- return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "璇诲彇澶辫触锛�");
- }
+
+ if (_outSum <= 0)
+ return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Exception,
+ _outMsg);
+ return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Success, _outMsg);
}
+
/// <summary>
- /// 鍒ゆ柇鏄惁瀹℃牳
+ /// 鎻愪氦妫�楠�
/// </summary>
- /// <param name="guidList"></param>
- /// <param name="status"></param>
+ /// <param name="mode"></param>
/// <returns></returns>
- private int isChkOrUnChk(string guidList, int status)
+ [RequestMethod(RequestMethods.POST)]
+ public ReturnDto<ExpandoObject> EditModelSubmit([FromBody] dynamic mode)
{
- int cont = 0;
- cont = int.Parse(DbHelperSQL.GetSingle("select count(1) from MES_BACK_FLASH where guid='" + guidList + "' and isnull(checkstatus,0)=" + status + "").ToString());
- return cont;
+ string _guid = mode.guid;
+ string _inFieldValue = mode.inFieldValue;
+ string _chkOut = mode.chkOut;
+ string _proName = "prc_auto_rk_submit";
+ dynamic m = new ExpandoObject();
+ m.outSum = -1;
+ m.outMsg = "";
+ using (var conn = new SqlConnection(DbHelperSQL.strConn))
+ {
+ using (var cmd = new SqlCommand(_proName, conn))
+ {
+ try
+ {
+ conn.Open();
+ cmd.CommandType = CommandType.StoredProcedure;
+ SqlParameter[] parameters =
+ {
+ new("@outMsg", SqlDbType.NVarChar, 2500),
+ new("@outSum", SqlDbType.Int),
+ new("@inEdtUserGuid", _userGuid),
+ new("@inOrderGuid", _guid),
+ new("@inFieldValue", _inFieldValue),
+ new("@in1", _chkOut),
+ new("@in2", "")
+ };
+ parameters[0].Direction = ParameterDirection.Output;
+ parameters[1].Direction = ParameterDirection.Output;
+ foreach (var parameter in parameters)
+ cmd.Parameters.Add(parameter);
+ cmd.ExecuteNonQuery();
+ m.outMsg = parameters[0].Value.ToString();
+ m.outSum = int.Parse(parameters[1].Value.ToString());
+ }
+ catch (Exception ex)
+ {
+ LogHelper.Debug(ToString(),
+ "prc_auto_rk_submit error锛�" + ex.Message);
+ m.outMsg = ex.Message;
+ return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default,
+ ex.Message);
+ }
+ finally
+ {
+ conn.Close();
+ }
+ }
+ }
+ return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "鎿嶄綔鎴愬姛锛�");
}
#endregion
}
--
Gitblit v1.9.3