Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 2 years ago
parent
commit
976672e908
  1. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/VehicleStateTempOrLast.java
  2. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/BusDeliveredVo.java
  3. 3
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderDetailsVo.java
  4. 24
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/OrderSolutionVo.java
  5. 3
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/AppOrderDetailsVo.java
  6. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdiscount/BusSalesOrderDiscountFeign.java
  7. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdiscount/BusSalesOrderDiscountFeignFallback.java
  8. 27
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdiscount/OrderDiscountVo.java
  9. 603
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  10. 3
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.java
  11. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.xml
  12. 6
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountRest.java
  13. 10
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountService.java
  14. 3
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempMapper.java
  15. 11
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempMapper.xml
  16. 2
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java
  17. 120
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoice.java
  18. 54
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceDetailsVo.java
  19. 95
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceDto.java
  20. 39
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceExportVo.java
  21. 72
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java
  22. 78
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java
  23. 81
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceQuery.java
  24. 70
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceVo.java
  25. 47
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java
  26. 141
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml
  27. 228
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java
  28. 186
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java
  29. 2
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/retrieval/VinListVo.java
  30. 3
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/order/OrderDetailsVo.java
  31. 24
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/order/OrderSolutionListVo.java
  32. 6
      doc/databases/bus-center_tables.sql
  33. 38
      doc/databases/fin_tables.sql

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/VehicleStateTempOrLast.java

