Example #1
0
        public ActionResult ProjectInfo(int projectId, LoginUser loginUserInfo)
        {
            var project = DataCenterProjectApi.GetProjectInfo(loginUserInfo.NowCityId, projectId, loginUserInfo.UserName, loginUserInfo.SignName, loginUserInfo.AppList).FirstOrDefault();

            //停车状况
            ViewBag.ParkingStatusCode = _unitOfWork.CodeService.GetAllParkingStatusList();

            return(View(project));
        }
        public ActionResult ProjectInfo(int projectId, UserCenter_LoginUserInfo loginUserInfo)
        {
            var project = DataCenterProjectApi.GetProjectInfo(loginUserInfo.NowCityId, projectId, loginUserInfo.UserName, loginUserInfo.SignName, loginUserInfo.AppList).FirstOrDefault();

            //停车状况
            ViewBag.ParkingStatusCode = SYSCodeManager.GetAllParkingStatusList();

            return(View(project));
        }
Example #3
0
        public ActionResult CallAll(LoginUser loginUserInfo)
        {
            string mes = string.Empty;
            List <CAS.Entity.DBEntity.DATProject> projectList = DataCenterProjectApi.GetProjectBuildingHouseAll(loginUserInfo.NowCityId, loginUserInfo.UserName, loginUserInfo.SignName, loginUserInfo.AppList);

            //DatabaseCallManager.Call(projectList);
            if (projectList != null && projectList.Count > 0)
            {
                _unitOfWork.ProjectService.ImputProject(projectList, loginUserInfo.UserName, loginUserInfo.TrueName, out mes);
            }
            if (!string.IsNullOrEmpty(mes))
            {
                //mes += "部分任务导入完成,楼盘:";
                mes += ",不能重复导入。";
            }
            return(Json(new { result = 1, message = mes }));
        }
Example #4
0
        public ActionResult GetList_Api(string projectName, int areaId, int subAreaId, string functionCodes, int pageIndex, int pageSize, int isGetCount, LoginUser loginUserInfo)
        {
            var result = new AjaxResult("");

            var list = DataCenterProjectApi.GetProject(projectName, loginUserInfo.NowCityId, areaId, subAreaId, pageIndex, pageSize, loginUserInfo.UserName, loginUserInfo.SignName, loginUserInfo.AppList).ToList();

            list.ForEach((o) =>
            {
                var project = _unitOfWork.ProjectRepository.GetBy(m => m.FxtCompanyId == o.fxtcompanyid && m.CityID == o.cityid && m.FxtProjectId == o.projectid && m.Status != SYSCodeManager.STATECODE_10 && m.Valid == 1);

                if (project != null)
                {
                    o.valid = 0;
                }
            });

            result.Data = list;

            return(Json(result));
        }
