Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
ligaode 3 weeks ago
parent
commit
66d08c442c
  1. 524
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  2. 2
      anrui-riskcenter-ui/src/views/secondarysales/secondarysales.vue
  3. 2
      anrui-riskcenter-ui/src/views/secondarysublet/secondarysublet.vue
  4. 2
      anrui-riskcenter-ui/src/views/surrenderforredemption/surrenderforredemption.vue
  5. 4
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyFeign.java
  6. 2
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanredemptionapply/LoanRedemptionApplyService.java
  7. 5
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyRest.java
  8. 153
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyService.java
  9. 20
      anrui-scm/anrui-scm-ui/src/api/statement/rebateType.js
  10. 9
      anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js
  11. 117
      anrui-scm/anrui-scm-ui/src/views/statement/rebateSummary/rebateTypeDetails.vue
  12. 103
      anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateNameByDetail.vue
  13. 246
      anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateTypeByDetail.vue
  14. 22
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java
  15. 27
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysales/SecondarySalesService.java

524
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

@ -4418,260 +4418,258 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
//更新审核时间
finSelectedReceivablesDetailed.setAuditDate(DateUtil.today());
finSelectedReceivablesDetailedService.updateById(finSelectedReceivablesDetailed);
//认资方退还垫款或者结清时资方逾期利息
if (v.getReceivablesName().equals("资方退还垫款") || v.getReceivablesName().equals("贷款保证金扣罚")) {
CollectionVoucher.CollectionVoucherDetail d = getReturnBackMoneyVoucher(v, collectionDate);
voucherDetails.add(d);
}
//推送间还待转付列表
if (v.getReceivablesName().equals("月还") || v.getReceivablesName().equals("资方逾期利息")) {
String planSid = "";
if (v.getReceivablesName().equals("月还")) {
planSid = v.getReceivablesSid();
} else {
FinUncollectedReceivablesDetailedJR jr = finUncollectedReceivablesDetailedJRService.fetchBySid(v.getReceivablesSid());
if (jr != null) {
planSid = jr.getBusSid();
}
}
LoanRepaymentPlanDetails planDetails = loanRepaymentPlanDetailsFeign.fetchDetails(planSid).getData();
if (null != planDetails) {
if (v.getReceivablesName().equals("月还")) {
//推送间还认款记录
LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
historyEntity.setPlanDetailSid(planSid);
historyEntity.setScheduleSid(planDetails.getScheduleSid());
historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
historyEntity.setUpdateTime(new DateTime());
historyEntity.setUpdateState("1");
historyEntity.setDataTime(new DateTime());
historyEntity.setBuckle("审核通过");
historyEntity.setBuckleKey("003");
historyEntity.setActualMoney(new BigDecimal(v.getSubscriptionMoney()));
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
if (null != planDetails.getPaymentMoney()) {
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentMoney = planDetails.getPaymentMoney();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
} else if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 0) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
} else {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
}
if (v.getReceivablesName().equals("资方逾期利息")) {
if (null != planDetails.getPaymentInterest()) {
if (planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentInterest = planDetails.getPaymentInterest();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentInterest(subtract);
BigDecimal paymentMoney = planDetails.getPaymentMoney();
BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract2);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
}
}
}
}
//推送间还月还收款凭证
CollectionVoucher.CollectionVoucherDetail d = getDueMoneyAndOverDueMoneyVoucher(v, collectionDate);
voucherDetails.add(d);
}
//认资金占用费消减平台资金占用费
if (v.getReceivablesName().equals("资金占用费")) {
String planSid = "";
String planSid = "";
if (v.getReceivablesName().equals("月还")) {
planSid = v.getReceivablesSid();
} else {
FinUncollectedReceivablesDetailedJR jr = finUncollectedReceivablesDetailedJRService.fetchBySid(v.getReceivablesSid());
if (jr != null) {
planSid = jr.getBusSid();
}
LoanRepaymentPlanDetails planDetails = loanRepaymentPlanDetailsFeign.fetchDetails(planSid).getData();
if (null != planDetails) {
LoanPlanDetailsVoForFundVoucher f = loanRepaymentPlanDetailsFeign.getLoanPlanDetailsVoForFundVoucher(planDetails.getBusVinSid());
if (null != f) {
List<GeneralVoucher.GeneralVoucherDetail> g = getFundGenralVoucher(planDetails, f);
if (!g.isEmpty()) {
g.stream().forEach(gv -> {
generalVoucherDetails.add(gv);
});
}
LoanPushFundHistory loanPushFundHistory = new LoanPushFundHistory();
if (null != f.getDuePushMoney()) {
loanPushFundHistory.setFund(f.getDuePushMoney());
}
loanPushFundHistory.setBusVinSid(planDetails.getBusVinSid());
loanPushFundHistory.setUseOrgName(planDetails.getUseOrgName());
loanPushFundHistory.setUseOrgSid(planDetails.getUseOrgSid());
String lastTimes = loanPushFundHistoryFeign.getLastDateByBusVinSid(planDetails.getBusVinSid()).getData();
if (StringUtils.isNotBlank(lastTimes)) {
try {
loanPushFundHistory.setLastAccrualDate(sdfTimes.parse(lastTimes));
} catch (ParseException e) {
e.printStackTrace();
}
}
loanPushFundHistoryFeign.saveHistoryByEntity(loanPushFundHistory);
// fundHistoryList.add(loanPushFundHistory);
}
//推送资金占用费出纳确认后
CollectionVoucher.CollectionVoucherDetail d = getFundVoucher(v, collectionDate, planDetails);
if (null != d) {
CollectionVoucher.CollectionVoucherDetail v1 = new CollectionVoucher.CollectionVoucherDetail();
BeanUtil.copyProperties(d, v1);
v1.setSceneCode(SceneCodeEnum.FUND_VOUCHER1.getCode());
voucherDetails.add(v1);
CollectionVoucher.CollectionVoucherDetail v2 = new CollectionVoucher.CollectionVoucherDetail();
BeanUtil.copyProperties(d, v2);
v2.setSceneCode(SceneCodeEnum.FUND_VOUCHER2.getCode());
collectionAfterVoucherDetails.add(v2);
}
}
}
//认名义价、合同违约金、其他费用收款
if (v.getReceivablesName().equals("名义价") ||
v.getReceivablesName().equals("合同违约金") ||
v.getReceivablesName().equals("其他费用") ||
v.getReceivablesName().equals("结清时资方逾期利息")
) {
CollectionVoucher.CollectionVoucherDetail d = getBalanceMoneyVoucher(v, collectionDate);
voucherDetails.add(d);
}
LoanRepaymentPlanDetails planDetails = loanRepaymentPlanDetailsFeign.fetchDetails(planSid).getData();
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.details(planDetails.getBusVinSid()).getData();
if("0".equals(busSalesOrderVehicle.getRiskState().toString())){
//认资方退还垫款或者结清时资方逾期利息
if (v.getReceivablesName().equals("资方退还垫款") || v.getReceivablesName().equals("贷款保证金扣罚")) {
CollectionVoucher.CollectionVoucherDetail d = getReturnBackMoneyVoucher(v, collectionDate);
voucherDetails.add(d);
}
//推送间还待转付列表
if (v.getReceivablesName().equals("月还") || v.getReceivablesName().equals("资方逾期利息")) {
if (null != planDetails) {
if (v.getReceivablesName().equals("月还")) {
//推送间还认款记录
LoanRepaymentHistory historyEntity = new LoanRepaymentHistory();
historyEntity.setPlanDetailSid(planSid);
historyEntity.setScheduleSid(planDetails.getScheduleSid());
historyEntity.setSkdBillNo(finalConfirmation.getBillNo());
historyEntity.setUpdateTime(new DateTime());
historyEntity.setUpdateState("1");
historyEntity.setDataTime(new DateTime());
historyEntity.setBuckle("审核通过");
historyEntity.setBuckleKey("003");
historyEntity.setActualMoney(new BigDecimal(v.getSubscriptionMoney()));
historyEntity.setReturnWay("间还");
historyEntity.setReturnWayKey("02");
if (null != planDetails.getPaymentMoney()) {
if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentMoney = planDetails.getPaymentMoney();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
} else if (planDetails.getPaymentMoney().compareTo(BigDecimal.ZERO) == 0) {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
} else {
try {
Date collDate = sdf.parse(finalConfirmation.getCollectionDate());
historyEntity.setActualDate(collDate);
if (planDetails.getDueDate().compareTo(collDate) > 0) {
//未逾期
Calendar cal_1 = Calendar.getInstance();// 使用默认时区和语言环境获得一个日历
cal_1.setTime(planDetails.getDueDate());
cal_1.add(Calendar.DAY_OF_MONTH, -1);
historyEntity.setPrepareDate(cal_1.getTime());
} else {
//已逾期
historyEntity.setPrepareDate(new DateTime());
}
} catch (ParseException e) {
e.printStackTrace();
}
historyEntity.setPaymentState("待转付");
historyEntity.setPaymentStateKey("001");
}
loanRepaymentHistoryFeign.saveHistoryByEntity(historyEntity);
}
if (v.getReceivablesName().equals("资方逾期利息")) {
if (null != planDetails.getPaymentInterest()) {
if (planDetails.getPaymentInterest().compareTo(BigDecimal.ZERO) == 1) {
BigDecimal paymentInterest = planDetails.getPaymentInterest();
String subscriptionMoney = v.getSubscriptionMoney();
BigDecimal subtract = paymentInterest.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentInterest(subtract);
BigDecimal paymentMoney = planDetails.getPaymentMoney();
BigDecimal subtract2 = paymentMoney.subtract(new BigDecimal(subscriptionMoney));
planDetails.setPaymentMoney(subtract2);
loanRepaymentPlanDetailsFeign.updateByEntity(planDetails);
String orderSid = planDetails.getSalesOrderSid();
String isOther = loanRepaymentScheduleFeign.returnBankOrOtherBankByPlanSid(planSid).getData();
String bankSid = "";
String scheduleSid = planDetails.getScheduleSid();
LoanRepaymentSchedule schedule = loanRepaymentScheduleFeign.fetchBySid(scheduleSid).getData();
if (isOther.equals("0")) {
if (StringUtils.isNotBlank(schedule.getBankSid())) {
bankSid = schedule.getBankSid();
}
} else if (isOther.equals("1")) {
if (StringUtils.isNotBlank(schedule.getOtherBankSid())) {
bankSid = schedule.getOtherBankSid();
}
}
ResultBean<LoanFinBank> bankResultBean = loanFinBankFeign.fetchEntityBySid(bankSid);
if (bankResultBean.getData() != null) {
LoanFinBank loanFinBank = bankResultBean.getData();
if (null != loanFinBank.getReAdvances()) {
if (loanFinBank.getReAdvances() == 1) {
FinUncollectedReceivablesDetailedJR jr = new FinUncollectedReceivablesDetailedJR();
jr.setCreateBySid(userSid);
SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData();
jr.setCreateByName(userVo.getName());
jr.setBusSid(planSid);
jr.setCurrentReceivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setReveivableMoney(new BigDecimal(v.getSubscriptionMoney()));
jr.setPayCostTitleKey("007");
jr.setPayCostTitleValue("资方退还垫款");
jr.setOrgSidPath(planDetails.getOrgSidPath());
jr.setUseOrgName(planDetails.getUseOrgName());
jr.setUseOrgSid(planDetails.getUseOrgSid());
jr.setStaffDeptName(planDetails.getDept());
jr.setStaffName(planDetails.getStaffName());
jr.setStaffDeptSid(planDetails.getDeptSid());
jr.setStaffUserSid(planDetails.getSalesUserSid());
finUncollectedReceivablesDetailedJRService.insert(jr);
}
}
}
}
}
}
}
//推送间还月还收款凭证
CollectionVoucher.CollectionVoucherDetail d = getDueMoneyAndOverDueMoneyVoucher(v, collectionDate);
voucherDetails.add(d);
}
//认资金占用费消减平台资金占用费
if (v.getReceivablesName().equals("资金占用费")) {
if (null != planDetails) {
LoanPlanDetailsVoForFundVoucher f = loanRepaymentPlanDetailsFeign.getLoanPlanDetailsVoForFundVoucher(planDetails.getBusVinSid());
if (null != f) {
List<GeneralVoucher.GeneralVoucherDetail> g = getFundGenralVoucher(planDetails, f);
if (!g.isEmpty()) {
g.stream().forEach(gv -> {
generalVoucherDetails.add(gv);
});
}
LoanPushFundHistory loanPushFundHistory = new LoanPushFundHistory();
if (null != f.getDuePushMoney()) {
loanPushFundHistory.setFund(f.getDuePushMoney());
}
loanPushFundHistory.setBusVinSid(planDetails.getBusVinSid());
loanPushFundHistory.setUseOrgName(planDetails.getUseOrgName());
loanPushFundHistory.setUseOrgSid(planDetails.getUseOrgSid());
String lastTimes = loanPushFundHistoryFeign.getLastDateByBusVinSid(planDetails.getBusVinSid()).getData();
if (StringUtils.isNotBlank(lastTimes)) {
try {
loanPushFundHistory.setLastAccrualDate(sdfTimes.parse(lastTimes));
} catch (ParseException e) {
e.printStackTrace();
}
}
loanPushFundHistoryFeign.saveHistoryByEntity(loanPushFundHistory);
// fundHistoryList.add(loanPushFundHistory);
}
//推送资金占用费出纳确认后
CollectionVoucher.CollectionVoucherDetail d = getFundVoucher(v, collectionDate, planDetails);
if (null != d) {
CollectionVoucher.CollectionVoucherDetail v1 = new CollectionVoucher.CollectionVoucherDetail();
BeanUtil.copyProperties(d, v1);
v1.setSceneCode(SceneCodeEnum.FUND_VOUCHER1.getCode());
voucherDetails.add(v1);
CollectionVoucher.CollectionVoucherDetail v2 = new CollectionVoucher.CollectionVoucherDetail();
BeanUtil.copyProperties(d, v2);
v2.setSceneCode(SceneCodeEnum.FUND_VOUCHER2.getCode());
collectionAfterVoucherDetails.add(v2);
}
}
}
//认名义价、合同违约金、其他费用收款
if (v.getReceivablesName().equals("名义价") ||
v.getReceivablesName().equals("合同违约金") ||
v.getReceivablesName().equals("其他费用") ||
v.getReceivablesName().equals("结清时资方逾期利息")
) {
CollectionVoucher.CollectionVoucherDetail d = getBalanceMoneyVoucher(v, collectionDate);
voucherDetails.add(d);
}
}
});
//查询该申请已认款金额总数
subscriptionMoneyAll = finSelectedReceivablesDetailedVos.stream().map(FinSelectedReceivablesDetailedVo::getSubscriptionMoney).map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add);
@ -4688,7 +4686,20 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
confirmation.setConfirmDate(DateUtil.today());
confirmation.setConfirmNameSid(userSid);
baseMapper.updateById(confirmation);
pushToRiskToFin(confirmation, finSelectedReceivablesDetailedVos, collectionDate, voucher);
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new java.util.concurrent.ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new java.util.concurrent.ThreadPoolExecutor.AbortPolicy());
FinCollectionConfirmation finalConfirmation1 = confirmation;
Future future1 = pool.submit(() -> {
pushToRiskToFin(finalConfirmation1, finSelectedReceivablesDetailedVos, collectionDate, voucher);
});
} catch (Exception e) {
e.printStackTrace();
}
//推送凭证业务
if (!generalVoucherDetails.isEmpty()) {
generalVoucher.setVoucherDetails(generalVoucherDetails);
@ -4729,8 +4740,17 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
String customerNumber = "";
for (int i = 0; i < finSelectedReceivablesDetailedVoList.size(); i++) {
FinSelectedReceivablesDetailedVo v = finSelectedReceivablesDetailedVoList.get(i);
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(v.getReceivablesSid());
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.details(finUncollectedReceivablesDetailed.getBusVinSid()).getData();
String planSid = "";
if (v.getReceivablesName().equals("月还")) {
planSid = v.getReceivablesSid();
} else {
FinUncollectedReceivablesDetailedJR jr = finUncollectedReceivablesDetailedJRService.fetchBySid(v.getReceivablesSid());
if (jr != null) {
planSid = jr.getBusSid();
}
}
LoanRepaymentPlanDetails planDetails = loanRepaymentPlanDetailsFeign.fetchDetails(planSid).getData();
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.details(planDetails.getBusVinSid()).getData();
BusSalesOrder salesOrder = busSalesOrderFeign.fetchBySid(busSalesOrderVehicle.getSalesOrderSid()).getData();
if (salesOrder != null && busSalesOrderVehicle != null) {
//判断财务系统是否有客户

2
anrui-riskcenter-ui/src/views/secondarysales/secondarysales.vue

@ -155,7 +155,7 @@
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<pagination v-show="carList.length > 0" :limit.sync="carList.size" :page.sync="carList.current" :total="carList.total" class="pagination" @pagination="getCarList"/>
<pagination v-show="listByCar.length > 0" :limit.sync="carList.size" :page.sync="carList.current" :total="carList.total" class="pagination" @pagination="getCarList"/>
</div>
</el-dialog>
</div>

2
anrui-riskcenter-ui/src/views/secondarysublet/secondarysublet.vue

@ -200,7 +200,7 @@
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<pagination v-show="carList.length > 0" :limit.sync="carList.size" :page.sync="carList.current" :total="carList.total" class="pagination" @pagination="getCarList"/>
<pagination v-show="listByCar.length > 0" :limit.sync="carList.size" :page.sync="carList.current" :total="carList.total" class="pagination" @pagination="getCarList"/>
</div>
</el-dialog>
</div>

2
anrui-riskcenter-ui/src/views/surrenderforredemption/surrenderforredemption.vue

@ -192,7 +192,7 @@
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<pagination v-show="carList.length > 0" :limit.sync="carList.size" :page.sync="carList.current" :total="carList.total" class="pagination" @pagination="getCarList"/>
<pagination v-show="listByCar.length > 0" :limit.sync="carList.size" :page.sync="carList.current" :total="carList.total" class="pagination" @pagination="getCarList"/>
</div>
</el-dialog>
</div>

4
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loansecondarysalesapply/LoanSecondarySalesApplyFeign.java

@ -56,6 +56,10 @@ public interface LoanSecondarySalesApplyFeign {
@GetMapping(value = "/getNextNodesForSubmit")
ResultBean<List<LoanSecondarySalesApplyNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap LoanSecondarySalesApplyNodeQuery query);
@ApiOperation(value = "获取下一个环节")
@GetMapping(value = "/getAppNextNodesForSubmit")
ResultBean<List<LoanSecondarySalesApplyNodeVo>> getAppNextNodesForSubmit(@Valid @SpringQueryMap LoanSecondarySalesApplyNodeQuery query);
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject")
public ResultBean taskReject(@Valid @RequestBody LoanSecondarySalesApplyTaskQuery query);

2
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanredemptionapply/LoanRedemptionApplyService.java

@ -899,8 +899,8 @@ public class LoanRedemptionApplyService extends MybatisBaseService<LoanRedemptio
}
vinList.add(outboundVinListDto);
});
dto.setVinList(vinList);
}
dto.setVinList(vinList);
loanOutboundApplyService.saveOutbound(dto);
}

