public ActionResult DeleteDoor(int id) { JsonModel jm = new JsonModel(); IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); // 根据指定id值获取实体对象 var door = doorBll.GetEntity(index => index.Id == id); var count = door.HouseUsers.Where(p => p.DelFlag == 0).Count(); if (door == null) { jm.Msg = "该单元户不存在"; } else { if (doorBll.Delete(door)) { //操作日志 jm.Content = "删除单元户 " + door.DoorName; } else { jm.Msg = "删除失败"; } } return(Json(jm, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 获取单元户Id, 如果没有将新建一个单元户 /// </summary> /// <param name="doorName"></param> /// <param name="unitId"></param> /// <returns></returns> private static int GetBuildDoorId(string doorName, int unitId) { int doorId = 0; //楼座接口 IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); var door = doorBll.GetEntity(b => b.DoorName == doorName && b.UnitId == unitId); if (door != null) { doorId = door.Id; } else { door = new T_BuildDoor() { DoorName = doorName, UnitId = unitId }; try { doorBll.Save(door); doorId = door.Id; } catch (Exception) { doorId = 0; } } return(doorId); }
public ActionResult EditDoor(BuildDoorSearchModel model) { JsonModel jm = new JsonModel(); //如果表单模型验证成功 if (ModelState.IsValid) { IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); T_BuildDoor doorInfo = doorBll.GetEntity(m => m.Id == model.DoorId); if (doorInfo != null) { doorInfo.DoorName = model.DoorName; // 保存到数据库 doorBll.Update(doorInfo); //日志记录 jm.Content = PropertyUtils.ModelToJsonString(model); } else { jm.Msg = "该单元户不存在"; } } else { // 保存异常日志 jm.Msg = ConstantParam.JSON_RESULT_MODEL_CHECK_ERROR; } return(Json(jm, JsonRequestBehavior.AllowGet)); }
public ActionResult AddDoor(BuildDoorSearchModel model) { JsonModel jm = new JsonModel(); IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); if (doorBll.Exist(m => m.DoorName == model.DoorName && m.Id != model.DoorId && m.UnitId == model.UnitId)) { jm.Msg = "该单元户名称已经存在"; } //如果表单模型验证成功 else if (ModelState.IsValid) { T_BuildDoor newDoor = new T_BuildDoor() { DoorName = model.DoorName, UnitId = model.UnitId }; // 保存到数据库 doorBll.Save(newDoor); //日志记录 jm.Content = PropertyUtils.ModelToJsonString(model); } else { // 保存异常日志 jm.Msg = ConstantParam.JSON_RESULT_MODEL_CHECK_ERROR; } return(Json(jm, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 批量增加单元户的远程验证 /// </summary> /// <param name="model"></param> /// <returns></returns> public string RemoteCheck(BuildDoorBatchAddModel model, int BuildId) { IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); var lamdaList = new List <Expression <Func <T_BuildDoor, bool> > >(); foreach (var name in model.DoorName) { lamdaList.Add(r => r.DoorName == name); } Expression <Func <T_BuildDoor, bool> > lamda = p => false; Expression <Func <T_BuildDoor, bool> > lamda1 = r => (r.UnitId == model.UnitId && r.BuildUnit.BuildId == model.BuildId); foreach (var expression in lamdaList) { lamda = PredicateBuilder.Or <T_BuildDoor>(lamda, expression); } lamda = PredicateBuilder.And(lamda, lamda1); var doorlist = doorBll.GetList(lamda);//查询 if (doorlist.Count() > 0) { // 校验不通过 return(string.Join(",", doorlist.ToList().Select(q => q.DoorName).Distinct().ToArray())); } else { // 校验通过 return(""); } }
public ActionResult DoorList(BuildDoorSearchModel model) { // 获取单元户访问对象 IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); int propertyPlaceId = GetSessionModel().PropertyPlaceId.Value; Expression <Func <T_BuildDoor, bool> > where = w => (model.UnitId == 0 ? true : w.UnitId == model.UnitId) && (string.IsNullOrEmpty(model.DoorName) ? true : w.DoorName.Contains(model.DoorName)) && (string.IsNullOrEmpty(model.UnitName) ? true : w.BuildUnit.UnitName.Contains(model.UnitName)) && (string.IsNullOrEmpty(model.BuildName) ? true : w.BuildUnit.Build.BuildName.Contains(model.BuildName)) && w.BuildUnit.Build.PropertyPlaceId == propertyPlaceId; // 排序模型 var sortModel = this.SettingSorting("Id", false); model.List = doorBll.GetPageList(where, sortModel.SortName, sortModel.IsAsc, model.PageIndex) as PagedList <T_BuildDoor>; return(View(model)); }
/// <summary> /// 远程验证指定单元户名称是否存在 /// </summary> /// <param name="doorName">单元户名称</param> /// <param name="id">单元户id,新增时恒为0,修改单元户名称时不为0</param> public ContentResult RemoteCheckExist(BuildDoorSearchModel model) { IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); // 单元户名称已存在 if (doorBll.Exist(m => m.DoorName == model.DoorName && m.Id != model.DoorId && m.UnitId == model.UnitId)) { // 校验不通过 return(Content("false")); } else { return(Content("true")); } }
/// <summary> /// 获取单元户列表 /// </summary> /// <returns>户列表</returns> private List <SelectListItem> GetDoorList(int unitId) { //获取单元户列表 IBuildDoorBLL DoorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); var sortModel = this.SettingSorting("Id", true); var list = DoorBll.GetList(u => u.UnitId == unitId, sortModel.SortName, sortModel.IsAsc); //转换为下拉列表并返回 return(list.Select(m => new SelectListItem() { Text = m.DoorName, Value = m.Id.ToString(), Selected = false }).ToList()); }
public JsonResult GetDoorList(int?unitId) { List <object> list = new List <object>(); if (unitId == null) { return(Json(list, JsonRequestBehavior.AllowGet)); } IBuildDoorBLL bll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); foreach (var item in bll.GetList(m => m.UnitId == unitId.Value).ToList()) { list.Add(new { Value = item.Id.ToString(), Text = item.DoorName }); } return(Json(list, JsonRequestBehavior.AllowGet)); }
public ActionResult EditDoor(int id) { IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); var doorInfo = doorBll.GetEntity(index => index.Id == id); if (doorInfo != null) { BuildDoorSearchModel doorModel = new BuildDoorSearchModel(); doorModel.BuildName = doorInfo.BuildUnit.Build.BuildName; doorModel.UnitName = doorInfo.BuildUnit.UnitName; doorModel.UnitId = doorInfo.BuildUnit.Id; doorModel.DoorId = id; doorModel.DoorName = doorInfo.DoorName; return(View(doorModel)); } else { return(RedirectToAction("DoorList")); } }
public ActionResult BatchAddDoor(BuildDoorBatchAddModel model, int BuildId) { JsonModel jm = new JsonModel(); var unitId = model.UnitId; var result = RemoteCheck(model, BuildId); if (!string.IsNullOrEmpty(result)) { // 保存异常日志 jm.Msg = result + "单元户名已存在"; return(Json(jm, JsonRequestBehavior.AllowGet)); } //如果表单模型验证成功 if (ModelState.IsValid) { IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); List <T_BuildDoor> list = new List <T_BuildDoor>(); for (int i = 0; i < model.DoorName.Length; i++) { T_BuildDoor newDoor = new T_BuildDoor() { DoorName = model.DoorName[i], UnitId = model.UnitId }; list.Add(newDoor); } // 批量保存 doorBll.BatchAddDoor(model.UnitId, list); //日志记录 jm.Content = PropertyUtils.ModelToJsonString(model); } else { // 保存异常日志 jm.Msg = ConstantParam.JSON_RESULT_MODEL_CHECK_ERROR; } return(Json(jm, JsonRequestBehavior.AllowGet)); }
public ActionResult Index(int id = 1) { CompanyPlatformIndexModel model = new CompanyPlatformIndexModel(); int CurrentCompanyId = GetSessionModel().CompanyId.Value; //获取当前公司物业小区个数并赋值 IPropertyPlaceBLL placeBll = BLLFactory <IPropertyPlaceBLL> .GetBLL("PropertyPlaceBLL"); model.PlaceCount = placeBll.Count(u => u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.CompanyId == CurrentCompanyId); //获取当前公司下属小区物业人员总个数 IPropertyUserBLL placeUserBll = BLLFactory <IPropertyUserBLL> .GetBLL("PropertyUserBLL"); model.PlaceUserCount = placeUserBll.Count(u => u.PropertyPlace.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.PropertyPlace.CompanyId == CurrentCompanyId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //住宅业主个数 IHouseUserBLL houseUserBll = BLLFactory <IHouseUserBLL> .GetBLL("HouseUserBLL"); model.HouseUserCount = houseUserBll.Count(u => u.PropertyPlace.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.PropertyPlace.CompanyId == CurrentCompanyId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //办公楼业主个数 IBuildCompanyBLL buildCompanyBll = BLLFactory <IBuildCompanyBLL> .GetBLL("BuildCompanyBLL"); model.BuildCompanyCount = buildCompanyBll.Count(u => u.PropertyPlace.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.PropertyPlace.CompanyId == CurrentCompanyId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //获取物业公告个数 IPostBLL postBLL = BLLFactory <IPostBLL> .GetBLL("PostBLL"); int postCount = postBLL.Count(u => u.PropertyPlace.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.PropertyPlace.CompanyId == CurrentCompanyId && u.PublishedFlag == ConstantParam.PUBLISHED_TRUE && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); model.PlacePostCount = postCount; //获取业主上报问题个数 IQuestionBLL questionBLL = BLLFactory <IQuestionBLL> .GetBLL("QuestionBLL"); int QuestionCount = questionBLL.Count(u => u.PropertyPlace.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.PropertyPlace.CompanyId == CurrentCompanyId); //获取业主上报问题已处理个数 int DisposedQuestionCount = questionBLL.Count(u => u.PropertyPlace.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.PropertyPlace.CompanyId == CurrentCompanyId && u.Status == ConstantParam.DISPOSED); //设置上报问题处理率 model.QuestionDisposedRate = Convert.ToDouble(DisposedQuestionCount) / QuestionCount; //获取巡检异常个数 IInspectionResultBLL resultBLL = BLLFactory <IInspectionResultBLL> .GetBLL("InspectionResultBLL"); int InspectionExceptionCount = resultBLL.Count(u => u.InspectionTimePlan.InspectionPlan.PropertyPlace.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.InspectionTimePlan.InspectionPlan.PropertyPlace.CompanyId == CurrentCompanyId && u.Status == ConstantParam.EXCEPTION && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //获取巡检异常已处理个数 int DisposedInspectionExceptionCount = resultBLL.Count(u => u.InspectionTimePlan.InspectionPlan.PropertyPlace.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.InspectionTimePlan.InspectionPlan.PropertyPlace.CompanyId == CurrentCompanyId && u.Status == ConstantParam.EXCEPTION && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.DisposeStatus == ConstantParam.DISPOSED); //设置巡检异常处理率 model.InspectionExceptionDisposedRate = Convert.ToDouble(DisposedInspectionExceptionCount) / InspectionExceptionCount; var dataList = placeBll.GetList(u => u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && u.CompanyId == CurrentCompanyId).ToList(); var ExpenseCountList = new List <ExpenseCountModel>(); foreach (var item in dataList) { var m = new ExpenseCountModel(); m.PlaceName = item.Name; //如果是住宅小区 if (item.PlaceType == ConstantParam.PLACE_TYPE_HOUSE) { IBuildDoorBLL doorBll = BLLFactory <IBuildDoorBLL> .GetBLL("BuildDoorBLL"); m.DoorCount = doorBll.Count(d => d.BuildUnit.Build.PropertyPlaceId == item.Id); int ExpensedDoorCount = doorBll.Count(d => d.BuildUnit.Build.PropertyPlaceId == item.Id && d.HouseUserExpenseDetails.Count > 0 && d.HouseUserExpenseDetails.OrderByDescending(e => e.CreateDate).FirstOrDefault().IsPayed == ConstantParam.PAYED_TRUE); m.ExpensedRate = Convert.ToDouble(ExpensedDoorCount) / m.DoorCount; } //如果是办公楼小区 else if (item.PlaceType == ConstantParam.PLACE_TYPE_COMPANY) { m.DoorCount = item.BuildCompanys.Count(c => c.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); int ExpensedDoorCount = item.BuildCompanys.Count(c => c.HouseUserExpenseDetails.Count > 0 && c.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && c.HouseUserExpenseDetails.OrderByDescending(d => d.CreateDate).FirstOrDefault().IsPayed == ConstantParam.PAYED_TRUE); m.ExpensedRate = Convert.ToDouble(ExpensedDoorCount) / m.DoorCount; } ExpenseCountList.Add(m); } model.ExpenseCountList = ExpenseCountList.OrderByDescending(m => m.ExpensedRate).ToPagedList(id, ConstantParam.PAGE_SIZE); return(View(model)); }