public static bool Save(TAmbulance entity) { using (MainDataContext dbContext = new MainDataContext(AppConfig.ConnectionStringDispatch)) { if (entity.车辆编码 == "0") //添加 { entity.车辆编码 = PrimaryKeyCreater.getIntPrimaryKey("TAmbulance").ToString("00000"); entity.分站编码 = entity.分站编码.PadLeft(3, '0'); entity.命令单发送去向编码 = 5; entity.任务编码 = ""; entity.任务流水号 = 0; entity.用户流水号 = ""; entity.工作状态编码 = 8; entity.当班执行任务数 = 0; entity.司机 = ""; entity.医生 = ""; entity.护士 = ""; entity.担架工 = ""; entity.抢救员 = ""; entity.是否在线 = false; entity.是否有效 = true; entity.顺序号 = 999; dbContext.TAmbulance.InsertOnSubmit(entity); dbContext.SubmitChanges(); return(true); } else //修改 { var model = dbContext.TAmbulance.FirstOrDefault(t => t.车辆编码 == entity.车辆编码); model.分站编码 = entity.分站编码 == "0" ? "000" : entity.分站编码; model.随车电话 = entity.随车电话; model.实际标识 = entity.实际标识; model.车牌号码 = entity.车牌号码; model.车辆等级编码 = entity.车辆等级编码; model.车辆类型编码 = entity.车辆类型编码; dbContext.SubmitChanges(); return(true); } } }
public static object Edit(string id) { using (MainDataContext dbContext = new MainDataContext(AppConfig.ConnectionStringDispatch)) { TAmbulance entity = null; if (id != null) { entity = dbContext.TAmbulance.FirstOrDefault(t => t.车辆编码 == id); } entity = entity ?? new TAmbulance { 车辆编码 = "0", 实际标识 = "", 分站编码 = "001", 车辆类型编码 = 101, 车辆等级编码 = 101, 随车电话 = "13000000000", }; return(entity); } }
/// <summary> /// 暂不进行数据库操作(只修改对象) 分块修改对象 更灵活 提高效率 /// 获取AmbulanceStateTimeInfo实体 /// </summary> private static TAmbulanceStateTime getAmbStateTimeInfo(int MaxTAmbulanceStateTimeID, string TaskCode, TAmbulance ambInfo, int StateID, DateTime KeyPressTime, string OperatePersonCode) { //TAmbulance ambInfo = Ambulance.GetAmbulanceInfo(AmbCode); TAmbulanceStateTime asInfo = new TAmbulanceStateTime(); asInfo.编码 = MaxTAmbulanceStateTimeID; asInfo.车辆编码 = ambInfo.车辆编码; asInfo.任务编码 = TaskCode; asInfo.车辆状态编码 = StateID; asInfo.时刻值 = KeyPressTime; asInfo.记录时刻 = DateTime.Now; asInfo.操作来源编码 = 5; asInfo.操作员编码 = OperatePersonCode; asInfo.车辆是否在线 = ambInfo.是否在线; return(asInfo); }
public static string Update(TTask newEntity, string Driver, string Doctor, string Nurse, string Litter, string Salver, string AmbulanceStateTime1, string AmbulanceStateTime2, string AmbulanceStateTime3, string AmbulanceStateTime4, string AmbulanceStateTime5, string AmbulanceStateTime6, string AmbulanceStateTime7 , ButtonPower p, C_WorkerDetail UserInfo) { int workID = UserInfo.W.ID; using (MainDataContext dbContext = new MainDataContext(AppConfig.ConnectionStringDispatch)) { try { TTask entity = dbContext.TTask.FirstOrDefault(t => t.任务编码 == newEntity.任务编码); if (entity == null) { return("找不到该任务,无法修改!"); } List <TTaskPersonLink> LtPersonLink = new List <TTaskPersonLink>(); TAmbulance ambInfo = Ambulance.GetAmbulanceInfo(newEntity.车辆编码); newEntity.分站编码 = ambInfo.分站编码; #region 所有对象处理 和List<TAmbulanceStateTime>对象新增 C_WorkerDetail CWD = Anchor.FA.DAL.Organize.Worker.GetWorkerDetailById(Convert.ToInt32(workID)); string PersonCode = CWD.PersonCode.FirstOrDefault(); List <TModifyRecord> mriList = new List <TModifyRecord>(); //如果 (车辆可编辑) if (true) { Task.UpdateTaskAmb(entity, newEntity, PersonCode, mriList); } //如果 (人员可编辑) if (true) { List <string> LtDriver; if (Driver.Length == 0) { LtDriver = new List <string>(); } else { LtDriver = Driver.Split(',').ToList(); } List <string> LtDovtor; if (Doctor.Length == 0) { LtDovtor = new List <string>(); } else { LtDovtor = Doctor.Split(',').ToList(); } List <string> LtNures; if (Nurse.Length == 0) { LtNures = new List <string>(); } else { LtNures = Nurse.Split(',').ToList(); } List <string> LtLitter; if (Litter.Length == 0) { LtLitter = new List <string>(); } else { LtLitter = Litter.Split(',').ToList(); } List <string> LtSalver; if (Salver.Length == 0) { LtSalver = new List <string>(); } else { LtSalver = Salver.Split(',').ToList(); } Task.UpdateTaskPerson(entity, newEntity, PersonCode, mriList, LtPersonLink , LtDriver, LtDovtor, LtNures, LtLitter, LtSalver); var lsPL = dbContext.TTaskPersonLink.Where(t => t.任务编码 == newEntity.任务编码); if (lsPL.Any()) { //Entity FrameWork 居然没有批量删除与新增 汗 //foreach (TTaskPersonLink pl in lsPL) //{ // dbContext.TTaskPersonLink.DeleteOnSubmit(pl); //} dbContext.TTaskPersonLink.DeleteAllOnSubmit(lsPL); } dbContext.TTaskPersonLink.InsertAllOnSubmit(LtPersonLink); //foreach (TTaskPersonLink pl in LtPersonLink) //{ // dbContext.TTaskPersonLink.InsertOnSubmit(pl); //} } //如果 EditTimeNode (各时间字段可编辑) bool EditTimeNode = p.IsHaveRangePower("EditTimeNode"); List <TAmbulanceStateTime> LtAmbStateTime = new List <TAmbulanceStateTime>(); if (EditTimeNode) { int MaxTAmbulanceStateTimeID; var query = from am in dbContext.TAmbulanceStateTime select am.编码; if (query.Any()) { MaxTAmbulanceStateTimeID = query.Max() + 1; } else { MaxTAmbulanceStateTimeID = 1; } //string OperatePersonCode = LoadWorkerRole(Convert.ToInt32(workID)).EmpNo; Task.UpdateTaskStateTime(entity, newEntity, mriList, LtAmbStateTime, MaxTAmbulanceStateTimeID, ambInfo , AmbulanceStateTime1 , AmbulanceStateTime2 , AmbulanceStateTime3 , AmbulanceStateTime4 , AmbulanceStateTime5 , AmbulanceStateTime6 , AmbulanceStateTime7 , PersonCode ); //TAmbulanceStateTime 不删除只新增保留历史数据 //foreach (TAmbulanceStateTime AmbST in LtAmbStateTime) //{ // dbContext.TAmbulanceStateTime.InsertOnSubmit(AmbST); //} dbContext.TAmbulanceStateTime.InsertAllOnSubmit(LtAmbStateTime); } //如果 IsTaskAbdReasonEdit (是否正常结束,异常结束原因编码,备注可编辑) if (true) { Task.UpdateTaskAbdReason(entity, newEntity, PersonCode, mriList); } #endregion #region 数据修改 dbContext.TModifyRecord.InsertAllOnSubmit(mriList); dbContext.SubmitChanges(); #endregion return(""); } catch (Exception ex) { //Log4Net.LogError("", ex.ToString()); return(ex.ToString()); } } }
/// <summary> /// 暂不进行数据库操作(只修改对象) 分块修改对象 更灵活 提高效率 /// 修改 TTask 对象 各时间字段修改 添加 TAmbulanceStateTime list 对象 /// </summary> public static void UpdateTaskStateTime(TTask Oldtaskinfo, TTask taskinfo, List <TModifyRecord> mriList, List <TAmbulanceStateTime> LtAmbStateTime, int MaxTAmbulanceStateTimeID, TAmbulance ambInfo, string Time1 , string Time2, string Time3, string Time4, string Time5 , string Time6, string Time7, string OperatePersonCode) { //var query = from am in db.AmbulanceStateTimeInfos // select am.Code; //if (query.Count() > 0) // ambulanceStateTimeInfo.Code = query.Max() + 1; //else // ambulanceStateTimeInfo.Code = 1; //taskinfo 是新的model 里面并没有存储 接收命令时刻 。。。。 TaskStateTimeNeed receiveCmdTime = compare(Oldtaskinfo.接收命令时刻, Time1); if (receiveCmdTime.NeedUpdate) { //taskinfo.接收命令时刻 = receiveCmdTime.TaskTime; taskinfo.接收命令时刻 = receiveCmdTime.TaskStateTime; LtAmbStateTime.Add(getAmbStateTimeInfo(MaxTAmbulanceStateTimeID, taskinfo.任务编码, ambInfo, 1, receiveCmdTime.TaskStateTime, OperatePersonCode)); MaxTAmbulanceStateTimeID++; } TaskStateTimeNeed ambulanceLeaveTime = compare(Oldtaskinfo.出车时刻, Time2); if (ambulanceLeaveTime.NeedUpdate) { taskinfo.出车时刻 = ambulanceLeaveTime.TaskStateTime; LtAmbStateTime.Add(getAmbStateTimeInfo(MaxTAmbulanceStateTimeID, taskinfo.任务编码, ambInfo, 2, ambulanceLeaveTime.TaskStateTime, OperatePersonCode)); MaxTAmbulanceStateTimeID++; } TaskStateTimeNeed arriveSceneTime = compare(Oldtaskinfo.到达现场时刻, Time3); if (arriveSceneTime.NeedUpdate) { taskinfo.到达现场时刻 = arriveSceneTime.TaskStateTime; LtAmbStateTime.Add(getAmbStateTimeInfo(MaxTAmbulanceStateTimeID, taskinfo.任务编码, ambInfo, 3, arriveSceneTime.TaskStateTime, OperatePersonCode)); MaxTAmbulanceStateTimeID++; } TaskStateTimeNeed leaveSceneTime = compare(Oldtaskinfo.离开现场时刻, Time4); if (leaveSceneTime.NeedUpdate) { taskinfo.离开现场时刻 = leaveSceneTime.TaskStateTime; LtAmbStateTime.Add(getAmbStateTimeInfo(MaxTAmbulanceStateTimeID, taskinfo.任务编码, ambInfo, 4, leaveSceneTime.TaskStateTime, OperatePersonCode)); MaxTAmbulanceStateTimeID++; } TaskStateTimeNeed arriveHospitalTime = compare(Oldtaskinfo.到达医院时刻, Time5); if (arriveHospitalTime.NeedUpdate) { taskinfo.到达医院时刻 = arriveHospitalTime.TaskStateTime; LtAmbStateTime.Add(getAmbStateTimeInfo(MaxTAmbulanceStateTimeID, taskinfo.任务编码, ambInfo, 5, arriveHospitalTime.TaskStateTime, OperatePersonCode)); MaxTAmbulanceStateTimeID++; } TaskStateTimeNeed finishTime = compare(Oldtaskinfo.完成时刻, Time6); if (finishTime.NeedUpdate) { taskinfo.完成时刻 = finishTime.TaskStateTime; LtAmbStateTime.Add(getAmbStateTimeInfo(MaxTAmbulanceStateTimeID, taskinfo.任务编码, ambInfo, 6, finishTime.TaskStateTime, OperatePersonCode)); MaxTAmbulanceStateTimeID++; } TaskStateTimeNeed returnTime = compare(Oldtaskinfo.返回站中时刻, Time7); if (returnTime.NeedUpdate) { taskinfo.返回站中时刻 = returnTime.TaskStateTime; LtAmbStateTime.Add(getAmbStateTimeInfo(MaxTAmbulanceStateTimeID, taskinfo.任务编码, ambInfo, 7, returnTime.TaskStateTime, OperatePersonCode)); MaxTAmbulanceStateTimeID++; } ModifyTask3(Oldtaskinfo, taskinfo, OperatePersonCode, mriList); }
public bool Save(TAmbulance entity) { return(DAL.BasicInfo.Ambulance.Save(entity)); }