public bool Save(TZBranch entity, int managerId, int stationId) { if (DataAccess <TZBranch> .ToList(AppConfig.ConnectionStringDispatch).Count(t => t.编码 == entity.编码) == 0) //添加 { //TZBranch //long total = DataAccess<TZBranch>.ToList(AppConfig.ConnectionStringDispatch).Count; //if (total == 0) //{ // entity.编码 = 1; //} //else //{ // entity.编码 = DataAccess<TZBranch>.ToList(AppConfig.ConnectionStringDispatch).Max(a => a.编码) + 1; //} //B_ORGANIZATION B_ORGANIZATION org = new B_ORGANIZATION(); org.ID = DataAccess <B_ORGANIZATION> .ToList().Max(a => a.ID) + 1;; org.ManagerID = managerId; org.Name = entity.称; org.Type = (int)OrgType.Branch; org.编码 = entity.编码.ToString(); org.ParentID = stationId; //Insert //using (TransactionScope scope = new TransactionScope()) //{ try { DataAccess <B_ORGANIZATION> .Insert(org); DataAccess <TZBranch> .Insert(AppConfig.ConnectionStringDispatch, entity); //scope.Complete(); return(true); } catch (Exception ex) { Log4Net.LogError("SaveBranch", ex.ToString()); return(false); } //} } else { //using (TransactionScope scope = new TransactionScope()) //{ try { //TCenter DataAccess <TZBranch> .Update(AppConfig.ConnectionStringDispatch, entity); //B_ORGANIZATION Func <B_ORGANIZATION, bool> o = s => s.编码 == entity.编码.ToString() && s.Type == (int)OrgType.Branch; B_ORGANIZATION org = DataAccess <B_ORGANIZATION> .SingleOrDefault(o); org.ManagerID = managerId; org.Name = entity.称; org.ParentID = stationId; DataAccess <B_ORGANIZATION> .Update(org); //B_WORKER_ORGANIZATION Func <B_WORKER_ORGANIZATION, bool> c = s => s.OrgID == org.ID; List <B_WORKER_ORGANIZATION> list = DataAccess <B_WORKER_ORGANIZATION> .Where(c).ToList(); foreach (B_WORKER_ORGANIZATION wo in list) { if (wo.WorkerID != managerId) { wo.ParentID = managerId; DataAccess <B_WORKER_ORGANIZATION> .Update(wo); } } //scope.Complete(); return(true); } catch (Exception ex) { Log4Net.LogError("SaveBranch", ex.ToString()); return(false); } } //} }
public static bool SaveWorkerRole(B_WORKER_ROLE entity) { using (MainDataContext dbContext = new MainDataContext()) { using (MainDataContext dsContext = new MainDataContext(AppConfig.ConnectionStringDispatch)) { try { //同步Tperson if (!string.IsNullOrEmpty(entity.EmpNo)) { B_WORKER worker = GetWorkerById(entity.WorkerID); B_ORGANIZATION unit = Organize.GetUnit(entity.OrgID); if (dsContext.TPerson.Count(t => t.编码 == entity.TPerson编码) == 0) { //string empNo = GetCoding(); IApplicationContext ctx = ContextRegistry.GetContext(); IEncrypt encrypt = ctx["Encrypt"] as IEncrypt; TPerson person = new TPerson(); person.编码 = entity.TPerson编码; person.单位编码 = unit.Type == (int)OrgType.Branch ? unit.编码 : "-1"; person.通话号码 = worker.Tel ?? string.Empty; person.短信号码 = worker.Mobile ?? string.Empty; person.分站编码 = unit.Type == (int)OrgType.Station ? unit.编码 : AppConfig.GetStringConfigValue("VirtualCode"); person.类型编码 = entity.RoleID; person.姓名 = worker.Name; person.工号 = entity.EmpNo; person.口令 = new HashEncrypt().DESEncrypt(encrypt.Decrypt(worker.PassWord), ""); person.次操作时间 = DateTime.Now; person.顺序号 = int.Parse(entity.TPerson编码); person.是否有效 = true; dsContext.TPerson.InsertOnSubmit(person); } else { var tp = dsContext.TPerson.FirstOrDefault(t => t.编码 == entity.TPerson编码); tp.单位编码 = unit.Type == (int)OrgType.Branch ? unit.编码 : "-1"; tp.分站编码 = unit.Type == (int)OrgType.Station ? unit.编码 : AppConfig.GetStringConfigValue("VirtualCode"); tp.类型编码 = entity.RoleID; tp.工号 = entity.EmpNo; } } //人员 if (entity.ID == 0) { var list = from a in dbContext.B_WORKER_ROLE select a.ID; long total = list.LongCount(); if (total == 0) { entity.ID = 1; } else { entity.ID = dbContext.B_WORKER_ROLE.Max(a => a.ID) + 1; } entity.EmpNo = entity.EmpNo ?? string.Empty; entity.TPerson编码 = entity.TPerson编码 ?? string.Empty; dbContext.B_WORKER_ROLE.InsertOnSubmit(entity); } else { var model = dbContext.B_WORKER_ROLE.FirstOrDefault(b => b.ID == entity.ID); model.OrgID = entity.OrgID; model.WorkerID = entity.WorkerID; model.RoleID = entity.RoleID; model.EmpNo = entity.EmpNo ?? string.Empty; model.ID = entity.ID; model.TPerson编码 = entity.TPerson编码 ?? string.Empty; } dbContext.SubmitChanges(); dsContext.SubmitChanges(); return(true); } catch (Exception ex) { Log4Net.LogError("SaveWorkerRole", ex.ToString()); return(false); } } } }
/// <summary> /// 保存兼职机构 /// </summary> /// <param name="entity"></param> /// <param name="type"></param> /// <param name="unitID"></param> /// <returns></returns> public static bool SaveSideline(B_WORKER_ORGANIZATION entity) { using (MainDataContext dbContext = new MainDataContext()) { using (MainDataContext dsContext = new MainDataContext(AppConfig.ConnectionStringDispatch)) { if (entity.ID == 0) //添加 { var list = from a in dbContext.B_WORKER_ORGANIZATION select a.ID; long total = list.LongCount(); if (total == 0) { entity.ID = 1; } else { entity.ID = dbContext.B_WORKER_ORGANIZATION.Max(a => a.ID) + 1; } dbContext.B_WORKER_ORGANIZATION.InsertOnSubmit(entity); } else { var model = dbContext.B_WORKER_ORGANIZATION.FirstOrDefault(b => b.ID == entity.ID); //机构修改,更新B_WORKER_ROLE和Tperson if (model.OrgID != entity.OrgID) { List <B_WORKER_ROLE> list = dbContext.B_WORKER_ROLE.Where(t => t.WorkerID == model.WorkerID && t.OrgID == model.OrgID).ToList(); foreach (B_WORKER_ROLE wr in list) { wr.OrgID = entity.OrgID; if (!string.IsNullOrEmpty(wr.TPerson编码.Trim())) { var tp = dsContext.TPerson.FirstOrDefault(t => t.编码 == wr.TPerson编码); B_ORGANIZATION unit = Organize.GetUnit(entity.OrgID); tp.单位编码 = unit.Type == (int)OrgType.Branch ? unit.编码 : "-1"; tp.分站编码 = unit.Type == (int)OrgType.Station ? unit.编码 : AppConfig.GetStringConfigValue("VirtualCode"); } } } model.OrgID = entity.OrgID; model.WorkerID = entity.WorkerID; model.ParentID = entity.ParentID; model.PostID = entity.PostID; model.Remark = entity.Remark; model.Type = entity.Type; } dbContext.SubmitChanges(); dsContext.SubmitChanges(); return(true); } } }
public bool Save(TStation entity, int managerId) { if (DataAccess <TStation> .ToList(AppConfig.ConnectionStringDispatch).Count(t => t.编码 == entity.编码) == 0) //添加 { //TStation //long total = DataAccess<TStation>.ToList(AppConfig.ConnectionStringDispatch).Count; //if (total == 0) //{ // entity.编码 = "001"; //} //else //{ // int code = int.Parse(DataAccess<TStation>.ToList(AppConfig.ConnectionStringDispatch).Max(a => a.编码)) + 1; // entity.编码 = code.ToString().PadLeft(3, '0'); ; //} //B_ORGANIZATION表 B_ORGANIZATION org = new B_ORGANIZATION(); org.ID = DataAccess <B_ORGANIZATION> .ToList().Max(a => a.ID) + 1;; org.ManagerID = managerId; org.Name = entity.称; org.Type = (int)OrgType.Station; org.编码 = entity.编码.ToString(); Func <B_ORGANIZATION, bool> o = s => s.编码 == entity.中心编码.ToString() && s.Type == (int)OrgType.Center; org.ParentID = DataAccess <B_ORGANIZATION> .SingleOrDefault(o).ID; //Insert //using (TransactionScope scope = new TransactionScope()) //{ try { DataAccess <B_ORGANIZATION> .Insert(org); DataAccess <TStation> .Insert(AppConfig.ConnectionStringDispatch, entity); //scope.Complete(); return(true); } catch (Exception ex) { Log4Net.LogError("SaveSation", ex.ToString()); return(false); } //} } else //修改 { //using (TransactionScope scope = new TransactionScope()) //{ try { //TCenter DataAccess <TStation> .Update(AppConfig.ConnectionStringDispatch, entity); //B_ORGANIZATION Func <B_ORGANIZATION, bool> o = s => s.编码 == entity.编码.ToString() && s.Type == (int)OrgType.Station; B_ORGANIZATION org = DataAccess <B_ORGANIZATION> .SingleOrDefault(o); org.ManagerID = managerId; org.Name = entity.称; Func <B_ORGANIZATION, bool> p = s => s.编码 == entity.中心编码.ToString() && s.Type == (int)OrgType.Center; org.ParentID = DataAccess <B_ORGANIZATION> .SingleOrDefault(p).ID; DataAccess <B_ORGANIZATION> .Update(org); //B_WORKER_ORGANIZATION Func <B_WORKER_ORGANIZATION, bool> c = s => s.OrgID == org.ID; List <B_WORKER_ORGANIZATION> list = DataAccess <B_WORKER_ORGANIZATION> .Where(c).ToList(); foreach (B_WORKER_ORGANIZATION wo in list) { if (wo.WorkerID != managerId) { wo.ParentID = managerId; DataAccess <B_WORKER_ORGANIZATION> .Update(wo); } } //scope.Complete(); return(true); } catch (Exception ex) { Log4Net.LogError("SaveCenter", ex.ToString()); return(false); } } //} }