Exemple #1
0
        public async Task <ActionResult> ConfrimPublic(string id, string description)
        {
            var response     = new BaseResponse <string>();
            var baseAuditDal = new BaseAuditDAL();
            var entity       = baseAuditDal.GetAuthorizeAndSelf(id, CurrentUser);

            if (entity == null)
            {
                response.Status  = "Failed";
                response.Message = new ErrorMessage[] { new ErrorMessage("权限", "权限不足")
                                                        {
                                                        } };
                return(Json(response));
            }
            var flag = await _mortgageBll.ConfrimPublic(id, CurrentUser.UserName, description);

            if (flag)
            {
                response.Status = StatusEnum.Success.ToString();
            }
            else
            {
                response.Status  = StatusEnum.Failed.ToString();
                response.Message = new[] { new ErrorMessage("", "更新出错") };
            }
            return(Json(response));
        }
Exemple #2
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));
        }
Exemple #3
0
        public bool RejectCase(string id, Infrastructure.Identity.Model.User user)
        {
            AuditHelp    ah        = new AuditHelp();
            BaseAuditDAL bad       = new BaseAuditDAL();
            var          baseaduit = bad.GetAuthorizeAndSelf(id, user);

            if (baseaduit != null && baseaduit.CaseStatus == CaseStatus.Lending)
            {
                //     baseaduit.CreateUser = createUser;
                ah.CopyBaseAudit(baseaduit, user.UserName, CaseStatus.SpecialClose);
                return(true);
            }
            return(false);
        }
Exemple #4
0
        /// <summary>
        /// 获取限制数据权限后的数据
        /// 数据权限限制为分公司或者创建者
        /// yanminchun 2016-10-12 增加数据权限限制
        /// </summary>
        /// <param name="user"></param>
        /// <param name="key"></param>
        /// <returns></returns>
        public Lending GetAuthorizeAndSelf(object key, Infrastructure.Identity.Model.User user)
        {
            BaseAuditDAL bd   = new BaseAuditDAL();
            var          curr = bd.GetAuthorizeAndSelf(key, user);

            if (curr != null)
            {
                var aud = bd.GetbyCaseSataus(curr.NewCaseNum, CaseStatus.Lending);
                if (aud != null)
                {
                    return(base.Get(aud.ID));
                }
            }
            return(null);
        }
