コード例 #1
0
 public HttpResponseMessage GetDischargeCargoList([FromUri] SiteDischargeCargoRequest request)
 {
     try
     {
         var data = _siteDischargeCargo.GetDataListForPage(request);
         return(AjaxResult.Success(data).ToJsonApi());
     }
     catch (Exception)
     {
         return(AjaxResult.Error("操作失败").ToJsonApi());
     }
 }
コード例 #2
0
        /// <summary>
        /// 获取数据列表(分页)
        /// </summary>
        public PageModel GetDataListForPage(SiteDischargeCargoRequest request)
        {
            ////组装查询语句
            //#region 模糊搜索条件

            //var where = new Where<TbSiteDischargeCargo>();
            //if (!string.IsNullOrWhiteSpace(request.DistributionTime))
            //{
            //    where.And(p => p.DistributionTime.ToString() == request.DistributionTime);
            //}
            //if (!string.IsNullOrWhiteSpace(request.SiteCode))
            //{
            //    List<string> SiteList = _workOrderLogic.GetCompanyWorkAreaOrSiteList(request.SiteCode, 5);
            //    where.And(p => p.SiteCode.In(SiteList));
            //}
            //if (!string.IsNullOrWhiteSpace(request.VehicleCode))
            //{
            //    where.And(p => p.VehicleCode == request.VehicleCode);
            //}
            //if (!string.IsNullOrEmpty(request.DischargeType))
            //{
            //    where.And(p => p.DischargeType == request.DischargeType);
            //}
            //if (!string.IsNullOrEmpty(request.ProjectId))
            //    where.And(p => p.ProjectId == request.ProjectId);
            //if (!string.IsNullOrEmpty(request.ProcessFactoryCode))
            //    where.And(p => p.ProcessFactoryCode == request.ProcessFactoryCode);

            //#endregion

            //#region 数据权限

            ////数据权限
            //var authorizaModel = new AuthorizeLogic().CheckAuthoriza(new AuthorizationParameterModel() { FormCode = "SiteDischargeCargo", UserCode = request.UserCode });
            //if (authorizaModel.IsAuthorize)
            //{
            //    if (authorizaModel.Ids.Count > 0 && authorizaModel.UserCodes.Count > 0)
            //        where.And(d => d.InsertUserCode.In(authorizaModel.UserCodes) || d.ID.In(authorizaModel.Ids));
            //    else if (authorizaModel.Ids.Count > 0)
            //        where.Or(d => d.ID.In(authorizaModel.Ids));
            //    else if (authorizaModel.UserCodes.Count > 0)
            //        where.And(d => d.InsertUserCode.In(authorizaModel.UserCodes));
            //}
            //#endregion

            //try
            //{
            //    var ret = Db.Context.From<TbSiteDischargeCargo>()
            //  .Select(
            //          TbSiteDischargeCargo._.All
            //          , TbCompany._.CompanyFullName.As("SiteName")
            //          , TbSysDictionaryData._.DictionaryText.As("DischargeTypeNew")
            //          , TbUser._.UserName
            //          , TbCarInfo._.CarCph
            //          , TbDistributionEnt._.OrderCode)
            //        .LeftJoin<TbCompany>((a, c) => a.SiteCode == c.CompanyCode)
            //        .AddSelect(Db.Context.From<TbCompany>().Select(p => p.CompanyFullName)
            //        .Where(TbCompany._.CompanyCode == TbSiteDischargeCargo._.ProcessFactoryCode), "ProcessFactoryName")
            //        .AddSelect(Db.Context.From<TbUser>().Select(p => p.UserName)
            //        .Where(TbUser._.UserCode == TbSiteDischargeCargo._.Contacts), "ContactsName")
            //        .AddSelect(Db.Context.From<TbUser>().Select(p => p.UserName)
            //        .Where(TbUser._.UserCode == TbSiteDischargeCargo._.Driver), "CarUser")
            //        .LeftJoin<TbSysDictionaryData>((a, c) => a.DischargeType == c.DictionaryCode && c.FDictionaryCode == "DischargeType")
            //        .LeftJoin<TbUser>((a, c) => a.InsertUserCode == c.UserCode)
            //        .LeftJoin<TbCarInfo>((a, c) => a.VehicleCode == c.CarCode)
            //        .LeftJoin<TbDistributionEnt>((a, c) => a.DistributionCode == c.DistributionCode)
            //          .Where(where).OrderBy(d => d.ID).ToPageList(request.rows, request.page);
            //    return ret;
            //}
            //catch (Exception)
            //{
            //    throw;
            //}
            try
            {
                string where = " where 1=1 ";
                StringBuilder sbSiteCode = new StringBuilder();
                #region 数据权限新

                if (!string.IsNullOrWhiteSpace(request.ProcessFactoryCode))
                {
                    where += " and Tb.ProcessFactoryCode='" + request.ProcessFactoryCode + "'";
                }
                if (!string.IsNullOrWhiteSpace(request.ProjectId))
                {
                    where += " and Tb.ProjectId='" + request.ProjectId + "'";
                }
                if (!string.IsNullOrWhiteSpace(request.CarCph))
                {
                    where += " and Tb.CarCph like '%" + request.CarCph + "%'";
                }
                if (!string.IsNullOrWhiteSpace(request.TypeCode))
                {
                    where += " and Tb.TypeCode like '%" + request.TypeCode + "%'";
                }
                if (!string.IsNullOrWhiteSpace(request.OrderCode))
                {
                    where += " and Tb.OrderCode like '%" + request.OrderCode + "%'";
                }
                if (!string.IsNullOrWhiteSpace(request.SiteCode))
                {
                    List <string> SiteList = _workOrderLogic.GetCompanyWorkAreaOrSiteList(request.SiteCode, 5);
                    for (int i = 0; i < SiteList.Count; i++)
                    {
                        if (i == (SiteList.Count - 1))
                        {
                            sbSiteCode.Append("'" + SiteList[i] + "'");
                        }
                        else
                        {
                            sbSiteCode.Append("'" + SiteList[i] + "',");
                        }
                    }
                    if (SiteList.Count > 0)
                    {
                        where += " and Tb.SiteCode in(" + sbSiteCode + ")";
                    }
                }

                #endregion

                string sql = @"select * from (select siteDc.ID,siteDc.DischargeCargoCode,siteDc.DistributionCode,siteDc.SiteCode,siteDc.ProcessFactoryCode,siteDc.ProjectId,sd.DictionaryText as DischargeTypeNew,case when siteDc.OrderCode is null then disEnt.OrderCode else siteDc.OrderCode end as OrderCode,siteDc.TypeCode,siteDc.TypeName,cp.CompanyFullName as SiteName,ur1.UserName as CarUser,siteDc.ContactWay,ur2.UserName as UserName,ur3.UserName as  ContactsName,siteDc.DistributionAddress,siteDc.DistributionTime,siteDc.SumTotal,car.CarCph,siteDc.InsertTime from TbSiteDischargeCargo siteDc
left join TbDistributionEnt disEnt on siteDc.DistributionCode=disEnt.DistributionCode
left join TbSysDictionaryData sd on siteDc.DischargeType=sd.DictionaryCode and sd.FDictionaryCode='DischargeType'
left join TbCompany cp on siteDc.SiteCode=cp.CompanyCode
left join TbUser ur1 on siteDc.Driver=ur1.UserCode
left join TbUser ur2 on siteDc.InsertUserCode=ur2.UserCode
left join TbUser ur3 on siteDc.Contacts=ur3.UserCode
left join TbCarInfo car on siteDc.VehicleCode=car.CarCode) Tb";

                //参数化
                List <Parameter> parameter = new List <Parameter>();
                var model = Repository <TbSiteDischargeCargo> .FromSqlToPageTable(sql + where, parameter, request.rows, request.page, "DischargeCargoCode", "desc");

                return(model);
            }
            catch (Exception)
            {
                throw;
            }
        }
コード例 #3
0
        /// <summary>
        /// 获取分页列表数据
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public ActionResult GetGridJson(SiteDischargeCargoRequest request)
        {
            var data = _siteDiscCargoLogic.GetDataListForPage(request);

            return(Content(data.ToJson()));
        }