public IHttpActionResult Post(NCIPayGrantEntity request) { var response = new BaseResponse <NCIPayGrantEntity>(); response = service.SavePayGrant(request); return(Ok(response)); }
public BaseResponse <NCIPayGrantEntity> SavePayGrant(NCIPayGrantEntity request) { var response = new BaseResponse <NCIPayGrantEntity>(); try { NCIP_SERVICEDEPOSIT servicedeposit = new NCIP_SERVICEDEPOSIT(); servicedeposit.SERVICEDEPOSITID = Convert.ToInt32(base.GenerateCode("serviceId", EnumCodeKey.serviceId)); servicedeposit.NSID = request.NSID; servicedeposit.YEARMONTH = request.GrantYear + "-" + request.GrantMonTh; servicedeposit.AMOUNT = Convert.ToDecimal(Convert.ToDouble(request.TotalNCIpay + request.AdjustAmount) * 0.05); servicedeposit.SERVICEDEPOSITDATE = DateTime.Now; servicedeposit.STATUS = 0; servicedeposit.CREATEBY = SecurityHelper.CurrentPrincipal.UserId.ToString(); servicedeposit.CREATETIME = DateTime.Now; servicedeposit.ISDELETE = false; long servicedepositid = insertServicedeposit(servicedeposit); var model = unitOfWork.GetRepository <NCIP_NCIPAYGRANT>().dbSet.FirstOrDefault(m => m.GRANTID == request.GrantID && m.ISDELETE == false); model.STATUS = Convert.ToInt32(NCIPStatusEnum.Appropriated); model.SERVICEDEPOSITID = Convert.ToInt32(servicedepositid); model.ADJUSTAMOUNT = request.AdjustAmount; model.ADJUSTREASON = request.AdjustReason; model.CREATETIME = DateTime.Now; model.ISDELETE = false; model.CREATORNAME = request.CreatorName == null ? SecurityHelper.CurrentPrincipal.UserName : request.CreatorName; unitOfWork.GetRepository <NCIP_NCIPAYGRANT>().Update(model); unitOfWork.Save(); Mapper.CreateMap <NCIP_NSMONFEE, MonFeeModel>(); var modelpay = unitOfWork.GetRepository <NCIP_NSMONFEE>().dbSet.Where(m => m.ISDELETE == false && m.NCIPAYGRANTID == request.GrantID).ToList(); var monFeeList = Mapper.Map <List <MonFeeModel> >(modelpay); if (monFeeList != null) { foreach (var item in monFeeList) { item.Status = Convert.ToInt32(NCIPStatusEnum.Appropriated); item.CreatorName = request.CreatorName == null ? SecurityHelper.CurrentPrincipal.UserName : item.CreatorName; base.Save <NCIP_NSMONFEE, MonFeeModel>(item, (q) => q.NSMONFEEID == item.NSMonFeeID); resService.SaveResidentMonfeeStatus(item.NSMonFeeID, Convert.ToInt32(NCIPStatusEnum.Appropriated)); resService.SaveDeductionMonfeeStatus(item.NSMonFeeID, Convert.ToInt32(NCIPStatusEnum.Appropriated)); } } unitOfWork.Save(); } catch (Exception ex) { throw ex; } return(response); }
public BaseResponse <List <NCIPayGrantEntity> > QueryPayGrantList(string year, string nsid) { var response = new BaseResponse <List <NCIPayGrantEntity> >(); response.Data = new List <NCIPayGrantEntity>(); int passed = Convert.ToInt32(NCIPStatusEnum.Passed); int appropriated = Convert.ToInt32(NCIPStatusEnum.Appropriated); Mapper.CreateMap <NCIP_NCIPAYGRANT, NCIPayGrantModel>(); var model = unitOfWork.GetRepository <NCIP_NCIPAYGRANT>().dbSet.Where(m => m.ISDELETE == false && m.GRANTYEAR == year && (m.STATUS == passed || m.STATUS == appropriated)).ToList(); //Mod By Duke if (nsid != "-1") { model = model.Where(m => m.NSID == nsid).ToList(); } var payGrantList = Mapper.Map <List <NCIPayGrantModel> >(model); payGrantList = payGrantList.OrderByDescending(m => m.CreateTime).ToList(); if (payGrantList != null && payGrantList.Count > 0) { foreach (var item in payGrantList) { NCIPayGrantEntity entity = new NCIPayGrantEntity(); entity.GrantID = item.GrantID; entity.ServiceDepositID = item.ServiceDepositID; entity.NSID = item.NSID; entity.GrantYear = item.GrantYear; entity.TotalResident = item.TotalResident; entity.TotalHospDay = item.TotalHospDay; entity.TotalAmount = item.TotalAmount; entity.TotalNCIpay = item.TotalNCIpay; entity.Status = item.Status; var adAmount = item.AdjustAmount == null ? 0 : item.AdjustAmount; var ActualPayment = Convert.ToDecimal(adAmount + item.TotalNCIpay); entity.ServiceSecurity = Convert.ToDecimal(Convert.ToDouble(ActualPayment) * 0.05); Mapper.CreateMap <NCIP_NSMONFEE, MonFeeModel>(); var modelpay = unitOfWork.GetRepository <NCIP_NSMONFEE>().dbSet.Where(m => m.ISDELETE == false && m.NCIPAYGRANTID == item.GrantID).OrderByDescending(m => m.CREATETIME).ToList(); var monFeeList = Mapper.Map <List <MonFeeModel> >(modelpay); if (monFeeList != null && monFeeList.Count > 0) { foreach (var mon in monFeeList) { entity.GrantMonTh += (Convert.ToDateTime(mon.YearMonth).Month + ","); } entity.GrantMonTh = entity.GrantMonTh.Substring(0, entity.GrantMonTh.Length - 1); response.Data.Add(entity); } else { response.ResultCode = 101; response.ResultMessage = "查无数据"; } } } else { response.ResultCode = 101; response.ResultMessage = "查无数据"; } return(response); }