예제 #1
0
 public MortgageController()
 {
     _mortgagePush  = new MortgagePush();
     _auditBll      = new BaseAuditBll();
     _mortgageDal   = new MortgageDAL();
     _baseAuditDal  = new BaseAuditDAL();
     _mortgageBll   = new MortgageBll();
     _salesGroupBll = new SalesGroupBll();
 }
예제 #2
0
 public DayStatisticsBll()
 {
     _baseAuditDal  = new BaseAuditDAL();
     _salesGroupDal = new SalesGroupDAL();
     _mortgageDal   = new MortgageDAL();
     _log           = new LogManagerExtend();
     _baseCaseDal   = new BaseCaseDAL();
     _lendingDal    = new LendingDAL();
 }
예제 #3
0
        /// <summary>
        /// 确认签约要件
        /// </summary>
        /// <param name="caseid">案件ID,并非案件号</param>
        /// <returns></returns>
        public async Task <bool> ConfrimPublic(string id, string createUser, string description)
        {
            var         audit = _baseAuditDal.Get(id);
            MortgageDAL mort  = new MortgageDAL();

            if (audit == null)
            {
                return(false);
            }
            var morimodel = mort.GetPublic(id);

            if (morimodel == null)
            {
                return(false);
            }
            audit.Description = description;

            AuditHelp ah = new AuditHelp();
            var       publicMortgageDto = new PublicMortgageDto();

            Infrastructure.ExtendTools.ObjectExtend.CopyTo(morimodel, publicMortgageDto);
            publicMortgageDto.LenderName  = audit.LenderName;
            publicMortgageDto.CaseNum     = audit.NewCaseNum;
            publicMortgageDto.OpeningBank = audit.OpeningBank;
            publicMortgageDto.OpeningSite = audit.OpeningSite;
            publicMortgageDto.BankCard    = audit.BankCard;
            if (audit.IntroducerAudits != null && audit.IntroducerAudits.Any())
            {
                foreach (var r in audit.IntroducerAudits)
                {
                    var newIntro = new IntroducerAudit();
                    Infrastructure.ExtendTools.ObjectExtend.CopyTo(r, newIntro);
                    publicMortgageDto.Introducer.Add(newIntro);
                }
            }

            UserDAL ud    = new UserDAL();
            var     contr = await ud.FindById(morimodel.ContractPerson);

            publicMortgageDto.ContractPersonText = contr.DisplayName;
            MortgagePush _mortgagePush = new MortgagePush();
            var          pushResult    = _mortgagePush.PushToHats(publicMortgageDto);

            if (!pushResult.IsSuccess)
            {
                return(false);
            }
            var newid = ah.CopyBaseAudit(audit, createUser, CaseStatus.Lending, false);

            _mortgageDal.CopyPublic(morimodel, newid, createUser);
            //pub.ID = newid;
            //pub.CreateUser = createUser;
            //_mortgageDal.Add(pub);
            _mortgageDal.AcceptAllChange();
            return(true);
        }
예제 #4
0
        /// <summary>
        /// 放款只读页面
        /// </summary>
        /// <returns></returns>

        public ActionResult ReadonlyLending(string id)
        {
            LendingDAL led   = new LendingDAL();
            var        lem   = led.GetAuthorizeAndSelf(id, CurrentUser);
            var        morvm = new LendingViewModel();

            if (lem != null)
            {
                morvm = morvm.CastModel(lem);
            }
            else
            {
                BaseAuditDAL bad   = new BaseAuditDAL();
                MortgageDAL  md    = new MortgageDAL();
                var          audit = bad.GetMaxAuditAuthorizeAndSelf(id, CurrentUser);

                if (audit == null)
                {
                    RedirectToAction("Failed", "Home");
                }
                var mor = md.GetAll().FirstOrDefault(t => t.BaseAudit.CaseNum == audit.CaseNum);
                if (mor == null)
                {
                    RedirectToAction("Failed", "Home");
                }
                var borrower = audit.RelationPersonAudits.FirstOrDefault(t => t.RelationType == "-PersonType-JieKuanRen");
                if (borrower == null)
                {
                    RedirectToAction("Failed", "Home");
                }
                lem = new Lending();
                //lem.Borrower = borrower.Name;
                //lem.ContactNumber = borrower.ContactAudits.FirstOrDefault(t => t.IsDefault) == null ? "" : borrower.ContactAudits.FirstOrDefault(t => t.IsDefault).ContactNumber;
                //lem.BorrowNumber = audit.BankCard;
                //lem.OpeningBank = audit.OpeningBank;
                //lem.ContractAmount = mor.ContractAmount;
                lem.ID = id;

                morvm = morvm.CastModel(lem);
            }
            ViewBag.ID = id;
            return(View(morvm));
        }
