예제 #1
0
        /// <summary>
        /// 获取楼座Id, 如果没有将新建一个楼座
        /// </summary>
        /// <param name="buildName"></param>
        /// <param name="propertPlaceId"></param>
        /// <returns></returns>
        private static int GetBuildId(string buildName, int propertPlaceId)
        {
            int buildId = 0;
            //楼座接口
            IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            var build = buildBll.GetEntity(b => b.BuildName == buildName && b.PropertyPlaceId == propertPlaceId);

            if (build != null)
            {
                buildId = build.Id;
            }
            else
            {
                build = new T_Build()
                {
                    BuildName       = buildName,
                    PropertyPlaceId = propertPlaceId,
                };
                try
                {
                    buildBll.Save(build);
                    buildId = build.Id;
                }
                catch
                {
                    buildId = 0;
                }
            }

            return(buildId);
        }
예제 #2
0
        public ActionResult AddBuild(BuildSearchModel model)
        {
            JsonModel jm = new JsonModel();

            //如果表单模型验证成功
            if (ModelState.IsValid)
            {
                IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

                T_Build newBuild = new T_Build()
                {
                    BuildName       = model.BuildName,
                    PropertyPlaceId = model.PropertyPlaceId,
                    Desc            = model.Desc
                };
                // 保存到数据库
                buildBll.Save(newBuild);

                //日志记录
                jm.Content = PropertyUtils.ModelToJsonString(model);
            }
            else
            {
                // 保存异常日志
                jm.Msg = ConstantParam.JSON_RESULT_MODEL_CHECK_ERROR;
            }
            return(Json(jm, JsonRequestBehavior.AllowGet));
        }
예제 #3
0
        public ActionResult EditBuild(BuildSearchModel model)
        {
            JsonModel jm = new JsonModel();

            //如果表单模型验证成功
            if (ModelState.IsValid)
            {
                IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

                T_Build buildInfo = buildBll.GetEntity(m => m.Id == model.Id);
                if (buildInfo != null)
                {
                    buildInfo.BuildName = model.BuildName;
                    buildInfo.Desc      = model.Desc;
                    // 保存到数据库
                    buildBll.Update(buildInfo);

                    //日志记录
                    jm.Content = PropertyUtils.ModelToJsonString(model);
                }
                else
                {
                    jm.Msg = "该楼座不存在";
                }
            }
            else
            {
                // 保存异常日志
                jm.Msg = ConstantParam.JSON_RESULT_MODEL_CHECK_ERROR;
            }
            return(Json(jm, JsonRequestBehavior.AllowGet));
        }
예제 #4
0
        public ActionResult DeleteBuild(int id)
        {
            JsonModel jm       = new JsonModel();
            IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            // 根据指定id值获取实体对象
            var build = buildBll.GetEntity(index => index.Id == id);

            if (build == null)
            {
                jm.Msg = "该楼座不存在";
            }
            else
            {
                if (buildBll.Delete(build))
                {
                    //操作日志
                    jm.Content = "删除楼座 " + build.BuildName;
                }
                else
                {
                    jm.Msg = "删除失败";
                }
            }
            return(Json(jm, JsonRequestBehavior.AllowGet));
        }
예제 #5
0
        public ActionResult BatchAddUnit(int buildId)
        {
            IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            var entity = buildBll.GetEntity(m => m.Id == buildId);
            BuildUnitSearchModel model = new BuildUnitSearchModel();

            model.BuildName = entity.BuildName;
            model.BuildId   = buildId;
            return(View(model));
        }
예제 #6
0
        public ActionResult BuildList(BuildSearchModel model)
        {
            IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            int propertyPlaceId = GetSessionModel().PropertyPlaceId.Value;

            Expression <Func <T_Build, bool> > where = w => (string.IsNullOrEmpty(model.BuildName) ? true : w.BuildName.Contains(model.BuildName)) && (string.IsNullOrEmpty(model.Desc) ? true : w.BuildName.Contains(model.Desc)) && w.PropertyPlaceId == propertyPlaceId;

            // 排序模型
            var sortModel = this.SettingSorting("Id", false);
            var list      = buildBll.GetPageList(where, sortModel.SortName, sortModel.IsAsc, model.PageIndex);

            return(View(list));
        }
예제 #7
0
        /// <summary>
        /// 获取小区楼座下拉列表
        /// </summary>
        /// <returns>小区列表</returns>
        private List <SelectListItem> GetBuildList(int placeId)
        {
            //获取楼座列表
            IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            var list = buildBll.GetList(b => b.PropertyPlaceId == placeId);

            //转换为下拉列表并返回
            return(list.Select(m => new SelectListItem()
            {
                Text = m.BuildName,
                Value = m.Id.ToString(),
                Selected = false
            }).ToList());
        }
예제 #8
0
        /// <summary>
        /// 获取楼座列表
        /// </summary>
        /// <returns></returns>
        private List <SelectListItem> getBuildList()
        {
            IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            var placeId = GetSessionModel().PropertyPlaceId.Value;
            var list    = buildBll.GetList(p => p.PropertyPlaceId == placeId);
            //转换为下拉列表
            List <SelectListItem> buildList = list.Select(c => new SelectListItem()
            {
                Text     = c.BuildName,
                Value    = c.Id.ToString(),
                Selected = false,
            }).ToList();

            return(buildList);
        }
