| | |
| | | using System.Collections.Generic; |
| | | using System.Text; |
| | | using System.Data; |
| | | using System.Reflection; |
| | | using System.Linq; |
| | | |
| | | namespace WebAPI.DLL |
| | | { |
| | |
| | | throw (e); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 根据字段值动态更新数据库 |
| | | /// </summary> |
| | | /// <param name="sItemID"></param> |
| | | /// <returns></returns> |
| | | public bool ModifyByIDDynamic(Int64 sItemID) |
| | | { |
| | | var sql = "Update " + MvarItemKey + " set "; |
| | | string[] excludeNames = { "HErpclsID", "HEntryID", "HInterID", "HReadonly", "HItemID", "HModifyEmp"}; |
| | | foreach (var fInfo in oModel.GetType().GetFields() |
| | | .Where(field => !excludeNames.Contains(field.Name)) |
| | | .ToArray()) |
| | | { |
| | | string fieldName = fInfo.Name; |
| | | var fieldValue = fInfo.GetValue(oModel); |
| | | |
| | | if (fieldValue != null) |
| | | { |
| | | sql += (fieldName + "='" + fieldValue.ToString() + "',"); |
| | | } |
| | | } |
| | | sql = sql.Substring(0, sql.Length - 1); |
| | | sql+= (" Where HItemID = " + sItemID); |
| | | LogService.Write(sql); |
| | | |
| | | oCn.BeginTran(); |
| | | oCn.RunProc(sql, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | //修改子项目代码 |
| | | oCn.RunProc("exec h_p_Gy_UpdateNumber '" + MvarItemKey + "','" + oModel.HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | //将上级 为非末级 |
| | | oCn.RunProc("Update " + MvarItemKey + " set HEndflag=0 where HItemID=" + oModel.HParentID, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | // |
| | | oCn.Commit(); |
| | | return true; |
| | | } |
| | | |
| | | public bool ModifyByIDListDynamic(string HItemID_List, string paramStr) |
| | | { |
| | | var sql = "Update " + MvarItemKey + " set "; |
| | | sql += paramStr; |
| | | sql += (" Where HItemID in " + HItemID_List); |
| | | |
| | | oCn.BeginTran(); |
| | | oCn.RunProc(sql, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | //修改子项目代码 |
| | | oCn.RunProc("exec h_p_Gy_UpdateNumber '" + MvarItemKey + "','" + oModel.HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | //将上级 为非末级 |
| | | oCn.RunProc("Update " + MvarItemKey + " set HEndflag=0 where HItemID=" + oModel.HParentID, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | // |
| | | oCn.Commit(); |
| | | return true; |
| | | } |
| | | |
| | | //根据代码判断信息 |
| | | public override bool HavParentCode(string sCode, Int64 sItemID) |
| | | { |