Beispiel #1
0
 /// <summary>
 /// 接复估单
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="items"></param>
 /// <param name="companyName"></param>
 /// <param name="isComplete"></param>
 /// <param name="revaluationNo"></param>
 /// <returns></returns>
 public Dictionary <string, string> ReceiveRevaluation(RevaluationModel entity, List <RevaluationItemRequest> items,
                                                       string companyName, bool isComplete, out string revaluationNo)
 {
     return
         (RevaluationService.Instance.ReceiveRevaluation(entity.ToModel <Revaluation>(),
                                                         items.ToListModel <RevaluationItem, RevaluationItemRequest>(), companyName, isComplete, out revaluationNo));
 }
Beispiel #2
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);
        }