예제 #9
0
        /// <summary>
        /// 获取楼盘列表
        /// </summary>
        /// <returns>楼盘列表</returns>
        private List <SelectListItem> GetBuildList(int PlaceId)
        {
            //获取楼座列表
            IBuildBLL BuildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            var sortModel = this.SettingSorting("Id", true);
            var list      = BuildBll.GetList(u => u.PropertyPlaceId == PlaceId, sortModel.SortName, sortModel.IsAsc);

            //转换为下拉列表并返回
            return(list.Select(m => new SelectListItem()
            {
                Text = m.BuildName,
                Value = m.Id.ToString(),
                Selected = false
            }).ToList());
        }
예제 #10
0
        /// <summary>
        /// 远程验证指定楼座名称是否存在
        /// </summary>
        /// <param name="buildName">楼座名称</param>
        /// <param name="id">楼座id,新增时恒为0,修改楼座名称时不为0</param>
        public ContentResult RemoteCheckExist(int id, string buildName)
        {
            IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            var placeId = GetSessionModel().PropertyPlaceId.Value;

            // 楼座名称已存在
            if (buildBll.Exist(m => m.BuildName == buildName && m.Id != id && m.PropertyPlaceId == placeId))
            {
                // 校验不通过
                return(Content("false"));
            }
            else
            {
                return(Content("true"));
            }
        }
예제 #11
0
        public ActionResult EditBuild(int id)
        {
            IBuildBLL buildBll = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            var buildInfo = buildBll.GetEntity(index => index.Id == id);

            if (buildInfo != null)
            {
                BuildSearchModel buildModel = new BuildSearchModel();
                buildModel.BuildName = buildInfo.BuildName;
                buildModel.Desc      = buildInfo.Desc;
                return(View(buildModel));
            }
            else
            {
                return(RedirectToAction("BuildList"));
            }
        }
예제 #12
0
        public ActionResult ExpenseSettings(ExpenseSettingsModel model)
        {
            var currentPropertyPlaceId = GetSessionModel().PropertyPlaceId.Value;

            if (model.NotificationDate == null)
            {
                model.NotificationDate = DateTime.Now.AddDays(1);
            }

            IBuildBLL buildBLL = BLLFactory <IBuildBLL> .GetBLL("BuildBLL");

            //绑定楼座下拉列表
            var buildList = buildBLL.GetList(b => b.PropertyPlaceId == currentPropertyPlaceId, "BuildName", true).ToList();

            model.BuildList = buildList.Select(b => new SelectListItem()
            {
                Text = b.BuildName, Value = b.Id.ToString()
            }).ToList();

            List <SelectListItem> unitList = new List <SelectListItem>();

            unitList.Add(new SelectListItem()
            {
                Text = "选择单元", Value = string.Empty
            });
            //绑定单元下拉列表
            if (model.BuildId > 0)
            {
                IBuildUnitBLL unitBll = FactoryBLL.BLLFactory <IBuildUnitBLL> .GetBLL("BuildUnitBLL");

                var units = unitBll.GetList(u => u.BuildId == model.BuildId).OrderBy(u => u.UnitName).Select(u => new SelectListItem()
                {
                    Text = u.UnitName, Value = u.Id.ToString(), Selected = (u.Id == model.UnitId)
                }).ToList();
                unitList.AddRange(units);
            }

            model.UnitList = unitList;

            //绑定缴费种类名称下拉列表
            IPropertyExpenseTypeBLL typeBLL = BLLFactory <IPropertyExpenseTypeBLL> .GetBLL("PropertyExpenseTypeBLL");

            model.ExpenseTypeList = typeBLL.GetList(t => t.IsFixed == model.ExpenseClassId && t.PropertyPlaceId == currentPropertyPlaceId).OrderBy(t => t.Name).Select(t => new SelectListItem()
            {
                Text = t.Name, Value = t.Id.ToString()
            }).ToList();

            //绑定缴费明细
            IBuildUnitBLL unitBLL = BLLFactory <IBuildUnitBLL> .GetBLL("BuildUnitBLL");

            if (model.BuildId > 0)
            {
                var unit = unitBLL.GetEntity(u => u.BuildId == model.BuildId && u.Id == model.UnitId);

                if (unit != null)
                {
                    var doorList = unit.BuildDoors.OrderBy(u => u.DoorName).ToList();
                    var doorIds  = doorList.Select(d => d.Id);

                    IHouseUserExpenseTemplateBLL expenseTemplateBLL = BLLFactory <IHouseUserExpenseTemplateBLL> .GetBLL("HouseUserExpenseTemplateBLL");

                    var allDoorExpenseByExpenseType = expenseTemplateBLL.GetList(e => e.ExpenseTypeId == model.ExpenseTypeId && e.BuildDoorId != null && doorIds.Contains(e.BuildDoorId.Value));

                    var houseUserExpenseTemplateList = new List <HouseUserExpenseTemplateModel>();

                    if (allDoorExpenseByExpenseType.Count() > 0)
                    {
                        var doorExpense = allDoorExpenseByExpenseType.FirstOrDefault();
                        model.ExpenseCircleId  = doorExpense.ExpenseCycleId;
                        model.NotificationDate = doorExpense.NotificationDate;
                    }

                    foreach (var door in doorList)
                    {
                        var houseUserExpenseTemplateModel = new HouseUserExpenseTemplateModel();

                        houseUserExpenseTemplateModel.DoorId   = door.Id;
                        houseUserExpenseTemplateModel.DoorName = door.DoorName;

                        var doorExpense = allDoorExpenseByExpenseType.FirstOrDefault(e => e.BuildDoorId == door.Id);
                        if (doorExpense != null)
                        {
                            houseUserExpenseTemplateModel.Expense = doorExpense.Expense.ToString();
                        }

                        houseUserExpenseTemplateList.Add(houseUserExpenseTemplateModel);
                    }

                    model.HouseUserExpenseTemplateList = houseUserExpenseTemplateList;
                }
            }

            return(View(model));
        }