From 8b7abd97e7b69800789134ed8e809e19a5b5ba74 Mon Sep 17 00:00:00 2001 From: 啊鑫 <t2856754968@163.com> Date: 星期三, 17 九月 2025 00:30:27 +0800 Subject: [PATCH] 111 --- service/JJGZ/OaToMesRecordManager.cs | 446 +++++++++++++++++++++++++++++++------------------------ 1 files changed, 251 insertions(+), 195 deletions(-) diff --git a/service/JJGZ/OaToMesRecordManager.cs b/service/JJGZ/OaToMesRecordManager.cs index 8ddc4fa..4aea974 100644 --- a/service/JJGZ/OaToMesRecordManager.cs +++ b/service/JJGZ/OaToMesRecordManager.cs @@ -1,215 +1,271 @@ -锘縰sing Microsoft.AspNetCore.Mvc; -using Microsoft.Data.SqlClient; +锘縰sing Microsoft.Data.SqlClient; using NewPdaSqlServer.DB; using NewPdaSqlServer.Dto.service; -using System.Data; +using NewPdaSqlServer.util; -namespace NewPdaSqlServer.service.JJGZ +namespace NewPdaSqlServer.service.JJGZ; + +public class OaToMesRecordManager : Repository<OaToMesRecord> { - public class OaToMesRecordManager : Repository<OaToMesRecord> + public string ApproveRecord(OaToMesRecord record) { - public string ApproveRecord(OaToMesRecord record) + var _strMsg = ""; + if (record == null || record.dataJson == null || + record.dataJson.Count == 0) + throw new Exception("dataJson涓嶈兘涓虹┖涓斿繀椤诲寘鍚嚦灏戜竴鏉¤褰�"); + + var successCount = 0; + using (var conn = new SqlConnection(DbHelperSQL.strConn)) { - var _strMsg = ""; - if (record == null || record.dataJson == null || record.dataJson.Count == 0) - throw new Exception("dataJson涓嶈兘涓虹┖涓斿繀椤诲寘鍚嚦灏戜竴鏉¤褰�"); - - int successCount = 0; - using (var conn = new SqlConnection(DbHelperSQL.strConn)) + conn.Open(); + using (var tran = conn.BeginTransaction()) { - conn.Open(); - using (var tran = conn.BeginTransaction()) + try { - try + foreach (var item in record.dataJson) { - foreach (var item in record.dataJson) - { - // 鍙傛暟鏍¢獙澧炲己 - if (string.IsNullOrEmpty(item.StaffId)) throw new Exception("鍛樺伐缂栧彿涓嶈兘涓虹┖"); - if (string.IsNullOrEmpty(item.LineNo)) throw new Exception("浜х嚎涓嶈兘涓虹┖"); - if (string.IsNullOrEmpty(item.Classes)) throw new Exception("鐝涓嶈兘涓虹┖"); - if (item.CheckTime == null) throw new Exception("鎵撳崱鏃ユ湡涓嶈兘涓虹┖"); + // 鍙傛暟鏍¢獙澧炲己 + if (string.IsNullOrEmpty(item.StaffId)) + throw new Exception("鍛樺伐缂栧彿涓嶈兘涓虹┖"); + if (string.IsNullOrEmpty(item.LineNo)) + throw new Exception("浜х嚎涓嶈兘涓虹┖"); + if (string.IsNullOrEmpty(item.Classes)) + throw new Exception("鐝涓嶈兘涓虹┖"); + if (item.CheckTime == null) + throw new Exception("鎵撳崱鏃ユ湡涓嶈兘涓虹┖"); - var sql = @"INSERT INTO MES_JJGZ_RECORD (GUID, Staff_Id, Staff_No, Staff_Name, Line_No, Line_Name, CheckTime, ScheNo,RecordDate,OrgId) VALUES (NEWID(), @StaffId, @StaffNo, @StaffName, @LineNo, @LineName, @CheckTime, @Classes, getdate(),@OrgId)"; - using (var cmd = new SqlCommand(sql, conn, tran)) - { - cmd.Parameters.AddWithValue("@StaffId", item.StaffId ?? (object)DBNull.Value); - cmd.Parameters.AddWithValue("@StaffNo", item.StaffNo ?? (object)DBNull.Value); - cmd.Parameters.AddWithValue("@StaffName", item.StaffName ?? (object)DBNull.Value); - cmd.Parameters.AddWithValue("@LineNo", item.LineNo ?? (object)DBNull.Value); - cmd.Parameters.AddWithValue("@LineName", item.LineName ?? (object)DBNull.Value); - cmd.Parameters.AddWithValue("@CheckTime", item.CheckTime ?? (object)DBNull.Value); - cmd.Parameters.AddWithValue("@Classes", item.Classes ?? (object)DBNull.Value); - cmd.Parameters.AddWithValue("@OrgId", item.OrgId ?? (object)DBNull.Value); - int rows = cmd.ExecuteNonQuery(); - if (rows > 0) successCount++; - } + var sql = + @"INSERT INTO MES_JJGZ_RECORD (GUID, Staff_Id, Staff_No, Staff_Name, Line_No, Line_Name, CheckTime, ScheNo,RecordDate,OrgId) VALUES (NEWID(), @StaffId, @StaffNo, @StaffName, @LineNo, @LineName, @CheckTime, @Classes, getdate(),@OrgId)"; + using (var cmd = new SqlCommand(sql, conn, tran)) + { + cmd.Parameters.AddWithValue("@StaffId", + item.StaffId ?? (object)DBNull.Value); + cmd.Parameters.AddWithValue("@StaffNo", + item.StaffNo ?? (object)DBNull.Value); + cmd.Parameters.AddWithValue("@StaffName", + item.StaffName ?? (object)DBNull.Value); + cmd.Parameters.AddWithValue("@LineNo", + item.LineNo ?? (object)DBNull.Value); + cmd.Parameters.AddWithValue("@LineName", + item.LineName ?? (object)DBNull.Value); + cmd.Parameters.AddWithValue("@CheckTime", + item.CheckTime ?? (object)DBNull.Value); + cmd.Parameters.AddWithValue("@Classes", + item.Classes ?? (object)DBNull.Value); + cmd.Parameters.AddWithValue("@OrgId", + item.OrgId ?? (object)DBNull.Value); + var rows = cmd.ExecuteNonQuery(); + if (rows > 0) successCount++; } - tran.Commit(); - return $"鎵归噺鎻掑叆MES_JJGZ_RECORD鎴愬姛锛佸叡鎻掑叆{successCount}鏉¤褰曘��"; } - catch (Exception ex) - { - tran.Rollback(); - _strMsg = $"鎵归噺鎻掑叆MES_JJGZ_RECORD寮傚父锛歿ex.Message}"; - throw new Exception(_strMsg); - } - finally - { - conn.Close(); - } + + tran.Commit(); + return $"鎵归噺鎻掑叆MES_JJGZ_RECORD鎴愬姛锛佸叡鎻掑叆{successCount}鏉¤褰曘��"; } - } - } - - public string ApproveUser(OaToMesUser user) - { - var _strMsg = ""; - if (user == null || user.dataJson == null || user.dataJson.Count == 0) - throw new Exception("dataJson涓嶈兘涓虹┖涓斿繀椤诲寘鍚嚦灏戜竴鏉¤褰�"); - - int insertCount = 0; - int updateCount = 0; - using (var conn = new SqlConnection(DbHelperSQL.strConn)) - { - conn.Open(); - using (var tran = conn.BeginTransaction()) + catch (Exception ex) { - try - { - foreach (var item in user.dataJson) - { - // 鍙傛暟鏍¢獙澧炲己 - if (string.IsNullOrEmpty(item.Id)) throw new Exception("鐢ㄦ埛ID涓嶈兘涓虹┖"); - if (string.IsNullOrEmpty(item.Name)) throw new Exception("鐢ㄦ埛濮撳悕涓嶈兘涓虹┖"); - - // 妫�鏌ユ槸鍚﹀瓨鍦� - var checkSql = @"SELECT COUNT(1) FROM OA_USER WHERE Id = @Id"; - using (var checkCmd = new SqlCommand(checkSql, conn, tran)) - { - checkCmd.Parameters.AddWithValue("@Id", item.Id); - var exists = (int)checkCmd.ExecuteScalar() > 0; - - if (exists) - { - // 鏇存柊 - var updateSql = @"UPDATE OA_USER SET NAME = @Name, JOBNUMBER = @Jobnumber, DEPARTMENT = @Department WHERE Id = @Id"; - using (var updateCmd = new SqlCommand(updateSql, conn, tran)) - { - updateCmd.Parameters.AddWithValue("@Id", item.Id); - updateCmd.Parameters.AddWithValue("@Name", item.Name ?? (object)DBNull.Value); - updateCmd.Parameters.AddWithValue("@Jobnumber", item.Jobnumber ?? (object)DBNull.Value); - updateCmd.Parameters.AddWithValue("@Department", item.Department ?? (object)DBNull.Value); - int rows = updateCmd.ExecuteNonQuery(); - if (rows > 0) updateCount++; - } - } - else - { - // 鎻掑叆 - var insertSql = @"INSERT INTO OA_USER (Id, NAME, JOBNUMBER, DEPARTMENT) VALUES (@Id, @Name, @Jobnumber, @Department)"; - using (var insertCmd = new SqlCommand(insertSql, conn, tran)) - { - insertCmd.Parameters.AddWithValue("@Id", item.Id); - insertCmd.Parameters.AddWithValue("@Name", item.Name ?? (object)DBNull.Value); - insertCmd.Parameters.AddWithValue("@Jobnumber", item.Jobnumber ?? (object)DBNull.Value); - insertCmd.Parameters.AddWithValue("@Department", item.Department ?? (object)DBNull.Value); - int rows = insertCmd.ExecuteNonQuery(); - if (rows > 0) insertCount++; - } - } - } - } - tran.Commit(); - return $"鐢ㄦ埛鏁版嵁鍚屾鎴愬姛锛佹彃鍏insertCount}鏉★紝鏇存柊{updateCount}鏉¤褰曘��"; - } - catch (Exception ex) - { - tran.Rollback(); - _strMsg = $"鐢ㄦ埛鏁版嵁鍚屾寮傚父锛歿ex.Message}"; - throw new Exception(_strMsg); - } - finally - { - conn.Close(); - } + tran.Rollback(); + _strMsg = $"鎵归噺鎻掑叆MES_JJGZ_RECORD寮傚父锛歿ex.Message}"; + throw new Exception(_strMsg); } - } - } - - public string ApproveDepartment(OaToMesDepartment department) - { - var _strMsg = ""; - if (department == null || department.dataJson == null || department.dataJson.Count == 0) - throw new Exception("dataJson涓嶈兘涓虹┖涓斿繀椤诲寘鍚嚦灏戜竴鏉¤褰�"); - - int insertCount = 0; - int updateCount = 0; - using (var conn = new SqlConnection(DbHelperSQL.strConn)) - { - conn.Open(); - using (var tran = conn.BeginTransaction()) + finally { - try - { - foreach (var item in department.dataJson) - { - // 鍙傛暟鏍¢獙澧炲己 - if (string.IsNullOrEmpty(item.Id)) throw new Exception("閮ㄩ棬ID涓嶈兘涓虹┖"); - if (string.IsNullOrEmpty(item.Name)) throw new Exception("閮ㄩ棬鍚嶇О涓嶈兘涓虹┖"); - - // 妫�鏌ユ槸鍚﹀瓨鍦� - var checkSql = @"SELECT COUNT(1) FROM OA_DEPARTMENT WHERE id = @Id"; - using (var checkCmd = new SqlCommand(checkSql, conn, tran)) - { - checkCmd.Parameters.AddWithValue("@Id", item.Id); - var exists = (int)checkCmd.ExecuteScalar() > 0; - - if (exists) - { - // 鏇存柊 - var updateSql = @"UPDATE OA_DEPARTMENT SET name = @Name, Parentid = @Parentid, OrgId = @OrgId WHERE Id = @Id"; - using (var updateCmd = new SqlCommand(updateSql, conn, tran)) - { - updateCmd.Parameters.AddWithValue("@Id", item.Id); - updateCmd.Parameters.AddWithValue("@Name", item.Name ?? (object)DBNull.Value); - updateCmd.Parameters.AddWithValue("@Parentid", item.Parentid ?? (object)DBNull.Value); - updateCmd.Parameters.AddWithValue("@OrgId", item.OrgId ?? (object)DBNull.Value); - int rows = updateCmd.ExecuteNonQuery(); - if (rows > 0) updateCount++; - } - } - else - { - // 鎻掑叆 - var insertSql = @"INSERT INTO OA_DEPARTMENT (id, name, Parentid, OrgId) VALUES (@Id, @Name, @Parentid, @OrgId)"; - using (var insertCmd = new SqlCommand(insertSql, conn, tran)) - { - insertCmd.Parameters.AddWithValue("@Id", item.Id); - insertCmd.Parameters.AddWithValue("@Name", item.Name ?? (object)DBNull.Value); - insertCmd.Parameters.AddWithValue("@Parentid", item.Parentid ?? (object)DBNull.Value); - insertCmd.Parameters.AddWithValue("@OrgId", item.OrgId ?? (object)DBNull.Value); - int rows = insertCmd.ExecuteNonQuery(); - if (rows > 0) insertCount++; - } - } - } - } - tran.Commit(); - return $"閮ㄩ棬鏁版嵁鍚屾鎴愬姛锛佹彃鍏insertCount}鏉★紝鏇存柊{updateCount}鏉¤褰曘��"; - } - catch (Exception ex) - { - tran.Rollback(); - _strMsg = $"閮ㄩ棬鏁版嵁鍚屾寮傚父锛歿ex.Message}"; - throw new Exception(_strMsg); - } - finally - { - conn.Close(); - } + conn.Close(); } } } } -} + + public string ApproveUser(OaToMesUser user) + { + var _strMsg = ""; + if (user == null || user.dataJson == null || user.dataJson.Count == 0) + throw new Exception("dataJson涓嶈兘涓虹┖涓斿繀椤诲寘鍚嚦灏戜竴鏉¤褰�"); + + var insertCount = 0; + var updateCount = 0; + using (var conn = new SqlConnection(DbHelperSQL.strConn)) + { + conn.Open(); + using (var tran = conn.BeginTransaction()) + { + try + { + foreach (var item in user.dataJson) + { + // 鍙傛暟鏍¢獙澧炲己 + if (string.IsNullOrEmpty(item.Id)) + throw new Exception("鐢ㄦ埛ID涓嶈兘涓虹┖"); + if (string.IsNullOrEmpty(item.Name)) + throw new Exception("鐢ㄦ埛濮撳悕涓嶈兘涓虹┖"); + + // 妫�鏌ユ槸鍚﹀瓨鍦� + var checkSql = + @"SELECT COUNT(1) FROM OA_USER WHERE Id = @Id"; + using (var checkCmd = + new SqlCommand(checkSql, conn, tran)) + { + checkCmd.Parameters.AddWithValue("@Id", item.Id); + var exists = (int)checkCmd.ExecuteScalar() > 0; + + if (exists) + { + // 鏇存柊 + var updateSql = + @"UPDATE OA_USER SET NAME = @Name, JOBNUMBER = @Jobnumber, DEPARTMENT = @Department WHERE Id = @Id"; + using (var updateCmd = + new SqlCommand(updateSql, conn, tran)) + { + updateCmd.Parameters.AddWithValue("@Id", + item.Id); + updateCmd.Parameters.AddWithValue("@Name", + item.Name ?? (object)DBNull.Value); + updateCmd.Parameters.AddWithValue( + "@Jobnumber", + item.Jobnumber ?? (object)DBNull.Value); + updateCmd.Parameters.AddWithValue( + "@Department", + item.Department ?? + (object)DBNull.Value); + var rows = updateCmd.ExecuteNonQuery(); + if (rows > 0) updateCount++; + } + } + else + { + // 鎻掑叆 + var insertSql = + @"INSERT INTO OA_USER (Id, NAME, JOBNUMBER, DEPARTMENT) VALUES (@Id, @Name, @Jobnumber, @Department)"; + using (var insertCmd = + new SqlCommand(insertSql, conn, tran)) + { + insertCmd.Parameters.AddWithValue("@Id", + item.Id); + insertCmd.Parameters.AddWithValue("@Name", + item.Name ?? (object)DBNull.Value); + insertCmd.Parameters.AddWithValue( + "@Jobnumber", + item.Jobnumber ?? (object)DBNull.Value); + insertCmd.Parameters.AddWithValue( + "@Department", + item.Department ?? + (object)DBNull.Value); + var rows = insertCmd.ExecuteNonQuery(); + if (rows > 0) insertCount++; + } + } + } + } + + tran.Commit(); + return $"鐢ㄦ埛鏁版嵁鍚屾鎴愬姛锛佹彃鍏insertCount}鏉★紝鏇存柊{updateCount}鏉¤褰曘��"; + } + catch (Exception ex) + { + tran.Rollback(); + _strMsg = $"鐢ㄦ埛鏁版嵁鍚屾寮傚父锛歿ex.Message}"; + throw new Exception(_strMsg); + } + finally + { + conn.Close(); + } + } + } + } + + public string ApproveDepartment(OaToMesDepartment department) + { + var _strMsg = ""; + if (department == null || department.dataJson == null || + department.dataJson.Count == 0) + throw new Exception("dataJson涓嶈兘涓虹┖涓斿繀椤诲寘鍚嚦灏戜竴鏉¤褰�"); + + var insertCount = 0; + var updateCount = 0; + using (var conn = new SqlConnection(DbHelperSQL.strConn)) + { + conn.Open(); + using (var tran = conn.BeginTransaction()) + { + try + { + foreach (var item in department.dataJson) + { + // 鍙傛暟鏍¢獙澧炲己 + if (string.IsNullOrEmpty(item.Id)) + throw new Exception("閮ㄩ棬ID涓嶈兘涓虹┖"); + if (string.IsNullOrEmpty(item.Name)) + throw new Exception("閮ㄩ棬鍚嶇О涓嶈兘涓虹┖"); + + // 妫�鏌ユ槸鍚﹀瓨鍦� + var checkSql = + @"SELECT COUNT(1) FROM OA_DEPARTMENT WHERE id = @Id"; + using (var checkCmd = + new SqlCommand(checkSql, conn, tran)) + { + checkCmd.Parameters.AddWithValue("@Id", item.Id); + var exists = (int)checkCmd.ExecuteScalar() > 0; + + if (exists) + { + // 鏇存柊 + var updateSql = + @"UPDATE OA_DEPARTMENT SET name = @Name, Parentid = @Parentid, OrgId = @OrgId WHERE Id = @Id"; + using (var updateCmd = + new SqlCommand(updateSql, conn, tran)) + { + updateCmd.Parameters.AddWithValue("@Id", + item.Id); + updateCmd.Parameters.AddWithValue("@Name", + item.Name ?? (object)DBNull.Value); + updateCmd.Parameters.AddWithValue( + "@Parentid", + item.Parentid ?? (object)DBNull.Value); + updateCmd.Parameters.AddWithValue("@OrgId", + item.OrgId ?? (object)DBNull.Value); + var rows = updateCmd.ExecuteNonQuery(); + if (rows > 0) updateCount++; + } + } + else + { + // 鎻掑叆 + var insertSql = + @"INSERT INTO OA_DEPARTMENT (id, name, Parentid, OrgId) VALUES (@Id, @Name, @Parentid, @OrgId)"; + using (var insertCmd = + new SqlCommand(insertSql, conn, tran)) + { + insertCmd.Parameters.AddWithValue("@Id", + item.Id); + insertCmd.Parameters.AddWithValue("@Name", + item.Name ?? (object)DBNull.Value); + insertCmd.Parameters.AddWithValue( + "@Parentid", + item.Parentid ?? (object)DBNull.Value); + insertCmd.Parameters.AddWithValue("@OrgId", + item.OrgId ?? (object)DBNull.Value); + var rows = insertCmd.ExecuteNonQuery(); + if (rows > 0) insertCount++; + } + } + } + } + + tran.Commit(); + return $"閮ㄩ棬鏁版嵁鍚屾鎴愬姛锛佹彃鍏insertCount}鏉★紝鏇存柊{updateCount}鏉¤褰曘��"; + } + catch (Exception ex) + { + tran.Rollback(); + _strMsg = $"閮ㄩ棬鏁版嵁鍚屾寮傚父锛歿ex.Message}"; + throw new Exception(_strMsg); + } + finally + { + conn.Close(); + } + } + } + } +} \ No newline at end of file -- Gitblit v1.9.3