예제 #5
0
 public MortgageBll()
 {
     _baseAuditDal       = new BaseAuditDAL();
     _mortgageDal        = new MortgageDAL();
     _introducerAuditDal = new IntroducerAuditDAL();
 }
예제 #6
0
        // public string CaseStatusText { get; set; }

        #endregion 2016-9-8 新增字段

        public BaseCaseViewModel CastModel(BaseCase model)
        {
            BaseCaseViewModel bcvm = new BaseCaseViewModel();

            Infrastructure.ExtendTools.ObjectExtend.CopyTo(model, bcvm);
            bcvm.CaseNum = model.NewCaseNum;

            #region 2016-9-8新增

            var badal   = new BaseAuditDAL();
            var modal   = new MortgageDAL();
            var auditvm = new AuditInformationVM();
            var dicdal  = new DictionaryDAL();
            var store   = new Infrastructure.Identity.Store.UserStore();
            var manager = new UserManager(store);
            if (string.IsNullOrEmpty(model.NewCaseNum))
            {
                bcvm.AuditInformation = auditvm;
                return(bcvm);
            }
            var basudit = badal.GetbyCaseNum(model.NewCaseNum);
            if (basudit == null)
            {
                bcvm.AuditInformation = auditvm;
                bcvm.CaseStatus       = null;
                return(bcvm);
            }
            if (basudit.CaseMode == "-CaseMode-JuJian")
            {
                auditvm.ThirdPartyAuditAmount = basudit.ThirdPartyAuditAmount;
                auditvm.ThirdPartyAuditTerm   = basudit.ThirdPartyAuditTerm;
            }
            else
            {
                auditvm.ThirdPartyAuditAmount = basudit.AuditAmount;
                auditvm.ThirdPartyAuditTerm   = basudit.AuditTerm;
            }
            var CaseStatus = basudit == null ? "数据不完整" : basudit.CaseStatus;
            bcvm.CaseStatus = CaseStatus == null ? "" : CaseStatus;
            //bcvm.CaseStatusText = CaseStatus == null ? "" : Helper.CaseStatusHelper.GetBigStatusText(CaseStatus);
            string RefuseReason = "";
            if (basudit.RejectType != null)
            {
                string        RejectType = "";
                string[]      str        = basudit.RejectType.Split(',');
                DictionaryDAL dadal      = new DictionaryDAL();
                foreach (var item in str)
                {
                    RejectType += dadal.GetText(item) + ",";
                }
                RefuseReason = RejectType.Substring(0, RejectType.Length - 1);
            }

            auditvm.ThirdPartyAuditRate = basudit.AuditRate;
            auditvm.RefuseReason        = RefuseReason;
            auditvm.SignRefuseReason    = basudit.RejectReason;
            var mortgage = modal.Get(basudit.ID);
            if (mortgage == null)
            {
                bcvm.AuditInformation = auditvm;
                return(bcvm);
            }
            var contr = manager.FindById(mortgage.ContractPerson);
            auditvm.ContractPersonText = contr == null ? "" : contr.DisplayName;
            auditvm.ContractAmount     = mortgage.ContractAmount;
            auditvm.ContractDate       = mortgage.ContractDate;
            bcvm.AuditInformation      = auditvm;

            #endregion 2016-9-8新增

            return(bcvm);
        }