Exemple #5
0
        public ActionResult RejectPublic(string id, string description)
        {
            var response     = new BaseResponse <string>();
            var baseAuditDal = new BaseAuditDAL();
            var entity       = baseAuditDal.GetAuthorizeAndSelf(id, CurrentUser);

            if (entity == null)
            {
                response.Status  = "Failed";
                response.Message = new ErrorMessage[] { new ErrorMessage("权限", "权限不足")
                                                        {
                                                        } };
                return(Json(response));
            }
            response.Status = _mortgageDal.RejectPublic(id, CurrentUser.UserName, description) ? "Success" : "Failed";
            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Exemple #6
0
        public ActionResult SubmitLending(LendingViewModel model)
        {
            var response = new BaseResponse <LendingViewModel>();
            var relationPersonauditDal = new RelationPersonAuditDAL();
            var baseAuditDal           = new BaseAuditDAL();

            //var relationstatebll = new RelationStateBLL();

            #region 验证

            List <ErrorMessage> em = new List <ErrorMessage>();
            if (!ModelState.IsValid)
            {
                foreach (var e in ModelState.Keys)
                {
                    if (ModelState[e].Errors.Any())
                    {
                        if (e.Contains("FileName"))
                        {
                            continue;
                        }
                        if (string.IsNullOrEmpty(ModelState[e].Errors[0].ErrorMessage))
                        {
                            continue;
                        }
                        var error = new ErrorMessage();
                        error.Key     = e;
                        error.Message = ModelState[e].Errors[0].ErrorMessage;
                        em.Add(error);
                    }
                }
            }
            if (em.Any())
            {
                response.Status  = "Failed";
                response.Message = em.ToArray();
                response.Data    = null;
                return(Json(response, JsonRequestBehavior.AllowGet));
            }

            #endregion 验证
            var baseaduit = baseAuditDal.GetAuthorizeAndSelf(model.ID, CurrentUser);
            if (baseaduit == null && baseaduit.CaseStatus != CaseStatus.Lending)
            {
                response.Status = "Failed";
                return(Json(response, JsonRequestBehavior.AllowGet));
            }

            var        db = new Lending();
            LendingDAL bd = new LendingDAL();
            db = model.CastDB(model);
            // 合同文件
            db.LendFile = SaveFiles(model.LendFile, model.ID, model.ID);

            //IEnumerable<RelationPersonAudit> relationPersonList = relationPersonauditDal.FindByCaseID(baseaduit.ID).ToList();
            //if (relationPersonList != null && relationPersonList.Any())
            //{
            //    foreach (var item in relationPersonList)
            //    {
            //        var relationbllModel = new RelationStateBLLModel()
            //        {
            //            Number = item.IdentificationNumber,
            //            Desc = "Bind"
            //        };
            //        relationstatebll.UpdateLockRelationState(relationbllModel);
            //    }
            //}

            var pushResult = PushToHats(model.CaseNum);
            if (pushResult.IsSuccess)
            {
                bd.SubmitCase(db, CurrentUser.UserName, model.Description);
                bd.AcceptAllChange();
                response.Status = "Success";
            }
            else
            {
                response.Status = StatusEnum.Failed.ToString();

                if (pushResult.Message.IsNullOrWhiteSpace() || pushResult.Message.IsNullOrWhiteSpace())
                {
                    response.Message = new ErrorMessage[] { new ErrorMessage("", "推送失败") };
                }
                else
                {
                    response.Message = new ErrorMessage[] { new ErrorMessage("", pushResult.Message) };
                }
            }

            return(Json(response));
        }
Exemple #7
0
        /// <summary>
        /// 签约失败,退回
        /// </summary>
        /// <param name="id">案件Id</param>
        /// <param name="Description">退回理由</param>
        /// <returns></returns>
        public ActionResult RejectMortgage(string id, string Description, string RejectReason)
        {
            var response     = new BaseResponse <string>();
            var baseAuditDal = new BaseAuditDAL();
            var entity       = baseAuditDal.GetAuthorizeAndSelf(id, CurrentUser);

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

            //RelationStateBLL relationstatebll = new RelationStateBLL();
            RelationPersonAuditDAL relationpersonauditdal = new RelationPersonAuditDAL();
            CollateralAuditDAL     collateralauditdal     = new CollateralAuditDAL();

            var baseaduit = _baseAuditDal.Get(id);

            if (baseaduit == null && baseaduit.CaseStatus != CaseStatus.PublicMortgage)
            {
                response.Status = "Failed";
                return(Json(response, JsonRequestBehavior.AllowGet));
            }

            //IEnumerable<RelationPersonAudit> relationPersonList = relationpersonauditdal.FindByCaseID(baseaduit.ID).ToList();
            //IEnumerable<CollateralAudit> collateralauditList = collateralauditdal.FindByAuditID(baseaduit.ID).ToList();

            //if (relationPersonList.Any())
            //{
            //    foreach (var item in relationPersonList)
            //    {
            //        //RelationState Relation = relationstatebll.QueryRelationState(s => s.RelationNumber.Equals(item.IdentificationNumber));
            //        //if (Relation != null)
            //        //{
            //        //    Relation.IsLock = 0;
            //        //    Relation.CreateTime = DateTime.Now;
            //        //    relationstatebll.UpdateRelationState(Relation);
            //        //}
            //        RelationStateBLLModel RelationbllModel = new RelationStateBLLModel()
            //        {
            //            Number = item.IdentificationNumber,
            //        };
            //        relationstatebll.UpdateLockRelationState(RelationbllModel);
            //    }
            //}
            //if (collateralauditList.Any())
            //{
            //    foreach (var item in collateralauditList)
            //    {
            //        //RelationState Relation = relationstatebll.QueryRelationState(s => s.RelationNumber.Equals(item.HouseNumber));
            //        //if (Relation != null)
            //        //{
            //        //    Relation.IsLock = 0;
            //        //    Relation.CreateTime = DateTime.Now;
            //        //    relationstatebll.UpdateRelationState(Relation);
            //        //}
            //        RelationStateBLLModel RelationbllModel = new RelationStateBLLModel()
            //        {
            //            Number = item.HouseNumber,
            //        };
            //        relationstatebll.UpdateLockRelationState(RelationbllModel);
            //    }
            //}

            var pushResult = _mortgagePush.Reject(baseaduit.NewCaseNum);

            if (pushResult.IsSuccess)
            {
                response.Status = _mortgageDal.RejectCase(id, CurrentUser.UserName, Description, RejectReason) ? "Success" : "Failed";
            }
            else
            {
                response.Status  = StatusEnum.Failed.ToString();
                response.Message = new[] { new ErrorMessage("", pushResult.Message) };
            }

            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Exemple #8
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));
        }
Exemple #9
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));
        }