Exemple #1
0
        public ActionResult GetPayMethods(PayMethodSearchDTO req)
        {
            if (req.ListType == 1)
            {
                req.offset = (req.offset - 1) * req.limit;
            }

            var list = _payMethodRepository.GetList(out int total, req);

            return(Json(new { rows = list, total = total, code = 0, msg = "" }, JsonRequestBehavior.AllowGet));
        }
Exemple #2
0
        public List <PayMethodListDTO> GetList(out int total, PayMethodSearchDTO req)
        {
            var companyId = OperatorProvider.Provider.GetCurrent().CompanyId.ToInt();

            using (var db = new SqlSugarClient(Connection))
            {
                int    totalCount            = 0;
                string order                 = string.Empty;
                List <PayMethodListDTO> list = new List <PayMethodListDTO>();
                if (req.Sort.Equals("id", StringComparison.OrdinalIgnoreCase) || string.IsNullOrEmpty(req.Sort))
                {
                    order = "s1.Id desc";
                }
                else
                {
                    order = string.Format("{0} {1}", req.Sort, req.Order);
                }
                //var data = db.Queryable<R_PayMethod>()
                //    .JoinTable<R_PayMethod>((s1, s2) => s1.Pid == s2.Id && s2.IsDelete == false)
                //    .Select<PayMethodListDTO>("s1.*,s2.Name as ParentName");
                var data = db.Sqlable().From <R_PayMethod>("s1")
                           .Join <R_PayMethod>("s2", "s1.Pid", "s2.Id", JoinType.Left)
                           .Where("s1.IsDelete = 0");
                data = data.Where("(s1.IsSystem=1 or s1.R_Company_Id=" + companyId + ")");
                if (!string.IsNullOrWhiteSpace(req.Name))
                {
                    data = data.Where("s1.Name like '%" + req.Name + "%'");
                }
                if (req.Pid > 0)
                {
                    data = data.Where("s1.Pid=" + req.Pid + "");
                }
                totalCount = data.Count();
                list       = data.SelectToPageList <PayMethodListDTO>(
                    "s1.*,s2.Name as ParentName", order, (req.offset / req.limit) + 1, req.limit, null);
                total = totalCount;
                return(list);
            }
        }