예제 #7
0
        public LendingViewModel CastModel(Lending model)
        {
            BaseAuditDAL bad       = new BaseAuditDAL();
            MortgageDAL  md        = new MortgageDAL();
            var          dicdal    = new DictionaryDAL();
            var          baseaudit = bad.Get(model.ID);
            var          maxaudit  = bad.GetMaxAudit(model.ID);
            var          minaudit  = bad.GetMinAudit(model.ID);
            var          borrower  = maxaudit.RelationPersonAudits.FirstOrDefault(t => t.RelationType == "-PersonType-JieKuanRen");
            var          mor       = md.GetAll().FirstOrDefault(t => t.BaseAudit.NewCaseNum == maxaudit.NewCaseNum);

            var baseauditRelaType = "";
            var maxauditRelaType  = "";

            if (baseaudit != null)
            {
                if (!string.IsNullOrEmpty(baseaudit.OpeningSite))
                {
                    var baseauditRela = baseaudit.RelationPersonAudits.FirstOrDefault(t => t.IdentificationNumber == baseaudit.OpeningSite);
                    if (baseauditRela != null)
                    {
                        baseauditRelaType = baseauditRela.Name + "(" + dicdal.GetText(baseauditRela.RelationType) + ")";
                    }
                }
            }
            if (maxaudit != null)
            {
                if (!string.IsNullOrEmpty(maxaudit.OpeningSite))
                {
                    var maxauditRela = maxaudit.RelationPersonAudits.FirstOrDefault(t => t.IdentificationNumber == maxaudit.OpeningSite);
                    if (maxauditRela != null)
                    {
                        maxauditRelaType = maxauditRela.Name + "(" + dicdal.GetText(maxauditRela.RelationType) + ")";
                    }
                }
            }

            LendingViewModel bcvm = new LendingViewModel();

            Com.HSJF.Infrastructure.ExtendTools.ObjectExtend.CopyTo(model, bcvm);
            bcvm.CaseNum        = baseaudit == null ? maxaudit == null ? "" : maxaudit.NewCaseNum : baseaudit.NewCaseNum;
            bcvm.CaseStatus     = baseaudit == null ? maxaudit == null ? "" : maxaudit.CaseStatus : baseaudit.CaseStatus;
            bcvm.CaseStatusText = baseaudit == null ? maxaudit == null ? "" : Com.HSJF.HEAS.Web.Helper.CaseStatusHelper.GetStatsText(maxaudit.CaseStatus) : Com.HSJF.HEAS.Web.Helper.CaseStatusHelper.GetStatsText(baseaudit.CaseStatus);
            bcvm.IsCurrent      = baseaudit == null ? false : (baseaudit.CaseStatus == Com.HSJF.Framework.DAL.CaseStatus.Lending) ? true : false;
            //[Display(Name = "进件提交日期")]
            bcvm.CreateTime    = baseaudit == null ? maxaudit == null ? null : maxaudit.CreateTime : baseaudit.CreateTime;
            bcvm.Borrower      = borrower.Name;
            bcvm.ContactNumber = borrower.ContactAudits.FirstOrDefault(t => t.IsDefault) == null ? "" : borrower.ContactAudits.FirstOrDefault(t => t.IsDefault).ContactNumber;
            bcvm.BankCard      = baseaudit == null ? maxaudit == null ? null : maxaudit.BankCard : baseaudit.BankCard;
            bcvm.OpeningBank   = baseaudit == null ? maxaudit == null ? null : maxaudit.OpeningBank : baseaudit.OpeningBank;
            bcvm.OpeningSite   = baseaudit == null ? maxaudit == null ? null : maxaudit.OpeningSite : baseaudit.OpeningSite;

            bcvm.OpeningSiteText = baseaudit == null ? maxaudit == null ? null : maxauditRelaType : baseauditRelaType;

            bcvm.ContractAmount = mor == null ? null : mor.ContractAmount;
            bcvm.SalesID        = baseaudit == null ? maxaudit == null ? null : maxaudit.SalesID : baseaudit.SalesID;
            // [Display(Name = "服务费") 自动计算=放款金额*服务费率]
            bcvm.ServiceCharge = baseaudit == null ? maxaudit == null ? null : mor.ContractAmount * (maxaudit.ServiceChargeRate / 100) : mor.ContractAmount * (baseaudit.ServiceChargeRate / 100);
            // [Display(Name = "服务费点数")]
            bcvm.ServiceChargeRate = baseaudit == null ? maxaudit == null ? null : maxaudit.ServiceChargeRate : baseaudit.ServiceChargeRate;
            // [Display(Name = "客户已支付金额")]
            bcvm.Deposit = baseaudit == null ? maxaudit == null ? null : maxaudit.Deposit : baseaudit.Deposit;
            // [Display(Name = "客户支付定金日期")]
            bcvm.DepositDate = baseaudit == null ? maxaudit == null ? null : maxaudit.DepositDate : baseaudit.DepositDate;
            // [Display(Name = "是否为活动期间的优惠利率")]
            bcvm.IsActivitieRate = baseaudit == null ? maxaudit == null ? null : maxaudit.IsActivitieRate : baseaudit.IsActivitieRate;
            // [Display(Name = "跟单人")]
            bcvm.Merchandiser = baseaudit == null ? maxaudit == null ? null : maxaudit.Merchandiser : baseaudit.Merchandiser;
            // [Display(Name = "出借人姓名")]
            bcvm.LenderName = baseaudit == null ? maxaudit == null ? null : maxaudit.LenderName : baseaudit.LenderName;
            // [Display(Name = "保证金")]
            bcvm.EarnestMoney = baseaudit == null ? maxaudit == null ? null : maxaudit.EarnestMoney : baseaudit.EarnestMoney;
            // [Display(Name = "外访费(下户费)")]
            bcvm.OutboundCost = baseaudit == null ? maxaudit == null ? null : maxaudit.OutboundCost : baseaudit.OutboundCost;
            // [Display(Name = "代收公证费用")]
            bcvm.DebitNotarizationCost = baseaudit == null ? maxaudit == null ? null : maxaudit.DebitNotarizationCost : baseaudit.DebitNotarizationCost;
            // [Display(Name = "代收评估费")]
            bcvm.DebitEvaluationCost = baseaudit == null ? maxaudit == null ? null : maxaudit.DebitEvaluationCost : baseaudit.DebitEvaluationCost;
            // [Display(Name = "代收担保费")]
            bcvm.DebitGuaranteeCost = baseaudit == null ? maxaudit == null ? null : maxaudit.DebitGuaranteeCost : baseaudit.DebitGuaranteeCost;
            // [Display(Name = "代收保险费")]
            bcvm.DebitInsuranceCost = baseaudit == null ? maxaudit == null ? null : maxaudit.DebitInsuranceCost : baseaudit.DebitInsuranceCost;
            // [Display(Name = "代收其他")]
            bcvm.DebitOtherCost = baseaudit == null ? maxaudit == null ? null : maxaudit.DebitOtherCost : baseaudit.DebitOtherCost;
            // [Display(Name = "公司承担的公证费")]
            bcvm.LevyNotarizationCost = baseaudit == null ? maxaudit == null ? null : maxaudit.LevyNotarizationCost : baseaudit.LevyNotarizationCost;
            // [Display(Name = "公司承担的产调费")]
            bcvm.LevyAssetsSurveyCost = baseaudit == null ? maxaudit == null ? null : maxaudit.LevyAssetsSurveyCost : baseaudit.LevyAssetsSurveyCost;
            // [Display(Name = "公司承担的信用报告费")]
            bcvm.LevyCreditReportCost = baseaudit == null ? maxaudit == null ? null : maxaudit.LevyCreditReportCost : baseaudit.LevyCreditReportCost;
            // [Display(Name = "公司承担的其他费用")]
            bcvm.LevyOtherCost = baseaudit == null ? maxaudit == null ? null : maxaudit.LevyOtherCost : baseaudit.LevyOtherCost;
            // [Display(Name = "案件模式")]
            bcvm.CaseMode = baseaudit == null ? maxaudit == null ? null : maxaudit.CaseMode : baseaudit.CaseMode;
            // [Display(Name = "第三方平台")]
            bcvm.ThirdParty = baseaudit == null ? maxaudit == null ? null : maxaudit.ThirdParty : baseaudit.ThirdParty;
            // [Display(Name = "月利息金额")]
            bcvm.MonthlyInterest = baseaudit == null ? maxaudit == null ? null : maxaudit.MonthlyInterest : baseaudit.MonthlyInterest;
            // [Display(Name = "放款日期")]
            bcvm.LendingDate = baseaudit == null ? maxaudit == null ? null : maxaudit.LendingDate : baseaudit.LendingDate;
            // [Display(Name = "回款日期")]
            bcvm.PaymentDate = baseaudit == null ? maxaudit == null ? null : maxaudit.PaymentDate : baseaudit.PaymentDate;
            // [Display(Name = "实收利息(不退客户)")]
            bcvm.ActualInterest = baseaudit == null ? maxaudit == null ? null : maxaudit.ActualInterest : baseaudit.ActualInterest;
            // [Display(Name = "预收利息(可退客户)")]
            bcvm.AdvanceInterest = baseaudit == null ? maxaudit == null ? null : maxaudit.AdvanceInterest : baseaudit.AdvanceInterest;
            //审核期限
            bcvm.AuditTerm = baseaudit == null ? maxaudit == null ? null : maxaudit.AuditTerm : baseaudit.AuditTerm;
            //审核利率
            bcvm.AuditRate = baseaudit == null ? maxaudit == null ? null : maxaudit.AuditRate : baseaudit.AuditRate;

            //审批金额
            bcvm.AuditAmount = baseaudit == null ? maxaudit == null ? null : maxaudit.AuditAmount : baseaudit.AuditAmount;
            //第三方审批金额
            bcvm.ThirdPartyAuditAmount = baseaudit == null ? maxaudit == null ? null : maxaudit.ThirdPartyAuditAmount : baseaudit.ThirdPartyAuditAmount;
            //第三方审批期限
            bcvm.ThirdPartyAuditTerm = baseaudit == null ? maxaudit == null ? null : maxaudit.ThirdPartyAuditTerm : baseaudit.ThirdPartyAuditTerm;
            //第三方审批利率
            bcvm.ThirdPartyAuditRate = baseaudit == null ? maxaudit == null ? null : maxaudit.ThirdPartyAuditRate : baseaudit.ThirdPartyAuditRate;
            //客户保证金
            bcvm.CustEarnestMoney = baseaudit == null ? maxaudit == null ? null : maxaudit.CustEarnestMoney : baseaudit.CustEarnestMoney;
            return(bcvm);
        }