5
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyRest.java

@ -72,6 +72,11 @@ public class LoanSecondarySalesApplyRest implements LoanSecondarySalesApplyFeign
return loanSecondarySalesApplyService.getNextNodesForSubmit(query);
}
@Override
public ResultBean<List<LoanSecondarySalesApplyNodeVo>> getAppNextNodesForSubmit(LoanSecondarySalesApplyNodeQuery query) {
return loanSecondarySalesApplyService.getAppNextNodesForSubmit(query);
}
@Override
public ResultBean taskReject(LoanSecondarySalesApplyTaskQuery query) {
return loanSecondarySalesApplyService.taskReject(query);

153
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansecondarysalesapply/LoanSecondarySalesApplyService.java

@ -307,6 +307,23 @@ public class LoanSecondarySalesApplyService extends MybatisBaseService<LoanSecon
return rb.success().setData(voList);
}
public ResultBean<List<LoanSecondarySalesApplyNodeVo>> getAppNextNodesForSubmit(LoanSecondarySalesApplyNodeQuery query) {
ResultBean<List<LoanSecondarySalesApplyNodeVo>> rb = ResultBean.fireFail();
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(query, bv);
LoanSecondarySalesApply loanSecondarySalesApply = fetchBySid(query.getBusinessSid());
bv.setModelId(loanSecondarySalesApply.getProcDefId());
Map<String, Object> variables = new HashMap<>();
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", query.getBusinessSid());
variables.put("app", appMap);
bv.setFormVariables(variables);
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给TemplateApplyNodeVo
List<LoanSecondarySalesApplyNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), LoanSecondarySalesApplyNodeVo.class)).collect(Collectors.toList());
return rb.success().setData(voList);
}
public ResultBean taskReject(LoanSecondarySalesApplyTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
String businessSid = query.getBusinessSid();
@ -586,69 +603,107 @@ public class LoanSecondarySalesApplyService extends MybatisBaseService<LoanSecon
finUncollectedReceivablesDetailedJR.setOrgSidPath(loanSecondarySalesApply.getOrgSidPath());
finUncollectedReceivablesDetailedJR.setKxState("01");
if ("02".equals(loanSecondarySalesCost.getBankSettleCostAssumeKey())){
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("017");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("预计资方结清费用");
finUncollectedReceivablesDetailedJR.setReveivableMoney(new BigDecimal(loanSecondarySalesCost.getBankSettleCostAssume()));
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(new BigDecimal(loanSecondarySalesCost.getBankSettleCostAssume()));
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
if(loanSecondarySalesCost.getBankSettleCost() != null){
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("017");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("预计资方结清费用");
finUncollectedReceivablesDetailedJR.setReveivableMoney(loanSecondarySalesCost.getBankSettleCost());
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(loanSecondarySalesCost.getBankSettleCost());
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
}
}
if ("02".equals(loanSecondarySalesCost.getVehicleViolationCostAssumeKey())){
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("018");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("车辆违章费用");
finUncollectedReceivablesDetailedJR.setReveivableMoney(new BigDecimal(loanSecondarySalesCost.getVehicleViolationCostAssume()));
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(new BigDecimal(loanSecondarySalesCost.getVehicleViolationCostAssume()));
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
if(loanSecondarySalesCost.getVehicleViolationCost() != null){
finUncollectedReceivablesDetailedJR.setSid(UUID.randomUUID().toString());
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("018");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("车辆违章费用");
finUncollectedReceivablesDetailedJR.setReveivableMoney(loanSecondarySalesCost.getVehicleViolationCost());
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(loanSecondarySalesCost.getVehicleViolationCost());
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
}
}
if ("02".equals(loanSecondarySalesCost.getInspectYearCostAssumeKey())){
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("019");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("年检费");
finUncollectedReceivablesDetailedJR.setReveivableMoney(new BigDecimal(loanSecondarySalesCost.getInspectYearCostAssume()));
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(new BigDecimal(loanSecondarySalesCost.getInspectYearCostAssume()));
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
if(loanSecondarySalesCost.getInspectYearCost() != null){
finUncollectedReceivablesDetailedJR.setSid(UUID.randomUUID().toString());
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("019");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("年检费");
finUncollectedReceivablesDetailedJR.setReveivableMoney(loanSecondarySalesCost.getInspectYearCost());
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(loanSecondarySalesCost.getInspectYearCost());
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
}
}
if ("02".equals(loanSecondarySalesCost.getInsureCostAssumeKey())){
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("020");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("保险费");
finUncollectedReceivablesDetailedJR.setReveivableMoney(new BigDecimal(loanSecondarySalesCost.getInsureCostAssume()));
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(new BigDecimal(loanSecondarySalesCost.getInsureCostAssume()));
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
if(loanSecondarySalesCost.getInsureCost() != null){
finUncollectedReceivablesDetailedJR.setSid(UUID.randomUUID().toString());
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("020");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("保险费");
finUncollectedReceivablesDetailedJR.setReveivableMoney(loanSecondarySalesCost.getInsureCost());
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(loanSecondarySalesCost.getInsureCost());
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
}
}
if ("02".equals(loanSecondarySalesCost.getOwnershipCostAssumeKey())){
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("021");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("过户费");
finUncollectedReceivablesDetailedJR.setReveivableMoney(new BigDecimal(loanSecondarySalesCost.getOwnershipCostAssume()));
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(new BigDecimal(loanSecondarySalesCost.getOwnershipCostAssume()));
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
if(loanSecondarySalesCost.getOwnershipCost() != null){
finUncollectedReceivablesDetailedJR.setSid(UUID.randomUUID().toString());
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("021");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("过户费");
finUncollectedReceivablesDetailedJR.setReveivableMoney(loanSecondarySalesCost.getOwnershipCost());
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(loanSecondarySalesCost.getOwnershipCost());
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
}
}
if ("02".equals(loanSecondarySalesCost.getStopCostAssumeKey())){
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("022");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("停车费");
finUncollectedReceivablesDetailedJR.setReveivableMoney(new BigDecimal(loanSecondarySalesCost.getStopCostAssume()));
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(new BigDecimal(loanSecondarySalesCost.getStopCostAssume()));
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
if(loanSecondarySalesCost.getStopCost() != null){
finUncollectedReceivablesDetailedJR.setSid(UUID.randomUUID().toString());
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("022");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("停车费");
finUncollectedReceivablesDetailedJR.setReveivableMoney(loanSecondarySalesCost.getStopCost());
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(loanSecondarySalesCost.getStopCost());
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
}
}
if ("02".equals(loanSecondarySalesCost.getOtherCostAssumeKey())){
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("023 ");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("其他费用");
finUncollectedReceivablesDetailedJR.setReveivableMoney(new BigDecimal(loanSecondarySalesCost.getOtherCostAssume()));
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(new BigDecimal(loanSecondarySalesCost.getOtherCostAssume()));
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
if(loanSecondarySalesCost.getOtherCost() != null){
finUncollectedReceivablesDetailedJR.setSid(UUID.randomUUID().toString());
finUncollectedReceivablesDetailedJR.setPayCostTitleKey("023 ");
finUncollectedReceivablesDetailedJR.setPayCostTitleValue("其他费用");
finUncollectedReceivablesDetailedJR.setReveivableMoney(loanSecondarySalesCost.getOtherCost());
finUncollectedReceivablesDetailedJR.setCurrentReceivableMoney(loanSecondarySalesCost.getOtherCost());
finUncollectedReceivablesDetailedJRFeign.save(finUncollectedReceivablesDetailedJR);
}
}
} else {
//极光推送
loanSecondarySalesApply = fetchBySid(businessSid);
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowVo.setProcDefId(loanSecondarySalesApply.getProcDefId());
messageFlowVo.setProcInsId(loanSecondarySalesApply.getProcInstId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("交回车辆二次销售申请");
messageFlowableQuery.setMsgContent(loanSecondarySalesApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("交回车辆二次销售申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
LoanSecondarySalesApply finalLoanSecondarySalesApply = loanSecondarySalesApply;
Future future1 = pool.submit(() -> {
//极光推送
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowVo.setProcDefId(finalLoanSecondarySalesApply.getProcDefId());
messageFlowVo.setProcInsId(finalLoanSecondarySalesApply.getProcInstId());
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("交回车辆二次销售申请");
messageFlowableQuery.setMsgContent(finalLoanSecondarySalesApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("交回车辆二次销售申请");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
}
return rb.success().setData(resultBean.getData());
} else {

20
anrui-scm/anrui-scm-ui/src/api/statement/rebateType.js

@ -0,0 +1,20 @@
import request from '@/utils/request'
export default {
// 查询分页列表
listPage: function(data) {
return request({
url: '/scm/v1/scmvehrebate/typeStatistics',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
})
},
getTypeDetail: function(data) {
return request({
url: '/scm/v1/scmvehrebate/getTypeDetail',
method: 'post',
params: data
})
}
}

9
anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js

@ -1100,6 +1100,15 @@ const codemenu = [{
title: '单车返利统计',
noCache: true
}
},
{
path: '/statement/rebateType',
component: () => import('@/views/statement/rebateType/rebateTypeByDetail.vue'),
name: 'RebateTypeByDetail',
meta: {
title: '厂家返利类型',
noCache: true
}
}
// {
// path: '/statement/rebateSummary',

117
anrui-scm/anrui-scm-ui/src/views/statement/rebateSummary/rebateTypeDetails.vue

@ -0,0 +1,117 @@
<template>
<div class="app-container">
<!--列表页面-->
<div v-show="viewState == 1">
<button-bar view-title="厂家返利汇总统计报表" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<div class="main-content">
<div class="listtop">
<div class="tit">厂家返利汇总统计报表</div>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%;">
<el-table-column prop="customerName" label="返利类型" align="center" width="120" />
<el-table-column prop="vehMark" label="预提" align="center" min-width="180" />
<el-table-column prop="vinNo" label="上传" align="center" width="150" />
<el-table-column prop="count" label="调整" align="center" width="120" />
<el-table-column label="未上传" align="center">
<el-table-column prop="count" label="合计" align="center" width="120" />
<el-table-column label="其中费用" align="center">
<el-table-column prop="count" label="支出" align="center" width="120" />
<el-table-column prop="count" label="待支付" align="center" width="120" />
<el-table-column prop="count" label="抵顶" align="center" width="120" />
</el-table-column>
<el-table-column prop="count" label="剩余" align="center" width="120" />
</el-table-column>
</el-table>
</div>
</div>
</div>
</div>
</template>
<script>
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/statement/salesstatement'
export default {
name: 'BikeRebateStatistics',
components: {
ButtonBar
},
data() {
return {
btndisabled: false,
btnList: [
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
list: [],
FormLoading: false,
listLoading: false,
//
listQuery: {
current: 1,
size: 10,
total: 0,
params: {
goodsSpuName: '',
useOrgSid: '',
startDate: '',
endDate: '',
userSid: '',
orgPath: '',
menuUrl: ''
}
}
}
},
created() {
//
this.getList()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doClose':
this.doClose()
break
default:
break
}
},
//
getList() {
this.listLoading = true
req.goodsTrendReport(this.listQuery).then(response => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
}
}
}
</script>
<style scoped>
</style>

103
anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateNameByDetail.vue

@ -0,0 +1,103 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div style="margin: 0 auto;">{{title}}</div>
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="listconadd">
<el-form class="formaddcopy02">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%">
<el-table-column fixed label="序号" type="index" width="80" :index="index + 1" align="center" />
<el-table-column fixed prop="purchaseSystemName" label="采购系统" align="center" width="110" />
<el-table-column fixed prop="vinNo" label="车架号" align="center" width="90" />
<el-table-column prop="vehModelName" label="车型" align="center" width="200" />
<el-table-column prop="palceGenDate" label="返利项目" align="center" width="85" />
<el-table-column prop="palceGenDate" label="所属年月" align="center" width="85" />
<el-table-column prop="rebateTypeValue" label="返利类型" align="center" width="120" />
<el-table-column prop="rebateName" label="返利名称" align="center" width="130" />
<el-table-column label="返利金额" align="center">
<el-table-column prop="estimateRebate" label="预提" align="center" width="100" />
<el-table-column prop="uploadMoney" label="上传" align="center" width="100" />
<el-table-column prop="secondaryUploadMoney" label="二次上传" align="center" width="100" />
<el-table-column prop="stayDetermineMoney" label="待确定" align="center" width="100" />
<el-table-column prop="adjustmentMoney" label="调整" align="center" width="100" />
<el-table-column prop="notUploadMoney" label="未上传" align="center" width="100" />
</el-table-column>
<el-table-column label="其中费用" align="center">
<el-table-column prop="expectCost" label="预提" align="center" width="100" />
<el-table-column prop="money" label="上传" align="center" width="100" />
</el-table-column>
<el-table-column label="日期" align="center">
<el-table-column prop="createTime" label="创建" align="center" width="95" />
<el-table-column prop="withholdingDate" label="预提" align="center" width="95" />
<el-table-column prop="uploadDate" label="上传" align="center" width="95" />
<el-table-column prop="secondaryUploadDate" label="二次上传" align="center" width="95" />
</el-table-column>
<el-table-column label="状态" align="center">
<el-table-column label="流程" align="center" width="70">
<template slot-scope="scope">
<span>{{ scope.row.state == '0' ? '未计提' : scope.row.state == '1' ? '计提中' : scope.row.state == '2' ? '待核对' : scope.row.state == '3' ? '核对中' : scope.row.state == '4' ? '已核对' : '' }}</span>
</template>
</el-table-column>
<el-table-column label="一次核对状态" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.onceCheckState == '1' ? '是' : scope.row.onceCheckState == '0' ? '否' : scope.row.onceCheckState == '2' ? '一次核对中' : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="secondCheckState" label="二次核对" align="center" width="120" />
</el-table-column>
<el-table-column prop="brandName" label="品牌" align="center" width="140" />
<el-table-column prop="useOrgName" label="分公司" align="center" width="150" />
<el-table-column prop="division" label="事业部" align="center" width="150" />
<el-table-column prop="manufactorSettlementPrice" label="车辆入库价" align="center" width="110" />
<el-table-column label="其中" align="center">
<el-table-column prop="freight" label="运费" align="center" width="100" />
<el-table-column prop="topAmount" label="上装" align="center" width="100" />
</el-table-column>
<el-table-column label="返利计算" align="center">
<el-table-column prop="calculationModeValue" label="方式" align="center" width="80" />
<el-table-column prop="calculationStandard" label="标准" align="center" width="100" />
</el-table-column>
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
</div>
</div>
</template>
<script>
import req from '@/api/statement/rebateType'
export default {
name: 'RebateNameByDetail',
data() {
return {
index: 0,
tableKey: 0,
listLoading: false,
list: [],
title: ''
}
},
methods: {
showInfo(row) {
this.title = '厂家返利名称明细'
req.getTypeDetail({ sid: row.sid, type: row.project }).then((resp) => {
if (resp.success) {
this.list = resp.data
}
})
},
handleReturn() {
this.list = []
this.$emit('doback')
}
}
}
</script>
<style scoped>
</style>

246
anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateTypeByDetail.vue

@ -0,0 +1,246 @@
<template>
<div class="app-container">
<!--列表页面-->
<div v-show="viewState == 1">
<button-bar view-title="厂家返利类型明细查询" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<!--Start查询列表部分-->
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="事业部">
<el-input v-model="listQuery.params.division" placeholder="" clearable/>
</el-form-item>
<el-form-item label="分公司">
<el-input v-model="listQuery.params.useOrgName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="采购系统">
<el-input v-model="listQuery.params.purchaseSystemName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="品牌">
<el-input v-model="listQuery.params.brandName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="返利项目">
<el-input v-model="listQuery.params.project" placeholder="" clearable/>
</el-form-item>
<el-form-item label="返利类型">
<el-input v-model="listQuery.params.rebateTypeValue" placeholder="" clearable/>
</el-form-item>
<el-form-item label="所属年月">
<el-date-picker v-model="listQuery.params.palceGenDateStart" type="month" clearable format="yyyy-MM" value-format="yyyy-MM" placeholder="选择日期"/>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.palceGenDateEnd" type="month" clearable format="yyyy-MM" value-format="yyyy-MM" placeholder="选择日期"/>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" size="small" @click="handleFilter">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" size="small" @click="handleReset">重置</el-button>
</div>
</div>
</div>
<!--End查询列表部分-->
<div class="listtop">
<div class="tit">厂家返利类型明细列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<!--Start 主页面主要部分 -->
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%;" @selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="50"/>
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column prop="purchaseSystemName" label="采购系统" align="center" width="120" />
<el-table-column prop="project" label="返利项目" align="center" min-width="180" />
<el-table-column prop="palceGenDate" label="所属年月" align="center" min-width="180" />
<el-table-column label="返利类型" align="center" width="150">
<template slot-scope="scope">
<span class="bluezi" @click="toInfo(scope.row)">{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column prop="estimateRebate" label="预提" align="center" width="120" />
<el-table-column prop="uploadMoney" label="上传" align="center" width="120" />
<el-table-column prop="adjustmentMoney" label="调整" align="center" width="120" />
<el-table-column label="未上传" align="center">
<el-table-column prop="notUploadMoney" label="合计" align="center" width="120" />
<el-table-column label="其中费用" align="center">
<el-table-column prop="expectItureCost" label="支出" align="center" width="120" />
<el-table-column prop="expectTreatCost" label="待支付" align="center" width="120" />
<el-table-column prop="expectSuppCost" label="抵顶" align="center" width="120" />
</el-table-column>
<el-table-column prop="balance" label="剩余" align="center" width="120" />
</el-table-column>
<el-table-column prop="brandName" label="品牌" align="center" width="120" />
<el-table-column prop="useOrgName" label="分公司" align="center" width="120" />
<el-table-column prop="division" label="事业部" align="center" width="120" />
</el-table>
</div>
<!--End 主页面主要部分-->
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<!--End查询列表部分-->
</div>
</div>
<rebateNameByDetail v-show="viewState == 2" ref="divInfo" @doback="resetState" />
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/statement/rebateType'
import rebateNameByDetail from './rebateNameByDetail'
export default {
name: 'RebateTypeByDetail',
components: {
Pagination,
pageye,
ButtonBar,
rebateNameByDetail
},
data() {
return {
btndisabled: false,
btnList: [
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
list: [],
sids: [], // SIDs
FormLoading: false,
listLoading: false,
//
listQuery: {
current: 1,
size: 5,
total: 0,
params: {
division: '',
useOrgName: '',
purchaseSystemName: '',
brandName: '',
project: '',
rebateTypeValue: '',
palceGenDateStart: '',
palceGenDateEnd: '',
userSid: '',
orgPath: '',
menuUrl: ''
}
}
}
},
created() {
//
this.getList()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doClose':
this.doClose()
break
default:
break
}
},
// sid
handleSelectionChange(row) {
const aa = []
row.forEach(element => {
aa.push(element.sid)
})
this.sids = aa
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.listPage(this.listQuery).then(response => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery = {
current: 1,
size: 5,
total: 0,
params: {
division: '',
useOrgName: '',
purchaseSystemName: '',
brandName: '',
project: '',
rebateTypeValue: '',
palceGenDateStart: '',
palceGenDateEnd: '',
userSid: '',
orgPath: '',
menuUrl: ''
}
}
this.getList()
},
toInfo(row) {
this.viewState = 2
this.$refs['divInfo'].showInfo(row)
},
resetState() {
this.viewState = 1
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
}
}
}
</script>
<style scoped>
</style>

22
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java

@ -279,24 +279,12 @@ public class AppBusArrearsCarryVehicleApplyService {
GetNodeQuery getNodeQuery = new GetNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<GetNodeVo>> getPreviousNodesForReject = busArrearsCarryVehicleApplyFeign.getPreviousNodesForReject(getNodeQuery);
if (getPreviousNodesForReject.getSuccess()) {
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null));
data = getPreviousNodesForReject.getData().get(0).getName();
} else {
return rb.setMsg(getPreviousNodesForReject.getMsg());
}
} else if (next == 1) {
ResultBean<List<GetNodeVo>> getNextNodesForSubmit = busArrearsCarryVehicleApplyFeign.getNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg(getNextNodesForSubmit.getMsg());
}
ResultBean<List<GetNodeVo>> getNextNodesForSubmit = busArrearsCarryVehicleApplyFeign.getNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg("参数错误:next");
return rb.setMsg(getNextNodesForSubmit.getMsg());
}
arrearsVo.setTitle(data);
ResultBean<AdvanceArrearsInfoVo> details = details(query.getBusinessSid());

27
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/secondarysales/SecondarySalesService.java

@ -212,29 +212,16 @@ public class SecondarySalesService {
public ResultBean<SecondSalesInitVo> getFlowOperateTitleBy(SecondarySalesQuery query) {
ResultBean<SecondSalesInitVo> rb = ResultBean.fireFail();
SecondSalesInitVo secondSalesInitVo = new SecondSalesInitVo();
int next = query.getNext();
LoanSecondarySalesApplyNodeQuery getNodeQuery = new LoanSecondarySalesApplyNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<LoanSecondarySalesApplyNodeVo>> getPreviousNodesForReject = loanSecondarySalesApplyFeign.getPreviousNodesForReject(getNodeQuery);
if (getPreviousNodesForReject.getSuccess()) {
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null));
data = getPreviousNodesForReject.getData().get(0).getName();
} else {
return rb.setMsg(getPreviousNodesForReject.getMsg());
}
} else if (next == 1) {
ResultBean<List<LoanSecondarySalesApplyNodeVo>> getNextNodesForSubmit = loanSecondarySalesApplyFeign.getNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg(getNextNodesForSubmit.getMsg());
}
String data = "风控中心风控部经理审批/结束";
/*ResultBean<List<LoanSecondarySalesApplyNodeVo>> getNextNodesForSubmit = loanSecondarySalesApplyFeign.getAppNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg("参数错误:next");
}
return rb.setMsg(getNextNodesForSubmit.getMsg());
}*/
secondSalesInitVo.setTitle(data);
List<ItemEditTextInfoCommon> itemEditTextInfos = new ArrayList<>();
ItemEditTextInfoCommon itemEditTextInfo = new ItemEditTextInfoCommon();

Loading…
Cancel
Save