Example #1
0
        /// <summary>
        /// 签约拒绝只读页面
        /// </summary>
        /// <returns></returns>
        public ActionResult RejectMortgageReadonly(string id)
        {
            var bad    = new BaseAuditDAL();
            var entity = bad.GetAuthorizeAndSelf(id, CurrentUser);

            if (entity == null)
            {
                return(RedirectToAction("Failed", "Home"));
            }
            var jingbanren = WebConfigurationManager.AppSettings["jinbanren"];
            var viewModel  = new PublicMortgageViewModel();

            if (id.IsNullOrWhiteSpace() || id.IsNullOrWhiteSpace())
            {
                return(RedirectToAction("Error", "Home"));
            }

            var mortgage  = _mortgageBll.QueryById(id);
            var auditCase = _auditBll.QueryLeatestById(id);

            viewModel = MortgageMapper.MapToViewModel(auditCase, mortgage);

            if (mortgage.IsNull())
            {
                viewModel.ID = id;
            }

            ViewBag.ID = id;
            // 经办人,并且去除admin用户
            ViewBag.PublicUsers = GetUserByPermission(CaseStatus.PublicMortgage)
                                  .Where(u => !jingbanren.Contains(u.UserName)).ToList();

            return(View(viewModel));
        }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult GetCaseDetails(string id)
        {
            var response     = new BaseResponse <CaseAllDetailsViewModel>();
            var ch           = new AuditController.AuditHelper();
            var baseAuditDal = new BaseAuditDAL();
            var lendal       = new LendingDAL();
            var dicdal       = new DictionaryDAL();
            var sales        = new SalesManDAL();
            var lendvm       = new LendingViewModel();
            var mortgagevm   = new PublicMortgageViewModel();
            var mortgageBll  = new MortgageBll();
            var caseallmodel = new CaseAllDetailsViewModel();

            var baseauditvm = ch.FindByID(id, CurrentUser);

            if (baseauditvm != null)
            {
                var ahp  = new AuditHisHelper();
                var list = baseAuditDal.GetListByCaseNum(baseauditvm.CaseNum);
                baseauditvm.AuditHistory = ahp.GetHistory(list);
            }
            var mort = mortgageBll.QueryById(id);

            if (mort != null)
            {
                mortgagevm = mortgagevm.CastModel(mort);
                mortgagevm.ContractFileName          = GetFiles(mortgagevm.ContractFile);
                mortgagevm.OtherFileName             = GetFiles(mortgagevm.OtherFile);
                mortgagevm.FourFileName              = GetFiles(mortgagevm.FourFile);
                mortgagevm.RepaymentAttorneyFileName = GetFiles(mortgagevm.RepaymentAttorneyFile);
                mortgagevm.PowerAttorneyFileName     = GetFiles(mortgagevm.PowerAttorneyFile);
                mortgagevm.CollectionFileName        = GetFiles(mortgagevm.CollectionFile);
            }
            var lend = lendal.Get(id);

            if (lend != null)
            {
                lendvm = lendvm.CastModel(lend);
                lendvm.LendFileName        = GetFiles(lendvm.LendFile);
                lendvm.IsActivitieRateText = dicdal.GetText(lendvm.IsActivitieRate.ToString());
                lendvm.CaseModeText        = dicdal.GetText(lendvm.CaseMode);
                lendvm.ThirdPartyText      = dicdal.GetText(lendvm.ThirdParty);
                lendvm.AuditTermText       = dicdal.GetText(lendvm.AuditTerm);
                lendvm.SalesIDText         = sales.FindBySalesID(lendvm.SalesID) == null ? null : sales.FindBySalesID(lendvm.SalesID).Name;
            }

            caseallmodel.Baseauditvm = baseauditvm;
            caseallmodel.Mortgagevm  = mortgagevm;
            caseallmodel.Lendingvm   = lendvm;
            response.Status          = "Success";
            response.Data            = caseallmodel;
            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Example #3
0
        /// <summary>
        /// 映射签约信息到viewmodel
        /// </summary>
        /// <param name="baseAudit">基础案件信息</param>
        /// <param name="publicMortgage">签约信息</param>
        /// <returns>新的签约ViewModel</returns>
        public static PublicMortgageViewModel MapToViewModel(BaseAudit baseAudit, PublicMortgage publicMortgage)
        {
            var mortgage = new PublicMortgageViewModel();

            if (publicMortgage.IsNotNull())
            {
                mortgage = Mapper.Map <PublicMortgage, PublicMortgageViewModel>(publicMortgage);
            }
            if (mortgage != null)
            {
                mortgage.AuditAmount    = baseAudit.AuditAmount;
                mortgage.CaseNum        = baseAudit.NewCaseNum;
                mortgage.CaseStatus     = baseAudit.CaseStatus;
                mortgage.CaseStatusText = CaseStatusHelper.GetStatsText(baseAudit.CaseStatus);
                mortgage.IsCurrent      = baseAudit.CaseStatus == CaseStatus.PublicMortgage;

                mortgage.OpeningBank = baseAudit.OpeningBank;
                mortgage.OpeningSite = baseAudit.OpeningSite;
                mortgage.BankCard    = baseAudit.BankCard;

                mortgage.ServiceCharge     = baseAudit.ServiceCharge;
                mortgage.ServiceChargeRate = baseAudit.ServiceChargeRate;
                mortgage.Deposit           = baseAudit.Deposit;
                mortgage.DepositDate       = baseAudit.DepositDate;
                mortgage.IsActivitieRate   = baseAudit.IsActivitieRate;
                //更新第三方信息
                mortgage.CaseMode              = baseAudit.CaseMode;
                mortgage.ThirdParty            = baseAudit.ThirdParty;
                mortgage.ThirdPartyAuditAmount = baseAudit.ThirdPartyAuditAmount;
                mortgage.ThirdPartyAuditRate   = baseAudit.ThirdPartyAuditRate;
                mortgage.ThirdPartyAuditTerm   = baseAudit.ThirdPartyAuditTerm;
                //失败理由
                mortgage.RejectReason = baseAudit.RejectReason;

                mortgage.LenderName = baseAudit.LenderName;

                baseAudit.IntroducerAudits.IfNotNull(t =>
                {
                    mortgage.Introducer = baseAudit.IntroducerAudits.Select(p => p.MaptoIntroduceAuditViewModel()).ToList().OrderBy(b => b.Sequence);
                });

                return(mortgage);
            }
            return(mortgage);
        }
Example #4
0
        public ActionResult GetPublicMortgage(string id)
        {
            var viewModel = new PublicMortgageViewModel();
            var response  = new BaseResponse <PublicMortgageViewModel>();

            var mortgage  = _mortgageBll.QueryById(id);
            var auditCase = _auditBll.QueryLeatestById(id);

            viewModel = MortgageMapper.MapToViewModel(auditCase, mortgage);

            if (mortgage.IsNull())
            {
                viewModel.ID = id;
                var ahp  = new AuditHisHelper();
                var list = _baseAuditDal.GetListByCaseNum(viewModel.CaseNum);
                viewModel.AuditHistory = ahp.GetHistory(list);
            }
            else
            {
                viewModel.ContractFileName = GetFiles(viewModel.ContractFile);
                viewModel.OtherFileName    = GetFiles(viewModel.OtherFile);
                viewModel.FourFileName     = GetFiles(viewModel.FourFile);
                //viewModel.NoteFileName = GetFiles(viewModel.NoteFile);
                //viewModel.ReceiptFileName = GetFiles(viewModel.ReceiptFile);
                //viewModel.UndertakingFileName = GetFiles(viewModel.UndertakingFile);
                //viewModel.ContactConfirmFileName = GetFiles(viewModel.ContactConfirmFile);
                viewModel.RepaymentAttorneyFileName = GetFiles(viewModel.RepaymentAttorneyFile);
                viewModel.PowerAttorneyFileName     = GetFiles(viewModel.PowerAttorneyFile);
                viewModel.CollectionFileName        = GetFiles(viewModel.CollectionFile);

                var ahp  = new AuditHisHelper();
                var list = _baseAuditDal.GetListByCaseNum(viewModel.CaseNum);
                viewModel.AuditHistory = ahp.GetHistory(list);
            }

            response.Data   = viewModel;
            response.Status = "Success";
            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Example #5
0
        public async Task <ActionResult> SubmitMortgage(PublicMortgageViewModel model)
        {
            var response = new BaseResponse <string>();

            var baseAuditDal = new BaseAuditDAL();
            var entity       = baseAuditDal.GetAuthorizeAndSelf(model.ID, CurrentUser);

            if (entity == null)
            {
                response.Status  = "Failed";
                response.Message = new ErrorMessage[] { new ErrorMessage("权限", "权限不足")
                                                        {
                                                        } };
                return(Json(response));
            }
            var publicMortgage = new PublicMortgage();

            #region 验证

            var validator = new MortgageValidator();

            var result = validator.Validate(model);
            if (result.IsNotValid())
            {
                response.Status  = StatusEnum.Failed.ToString();
                response.Message = result.GetErrors().ToArray();
                return(Json(response));
            }

            #endregion 验证

            // 更新baseaudit

            var auditCase = _auditBll.QueryLeatest(model.CaseNum);

            if (auditCase.IsNull() && auditCase.CaseStatus == CaseStatus.PublicMortgage)
            {
                response.Status  = StatusEnum.Failed.ToString();
                response.Message = new[] { new ErrorMessage("", "案件已变更"), };
                return(Json(response));
            }

            // 更新BaseAudit基础信息
            auditCase.OpeningBank = model.OpeningBank;
            auditCase.OpeningSite = model.OpeningSite;
            auditCase.BankCard    = model.BankCard;
            auditCase.LenderName  = model.LenderName; //出借人
                                                      //auditCase.ServiceCharge = model.ServiceCharge;
                                                      //auditCase.ServiceChargeRate = model.ServiceChargeRate;
            auditCase.Deposit          = model.Deposit;
            auditCase.DepositDate      = model.DepositDate;
            auditCase.Description      = model.Description;
            auditCase.IsActivitieRate  = model.IsActivitieRate;
            auditCase.RejectReason     = model.RejectReason;//签约失败理由
            auditCase.LenderName       = model.LenderName;
            auditCase.IntroducerAudits = new List <IntroducerAudit>();

            model.Introducer.IfNotNull(t =>
            {
                model.Introducer.ForEach(item =>
                {
                    if (item.ID.Contains("TEMP"))
                    {
                        item.ID = Guid.NewGuid().ToString();
                    }
                    auditCase.IntroducerAudits.Add(item.MaptoIntroducerAudit());
                });
            });

            publicMortgage = model.CastDB(model);

            //合同文件
            publicMortgage.ContractFile = SaveFiles(model.ContractFile, model.ID, model.ID);
            // 四条
            publicMortgage.FourFile = SaveFiles(model.FourFile, model.ID, model.ID);
            //收据
            publicMortgage.OtherFile = SaveFiles(model.OtherFile, model.ID, model.ID);

            ////借条
            //publicMortgage.NoteFile = SaveFiles(model.NoteFile, model.ID, model.ID);
            ////他证
            //publicMortgage.ReceiptFile = SaveFiles(model.ReceiptFile, model.ID, model.ID);
            ////承诺书
            //publicMortgage.UndertakingFile = SaveFiles(model.UndertakingFile, model.ID, model.ID);
            ////联系方式确认书
            //publicMortgage.ContactConfirmFile = SaveFiles(model.ContactConfirmFile, model.ID, model.ID);

            //还款委托书
            publicMortgage.RepaymentAttorneyFile = SaveFiles(model.RepaymentAttorneyFile, model.ID, model.ID);
            //授权委托书
            publicMortgage.PowerAttorneyFile = SaveFiles(model.PowerAttorneyFile, model.ID, model.ID);
            //收件收据
            publicMortgage.CollectionFile = SaveFiles(model.CollectionFile, model.ID, model.ID);
            publicMortgage.CreateUser     = CurrentUser.UserName;
            publicMortgage.CreateTime     = DateTime.Now;

            // 推送到Hats  20160909 修改,推送在确认签约要件之后

            var isSuccess = _mortgageBll.SubmitCase(publicMortgage, auditCase, CurrentUser.UserName);

            //_mortgageDal.SubmitCase(publicMortgage, model.Description, CurrentUser.UserName);
            //_mortgageDal.AcceptAllChange();
            if (isSuccess)
            {
                response.Status = StatusEnum.Success.ToString();
            }
            else
            {
                response.Status  = StatusEnum.Failed.ToString();
                response.Message = new[] { new ErrorMessage("", "更新出错") };
            }

            /*
             * var publicMortgageDto = new PublicMortgageDto();
             *
             * Infrastructure.ExtendTools.ObjectExtend.CopyTo(model, publicMortgageDto);
             * if (model.Introducer != null && model.Introducer.Any())
             * {
             *  foreach (var r in model.Introducer)
             *  {
             *      var newIntro = new IntroducerAudit();
             *      Infrastructure.ExtendTools.ObjectExtend.CopyTo(r, newIntro);
             *      publicMortgageDto.Introducer.Add(newIntro);
             *  }
             * }
             *
             * UserDAL ud = new UserDAL();
             * var contr = await ud.FindById(publicMortgageDto.ContractPerson);
             * publicMortgageDto.ContractPersonText = contr.DisplayName;
             * var pushResult = _mortgagePush.PushToHats(publicMortgageDto);
             * if (pushResult.IsSuccess)
             * {
             *  bool isSuccess = _mortgageBll.SubmitCase(publicMortgage, auditCase, CurrentUser.UserName);
             *
             *  //_mortgageDal.SubmitCase(publicMortgage, model.Description, CurrentUser.UserName);
             *  //_mortgageDal.AcceptAllChange();
             *  if (isSuccess)
             *  {
             *      response.Status = StatusEnum.Success.ToString();
             *  }
             *  else
             *  {
             *      response.Status = StatusEnum.Failed.ToString();
             *      response.Message = new[] { new ErrorMessage("", "更新出错") };
             *  }
             * }
             * else
             * {
             *  response.Status = StatusEnum.Failed.ToString();
             *  response.Message = new[] { new ErrorMessage("", pushResult.Message) };
             * }   */

            return(Json(response));
        }
Example #6
0
        public ActionResult EditMortgage(PublicMortgageViewModel model)
        {
            var response = new BaseResponse <string>();

            var bad    = new BaseAuditDAL();
            var entity = bad.GetAuthorizeAndSelf(model.ID, CurrentUser);

            if (entity == null)
            {
                response.Status  = "Failed";
                response.Message = new ErrorMessage[] { new ErrorMessage("权限", "权限不足")
                                                        {
                                                        } };
                return(Json(response));
            }

            var auditCase = _auditBll.QueryLeatest(model.CaseNum);

            if (auditCase.IsNull() || auditCase.CaseStatus != CaseStatus.PublicMortgage)
            {
                response.Status  = StatusEnum.Failed.ToString();
                response.Message = new[] { new ErrorMessage("", "案件已变更"), };
                return(Json(response));
            }

            // 更新BaseAudit基础信息
            auditCase.OpeningBank = model.OpeningBank;
            auditCase.OpeningSite = model.OpeningSite;
            auditCase.BankCard    = model.BankCard;

            //auditCase.ServiceCharge = model.ServiceCharge;
            //auditCase.ServiceChargeRate = model.ServiceChargeRate;
            auditCase.Deposit         = model.Deposit;
            auditCase.DepositDate     = model.DepositDate;
            auditCase.IsActivitieRate = model.IsActivitieRate;
            auditCase.RejectReason    = model.RejectReason;
            auditCase.LenderName      = model.LenderName;

            //auditCase.IntroducerAudits = new List<IntroducerAudit>();
            //model.Introducer.IfNotNull(t =>
            //{
            //    model.Introducer.ForEach(item =>
            //    {
            //        if (item.ID.Contains("TEMP"))
            //        {
            //            item.ID = Guid.NewGuid().ToString();
            //        }

            //        auditCase.IntroducerAudits.Add(item.MaptoIntroducerAudit());
            //    });
            //});

            var mortgage = model.CastDB(model);

            // 合同文件
            mortgage.ContractFile = SaveFiles(model.ContractFile, model.ID, model.ID);
            // 四条
            mortgage.FourFile = SaveFiles(model.FourFile, model.ID, model.ID);
            // 收据
            mortgage.OtherFile = SaveFiles(model.OtherFile, model.ID, model.ID);

            //// 借条
            //mortgage.NoteFile = SaveFiles(model.NoteFile, model.ID, model.ID);
            //// 他证
            //mortgage.ReceiptFile = SaveFiles(model.ReceiptFile, model.ID, model.ID);
            //// 承诺书
            //mortgage.UndertakingFile = SaveFiles(model.UndertakingFile, model.ID, model.ID);
            //// 联系方式确认书
            //mortgage.ContactConfirmFile = SaveFiles(model.ContactConfirmFile, model.ID, model.ID);

            // 还款委托书
            mortgage.RepaymentAttorneyFile = SaveFiles(model.RepaymentAttorneyFile, model.ID, model.ID);
            // 授权委托书
            mortgage.PowerAttorneyFile = SaveFiles(model.PowerAttorneyFile, model.ID, model.ID);
            // 收件收据
            mortgage.CollectionFile = SaveFiles(model.CollectionFile, model.ID, model.ID);

            mortgage.CreateTime = DateTime.Now;
            mortgage.CreateUser = CurrentUser.UserName;

            //  _mortgageBll.Edit(mortgage, auditCase, CurrentUser.UserName);
            //_mortgageDal.Update(mortgage);

            _mortgageDal.Update(mortgage);
            _baseAuditDal.Update(auditCase);

            _mortgageDal.AcceptAllChange();
            return(base.GetBaseResponse <object>(true));
        }