Ejemplo n.º 1
0
        public ActionResult AddHouseDetails(HouseDetails house, long allotId, int fxtcompanyId, int cityId, UserCenter_LoginUserInfo loginUser)
        {
            DatAllotFlow allot = DatAllotFlowManager.GetDatAllotFlowById(allotId);

            if (allot == null)
            {
                return(WebUserHelp.GetAction404Page());//无此页面
            }
            //登陆用户所在小组
            PriviDepartmentUser loginDepartment = PriviDepartmentUserManager.GetDepartmentUserByUserName(loginUser.NowCityId, loginUser.FxtCompanyId, loginUser.UserName);
            //当前信息的发起用户所在小组
            PriviDepartmentUser infoStartDepartment = PriviDepartmentUserManager.GetDepartmentUserByUserName(loginUser.NowCityId, allot.FxtCompanyId, allot.UserName);
            //当前信息的用户所在小组
            PriviDepartmentUser infoDepartment = PriviDepartmentUserManager.GetDepartmentUserByUserName(loginUser.NowCityId, allot.FxtCompanyId, allot.SurveyUserName);

            #region 验证查看权限
            //获取当前用户对任务列表页拥有的权限(验证查看权限)
            List <int> nowFunctionCodes = WebUserHelp.GetNowPageFunctionCodes(loginUser.UserName, loginUser.FxtCompanyId, WebCommon.Url_AllotFlowInfo_AllotFlowManager);
            //是否用于查看权限
            if (!WebUserHelp.CheckNowPageViewFunctionCode(nowFunctionCodes.ToArray(), loginUser.UserName, allot.UserName, allot.SurveyUserName,
                                                          loginDepartment == null ? 0 : loginDepartment.DepartmentID, infoStartDepartment == null ? 0 : infoStartDepartment.DepartmentID,
                                                          infoDepartment == null ? 0 : infoDepartment.DepartmentID))
            {
                return(WebUserHelp.GetActionNotRightPage());//无权限
            }
            #endregion

            //户型结构
            ViewBag.StructureCode = SYSCodeManager.StructureCodeManager();
            //通风采光
            ViewBag.VDCode = SYSCodeManager.VDCodeManager();
            //噪音情况
            ViewBag.Noise = SYSCodeManager.NoiseManager();
            //用途
            ViewBag.PurposeCode = SYSCodeManager.HousePurposeCodeManager();

            #region 验证修改权限
            //获取当前用户对当前页拥有的权限
            List <int> nowFunctionCodes2 = WebUserHelp.GetNowPageFunctionCodes(loginUser.UserName, loginUser.FxtCompanyId, WebCommon.Url_AllotFlowInfo_AllotDetailed);
            if (WebUserHelp.CheckNowPageUpdateFunctionCode(nowFunctionCodes2.ToArray(), loginUser.UserName, allot.SurveyUserName,
                                                           loginDepartment == null ? 0 : loginDepartment.DepartmentID, infoDepartment == null ? 0 : infoDepartment.DepartmentID, allot.SurveyUserName) &&
                (allot.StateCode != SYSCodeManager.STATECODE_10))
            {
                ViewBag.IsUpdateRight = 1;//有权限
            }
            #endregion
            if (house.Id > 0)
            {
                return(View(_unitOfWork.HouseDetailsRepository.GetById(house.Id)));
            }
            else
            {
                return(View(house));
            }
        }
Ejemplo n.º 2
0
        public ActionResult HouseDetails(int buildingId, long allotId, int fxtcompanyId, int cityId, UserCenter_LoginUserInfo userInfo)
        {
            var houseList                = _unitOfWork.HouseDetailsRepository.Get(m => m.BuildingId == buildingId).OrderBy(m => m.UnitNo).ThenBy(m => m.FloorNo).ToList();
            var houseTypeCodeList        = SYSCodeManager.GetHouseTypeCodeList();    //户型
            var frontCodeList            = SYSCodeManager.GetFrontCodeList();        //朝向
            var sightCodeList            = SYSCodeManager.GetSightCodeList();        //景观
            var noiseCodeList            = SYSCodeManager.NoiseManager();            //噪音情况
            var purposeCodeList          = SYSCodeManager.HousePurposeCodeManager(); //用途
            var structureCodeList        = SYSCodeManager.StructureCodeManager();    //户型结构
            var vdCodeList               = SYSCodeManager.VDCodeManager();           //通风采光
            List <HouseDetailsDto> hDtos = new List <HouseDetailsDto>();

            houseList.ForEach((o) =>
            {
                var hDto = Mapper.Map <HouseDetails, HouseDetailsDto>(o);
                var h    = houseTypeCodeList.Where(m => m.Code == hDto.HouseTypeCode).FirstOrDefault();
                var f    = frontCodeList.Where(m => m.Code == hDto.FrontCode).FirstOrDefault();
                var s    = sightCodeList.Where(m => m.Code == hDto.SightCode).FirstOrDefault();
                var n    = noiseCodeList.Where(m => m.Code == hDto.NoiseCode).FirstOrDefault();
                var p    = purposeCodeList.Where(m => m.Code == hDto.PurposeCode).FirstOrDefault();
                var st   = structureCodeList.Where(m => m.Code == hDto.StructureCode).FirstOrDefault();
                var v    = vdCodeList.Where(m => m.Code == hDto.VDCode).FirstOrDefault();
                hDto.HouseTypeCodeName = h == null ? "" : h.CodeName;
                hDto.FrontCodeName     = f == null ? "" : f.CodeName;
                hDto.SightCodeName     = s == null ? "" : s.CodeName;
                hDto.NoiseCodeName     = n == null ? "" : n.CodeName;
                hDto.PurposeCodeName   = p == null ? "" : p.CodeName;
                hDto.StructureCodeName = st == null ? "" : st.CodeName;
                hDto.VDCodeName        = v == null ? "" : v.CodeName;
                hDtos.Add(hDto);
            });
            ViewBag.houseList = hDtos;
            var unit = houseList.GroupBy(m => new { m.UnitNo, m.RoomNo })
                       .Select(m => new HouseDetailsDto()
            {
                UnitNo = m.Key.UnitNo, RoomNo = m.Key.RoomNo
            })
                       .OrderBy(m => m.UnitNo).ThenBy(m => m.RoomNo).ToList();

            ViewBag.unit = unit;
            var floorNo = houseList.OrderBy(m => m.FloorNo).GroupBy(m => m.FloorNo).Select(m => m.Key).ToList();

            ViewBag.floorNo      = floorNo;
            ViewBag.floorNoCount = floorNo.Count();
            ViewBag.fxtCompanyId = fxtcompanyId;
            ViewBag.buildingId   = buildingId;
            ViewBag.cityId       = cityId;
            ViewBag.allotId      = allotId;

            ViewBag.IsInsert = _unitOfWork.AllotFlowRepository.GetById(allotId).StateCode == SYSCodeManager.STATECODE_10;//已入库

            return(View());
        }