Example #5
0
        public int ImportToDataCenter(long allowId, int cityId, int companyId, string userName, string userTrueName, string signName, List <Apps> appList, out string message)
        {
            AllotFlow allot = _unitOfWork.AllotFlowRepository.GetById(allowId);

            if (allot == null || allot.StateCode != SYSCodeManager.STATECODE_8)
            {
                message = "入库失败:该任务不存在或者该任务状态不为审核通过";
                return(0);
            }
            if (allot.DatType == SYSCodeManager.DATATYPECODE_1)
            {
                //Project proj = _unitOfWork.ProjectRepository.GetBy(m => m.ProjectId == allot.DatId && m.CityID == cityId);

                //ProjectDto project = Mapper.Map<Project, ProjectDto>(proj);

                //List<PCompany> lnkpc = _unitOfWork.P_CompanyRepository.Get(m => m.ProjectId == allot.Project.ProjectId && m.CityId == cityId).ToList();

                //List<PAppendage> lnkpa = _unitOfWork.P_AppendageRepository.Get(m => m.ProjectId == allot.Project.ProjectId && m.CityId == cityId).ToList();

                //if (lnkpa != null && lnkpa.Count > 0)
                //{
                //    lnkpa = lnkpa.Select(m => new PAppendage()
                //    {
                //        Address = m.Address,
                //        AppendageCode = m.AppendageCode,
                //        Area = m.Area,
                //        CityId = m.CityId,
                //        ClassCode = m.ClassCode,
                //        Distance = m.Distance,
                //        Id = m.Id,
                //        IsInner = m.IsInner,
                //        P_AName = m.P_AName,
                //        ProjectId = m.ProjectId,
                //        Uid = m.Uid,
                //        X = m.X,
                //        Y = m.Y
                //    }).ToList();
                //}

                //var bList = _unitOfWork.BuildingRepository.Get(m => m.ProjectId == proj.ProjectId && m.CityID == cityId);
                //var hList = _unitOfWork.HouseDetailsRepository.Get();
                //List<HouseDetails> houseList = (from b in bList
                //                                join h in hList on b.BuildingId equals h.BuildingId
                //                                select h).ToList();
                //List<Building> buildingList = bList.ToList();

                List <Building> resultBuildings = new List <Building>();//返回的楼栋ids
                int             fxtprojectId    = DataCenterProjectApi.ImportProjectData(allot.Project, ref resultBuildings, userName, signName, appList, out message);
                if (fxtprojectId <= 0)
                {
                    message = "入库失败:导入楼盘信息异常";
                    return(0);
                }

                //_unitOfWork.ProjectRepository.Update(proj);
                //上传照片
                List <PPhoto> photoList = _unitOfWork.P_PhotoRepository.Get(m => m.ProjectId == allot.Project.ProjectId && m.CityId == cityId && m.FxtCompanyId == companyId).ToList();
                foreach (PPhoto pObj in photoList)
                {
                    //FileStream fStream = new FileStream(System.Web.HttpContext.Current.Server.MapPath(pObj.Path), FileMode.Open, FileAccess.Read);
                    var path = ConfigurationManager.AppSettings["OssDownload"] + pObj.Path;
                    using (WebClient client = new WebClient())
                    {
                        var data = client.DownloadData(path);
                        //BinaryReader bReader = new BinaryReader(fStream);//将文件了加载成二进制数据
                        //long length = bReader.BaseStream.Length;//当前文件的总大小
                        ////创建一个用于存储要上传文件内容的字节对象
                        //byte[] data = new byte[length];
                        ////将流中读取指定字节数加载到到字节对象data
                        //bReader.Read(data, 0, Convert.ToInt32(length));
                        pObj.PhotoTypeCode = pObj.PhotoTypeCode.HasValue ? pObj.PhotoTypeCode.Value : 0;
                        long fxtbuildingid = 0;
                        //楼栋图片
                        if (pObj.BuildingId.HasValue && pObj.BuildingId > 0)
                        {
                            var nowBuilding = resultBuildings.Where(m => m.BuildingId == pObj.BuildingId).FirstOrDefault();
                            if (nowBuilding != null)
                            {
                                fxtbuildingid = Convert.ToInt64(nowBuilding.FxtBuildingId);
                            }
                        }
                        if (DataCenterProjectApi.AddProjectPhoto(fxtprojectId, fxtbuildingid, cityId, pObj.PhotoTypeCode.Value, new FileInfo(System.Web.HttpContext.Current.Server.MapPath(pObj.Path)).Name, pObj.PhotoName, data, userName, signName, appList, out message) != 1)
                        {
                            message = "入库失败:上传楼盘照片失败(id:" + pObj.Id + ")";
                            return(0);
                        }
                    }
                }

                if (resultBuildings != null && resultBuildings.Count > 0)
                {
                    foreach (var item in resultBuildings)
                    {
                        var building = _unitOfWork.BuildingRepository.GetById(item.BuildingId);
                        if (building.FxtBuildingId != item.FxtBuildingId)
                        {
                            building.FxtBuildingId = item.FxtBuildingId;
                            _unitOfWork.BuildingRepository.Update(building);
                        }
                    }
                }

                //设置为已入库
                allot.Project.FxtProjectId = fxtprojectId;
                allot.Project.Status       = SYSCodeManager.STATECODE_10;
            }
            //设置为已入库
            allot.StateCode = SYSCodeManager.STATECODE_10;
            allot.StateDate = DateTime.Now;
            _unitOfWork.AllotFlowRepository.Update(allot);
            //记录日志
            _unitOfWork.AllotSurveyRepository.Insert(new AllotSurvey()
            {
                AllotId      = allowId,
                CityId       = cityId,
                FxtCompanyId = companyId,
                UserName     = userName,
                StateCode    = SYSCodeManager.STATECODE_10,
                StateDate    = DateTime.Now,
                CreateDate   = DateTime.Now,
                TrueName     = userTrueName,
                Remark       = "<span class=\"red\">入库</span>"
            });
            message = "入库成功!";
            return(_unitOfWork.Commit() > 0 ? 1 : 0);
        }
