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); }
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); }