/// <summary> /// 保存行政村危险区转移人员信息 /// </summary> /// <param name="ids"></param> /// <returns></returns> public BaseResult SaveVillageTransferPerson(SaveVillageTransferPerson request) { using (var db = DbFactory.Open()) { var adcdInfo = ZZTXManager.GetADCDInfoByADCD(request.adcd); var info = new VillageTransferPerson(); info.adcd = request.adcd; info.DangerZoneName = request.DangerZoneName; info.DangerZoneType = request.DangerZoneType; info.DisasterPreventionManager = request.DisasterPreventionManager; info.DisasterPreventionManagerMobile = request.DisasterPreventionManagerMobile; info.DisasterPreventionName = request.DisasterPreventionName; info.HouseholderMobile = request.HouseholderMobile; info.HouseholderName = request.HouseholderName; info.HouseholderNum = request.HouseholderNum; info.Lat = request.Lat; info.Lng = request.Lng; info.PersonLiableMobile = request.PersonLiableMobile; info.PersonLiableName = request.PersonLiableName; info.PersonLiablePost = request.PersonLiablePost; info.Position = request.Position; info.SafetyIdentification = request.SafetyIdentification; info.WarnPersonLiableMobile = request.WarnPersonLiableMobile; info.WarnPersonLiablePost = request.WarnPersonLiablePost; info.WarnPersonLiableName = request.WarnPersonLiableName; info.Year = DateTime.Now.Year; info.Remark = request.Remark; //新数据 List <VillageTransferPerson> _newdata = new List <VillageTransferPerson>(); _newdata.Add(info); // operateLog log = new operateLog(); log.userName = RealName; log.operateTime = DateTime.Now; if (request.Id != 0) { #region 旧数据,新数据 //取出数据 //写入更新记录 var rf = db.Single <VillageTransferPerson>(w => w.ID == request.Id); var _olddata = new VillageTransferPerson() { adcd = rf.adcd, DangerZoneName = rf.DangerZoneName, DangerZoneType = rf.DangerZoneType, DisasterPreventionManager = rf.DisasterPreventionManager, DisasterPreventionManagerMobile = rf.DisasterPreventionManagerMobile, DisasterPreventionName = rf.DisasterPreventionName, HouseholderMobile = rf.HouseholderMobile, HouseholderName = rf.HouseholderName, HouseholderNum = rf.HouseholderNum, Lat = rf.Lat, Lng = rf.Lng, PersonLiableMobile = rf.PersonLiableMobile, PersonLiableName = rf.PersonLiableName, PersonLiablePost = rf.PersonLiablePost, Position = rf.Position, SafetyIdentification = rf.SafetyIdentification, WarnPersonLiableMobile = rf.WarnPersonLiableMobile, WarnPersonLiablePost = rf.WarnPersonLiablePost, WarnPersonLiableName = rf.WarnPersonLiableName, Year = rf.Year }; if (AuditNums != null) { List <VillageTransferPerson> _listOldData = new List <VillageTransferPerson>(); _listOldData.Add(_olddata); info.AuditNums = AuditNums.Value + 1; //旧数据写入实体 info.OldData = JsonTools.ObjectToJson(_listOldData); //新数据写入实体 info.NewData = JsonTools.ObjectToJson(_newdata); } #endregion //数据更新前取出历史数据 var rlist = db.Select <VillageTransferPerson>(w => w.ID == request.Id); // info.ID = request.Id; log.operateMsg = "更新" + request.Year + "年" + adcdInfo.adnm + ",名为:" + request.DangerZoneName + "危险区(点)转移人员信息"; List <operateLog> listLog = new List <operateLog>(); listLog.Add(log); info.operateLog = JsonTools.ObjectToJson(listLog); var r = db.Update(info) == 1; #region 日志 StringBuilder sb = new StringBuilder(); sb.Append("在栏目{组织责任/行政村危险区人员转移清单}下,更新数据{"); sb.Append("村ADCD:" + adcdInfo.adnm + ";"); sb.Append("危险区(点)名称:" + _olddata.DangerZoneName + ";"); sb.Append("类别:" + _olddata.DangerZoneType + ";"); sb.Append("避灾场所管理员:" + _olddata.DisasterPreventionManager + ";"); sb.Append("避灾场所管理员手机:" + _olddata.DisasterPreventionManagerMobile + ";"); sb.Append("避灾场所名称:" + _olddata.DisasterPreventionName + ";"); sb.Append("户主手机:" + _olddata.HouseholderMobile + ";"); sb.Append("户主姓名:" + _olddata.HouseholderName + ";"); sb.Append("居住人数:" + _olddata.HouseholderNum + ";"); sb.Append("纬度:" + _olddata.Lat + ";"); sb.Append("经度:" + _olddata.Lng + ";"); sb.Append("责任人手机:" + _olddata.PersonLiableMobile + ";"); sb.Append("责任人姓名:" + _olddata.PersonLiableName + ";"); sb.Append("责任人职务:" + _olddata.PersonLiablePost + ";"); sb.Append("位置:" + _olddata.Position + ";"); sb.Append("有无安全鉴定:" + _olddata.SafetyIdentification + ";"); sb.Append("预警责任人手机:" + _olddata.WarnPersonLiableMobile + ";"); sb.Append("预警责任人职务:" + _olddata.WarnPersonLiablePost + ";"); sb.Append("预警责任人姓名:" + _olddata.WarnPersonLiableName + ";"); sb.Append("年度:" + _olddata.Year + ";"); sb.Append("}为{"); sb.Append("村ADCD:" + adcdInfo.adnm + ";"); sb.Append("危险区(点)名称:" + info.DangerZoneName + ";"); sb.Append("类别:" + info.DangerZoneType + ";"); sb.Append("避灾场所管理员:" + info.DisasterPreventionManager + ";"); sb.Append("避灾场所管理员手机:" + info.DisasterPreventionManagerMobile + ";"); sb.Append("避灾场所名称:" + info.DisasterPreventionName + ";"); sb.Append("户主手机:" + info.HouseholderMobile + ";"); sb.Append("户主姓名:" + info.HouseholderName + ";"); sb.Append("居住人数:" + info.HouseholderNum + ";"); sb.Append("纬度:" + info.Lat + ";"); sb.Append("经度:" + info.Lng + ";"); sb.Append("责任人手机:" + info.PersonLiableMobile + ";"); sb.Append("责任人姓名:" + info.PersonLiableName + ";"); sb.Append("责任人职务:" + info.PersonLiablePost + ";"); sb.Append("位置:" + info.Position + ";"); sb.Append("有无安全鉴定:" + info.SafetyIdentification + ";"); sb.Append("预警责任人手机:" + info.WarnPersonLiableMobile + ";"); sb.Append("预警责任人职务:" + info.WarnPersonLiablePost + ";"); sb.Append("预警责任人姓名:" + info.WarnPersonLiableName + ";"); sb.Append("年度:" + info.Year + ";"); sb.Append("}"); _ILogHelper.WriteLog(sb.ToString(), OperationTypeEnums.更新); #endregion //if (r) //{ // //村 受灾点 受灾害影响人口 更新 // var oldNum = rlist.FirstOrDefault().HouseholderNum; // var newNum = request.HouseholderNum; // var newhouseholdernum = newNum - oldNum; // using (var dbADCDStatics = DbFactory.Open()) // { // var _year = request.Year == 0 ? DateTime.Now.Year : request.Year; // var dbbuilder = dbADCDStatics.From<ADCDDisasterInfo>().Where(w => w.adcd == request.adcd && w.Year==_year).Update(x => new { x.PopulationNum }); // dbADCDStatics.UpdateAdd(() => new ADCDDisasterInfo { PopulationNum = newhouseholdernum }, dbbuilder); // } //} BaseResult br = new BaseResult(); br.IsSuccess = r; return(br); } else { BaseResult br = null; var f = db.Single <VillageTransferPerson>(w => w.adcd == request.adcd && w.IfTransfer == 1); if (f != null) { br = new BaseResult(); br.IsSuccess = false; br.ErrorMsg = "保存失败!村被标记过无转移人员,新增人员时请先在已上报里删除村。"; return(br); } #region 旧数据,新数据 //写入更新记录 if (AuditNums != null) { info.AuditNums = AuditNums.Value + 1; } #endregion info.CreateTime = DateTime.Now; log.operateMsg = "新增" + request.Year + "年" + adcdInfo.adnm + ",名为:" + request.DangerZoneName + "危险区(点)转移人员信息"; List <operateLog> listLog = new List <operateLog>(); listLog.Add(log); info.operateLog = JsonTools.ObjectToJson(listLog); var r = db.Insert(info) == 1; #region 日志 StringBuilder sb = new StringBuilder(); sb.Append("在栏目{组织责任/行政村危险区人员转移清单}下,新增数据{"); sb.Append("村ADCD:" + adcdInfo.adnm + ";"); sb.Append("危险区(点)名称:" + info.DangerZoneName + ";"); sb.Append("类别:" + info.DangerZoneType + ";"); sb.Append("避灾场所管理员:" + info.DisasterPreventionManager + ";"); sb.Append("避灾场所管理员手机:" + info.DisasterPreventionManagerMobile + ";"); sb.Append("避灾场所名称:" + info.DisasterPreventionName + ";"); sb.Append("户主手机:" + info.HouseholderMobile + ";"); sb.Append("户主姓名:" + info.HouseholderName + ";"); sb.Append("居住人数:" + info.HouseholderNum + ";"); sb.Append("纬度:" + info.Lat + ";"); sb.Append("经度:" + info.Lng + ";"); sb.Append("责任人手机:" + info.PersonLiableMobile + ";"); sb.Append("责任人姓名:" + info.PersonLiableName + ";"); sb.Append("责任人职务:" + info.PersonLiablePost + ";"); sb.Append("位置:" + info.Position + ";"); sb.Append("有无安全鉴定:" + info.SafetyIdentification + ";"); sb.Append("预警责任人手机:" + info.WarnPersonLiableMobile + ";"); sb.Append("预警责任人职务:" + info.WarnPersonLiablePost + ";"); sb.Append("预警责任人姓名:" + info.WarnPersonLiableName + ";"); sb.Append("年度:" + info.Year + ";"); sb.Append("}"); _ILogHelper.WriteLog(sb.ToString(), OperationTypeEnums.新增); #endregion //if (r) //{ // //村 受灾点 受灾害影响人口 更新 // using (var dbADCDStatics = DbFactory.Open()) // { // var _year = request.Year == 0 ? DateTime.Now.Year : request.Year; // var dbbuilder = dbADCDStatics.From<ADCDDisasterInfo>().Where(w=>w.adcd==request.adcd && w.Year == _year).Update(x => new { x.PointNum, x.PopulationNum }); // dbADCDStatics.UpdateAdd(()=>new ADCDDisasterInfo { PointNum=1,PopulationNum=request.HouseholderNum }, dbbuilder); // } //} br = new BaseResult(); br.IsSuccess = r; return(br); } } }
public BaseResult POST(SaveVillageTransferPerson request) { return(VillageTransferPersonManager.SaveVillageTransferPerson(request)); }