Beispiel #1
0
        public IHttpActionResult Post(NCIPayGrantEntity request)
        {
            var response = new BaseResponse <NCIPayGrantEntity>();

            response = service.SavePayGrant(request);
            return(Ok(response));
        }
Beispiel #2
0
        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);
        }
Beispiel #3
0
        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);
        }