Example #6
0
        public int ImportToDataCenter(long allowId, int cityId, int companyId, string userName, string userTrueName, string signName, List <UserCenter_Apps> appList, out string message)
        {
            AllotFlow allot = _unitOfWork.AllotFlowRepository.GetById(allowId);

            if (allot == null || allot.StateCode != SYSCodeManager.STATECODE_8)
            {
                message = "入库失败:该任务不存在或者该任务状态不为审核通过";
                return(0);
            }
            if (allot.DatType == SYSCodeManager.DATATYPECODE_1)
            {
                Project proj = _unitOfWork.ProjectRepository.GetBy(m => m.ProjectId == allot.DatId && m.CityID == cityId);
                if (proj == null)
                {
                    message = "入库失败:楼盘不存在";
                    return(0);
                }
                List <PCompany>   lnkpc = _unitOfWork.P_CompanyRepository.Get(m => m.ProjectId == proj.ProjectId && m.CityId == cityId).ToList();
                List <PAppendage> lnkpa = _unitOfWork.P_AppendageRepository.Get(m => m.ProjectId == proj.ProjectId && m.CityId == cityId).ToList();
                var bList = _unitOfWork.BuildingRepository.Get(m => m.ProjectId == proj.ProjectId && m.CityID == cityId);
                var hList = _unitOfWork.HouseDetailsRepository.Get();
                List <HouseDetails> houseList = (from b in bList
                                                 join h in hList on b.BuildingId equals h.BuildingId
                                                 select h).ToList();
                List <Building> buildingList = bList.ToList();
                //List<HouseDetails> copyHouseList = new List<HouseDetails>();//用于传给数据中心存储的
                //批量生产房号
                //foreach (DATHouse house in houseList)
                //{
                //    /////////获取单元号+室号////////////
                //    string unitNoStr = house.UnitNo;
                //    int startFloor = house.FloorNo;
                //    int endFloor = Convert.ToInt32(house.EndFloorNo);
                //    if (house.EndFloorNo != null && Convert.ToInt32(house.EndFloorNo) < house.FloorNo)//输入的结束楼层小于起始楼层则调过来递增
                //    {
                //        startFloor = Convert.ToInt32(house.EndFloorNo);
                //        endFloor = house.FloorNo;
                //    }
                //    string unitNo = DATHouseManager.GetUnitNoByUnitNoStr(house.UnitNo);
                //    string houseNo = DATHouseManager.GetHouseNoByUnitNoStr(house.UnitNo);
                //    //////循环生成房号//////////////////
                //    int nowFloor = house.FloorNo;
                //    for (int i = startFloor; (i <= Convert.ToInt32(endFloor) && house.EndFloorNo != null) || i == startFloor; i++)
                //    {
                //        DATHouse _house = house.CopyEntity<DATHouse>();
                //        _house.UnitNo = unitNo + houseNo;
                //        _house.FloorNo = i;
                //        _house.HouseName = unitNo + i + houseNo;

                //        if (copyHouseList.Where(obj => obj.BuildingId == _house.BuildingId && obj.FloorNo == _house.FloorNo && obj.HouseName == _house.HouseName).FirstOrDefault() == null)
                //        {
                //            copyHouseList.Add(_house);
                //        }
                //    }
                //}
                List <Building> resultBuildings = new List <Building>();//返回的楼栋ids
                int             fxtprojectId    = DataCenterProjectApi.ImportProjectData(proj, lnkpc, lnkpa, buildingList, ref resultBuildings, houseList, userName, signName, appList, out message);
                if (fxtprojectId <= 0)
                {
                    message = "入库失败:导入楼盘信息异常";
                    return(0);
                }

                if (resultBuildings != null && resultBuildings.Count > 0)
                {
                    foreach (var item in resultBuildings)
                    {
                        var building = _unitOfWork.BuildingRepository.GetById(item.BuildingId);
                        if (building.FxtBuildingId != item.FxtBuildingId)
                        {
                            building.FxtBuildingId = item.FxtBuildingId;
                            _unitOfWork.BuildingRepository.Update(building);
                        }
                    }
                }

                proj.FxtProjectId = fxtprojectId;
                _unitOfWork.ProjectRepository.Update(proj);
                //上传照片
                List <PPhoto> photoList = _unitOfWork.P_PhotoRepository.Get(m => m.ProjectId == proj.ProjectId && m.CityId == cityId && m.FxtCompanyId == companyId).ToList();
                foreach (PPhoto pObj in photoList)
                {
                    //FileStream fStream = new FileStream(System.Web.HttpContext.Current.Server.MapPath(pObj.Path), FileMode.Open, FileAccess.Read);
                    var path = ConfigurationManager.AppSettings["OssDownload"] + pObj.Path;
                    using (WebClient client = new WebClient())
                    {
                        var data = client.DownloadData(path);
                        //BinaryReader bReader = new BinaryReader(fStream);//将文件了加载成二进制数据
                        //long length = bReader.BaseStream.Length;//当前文件的总大小
                        ////创建一个用于存储要上传文件内容的字节对象
                        //byte[] data = new byte[length];
                        ////将流中读取指定字节数加载到到字节对象data
                        //bReader.Read(data, 0, Convert.ToInt32(length));
                        pObj.PhotoTypeCode = pObj.PhotoTypeCode.HasValue ? pObj.PhotoTypeCode.Value : 0;
                        long fxtbuildingid = 0;
                        //楼栋图片
                        if (pObj.BuildingId.HasValue && pObj.BuildingId > 0)
                        {
                            var nowBuilding = resultBuildings.Where(m => m.BuildingId == pObj.BuildingId).FirstOrDefault();
                            if (nowBuilding != null)
                            {
                                fxtbuildingid = Convert.ToInt64(nowBuilding.FxtBuildingId);
                            }
                        }
                        if (DataCenterProjectApi.AddProjectPhoto(fxtprojectId, fxtbuildingid, cityId, pObj.PhotoTypeCode.Value, new FileInfo(System.Web.HttpContext.Current.Server.MapPath(pObj.Path)).Name, pObj.PhotoName, data, userName, signName, appList, out message) != 1)
                        {
                            message = "入库失败:上传楼盘照片失败(id:" + pObj.Id + ")";
                            return(0);
                        }
                    }
                }
                //设置为已入库
                proj.Status = SYSCodeManager.STATECODE_10;
                _unitOfWork.ProjectRepository.Update(proj);
            }
            //设置为已入库
            allot.StateCode = SYSCodeManager.STATECODE_10;
            allot.StateDate = DateTime.Now;
            _unitOfWork.AllotFlowRepository.Update(allot);
            //记录日志
            _unitOfWork.AllotSurveyRepository.Insert(new AllotSurvey()
            {
                AllotId      = allowId,
                CityId       = cityId,
                FxtCompanyId = companyId,
                UserName     = userName,
                StateCode    = SYSCodeManager.STATECODE_10,
                StateDate    = DateTime.Now,
                CreateDate   = DateTime.Now,
                TrueName     = userTrueName,
                Remark       = "<span class=\"red\">入库</span>"
            });
            message = "入库成功!";
            return(_unitOfWork.Commit() > 0 ? 1 : 0);
        }
        public ActionResult Call(string ids, UserCenter_LoginUserInfo loginUserInfo)
        {
            string mes = string.Empty;

            try
            {
                List <CAS.Entity.DBEntity.DATProject> projectList = DataCenterProjectApi.GetProjectBuildingHouse(loginUserInfo.NowCityId, ids, loginUserInfo.UserName, loginUserInfo.SignName, loginUserInfo.AppList);
                //log.Info("数据中心楼盘:" + projectList.Count);
                if (projectList != null && projectList.Count > 0)
                {
                    foreach (var item in projectList)
                    {
                        //行政区 + 楼盘名称||已有的projectid||没有入库
                        var exists = _unitOfWork.ProjectRepository.Get(m =>
                                                                       (m.ProjectName == item.projectname ||
                                                                        m.ProjectName == item.areaname + item.projectname ||
                                                                        m.FxtProjectId == item.projectid) && m.Status != SYSCodeManager.STATECODE_10
                                                                       ).FirstOrDefault();
                        if (exists != null)
                        {
                            mes += item.projectname + ",";
                            continue;//任务重复
                        }
                        DateTime now = DateTime.Now;
                        //楼盘
                        Project project = Mapper.Map <CAS.Entity.DBEntity.DATProject, Project>(item);
                        project.FxtProjectId = item.projectid;
                        project.FxtCompanyId = item.fxtcompanyid;
                        project.Status       = SYSCodeManager.STATECODE_1;
                        project.ProjectId    = 0;
                        project.CreateTime   = now;
                        project.X            = item.projectx;
                        project.Y            = item.projecty;
                        project.Valid        = 1;
                        //_unitOfWork.ProjectRepository.Insert(project);
                        project = _unitOfWork.ProjectRepository.Insert(project);
                        _unitOfWork.Commit();
                        //任务
                        var allot = new AllotFlow()
                        {
                            CityId       = project.CityID,
                            CreateTime   = now,
                            DatType      = SYSCodeManager.DATATYPECODE_1,
                            FxtCompanyId = project.FxtCompanyId.Value,
                            UserName     = loginUserInfo.UserName,
                            UserTrueName = loginUserInfo.TrueName,
                            StateCode    = SYSCodeManager.STATECODE_1,
                            DatId        = project.ProjectId,
                            StateDate    = now
                        };
                        allot = _unitOfWork.AllotFlowRepository.Insert(allot);
                        //_unitOfWork.Commit();
                        //任务记录
                        var allotSurvey = new AllotSurvey()
                        {
                            AllotId    = allot.Id,
                            CityId     = allot.CityId,
                            CreateDate = now,
                            StateCode  = SYSCodeManager.STATECODE_1,
                            StateDate  = now,
                            UserName   = loginUserInfo.UserName,
                            TrueName   = loginUserInfo.TrueName,
                            Remark     = "从调度中心(数据中心) <span class=\"red\">导入任务</span>"
                        };
                        allotSurvey = _unitOfWork.AllotSurveyRepository.Insert(allotSurvey);
                        //停车状况
                        var parkingStatus = _unitOfWork.P_AppendageRepository.Get(m => m.AppendageCode == SYSCodeManager.APPENDAGECODE_14 && m.CityId == project.CityID && m.ProjectId == project.ProjectId).FirstOrDefault();
                        if (parkingStatus != null)
                        {
                            parkingStatus.ClassCode = project.ParkingStatus;
                            _unitOfWork.P_AppendageRepository.Update(parkingStatus);
                        }
                        else
                        {
                            parkingStatus               = new PAppendage();
                            parkingStatus.ClassCode     = project.ParkingStatus;
                            parkingStatus.AppendageCode = SYSCodeManager.APPENDAGECODE_14;
                            parkingStatus.CityId        = project.CityID;
                            parkingStatus.ProjectId     = project.ProjectId;
                            parkingStatus.IsInner       = true;
                            _unitOfWork.P_AppendageRepository.Insert(parkingStatus);
                        }
                        //开发商
                        if (!string.IsNullOrEmpty(item.devecompanyname))
                        {
                            var developcompany = _unitOfWork.P_CompanyRepository.Get(m => m.CompanyName == item.devecompanyname && m.CompanyType == SYSCodeManager.COMPANYTYPECODE_1 &&
                                                                                     m.ProjectId == project.ProjectId && m.CityId == project.CityID).FirstOrDefault();
                            if (developcompany == null)
                            {
                                developcompany             = new PCompany();
                                developcompany.CityId      = project.CityID;
                                developcompany.CompanyName = item.devecompanyname;
                                developcompany.CompanyType = SYSCodeManager.COMPANYTYPECODE_1;
                                developcompany.ProjectId   = project.ProjectId;
                                _unitOfWork.P_CompanyRepository.Insert(developcompany);
                            }
                        }
                        //物管公司
                        if (!string.IsNullOrEmpty(item.managercompanyname))
                        {
                            var managercompany = _unitOfWork.P_CompanyRepository.Get(m => m.CompanyName == item.managercompanyname && m.CompanyType == SYSCodeManager.COMPANYTYPECODE_4 &&
                                                                                     m.ProjectId == project.ProjectId && m.CityId == project.CityID).FirstOrDefault();
                            if (managercompany == null)
                            {
                                managercompany             = new PCompany();
                                managercompany.CityId      = project.CityID;
                                managercompany.CompanyName = item.managercompanyname;
                                managercompany.CompanyType = SYSCodeManager.COMPANYTYPECODE_4;
                                managercompany.ProjectId   = project.ProjectId;
                                _unitOfWork.P_CompanyRepository.Insert(managercompany);
                            }
                        }
                    }
                    _unitOfWork.Commit();
                }
            }
            catch (Exception ex)
            {
                log.Error(ex);
            }
            if (!string.IsNullOrEmpty(mes))
            {
                //mes += "部分任务导入完成,楼盘:";
                mes += ",不能重复导入。";
            }
            return(Json(new { result = 1, message = mes }));
        }