예제 #8
0
 public DataMigration()
 {
     _baseCaseDal  = new BaseCaseDAL();
     _baseAuditDal = new BaseAuditDAL();
     _mortgageDal  = new MortgageDAL();
 }
예제 #9
0
        private FinishedCaseViewModel Map(BaseAudit baseAudit)
        {
            var borrow         = baseAudit.RelationPersonAudits.FirstOrDefault(t => t.RelationType == "-PersonType-JieKuanRen");
            var firstContacter = borrow.IfNotNull(p => p.ContactAudits.FirstOrDefault(t => t.IsDefault));
            var lendCase       = new LendingDAL().Get(baseAudit.ID);
            var mortgage       = new MortgageDAL().GetAll().Single(p => p.BaseAudit.CaseNum == baseAudit.CaseNum);
            var dictionaryDal  = new DictionaryDAL();


            var finishedCase = new FinishedCaseViewModel();

            lendCase.CopyTo(finishedCase);

            finishedCase.ID                    = baseAudit.ID;
            finishedCase.CaseNum               = baseAudit.CaseNum;
            finishedCase.CaseStatusText        = CaseStatusHelper.GetBigStatusText(baseAudit.CaseStatus);
            finishedCase.IsCurrent             = baseAudit.CaseStatus == CaseStatus.FinishCase;
            finishedCase.Borrower              = borrow.IsNotNull() ? borrow.Name : "";
            finishedCase.ContactNumber         = firstContacter.IsNotNull() ? firstContacter.ContactNumber : "";
            finishedCase.BankCard              = baseAudit.BankCard;
            finishedCase.OpeningBank           = baseAudit.OpeningBank;
            finishedCase.OpeningSite           = baseAudit.OpeningSite;
            finishedCase.ContractAmount        = mortgage.ContractAmount;
            finishedCase.SalesID               = baseAudit.SalesID;
            finishedCase.SalesIDText           = new SalesManDAL().FindBySalesID(baseAudit.SalesID).Name;
            finishedCase.Description           = baseAudit.Description;
            finishedCase.CreateTime            = baseAudit.CreateTime;
            finishedCase.ServiceCharge         = baseAudit.ServiceCharge;
            finishedCase.ServiceChargeRate     = baseAudit.ServiceChargeRate;
            finishedCase.Deposit               = baseAudit.Deposit;
            finishedCase.DepositDate           = baseAudit.DepositDate;
            finishedCase.IsActivitieRate       = baseAudit.IsActivitieRate;
            finishedCase.IsActivitieRateText   = dictionaryDal.GetText(baseAudit.IsActivitieRate.ToString());
            finishedCase.Introducer            = GetIntroducer(baseAudit);
            finishedCase.Merchandiser          = baseAudit.Merchandiser;
            finishedCase.LenderName            = baseAudit.LenderName;
            finishedCase.EarnestMoney          = baseAudit.EarnestMoney;
            finishedCase.OutboundCost          = baseAudit.OutboundCost;
            finishedCase.DebitNotarizationCost = baseAudit.DebitNotarizationCost;
            finishedCase.DebitEvaluationCost   = baseAudit.DebitEvaluationCost;
            finishedCase.DebitGuaranteeCost    = baseAudit.DebitGuaranteeCost;
            finishedCase.DebitInsuranceCost    = baseAudit.DebitInsuranceCost;
            finishedCase.DebitOtherCost        = baseAudit.DebitOtherCost;
            finishedCase.LevyNotarizationCost  = baseAudit.LevyNotarizationCost;
            finishedCase.LevyAssetsSurveyCost  = baseAudit.LevyAssetsSurveyCost;
            finishedCase.LevyCreditReportCost  = baseAudit.LevyCreditReportCost;
            finishedCase.LevyOtherCost         = baseAudit.LevyOtherCost;
            finishedCase.CaseMode              = baseAudit.CaseMode;
            finishedCase.CaseModeText          = dictionaryDal.GetText(baseAudit.CaseMode);
            finishedCase.ThirdParty            = baseAudit.ThirdParty;
            finishedCase.ThirdPartyText        = dictionaryDal.GetText(baseAudit.ThirdParty);
            finishedCase.MonthlyInterest       = baseAudit.MonthlyInterest;
            finishedCase.LendingDate           = baseAudit.LendingDate;
            finishedCase.PaymentDate           = baseAudit.PaymentDate;
            finishedCase.ActualInterest        = baseAudit.ActualInterest;
            finishedCase.AdvanceInterest       = baseAudit.AdvanceInterest;
            finishedCase.AuditTerm             = baseAudit.AuditTerm;
            finishedCase.AuditTermText         = dictionaryDal.GetText(baseAudit.AuditTerm);
            finishedCase.AuditRate             = baseAudit.AuditRate;

            finishedCase.LendFileName = GetFiles(finishedCase.LendFile);

            return(finishedCase);
        }