コード例 #1
0
ファイル: AreaController.cs プロジェクト: ITDreamOs/Study
        public ActionResult Edit(AreaDbModel model)
        {
            if (string.IsNullOrEmpty(model.Name) || string.IsNullOrEmpty(model.Code))
            {
                return(RedirectToAction("Edit", new { ErrorMsg = "名称或者区域码不为空" }));
            }

            return(AreaEditChange(model));
        }
コード例 #2
0
ファイル: AreaController.cs プロジェクト: ITDreamOs/Study
        public ActionResult Create(AreaDbModel model)
        {
            if (string.IsNullOrEmpty(model.Name) || string.IsNullOrEmpty(model.Code))
            {
                return(RedirectToAction("Create", new { ErrorMsg = "名称或者区域码不为空" }));
            }
            var code = Repository.Add(model).Code;

            return(RedirectToAction("Index", new { Message = "已添加" }));
        }
コード例 #3
0
ファイル: AreaController.cs プロジェクト: ITDreamOs/Study
 /// <summary>
 /// 模型克隆
 /// </summary>
 /// <param name="updateareamodel"></param>
 /// <param name="model"></param>
 /// <returns></returns>
 private AreaDbModel CloneAreaModel(AreaDbModel updateareamodel, AreaDbModel model)
 {
     //updateareamodel.Code = model.Code;
     updateareamodel.Name          = model.Name;
     updateareamodel.FirstLetter   = model.FirstLetter;
     updateareamodel.IsCityBlock   = model.IsCityBlock;
     updateareamodel.Name          = model.Name;
     updateareamodel.FullName      = model.FullName;
     updateareamodel.Longitude     = model.Longitude;
     updateareamodel.Latitude      = model.Latitude;
     updateareamodel.BaiduName     = model.BaiduName;
     updateareamodel.BaiduFullName = model.BaiduFullName;
     return(updateareamodel);
 }
コード例 #4
0
ファイル: AreaServiceImpl.cs プロジェクト: ITDreamOs/Study
        /// <summary>
        /// DB转视图
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        private AreaViewModel ConvertDBToAreaView(AreaDbModel model)
        {
            var area = new AreaViewModel()
            {
                Code          = model.Code,
                FirstLetter   = model.FirstLetter,
                IsCityBlock   = model.IsCityBlock,
                Name          = model.Name,
                BaiduFullName = model.BaiduFullName,
                BaiduName     = model.BaiduName,
                FullName      = model.FullName,
                CityLevel     = model.CityLevel,
                Longitude     = model.Longitude,
                Latitude      = model.Latitude,
            };

            return(area);
        }
コード例 #5
0
ファイル: AreaController.cs プロジェクト: ITDreamOs/Study
        /// <summary>
        ///变更
        /// </summary>
        /// <param name="model">模型</param>
        /// <param name="Pics">图片集</param>
        private ActionResult AreaEditChange(AreaDbModel model)
        {
            var updatemodel = ReadOnlyRepository.GetForUpdate(e => e.Code == model.Code);

            if (updatemodel == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }


            updatemodel = CloneAreaModel(updatemodel, model);

            Repository.Update(updatemodel);
            //需要级联改动(市辖区、县)
            var isedit = string.IsNullOrEmpty(updatemodel.CityLevel);

            if (isedit)
            {
                return(RedirectToAction("Index", new { Message = "已编辑" }));
            }
            var isprovince = updatemodel.CityLevel == "1";
            var iscity     = updatemodel.CityLevel == "2";

            if (isprovince)
            {
                var cityscodes = AreaService.GetCitysByProvinceCode(updatemodel.Code).Select(e => e.Code).ToList();
                if (cityscodes.Count == 0)
                {
                    return(RedirectToAction("Index", new { Message = "已编辑" }));
                }
                foreach (var citycode in cityscodes)
                {
                    var updatecitymodel = ReadOnlyRepository.GetForUpdate(e => e.Code == citycode);
                    updatecitymodel.FullName = updatemodel.FullName + "," + updatecitymodel.Name;

                    Repository.Update(updatecitymodel);

                    var countryscode = AreaService.GetCountyByCityCode(updatecitymodel.Code).Select(e => e.Code).ToList();
                    if (countryscode.Count > 0)
                    {
                        foreach (var countrycode in countryscode)
                        {
                            var updatecountrymodel = ReadOnlyRepository.GetForUpdate(e => e.Code == countrycode);
                            updatecountrymodel.FullName = updatecitymodel.FullName + "," + updatecountrymodel.Name;
                            Repository.Update(updatecountrymodel);
                        }
                    }
                }
            }
            else if (iscity)
            {
                var countryscode = AreaService.GetCountyByCityCode(updatemodel.Code).Select(e => e.Code).ToList();
                if (countryscode.Count == 0)
                {
                    return(RedirectToAction("Index", new { Message = "已编辑" }));
                }
                foreach (var countrycode in countryscode)
                {
                    var updatecountrymodel = ReadOnlyRepository.GetForUpdate(e => e.Code == countrycode);
                    updatecountrymodel.FullName = updatemodel.FullName + "," + updatecountrymodel.Name;
                    Repository.Update(updatecountrymodel);
                }
            }

            return(RedirectToAction("Index", new { Message = "已编辑" }));
        }