Beispiel #1
0
 public BaseResponse <OutValueModel> SaveOutValue(OutValueModel request)
 {
     if (request.OutNo == 0)
     {
         request.OrgId = SecurityHelper.CurrentPrincipal.OrgId;
     }
     return(base.Save <LTC_OUTVALUE, OutValueModel>(request, (q) => q.OUTNO == request.OutNo));
 }
Beispiel #2
0
        public BaseResponse <IList <OutValueModel> > QueryOutValue(BaseRequest <OutValueFilter> request)
        {
            BaseResponse <IList <OutValueModel> > response = new BaseResponse <IList <OutValueModel> >();
            var q = from n in unitOfWork.GetRepository <LTC_OUTVALUE>().dbSet
                    join e in unitOfWork.GetRepository <LTC_EMPFILE>().dbSet on n.RECORDBY equals e.EMPNO into res
                    from re in res.DefaultIfEmpty()
                    select new
            {
                OutValueModel = n,
                EmpName       = re.EMPNAME
            };

            if (request.Data.FeeNo.HasValue)
            {
                q = q.Where(m => m.OutValueModel.FEENO == request.Data.FeeNo);
            }
            if (!string.IsNullOrEmpty(request.Data.OrgId))
            {
                q = q.Where(m => m.OutValueModel.ORGID == request.Data.OrgId);
            }
            q = q.OrderByDescending(m => m.OutValueModel.OUTNO);
            response.RecordsCount = q.Count();
            Action <IList> mapperResponse = (IList list) =>
            {
                response.Data = new List <OutValueModel>();
                foreach (dynamic item in list)
                {
                    OutValueModel newItem = Mapper.DynamicMap <OutValueModel>(item.OutValueModel);
                    newItem.RecordNameBy = item.EmpName;
                    response.Data.Add(newItem);
                }
            };

            if (request != null && request.PageSize > 0)
            {
                var list = q.Skip((request.CurrentPage - 1) * request.PageSize).Take(request.PageSize).ToList();
                response.PagesCount = GetPagesCount(request.PageSize, response.RecordsCount);
                mapperResponse(list);
            }
            else
            {
                var list = q.ToList();
                mapperResponse(list);
            }
            return(response);
        }