public BaseResponse <IList <RESCHARGEGRO> > QueryResChargeGro(BaseRequest <PackageRelatedFilter> request)
        {
            var response = new BaseResponse <IList <RESCHARGEGRO> >();
            var q        = from r in unitOfWork.GetRepository <LTC_CHARGEGROUP_RESIDENT>().dbSet
                           join c in unitOfWork.GetRepository <LTC_CHARGEGROUP>().dbSet on r.CHARGEGROUPID equals c.CHARGEGROUPID
                           select new
            {
                cgr               = r,
                CHARGEGROUPNAME   = c.CHARGEGROUPNAME,
                CHARGEGROUPPERIOD = c.CHARGEGROUPPERIOD,
            };

            q = q.Where(m => m.cgr.FEENO == request.Data.FeeNO);
            q = q.OrderByDescending(m => m.cgr.CGRID);
            response.RecordsCount = q.Count();
            Action <IList> mapperResponse = (IList list) =>
            {
                response.Data = new List <RESCHARGEGRO>();
                foreach (dynamic item in list)
                {
                    RESCHARGEGRO newItem = Mapper.DynamicMap <RESCHARGEGRO>(item.cgr);
                    newItem.CHARGEGROUPNAME   = item.CHARGEGROUPNAME;
                    newItem.CHARGEGROUPPERIOD = item.CHARGEGROUPPERIOD;
                    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);
        }
Exemple #2
0
        public IHttpActionResult Post(RESCHARGEGRO baseRequest)
        {
            var response = service.SaveResChargeGro(baseRequest);

            return(Ok(response));
        }
        public BaseResponse <RESCHARGEGRO> SaveResChargeGro(RESCHARGEGRO request)
        {
            var response = new BaseResponse <RESCHARGEGRO>();

            // unitOfWork.BeginTransaction();
            if (request.CGRID == 0)
            {
                request.CREATETIME = DateTime.Now;
                request.CREATEBY   = SecurityHelper.CurrentPrincipal.EmpNo;
                request.UPDATETIME = DateTime.Now;
                request.UPDATEBY   = SecurityHelper.CurrentPrincipal.EmpNo;
            }
            else
            {
                request.UPDATETIME = DateTime.Now;
                request.UPDATEBY   = SecurityHelper.CurrentPrincipal.EmpNo;
            }
            response = base.Save <LTC_CHARGEGROUP_RESIDENT, RESCHARGEGRO>(request, (q) => q.CGRID == request.CGRID);

            //套餐不跑Job 所以这边三目记录表不需要插入数据 mod By Duke

            //if (request.OVERALLBEGINDATE.HasValue && request.OVERALLBEGINDATE.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd"))
            //{
            //    CHARGERECORD chargerecord = new CHARGERECORD
            //    {
            //        CHARGEGROUPID = request.CHARGEGROUPID,
            //        RESIDENTID = request.FEENO,
            //    };
            //    base.Save<LTC_CHARGEGROUP_CHARGERECORD, CHARGERECORD>(chargerecord, (q) => q.CGCRID == chargerecord.CGCRID);
            //    List<LTC_CHARGEGROUP_CHARGEITEM> regQueData = unitOfWork.GetRepository<LTC_CHARGEGROUP_CHARGEITEM>().dbSet.Where(m => m.CHARGEGROUPID == request.CHARGEGROUPID).ToList();
            //    var drugId = regQueData.Where(w => w.CHARGEITEMTYPE == 1).Select(s => s.CHARGEITEMID);
            //    var drugList = (from o in unitOfWork.GetRepository<LTC_NSDRUG>().dbSet where drugId.Contains(o.DRUGID) select o).ToList();
            //    drugList.ForEach(p =>
            //    {
            //        Mapper.CreateMap<LTC_NSDRUG, LTC_DRUGRECORD>();
            //        var drug = Mapper.Map<LTC_DRUGRECORD>(p);
            //        drug.FERQ = "";
            //        drug.QTY = 0;
            //        drug.OPERATOR = SecurityHelper.CurrentPrincipal.EmpNo;
            //        drug.FEENO = request.FEENO;
            //        unitOfWork.GetRepository<LTC_DRUGRECORD>().Insert(drug);
            //    });
            //    var materialId = regQueData.Where(w => w.CHARGEITEMTYPE == 2).Select(s => s.CHARGEITEMID);
            //    var materialList = (from o in unitOfWork.GetRepository<LTC_NSMEDICALMATERIAL>().dbSet where drugId.Contains(o.MATERIALID) select o).ToList();
            //    materialList.ForEach(p =>
            //    {
            //        Mapper.CreateMap<LTC_NSMEDICALMATERIAL, LTC_MATERIALRECORD>();
            //        var mat = Mapper.Map<LTC_MATERIALRECORD>(p);
            //        mat.TAKEWAY = "";
            //        mat.OPERATOR = SecurityHelper.CurrentPrincipal.EmpNo;
            //        mat.QTY = 0;
            //        mat.FEENO = request.FEENO;
            //        unitOfWork.GetRepository<LTC_MATERIALRECORD>().Insert(mat);
            //    });
            //    var serviceId = regQueData.Where(w => w.CHARGEITEMTYPE == 3).Select(s => s.CHARGEITEMID);
            //    var serviceList = (from o in unitOfWork.GetRepository<LTC_NSSERVICE>().dbSet where drugId.Contains(o.SERVICEID) select o).ToList();
            //    serviceList.ForEach(p =>
            //    {
            //        Mapper.CreateMap<LTC_NSSERVICE, LTC_SERVICERECORD>();
            //        var ser = Mapper.Map<LTC_SERVICERECORD>(p);
            //        ser.QTY = 0;
            //        ser.OPERATOR = SecurityHelper.CurrentPrincipal.EmpNo;
            //        ser.FEENO = request.FEENO;
            //        unitOfWork.GetRepository<LTC_SERVICERECORD>().Insert(ser);
            //    });
            //}
            //unitOfWork.Commit();
            return(response);
        }