/// <summary>
        /// 获取行政村危险区转移人员列表
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public BsTableDataSource <VillageTransferPersonViewModel> GetVillageTransferPerson(GetVillageTransferPerson request)
        {
            using (var db = DbFactory.Open())
            {
                if (string.IsNullOrEmpty(adcd))
                {
                    throw new Exception("请重新登录");
                }
                //if (request.year==null)
                //    throw new Exception("年度异常");

                var builder = db.From <VillageTransferPerson>();
                builder.LeftJoin <VillageTransferPerson, ADCDInfo>((x, y) => x.adcd == y.adcd);
                builder.Where <VillageTransferPerson>(x => x.DangerZoneName != "" && x.DangerZoneName != null);
                if (adcd.Length == 15 && adcd.IndexOf("000000") > 0)//登陆的是乡镇用户
                {
                    builder.And(y => y.adcd.StartsWith(adcd.Substring(0, 9)));
                }
                else if (adcd.Length == 6 && adcd.IndexOf("00") < 0)//登陆的是县级用户
                {
                    builder.And(y => y.adcd.StartsWith(adcd.Substring(0, 6)));
                }
                else if (adcd == ((int)GrassrootsFloodCtrlEnums.AreaCode.省级编码).ToString() + "000000000")//管理员
                {
                }
                else
                {
                    throw new Exception("登陆用户的所属行政区划编码不正确");
                }
                if (!string.IsNullOrEmpty(request.name))
                {
                    builder.And(y => y.DangerZoneName.Contains(request.name));
                }
                if (!string.IsNullOrEmpty(request.adnm))
                {
                    builder.And <ADCDInfo>(x => x.adnm.Contains(request.adnm));
                }
                if (!string.IsNullOrEmpty(request.adcd))
                {
                    builder.And(x => x.adcd == request.adcd);
                }
                if (request.id != 0)
                {
                    builder.And(x => x.ID == request.id);
                }
                if (request.adcdId != 0)
                {
                    builder.And <ADCDInfo>(x => x.Id == request.adcdId);
                }
                if (request.year != null)
                {
                    builder.And(y => y.Year == request.year);
                }
                builder.Select("VillageTransferPerson.*,ADCDInfo.adnm");
                var count = db.Count(builder);

                if (!string.IsNullOrEmpty(request.Sort) && !string.IsNullOrEmpty(request.Order) && request.Order == "asc")
                {
                    builder.OrderBy(x => request.Sort);
                }
                else if (!string.IsNullOrEmpty(request.Sort) && !string.IsNullOrEmpty(request.Order) && request.Order == "desc")
                {
                    builder.OrderByDescending(x => request.Sort);
                }
                else
                {
                    builder.OrderBy(x => x.ID);
                }

                var PageSize  = request.PageSize == 0 ? 15 : request.PageSize;
                var PageIndex = request.PageIndex == 0 ? 0 : request.PageIndex * PageSize;
                builder.Limit(PageIndex, PageSize);
                var list = db.Select <VillageTransferPersonViewModel>(builder);

                return(new BsTableDataSource <VillageTransferPersonViewModel>()
                {
                    rows = list, total = count
                });
            }
        }
Esempio n. 2
0
 public BsTableDataSource <VillageTransferPersonViewModel> Get(GetVillageTransferPerson request)
 {
     return(VillageTransferPersonManager.GetVillageTransferPerson(request));
 }