Ejemplo n.º 1
0
 public JsonResult ApproveRevaluationItem(RevaluationItemModel model)
 {
     return(ExceptionCatch.Invoke(() =>
     {
         RevaluationService.ApproveRevaluationItem(model, UserHelper.GetCurrentUser().Id);
     }));
 }
Ejemplo n.º 2
0
        /// <summary>
        /// 导入复估结果
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public ActionResult UploadRevaluationResult(long id)
        {
            var files = Request.Files;
            HttpPostedFileBase file;

            //是否有文件
            if (files.Count > 0 && files[0] != null)
            {
                file = files[0];
            }
            else
            {
                return(Json(new { msg = "请上传文件!" }, "text/html", JsonRequestBehavior.AllowGet));
            }
            var fileStream = file.InputStream;
            var fileName   = file.FileName;
            var fileByte   = new byte[file.ContentLength];

            fileStream.Read(fileByte, 0, file.ContentLength - 1);
            try
            {
                string result = RevaluationService.UploadRevaluationResult(id, fileName, fileByte,
                                                                           UserHelper.GetCurrentUser().Id);
                //将返回设置为"text/html",解决ajaxSubmit 在IE8下不执行success,而是作为附件下载
                return(Json(new { msg = result }, "text/html", JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(Json(new { msg = ex.Message }, "text/html", JsonRequestBehavior.AllowGet));
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 获取复估列表
        /// </summary>
        /// <param name="revaluationId"></param>
        /// <param name="index"></param>
        /// <param name="rows"></param>
        /// <returns></returns>
        public JsonResult GetRevaluationItemList(long revaluationId, int index, int rows)
        {
            int  total;
            bool canFinish;
            var  result = RevaluationService.GetRevaluationItemList(revaluationId, index, rows, out total, out canFinish,
                                                                    UserHelper.GetCurrentUser().Id);

            return(Json(new
            {
                rows = result.Select(x => new
                {
                    x.TId,
                    x.ProjectNo,
                    x.PledgeAddress,
                    x.PropertyType,
                    x.BorrowerName,
                    InitialEstimateValue = x.InitialEstimateValue.ToString("F2"),
                    RevaluationTime =
                        x.RevaluationTime.HasValue ? string.Format("{0:yyyy-MM-dd HH:mm:ss}", x.RevaluationTime) : "",
                    RevaluationValue = x.RevaluationValue.HasValue ? x.RevaluationValue.Value.ToString("F2") : ""
                }),
                total,
                canFinish
            }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 4
0
 public JsonResult FinishRevaluation(long id)
 {
     return(ExceptionCatch.Invoke(() =>
     {
         RevaluationService.FinishRevaluation(id, UserHelper.GetCurrentUser().Id);
     }));
 }
Ejemplo n.º 5
0
        public ResponseResult ConsultRevaluation(ConsultRequest requestFrom)
        {
            LogHelper.Error("调用复估价格异议API:" + requestFrom.ToJson(), null);
            var responseResult = new ResponseResult();

            try
            {
                if (string.IsNullOrEmpty(requestFrom.BussinessId))
                {
                    throw new InvalidDataException("BussinessId不能为空");
                }
                var result = RevaluationService.ConsultRevaluation(requestFrom.BussinessId);
                responseResult.Code    = result ? 0 : 1;
                responseResult.Message = result ? "success" : "unsuccess";
            }
            catch (InvalidDataException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
                LogHelper.Error("调用复估价格异议API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 6
0
        public ResponseResult FinishRevaluation(string userKeyId, [FromBody] RevaluationBaseRequest request)
        {
            LogHelper.Error(string.Format("调用完成复估单API,userKeyId:{0},request:{1}", userKeyId, request.ToJson()), null);
            var responseResult = new ResponseResult();

            try
            {
                var user        = UserService.GetUserByKeyId(userKeyId);
                var revaluation = RevaluationService.GetByRevaluationNo(request.RevalutionNo, user.Id);
                RevaluationService.FinishRevaluation(revaluation.TId, user.Id);
                responseResult.Code    = 0;
                responseResult.Message = "success";
            }
            catch (ServiceException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = "error";
                LogHelper.Error("调用完成复估单API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 获取复估列表
        /// </summary>
        /// <param name="condition"></param>
        /// <param name="index"></param>
        /// <param name="rows"></param>
        /// <returns></returns>
        public JsonResult GetConsultList(ConsultCondition condition, int index, int rows)
        {
            int total;
            var result = RevaluationService.GetConsultList(condition, index, rows, out total, UserHelper.GetCurrentUser().Id);

            return(Json(new
            {
                rows = result.Select(x => new
                {
                    x.TId,
                    x.ProjectNo,
                    x.PledgeAddress,
                    x.EvalType,
                    x.PropertyType,
                    InitialEstimateValue = x.InitialEstimateValue.ToString("F2"),
                    x.RevaluationValue,
                    x.RevaluationDifference,
                    x.RevaluationIncrease,
                    RevaluationTime = string.Format("{0:yyyy-MM-dd HH:mm:ss}", x.RevaluationTime),
                    IsApprove = x.IsApprove.HasValue ? x.IsApprove.Value ? "是" : "否" : "",
                    IsCancelConsult = x.IsCancelConsult.HasValue && x.IsCancelConsult.Value ? "是" : "否"
                }),
                total
            }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 8
0
        public JsonResult GetRevaluationItemById(long id)
        {
            var item = RevaluationService.GetRevaluationItemById(id, UserHelper.GetCurrentUser().Id);

            return(Json(new
            {
                item.ProtocolNumber,
                item.CustomerNumber,
                item.PledgeAddress,
                item.PropertyType,
                item.BorrowerName,
                InitialEstimateTime = item.InitialEstimateTime.ToString("yyyy-MM-dd HH:mm:ss"),
                InitialEstimateValue = item.InitialEstimateValue.ToString("F2"),
                RevaluationTime =
                    item.RevaluationTime.HasValue ? item.RevaluationTime.Value.ToString("yyyy-MM-dd HH:mm:ss") : "",
                RevaluationValue = item.RevaluationValue.HasValue ? item.RevaluationValue.Value.ToString("F2") : "",
                item.OperationOrganization,
                item.CustomerAccountManager,
                item.ContactNumber,
                item.ChangeDescription,
                item.Remark,
                IsApprove = item.IsApprove.HasValue ? item.IsApprove.Value ? "是" : "否" : "",
                IsCancelConsult = item.IsCancelConsult.HasValue && item.IsCancelConsult.Value ? "是" : "否",
                item.ConsultReply
            }));
        }
Ejemplo n.º 9
0
        public ResponseResult GetRevaluationProject(string userKeyId, string revaluationNo, string projectNo)
        {
            LogHelper.Error(string.Format("调用复估项目详细信息API,userKeyId:{0},revaluationNo:{1}", userKeyId, revaluationNo), null);
            var responseResult = new ResponseResult();

            try
            {
                var user    = UserService.GetUserByKeyId(userKeyId);
                var project = RevaluationService.GetRevaluationItem(revaluationNo, projectNo, user.Id);
                responseResult.Code    = 0;
                responseResult.Message = "success";
                responseResult.Data    = new
                {
                    project.TId,
                    project.BusinessId,
                    project.RevaluationId,
                    project.OperationOrganization,
                    project.BorrowerName,
                    project.CreditBalance,
                    project.FiveCategories,
                    project.ContractExpirationDate,
                    project.PropertyType,
                    project.PledgeAddress,
                    project.InitialEstimateValue,
                    project.InitialEstimateOrganization,
                    project.InitialEstimateTime,
                    project.CustomerAccountManager,
                    project.ContactNumber,
                    project.ProtocolNumber,
                    project.CustomerNumber,
                    project.ProjectNo,
                    project.RevaluationTime,
                    project.RevaluationValue,
                    project.ChangeDescription,
                    project.Remark,
                    project.RevaluationDifference,
                    project.RevaluationIncrease,
                    project.IsConsult,
                    project.IsCancelConsult,
                    project.IsApprove,
                    project.ConsultReply,
                    project.CreateTime
                };
            }
            catch (ServiceException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
                LogHelper.Error("调用公司复估项目详细信息API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 开始复估
        /// </summary>
        /// <returns></returns>
        public ActionResult Revaluating(long revaluationId)
        {
            var revaluation = RevaluationService.GetRevaluationById(revaluationId, UserHelper.GetCurrentUser().Id);

            if (revaluation.RevaluationStatus == RevaluationStatusEnum.未受理)
            {
                return(Content("复估单未受理,无法进行复估"));
            }
            //if (revaluation.RevaluationStatus == RevaluationStatusEnum.已撤单)
            //{
            //    return Content("复估单已撤单,无法进行复估");
            //}
            return(View(revaluation));
        }
Ejemplo n.º 11
0
        public ResponseResult BatchRevalProject(string userKeyId, [FromBody] RevaluatingProjectBatchRequest request)
        {
            LogHelper.Error(string.Format("调用批量复估项目API,userKeyId:{0},request:{1}", userKeyId, request.ToJson()), null);
            var responseResult = new ResponseResult();

            try
            {
                var user = UserService.GetUserByKeyId(userKeyId);
                if (string.IsNullOrEmpty(request.RevalutionNo))
                {
                    throw new ServiceException("复估单不能为空");
                }
                if (!request.RevaluationItems.Any())
                {
                    throw new ServiceException("复估项目不能为空");
                }
                var revaluationItems = new List <RevaluationItemModel>();
                foreach (var item in request.RevaluationItems)
                {
                    revaluationItems.Add(new RevaluationItemModel()
                    {
                        ProjectNo         = item.ProjectNo,
                        RevaluationValue  = item.RevaluationValue,
                        ChangeDescription = item.ChangeDescription,
                        Remark            = item.Remark
                    });
                }
                RevaluationService.SaveBatchRevalProject(request.RevalutionNo, revaluationItems, user.Id);
                responseResult.Code    = 0;
                responseResult.Message = "success";
            }
            catch (ServiceException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = "error";
                LogHelper.Error("调用批量复估项目API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 12
0
        /// <summary>
        /// 获取复估列表
        /// </summary>
        /// <param name="condition"></param>
        /// <param name="index"></param>
        /// <param name="rows"></param>
        /// <returns></returns>
        public JsonResult GetRevaluationList(RevaluationCondition condition, int index, int rows)
        {
            int total;
            var result = RevaluationService.GetRevaluationList(condition, index, rows, out total, UserHelper.GetCurrentUser().Id);

            return(Json(new
            {
                rows = result.Select(x => new
                {
                    x.TId,
                    x.RevaluationNo,
                    x.RevaluationName,
                    x.EvalType,
                    RevaluationStatus = x.RevaluationStatus.ToString(),
                    CreateTime = string.Format("{0:yyyy-MM-dd HH:mm:ss}", x.CreateTime),
                    x.canFinish
                }),
                total
            }, JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 13
0
        public ResponseResult RevaluatingProject(string userKeyId, [FromBody] RevaluatingProjectRequest request)
        {
            LogHelper.Error(string.Format("调用复估单个项目API,userKeyId:{0},request:{1}", userKeyId, request.ToJson()), null);
            var responseResult = new ResponseResult();

            try
            {
                if (!request.RevaluationValue.HasValue)
                {
                    throw new ServiceException("复估价值不能为空!");
                }
                if (string.IsNullOrEmpty(request.ChangeDescription))
                {
                    throw new ServiceException("变动说明不能为空!");
                }
                var user    = UserService.GetUserByKeyId(userKeyId);
                var project = RevaluationService.GetRevaluationItem(request.RevalutionNo, request.ProjectNo, user.Id);
                var model   = new RevaluationItemModel()
                {
                    TId = project.TId,
                    RevaluationValue  = request.RevaluationValue,
                    ChangeDescription = request.ChangeDescription,
                    Remark            = request.Remark
                };
                RevaluationService.RevaluatingRevaluationItem(model, user.Id);
                responseResult.Code    = 0;
                responseResult.Message = "success";
            }
            catch (ServiceException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = "error";
                LogHelper.Error("调用复估单个项目API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 14
0
 public HttpResponseMessage ExportRevaluation(string userKeyId, string revalutionNo)
 {
     try
     {
         var user        = UserService.GetUserByKeyId(userKeyId);
         var revaluation = RevaluationService.GetByRevaluationNo(revalutionNo, user.Id);
         var bytes       = RevaluationService.ExportRevaluation(revaluation.TId, user.Id);
         HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);
         response.Content = new StreamContent(new MemoryStream(bytes));
         response.Content.Headers.ContentType        = new MediaTypeHeaderValue("application/octet-stream");
         response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
         {
             FileName = string.Format("复估单{0}_{1:yyyyMMddHHmmss}.xls", revalutionNo, DateTime.Now)
         };
         return(response);
     }
     catch (Exception ex)
     {
         return(new HttpResponseMessage(HttpStatusCode.NoContent));
     }
 }
Ejemplo n.º 15
0
        public ResponseResult RevaluationConsult(string userKeyId, [FromBody] RevaluationConsultRequest request)
        {
            LogHelper.Error(string.Format("调用复估认可API,userKeyId:{0},request:{1}", userKeyId, request.ToJson()), null);
            var responseResult = new ResponseResult();

            try
            {
                if (!request.IsApprove.HasValue)
                {
                    throw new ServiceException("是否认可不能为空!");
                }
                if (string.IsNullOrEmpty(request.ConsultReply))
                {
                    throw new ServiceException("认可理由不能为空!");
                }
                var user    = UserService.GetUserByKeyId(userKeyId);
                var project = RevaluationService.GetRevaluationItem(request.RevalutionNo, request.ProjectNo, user.Id);
                var model   = new RevaluationItemModel()
                {
                    TId          = project.TId,
                    IsApprove    = request.IsApprove,
                    ConsultReply = request.ConsultReply
                };
                RevaluationService.ApproveRevaluationItem(model, user.Id);
                responseResult.Code    = 0;
                responseResult.Message = "success";
            }
            catch (ServiceException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = "error";
                LogHelper.Error("调用复估认可API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 16
0
        public ResponseResult CancelConsultRevaluation(ConsultRequest requestFrom)
        {
            LogHelper.Error("调用撤销复估价格异议API:" + requestFrom.ToJson(), null);
            var responseResult = new ResponseResult();

            try
            {
                var result = RevaluationService.CancelConsultRevaluation(requestFrom.BussinessId);
                responseResult.Code    = result ? 0 : 1;
                responseResult.Message = result ? "success" : "unsuccess";
            }
            catch (InvalidDataException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
                LogHelper.Error("调用撤销复估价格异议API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 17
0
        public ResponseResult GetRevaluationDetail(string userKeyId, string revaluationNo)
        {
            LogHelper.Error(string.Format("调用复估单详细信息API,userKeyId:{0},revaluationNo:{1}", userKeyId, revaluationNo), null);
            var responseResult = new ResponseResult();

            try
            {
                var user        = UserService.GetUserByKeyId(userKeyId);
                var revaluation = RevaluationService.GetByRevaluationNo(revaluationNo, user.Id);
                var items       = revaluation.RevaluationItems.Select(x => new
                {
                    x.TId,
                    x.BusinessId,
                    x.RevaluationId,
                    x.OperationOrganization,
                    x.BorrowerName,
                    x.CreditBalance,
                    x.FiveCategories,
                    x.ContractExpirationDate,
                    x.PropertyType,
                    x.PledgeAddress,
                    x.InitialEstimateValue,
                    x.InitialEstimateOrganization,
                    x.InitialEstimateTime,
                    x.CustomerAccountManager,
                    x.ContactNumber,
                    x.ProtocolNumber,
                    x.CustomerNumber,
                    x.ProjectNo,
                    x.RevaluationTime,
                    x.RevaluationValue,
                    x.ChangeDescription,
                    x.Remark,
                    x.RevaluationDifference,
                    x.RevaluationIncrease,
                    x.IsConsult,
                    x.IsCancelConsult,
                    x.IsApprove,
                    x.ConsultReply,
                    x.CreateTime
                }).ToList();

                responseResult.Code    = 0;
                responseResult.Message = "success";
                responseResult.Data    = new
                {
                    revaluation.TId,
                    revaluation.BusinessId,
                    revaluation.RevaluationNo,
                    revaluation.EvalType,
                    revaluation.RevaluationName,
                    revaluation.RevaluationStatus,
                    revaluation.CreateTime,
                    RevaluationItems = items
                };
            }
            catch (ServiceException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
                LogHelper.Error("调用公司复估单详细信息API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 18
0
        public ResponseResult ReceiveRevaluation(RevaluateRequest requestFrom)
        {
            LogHelper.Error("调用接复估单API:" + requestFrom.ToJson(), null);
            var responseResult = new ResponseResult();

            try
            {
                if (string.IsNullOrEmpty(requestFrom.bussinessId))
                {
                    throw new InvalidDataException("复估单bussinessId不能为空!");
                }

                if (string.IsNullOrEmpty(requestFrom.CompanyName))
                {
                    throw new InvalidDataException("复估单CompanyName不能为空!");
                }

                var revaluate = new RevaluationModel()
                {
                    BusinessId      = requestFrom.bussinessId,
                    EvalType        = requestFrom.EvalType,
                    RevaluationName = requestFrom.RevaluationName
                };
                List <RevaluationItemRequest> items = requestFrom.RevaluationItems;
                if (!items.Any())
                {
                    throw new InvalidDataException("复估项RevaluationItems不能为空!");
                }
                decimal  tryDecimal;
                DateTime tryDateTime;
                if (items.Any(x => string.IsNullOrEmpty(x.BussinessId)))
                {
                    throw new InvalidDataException("复估项RevaluationItems中包括BussinessId为空的项目!");
                }
                if (items.Any(x => !decimal.TryParse(x.CreditBalance, out tryDecimal)))
                {
                    throw new InvalidDataException("复估项RevaluationItems中存在【授信余额】格式不正确!");
                }
                if (items.Any(x => !DateTime.TryParse(x.ContractExpirationDate, out tryDateTime)))
                {
                    throw new InvalidDataException("复估项RevaluationItems中存在【合同到期日】格式不正确!");
                }
                if (items.Any(x => !decimal.TryParse(x.InitialEstimateValue, out tryDecimal)))
                {
                    throw new InvalidDataException("复估项RevaluationItems中存在【初估价值(元)】格式不正确!");
                }
                if (items.Any(x => !DateTime.TryParse(x.InitialEstimateTime, out tryDateTime)))
                {
                    throw new InvalidDataException("复估项RevaluationItems中存在【初估时间】格式不正确!");
                }
                string revaluationNo;
                var    result = RevaluationService.ReceiveRevaluation(revaluate, items, requestFrom.CompanyName,
                                                                      requestFrom.IsComplete, out revaluationNo);
                responseResult.Code    = 0;
                responseResult.Message = "success";
                responseResult.Data    =
                    new
                {
                    revaluationNo,
                    projectNos = result.Select(x => new { BusinessId = x.Key, ProjectNo = x.Value })
                };
            }
            catch (InvalidDataException ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
                LogHelper.Error("调用接复估单API错误日志:", ex);
            }
            LogHelper.Error("接复估单返回结果:" + responseResult.ToJson(), null);
            return(responseResult);
        }
Ejemplo n.º 19
0
        public ResponseResult GetConsultList(string userKeyId, int scanType)
        {
            LogHelper.Error(string.Format("调用公司复估认可列表API,userKeyId:{0},scanType:{1}", userKeyId, scanType), null);
            var responseResult = new ResponseResult();

            try
            {
                var user        = UserService.GetUserByKeyId(userKeyId);
                int total       = 0;
                var projectList = RevaluationService.GetConsultList(new ConsultCondition()
                {
                    ScanType = scanType
                }, 0, int.MaxValue, out total, user.Id);
                responseResult.Code    = 0;
                responseResult.Message = "success";
                responseResult.Data    = projectList.Select(x => new
                {
                    x.TId,
                    x.BusinessId,
                    x.RevaluationId,
                    x.OperationOrganization,
                    x.BorrowerName,
                    x.CreditBalance,
                    x.FiveCategories,
                    x.ContractExpirationDate,
                    x.PropertyType,
                    x.PledgeAddress,
                    x.InitialEstimateValue,
                    x.InitialEstimateOrganization,
                    x.InitialEstimateTime,
                    x.CustomerAccountManager,
                    x.ContactNumber,
                    x.ProtocolNumber,
                    x.CustomerNumber,
                    x.ProjectNo,
                    x.RevaluationTime,
                    x.RevaluationValue,
                    x.ChangeDescription,
                    x.Remark,
                    x.RevaluationDifference,
                    x.RevaluationIncrease,
                    x.IsConsult,
                    x.IsCancelConsult,
                    x.IsApprove,
                    x.ConsultReply,
                    x.CreateTime
                });
                IList <long> idList = projectList.Where(x => !x.IsScan.HasValue && !x.ScanTime.HasValue).Select(x => x.TId).ToList();
                if (idList.Any())
                {
                    RevaluationService.SaveScanProjectResult(idList);
                }
            }
            catch (Exception ex)
            {
                responseResult.Code    = 1;
                responseResult.Message = ex.Message;
                LogHelper.Error("调用公司复估认可列表API错误日志:", ex);
            }
            return(responseResult);
        }
Ejemplo n.º 20
0
        /// <summary>
        /// 导出复估
        /// </summary>
        /// <param name="id"></param>
        /// <param name="revaluationNo"></param>
        /// <returns></returns>
        public ActionResult ExportRevaluation(long id, string revaluationNo)
        {
            var excel = RevaluationService.ExportRevaluation(id, UserHelper.GetCurrentUser().Id);

            return(File(excel, "application/octet-stream", string.Format("导出{0}复估单_{1:yyyyMMddHHmmss}.xls", revaluationNo, DateTime.Now)));
        }