From f0bb2d8bd83bc984a78a9ef8c3c7dd4ef821627f Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期四, 29 六月 2023 15:24:14 +0800
Subject: [PATCH] 1
---
WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs | 694 +++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 616 insertions(+), 78 deletions(-)
diff --git a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
index 04832e2..5237a34 100644
--- a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
+++ b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs
@@ -7,6 +7,7 @@
using System.Data;
using System.Data.SqlClient;
using System.Web.Http;
+using System.Windows.Forms;
using WebAPI.Models;
namespace WebAPI.Controllers
@@ -18,6 +19,9 @@
private json objJsonResult = new json();
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
DataSet ds;
+ Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
+ public DAL.ClsSc_ICMOBill BillOld = new DAL.ClsSc_ICMOBill();
+
#region[鏂板鍗曟嵁-淇濆瓨鎸夐挳]
/// <summary>
@@ -36,6 +40,7 @@
string msg3 = sArray[1].ToString();
string msg4 = sArray[2].ToString();
string msg5 = sArray[3].ToString();
+ string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О
string UserName = "";
ListModels oListModels = new ListModels();
@@ -97,12 +102,18 @@
bool bResult;
if (msg5 == "xz")
{
+ LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo);
// bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+
+ oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
}
else
{
+ LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",淇敼宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo);
bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+
+ oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "淇敼宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
}
if (bResult)
{
@@ -373,6 +384,122 @@
//}
#endregion
+ #region[鏂板鍗曟嵁-淇濆瓨鎸夐挳-鎵归噺澶嶅埗]
+ /// <summary>
+ /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
+ ///鍙傛暟锛歴tring sql銆�
+ ///杩斿洖鍊硷細object銆�
+ /// </summary>
+ [Route("Sc_ProcessExchangeBill/AddBill_Copy_pl")]
+ [HttpPost]
+ public object AddBill_Copy_pl([FromBody] JObject sMainSub)
+ {
+ var _value = sMainSub["sMainSub"].ToString();
+ string msg1 = _value.ToString();
+ string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+ int msg2 = int.Parse(sArray[0].ToString());
+ string msg3 = sArray[1].ToString();
+ string msg4 = sArray[2].ToString();
+ string msg5 = sArray[3].ToString();
+ string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О
+
+ string UserName = "";
+ ListModels oListModels = new ListModels();
+ string sReturn = "";
+ try
+ {
+ if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Edit", 1, false, msg4))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill();
+ DBUtility.ClsPub.HOrgID = long.Parse(msg5);
+ DBUtility.ClsPub.CurUserName = msg4;
+ oBill.ShowBill(long.Parse(msg3), ref sReturn);
+
+ ds = oCN.RunProcReturn("select isnull(sum(HQty),0) from Sc_ProcessExchangeBillMain where HICMOBillNo='" + oBill.omodel.HICMOBillNo + "' and HInterID <>"+ oBill.omodel.HInterID, "Sc_ProcessExchangeBillMain");
+ var HQty = double.Parse(ds.Tables[0].Rows[0][0].ToString());
+ int num = 0;
+ //鍗曟嵁鏁伴噺 * 寮犳暟 + 宸茬敓鎴愪笉鍖呮嫭鏈崟鎹殑鏁伴噺 >鐢熶骇璁㈠崟鏁伴噺
+ if ((oBill.omodel.HQty * msg2) + HQty > oBill.omodel.HPlanQty)
+ {
+ if (((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) % oBill.omodel.HQty) == 0)
+ {
+ num = (int)((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) / oBill.omodel.HQty);
+ } else
+ {
+ num = (int)((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) / oBill.omodel.HQty);
+ num += 1;
+ }
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏈�澶氬彲浠ュ鍒�" + num + "寮狅紒";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (num == 0) {
+ double HPlanQty = oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty;
+ for (int i = 0; i < msg2; i++)
+ {
+ oBill.omodel.HBillNo = DBUtility.ClsPub.CreateBillCode("3772", ref DBUtility.ClsPub.sExeReturnInfo, true);
+ oBill.omodel.HDate =DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd"));
+ oBill.omodel.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+ oBill.omodel.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+ oBill.omodel.HChecker = "";
+ oBill.omodel.HCheckDate = "";
+ oBill.omodel.HMaker = msg4;
+
+ if (HPlanQty < oBill.omodel.HQty)
+ {
+ oBill.omodel.HQty = HPlanQty;
+ }
+
+ for (int j = 0; j < oBill.DetailColl.Count; j++)
+ {
+ oBill.DetailColl[j].HRelationQty_In = 0;
+ oBill.DetailColl[j].HRelationQty_Out = 0;
+ oBill.DetailColl[j].HRelationQty_Bad = 0;
+ }
+
+ //淇濆瓨瀹屾瘯鍚庡鐞�
+ bool bResult;
+ LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo);
+ oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+
+ bResult = oBill.AddBill(ref sReturn);
+ if (bResult)
+ {
+ num++;
+ HPlanQty -= oBill.omodel.HQty;
+ }
+ }
+
+ }
+
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "澶嶅埗浜�" + num + "寮犲崟鎹紒";
+ objJsonResult.data = 1;
+ return objJsonResult;
+
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+ objJsonResult.data = 1;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
#region[鎵归噺鏂板鍗曟嵁-淇濆瓨鎸夐挳]
/// <summary>
/// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
@@ -391,6 +518,7 @@
string msg4 = sArray[2].ToString();//宸ヨ壓璺嚎
string msg5 = sArray[3].ToString();//绫诲瀷
string msg6 = sArray[4].ToString();//鐢ㄦ埛
+ string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О
ListModels oListModels = new ListModels();
@@ -445,6 +573,9 @@
{
Main.HBillNo = ListHbillNo[i].HBillNo;
Main.HQty = ListHbillNo[i].HQty;
+ Main.HSplitNo = ListHbillNo[i].HSplitNo;
+ Main.HAuxQty = 0;
+ Main.HAuxUnit = 0;
oBill.omodel = Main;
int j = 0;
@@ -461,6 +592,9 @@
bool bResult=false;
if (msg5 == "2")
{
+ LogService.Write("鐢ㄦ埛:" + msg6 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo);
+ oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg6 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+
bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
}
oBill.DetailColl.Clear();
@@ -669,7 +803,7 @@
宸ヤ綔涓績 HCenterName,HSupID,渚涘簲鍟嗕唬鐮� HSupNumber,渚涘簲鍟� HSupName,isEntrust HSupFlag,璁″垝鏁伴噺 HQty,鍔犲伐鍗曚环 HOutPrice, 琛ㄤ綋澶囨敞 HRemark,
杩涚珯鍏宠仈鏁伴噺 HRelationQty_In,鍑虹珯鍏宠仈鏁伴噺 HRelationQty_Out,濮斿宸ュ崟鏁伴噺 HRelationQty_WWOrder,涓嶅悎鏍兼暟閲� HRelationQty_Bad,瓒呴姣斾緥 HOverRate,
鑹巼 HPassRate,绱鑹巼 HSumPassRate,鍥剧焊缂栧彿 HPicNum,鏈伐搴忕‘璁よ褰� HProcCheckNote,宸ヨ壓鍙傛暟 HTechnologyParameter,HDeptID,
- 鍔犲伐杞﹂棿浠g爜 HDeptNumber,鍔犲伐杞﹂棿 HDeptName
+ 鍔犲伐杞﹂棿浠g爜 HDeptNumber,鍔犲伐杞﹂棿 HDeptName,鍑虹珯鎶ュ簾鍏宠仈鏁伴噺 HRelationQty_OutBad
from h_v_Sc_ProcessExchangeBillQuerySub");
ds = oCN.RunProcReturn(sql+ " where hmainid="+ HInterID + " order by cast(娴佹按鍙� as int) ", "h_v_Sc_ProcessExchangeBillQuerySub");
objJsonResult.code = "0";
@@ -695,7 +829,7 @@
/// <returns></returns>
[Route("Sc_ProcessExchangeBill/DeltetProcessExchangeBillByID")]
[HttpGet]
- public object DeltetProcessExchangeBillByID(string HInterID,int HPRDORGID, string user)
+ public object DeltetProcessExchangeBillByID(string HInterID, int HPRDORGID, string user)
{
//缂栬緫鏉冮檺
if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Drop", 1, false, user))
@@ -707,69 +841,103 @@
return objJsonResult;
}
-
- Int64 lngBillKey = 0;
- lngBillKey = DBUtility.ClsPub.isLong(HInterID);
- if (lngBillKey == 0)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "鍗曟嵁ID涓虹┖锛�";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
-
- //鍒犻櫎鍓嶅垽鏂叧鑱旀暟閲�
- SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
- DataSet ds;
- ds = oCn.RunProcReturn("select ct from ( " +
- " select 1 ct from Sc_StationInBillMain Where HProcExchInterID=" + lngBillKey + " " +
- " union all " +
- " select 1 from Sc_StationOutBillMain Where HProcExchInterID=" + lngBillKey + " ) as a ", "Sc_ProcExchReportSub");
- if (ds.Tables[0].Rows.Count != 0)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "娴佽浆鍗″凡缁忔湁涓嬫父杩涘嚭绔欏崟鍚庯紝涓嶅厑璁稿垹闄わ紒";
- objJsonResult.data = null;
- return objJsonResult;
- }
-
+ string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О
DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill();
- DBUtility.ClsPub.HOrgID = HPRDORGID;
- if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
- {
- if (oBill.omodel.HBillStatus > 1)
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "鍗曟嵁褰撳墠澶勪簬涓嶈兘鍒犻櫎鐘舵��,涓嶈兘鍒犻櫎锛�";
- objJsonResult.data = null;
- return objJsonResult;
- }
- if (oBill.omodel.HChecker != "")
- {
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�";
- objJsonResult.data = null;
- return objJsonResult;
- }
- bool IsDete = oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
- if (IsDete)
+ string[] HBillNo = HInterID.Split(',');
+
+ string HBillNo_S = "";
+
+ foreach (var item in HBillNo)
+ {
+ Int64 lngBillKey = 0;
+ lngBillKey = DBUtility.ClsPub.isLong(item);
+
+ DBUtility.ClsPub.HOrgID = HPRDORGID;
+ if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
{
- objJsonResult.code = "0";
- objJsonResult.count = 1;
- objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
- objJsonResult.data = null;
- return objJsonResult;
+ if (lngBillKey == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁鍙�:"+ oBill .omodel.HBillNo+ "鍗曟嵁ID涓虹┖锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ //鍒犻櫎鍓嶅垽鏂叧鑱旀暟閲�
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+ DataSet ds;
+ ds = oCn.RunProcReturn("select ct from ( " +
+ " select 1 ct from Sc_StationInBillMain Where HProcExchInterID=" + lngBillKey + " " +
+ " union all " +
+ " select 1 from Sc_StationOutBillMain Where HProcExchInterID=" + lngBillKey + " ) as a ", "Sc_ProcExchReportSub");
+ if (ds.Tables[0].Rows.Count != 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "娴佽浆鍗″凡缁忔湁涓嬫父杩涘嚭绔欏崟鍚庯紝涓嶅厑璁稿垹闄わ紒";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ string sReturn = "";
+ if (oSystemParameter.ShowBill(ref sReturn))
+ {
+ if (oSystemParameter.omodel.Sc_ProcessExchangeBill_DeleterAndMakerMustSame == "Y")
+ {
+ if (oBill.omodel.HMaker != user && (user != "admin" && user != "Admin"))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍙兘鍒犻櫎鏈汉鐨勫崟鎹紒";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ }
+
+
+ if (oBill.omodel.HBillStatus > 1)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍗曟嵁褰撳墠澶勪簬涓嶈兘鍒犻櫎鐘舵��,涓嶈兘鍒犻櫎锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (oBill.omodel.HChecker != "")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ HBillNo_S += oBill.omodel.HBillNo + ",";
}
else
{
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁鏈壘鍒�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ HBillNo_S = HBillNo_S.Substring(0, HBillNo_S.Length - 1);
+ LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鍒犻櫎宸ュ簭娴佽浆鍗″崟鎹�:" + HBillNo_S);
+
+ oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鍒犻櫎宸ュ簭娴佽浆鍗″崟鎹細" + HBillNo_S + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鍒犻櫎鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+
+ foreach (var item in HBillNo)
+ {
+ bool IsDete = oBill.DeleteBill(long.Parse(item), ref DBUtility.ClsPub.sExeReturnInfo);
+ if (!IsDete)
+ {
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
@@ -777,14 +945,22 @@
return objJsonResult;
}
}
- else
+
+ if (oSystemParameter.omodel.WMS_CampanyName == "鐟炰笌绁�")
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "鍗曟嵁鏈壘鍒�";
- objJsonResult.data = null;
- return objJsonResult;
+ ds = oCN.RunProcReturn("select * from Sc_ProcessExchangeBillMain where HICMOInterID='" + oBill.omodel.HICMOInterID + "' and HICMOEntryID='" + oBill.omodel.HICMOEntryID + "'", "Sc_ProcessExchangeBillMain");
+
+ if (ds.Tables[0].Rows.Count == 0)
+ {
+ oCN.RunProc("update AIS20220308151944..T_PRD_MOENTRY set F_BSV_TEXT2 = '鍚�' where FID='" + oBill.omodel.HICMOInterID + "' and FENTRYID='" + oBill.omodel.HICMOEntryID + "'");
+ }
}
+
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
+ objJsonResult.data = null;
+ return objJsonResult;
}
#endregion
@@ -900,12 +1076,26 @@
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+ var ds1= oCN.RunProcReturn("select isnull(max(娴佹按鍙�),0) from h_v_Sc_ProcessExchangeBillQuerySub where hmainid=" + HInterID + " and 鍑虹珯鍏宠仈鏁伴噺>0 ", "h_v_Sc_ProcessExchangeBillQuerySub");
+
string sql = string.Format(@"select * from h_v_Sc_ProcessExchangeBillQuerySub");
- ds = oCN.RunProcReturn(sql + " where hmainid=" + HInterID, "h_v_Sc_ProcessExchangeBillQuerySub");
- objJsonResult.code = "0";
- objJsonResult.count = 1;
- objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�";
- objJsonResult.data = ds.Tables[0];
+
+ ds = oCN.RunProcReturn(sql + " where hmainid=" + HInterID + " and 鍑虹珯鍏宠仈鏁伴噺=0 and cast(娴佹按鍙� as int)>" + ds1 .Tables[0].Rows[0][0].ToString(), "h_v_Sc_ProcessExchangeBillQuerySub");
+
+ if (float.Parse(ds.Tables[0].Rows[0]["杩涚珯鍏宠仈鏁伴噺"].ToString()) > 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "褰撳墠鍗曟嵁:"+ ds.Tables[0].Rows[0]["宸ュ簭鍚嶇О"].ToString() + "鏈嚭绔欎笉鑳芥媶鍒�!";
+ objJsonResult.data = ds.Tables[0];
+ }
+ else {
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�";
+ objJsonResult.data = ds.Tables[0];
+ }
}
catch (Exception e)
{
@@ -987,24 +1177,52 @@
//msg2 = msg2.Replace("'", "鈥�");
List<Model.ClsSc_ProcessExchangeBillSub> ls = new List<Model.ClsSc_ProcessExchangeBillSub>();
ls = oListModels.getObjectByJson_Sc_ProcessExchangeBillSub(msg3);
- int i = 0;
- foreach (Model.ClsSc_ProcessExchangeBillSub oItemSub in ls)
- {
+
+ string HEntryID = "";
- if (oItemSub.HSplitQty > oItemSub.HLeftQty)
+ for (int i = 0; i < oBill.DetailColl.Count; i++)
+ {
+ if (oBill.DetailColl[i].HRelationQty_Out > 0 || oBill.DetailColl[i].HRelationQty_In > 0)
+ {
+ HEntryID += i + ",";
+ }
+ }
+ if (HEntryID != "")
+ {
+ HEntryID = HEntryID.Substring(0, HEntryID.Length - 1);
+ var num = HEntryID.Split(',');
+
+ for (int k = 0; k < num.Length; k++)
+ {
+ oBill.DetailColl.RemoveAt(int.Parse(num[k]) - k);
+ }
+ }
+
+ int j = 0 ;
+ foreach (Model.ClsSc_ProcessExchangeBillSub oItemSub in oBill.DetailColl)
+ {
+ if (ls[j].HSplitQty > ls[j].HLeftQty)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
- objJsonResult.Message = "绗�" + (i + 1) + "琛岋紝鎷嗗垎鏁伴噺涓嶈兘澶т簬鍙媶鍒嗘暟閲忥紒";
+ objJsonResult.Message = "绗�" + (j + 1) + "琛岋紝鎷嗗垎鏁伴噺涓嶈兘澶т簬鍙媶鍒嗘暟閲忥紒";
objJsonResult.data = null;
return objJsonResult;
}
- oBill.DetailColl[i].HQty = oItemSub.HQty;
- oBill.DetailColl[i].HBackProc = oItemSub.HBackProc;
- oBill.DetailColl[i].HPrevSourceInterID = oItemSub.HPrevSourceInterID;
- oBill.DetailColl[i].HPrevSourceEntryID = oItemSub.HPrevSourceEntryID;
- i++;
+
+ if (oBill.DetailColl[j].HProcNo == ls[j].HProcNo)
+ {
+ oBill.DetailColl[j].HEntryID = j+1;
+ oBill.DetailColl[j].HQty = ls[j].HQty;
+ oBill.DetailColl[j].HBackProc = ls[j].HBackProc;
+ oBill.DetailColl[j].HPrevSourceInterID = ls[j].HPrevSourceInterID;
+ oBill.DetailColl[j].HPrevSourceEntryID = ls[j].HPrevSourceEntryID;
+ oBill.DetailColl[j].HRemark = ls[j].HRemark;
+ oBill.DetailColl[j].HTechnologyParameter = ls[j].HTechnologyParameter;
+ j++;
+ }
}
+
//淇濆瓨
//淇濆瓨瀹屾瘯鍚庡鐞�
@@ -1017,6 +1235,13 @@
//{
// bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
//}
+
+ oCN.BeginTran();
+
+ oCN.RunProc("update Sc_ProcessExchangeBillSub set HQty=(select HQty from Sc_ProcessExchangeBillMain where HInterID="+ oBill.DetailColl[0].HPrevSourceInterID + ") where HInterID=" + oBill.DetailColl[0].HPrevSourceInterID );
+
+ oCN.Commit();
+
if (bResult)
{
objJsonResult.code = "0";
@@ -1045,5 +1270,318 @@
}
#endregion
+
+
+ #region 宸ュ簭娴佽浆鍗″鏍�/鍙嶅鏍稿姛鑳�
+ [Route("Sc_ProcessExchangeBill/CheckSc_ProcessExchangeBill")]
+ [HttpGet]
+ public object CheckSc_ProcessExchangeBill(string HInterID, int Type, string user)
+ {
+ try
+ {
+ //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
+ if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Check", 1, false, user))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏃犳潈闄愬鏍�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (string.IsNullOrWhiteSpace(HInterID))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "HInterID涓虹┖锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ ClsPub.CurUserName = user;
+ BillOld.MvarItemKey = "Sc_ProcessExchangeBillMain";
+ oCN.BeginTran();//寮�濮嬩簨鍔�
+
+ //Type 1 瀹℃牳 2 鍙嶅鏍�
+ if (Type == 1)
+ {
+ //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳
+ DataSet ds;
+ string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+ ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+ if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+ {
+ if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶉渶瑕佸啀瀹℃牳!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ //瀹℃牳鍗曟嵁
+ if (!BillOld.CheckBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ else
+ {
+ //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍�
+ DataSet ds;
+ string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+ ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+ if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+ {
+ if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁宸插弽瀹℃牳!涓嶉渶瑕佸啀鍙嶅鏍�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ //鍙嶅鏍稿崟鎹�
+ if (BillOld.AbandonCheck(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+ {
+ //SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+ //DataSet DSet = oCn.RunProcReturn("exec h_p_Sc_ICMOBill_AbandonCheckCtrl " + int.Parse(HInterID), "h_p_Sc_ICMOBill_AbandonCheckCtrl");
+ ////if (DBUtility.ClsPub.isInt(DSet.Tables[0].Rows[0]["Hback"]) != 0)
+ ////{
+ //// objJsonResult.code = "0";
+ //// objJsonResult.count = 1;
+ //// objJsonResult.Message = "璇ヤ换鍔″崟宸蹭笅鎺ㄦ祦杞崱锛屼笉鍏佽鍙嶅鏍�" + DBUtility.ClsPub.isStrNull(DSet.Tables[0].Rows[0]["HBackRemark"]);
+ //// objJsonResult.data = null;
+ //// return objJsonResult;
+ ////}
+ }
+ else
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+
+ oCN.Commit();//鎻愪氦浜嬪姟
+
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鎵ц鎴愬姛锛�";
+ objJsonResult.data = null;
+ return objJsonResult; ;
+
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
+ #region 宸ュ簭娴佽浆鍗″叧闂�/鍙嶅叧闂姛鑳�
+ [Route("Sc_ProcessExchangeBill/CloseSc_ProcessExchangeBill")]
+ [HttpGet]
+ public object CloseSc_ProcessExchangeBill(string HInterID, int Type, string user)
+ {
+ try
+ {
+ //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄�
+ if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Close", 1, false, user))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏃犳潈闄愬叧闂�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (string.IsNullOrWhiteSpace(HInterID))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "HInterID涓虹┖锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ ClsPub.CurUserName = user;
+ BillOld.MvarItemKey = "Sc_ProcessExchangeBillMain";
+ oCN.BeginTran();//寮�濮嬩簨鍔�
+
+ //Type 1 鍏抽棴 2 鍙嶅叧闂�
+ if (Type == 1)
+ {
+ //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴
+ DataSet ds;
+ string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+ ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+ if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+ {
+ if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶉渶瑕佸啀鍏抽棴!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ //鍏抽棴鍗曟嵁
+ if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ else
+ {
+ //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂�
+ DataSet ds;
+ string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
+ ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
+ if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
+ {
+ if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁宸插弽鍏抽棴!涓嶉渶瑕佸啀鍙嶅叧闂�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ //鍙嶅叧闂崟鎹�
+ if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+
+ oCN.Commit();//鎻愪氦浜嬪姟
+
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鎵ц鎴愬姛锛�";
+ objJsonResult.data = null;
+ return objJsonResult; ;
+
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
+
+ #region 鍗曟嵁鍙樻洿 椤甸潰鍒濆鍖�
+ [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_Change_init")]
+ [HttpGet]
+ public object GetProcessExchangeBillMain_Change_init(string HInterID)
+ {
+ try
+ {
+ if (string.IsNullOrEmpty(HInterID))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛丠InterID涓嶈兘涓虹┖";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+ ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillQuery where hmainid = " + HInterID + " ", "h_v_Sc_ProcessExchangeBillQuery");
+
+ if (ds==null||ds.Tables[0].Rows.Count == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛佷笉瀛樺湪宸ュ簭娴佽浆鍗�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ else
+ {
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = ds.Tables[0];
+ return objJsonResult;
+ }
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
+ #region 鍗曟嵁鍙樻洿 淇濆瓨
+ [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_Change_save")]
+ [HttpGet]
+ public object GetProcessExchangeBillMain_Change_save(string HInterID,string HMaterModel2)
+ {
+ try
+ {
+ if (string.IsNullOrEmpty(HInterID))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛丠InterID涓嶈兘涓虹┖";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+ oCN.BeginTran();
+ oCN.RunProc("update Sc_ProcessExchangeBillMain set HMaterModel2 = '" + HMaterModel2 + "' where HInterID = " + HInterID + "");
+ oCN.Commit();
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
}
}
\ No newline at end of file
--
Gitblit v1.9.1