From 80db7538bb8e0c475c91cdcb1aab979c88991cda Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期二, 08 七月 2025 09:05:42 +0800
Subject: [PATCH] 小诸葛同步:产品档案更新时不覆盖生产周期
---
WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs | 124 +++++++++++++++++++++++++++++++++++++++-
1 files changed, 119 insertions(+), 5 deletions(-)
diff --git a/WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs b/WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs
index 2dfbf7c..e421290 100644
--- a/WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs
@@ -10,6 +10,7 @@
using System.Web;
using System.Web.Http;
using WebAPI.Models;
+using WebAPI.Models.鍩虹璧勬枡;
using WebAPI.Service;
namespace WebAPI.Controllers
@@ -38,7 +39,7 @@
{
List<object> columnNameList = new List<object>();
//缂栬緫鏉冮檺
- if (!DBUtility.ClsPub.Security_Log_second("Gy_Employee", 1, false, user))
+ if (!DBUtility.ClsPub.Security_Log_second("Gy_Employee_Query", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
@@ -49,11 +50,11 @@
string sql1 = string.Format(@"select * from h_v_IF_EmployeeList where 缁勭粐鍚嶇О='" + Organization + "'");
if (sWhere == null || sWhere.Equals(""))
{
- ds = oCN.RunProcReturn(sql1 + sWhere + " order by 鑱屽憳浠g爜", "h_v_IF_EmployeeList");
+ ds = oCN.RunProcReturn(sql1 + sWhere, "h_v_IF_EmployeeList");
}
else
{
- string sql = sql1 + sWhere + " order by 鑱屽憳浠g爜";
+ string sql = sql1 + sWhere;
ds = oCN.RunProcReturn(sql, "h_v_IF_EmployeeList");
}
@@ -288,6 +289,7 @@
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
+ string msg4 = sArray[2].ToString();
//string msg4 = sArray[2].ToString();
//string msg5 = sArray[3].ToString();
@@ -304,6 +306,7 @@
//鍙嶅簭鍒楀寲
msg2 = "[" + msg2.ToString() + "]";
List<Gy_Employee> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_Employee>>(msg2);
+ List<ClsGy_EmployeeSub> list1 = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_EmployeeSub>>(msg4);
long HItemID = list[0].HItemID;
string HNumber = list[0].HNumber;
@@ -428,6 +431,17 @@
// objJsonResult.data = null;
// return objJsonResult;
//}
+ //鏌ヨ鏁版嵁涓槸鍚﹀瓨鍦ㄩ噸澶嶄唬鐮�
+ ds = oCN.RunProcReturn("Select HItemID from Gy_Employee Where HItemID<>" + HItemID + " and HNumber='" + HNumber + "' and HUSEORGID=" + HUSEORGID, "Gy_Warehouse");
+
+ if (ds.Tables[0].Rows.Count > 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮侀噸澶嶏紒";
+ objJsonResult.data = 1;
+ return objJsonResult;
+ }
//淇濆瓨
//淇濆瓨瀹屾瘯鍚庡鐞�
if (HItemID == 0)
@@ -450,7 +464,7 @@
",HEmpType,HPayType,HOverType,HNoBrushFlag,HShiftFlag,HStopwagesFlag" +
",HPostalCode,HBank,HBasePay,HExamLevPostMoney,HBSTDeptID" +
",HOtherDeduct3,HInsurance,HMedicare,HDrydock" +
- ",HBankAccount,HGroupID,HDeptID,HWorkTypeID,HCTPrjID,HUSEORGID,HAddress" +
+ ",HBankAccount,HGroupID,HDeptID,HWorkTypeID,HCTPrjID,HUSEORGID,HAddress,HMakeEmp" +
") " +
" Values('" + HNumber + "','" + HName + "','" + HShortNumber + "','" + HEmpRate.ToString() + "','" + HExamRate.ToString() +
"','" + HLevel + "','" + HParentID + "','" + Convert.ToString(HEndFlag ? 1 : 0) + "','" + HHighestPay.ToString() + "','" + HOverPayRate.ToString() +
@@ -468,15 +482,52 @@
"','" + HEmpType + "'" + ",'" + HPayType + "'" + ",'" + DBUtility.ClsPub.BoolToString(HOverType) + "','" + DBUtility.ClsPub.BoolToString(HNoBrushFlag) + "','" + DBUtility.ClsPub.BoolToString(HShiftFlag) + "','" + DBUtility.ClsPub.BoolToString(HStopwagesFlag) +
"','" + HPostalCode + "','" + HBank + "','" + HBasePay.ToString() + "','" + HExamLevPostMoney.ToString() + "','" + HBSTDeptID + "'" +
",'" + HOtherDeduct3.ToString() + "','" + HInsurance.ToString() + "','" + HMedicare.ToString() + "','" + HDrydock.ToString() +
- "','" + HBankAccount + "'" + ",'" + HGroupID.ToString() + "','" + HDeptID.ToString() + "','" + HWorkTypeID.ToString() + "','" + HCTPrjID.ToString() + "','" + HUSEORGID + "','" + HAddress + "')", ref DBUtility.ClsPub.sExeReturnInfo);
+ "','" + HBankAccount + "'" + ",'" + HGroupID.ToString() + "','" + HDeptID.ToString() + "','" + HWorkTypeID.ToString() + "','" + HCTPrjID.ToString() + "','" + HUSEORGID + "','" + HAddress + "','"+ msg3 + "')", ref DBUtility.ClsPub.sExeReturnInfo);
//淇敼涓婄骇涓洪潪鏈骇浠g爜
oCN.RunProc("Update Gy_Employee set HStopflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
+
+ DataSet temp_ds = oCN.RunProcReturn("select top 1 HItemID from Gy_Employee where HNumber = N'" + HNumber + "'", "Gy_Employee");
+
+ if (temp_ds.Tables[0].Rows.Count < 1)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "淇濆瓨澶辫触!鍘熷洜锛氭彃鍏ユ暟鎹け璐�";
+ objJsonResult.data = null;
+ oCN.RollBack();
+ return objJsonResult;
+ }
+
+ int itemID = int.Parse(temp_ds.Tables[0].Rows[0]["HItemID"].ToString());
+ string sql3 = "";
+ foreach (ClsGy_EmployeeSub listOne in list1)
+ {
+ sql3 += "insert into Gy_Employee_Post(HEmpID, HPostID, HRemark) Values("
+ + itemID + "," + listOne.HPostID +",N'" + listOne.HRemark + "');";
+
+ }
+ LogService.Write(sql3);
+ oCN.RunProcReturn(sql3, "Gy_Employee_Post");
oCN.Commit();
}
else
{
+
//鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
oCN.BeginTran();
+ //宸插鏍镐笉鍏佽淇敼
+ DataSet dss;
+ dss = oCN.RunProcReturn("select * from Gy_Employee where HItemID=" + HItemID, "Gy_Employee");
+ //鍒ゆ柇鏄惁鍙紪杈�
+ if (dss.Tables[0].Rows[0]["HCheckEmp"].ToString() != "")
+ {
+ oCN.RollBack();
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "姝ゅ崟鎹姸鎬佸凡缁忓鏍革紝涓嶅厑璁镐慨鏀癸紒";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
oCN.RunProc("Update Gy_Employee set " +
" HNumber='" + HNumber + "'" +
",HName='" + HName + "'" +
@@ -562,6 +613,17 @@
",HAddress='" + HAddress.ToString() + "'" +
",HDeptID= '" + HDeptID + "' Where HItemID=" + HItemID);
+
+ oCN.RunProcReturn("delete from Gy_Employee_Post where HEmpID = " + HItemID, "Gy_Employee_Post");
+
+ string sql3 = "";
+ foreach (ClsGy_EmployeeSub listOne in list1)
+ {
+ sql3 += "insert into Gy_Employee_Post(HEmpID, HPostID, HRemark) Values("
+ + HItemID + "," + listOne.HPostID + ",N'" + listOne.HRemark + "');";
+ }
+ LogService.Write(sql3);
+ oCN.RunProcReturn(sql3, "Gy_WorkCenterSub");
oCN.Commit();
}
objJsonResult.code = "0";
@@ -815,7 +877,52 @@
// }
//}
+ /// <summary>
+ /// 鏌ヨ瀛愯〃鏂规硶
+ /// </summary>
+ [Route("Gy_Employee/listSub")]
+ [HttpGet]
+ public object listSub(string sWhere, string user)
+ {
+ try
+ {
+ List<object> columnNameList = new List<object>();
+ //鏌ョ湅鏉冮檺
+ if (!DBUtility.ClsPub.Security_Log("Gy_Employee_Query", 1, false, user))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ ds = oCN.RunProcReturn("select * from h_v_IF_EmployeeSubList where 1 = 1 " + sWhere + " order by HItemID ", "h_v_IF_EmployeeSubList");
+
+ //娣诲姞鍒楀悕
+ foreach (DataColumn col in ds.Tables[0].Columns)
+ {
+ Type dataType = col.DataType;
+ string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+ columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+ }
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = ds.Tables[0];
+ objJsonResult.list = columnNameList;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
/// <summary>
/// 鑱屽憳璁剧疆鑾峰彇淇℃伅
@@ -870,6 +977,13 @@
objJsonResult.Message = "娌℃湁鏁版嵁锛屾棤娉曞垹闄わ紒";
objJsonResult.data = null;
return objJsonResult; ;
+ }else if (ds.Tables[0].Rows[0]["HCheckEmp"] !=null && ds.Tables[0].Rows[0]["HCheckEmp"].ToString() != "")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鑱屽憳宸茬粡瀹℃牳涓嶈兘鍒犻櫎锛�";
+ objJsonResult.data = null;
+ return objJsonResult; ;
}
else
{
--
Gitblit v1.9.1