@ -15,7 +15,7 @@ public class VehicleStateTempOrLast {
ARREARS_INVOICING("0004", "欠款开票"),
PAY_MODELS("0002", "交清车款"),
PAY_MODELS("0002", "正常交款"),
BAG_CARD_BUSINESS("0003", "包牌业务"),

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/BusDeliveredVo.java

@ -52,8 +52,11 @@ public class BusDeliveredVo implements Vo {
private static final long serialVersionUID = -9212919952192716940L;
private String sid;
@ApiModelProperty("类型:1已交款、2未交款")
// @ApiModelProperty("类型:1已交款、2未交款")
@ApiModelProperty("业务状态")
private String type;
@ApiModelProperty("销售类型")
private String paymentMethod;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("客户名称")

3
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderDetailsVo.java

@ -169,4 +169,7 @@ public class BusSalesOrderDetailsVo implements Vo {
private String purchaseSystemSid;
private String purchaseSystemName;
@ApiModelProperty("资金来源")
private String financePlanValue;
private String financePlan;
}

24
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/OrderSolutionVo.java

@ -0,0 +1,24 @@
package com.yxt.anrui.buscenter.api.bussalesorder;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2023/4/6 9:22
* @Description
*/
@Data
public class OrderSolutionVo {
@ApiModelProperty(value = "内容")
private String value;
@ApiModelProperty(value = "单元格大小")
private Integer spanSize;
@ApiModelProperty("类型:0 最普通的 1 标题的 2是 加上划线的")
private Integer type;
@ApiModelProperty("是否加粗,true是,false否")
private boolean bold;
}

3
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/AppOrderDetailsVo.java

@ -1,5 +1,6 @@
package com.yxt.anrui.buscenter.api.bussalesorder.app.order;
import com.yxt.anrui.buscenter.api.bussalesorder.OrderSolutionVo;
import com.yxt.anrui.buscenter.api.bussalesordersubmit.SubmitVo;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
@ -134,5 +135,7 @@ public class AppOrderDetailsVo implements Vo {
@ApiModelProperty("环节标识")
private String taskDefKey;
private List<OrderSolutionVo> financeForms = new ArrayList<>();
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdiscount/BusSalesOrderDiscountFeign.java

@ -70,4 +70,9 @@ public interface BusSalesOrderDiscountFeign {
@PostMapping("/delete")
@ResponseBody
ResultBean delete(@RequestParam(value = "saleOrderSid") String orderSid, @RequestParam(value = "sid") String sid);
@ApiOperation("出库选择套餐列表")
@GetMapping("/discountList")
@ResponseBody
ResultBean<List<OrderDiscountVo>> discountList(@RequestParam("contractNo") String contractNo,@RequestParam("vinSid")String vinSid);
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdiscount/BusSalesOrderDiscountFeignFallback.java

@ -64,4 +64,9 @@ public class BusSalesOrderDiscountFeignFallback implements BusSalesOrderDiscount
public ResultBean delete(String orderSid, String sid) {
return null;
}
@Override
public ResultBean<List<OrderDiscountVo>> discountList(String contractNo,String vinSid) {
return null;
}
}

27
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderdiscount/OrderDiscountVo.java

@ -0,0 +1,27 @@
package com.yxt.anrui.buscenter.api.bussalesorderdiscount;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2023/4/6 16:50
* @Description
*/
@Data
public class OrderDiscountVo {
@ApiModelProperty("优惠名称")
private String name;
@ApiModelProperty("价值")
private String price;
@ApiModelProperty("优惠项目说明")
private String discountExplain;
@ApiModelProperty("数量")
private Integer num;
@ApiModelProperty("剩余数量")
private Integer surplusNum;
@ApiModelProperty("本次赠送数量")
private Integer giveNum;
}

603
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java

@ -630,17 +630,17 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
vo.setBusSalesOrderotherMessageDetailsVo(busSalesOrderotherMessageDetailsVo);
//=========================金融方案
ResultBean<SolutionsDetailsVo> solutionsDetailsVoResultBean = loanSolutionsFeign.selectDetailss(sid);
if(solutionsDetailsVoResultBean.getData() != null){
if (solutionsDetailsVoResultBean.getData() != null) {
SolutionsDetailsssVo solutionsDetailsssVo = new SolutionsDetailsssVo();
BeanUtil.copyProperties(solutionsDetailsVoResultBean.getData(),solutionsDetailsssVo);
BeanUtil.copyProperties(solutionsDetailsVoResultBean.getData(), solutionsDetailsssVo);
vo.setSolutionsDetailsssVo(solutionsDetailsssVo);
}
if("2".equals(entity.getPayTypeKey())){
if ("2".equals(entity.getPayTypeKey())) {
vo.setFinPlanState(true);
}else{
if("1".equals(entity.getFinancePlan())){
} else {
if ("1".equals(entity.getFinancePlan())) {
vo.setFinPlanState(false);
}else{
} else {
vo.setFinPlanState(true);
}
}
@ -3352,19 +3352,544 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
vo.setDepositInfo(depositInfo);
}
/****************************金融方案***************************************/
if("2".equals(busSalesOrder.getPayTypeKey())){
if ("2".equals(busSalesOrder.getPayTypeKey())) {
vo.setFinState(true);
}else{
if("1".equals(busSalesOrder.getFinancePlan())){
} else {
if ("1".equals(busSalesOrder.getFinancePlan())) {
vo.setFinState(false);
}else{
} else {
vo.setFinState(true);
}
}
vo = selectSolution(vo, sid);
// vo = selectSolution(vo, sid);
vo = selectSolutions(vo, sid);
return rb.success().setData(vo);
}
private AppOrderDetailsVo selectSolutions(AppOrderDetailsVo appOrderDetailsVo, String sid) {
ResultBean<SolutionsDetailsVo> solutionsDetailsVoResultBean = loanSolutionsFeign.selectDetailss(sid);
List<OrderSolutionVo> list = new ArrayList<>();
if (solutionsDetailsVoResultBean.getData() != null) {
SolutionsDetailsVo solutionsDetailsVo = solutionsDetailsVoResultBean.getData();
StringBuilder typeValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getTypeKey())) {
typeValue = typeValue.append("销售类型:" + solutionsDetailsVo.getType());
} else {
typeValue = typeValue.append("销售类型:" + "-");
}
list.add(getValueSpanSize(typeValue.toString(), 1, 0, false));
if (StringUtils.isNotBlank(solutionsDetailsVo.getTypeKey()) && "02".equals(solutionsDetailsVo.getTypeKey())) {
list.add(getValueSpanSize("融资项目", 2, 1, true));
//厂家贴息
StringBuilder factoryDiscountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getFactoryDiscount())) {
factoryDiscountValue = factoryDiscountValue.append("厂家贴息:").append(solutionsDetailsVo.getFactoryDiscount());
} else {
factoryDiscountValue = factoryDiscountValue.append("厂家贴息:").append("-");
}
list.add(getValueSpanSize(factoryDiscountValue.toString(), 1, 0, false));
//厂家贴息用途
StringBuilder factoryDiscountUseValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getFactoryDiscountUse())) {
factoryDiscountUseValue = factoryDiscountUseValue.append("厂家贴息用途:").append(solutionsDetailsVo.getFactoryDiscountUse());
} else {
factoryDiscountUseValue = factoryDiscountUseValue.append("厂家贴息用途:").append("-");
}
list.add(getValueSpanSize(factoryDiscountUseValue.toString(), 1, 0, false));
list.add(getValueSpanSize("应收明细", 2, 1, true));
//服务费
StringBuilder serviceAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getServiceAmount())) {
serviceAmountValue = serviceAmountValue.append("服务费:").append(solutionsDetailsVo.getServiceAmount());
} else {
serviceAmountValue = serviceAmountValue.append("服务费:").append("-");
}
list.add(getValueSpanSize(serviceAmountValue.toString(), 2, 0, false));
} else {
//是否打包
StringBuilder isPackValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getIsPack())) {
if ("1".equals(solutionsDetailsVo.getIsPack())) {
isPackValue = isPackValue.append("是否打包:").append("是");
} else {
isPackValue = isPackValue.append("是否打包:").append("否");
}
} else {
isPackValue = isPackValue.append("是否打包:").append("-");
}
list.add(getValueSpanSize(isPackValue.toString(), 1, 0, false));
//资方及产品政策
StringBuilder polivyNameValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getPolicyName())) {
polivyNameValue = polivyNameValue.append("资方及产品政策:").append(solutionsDetailsVo.getPolicyName());
} else {
polivyNameValue = polivyNameValue.append("资方及产品政策:").append("-");
}
list.add(getValueSpanSize(polivyNameValue.toString(), 2, 0, false));
//标题
list.add(getValueSpanSize("融资项目", 2, 1, true));
//融资项目总额
StringBuilder loanTotalValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getLoanTotal())) {
loanTotalValue = loanTotalValue.append("融资项目总额:").append(solutionsDetailsVo.getLoanTotal());
} else {
loanTotalValue = loanTotalValue.append("融资项目总额:").append("-");
}
list.add(getValueSpanSize(loanTotalValue.toString(), 2, 0, false));
//主车发票价
StringBuilder mainVehicleAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getMainVehicleAmount())) {
mainVehicleAmountValue = mainVehicleAmountValue.append("\t").append("主车发票价:").append(solutionsDetailsVo.getMainVehicleAmount());
} else {
mainVehicleAmountValue = mainVehicleAmountValue.append("\t").append("主车发票价:").append("-");
}
list.add(getValueSpanSize(mainVehicleAmountValue.toString(), 1, 0, false));
//融资票据
StringBuilder accessoriesAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getAccessoriesAmount())) {
accessoriesAmountValue = accessoriesAmountValue.append("\t").append("融资票据:").append(solutionsDetailsVo.getAccessoriesAmount());
} else {
accessoriesAmountValue = accessoriesAmountValue.append("\t").append("融资票据:").append("-");
}
list.add(getValueSpanSize(accessoriesAmountValue.toString(), 1, 0, false));
//挂车
StringBuilder trailerAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getTrailerAmount())) {
trailerAmountValue = trailerAmountValue.append("\t").append("挂车:").append(solutionsDetailsVo.getTrailerAmount());
} else {
trailerAmountValue = trailerAmountValue.append("\t").append("挂车:").append("-");
}
list.add(getValueSpanSize(trailerAmountValue.toString(), 1, 0, false));
//保险
StringBuilder premiumValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getPremium())) {
premiumValue = premiumValue.append("\t").append("保险:").append(solutionsDetailsVo.getPremium());
} else {
premiumValue = premiumValue.append("\t").append("保险:").append("-");
}
list.add(getValueSpanSize(premiumValue.toString(), 1, 0, false));
//购置税
StringBuilder purchaseTaxValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getPurchaseTax())) {
purchaseTaxValue = purchaseTaxValue.append("\t").append("购置税:").append(solutionsDetailsVo.getPurchaseTax());
} else {
purchaseTaxValue = purchaseTaxValue.append("\t").append("购置税:").append("-");
}
list.add(getValueSpanSize(purchaseTaxValue.toString(), 1, 0, false));
//车损上浮
StringBuilder vehDamageFloatValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getVehDamageFloat())) {
vehDamageFloatValue = vehDamageFloatValue.append("\t").append("车损上浮:").append(solutionsDetailsVo.getVehDamageFloat());
} else {
vehDamageFloatValue = vehDamageFloatValue.append("\t").append("车损上浮:").append("-");
}
list.add(getValueSpanSize(vehDamageFloatValue.toString(), 1, 0, false));
//首付比例
StringBuilder downPayRatioValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getDownPayRatio())) {
downPayRatioValue = downPayRatioValue.append("首付比例:").append(solutionsDetailsVo.getDownPayRatio());
} else {
downPayRatioValue = downPayRatioValue.append("首付比例:").append("-");
}
list.add(getValueSpanSize(downPayRatioValue.toString(), 1, 0, false));
//首付金额
StringBuilder downPayAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getDownPayAmount())) {
downPayAmountValue = downPayAmountValue.append("首付金额:").append(solutionsDetailsVo.getDownPayAmount());
} else {
downPayAmountValue = downPayAmountValue.append("首付金额:").append("-");
}
list.add(getValueSpanSize(downPayAmountValue.toString(), 1, 0, false));
//产品贷款金额
StringBuilder loanAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getLoanAmount())) {
loanAmountValue = loanAmountValue.append("产品贷款金额:").append(solutionsDetailsVo.getLoanAmount());
} else {
loanAmountValue = loanAmountValue.append("产品贷款金额:").append("-");
}
list.add(getValueSpanSize(loanAmountValue.toString(), 1, 0, false));
//产品期数
StringBuilder loanPeriodValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getLoanPeriod())) {
loanPeriodValue = loanPeriodValue.append("产品期数:").append(solutionsDetailsVo.getLoanPeriod());
} else {
loanPeriodValue = loanPeriodValue.append("产品期数:").append("-");
}
list.add(getValueSpanSize(loanPeriodValue.toString(), 1, 0, false));
//贷款保证金比例
StringBuilder bondRatioValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getBondRatio())) {
bondRatioValue = bondRatioValue.append("贷款保证金比例:").append(solutionsDetailsVo.getBondRatio());
} else {
bondRatioValue = bondRatioValue.append("贷款保证金比例:").append("-");
}
list.add(getValueSpanSize(bondRatioValue.toString(), 1, 0, false));
//贷款保证金
StringBuilder bondAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getBondAmount())) {
bondAmountValue = bondAmountValue.append("贷款保证金:").append(solutionsDetailsVo.getBondAmount());
} else {
bondAmountValue = bondAmountValue.append("贷款保证金:").append("-");
}
list.add(getValueSpanSize(bondAmountValue.toString(), 1, 0, false));
//厂家贴息
StringBuilder factoryDiscountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getFactoryDiscount())) {
factoryDiscountValue = factoryDiscountValue.append("厂家贴息:").append(solutionsDetailsVo.getFactoryDiscount());
} else {
factoryDiscountValue = factoryDiscountValue.append("厂家贴息:").append("-");
}
list.add(getValueSpanSize(factoryDiscountValue.toString(), 1, 0, false));
//厂家贴息用途
StringBuilder factoryDiscountUseValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getFactoryDiscountUse())) {
factoryDiscountUseValue = factoryDiscountUseValue.append("厂家贴息用途:").append(solutionsDetailsVo.getFactoryDiscountUse());
} else {
factoryDiscountUseValue = factoryDiscountUseValue.append("厂家贴息用途:").append("-");
}
list.add(getValueSpanSize(factoryDiscountUseValue.toString(), 1, 0, false));
//年利率
StringBuilder policyYearRatioValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getPolicyYearRatio())) {
policyYearRatioValue = policyYearRatioValue.append("年利率:").append(solutionsDetailsVo.getPolicyYearRatio());
} else {
policyYearRatioValue = policyYearRatioValue.append("年利率:").append("-");
}
list.add(getValueSpanSize(policyYearRatioValue.toString(), 1, 0, false));
//利息总额
StringBuilder loanInterestValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getLoanInterest())) {
loanInterestValue = loanInterestValue.append("利息总额:").append(solutionsDetailsVo.getLoanInterest());
} else {
loanInterestValue = loanInterestValue.append("利息总额:").append("-");
}
list.add(getValueSpanSize(loanInterestValue.toString(), 1, 0, false));
//月还金额
StringBuilder loanPayMoneyValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getLoanPayMoney())) {
loanPayMoneyValue = loanPayMoneyValue.append("月还金额:").append(solutionsDetailsVo.getLoanPayMoney());
} else {
loanPayMoneyValue = loanPayMoneyValue.append("月还金额:").append("-");
}
list.add(getValueSpanSize(loanPayMoneyValue.toString(), 2, 0, false));
if (solutionsDetailsVo.isOtherPolicyState()) {
list.add(getValueSpanSize("其它融", 2, 1, true));
//其它融名称
StringBuilder otherPolicyNameValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherPolicyName())) {
otherPolicyNameValue = otherPolicyNameValue.append("其它融名称:").append(solutionsDetailsVo.getOtherPolicyName());
} else {
otherPolicyNameValue = otherPolicyNameValue.append("其它融名称:").append("-");
}
list.add(getValueSpanSize(otherPolicyNameValue.toString(), 2, 0, false));
//贷款金额
StringBuilder otherPolicyAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherPolicyAmount())) {
otherPolicyAmountValue = otherPolicyAmountValue.append("贷款金额:").append(solutionsDetailsVo.getOtherPolicyAmount());
} else {
otherPolicyAmountValue = otherPolicyAmountValue.append("贷款金额:").append("-");
}
list.add(getValueSpanSize(otherPolicyAmountValue.toString(), 1, 0, false));
//期数
StringBuilder otherPolicyPeriodValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherPolicyPeriod())) {
otherPolicyPeriodValue = otherPolicyPeriodValue.append("期数:").append(solutionsDetailsVo.getOtherPolicyPeriod());
} else {
otherPolicyPeriodValue = otherPolicyPeriodValue.append("期数:").append("-");
}
list.add(getValueSpanSize(otherPolicyPeriodValue.toString(), 1, 0, false));
//年利率
StringBuilder otherPolicyYearRatioValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherPolicyYearRatio())) {
otherPolicyYearRatioValue = otherPolicyYearRatioValue.append("年利率:").append(solutionsDetailsVo.getOtherPolicyYearRatio());
} else {
otherPolicyYearRatioValue = otherPolicyYearRatioValue.append("年利率:").append("-");
}
list.add(getValueSpanSize(otherPolicyYearRatioValue.toString(), 1, 0, false));
//利息总额
StringBuilder otherPolicyInterestValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherPolicyInterest())) {
otherPolicyInterestValue = otherPolicyInterestValue.append("利息总额:").append(solutionsDetailsVo.getOtherPolicyInterest());
} else {
otherPolicyInterestValue = otherPolicyInterestValue.append("利息总额:").append("-");
}
list.add(getValueSpanSize(otherPolicyInterestValue.toString(), 1, 0, false));
//月还金额
StringBuilder otherPolicyMonthlyRepayValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherPolicyMonthlyRepay())) {
otherPolicyMonthlyRepayValue = otherPolicyMonthlyRepayValue.append("月还金额:").append(solutionsDetailsVo.getOtherPolicyMonthlyRepay());
} else {
otherPolicyMonthlyRepayValue = otherPolicyMonthlyRepayValue.append("月还金额:").append("-");
}
list.add(getValueSpanSize(otherPolicyPeriodValue.toString(), 2, 0, false));
}
//方案汇总
list.add(getValueSpanSize("方案汇总", 2, 1, true));
//融资首付
StringBuilder loanDownPayValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getLoanDownPay())) {
loanDownPayValue = loanDownPayValue.append("融资首付:").append(solutionsDetailsVo.getLoanDownPay());
} else {
loanDownPayValue = loanDownPayValue.append("融资首付:").append("-");
}
list.add(getValueSpanSize(loanDownPayValue.toString(), 1, 0, false));
//总贷款金额
StringBuilder loanAmountTotalValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getLoanAmountTotal())) {
loanAmountTotalValue = loanAmountTotalValue.append("总贷款金额:").append(solutionsDetailsVo.getLoanAmountTotal());
} else {
loanAmountTotalValue = loanAmountTotalValue.append("总贷款金额:").append("-");
}
list.add(getValueSpanSize(loanAmountTotalValue.toString(), 1, 0, false));
//期数
StringBuilder periodValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getPeriod())) {
periodValue = periodValue.append("期数:").append(solutionsDetailsVo.getPeriod());
} else {
periodValue = periodValue.append("期数:").append("-");
}
list.add(getValueSpanSize(periodValue.toString(), 1, 0, false));
//月还金额
StringBuilder monthlyRepayValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getMonthlyRepay())) {
monthlyRepayValue = monthlyRepayValue.append("月还金额:").append(solutionsDetailsVo.getMonthlyRepay());
} else {
monthlyRepayValue = monthlyRepayValue.append("月还金额:").append("-");
}
list.add(getValueSpanSize(monthlyRepayValue.toString(), 1, 0, false));
//利息总额
StringBuilder interestValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getInterest())) {
interestValue = interestValue.append("利息总额:").append(solutionsDetailsVo.getInterest());
} else {
interestValue = interestValue.append("利息总额:").append("-");
}
list.add(getValueSpanSize(interestValue.toString(), 1, 0, false));
//预计首期还款日
StringBuilder returnTimeValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getReturnTime())) {
returnTimeValue = returnTimeValue.append("预计首期还款日:").append(solutionsDetailsVo.getReturnTime());
} else {
returnTimeValue = returnTimeValue.append("预计首期还款日:").append("-");
}
list.add(getValueSpanSize(returnTimeValue.toString(), 1, 0, false));
//应收明细
list.add(getValueSpanSize("应收明细", 2, 1, true));
//融资首付
StringBuilder downPayAmountsValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getDownPayAmounts())) {
downPayAmountsValue = downPayAmountsValue.append("融资首付:").append(solutionsDetailsVo.getDownPayAmounts());
} else {
downPayAmountsValue = downPayAmountsValue.append("融资首付:").append("-");
}
list.add(getValueSpanSize(downPayAmountsValue.toString(), 1, 0, false));
//贷款保证金
StringBuilder bondAmountsValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getBondAmounts())) {
bondAmountsValue = bondAmountsValue.append("贷款保证金:").append(solutionsDetailsVo.getBondAmounts());
} else {
bondAmountsValue = bondAmountsValue.append("贷款保证金:").append("-");
}
list.add(getValueSpanSize(bondAmountsValue.toString(), 1, 0, false));
//保险保证金
StringBuilder depositPremiumValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getDepositPremium())) {
depositPremiumValue = depositPremiumValue.append("保险保证金:").append(solutionsDetailsVo.getDepositPremium());
} else {
depositPremiumValue = depositPremiumValue.append("保险保证金:").append("-");
}
list.add(getValueSpanSize(depositPremiumValue.toString(), 1, 0, false));
//落户保证金
StringBuilder depositSettleValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getDepositSettle())) {
depositSettleValue = depositSettleValue.append("落户保证金:").append(solutionsDetailsVo.getDepositSettle());
} else {
depositSettleValue = depositSettleValue.append("落户保证金:").append("-");
}
list.add(getValueSpanSize(depositSettleValue.toString(), 1, 0, false));
//服务费
StringBuilder serviceAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getServiceAmount())) {
serviceAmountValue = serviceAmountValue.append("服务费:").append(solutionsDetailsVo.getServiceAmount());
} else {
serviceAmountValue = serviceAmountValue.append("服务费:").append("-");
}
list.add(getValueSpanSize(serviceAmountValue.toString(), 1, 0, false));
//代收意外险
StringBuilder proxyAccidentPremiumValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getProxyAccidentPremium())) {
proxyAccidentPremiumValue = proxyAccidentPremiumValue.append("代收意外险:").append(solutionsDetailsVo.getProxyAccidentPremium());
} else {
proxyAccidentPremiumValue = proxyAccidentPremiumValue.append("代收意外险:").append("-");
}
list.add(getValueSpanSize(proxyAccidentPremiumValue.toString(), 1, 0, false));
//上牌费
StringBuilder registerAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getRegisterAmount())) {
registerAmountValue = registerAmountValue.append("上牌费:").append(solutionsDetailsVo.getRegisterAmount());
} else {
registerAmountValue = registerAmountValue.append("上牌费:").append("-");
}
list.add(getValueSpanSize(registerAmountValue.toString(), 1, 0, false));
//运管费
StringBuilder operationAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOperationAmount())) {
operationAmountValue = operationAmountValue.append("运管费:").append(solutionsDetailsVo.getOperationAmount());
} else {
operationAmountValue = operationAmountValue.append("运管费:").append("-");
}
list.add(getValueSpanSize(operationAmountValue.toString(), 1, 0, false));
//补车价
StringBuilder vehOtherPriceValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getVehOtherPrice())) {
vehOtherPriceValue = vehOtherPriceValue.append("补车价:").append(solutionsDetailsVo.getVehOtherPrice());
} else {
vehOtherPriceValue = vehOtherPriceValue.append("补车价:").append("-");
}
list.add(getValueSpanSize(vehOtherPriceValue.toString(), 1, 0, false));
//其它费用
StringBuilder otherAmountValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherAmount())) {
otherAmountValue = otherAmountValue.append("其它费用:").append(solutionsDetailsVo.getOtherAmount());
} else {
otherAmountValue = otherAmountValue.append("其它费用:").append("-");
}
list.add(getValueSpanSize(otherAmountValue.toString(), 1, 0, false));
//其它费用说明
StringBuilder otherAmountRemarkValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherAmountRemark())) {
otherAmountRemarkValue = otherAmountRemarkValue.append("其它费用说明:").append(solutionsDetailsVo.getOtherAmountRemark());
} else {
otherAmountRemarkValue = otherAmountRemarkValue.append("其它费用说明:").append("-");
}
list.add(getValueSpanSize(otherAmountRemarkValue.toString(), 1, 0, false));
//办理方式选择
StringBuilder dealWayValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getDealWay())) {
dealWayValue = dealWayValue.append("办理方式选择:").append(solutionsDetailsVo.getDealWay());
} else {
dealWayValue = dealWayValue.append("办理方式选择:").append("-");
}
list.add(getValueSpanSize(dealWayValue.toString(), 2, 2, false));
//代收首年保险费
StringBuilder proxyPremiumValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getProxyPremium())) {
proxyPremiumValue = proxyPremiumValue.append("代收首年保险费:").append(solutionsDetailsVo.getProxyPremium());
} else {
proxyPremiumValue = proxyPremiumValue.append("代收首年保险费:").append("-");
}
list.add(getValueSpanSize(proxyPremiumValue.toString(), 1, 0, false));
//代收购置税
StringBuilder proxyPurchasetaxValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getProxyPurchasetax())) {
proxyPurchasetaxValue = proxyPurchasetaxValue.append("代收购置税:").append(solutionsDetailsVo.getProxyPurchasetax());
} else {
proxyPurchasetaxValue = proxyPurchasetaxValue.append("代收购置税:").append("-");
}
list.add(getValueSpanSize(proxyPurchasetaxValue.toString(), 1, 0, false));
//应收合计
StringBuilder receivableTotalValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getReceivableTotal())) {
receivableTotalValue = receivableTotalValue.append("应收合计:").append(solutionsDetailsVo.getReceivableTotal());
} else {
receivableTotalValue = receivableTotalValue.append("应收合计:").append("-");
}
list.add(getValueSpanSize(receivableTotalValue.toString(), 2, 0, true));
//抵顶费用合计
StringBuilder offsetTotalValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOffsetTotal())) {
offsetTotalValue = offsetTotalValue.append("抵顶费用合计:").append(solutionsDetailsVo.getOffsetTotal());
} else {
offsetTotalValue = offsetTotalValue.append("抵顶费用合计:").append("-");
}
list.add(getValueSpanSize(offsetTotalValue.toString(), 2, 2, false));
//抵顶首年保险费
StringBuilder offsetPremiumValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOffsetPremium())) {
offsetPremiumValue = offsetPremiumValue.append("抵顶首年保险费:").append(solutionsDetailsVo.getOffsetPremium());
} else {
offsetPremiumValue = offsetPremiumValue.append("抵顶首年保险费:").append("-");
}
list.add(getValueSpanSize(offsetPremiumValue.toString(), 1, 0, false));
//抵顶购置税
StringBuilder offsetPurchasetaxValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getOffsetPurchasetax())) {
offsetPurchasetaxValue = offsetPurchasetaxValue.append("抵顶购置税:").append(solutionsDetailsVo.getOffsetPurchasetax());
} else {
offsetPurchasetaxValue = offsetPurchasetaxValue.append("抵顶购置税:").append("-");
}
list.add(getValueSpanSize(offsetPurchasetaxValue.toString(), 1, 0, false));
//实收合计
StringBuilder realTotalValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getRealTotal())) {
realTotalValue = realTotalValue.append("实收合计:").append(solutionsDetailsVo.getRealTotal());
} else {
realTotalValue = realTotalValue.append("实收合计:").append("-");
}
list.add(getValueSpanSize(realTotalValue.toString(), 2, 0, true));
list.add(getValueSpanSize("", 2, 0, false));
//车辆总价
StringBuilder vehTotalPriceValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getVehTotalPrice())) {
vehTotalPriceValue = vehTotalPriceValue.append("车辆总价:").append(solutionsDetailsVo.getVehTotalPrice());
} else {
vehTotalPriceValue = vehTotalPriceValue.append("车辆总价:").append("-");
}
list.add(getValueSpanSize(vehTotalPriceValue.toString(), 2, 0, false));
//名义留购价
StringBuilder nominalPriceValue = new StringBuilder();
if (StringUtils.isNotBlank(solutionsDetailsVo.getNominalPrice())) {
nominalPriceValue = nominalPriceValue.append("名义留购价:").append(solutionsDetailsVo.getNominalPrice());
} else {
nominalPriceValue = nominalPriceValue.append("名义留购价:").append("-");
}
list.add(getValueSpanSize(nominalPriceValue.toString(), 2, 0, false));
}
}
appOrderDetailsVo.setFinanceForms(list);
return appOrderDetailsVo;
}
/**
* 金融方案的拼接
*
* @param value 拼接内容
* @param spanSize 格数
* @param type 类型0 最普通的 1 标题的 2是 加上划线的
* @param bold 是否加粗true是false否
* @return
*/
private OrderSolutionVo getValueSpanSize(String value, Integer spanSize, Integer type, boolean bold) {
OrderSolutionVo orderSolutionVo = new OrderSolutionVo();
orderSolutionVo.setValue(value);
orderSolutionVo.setSpanSize(spanSize);
orderSolutionVo.setType(type);
orderSolutionVo.setBold(bold);
return orderSolutionVo;
}
public AppOrderDetailsVo selectSolution(AppOrderDetailsVo appOrderDetailsVo, String sid) {
ResultBean<SolutionsDetailsVo> solutionsDetailsVoResultBean = loanSolutionsFeign.selectDetailss(sid);
if (solutionsDetailsVoResultBean.getData() != null) {
@ -3570,9 +4095,9 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
otherLoanSolutions = otherLoanSolutions.append("、").append("月还金额:").append("-");
}
//利息总额
if(StringUtils.isNotBlank(solutionsDetailsVo.getOtherPolicyInterest())){
if (StringUtils.isNotBlank(solutionsDetailsVo.getOtherPolicyInterest())) {
otherLoanSolutions = otherLoanSolutions.append("、").append("利息总额:").append(solutionsDetailsVo.getOtherPolicyInterest());
}else{
} else {
otherLoanSolutions = otherLoanSolutions.append("、").append("利息总额:").append("-");
}
//年利率
@ -4895,10 +5420,10 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
record.setPrintOrderBtn(false);
}
//根据流程定义id以及实例id查询结束时间
ResultBean<FlowSelectVo> flowSelectVoResultBean = flowableFeign.selectFlows(record.getProcDefId(),record.getProcInstId());
if(flowSelectVoResultBean.getData() != null){
ResultBean<FlowSelectVo> flowSelectVoResultBean = flowableFeign.selectFlows(record.getProcDefId(), record.getProcInstId());
if (flowSelectVoResultBean.getData() != null) {
FlowSelectVo flowSelectVo = flowSelectVoResultBean.getData();
if(StringUtils.isNotBlank(flowSelectVo.getEndTime())){
if (StringUtils.isNotBlank(flowSelectVo.getEndTime())) {
record.setEndTime(flowSelectVo.getEndTime());
}
}
@ -4957,9 +5482,9 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return rb.success();
}
public ResultBean<String> selectTemporaryNo(String vehSid,String contractNo) {
public ResultBean<String> selectTemporaryNo(String vehSid, String contractNo) {
ResultBean<String> rb = ResultBean.fireFail();
BusSalesOrdeVo busSalesOrdeVo = baseMapper.selectTemporaryNo(vehSid,contractNo);
BusSalesOrdeVo busSalesOrdeVo = baseMapper.selectTemporaryNo(vehSid, contractNo);
if (busSalesOrdeVo != null) {
contractNo = busSalesOrdeVo.getContractNo();
if (StringUtils.isBlank(contractNo)) {
@ -5096,7 +5621,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderSourceLCVo.setSpsj(processCommentVo.get("time").toString());
busSalesOrderSourceLCVos.add(busSalesOrderSourceLCVo);
List<String> fileList = (List) processCommentVo.get("fileList");
if (fileList.size() > 0){
if (fileList.size() > 0) {
for (String s : fileList) {
imgList.add(s);
}
@ -5104,19 +5629,19 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
}
List<Message> messages = messageFeign.selectByBusinessSid(busSalesOrder.getSid()).getData();
if (messages.size() > 0){
if (messages.size() > 0) {
for (Message message : messages) {
BusSalesOrderSourceLCVo busSalesOrderSourceLCVo = new BusSalesOrderSourceLCVo();
String receiverNames = "";
List<MessageList> messageLists = messageListFeign.fetchByMainSid(message.getSid()).getData();
if (messageLists.size() > 0){
if (messageLists.size() > 0) {
for (MessageList messageList : messageLists) {
receiverNames = receiverNames + messageList.getReceiverName() + ",";
}
}
busSalesOrderSourceLCVo.setName("系统");
busSalesOrderSourceLCVo.setComment("抄送 " + receiverNames.substring(0,receiverNames.lastIndexOf(",")));
busSalesOrderSourceLCVo.setSpsj(DateUtil.format(message.getCreateTime(),"yyyy-MM-dd HH:mm:ss"));
busSalesOrderSourceLCVo.setComment("抄送 " + receiverNames.substring(0, receiverNames.lastIndexOf(",")));
busSalesOrderSourceLCVo.setSpsj(DateUtil.format(message.getCreateTime(), "yyyy-MM-dd HH:mm:ss"));
busSalesOrderSourceLCVos.add(busSalesOrderSourceLCVo);
}
}
@ -5147,19 +5672,19 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
dataMap.put("conPrice", commonContract.getContractAmount());
//是否公司入保
BusSalesOrderInsuranceDetailsVo busSalesOrderInsuranceDetailsVo = busSalesOrderInsuranceService.selectOrderInsuranceStateBySid(busSalesOrder.getSid());
if (busSalesOrder.getIsInsurance().equals("0")){
if (busSalesOrder.getIsInsurance().equals("0")) {
dataMap.put("isrb", "否," + busSalesOrderInsuranceDetailsVo.getRemarks() + "。");
}else {
} else {
dataMap.put("isrb", "是," + busSalesOrderInsuranceDetailsVo.getInsuranceName() + "," + "单台预估金额" + busSalesOrderInsuranceDetailsVo.getInsuranceCarMoney() + "元," + "入保期数" + busSalesOrderInsuranceDetailsVo.getInsuranceNum() + "。");
}
//是否赠送客户物品
List<AppOrderDiscountListVo> appOrderDiscountListVos = busSalesOrderDiscountService.selectDiscount(busSalesOrder.getSid());
if (appOrderDiscountListVos.size() == 0){
if (appOrderDiscountListVos.size() == 0) {
dataMap.put("iszs", "否");
//赠送客户物品
dataMap.put("zskhwp", "无");
}else {
} else {
dataMap.put("iszs", "是");
//赠送客户物品
String zskhwp = "";
@ -5170,13 +5695,13 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
//是否返利
BusSalesOrderSubmit busSalesOrderSubmit = busSalesOrderSubmitService.selectBySaleOrderSid(busSalesOrder.getSid());
if (busSalesOrderSubmit != null){
if (StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorName()) || StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorNameTwo())){
if (busSalesOrderSubmit != null) {
if (StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorName()) || StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorNameTwo())) {
dataMap.put("isfl", "是");
}else {
} else {
dataMap.put("isfl", "否");
}
}else {
} else {
dataMap.put("isfl", "否");
}
//返利备案表
@ -5184,7 +5709,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//价格信息中获取数量
Integer quantity = busSalesOrderPrice.getQuantity();
//中介人1
if (StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorName())){
if (StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorName())) {
BusSalesOrderFL busSalesOrderFL = new BusSalesOrderFL();
//中介人1返利总金额
busSalesOrderFL.setFlPrice(busSalesOrderSubmit.getDistributorPrice().multiply(new BigDecimal(quantity)).toString());
@ -5199,7 +5724,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//中介人1开户行
busSalesOrderFL.setKhh(baseMiddlemanDetailsOneVo.getBankName());
busSalesOrderFLS.add(busSalesOrderFL);
}else if (StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorNameTwo())){//中介人2
} else if (StringUtils.isNotBlank(busSalesOrderSubmit.getDistributorNameTwo())) {//中介人2
BusSalesOrderFL busSalesOrderFL = new BusSalesOrderFL();
//中介人2返利总金额
busSalesOrderFL.setFlPrice(busSalesOrderSubmit.getDistributorPriceTwo().multiply(new BigDecimal(quantity)).toString());
@ -5217,11 +5742,11 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
dataMap.put("flList", busSalesOrderFLS);
//是否显示金融信息备案
if ("2".equals(busSalesOrder.getPayTypeKey())){
if ("2".equals(busSalesOrder.getPayTypeKey())) {
dataMap.put("isXS", "否");
}else if ("1".equals(busSalesOrder.getPayTypeKey()) && "1".equals(busSalesOrder.getFinancePlan())){
} else if ("1".equals(busSalesOrder.getPayTypeKey()) && "1".equals(busSalesOrder.getFinancePlan())) {
dataMap.put("isXS", "否");
}else {
} else {
dataMap.put("isXS", "是");
}
//金融信息备案
@ -5239,9 +5764,9 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//下载人
dataMap.put("downName", userName);
//下载时间
dataMap.put("downTime", DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss"));
dataMap.put("downTime", DateUtil.format(new Date(), "yyyy-MM-dd HH:mm:ss"));
//获取图片路径
if (StringUtils.isNotBlank(busSalesOrder.getImagesFile())){
if (StringUtils.isNotBlank(busSalesOrder.getImagesFile())) {
String notesImage = busSalesOrder.getImagesFile();
String[] notesImages = notesImage.split(",");
for (String image : notesImages) {
@ -5255,7 +5780,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
}
}
if (imgList.size() > 0){
if (imgList.size() > 0) {
for (String image : imgList) {
if (image.contains(fileUploadComponent.getUrlPrefix())) {
image = image.replace(fileUploadComponent.getUrlPrefix(), "");

3
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.java

@ -29,6 +29,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDiscountListVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscount;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscountDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.OrderDiscountVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.app.AppBusSalesOrderDiscountListVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -109,4 +110,6 @@ public interface BusSalesOrderDiscountMapper extends BaseMapper<BusSalesOrderDis
* @return
*/
List<AppOrderDiscountListVo> selectDiscount(String sid);
List<OrderDiscountVo> discountList(String contractNo);
}

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.xml

@ -55,4 +55,8 @@
from bus_sales_order_discount
where salesOrderSid = #{sid}
</select>
<select id="discountList" resultType="com.yxt.anrui.buscenter.api.bussalesorderdiscount.OrderDiscountVo">
select * from bus_sales_order_discount
</select>
</mapper>

6
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountRest.java

@ -26,6 +26,7 @@
package com.yxt.anrui.buscenter.biz.bussalesorderdiscount;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscountFeign;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.OrderDiscountVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.app.AppBusSalesOrderDiscountDto;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.app.AppBusSalesOrderDiscountListVo;
import com.yxt.common.core.result.ResultBean;
@ -71,4 +72,9 @@ public class BusSalesOrderDiscountRest implements BusSalesOrderDiscountFeign {
public ResultBean delete(String orderSid, String sid) {
return busSalesOrderDiscountService.deleteDiscount(orderSid, sid);
}
@Override
public ResultBean<List<OrderDiscountVo>> discountList(String contractNo, String vinSid) {
return busSalesOrderDiscountService.discountList(contractNo, vinSid);
}
}

10
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountService.java

@ -31,6 +31,7 @@ import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDiscountListV
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscount;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscountDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscountDto;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.OrderDiscountVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.app.AppBusSalesOrderDiscountDto;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.app.AppBusSalesOrderDiscountListVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.app.AppDiscountInfoDto;
@ -140,7 +141,7 @@ public class BusSalesOrderDiscountService extends MybatisBaseService<BusSalesOrd
int numAll = busSalesOrderDiscount1.getNum() + Integer.parseInt(appDiscountInfoDto.getNum());
BigDecimal bigDecimal = new BigDecimal(appDiscountInfoDto.getPrice());
bigDecimal = bigDecimal.multiply(new BigDecimal(String.valueOf(numAll)));
baseMapper.updateNum(salesOrderSid, salesPolicySid, numAll,bigDecimal.toString());
baseMapper.updateNum(salesOrderSid, salesPolicySid, numAll, bigDecimal.toString());
}
return rb.success().setMsg("成功");
@ -172,4 +173,11 @@ public class BusSalesOrderDiscountService extends MybatisBaseService<BusSalesOrd
public List<AppOrderDiscountListVo> selectDiscount(String sid) {
return baseMapper.selectDiscount(sid);
}
public ResultBean<List<OrderDiscountVo>> discountList(String contractNo,String vinSid) {
ResultBean<List<OrderDiscountVo>> rb = ResultBean.fireFail();
//查询出库的选择套餐中是否存在
List<OrderDiscountVo> list = baseMapper.discountList(contractNo);
return rb.success().setData(list);
}
}

3
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempMapper.java

@ -125,8 +125,11 @@ public interface CrmCustomerTempMapper extends BaseMapper<CrmCustomerTemp> {
/**
* 根据客户编码查询客户信息
*
* @param customerNo 客户编码
* @return
*/
CrmCustomerTemp selectByCustomerNo(String customerNo);
List<CrmCustomerTemp> selectLists(@Param(Constants.WRAPPER) QueryWrapper<CrmCustomerTemp> qw);
}

11
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempMapper.xml

@ -20,8 +20,8 @@
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo">
SELECT *
FROM crm_customer_temp
SELECT cct.*
FROM crm_customer_temp cct
<where>
${ew.sqlSegment}
</where>
@ -224,4 +224,11 @@
<select id="selectByCustomerNo" resultType="com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp">
select * from crm_customer_temp where customerNo = #{customerNo}
</select>
<select id="selectLists" resultType="com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp">
select cct.* from crm_customer_temp cct
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

2
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java

@ -125,7 +125,7 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
public List<CrmCustomerTemp> listAll(CrmCustomerTempQuery query) {
QueryWrapper<CrmCustomerTemp> qw = createQueryWrapper(query);
return baseMapper.selectList(qw);
return baseMapper.selectLists(qw);
}
private QueryWrapper<CrmCustomerTemp> createQueryWrapper(CrmCustomerTempQuery query) {

120
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoice.java

@ -0,0 +1,120 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinVehicleInvoice.java <br/>
* Class: com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice <br/>
* Description: 车辆发票信息. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@ApiModel(value = "车辆发票信息", description = "车辆发票信息")
@TableName("fin_vehicle_invoice")
@Data
public class FinVehicleInvoice extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("版本锁")
private Integer lockVersion;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("创建时间")
private Date createTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("修改时间")
private Date modifyTime;
@ApiModelProperty("是否可用:1可用,0不可用")
private Integer isEnable;
private Integer state;
@ApiModelProperty("开票状态")
private String billingState;
@ApiModelProperty("开票状态Key")
private String billingStateKey;
@ApiModelProperty("是否删除:0未删除,1已删除")
private Integer isDelete;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建人sid")
private String createBySid;
@ApiModelProperty("修改人sid")
private String updateBySid;
@ApiModelProperty("车辆sid")
private String vehicleSid;
@ApiModelProperty("车架号")
private String VIN;
@ApiModelProperty("车辆类型Key")
private String vehicleTypeKey;
@ApiModelProperty("车辆类型")
private String vehicleType;
@ApiModelProperty("车辆金额")
private BigDecimal vehiclAmount;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("最大发票开票日期")
private Date invoiceDate;
@ApiModelProperty("发票号")
private String invoiceNo;
@ApiModelProperty("发票代码")
private String invoiceCode;
@ApiModelProperty("车辆发票金额")
private BigDecimal invoiceAmount;
@ApiModelProperty("发票类别Key(增值税专用发票/机动车销售统一发票/增值税普通发票)")
private String invoiceTypeKey;
@ApiModelProperty("发票类别")
private String invoiceType;
@ApiModelProperty("开票单位")
private String invoiceTitle;
@ApiModelProperty("移交状态:0未交接,1已交接")
private String transferState;
@ApiModelProperty("移交状态:0未交接,1已交接")
private String transferStateKey;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("开票名称")
private String invoicingName;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("图片地址")
private String filePath;
}

54
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceDetailsVo.java

@ -0,0 +1,54 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/4/5 20:30
*/
@Data
public class FinVehicleInvoiceDetailsVo implements Vo {
@ApiModelProperty("sid")
private String sid;
@ApiModelProperty("开票单位")
private String invoiceTitle;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("发票类别")
private String invoiceType;
@ApiModelProperty("开票类型Key")
private String invoiceTypeKey;
@ApiModelProperty("车辆发票金额")
private BigDecimal invoiceAmount;
@ApiModelProperty("发票状态")
private String billingState;
@ApiModelProperty("发票状态Key")
private String billingStateKey;
@ApiModelProperty("开票名称")
private String invoicingName;
@ApiModelProperty("开票人")
private String name;
@ApiModelProperty("开票时间")
private String createTime;
@ApiModelProperty("发票号")
private String invoiceNo;
@ApiModelProperty("发票代码")
private String invoiceCode;
@ApiModelProperty("图片地址")
private String filePath;
@ApiModelProperty("图片地址集合")
private List<String> filePaths;
}

95
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceDto.java

@ -0,0 +1,95 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: LoanVehicleInvoiceDto.java <br/>
* Class: com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceDto <br/>
* Description: 车辆发票信息 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@ApiModel(value = "车辆发票信息 数据传输对象", description = "车辆发票信息 数据传输对象")
@Data
public class FinVehicleInvoiceDto implements Dto {
private String sid; // sid
@ApiModelProperty("版本锁")
private Integer lockVersion;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("创建时间")
private String createTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("修改时间")
private String modifyTime;
@ApiModelProperty("是否可用:1可用,0不可用")
private Integer isEnable;
private Integer state;
@ApiModelProperty("是否删除:0未删除,1已删除")
private Integer isDelete;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("创建人sid")
private String createBySid;
private String useOrgSid;
@ApiModelProperty("修改人sid")
private String updateBySid;
@ApiModelProperty("车辆sid")
private String vehicleSid;
@ApiModelProperty("车架号")
private String VIN;
@ApiModelProperty("车辆类型Key")
private String vehicleTypeKey;
@ApiModelProperty("车辆类型")
private String vehicleType;
@ApiModelProperty("车辆金额")
private BigDecimal vehiclAmount;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("最大发票开票日期")
private String invoiceDate;
@ApiModelProperty("发票号")
private String invoiceNo;
@ApiModelProperty("发票代码")
private String invoiceCode;
@ApiModelProperty("车辆发票金额")
private BigDecimal invoiceAmount;
@ApiModelProperty("发票类别Key(增值税专用发票/机动车销售统一发票/增值税普通发票)")
private String invoiceTypeKey;
@ApiModelProperty("发票类别")
private String invoiceType;
@ApiModelProperty("开票单位")
private String invoiceTitle;
@ApiModelProperty("移交状态:0未交接,1已交接")
private String transferState;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("图片地址")
private String filePath;
@ApiModelProperty("开票状态")
private String billingState;
@ApiModelProperty("开票状态Key")
private String billingStateKey;
@ApiModelProperty("图片地址集合")
private List<String> filePaths;
private String vinNo;
@ApiModelProperty("开票名称")
private String invoicingName;
}

39
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceExportVo.java

@ -0,0 +1,39 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.yxt.common.core.utils.ExportEntityMap;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/4/4 17:40
*/
@Data
public class FinVehicleInvoiceExportVo implements Vo {
@ExportEntityMap(CnName = "序号", EnName = "rankNo")
private Integer rankNo;
@ExportEntityMap(CnName = "发票状态", EnName = "billingState")
private String billingState;
@ExportEntityMap(CnName = "交接状态", EnName = "transferState")
private String transferState;
@ExportEntityMap(CnName = "开票单位", EnName = "invoiceTitle")
private String invoiceTitle;
@ExportEntityMap(CnName = "开票类型", EnName = "invoiceType")
private String invoiceType;
@ExportEntityMap(CnName = "合同编号", EnName = "contractNo")
private String contractNo;
@ExportEntityMap(CnName = "客户名称", EnName = "customerName")
private String customerName;
@ExportEntityMap(CnName = "车架号", EnName = "vinNo")
private String vinNo;
@ExportEntityMap(CnName = "开票名称", EnName = "invoicingName")
private String invoicingName;
@ExportEntityMap(CnName = "开票金额", EnName = "invoiceAmount")
private String invoiceAmount;
@ExportEntityMap(CnName = "开票日期", EnName = "createTime")
private String createTime;
@ExportEntityMap(CnName = "发票代码", EnName = "invoiceCode")
private String invoiceCode;
}

72
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java

@ -0,0 +1,72 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinVehicleInvoiceFeign.java <br/>
* Class: com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign <br/>
* Description: 车辆发票信息. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "车辆发票信息")
@FeignClient(
contextId = "anrui-fin-FinVehicleInvoice",
name = "anrui-fin",
path = "v1/finvehicleinvoice",
fallback = FinVehicleInvoiceFeignFallback.class)
public interface FinVehicleInvoiceFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<FinVehicleInvoiceVo>> listPage(@RequestBody PagerQuery<FinVehicleInvoiceQuery> pq);
@ApiOperation("根据条件查询所有数据列表")
@PostMapping("/listAll")
public ResultBean<List<FinVehicleInvoiceVo>> listAll(@RequestBody FinVehicleInvoiceQuery query);
@ApiOperation("所有数据列表")
@GetMapping("/list")
public ResultBean<List<FinVehicleInvoiceVo>> list();
@ApiOperation("新增保存")
@PostMapping("/save")
public ResultBean save(@RequestBody FinVehicleInvoiceDto dto);
@ApiOperation("修改保存")
@PostMapping("/saveOrUpdate")
public ResultBean saveOrUpdate(@RequestBody FinVehicleInvoiceDto dto);
@ApiOperation("删除记录")
@GetMapping("/del/{ids}")
public ResultBean del(@PathVariable("ids") String ids);
@ApiOperation("获取一条记录")
@GetMapping("/fetch/{id}")
public ResultBean<FinVehicleInvoiceVo> fetch(@PathVariable("id") String id);
@ApiOperation("获取详情记录")
@GetMapping("/fetchSid/{sid}")
public ResultBean<FinVehicleInvoiceDetailsVo> fetchBySid(@PathVariable("sid") String sid);
@PostMapping("/exportExcel")
@ApiOperation(value = "车辆发票信息列表导出")
@ResponseBody
public void exportExcel(@RequestBody FinVehicleInvoiceQuery query);
}

78
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java

@ -0,0 +1,78 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinVehicleInvoiceFeignFallback.java <br/>
* Class: com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeignFallback <br/>
* Description: 车辆发票信息. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Component
public class FinVehicleInvoiceFeignFallback implements FinVehicleInvoiceFeign {
@Override
public ResultBean<PagerVo<FinVehicleInvoiceVo>> listPage(PagerQuery<FinVehicleInvoiceQuery> pq){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finvehicleinvoice/listPage无法访问");
}
@Override
public ResultBean<List<FinVehicleInvoiceVo>> listAll(FinVehicleInvoiceQuery query){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finvehicleinvoice/listAll无法访问");
}
@Override
public ResultBean<List<FinVehicleInvoiceVo>> list(){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finvehicleinvoice/list无法访问");
}
@Override
public ResultBean save(FinVehicleInvoiceDto dto){
return ResultBean.fireFail().setMsg("接口anrui-fin/finvehicleinvoice/save无法访问");
}
@Override
public ResultBean saveOrUpdate(FinVehicleInvoiceDto dto) {
return ResultBean.fireFail().setMsg("接口anrui-fin/finvehicleinvoice/saveOrUpdate无法访问");
}
@Override
public ResultBean del(String ids){
return ResultBean.fireFail().setMsg("接口anrui-fin/finvehicleinvoice/del无法访问");
}
@Override
public ResultBean<FinVehicleInvoiceVo> fetch(String id){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finvehicleinvoice/fetch无法访问");
}
@Override
public ResultBean<FinVehicleInvoiceDetailsVo> fetchBySid(String sid){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finvehicleinvoice/fetch无法访问");
}
@Override
public void exportExcel(FinVehicleInvoiceQuery query) {
}
}

81
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceQuery.java

@ -0,0 +1,81 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinVehicleInvoiceQuery.java <br/>
* Class: com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceQuery <br/>
* Description: 车辆发票信息 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@ApiModel(value = "车辆发票信息 查询条件", description = "车辆发票信息 查询条件")
@Data
public class FinVehicleInvoiceQuery implements Query {
@ApiModelProperty(value = "sids", required = false)
private List<String> sids;
@ApiModelProperty("开票单位")
private String invoiceTitle;
@ApiModelProperty("开票状态")
private String billingState;
@ApiModelProperty("开票状态Key")
private String billingStateKey;
@ApiModelProperty("开票类型Key")
private String invoiceTypeKey;
@ApiModelProperty("发票类别")
private String invoiceType;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("车架号")
private String vinNo;
private String state;
@ApiModelProperty("移交状态")
private String transferState;
@ApiModelProperty("移交状态key")
private String transferStateKey;
@ApiModelProperty("开票名称")
private String invoicingName;
@ApiModelProperty("开票开始日期")
private String createStartTime ;
@ApiModelProperty("开票结束日期")
private String createEndTime ;
@ApiModelProperty("发票代码")
private String invoiceCode;
}

70
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceVo.java

@ -0,0 +1,70 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinVehicleInvoiceVo.java <br/>
* Class: com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceVo <br/>
* Description: 车辆发票信息 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@ApiModel(value = "车辆发票信息 视图数据对象", description = "车辆发票信息 视图数据对象")
@Data
public class FinVehicleInvoiceVo implements Vo {
@ApiModelProperty("车辆发票信息Sid")
private String sid;
private String state;
@ApiModelProperty("发票状态")
private String billingState;
@ApiModelProperty("发票状态Key")
private String billingStateKey;
@ApiModelProperty("交接状态")
private String transferState;
@ApiModelProperty("交接状态Key")
private String transferStateKey;
@ApiModelProperty("开票单位")
private String invoiceTitle;
@ApiModelProperty("开票类型")
private String invoiceType;
@ApiModelProperty("开票类型Key")
private String invoiceTypeKey;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("开票名称")
private String invoicingName;
@ApiModelProperty("开票金额")
private String invoiceAmount;
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("开票日期")
private Date createTime;
@ApiModelProperty("发票代码")
private String invoiceCode;
@ApiModelProperty("发票号")
private String invoiceNo;
@ApiModelProperty("发票图片")
private String filePath;
@ApiModelProperty("发票图片集合")
private List<String> filePaths;
}

47
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java

@ -0,0 +1,47 @@
package com.yxt.anrui.fin.biz.finvehicleinvoice;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceDetailsVo;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceExportVo;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinVehicleInvoiceMapper.java <br/>
* Class: com.yxt.anrui.fin.biz.finvehicleinvoice.FinVehicleInvoiceMapper <br/>
* Description: 车辆发票信息. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface FinVehicleInvoiceMapper extends BaseMapper<FinVehicleInvoice> {
//@Update("update fin_vehicle_invoice set name=#{msg} where id=#{id}")
//IPage<FinVehicleInvoiceVo> voPage(IPage<FinVehicleInvoice> page, @Param(Constants.WRAPPER) QueryWrapper<FinVehicleInvoice> qw);
IPage<FinVehicleInvoiceVo> selectPageVo(IPage<FinVehicleInvoice> page, @Param(Constants.WRAPPER) Wrapper<FinVehicleInvoice> qw);
List<FinVehicleInvoiceVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<FinVehicleInvoice> qw);
List<FinVehicleInvoiceVo> selectListVo();
List<FinVehicleInvoiceExportVo> selByExcel(@Param(Constants.WRAPPER)QueryWrapper<FinVehicleInvoiceExportVo> qw);
FinVehicleInvoiceDetailsVo getInvoiceDetailsBySid(String sid);
}

141
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml

@ -0,0 +1,141 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.fin.biz.finvehicleinvoice.FinVehicleInvoiceMapper">
<resultMap id="selectPageVoResultMap" type="com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceVo">
<result column="sid" property="sid"></result>
<result column="state" property="state"></result>
<result column="transferState" property="transferState"></result>
<result column="billingState" property="billingState"></result>
<result column="invoiceTitle" property="invoiceTitle"></result>
<result column="invoiceType" property="invoiceType"></result>
<result column="invoiceTypeKey" property="invoiceTypeKey"></result>
<result column="contractNo" property="contractNo"></result>
<result column="customerName" property="customerName"></result>
<result column="VIN" property="vinNo"></result>
<result column="invoicingName" property="invoicingName"></result>
<result column="invoiceAmount" property="invoiceAmount"></result>
<result column="createTime" property="createTime"></result>
<result column="invoiceCode" property="invoiceCode"></result>
<result column="filePath" property="filePath"></result>
<result column="billingStateKey" property="billingStateKey"></result>
<result column="transferStateKey" property="transferStateKey"></result>
</resultMap>
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultMap="selectPageVoResultMap">
SELECT DISTINCT
sid,
`state`,
billingStateKey,
billingState,
transferStateKey,
transferState,
invoiceTitle,
invoiceType,
invoiceTypeKey,
contractNo,
customerName,
VIN,
invoicingName,
invoiceAmount,
createTime,
invoiceCode,
invoiceNo,
filePath
FROM fin_vehicle_invoice
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selectListVo" resultMap="selectPageVoResultMap">
SELECT * FROM fin_vehicle_invoice where isDelete = '0'
</select>
<select id="selectListAllVo" resultMap="selectPageVoResultMap">
SELECT * FROM fin_vehicle_invoice
<where>${ew.sqlSegment}</where>
</select>
<resultMap id="selectPageExportVoResultMap" type="com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceExportVo">
<result column="transferState" property="transferState"></result>
<result column="billingState" property="billingState"></result>
<result column="invoiceTitle" property="invoiceTitle"></result>
<result column="invoiceType" property="invoiceType"></result>
<result column="contractNo" property="contractNo"></result>
<result column="customerName" property="customerName"></result>
<result column="VIN" property="vinNo"></result>
<result column="invoicingName" property="invoicingName"></result>
<result column="invoiceAmount" property="invoiceAmount"></result>
<result column="createTime" property="createTime"></result>
<result column="invoiceCode" property="invoiceCode"></result>
</resultMap>
<select id="selByExcel" resultMap="selectPageExportVoResultMap">
SELECT DISTINCT
billingState,
transferState,
invoiceTitle,
invoiceType,
contractNo,
customerName,
VIN,
invoicingName,
invoiceAmount,
createTime,
invoiceCode
FROM fin_vehicle_invoice
<where>
${ew.sqlSegment}
</where>
</select>
<resultMap id="getInvoiceDetailsBySidResultMap" type="com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceDetailsVo">
<result column="sid" property="sid"></result>
<result column="billingState" property="billingState"></result>
<result column="billingStateKey" property="billingStateKey"></result>
<result column="invoiceTitle" property="invoiceTitle"></result>
<result column="invoiceType" property="invoiceType"></result>
<result column="invoiceTypeKey" property="invoiceTypeKey"></result>
<result column="contractNo" property="contractNo"></result>
<result column="customerName" property="customerName"></result>
<result column="VIN" property="vinNo"></result>
<result column="invoicingName" property="invoicingName"></result>
<result column="invoiceAmount" property="invoiceAmount"></result>
<result column="createTime" property="createTime"></result>
<result column="invoiceCode" property="invoiceCode"></result>
<result column="filePath" property="filePath"></result>
<result column="name" property="name"></result>
<result column="invoiceNo" property="invoiceNo"></result>
</resultMap>
<select id="getInvoiceDetailsBySid"
resultMap="getInvoiceDetailsBySidResultMap">
SELECT DISTINCT
si.`name` as name,
v.sid as sid,
v.invoiceTitle as invoiceTitle,
v.contractNo as contractNo,
v.customerName as customerName,
v.VIN as VIN,
v.invoiceType as invoiceType,
v.invoiceTypeKey as invoiceTypeKey,
v.invoiceAmount as invoiceAmount,
v.`state` as state,
v.billingState as billingState,
v.billingStateKey as billingStateKey,
v.invoicingName as invoicingName,
v.createTime as createTime,
v.invoiceNo as invoiceNo,
v.invoiceCode as invoiceCode,
v.filePath as filePath
FROM fin_vehicle_invoice AS v
LEFT JOIN anrui_portal.sys_user AS u ON v.createBySid = u.sid
LEFT JOIN anrui_portal.sys_staffinfo AS si ON u.staffSid = si.sid
WHERE v.isDelete = '0' AND v.sid = #{sid}
</select>
</mapper>

228
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java

@ -0,0 +1,228 @@
package com.yxt.anrui.fin.biz.finvehicleinvoice;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.fin.api.finvehicleinvoice.*;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.utils.ExportExcelUtils;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinVehicleInvoiceFeignFallback.java <br/>
* Class: com.yxt.anrui.fin.biz.finvehicleinvoice.FinVehicleInvoiceRest <br/>
* Description: 车辆发票信息. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "车辆发票信息")
@RestController
@RequestMapping("v1/finvehicleinvoice")
public class FinVehicleInvoiceRest implements FinVehicleInvoiceFeign {
@Autowired
private FinVehicleInvoiceService finVehicleInvoiceService;
@Resource
private FileUploadComponent fileUploadComponent;
@Autowired
private HttpServletResponse response;
private List<FinVehicleInvoiceVo> setVo(List<FinVehicleInvoiceVo> list) {
for (FinVehicleInvoiceVo finVehicleInvoiceVo : list) {
if (StringUtils.isNotBlank(finVehicleInvoiceVo.getFilePath())) {
String filePath = finVehicleInvoiceVo.getFilePath();
List<String> filePaths = new ArrayList<>();
String array[] = filePath.split(",");
for (int i = 0; i < array.length; i++) {
String urlPrefix = fileUploadComponent.getUrlPrefix();
filePath = urlPrefix + array[i];
filePaths.add(filePath);
finVehicleInvoiceVo.setFilePaths(filePaths);
}
}
}
return list;
}
@Override
public ResultBean<PagerVo<FinVehicleInvoiceVo>> listPage(@RequestBody PagerQuery<FinVehicleInvoiceQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<FinVehicleInvoiceVo> pv = finVehicleInvoiceService.listPageVo(pq);
List<FinVehicleInvoiceVo> records = pv.getRecords();
List<FinVehicleInvoiceVo> finVehicleInvoiceVos = setVo(records);
pv.setRecords(finVehicleInvoiceVos);
return rb.success().setData(pv);
}
@Override
public ResultBean<List<FinVehicleInvoiceVo>> listAll(@RequestBody FinVehicleInvoiceQuery query) {
ResultBean rb = ResultBean.fireFail();
List<FinVehicleInvoiceVo> list = finVehicleInvoiceService.listAllVo(query);
List<FinVehicleInvoiceVo> finVehicleInvoiceVos = setVo(list);
return rb.success().setData(finVehicleInvoiceVos);
}
@Override
public ResultBean<List<FinVehicleInvoiceVo>> list() {
ResultBean rb = ResultBean.fireFail();
List<FinVehicleInvoiceVo> list = finVehicleInvoiceService.listVo();
List<FinVehicleInvoiceVo> finVehicleInvoiceVos = setVo(list);
return rb.success().setData(finVehicleInvoiceVos);
}
@Override
public ResultBean save(FinVehicleInvoiceDto dto) {
ResultBean rb = ResultBean.fireFail();
finVehicleInvoiceService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
public ResultBean saveOrUpdate(FinVehicleInvoiceDto dto) {
ResultBean rb = ResultBean.fireFail();
String sid = dto.getSid();
if (StringUtils.isNotEmpty(sid)) {
StringBuilder sb = new StringBuilder();
String urlPrefix = fileUploadComponent.getUrlPrefix();
if (null != dto.getFilePaths()) {
for (String filePath : dto.getFilePaths()) {
String[] split = filePath.split(urlPrefix);
String s = split[1];
sb.append(s).append(",");
}
sb.delete(sb.length() - 1, sb.length());
dto.setFilePath(sb.toString());
}
if (StringUtils.isNotBlank(dto.getFilePath())) {
dto.setBillingStateKey("002");
dto.setBillingState("已开票");
}
if (StringUtils.isNotEmpty(dto.getVinNo())) {
String VIN = dto.getVinNo();
dto.setVIN(VIN);
}
finVehicleInvoiceService.updateBySid(dto, sid);
} else {
FinVehicleInvoice finVehicleInvoice = new FinVehicleInvoice();
String sidAdd = finVehicleInvoice.getSid();
BeanUtil.copyProperties(dto, finVehicleInvoice);
finVehicleInvoice.setSid(sidAdd);
StringBuilder sb = new StringBuilder();
String urlPrefix = fileUploadComponent.getUrlPrefix();
if (null != dto.getFilePaths()) {
for (String filePath : dto.getFilePaths()) {
String[] split = filePath.split(urlPrefix);
String s = split[1];
sb.append(s).append(",");
}
sb.delete(sb.length() - 1, sb.length());
finVehicleInvoice.setFilePath(sb.toString());
finVehicleInvoice.setBillingStateKey("002");
finVehicleInvoice.setBillingState("已开票");
}
if (StringUtils.isNotEmpty(dto.getVinNo())) {
String VIN = dto.getVinNo();
finVehicleInvoice.setVIN(VIN);
}
finVehicleInvoiceService.save(finVehicleInvoice);
}
return rb.success();
}
@Override
public ResultBean del(String ids) {
ResultBean rb = ResultBean.fireFail();
finVehicleInvoiceService.delByIds(ids);
return rb.success();
}
@Override
public ResultBean<FinVehicleInvoiceVo> fetch(String id) {
ResultBean rb = ResultBean.fireFail();
FinVehicleInvoiceVo vo = finVehicleInvoiceService.fetchByIdVo(id);
return rb.success().setData(vo);
}
@Override
public ResultBean<FinVehicleInvoiceDetailsVo> fetchBySid(String sid) {
ResultBean rb = ResultBean.fireFail();
FinVehicleInvoiceDetailsVo vo = finVehicleInvoiceService.getInvoiceDetailsBySid(sid);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
if (StringUtils.isNotBlank(vo.getCreateTime())) {
String createTime = vo.getCreateTime();
try {
Date date = sdf.parse(createTime);
String createTimeBySdf = sdf.format(date);
vo.setCreateTime(createTimeBySdf);
} catch (ParseException e) {
e.printStackTrace();
}
}
if (StringUtils.isNotBlank(vo.getFilePath())) {
String filePath = vo.getFilePath();
List<String> filePaths = new ArrayList<>();
String array[] = filePath.split(",");
for (int i = 0; i < array.length; i++) {
String urlPrefix = fileUploadComponent.getUrlPrefix();
filePath = urlPrefix + array[i];
filePaths.add(filePath);
vo.setFilePaths(filePaths);
}
}
return rb.success().setData(vo);
}
@Override
public void exportExcel(FinVehicleInvoiceQuery query) {
//得到所有要导出的数据
List<FinVehicleInvoiceExportVo> invoiceExportVoList = finVehicleInvoiceService.listExcel(query);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for (FinVehicleInvoiceExportVo invoiceExportVo : invoiceExportVoList) {
if (StringUtils.isNotBlank(invoiceExportVo.getCreateTime())) {
String createTime = invoiceExportVo.getCreateTime();
try {
Date date = sdf.parse(createTime);
String createTimeBySdf = sdf.format(date);
invoiceExportVo.setCreateTime(createTimeBySdf);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
//定义导出的excel名字
String excelName = "车辆发票信息列表";
String fileNameURL = "";
try {
fileNameURL = URLEncoder.encode(excelName, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
//导出车辆管理列表
ExportExcelUtils.export(fileNameURL, invoiceExportVoList, FinVehicleInvoiceExportVo.class, response);
}
}

186
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java

@ -0,0 +1,186 @@
package com.yxt.anrui.fin.biz.finvehicleinvoice;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.fin.api.finvehicleinvoice.*;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinVehicleInvoiceService.java <br/>
* Class: com.yxt.anrui.fin.biz.finvehicleinvoice.FinVehicleInvoiceService <br/>
* Description: 车辆发票信息 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-27 09:36:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoiceMapper, FinVehicleInvoice> {
public PagerVo<FinVehicleInvoice> listPage(PagerQuery<FinVehicleInvoiceQuery> pq) {
FinVehicleInvoiceQuery query = pq.getParams();
QueryWrapper<FinVehicleInvoice> qw = createQueryWrapper(query);
IPage<FinVehicleInvoice> page = PagerUtil.queryToPage(pq);
IPage<FinVehicleInvoice> pagging = baseMapper.selectPage(page, qw);
PagerVo<FinVehicleInvoice> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<FinVehicleInvoice> listAll(FinVehicleInvoiceQuery query) {
QueryWrapper<FinVehicleInvoice> qw = createQueryWrapper(query);
return baseMapper.selectList(qw);
}
private QueryWrapper<FinVehicleInvoice> createQueryWrapper(FinVehicleInvoiceQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<FinVehicleInvoice> qw = new QueryWrapper<>();
qw.eq("isDelete", "0");
if (StringUtils.isNotBlank(query.getInvoiceTitle())) {
qw.like("invoiceTitle", query.getInvoiceTitle());
}
if (StringUtils.isNotBlank(query.getInvoiceTypeKey())) {
qw.like("invoiceTypeKey", query.getInvoiceTypeKey());
}
if (StringUtils.isNotBlank(query.getInvoiceType())) {
qw.like("invoiceType", query.getInvoiceType());
}
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.like("contractNo", query.getContractNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("customerName", query.getCustomerName());
}
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("VIN", query.getVinNo());
}
if (StringUtils.isNotBlank(query.getTransferState())) {
qw.eq("transferState", query.getTransferState());
}
if (StringUtils.isNotBlank(query.getBillingState())) {
qw.eq("billingState", query.getBillingState());
}
if (StringUtils.isNotBlank(query.getTransferStateKey())) {
qw.eq("transferStateKey", query.getTransferStateKey());
}
if (StringUtils.isNotBlank(query.getBillingStateKey())) {
qw.eq("billingStateKey", query.getBillingStateKey());
}
if (StringUtils.isNotBlank(query.getInvoicingName())) {
qw.like("invoicingName", query.getInvoicingName());
}
if (StringUtils.isNotBlank(query.getInvoiceCode())) {
qw.like("invoiceCode", query.getInvoiceCode());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.orderByDesc("createTime");
return qw;
}
public PagerVo<FinVehicleInvoiceVo> listPageVo(PagerQuery<FinVehicleInvoiceQuery> pq) {
FinVehicleInvoiceQuery query = pq.getParams();
QueryWrapper<FinVehicleInvoice> qw = createQueryWrapper(query);
IPage<FinVehicleInvoice> page = PagerUtil.queryToPage(pq);
IPage<FinVehicleInvoiceVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<FinVehicleInvoiceVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<FinVehicleInvoiceVo> listAllVo(FinVehicleInvoiceQuery query) {
QueryWrapper<FinVehicleInvoice> qw = createQueryWrapper(query);
return baseMapper.selectListAllVo(qw);
}
public List<FinVehicleInvoiceVo> listVo() {
return baseMapper.selectListVo();
}
public void saveOrUpdateDto(FinVehicleInvoiceDto dto) {
FinVehicleInvoice entity = new FinVehicleInvoice();
dto.fillEntity(entity);
this.saveOrUpdate(entity);
}
public FinVehicleInvoiceVo fetchByIdVo(String id) {
FinVehicleInvoice entity = this.fetchById(id);
FinVehicleInvoiceVo vo = new FinVehicleInvoiceVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
public List<FinVehicleInvoiceExportVo> listExcel(FinVehicleInvoiceQuery query) {
QueryWrapper<FinVehicleInvoiceExportVo> qw = new QueryWrapper<>();
qw.eq("isDelete", "0");
if (StringUtils.isNotBlank(query.getInvoiceTitle())) {
qw.like("invoiceTitle", query.getInvoiceTitle());
}
if (StringUtils.isNotBlank(query.getInvoiceType())) {
qw.like("invoiceType", query.getInvoiceType());
}
if (StringUtils.isNotBlank(query.getInvoiceTypeKey())) {
qw.like("invoiceTypeKey", query.getInvoiceTypeKey());
}
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.like("contractNo", query.getContractNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("customerName", query.getCustomerName());
}
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("VIN", query.getVinNo());
}
if (StringUtils.isNotBlank(query.getTransferState())) {
qw.eq("transferState", query.getTransferState());
}
if (StringUtils.isNotBlank(query.getBillingState())) {
qw.eq("billingState", query.getBillingState());
}
if (StringUtils.isNotBlank(query.getTransferStateKey())) {
qw.eq("transferStateKey", query.getTransferStateKey());
}
if (StringUtils.isNotBlank(query.getBillingStateKey())) {
qw.eq("billingStateKey", query.getBillingStateKey());
}
if (StringUtils.isNotBlank(query.getInvoicingName())) {
qw.like("invoicingName", query.getInvoicingName());
}
if (StringUtils.isNotBlank(query.getInvoiceCode())) {
qw.like("invoiceCode", query.getInvoiceCode());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.orderByDesc("createTime");
List<FinVehicleInvoiceExportVo> invoiceExportVoList = baseMapper.selByExcel(qw);
int id = 1;
for (FinVehicleInvoiceExportVo invoiceExportVo : invoiceExportVoList) {
invoiceExportVo.setRankNo(id);
id = id + 1;
}
return invoiceExportVoList;
}
public FinVehicleInvoiceDetailsVo getInvoiceDetailsBySid(String sid) {
FinVehicleInvoiceDetailsVo vo = baseMapper.getInvoiceDetailsBySid(sid);
return vo;
}
}

2
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/retrieval/VinListVo.java

@ -10,4 +10,6 @@ public class VinListVo implements Vo {
@ApiModelProperty("车架号")
private String vin;
@ApiModelProperty("业务状态")
private String businessState;
}

3
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/order/OrderDetailsVo.java

@ -5,6 +5,7 @@ import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
@ -104,5 +105,7 @@ public class OrderDetailsVo implements Vo {
@ApiModelProperty("是否有金融方案")
private boolean finState;
private List<OrderSolutionListVo> financeForms = new ArrayList<>();
}

24
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/order/OrderSolutionListVo.java

@ -0,0 +1,24 @@
package com.yxt.anrui.terminal.api.autoservice.saleOrders.order;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2023/4/6 15:37
* @Description
*/
@Data
public class OrderSolutionListVo {
@ApiModelProperty(value = "内容")
private String value;
@ApiModelProperty(value = "单元格大小")
private Integer spanSize;
@ApiModelProperty("类型:0 最普通的 1 标题的 2是 加上划线的")
private Integer type;
@ApiModelProperty("是否加粗,true是,false否")
private boolean bold;
}

6
doc/databases/bus-center_tables.sql

@ -264,9 +264,9 @@ CREATE TABLE `bus_delivered_details_discount`
`name` varchar(64) DEFAULT NULL COMMENT '优惠包名称',
`price` varchar(64) DEFAULT NULL COMMENT '价值',
`discountExplain` VARCHAR(64) DEFAULT NULL COMMENT '优惠包项目说明',
`num` VARCHAR(64) DEFAULT NULL COMMENT '数量',
`surplusNum` VARCHAR(64) DEFAULT NULL COMMENT '剩余数量',
`useMessageSid` VARCHAR(64) DEFAULT NULL COMMENT '本次赠送数量',
`num` int(32) DEFAULT NULL COMMENT '数量',
`surplusNum` int(32) DEFAULT NULL COMMENT '剩余数量',
`giveNum` int(32) DEFAULT NULL COMMENT '本次赠送数量',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE = INNODB

38
doc/databases/fin_tables.sql

@ -1088,5 +1088,41 @@ CREATE TABLE `fin_paymentapply_vehicle`
) ENGINE = INNODB
DEFAULT CHARSET = utf8 COMMENT ='付款申请车辆';
-- 车辆发票信息
CREATE TABLE `fin_vehicle_invoice` (
`id` int(32) NOT NULL AUTO_INCREMENT COMMENT 'id',
`sid` varchar(64) NOT NULL COMMENT 'sid',
`lockVersion` int(32) DEFAULT '0' COMMENT '版本锁',
`createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`modifyTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
`isEnable` int(32) DEFAULT '1' COMMENT '是否可用:1可用,0不可用',
`state` int(32) DEFAULT '1',
`isDelete` int(32) DEFAULT '0' COMMENT '是否删除:0未删除,1已删除',
`remarks` varchar(255) DEFAULT NULL COMMENT '备注',
`createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid',
`updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid',
`vehicleSid` varchar(64) DEFAULT NULL COMMENT '车辆sid',
`VIN` varchar(20) DEFAULT NULL COMMENT '车架号',
`vehicleTypeKey` varchar(64) DEFAULT NULL COMMENT '车辆类型Key',
`vehicleType` varchar(64) DEFAULT NULL COMMENT '车辆类型',
`vehiclAmount` decimal(10,2) DEFAULT NULL COMMENT '车辆金额',
`invoiceDate` timestamp NULL DEFAULT NULL COMMENT '最大发票开票日期',
`invoiceNo` varchar(64) DEFAULT NULL COMMENT '发票号',
`invoiceCode` varchar(64) DEFAULT NULL COMMENT '发票代码',
`invoiceAmount` decimal(10,2) DEFAULT NULL COMMENT '车辆发票金额',
`invoiceTypeKey` varchar(32) DEFAULT NULL COMMENT '发票类别Key(01机动车销售统一发票/02增值税专用发票)',
`invoiceType` varchar(64) DEFAULT NULL COMMENT '发票类别',
`invoiceTitle` varchar(64) DEFAULT NULL COMMENT '开票单位',
`transferState` varchar(32) DEFAULT NULL COMMENT '移交状态:001未接收,002已接收,003待移交,004已移交',
`customerName` varchar(64) DEFAULT NULL COMMENT '客户名称',
`invoicingName` varchar(64) DEFAULT NULL COMMENT '开票名称',
`contractNo` varchar(64) DEFAULT NULL COMMENT '合同编号',
`filePath` varchar(255) DEFAULT NULL COMMENT '图片路径',
`billingState` varchar(32) DEFAULT '1' COMMENT '开票状态 001 未开票 002已开票 003作废',
`useOrgSid` varchar(64) DEFAULT NULL,
`billingStateKey` varchar(64) DEFAULT NULL COMMENT '开票状态key',
`transferStateKey` varchar(64) DEFAULT NULL COMMENT '移交状态key',
PRIMARY KEY (`id`) USING BTREE,
KEY `id` (`id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=32 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='车辆发票信息'

Loading…
Cancel
Save