Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 2 years ago
parent
commit
00635dea51
  1. 16
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleoutapply/BaseVehicleOutApplyVoNew.java
  2. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleRest.java
  3. 1
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleoutapply/BaseVehicleOutApplyMapper.xml
  4. 53
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleoutapply/BaseVehicleOutApplyService.java
  5. 20
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/BusDiscountpackageHandoverFeign.java
  6. 19
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/BusDiscountpackageHandoverFeignFallback.java
  7. 19
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/app/AppBusDiscountpackageHandoverVo.java
  8. 52
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/app/AppBusDiscountpackageHandoversDetailVo.java
  9. 29
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/app/AppBusDiscountpackageHandoversListVo.java
  10. 17
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/app/AppUploadPicture.java
  11. 3
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverVos.java
  12. 8
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderVo.java
  13. 20
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/AppBusSalesOrderVo.java
  14. 11
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/OrderQuery.java
  15. 1
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml
  16. 13
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java
  17. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverMapper.java
  18. 32
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverMapper.xml
  19. 19
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverRest.java
  20. 150
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverService.java
  21. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.xml
  22. 10
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
  23. 172
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  24. 1
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicleinformationhandover/BusVehicleInformationHandoverService.java
  25. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceExportVo.java
  26. 8
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java
  27. 7
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java
  28. 28
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java
  29. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedService.java
  30. 26
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java
  31. 58
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml
  32. 55
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java
  33. 81
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java
  34. 66
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java
  35. 35
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowdefinition/FlowDefinitionService.java
  36. 7
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java
  37. 7
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java
  38. 35
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinbound/ScmApplyInboundMapper.java
  39. 103
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinbound/ScmApplyInboundService.java
  40. 2
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppFlowableRecordAndCommentVo.java
  41. 1
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppFlowableRecordVo.java
  42. 1
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppUserVo.java
  43. 16
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/AppBusDiscountpackageHandoversVo.java
  44. 24
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/AppDiscountPackageHandoverFegin.java
  45. 21
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/AppDiscountPackageHandoverFeginFallback.java
  46. 50
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/BusDiscountpackageHandoverInitVo.java
  47. 51
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/BusDiscountpackageHandoversDetailVo.java
  48. 26
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/BusDiscountpackageHandoversListVo.java
  49. 17
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/UploadPicture.java
  50. 7
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppService.java
  51. 26
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/discountPackageHandover/AppDiscountPackageHandoverRest.java
  52. 59
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/discountPackageHandover/AppDiscountPackageHandoverService.java

16
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleoutapply/BaseVehicleOutApplyVoNew.java

@ -50,6 +50,8 @@ public class BaseVehicleOutApplyVoNew implements Vo {
@ApiModelProperty("sid")
private String sid;
@ApiModelProperty("车辆sid")
private String vinSid;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("分公司sid")
@ -110,4 +112,18 @@ public class BaseVehicleOutApplyVoNew implements Vo {
private String vehModelConfigSid;
@ApiModelProperty("车型配置简称")
private String modelName;
@ApiModelProperty("采购系统")
private String purchaseSystemName;
@ApiModelProperty("排产订单编号")
private String orderingNo;
@ApiModelProperty("订单状态")
private String nodeState;
@ApiModelProperty("贴息")
private String factoryDiscount;
@ApiModelProperty("中介返利")
private String distributorPriceAll;
@ApiModelProperty("开票类型")
private String kpType;
}

4
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleRest.java

@ -474,11 +474,11 @@ public class BaseVehicleRest implements BaseVehicleFeign {
scmApplyInboundQueryDto.setMakeListSid(scmApplyInboundVo.getApplicationSid());
scmApplyInboundQueryDto.setMakeListName(scmApplyInboundVo.getApplicationName());
scmApplyInboundQueryDto.setMakeListDate(DateUtil.formatDate(new Date()));
String name = baseVehicleDto.getName();
/* String name = baseVehicleDto.getName();
String[] names = name.split(",");
scmApplyInboundQueryDto.setConfirmSid(names[0]);
scmApplyInboundQueryDto.setConfirmName(names[1]);
scmApplyInboundQueryDto.setConfirmDate(names[2]);
scmApplyInboundQueryDto.setConfirmDate(names[2]);*/
scmApplyInboundQueryDto.setCreateOrgSid(scmApplyInboundVo.getUseOrgSid());
scmApplyInboundQueryDto.setCreateOrgName(scmApplyInboundVo.getUseOrgName());
scmApplyInboundQueryDto.setDownNum("0");

1
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleoutapply/BaseVehicleOutApplyMapper.xml

@ -6,6 +6,7 @@
<select id="selectPageVo" resultType="com.yxt.anrui.base.api.basevehicleoutapply.BaseVehicleOutApplyVoNew">
SELECT
bvo.`sid`,
bvo.vinSid,
bvo.vinNo,
bvoa.`createOrgSid`,
bv.configName AS modelConfig,

53
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleoutapply/BaseVehicleOutApplyService.java

@ -28,10 +28,19 @@ package com.yxt.anrui.base.biz.basevehicleoutapply;
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.base.api.basevehicle.BaseVehicle;
import com.yxt.anrui.base.api.basevehicleout.BaseVehicleOutVo;
import com.yxt.anrui.base.api.basevehicleoutapply.*;
import com.yxt.anrui.base.biz.basevehicle.BaseVehicleService;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign;
import com.yxt.anrui.fin.api.finvehicleinvoice.VehicleInvoiceVo;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
@ -40,6 +49,7 @@ import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.List;
@ -61,6 +71,14 @@ public class BaseVehicleOutApplyService extends MybatisBaseService<BaseVehicleOu
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private BaseVehicleService baseVehicleService;
@Autowired
private BusSalesOrderFeign busSalesOrderFeign;
@Autowired
private LoanSolutionsFeign loanSolutionsFeign;
@Autowired
private FinVehicleInvoiceFeign finVehicleInvoiceFeign;
private QueryWrapper<BaseVehicleOutApply> createQueryWrapper(BaseVehicleOutApplyQueryNew params) {
QueryWrapper<BaseVehicleOutApply> qw = new QueryWrapper<>();
@ -134,6 +152,41 @@ public class BaseVehicleOutApplyService extends MybatisBaseService<BaseVehicleOu
record.setModelName("");
record.setInsideCode("");
}
//采购系统
String vinSid = record.getVinSid();
BaseVehicle baseVehicle = baseVehicleService.fetchBySid(vinSid);
record.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
//排产订单编号
record.setOrderingNo(baseVehicle.getOrderingNo());
//订单状态
record.setNodeState("已办结");
//贴息
String concatNo = record.getConcatNo();
BusSalesOrder busSalesOrder = busSalesOrderFeign.selectOrderByContractNo(concatNo).getData();
if (busSalesOrder != null) {
String saleOrderSid = busSalesOrder.getSid();
if (StringUtils.isNotBlank(saleOrderSid)){
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetailsss(saleOrderSid).getData();
if (solutionsDetailsVo != null) {
record.setFactoryDiscount(solutionsDetailsVo.getFactoryDiscount());
}
}
}
String rebateMoneyOne = record.getRebateMoneyOne();
String rebateMoneyTwo = record.getRebateMoneyTwo();
if (StringUtils.isBlank(rebateMoneyOne)) {
rebateMoneyOne = "0";
}
if (StringUtils.isBlank(rebateMoneyTwo)) {
rebateMoneyTwo = "0";
}
//中介返利
record.setDistributorPriceAll(new BigDecimal(rebateMoneyOne).add(new BigDecimal(rebateMoneyTwo)).toString());
//开票类型
FinVehicleInvoice finVehicleInvoice = finVehicleInvoiceFeign.selectByVinSids(record.getMaterialSid()).getData();
if (finVehicleInvoice != null) {
record.setKpType(finVehicleInvoice.getBusinessState());
}
}
PagerVo<BaseVehicleOutApplyVoNew> p = PagerUtil.pageToVo(pagging, null);
//p.setTotal(countTotal);

20
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/BusDiscountpackageHandoverFeign.java

@ -1,8 +1,6 @@
package com.yxt.anrui.buscenter.api.busdiscountpackagehandover;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverDto;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverQuery;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverVo;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -83,4 +81,20 @@ public interface BusDiscountpackageHandoverFeign {
@PostMapping("/appUploadPicture")
public ResultBean appUploadPicture(@RequestBody AppBusDiscountpackageHandoverDto dto);
@ApiOperation("移动端详情页")
@GetMapping("/getDiscountPackageHandoverDetail/{sid}")
@ResponseBody
ResultBean<AppBusDiscountpackageHandoversDetailVo> getDiscountPackageHandoverDetail(@PathVariable("sid") String sid);
@ApiOperation("移动端交接操作")
@PostMapping("/confirmPackageHandover")
@ResponseBody
public ResultBean confirmPackageHandover(@RequestBody AppBusDiscountpackageHandoverDto dto);
@ApiOperation("保存优惠包交接照片")
@PutMapping("/saveConfirmPackageHandoverImg")
@ResponseBody
public ResultBean<List<String>> saveConfirmPackageHandoverImg(@RequestBody AppUploadPicture uploadPicture);
}

19
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/BusDiscountpackageHandoverFeignFallback.java

@ -1,8 +1,6 @@
package com.yxt.anrui.buscenter.api.busdiscountpackagehandover;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverDto;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverQuery;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverVo;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -81,5 +79,20 @@ public class BusDiscountpackageHandoverFeignFallback implements BusDiscountpacka
return null;
}
@Override
public ResultBean<AppBusDiscountpackageHandoversDetailVo> getDiscountPackageHandoverDetail(String sid) {
return null;
}
@Override
public ResultBean confirmPackageHandover(AppBusDiscountpackageHandoverDto dto) {
return null;
}
@Override
public ResultBean<List<String>> saveConfirmPackageHandoverImg(AppUploadPicture uploadPicture) {
return null;
}
}

19
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/app/AppBusDiscountpackageHandoverVo.java

@ -33,13 +33,16 @@ public class AppBusDiscountpackageHandoverVo implements Vo {
private String model; // 车型名称
@ApiModelProperty("车辆台数")
private String carNum; // 车辆台数
@ApiModelProperty("优惠包数量")
private String discountNum; // 优惠包数量
@ApiModelProperty("优惠包总价值")
private String price; // 接收人电话
@ApiModelProperty("办理显示")
private Boolean showHandleBtn; // 办理显示
@ApiModelProperty("上传显示")
private Boolean showUploadBtn; // 上传显示
@ApiModelProperty("移交人")
private String receiveName; // 接收人姓名
@ApiModelProperty("移交人电话")
private String receivePhone; // 接收人电话
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("接收时间")
private Date receiveDate; // 接收时间
@ApiModelProperty("待交接显示")
private Boolean showHandleBtn; // 待交接显示
@ApiModelProperty("已交接显示")
private Boolean showUploadBtn; // 已交接显示
}

52
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/app/AppBusDiscountpackageHandoversDetailVo.java

@ -0,0 +1,52 @@
package com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/19 11:15
*/
@Data
public class AppBusDiscountpackageHandoversDetailVo implements Vo {
private String sid;
private String orgPath;
@ApiModelProperty("userSid")
private String userSid; // userSid
@ApiModelProperty("合同编号")
private String contractId; // 合同编号
@ApiModelProperty("车型名称")
private String model; // 车型名称
@ApiModelProperty("车辆台数")
private String carNumber; // 车辆台数
@ApiModelProperty("车架号")
private String vins; // 车架号
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("接收人姓名")
private String recName; // 接收人姓名
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("接收时间")
private Date recTime; // 接收时间
@ApiModelProperty("接收备注")
private String remarks; // 接收备注
@ApiModelProperty("移交备注")
private String remarks2; // 移交备注
@ApiModelProperty("优惠包交接优惠包列表")
private List<AppBusDiscountpackageHandoversListVo> discountPackageList;
@ApiModelProperty("业务关联附件表")
private List<String> busFiles = new ArrayList<>();
private String modelOrgPath; //
private String modelSid; //
private String configSid; //
private String saleOrderSid; //
}

29
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/app/AppBusDiscountpackageHandoversListVo.java

@ -0,0 +1,29 @@
package com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
* @author Administrator
* @description
* @date 2023/6/19 11:44
*/
@Data
public class AppBusDiscountpackageHandoversListVo implements Vo {
@ApiModelProperty("sid")
private String discountSid; // sid
@ApiModelProperty("价值")
private String price; // 价值
@ApiModelProperty("数量")
private String number; // 数量
@ApiModelProperty("优惠包说明")
private String explain; // 优惠包说明
@ApiModelProperty("总价值")
private String totalPrice; // 总价值
@ApiModelProperty("优惠包名称")
private String discountName; // 优惠包名
}

17
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/app/AppUploadPicture.java

@ -0,0 +1,17 @@
package com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/19 14:39
*/
@Data
public class AppUploadPicture {
private String sid;
private List<String> imgs = new ArrayList<>();
}

3
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverVos.java

@ -39,5 +39,6 @@ public class BusHandoverVos implements Vo {
private Boolean showGcDownload;
@ApiModelProperty("挂车确认按钮")
private boolean showGcBtn2;
private String procDefId;
private String procInstId;
}

8
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderVo.java

@ -76,12 +76,4 @@ public class BusSalesOrderVo implements Vo {
private String depositAll;
@ApiModelProperty(value = "是否保险")
private String isInsurance;
//销售部门
//申请人
//申请日期
//车型
//提车方式
}

20
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/AppBusSalesOrderVo.java

@ -153,6 +153,7 @@ public class AppBusSalesOrderVo implements Vo {
@ApiModelProperty(value = "合同编号")
private String contractId;
@ApiModelProperty("销售顾问")
private String saler;
@ApiModelProperty("是否显示打印按钮")
private boolean printOrderBtn;
@ -166,4 +167,23 @@ public class AppBusSalesOrderVo implements Vo {
private String endTime;
@ApiModelProperty("车架号显示")
private String vinNo;
@ApiModelProperty("分公司sid")
private String useOrgSid;
@ApiModelProperty("分公司名称")
private String useOrgName;
@ApiModelProperty("采购系统")
private String purchaseSystemName;
@ApiModelProperty("车型小名")
private String modelName;
@ApiModelProperty("销售部门")
private String orgName;
@ApiModelProperty("采购订单sid")
private String linkSid;
@ApiModelProperty("排产订单编号")
private String orderingNo;
@ApiModelProperty("贴息")
private String factoryDiscount;
@ApiModelProperty("中介返利")
private String distributorPriceAll;
}

11
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/order/OrderQuery.java

@ -35,4 +35,15 @@ public class OrderQuery implements Query {
private String createByDept;
@ApiModelProperty("销售类型")
private String saleTypeKey;
@ApiModelProperty("销售人员")
private String saler;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("采购系统")
private String purchaseSystemName;
@ApiModelProperty("销售部门")
private String orgName;
@ApiModelProperty("中介返利")
private String distributorPriceAll;
}

1
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml

@ -16,6 +16,7 @@
bd.modelName,
bd.billNo,
bd.paymentMethod,
bd.createBySid,
(select count(*) from bus_delivered_apply_details bad where bad.applySid = bd.sid) as num
FROM bus_delivered_apply bd
<where>

13
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java

@ -87,6 +87,8 @@ import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingFeign;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedFeign;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveInvoiceVo;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveSeleteVo;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign;
import com.yxt.anrui.fin.api.finvehicleinvoice.InvoiceVo;
import com.yxt.anrui.flowable.api.flow.FlowProcessMapQuery;
import com.yxt.anrui.flowable.api.flow.FlowableFeign;
@ -200,6 +202,8 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
private BusHandoverPrepareService busHandoverPrepareService;
@Autowired
private LoanSolutionsFeign loanSolutionsFeign;
@Autowired
private FinVehicleInvoiceFeign finVehicleInvoiceFeign;
/**
* 构造出库申请的查询条件
@ -803,6 +807,15 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
log.error("推送数据失败=========================" + e.getMessage());
return rb.setMsg("推送数据失败");
}
//根据车辆sid和合同编码修改开票管理中对应的领票状态为是
List<BusDeliveredApplyDetails> busDeliveredApplyDetails = busDeliveredApplyDetailsService.selectByApplySid(busDeliveredApply.getSid());
for (BusDeliveredApplyDetails busDeliveredApplyDetail : busDeliveredApplyDetails) {
String vinSid = busDeliveredApplyDetail.getVinSid();
FinVehicleInvoice finVehicleInvoice = finVehicleInvoiceFeign.selectByVinAndContractNo(vinSid, busDeliveredApply.getContractNo()).getData();
if (StringUtils.isNotBlank(finVehicleInvoice.getSid())){
finVehicleInvoiceFeign.updateBySid(finVehicleInvoice.getSid());
}
}
} else {
if ("重新提交".equals(bv.getComment())) {
//将待出库中的车辆更改状态为出库申请0

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverMapper.java

@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverVo;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.BusDiscountpackageHandover;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.BusDiscountpackageHandoverVo;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoversDetailVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -23,6 +24,7 @@ public interface BusDiscountpackageHandoverMapper extends BaseMapper<BusDiscount
IPage<AppBusDiscountpackageHandoverVo> selectAppPageVo(IPage<BusDiscountpackageHandover> page, @Param(Constants.WRAPPER) QueryWrapper<BusDiscountpackageHandover> qw);
AppBusDiscountpackageHandoversDetailVo getDiscountPackageHandoverDetail(String sid);
}

32
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverMapper.xml

@ -34,22 +34,30 @@
customerName,
vehModel AS model,
vehCount AS carNum,
recName,
recPhone,
recTime,
CASE
`state`
WHEN 1 THEN
'待准备'
WHEN 2 THEN
'待交接'
WHEN 3 THEN
'已交接'
END AS nodeState
recTime as receiveDate,
transferName as receiveName,
transferPhone as receivePhone,
transferStateValue as nodeState
FROM
bus_discountpackage_handover
<where>${ew.sqlSegment}</where>
</select>
<select id="getDiscountPackageHandoverDetail"
resultType="com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoversDetailVo">
SELECT DISTINCT sid,
orgSidPath AS orgPath,
contractNo AS contractId,
customerName,
vehModel AS model,
vins,
vehCount AS carNumber,
remarks,
transferRemarks as remarks2,
recTime,
recName
FROM bus_discountpackage_handover
where sid = #{sid}
</select>
</mapper>

19
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverRest.java

@ -1,9 +1,7 @@
package com.yxt.anrui.buscenter.biz.busdiscountpackagehandover;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.*;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverDto;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverQuery;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverVo;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -118,4 +116,19 @@ public class BusDiscountpackageHandoverRest implements BusDiscountpackageHandove
busDiscountpackageHandoverService.appUploadPicture(dto);
return rb.success();
}
@Override
public ResultBean<AppBusDiscountpackageHandoversDetailVo> getDiscountPackageHandoverDetail(String sid) {
return busDiscountpackageHandoverService.getDiscountPackageHandoverDetail(sid);
}
@Override
public ResultBean confirmPackageHandover(AppBusDiscountpackageHandoverDto dto) {
return busDiscountpackageHandoverService.confirmPackageHandover(dto);
}
@Override
public ResultBean<List<String>> saveConfirmPackageHandoverImg(AppUploadPicture uploadPicture) {
return busDiscountpackageHandoverService.saveConfirmPackageHandoverImg(uploadPicture);
}
}

150
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverService.java

@ -8,14 +8,14 @@ import com.yxt.anrui.base.api.commoncontract.CommonContractFeign;
import com.yxt.anrui.buscenter.api.buscenterfile.BuscenterFile;
import com.yxt.anrui.buscenter.api.buscenterfile.BuscenterFileEnum;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.*;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverDto;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverListDto;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverQuery;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverVo;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.*;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandoverlist.BusDiscountpackageHandoverList;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandoverlist.BusDiscountpackageHandoverListDto;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.app.AppBusSalesOrderDiscountListVo;
import com.yxt.anrui.buscenter.biz.buscenterfile.BuscenterFileService;
import com.yxt.anrui.buscenter.biz.busdiscountpackagehandoverlist.BusDiscountpackageHandoverListService;
import com.yxt.anrui.buscenter.biz.bussalesorder.BusSalesOrderService;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingVo;
import com.yxt.anrui.portal.api.sysrole.SysRoleFeign;
import com.yxt.anrui.portal.api.sysrole.SysRoleVo;
@ -45,6 +45,7 @@ import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author Administrator
@ -72,6 +73,9 @@ public class BusDiscountpackageHandoverService extends MybatisBaseService<BusDis
private SysUserFeign sysUserFeign;
@Autowired
private SysStaffinfoFeign sysStaffinfoFeign;
@Autowired
private BusSalesOrderService busSalesOrderService;
/**
* 筛选条件
@ -172,7 +176,7 @@ public class BusDiscountpackageHandoverService extends MybatisBaseService<BusDis
//=======================
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgSidPath());
privilegeQuery.setMenuSid(query.getMenuSid());
//privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
@ -597,11 +601,14 @@ public class BusDiscountpackageHandoverService extends MybatisBaseService<BusDis
}
if (StringUtils.isNotBlank(query.getType())) {
if (query.getType().equals("2")) {
qw.eq("state", 3);
qw.eq("transferStateKey", "004");
} else if (query.getType().equals("1")) {
qw.ne("state", 3);
qw.eq("transferStateKey", "003");
}
}
if (StringUtils.isBlank(query.getType())) {
qw.ne("transferStateKey", "002");
}
if (StringUtils.isNotBlank(query.getName())) {
qw.and(wrapper -> wrapper.like("contractNo", query.getName()).or().like("customerName", query.getName()));
}
@ -633,12 +640,12 @@ public class BusDiscountpackageHandoverService extends MybatisBaseService<BusDis
}
}
}
if (("待交接".equals(record.getNodeState()))) {
if (("移交中".equals(record.getNodeState()))) {
record.setShowHandleBtn(true);
} else {
record.setShowHandleBtn(false);
}
if (("已交".equals(record.getNodeState()))) {
if (("已交".equals(record.getNodeState()))) {
//查询有没有上传的图片
List<BuscenterFile> buscenterFiles = buscenterFileService.selectByLinkSid(record.getSid(), BuscenterFileEnum.DISCOUNTPACKAGE_HANDOVER.getAttachType());
if (buscenterFiles.size() > 0) {
@ -646,25 +653,26 @@ public class BusDiscountpackageHandoverService extends MybatisBaseService<BusDis
} else {
record.setShowUploadBtn(true);
}
} else {
record.setShowUploadBtn(false);
}
record.setShowUploadBtn(false);
}
List<BusDiscountpackageHandoverList> listByMainSid = busDiscountpackageHandoverListService.findListByMainSid(record.getSid());
if (listByMainSid.size() > 0) {
BigDecimal price = new BigDecimal(0);
int discountNum = 0;
for (BusDiscountpackageHandoverList handoverList : listByMainSid) {
if (null != handoverList) {
//优惠包数量
String number = handoverList.getNumber();
discountNum = discountNum + Integer.valueOf(number);
BigDecimal totalPrice = handoverList.getTotalPrice();
price = price.add(totalPrice);
}
}
record.setDiscountNum(String.valueOf(discountNum));
record.setPrice(String.valueOf(price));
}
// List<BusDiscountpackageHandoverList> listByMainSid = busDiscountpackageHandoverListService.findListByMainSid(record.getSid());
// if (listByMainSid.size() > 0) {
// BigDecimal price = new BigDecimal(0);
// int discountNum = 0;
// for (BusDiscountpackageHandoverList handoverList : listByMainSid) {
// if (null != handoverList) {
// //优惠包数量
// String number = handoverList.getNumber();
// discountNum = discountNum + Integer.valueOf(number);
// BigDecimal totalPrice = handoverList.getTotalPrice();
// price = price.add(totalPrice);
// }
// }
// record.setDiscountNum(String.valueOf(discountNum));
// record.setPrice(String.valueOf(price));
// }
}
}
PagerVo<AppBusDiscountpackageHandoverVo> p = PagerUtil.pageToVo(pagging, null);
@ -802,4 +810,94 @@ public class BusDiscountpackageHandoverService extends MybatisBaseService<BusDis
}
}
}
/**
* 移动端详情
*
* @param sid
* @return
*/
public ResultBean<AppBusDiscountpackageHandoversDetailVo> getDiscountPackageHandoverDetail(String sid) {
ResultBean<AppBusDiscountpackageHandoversDetailVo> rb = ResultBean.fireFail();
AppBusDiscountpackageHandoversDetailVo vo = baseMapper.getDiscountPackageHandoverDetail(sid);
List<AppBusDiscountpackageHandoversListVo> listVos = new ArrayList<>();
List<String> filePath = new ArrayList<>();
if (null != vo) {
List<BusDiscountpackageHandoverList> listByMainSid = busDiscountpackageHandoverListService.findListByMainSid(sid);
listByMainSid.removeAll(Collections.singleton(null));
if (!listByMainSid.isEmpty()) {
for (BusDiscountpackageHandoverList handoverList : listByMainSid) {
AppBusDiscountpackageHandoversListVo handoversListVo = new AppBusDiscountpackageHandoversListVo();
handoversListVo.setDiscountSid(sid);
handoversListVo.setExplain(handoverList.getPackageExplain());
handoversListVo.setNumber(handoverList.getNumber());
handoversListVo.setTotalPrice(String.valueOf(handoverList.getTotalPrice()));
handoversListVo.setPrice(String.valueOf(handoverList.getPrice()));
handoversListVo.setDiscountName(handoverList.getDiscountName());
listVos.add(handoversListVo);
}
}
vo.setDiscountPackageList(listVos);
List<BuscenterFile> fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.DISCOUNTPACKAGE_HANDOVER.getAttachType());
fileList.removeAll(Collections.singleton(null));
if (!fileList.isEmpty()) {
List<String> handoverImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).
collect(Collectors.toList());
vo.setBusFiles(handoverImages);
}
if (StringUtils.isNotBlank(vo.getContractId())) {
CommonContract contract = commonContractFeign.selectByNo(vo.getContractId()).getData();
if (null != contract) {
if (StringUtils.isNotBlank(contract.getBusSid())) {
vo.setSaleOrderSid(contract.getBusSid());
}
if (StringUtils.isNotBlank(contract.getModelSid())) {
vo.setModelSid(contract.getModelSid());
}
if (StringUtils.isNotBlank(contract.getConfigSid())) {
vo.setConfigSid(contract.getConfigSid());
}
}
}
if (StringUtils.isNotBlank(vo.getSaleOrderSid())) {
BusSalesOrderDetailsVo orderDetailsVo = busSalesOrderService.fetchDetailsVoBySid(vo.getSaleOrderSid()).getData();
if (null != orderDetailsVo) {
String orgSidPath = orderDetailsVo.getOrgSidPath();
vo.setModelOrgPath(orgSidPath);
}
}
}
return rb.success().setData(vo);
}
public ResultBean confirmPackageHandover(AppBusDiscountpackageHandoverDto dto) {
ResultBean rb = ResultBean.fireFail();
BusDiscountpackageHandover entity = fetchBySid(dto.getSid());
if (StringUtils.isNotBlank(dto.getRemarks())) {
entity.setRemarks(dto.getRemarks());
}
entity.setRecTime(new Date());
entity.setTransferStateValue("已移交");
entity.setTransferStateKey("004");
baseMapper.updateById(entity);
return rb.success();
}
public ResultBean<List<String>> saveConfirmPackageHandoverImg(AppUploadPicture uploadPicture) {
ResultBean rb = ResultBean.fireFail();
buscenterFileService.delByLinkSidOrType(uploadPicture.getSid(), BuscenterFileEnum.DISCOUNTPACKAGE_HANDOVER.getAttachType());
List<String> imgs = uploadPicture.getImgs();
if (!imgs.isEmpty()) {
buscenterFileService.saveAll(uploadPicture.getSid(), imgs, BuscenterFileEnum.DISCOUNTPACKAGE_HANDOVER.getAttachType());
}
List<BuscenterFile> fileList = buscenterFileService.selectByLinkSid(uploadPicture.getSid(), BuscenterFileEnum.DISCOUNTPACKAGE_HANDOVER.getAttachType());
fileList.removeAll(Collections.singleton(null));
List<String> handoverImages = new ArrayList<>();
if (!fileList.isEmpty()) {
handoverImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).
collect(Collectors.toList());
}
return rb.success().setData(handoverImages);
}
}

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.xml

@ -129,7 +129,9 @@
bh.carNum,
bh.nodeState,
bh.filePath,
bh.trailerFilePath
bh.trailerFilePath,
bh.procDefId,
bh.procInstId
from bus_handover bh
<where>
${ew.sqlSegment}

10
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml

@ -64,11 +64,19 @@
bo.contractNo as contractId,
bo.staffName as saler,
bo.procDefId,
bo.procInstId
bo.procInstId,
bo.useOrgSid,
bo.purchaseSystemName,
bo.orgName,
bm.modelName,
bsvo.linkSid,
bsos.distributorPriceAll
FROM bus_sales_order bo
left join bus_sales_order_price bp on bp.salesOrderSid = bo.sid
left join bus_sales_order_deposit bd on bd.salesOrderSid = bo.sid
left join bus_sales_order_model bm on bm.salesOrderSid = bo.sid
left join bus_sales_vehicle_order bsvo on bsvo.salesOrderSid = bo.sid
left join bus_sales_order_submit bsos on bsos.salesOrderSid = bo.sid
<where>
${ew.sqlSegment}
<if test="name != null and name != ''">

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

@ -1458,66 +1458,18 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return rb.setMsg("请填写意见");
}
BusSalesOrder busSalesOrder = fetchBySid(query.getBusinessSid());
String businessTaskId = busSalesOrder.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if(query.getUserSid().equals(busSalesOrder.getCreateBySid())){
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
//再加回来
BusSalesOrderDeposit busSalesOrderDeposit = busSalesOrderDepositService.selectByOrderSid(query.getBusinessSid());
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
//根据订金sid查询虚拟订单和订金的关联
List<AppBusSalesOrderDepositListVo> listVos = busDepositFictitiousService.getList(busSalesOrderDeposit.getSid());
listVos.removeAll(Collections.singleton(null));
if (!listVos.isEmpty()) {
for (AppBusSalesOrderDepositListVo listVo : listVos) {
//添加负的记录
BusDepositFictitious busDepositFictitious = new BusDepositFictitious();
BeanUtil.copyProperties(listVo, busDepositFictitious, "sid");
busDepositFictitious.setPrice(new BigDecimal(listVo.getPayMoney()).negate());
busDepositFictitious.setDepositSid(busSalesOrderDeposit.getSid());
busDepositFictitious.setDepositBillNo(listVo.getVirtualOrderId());
busDepositFictitious.setDepositBillSid(listVo.getVirtualOrderSid());
busDepositFictitiousService.save(busDepositFictitious);
//查询该虚拟订金单已使用的订金值
String depositAll = busDepositFictitiousService.selectDeposit(listVo.getVirtualOrderId());
//更新该虚拟订单的订金值
busDepositService.updateDeposit(depositAll, listVo.getVirtualOrderId());
}
}
}
ResultBean<AppOrderDetailsVo> details = getSaleOrderDetails(query.getBusinessSid());
AppOrderDetailsVo vo = details.getData();
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getRemarks().equals(vo.getOrderType())) {
//更新已选择的车架号的状态为未锁定
List<String> list = busSalesOrderVehicleService.selectVehicleSid(query.getBusinessSid());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
busMainDepositUpdateQuery.setVinSidList(list);
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.UN_LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.UN_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getRemarks().equals(vo.getOrderType())) {
List<BusSalesVehicleOrder> list = busSalesVehicleOrderService.selectLinkSid(query.getBusinessSid());
for (BusSalesVehicleOrder b : list) {
String linkSid = b.getLinkSid();
int count = b.getUsingNum();
//查询该采购订单的已使用台数
int num = busSalesVehicleOrderService.selectByLinkSid1(linkSid);
//更新
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(num));
}
}
return rb.success().setData(resultBean.getData());
}else{
if (businessTaskId.equals(query.getTaskId())) {
if(busSalesOrder == null){
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setMsg("该销售订单不存在,流程已终止");
}else{
String businessTaskId = busSalesOrder.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if(query.getUserSid().equals(busSalesOrder.getCreateBySid())){
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
@ -1573,9 +1525,67 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
return rb.success().setData(resultBean.getData());
}else{
if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
//再加回来
BusSalesOrderDeposit busSalesOrderDeposit = busSalesOrderDepositService.selectByOrderSid(query.getBusinessSid());
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
//根据订金sid查询虚拟订单和订金的关联
List<AppBusSalesOrderDepositListVo> listVos = busDepositFictitiousService.getList(busSalesOrderDeposit.getSid());
listVos.removeAll(Collections.singleton(null));
if (!listVos.isEmpty()) {
for (AppBusSalesOrderDepositListVo listVo : listVos) {
//添加负的记录
BusDepositFictitious busDepositFictitious = new BusDepositFictitious();
BeanUtil.copyProperties(listVo, busDepositFictitious, "sid");
busDepositFictitious.setPrice(new BigDecimal(listVo.getPayMoney()).negate());
busDepositFictitious.setDepositSid(busSalesOrderDeposit.getSid());
busDepositFictitious.setDepositBillNo(listVo.getVirtualOrderId());
busDepositFictitious.setDepositBillSid(listVo.getVirtualOrderSid());
busDepositFictitiousService.save(busDepositFictitious);
//查询该虚拟订金单已使用的订金值
String depositAll = busDepositFictitiousService.selectDeposit(listVo.getVirtualOrderId());
//更新该虚拟订单的订金值
busDepositService.updateDeposit(depositAll, listVo.getVirtualOrderId());
}
}
}
ResultBean<AppOrderDetailsVo> details = getSaleOrderDetails(query.getBusinessSid());
AppOrderDetailsVo vo = details.getData();
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getRemarks().equals(vo.getOrderType())) {
//更新已选择的车架号的状态为未锁定
List<String> list = busSalesOrderVehicleService.selectVehicleSid(query.getBusinessSid());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
busMainDepositUpdateQuery.setVinSidList(list);
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.UN_LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.UN_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getRemarks().equals(vo.getOrderType())) {
List<BusSalesVehicleOrder> list = busSalesVehicleOrderService.selectLinkSid(query.getBusinessSid());
for (BusSalesVehicleOrder b : list) {
String linkSid = b.getLinkSid();
int count = b.getUsingNum();
//查询该采购订单的已使用台数
int num = busSalesVehicleOrderService.selectByLinkSid1(linkSid);
//更新
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(num));
}
}
return rb.success().setData(resultBean.getData());
}
}
}
}
}
return rb.setMsg("操作失败!提交的数据不一致!");
}
@ -5770,7 +5780,26 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if(StringUtils.isNotBlank(pagerQuery.getSaleTypeKey())){
qw.eq("bo.payTypeKey",pagerQuery.getSaleTypeKey());
}
//销售人员
if (StringUtils.isNotBlank(pagerQuery.getSaler())){
qw.like("bo.staffName",pagerQuery.getSaler());
}
//客户名称
if (StringUtils.isNotBlank(pagerQuery.getCustomerName())){
qw.like("bo.customerName",pagerQuery.getCustomerName());
}
//采购系统
if (StringUtils.isNotBlank(pagerQuery.getPurchaseSystemName())){
qw.like("bo.purchaseSystemName",pagerQuery.getPurchaseSystemName());
}
//销售部门
if (StringUtils.isNotBlank(pagerQuery.getOrgName())){
qw.like("bo.orgName",pagerQuery.getOrgName());
}
//中介返利
if (StringUtils.isNotBlank(pagerQuery.getDistributorPriceAll())){
qw.like("bsos.distributorPriceAll",pagerQuery.getDistributorPriceAll());
}
String typeState = "getSaleOrdersByOrgPath";//查询接口的标识
IPage<AppBusSalesOrderVo> pagging = baseMapper.getSaleOrders(page, qw, pq.getParams().getName(), typeState);
for (AppBusSalesOrderVo record : pagging.getRecords()) {
@ -5791,10 +5820,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//需补交订金
if (StringUtils.isNotBlank(record.getMakeUpDeposit())) {
depositBig = new BigDecimal(record.getDepositAll()).subtract(new BigDecimal(record.getMakeUpDeposit()));
} else {
depositBig = new BigDecimal(record.getDepositAll());
}
//将已交订金转为string
deposit = depositBig.toString();
@ -5831,7 +5858,22 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
record.setEndTime(flowSelectVo.getEndTime());
}
}
//分公司名称
String useOrgSid = record.getUseOrgSid();
String useOrgName = sysOrganizationFeign.fetchBySid(useOrgSid).getData().getName();
record.setUseOrgName(useOrgName);
//排产订单编号
String linkSid = record.getLinkSid();
if (StringUtils.isNotBlank(linkSid)){
BusVehicleOrderVo busVehicleOrderVo = busVehicleOrderFeign.fetchBySid(linkSid).getData();
record.setOrderingNo(busVehicleOrderVo.getApplicationCode());
}
//贴息
String saleOrderSid = record.getSaleOrderSid();
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetailsss(saleOrderSid).getData();
if (solutionsDetailsVo != null){
record.setFactoryDiscount(solutionsDetailsVo.getFactoryDiscount());
}
}
PagerVo<AppBusSalesOrderVo> p = PagerUtil.pageToVo(pagging, null);
return p;

1
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicleinformationhandover/BusVehicleInformationHandoverService.java

@ -262,7 +262,6 @@ public class BusVehicleInformationHandoverService extends MybatisBaseService<Bus
}
}
}
}
}
PagerVo<BusVehicleInformationHandoverVo> p = PagerUtil.pageToVo(pagging, null);

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

@ -1,4 +1,5 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import com.yxt.common.core.utils.ExportEntityMap;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
@ -20,6 +21,8 @@ public class FinVehicleInvoiceExportVo implements Vo {
private String transferState;
@ExportEntityMap(CnName = "业务状态", EnName = "businessState")
private String businessState;
@ExportEntityMap(CnName = "是否领票", EnName = "isTakeTicket")
private String isTakeTicket;
@ExportEntityMap(CnName = "开票单位", EnName = "invoiceTitle")
private String invoiceTitle;
@ExportEntityMap(CnName = "开票类型", EnName = "invoiceType")
@ -38,5 +41,7 @@ public class FinVehicleInvoiceExportVo implements Vo {
private String createTime;
@ExportEntityMap(CnName = "发票代码", EnName = "invoiceCode")
private String invoiceCode;
@ExportEntityMap(CnName = "发票号", EnName = "invoiceNo")
private String invoiceNo;
}

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

@ -66,7 +66,7 @@ public interface FinVehicleInvoiceFeign {
@PostMapping("/exportExcel")
@ApiOperation(value = "车辆发票信息列表导出")
@ResponseBody
public void exportExcel(@RequestBody FinVehicleInvoiceQuery query);
public void exportExcel(@RequestBody FinVehicleInvoiceQuery pq);
@ApiOperation("作废")
@PostMapping("/cancellation")
@ -81,6 +81,10 @@ public interface FinVehicleInvoiceFeign {
@PostMapping("/updateBybillingSid")
public ResultBean updateBybillingSid(@RequestParam("billingSid") String billingSid);
@ApiOperation("根据开票管理sid修改是否领票")
@PostMapping("/updateBySid")
public ResultBean updateBySid(@RequestParam("sid") String sid);
@ApiOperation("根据车辆sid获取发票信息")
@GetMapping("/selectByVinSid")
ResultBean<VehicleInvoiceVo> selectByVinSid(@RequestParam("vinSid") String vinSid);
@ -113,4 +117,6 @@ public interface FinVehicleInvoiceFeign {
@GetMapping("/selectByVinAndContractNo")
@ResponseBody
ResultBean<FinVehicleInvoice> selectByVinAndContractNo(@RequestParam("vinSid") String vinSid, @RequestParam("contractNo") String contractNo);
}

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

@ -70,7 +70,7 @@ public class FinVehicleInvoiceFeignFallback implements FinVehicleInvoiceFeign {
}
@Override
public void exportExcel(FinVehicleInvoiceQuery query) {
public void exportExcel(FinVehicleInvoiceQuery pq) {
}
@ -89,6 +89,11 @@ public class FinVehicleInvoiceFeignFallback implements FinVehicleInvoiceFeign {
return null;
}
@Override
public ResultBean updateBySid(String sid) {
return null;
}
@Override
public ResultBean<VehicleInvoiceVo> selectByVinSid(String vinSid) {
return null;

28
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java

@ -32,7 +32,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basedistributor.BaseDistributorFeign;
import com.yxt.anrui.base.api.baseinternalpurchase.flow.GetNodeVo;
import com.yxt.anrui.base.api.basemiddleman.BaseMiddlemanDetailsVo;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign;
import com.yxt.anrui.base.api.basetrailer.TrailerVo;
@ -41,7 +40,6 @@ import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicleappendix.BaseVehicleAppendixFeign;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateFeign;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateVo;
import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyVo;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixFeign;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo;
import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum;
@ -53,14 +51,8 @@ import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.BusArrearsCarryVehicleApplyFeign;
import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.BusArrearsCarryVehicleApplyVo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFL;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderSourceLCVo;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDiscountListVo;
import com.yxt.anrui.buscenter.api.bussalesorderinsurance.BusSalesOrderInsuranceDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesordermodel.BusSalesOrderModel;
import com.yxt.anrui.buscenter.api.bussalesorderprice.BusSalesOrderPrice;
import com.yxt.anrui.buscenter.api.bussalesordersubmit.BusSalesOrderSubmit;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
@ -95,17 +87,14 @@ import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.flow.PCHistTaskListAndCommentList;
import com.yxt.anrui.portal.api.sysorganization.SysOrganization;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.portal.api.sysuser.UserRoleQuery;
import com.yxt.anrui.riskcenter.api.loansolutions.app.SolutionsDetailsVo;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.Base64;
@ -136,7 +125,6 @@ import java.net.URLEncoder;
import java.util.*;
import java.util.stream.Collectors;
import static com.yxt.anrui.fin.biz.finpaymentrecord.FinPaymentrecordService.image2Base64;
import static java.util.Comparator.comparing;
/**
@ -1014,7 +1002,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
FinBillApplication finBillApplication = fetchBySid(query.getBusinessSid());
String businessTaskId = finBillApplication.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if (businessTaskId.equals(query.getTaskId())) {
if(query.getUserSid().equals(finBillApplication.getCreateBySid())){
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
@ -1025,7 +1013,21 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
updateFlowFiled(map);
finBillVehicleService.updateByMainSid(finBillApplication.getSid());
return rb.success().setData(resultBean.getData());
}else{
if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
finBillVehicleService.updateByMainSid(finBillApplication.getSid());
return rb.success().setData(resultBean.getData());
}
}
}
return rb.setMsg("操作失败!提交的数据不一致!");
}

2
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedService.java

@ -874,7 +874,7 @@ public class FinUncollectedReceivablesDetailedService extends MybatisBaseService
for (int i = 0; i < receiveSeleteVoList.size(); i++) {
ReceiveSeleteVo receiveSeleteVo = receiveSeleteVoList.get(i);
BigDecimal subscriptionMoneyAll = BigDecimal.ZERO;
if (StringUtils.isNotBlank(receiveSeleteVo.getSubscriptionMoneyAll())) {
if(StringUtils.isNotBlank(receiveSeleteVo.getSubscriptionMoneyAll())){
subscriptionMoneyAll = new BigDecimal(receiveSeleteVo.getSubscriptionMoneyAll());
}
BigDecimal notSubscriptionMoney = new BigDecimal(receiveSeleteVo.getReveivableMoney()).subtract(subscriptionMoneyAll);

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

@ -6,6 +6,7 @@ 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.*;
import com.yxt.common.core.result.ResultBean;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@ -29,22 +30,22 @@ import java.util.List;
@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);
//@Update("update fin_vehicle_invoice set name=#{msg} where id=#{id}")
//IPage<FinVehicleInvoiceVo> voPage(IPage<FinVehicleInvoice> page, @Param(Constants.WRAPPER) QueryWrapper<FinVehicleInvoice> qw);
List<FinVehicleInvoiceVo> selectListVo();
IPage<FinVehicleInvoiceVo> selectPageVo(IPage<FinVehicleInvoice> page, @Param(Constants.WRAPPER) Wrapper<FinVehicleInvoice> qw);
List<FinVehicleInvoiceExportVo> selByExcel(@Param(Constants.WRAPPER)QueryWrapper<FinVehicleInvoiceExportVo> qw);
List<FinVehicleInvoiceVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<FinVehicleInvoice> qw);
FinVehicleInvoiceDetailsVo getInvoiceDetailsBySid(String sid);
List<FinVehicleInvoiceVo> selectListVo();
List<FinVehicleInvoiceExportVo> selByExcel(@Param(Constants.WRAPPER) QueryWrapper<FinVehicleInvoiceExportVo> qw);
FinVehicleInvoiceDetailsVo getInvoiceDetailsBySid(String sid);
FinVehicleInvoice selectByVinSid(String vinSid);
int cancellation(@Param("sid")String sid);
int cancellation(@Param("sid") String sid);
FinInvoiceInformationVo invoiceInformation(@Param("sid") String sid);
@ -61,7 +62,10 @@ public interface FinVehicleInvoiceMapper extends BaseMapper<FinVehicleInvoice> {
FinVehicleInvoice selectByVinSidss(String vinSid);
@Update("update fin_vehicle_invoice set transferStateKey = #{code},transferState = #{remarks} where sid = #{sid}")
void updateTransferState(@Param("sid") String sid,@Param("code") String code,@Param("remarks") String remarks);
void updateTransferState(@Param("sid") String sid, @Param("code") String code, @Param("remarks") String remarks);
FinVehicleInvoice selectByVinAndContractNo(@Param("vinSid") String vinSid, @Param("contractNo") String contractNo);
@Update("update fin_vehicle_invoice set isTakeTicket = '是' where sid = #{sid}")
void updateIsLPBySid(String sid);
}

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

@ -104,26 +104,46 @@
<result column="createTime" property="createTime"></result>
<result column="invoiceCode" property="invoiceCode"></result>
<result column="businessState" property="businessState"></result>
<result column="invoiceNo" property="invoiceNo"></result>
</resultMap>
<select id="selByExcel" resultMap="selectPageExportVoResultMap">
<select id="selByExcel" resultType="com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceExportVo">
SELECT DISTINCT
billingState,
transferState,
businessState,
invoiceTitle,
invoiceType,
contractNo,
customerName,
VIN,
invoicingName,
invoiceAmount,
createTime,
invoiceCode
FROM fin_vehicle_invoice
v.useOrgSid,
v.sid,
v.`state`,
v.billingStateKey,
v.billingState,
v.businessStateKey,
v.businessState,
v.transferStateKey,
v.transferState,
v.invoiceTitle,
v.invoiceType,
v.invoiceTypeKey,
v.contractNo,
v.customerName,
v.VIN as vinNo,
v.invoicingName,
v.invoiceAmount,
v.invoiceDate as createTime,
v.invoiceCode,
v.invoiceNo,
v.filePath,
v.address,
v.telPhone,
v.openingBank,
v.bankNum,
v.recipient,
v.transferTime,
so.orgSidPath,
v.isTakeTicket
FROM fin_vehicle_invoice as v
left join anrui_portal.sys_organization so on v.useOrgSid = so.sid
<where>
${ew.sqlSegment}
ORDER BY v.billingStateKey ASC,v.invoiceDate DESC
</where>
</select>
@ -223,7 +243,10 @@
</select>
<select id="selectByVinSidss" resultType="com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice">
select * from fin_vehicle_invoice where vehicleSid = #{vinSid} order by id desc limit 1
select *
from fin_vehicle_invoice
where vehicleSid = #{vinSid}
order by id desc limit 1
</select>
<select id="selectByContractNo" resultType="com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice">
select *
@ -232,6 +255,9 @@
</select>
<select id="selectByVinAndContractNo" resultType="com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice">
select * from fin_vehicle_invoice where vehicleSid = #{vinSid} and contractNo = #{contractNo}
select *
from fin_vehicle_invoice
where vehicleSid = #{vinSid}
and contractNo = #{contractNo}
</select>
</mapper>

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

@ -20,6 +20,7 @@ import java.net.URLEncoder;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@ -155,32 +156,35 @@ public class FinVehicleInvoiceRest implements FinVehicleInvoiceFeign {
}
@Override
public void exportExcel(FinVehicleInvoiceQuery query) {
//得到所有要导出的数据
List<FinVehicleInvoiceExportVo> invoiceExportVoList = finVehicleInvoiceService.listExcel(query);
public void exportExcel(FinVehicleInvoiceQuery pq) {
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();
//得到所有要导出的数据
List<FinVehicleInvoiceExportVo> records = finVehicleInvoiceService.listExcel(pq);
records.removeAll(Collections.singleton(null));
if (!records.isEmpty()) {
for (FinVehicleInvoiceExportVo invoiceExportVo : records) {
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, records, FinVehicleInvoiceExportVo.class, response);
}
//定义导出的excel名字
String excelName = "车辆发票信息列表";
String fileNameURL = "";
try {
fileNameURL = URLEncoder.encode(excelName, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
//导出车辆管理列表
ExportExcelUtils.export(fileNameURL, invoiceExportVoList, FinVehicleInvoiceExportVo.class, response);
}
@Override
@ -205,6 +209,11 @@ public class FinVehicleInvoiceRest implements FinVehicleInvoiceFeign {
return finVehicleInvoiceService.updateBybillingSid(billingSid);
}
@Override
public ResultBean updateBySid(String sid) {
return finVehicleInvoiceService.updateIsLPBySid(sid);
}
@Override
public ResultBean<VehicleInvoiceVo> selectByVinSid(String vinSid) {
return finVehicleInvoiceService.selectByVinSids(vinSid);
@ -237,7 +246,7 @@ public class FinVehicleInvoiceRest implements FinVehicleInvoiceFeign {
@Override
public ResultBean<FinVehicleInvoice> selectByVinAndContractNo(String vinSid, String contractNo) {
return finVehicleInvoiceService.selectByVinAndContractNo(vinSid,contractNo);
return finVehicleInvoiceService.selectByVinAndContractNo(vinSid, contractNo);
}
}

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

@ -3,6 +3,7 @@ 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.base.api.basetrailer.BaseTrailerDetailsVo;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign;
import com.yxt.anrui.base.api.basevehicleappendix.BaseVehicleAppendixFeign;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateFeign;
@ -38,10 +39,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.*;
/**
* Project: anrui-fin(财务管理) <br/>
@ -157,8 +155,8 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createStartTime), "date_format (v.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createEndTime), "date_format (v.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
qw.apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createStartTime), "date_format (v.invoiceDate,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(org.apache.commons.lang3.StringUtils.isNotEmpty(createEndTime), "date_format (v.invoiceDate,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
return qw;
}
@ -195,19 +193,33 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
}
public List<FinVehicleInvoiceExportVo> listExcel(FinVehicleInvoiceQuery query) {
QueryWrapper<FinVehicleInvoiceExportVo> qw = new QueryWrapper<>();
qw.eq("isDelete", "0");
qw.eq("v.isDelete", "0");
//层级筛选
String orgSidPath = query.getOrgSidPath();
SysOrganizationVo data = sysOrganizationFeign.selectByOrgSidPath(orgSidPath).getData();
String orgLevelKey = data.getOrgLevelKey();
if ("2".equals(orgLevelKey)) {
String[] split = orgSidPath.split("/");
String s = split[0] + "/" + split[1];
// orgSidPath = orgSidPath.substring(0, 73);
qw.like("so.orgSidPath", s);
} else if ("3".equals(orgLevelKey)) {
qw.eq("v.useOrgSid", query.getCreateOrgSid());
}
if (StringUtils.isNotBlank(query.getInvoiceTitle())) {
qw.like("invoiceTitle", query.getInvoiceTitle());
qw.like("v.invoiceTitle", query.getInvoiceTitle());
}
if (StringUtils.isNotBlank(query.getInvoiceType())) {
qw.like("invoiceType", query.getInvoiceType());
qw.like("v.invoiceType", query.getInvoiceType());
}
if (StringUtils.isNotBlank(query.getInvoiceTypeKey())) {
qw.like("invoiceTypeKey", query.getInvoiceTypeKey());
qw.like("v.invoiceTypeKey", query.getInvoiceTypeKey());
}
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.like("contractNo", query.getContractNo());
qw.like("v.contractNo", query.getContractNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("customerName", query.getCustomerName());
@ -424,9 +436,16 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
for (String sid : sids) {
FinVehicleInvoice finVehicleInvoice = fetchBySid(sid);
if (CertificState.TransferState.TRANSTATE_WJS.getCode().equals(finVehicleInvoice.getTransferStateKey()) && "002".equals(finVehicleInvoice.getBillingStateKey()) && "是".equals(finVehicleInvoice.getIsTakeTicket())){
String vehicleSid = finVehicleInvoice.getVehicleSid();
String vehicleSid = "";
if ("主车".equals(finVehicleInvoice.getVehicleType())){
vehicleSid = finVehicleInvoice.getVehicleSid();
}else if ("挂车".equals(finVehicleInvoice.getVehicleType())){
String gcSid = finVehicleInvoice.getVehicleSid();
BaseTrailerDetailsVo baseTrailerDetailsVo = baseTrailerFeign.fetchBySid(gcSid).getData();
vehicleSid = baseTrailerDetailsVo.getVehSid();
}
BusSalesOrderDetailsVo busSalesOrderDetailsVo = busSalesOrderFeign.selNewComSaleByVehSid(vehicleSid).getData();
if (busSalesOrderDetailsVo == null){
if (busSalesOrderDetailsVo == null) {
return rb.setMsg("暂无销售订单,不可移交");
}
String staffSid = busSalesOrderDetailsVo.getStaffSid();
@ -447,7 +466,7 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
busTransferRecordsDto.setTransferDept(sysOrganizationVo.getName());
busTransferRecordsDto.setGoodsType(BusTransferRecordEnum.FP.getRemarks());
busTransferRecordsDto.setGoodsTypeKey(BusTransferRecordEnum.FP.getCode());
if ("89d7f310-a221-405b-858e-dd650e0993d5".equals(dto.getReceiveRoleSid())){
if ("89d7f310-a221-405b-858e-dd650e0993d5".equals(dto.getReceiveRoleSid())) {
busTransferRecordsDto.setReceiveRoleSid(dto.getReceiveRoleSid());
busTransferRecordsDto.setReceiveSid(sysUserVo1.getSid());
busTransferRecordsDto.setReceiveName(sysUserVo1.getName());
@ -458,7 +477,7 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
//消息设置接收人信息
messagePushTransferDto.setReceiveSids(sysUserVo1.getSid());
messagePushTransferDto.setReceiveNames(sysUserVo1.getName());
}else {
} else {
busTransferRecordsDto.setReceiveRoleSid(dto.getReceiveRoleSid());
//消息设置接收人信息
String receiveRoleSid = dto.getReceiveRoleSid();
@ -472,21 +491,21 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
receiveSids = receiveSids + sysStaffOrgByUserVo.getSid() + ",";
receiveNames = receiveNames + sysStaffOrgByUserVo.getName() + ",";
}
messagePushTransferDto.setReceiveSids(receiveSids.substring(0,receiveSids.length() - 1));
messagePushTransferDto.setReceiveNames(receiveNames.substring(0,receiveNames.length() - 1));
messagePushTransferDto.setReceiveSids(receiveSids.substring(0, receiveSids.length() - 1));
messagePushTransferDto.setReceiveNames(receiveNames.substring(0, receiveNames.length() - 1));
}
busTransferRecordsDto.setUseOrgSid(finVehicleInvoice.getUseOrgSid());
//移交附件
String billingSid = finVehicleInvoice.getBillingSid();
List<FinBillFileVo> finBillFileVos = finBillFileService.fetchFileByBillSid(billingSid);
String transferFilesString = "";
if (!finBillFileVos.isEmpty()){
if (!finBillFileVos.isEmpty()) {
for (FinBillFileVo finBillFileVo : finBillFileVos) {
transferFilesString = transferFilesString + finBillFileVo.getFileUrl() + ",";
}
}
if (StringUtils.isNotBlank(transferFilesString)){
busTransferRecordsDto.setTransferFiles(transferFilesString.substring(0,transferFilesString.length() - 1));
if (StringUtils.isNotBlank(transferFilesString)) {
busTransferRecordsDto.setTransferFiles(transferFilesString.substring(0, transferFilesString.length() - 1));
}
busTransferRecordsFeign.saveRecords(busTransferRecordsDto);
//消息推送
@ -501,8 +520,8 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
messagePushTransferDto.setSenderDeptName(sysOrganizationVo.getName());
messagePushTransferDto.setBusinessSid(sid);
messageFeign.pushTransferMessage(messagePushTransferDto);
baseMapper.updateTransferState(sid,CertificState.TransferState.TRANSTATE_YJZ.getCode(),CertificState.TransferState.TRANSTATE_YJZ.getRemarks());
}else {
baseMapper.updateTransferState(sid, CertificState.TransferState.TRANSTATE_YJZ.getCode(), CertificState.TransferState.TRANSTATE_YJZ.getRemarks());
} else {
rb.setMsg("不符合移交条件");
}
}
@ -512,9 +531,9 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
public ResultBean invoiceYJCH(String[] sids) {
for (String sid : sids) {
FinVehicleInvoice finVehicleInvoice = fetchBySid(sid);
if (CertificState.TransferState.TRANSTATE_YJZ.getCode().equals(finVehicleInvoice.getTransferStateKey())){
if (CertificState.TransferState.TRANSTATE_YJZ.getCode().equals(finVehicleInvoice.getTransferStateKey())) {
busTransferRecordsFeign.delBySourceSid(sid);
baseMapper.updateTransferState(sid,CertificState.TransferState.TRANSTATE_WJS.getCode(),CertificState.TransferState.TRANSTATE_WJS.getRemarks());
baseMapper.updateTransferState(sid, CertificState.TransferState.TRANSTATE_WJS.getCode(), CertificState.TransferState.TRANSTATE_WJS.getRemarks());
}
}
return new ResultBean().success();
@ -523,13 +542,13 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
public ResultBean updateYjState(StateUpdateQuery query) {
ResultBean rb = ResultBean.fireFail();
FinVehicleInvoice finVehicleInvoice = baseMapper.selectByVinSidss(query.getVinSid());
if(finVehicleInvoice != null){
if (finVehicleInvoice != null) {
finVehicleInvoice.setTransferState(query.getTransferState());
finVehicleInvoice.setTransferStateKey(query.getTransferStateKey());
if(StringUtils.isNotBlank(query.getReceiveSid())){
if (StringUtils.isNotBlank(query.getReceiveSid())) {
finVehicleInvoice.setRecipientSid(query.getReceiveSid());
}
if(StringUtils.isNotBlank(query.getReceiveName())){
if (StringUtils.isNotBlank(query.getReceiveName())) {
finVehicleInvoice.setRecipient(query.getReceiveName());
}
//接收日期
@ -541,7 +560,13 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
public ResultBean<FinVehicleInvoice> selectByVinAndContractNo(String vinSid, String contractNo) {
ResultBean<FinVehicleInvoice> rb = ResultBean.fireFail();
FinVehicleInvoice finVehicleInvoice = baseMapper.selectByVinAndContractNo(vinSid,contractNo);
FinVehicleInvoice finVehicleInvoice = baseMapper.selectByVinAndContractNo(vinSid, contractNo);
return rb.success().setData(finVehicleInvoice);
}
public ResultBean updateIsLPBySid(String sid) {
ResultBean rb = ResultBean.fireFail();
baseMapper.updateIsLPBySid(sid);
return rb.success();
}
}

66
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow/FlowableRest.java

@ -394,24 +394,27 @@ public class FlowableRest implements FlowableFeign {
}else{
nextUserSid = nextNodeUserSidsOfSubmit.getData().getUserSid();
formVariables.put(BusinessVariables.ORGPATH, nextNodeUserSidsOfSubmit.getData().getOrgPath());
List<String> nextUserList = Arrays.asList(nextUserSid.split(","));
if(nextUserList.size() == 1){
firstSid = nextUserList.get(0);
ResultBean<SysUserVo> sysUserVoResultBean = sysUserFeign.fetchBySid(firstSid);
if(sysUserVoResultBean.getData() != null){
firstName = sysUserVoResultBean.getData().getName();
}
SysFlowableConfigQuery sysFlowableConfigQuery = new SysFlowableConfigQuery();
sysFlowableConfigQuery.setUserSid(firstSid);
sysFlowableConfigQuery.setNowDate(new Date());
ResultBean<SysFlowableConfigVvo> sysFlowableConfigVvoResultBean = sysFlowableConfigFeign.selectByUserSid(sysFlowableConfigQuery);
if(sysFlowableConfigVvoResultBean.getData() != null){
if(StringUtils.isNotBlank(sysFlowableConfigVvoResultBean.getData().getChangeUserSid())){
nextUserSid = sysFlowableConfigVvoResultBean.getData().getChangeUserSid();
isChange = true;
if(nextUserSid != null){
List<String> nextUserList = Arrays.asList(nextUserSid.split(","));
if(nextUserList.size() == 1){
firstSid = nextUserList.get(0);
ResultBean<SysUserVo> sysUserVoResultBean = sysUserFeign.fetchBySid(firstSid);
if(sysUserVoResultBean.getData() != null){
firstName = sysUserVoResultBean.getData().getName();
}
SysFlowableConfigQuery sysFlowableConfigQuery = new SysFlowableConfigQuery();
sysFlowableConfigQuery.setUserSid(firstSid);
sysFlowableConfigQuery.setNowDate(new Date());
ResultBean<SysFlowableConfigVvo> sysFlowableConfigVvoResultBean = sysFlowableConfigFeign.selectByUserSid(sysFlowableConfigQuery);
if(sysFlowableConfigVvoResultBean.getData() != null){
if(StringUtils.isNotBlank(sysFlowableConfigVvoResultBean.getData().getChangeUserSid())){
nextUserSid = sysFlowableConfigVvoResultBean.getData().getChangeUserSid();
isChange = true;
}
}
}
}
}
}
String comment = dto.getComment();
@ -467,8 +470,7 @@ public class FlowableRest implements FlowableFeign {
processCommentDto.setContent("交"+changeName+"转办");
}
processCommentDto.setTime(new Date());
processCommentDto.setProcessId(dto.getModelId());
processCommentDto.setProcessInstSid(dto.getInstanceId());
processCommentDto.setProcessId(dto.getInstanceId());
processCommentService.saveOrUpdateDto(processCommentDto);
}
taskService.setAssignee(id_, nextUserSid);
@ -487,7 +489,7 @@ public class FlowableRest implements FlowableFeign {
dto.setUserSid(nextUserSid);
dto.setTaskId(vo.getTaskId());
dto.setTaskDefKey(taskDefKey);
dto.setComment("系统管理员已自动审批");
dto.setComment("系统自动跳过");
return handleProsess(dto, false);
}
List<FlowElement> flowElements = processService.calApprovePath(dto.getModelId(), dto.getModelId(),
@ -499,6 +501,26 @@ public class FlowableRest implements FlowableFeign {
String id = flowElement.getId();
if (taskDefKey.equals(id) && i + 1 < flowElements.size()) {
FlowElement flowElement1 = flowElements.get(i + 1);
List<SysUserVo> sysUserVoLists2 = new ArrayList<>();
if(i+2<flowElements.size()){
FlowElement flowElement2 = flowElements.get(i + 2);
if (flowElement2 instanceof UserTask) {
UserTask userTask = (UserTask) flowElement2;
List<String> candidateGroups = userTask.getCandidateGroups();
//根据角色查询用户
for (String roleSid : candidateGroups) {
UserQuery userQuery = new UserQuery();
userQuery.setRoleSid(roleSid);
userQuery.setOrgSidPath(dto.getOrgSidPath());
ResultBean<List<SysUserVo>> userByRole = sysUserFeign.getUserByRole(userQuery);
boolean success = userByRole.getSuccess();
if (!success) {
continue;
}
sysUserVoLists2.addAll(userByRole.getData());
}
}
}
if (flowElement1 instanceof UserTask) {
UserTask userTask = (UserTask) flowElement1;
List<String> candidateGroups = userTask.getCandidateGroups();
@ -522,14 +544,14 @@ public class FlowableRest implements FlowableFeign {
break;
}
//如果下一环节无用户,则默认系统管理员自动审批
if(sysUserVoLists.size() == 0 && StringUtils.isNotBlank(nextUserSid)){
if(sysUserVoLists.size() == 0 && sysUserVoLists2.size() == 1 && sysUserVoLists2.get(0).getSid().equals(nextUserSid)){
contains = true;
break;
}
if(sysUserVoLists.size() == 0){
/* if(sysUserVoLists.size() == 0){
adminSecondsContains = true;
break;
}
}*/
}
}
if (contains) {
@ -550,7 +572,7 @@ public class FlowableRest implements FlowableFeign {
dto.setUserSid(nextUserSid);
dto.setTaskId(vo.getTaskId());
dto.setTaskDefKey(taskDefKey);
dto.setComment("系统管理员已自动审批");
dto.setComment("系统自动跳过");
return handleProsess(dto, false);
}

35
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowdefinition/FlowDefinitionService.java

@ -215,23 +215,25 @@ public class FlowDefinitionService extends FlowServiceFactory {
String firstSid = "";
String firstName = "";
boolean isChange = false;
List<String> nextUserList = Arrays.asList(nextNodeUserSids.split(","));
if(nextUserList.size() == 1){
firstSid = nextUserList.get(0);
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(firstSid);
if(userVoResultBean.getData() != null){
firstName = userVoResultBean.getData().getName();
}
SysFlowableConfigQuery sysFlowableConfigQuery = new SysFlowableConfigQuery();
sysFlowableConfigQuery.setUserSid(firstSid);
sysFlowableConfigQuery.setNowDate(new Date());
ResultBean<SysFlowableConfigVvo> sysFlowableConfigVvoResultBean = sysFlowableConfigFeign.selectByUserSid(sysFlowableConfigQuery);
if(sysFlowableConfigVvoResultBean.getData() != null){
if(StringUtils.isNotBlank(sysFlowableConfigVvoResultBean.getData().getChangeUserSid())){
nextNodeUserSids = sysFlowableConfigVvoResultBean.getData().getChangeUserSid();
isChange = true;
if(StringUtils.isNotBlank(nextNodeUserSids)){
List<String> nextUserList = Arrays.asList(nextNodeUserSids.split(","));
if(nextUserList.size() == 1){
firstSid = nextUserList.get(0);
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(firstSid);
if(userVoResultBean.getData() != null){
firstName = userVoResultBean.getData().getName();
}
SysFlowableConfigQuery sysFlowableConfigQuery = new SysFlowableConfigQuery();
sysFlowableConfigQuery.setUserSid(firstSid);
sysFlowableConfigQuery.setNowDate(new Date());
ResultBean<SysFlowableConfigVvo> sysFlowableConfigVvoResultBean = sysFlowableConfigFeign.selectByUserSid(sysFlowableConfigQuery);
if(sysFlowableConfigVvoResultBean.getData() != null){
if(StringUtils.isNotBlank(sysFlowableConfigVvoResultBean.getData().getChangeUserSid())){
nextNodeUserSids = sysFlowableConfigVvoResultBean.getData().getChangeUserSid();
isChange = true;
}
}
}
}
ResultBean<List<LatestTaskVo>> latestTasksNew = flowTaskService.getLatestTasksNew(processInstance.getId());
@ -248,8 +250,7 @@ public class FlowDefinitionService extends FlowServiceFactory {
processCommentDto.setContent("交"+changeName+"转办");
}
processCommentDto.setTime(new Date());
processCommentDto.setProcessId(procDefId);
processCommentDto.setProcessInstSid(processInstance.getProcessInstanceId());
processCommentDto.setProcessId(processInstance.getProcessInstanceId());
processCommentService.saveOrUpdateDto(processCommentDto);
}
taskService.setAssignee(id_,nextNodeUserSids);

7
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java

@ -311,7 +311,6 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
List<FlowTask> hisFlowList = new ArrayList<>();
for (HistoricActivityInstance histIns : list) {
if (StringUtils.isNotBlank(histIns.getTaskId())) {
boolean isStop = false;
FlowTask flowTask = new FlowTask();
flowTask.setTaskId(histIns.getTaskId());
flowTask.setTaskName(histIns.getActivityName());
@ -335,9 +334,6 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
List<SysUserVo> data1 = sysUserVoResultBean.getData();
List<TaskUserInfo> taskUserInfos=new ArrayList<>();
for( SysUserVo data:data1){
if("admin".equals(data.getName())){
isStop = true;
}
TaskUserInfo taskUserInfo=new TaskUserInfo();
taskUserInfo.setAssigneeName(data.getName());
taskUserInfo.setAssigneeSid(data.getSid());
@ -348,9 +344,6 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
}
flowTask.setTaskUserInfos(taskUserInfos);
}
if(isStop){
continue;
}
// 展示审批人员
List<HistoricIdentityLink> linksForTask = historyService.getHistoricIdentityLinksForTask(histIns.getTaskId());

7
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java

@ -177,6 +177,13 @@ public class FlowableRest implements FlowableFeign {
stringObjectMap.put("createTime",DateUtil.format(f.getCreateTime(),"yyyy-MM-dd HH:mm:ss"));
a.setFlowableRecordVo(stringObjectMap);
a.setState(0+"");
List<com.yxt.anrui.flowable.api.flowtask.TaskUserInfo> taskUserInfos = f.getTaskUserInfos();
if(taskUserInfos.size() == 1){
com.yxt.anrui.flowable.api.flowtask.TaskUserInfo appUserVo = taskUserInfos.get(0);
if("admin".equals(appUserVo.getAssigneeName())){
return;
}
}
flowList.add(a);
});
//评论记录

35
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinbound/ScmApplyInboundMapper.java

@ -31,20 +31,23 @@ import java.util.Map;
@Mapper
public interface ScmApplyInboundMapper extends BaseMapper<ScmApplyInbound> {
//@Update("update scm_apply_inbound set name=#{msg} where id=#{id}")
//IPage<ScmApplyInboundVo> voPage(IPage<ScmApplyInbound> page, @Param(Constants.WRAPPER) QueryWrapper<ScmApplyInbound> qw);
IPage<ScmApplyInboundListVo> selectPageVo(IPage<ScmApplyInbound> page, @Param(Constants.WRAPPER) Wrapper<ScmApplyInbound> qw);
List<ScmApplyInboundVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<ScmApplyInbound> qw);
@Select("select * from scm_apply_inbound")
List<ScmApplyInboundVo> selectListVo();
int updateFlowFiled(Map<String, Object> map);
int selectNum(@Param("bill")String bill);
@Update("update scm_apply_inbound set num = #{num} where sid = #{busSid}")
void updateNumBySid(@Param("num") String num,@Param("busSid") String busSid);
//@Update("update scm_apply_inbound set name=#{msg} where id=#{id}")
//IPage<ScmApplyInboundVo> voPage(IPage<ScmApplyInbound> page, @Param(Constants.WRAPPER) QueryWrapper<ScmApplyInbound> qw);
IPage<ScmApplyInboundListVo> selectPageVo(IPage<ScmApplyInbound> page, @Param(Constants.WRAPPER) Wrapper<ScmApplyInbound> qw);
List<ScmApplyInboundVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<ScmApplyInbound> qw);
@Select("select * from scm_apply_inbound")
List<ScmApplyInboundVo> selectListVo();
int updateFlowFiled(Map<String, Object> map);
int selectNum(@Param("bill") String bill);
@Update("update scm_apply_inbound set num = #{num} where sid = #{busSid}")
void updateNumBySid(@Param("num") String num, @Param("busSid") String busSid);
@Update("update scm_apply_inbound set nodeState = '已办结' where sid = #{businessSid}")
void updateNodeState(String businessSid);
}

103
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinbound/ScmApplyInboundService.java

@ -275,13 +275,13 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
}
// 验证数据库是否重复
for (int i = 0; i < vinNoList.size(); i++) {
int count = scmApplyInboundVehicleService.checkVinNo(vinNoList.get(i), dto.getUseOrgSid(),dto.getSid());
int count = scmApplyInboundVehicleService.checkVinNo(vinNoList.get(i), dto.getUseOrgSid(), dto.getSid());
BaseVehicle data = baseVehicleFeign.selectByVinNoAndOrgSid(vinNoList.get(i), dto.getUseOrgSid()).getData();
if (count > 0) {
return new ResultBean().setMsg(vinNoList.get(i) + "车架号已经存在");
}
if (data != null) {
if (StringUtils.isNotBlank(data.getVinNo())){
if (StringUtils.isNotBlank(data.getVinNo())) {
return new ResultBean().setMsg(vinNoList.get(i) + "车架号已经存在");
}
}
@ -329,16 +329,16 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
vo.setGuidedPrice(guidedPrice + "/" + manufactorSettlementPrice);
String updateDate = DateUtil.formatDate(baseVehmodelVo.getModifyTime());
String nowDate = DateUtil.formatDate(new Date());
if (StringUtils.isBlank(guidedPrice) && StringUtils.isBlank(manufactorSettlementPrice)){
if (StringUtils.isBlank(guidedPrice) && StringUtils.isBlank(manufactorSettlementPrice)) {
vo.setNewUpdateDate("");
}else {
} else {
vo.setNewUpdateDate(DateUtil.formatDate(baseVehmodelVo.getModifyTime()));
}
String[] updateDates = updateDate.split("-");
String[] nowDates = nowDate.split("-");
if (updateDates[0].equals(nowDates[0]) && updateDates[1].equals(nowDates[1])){
if (updateDates[0].equals(nowDates[0]) && updateDates[1].equals(nowDates[1])) {
vo.setIsNow(true);
}else {
} else {
vo.setIsNow(false);
}
List<ScmApplyInboundVehicleVo> list = scmApplyInboundVehicleService.selectListByAppSid(sid);
@ -423,7 +423,7 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
String guidedPrice = dto.getGuidedPrice();
String[] split = guidedPrice.split("/");
List<String> stringList = Arrays.asList(split);
if (stringList.size() < 2){
if (stringList.size() < 2) {
return new ResultBean().fail().setMsg("车型与配置贷款或全款销售指导价未维护,不可提交");
}
List<ScmApplyInboundVehicleDto> vehicleList = dto.getVehicleList();
@ -487,7 +487,7 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
confirmName = flowTask.getTaskUserInfos().get(0).getAssigneeName();
confirmDate = DateUtil.formatDate(flowTask.getFinishTime());
break;
}else if (flowTask.getTaskName().equals("销售支持部经理审批")) {
} else if (flowTask.getTaskName().equals("销售支持部经理审批")) {
confirmSid = flowTask.getTaskUserInfos().get(0).getAssigneeSid();
confirmName = flowTask.getTaskUserInfos().get(0).getAssigneeName();
confirmDate = DateUtil.formatDate(flowTask.getFinishTime());
@ -566,7 +566,7 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
confirmName = flowTask.getTaskUserInfos().get(0).getAssigneeName();
confirmDate = DateUtil.formatDate(flowTask.getFinishTime());
break;
}else if (flowTask.getTaskName().equals("销售支持部经理审批")) {
} else if (flowTask.getTaskName().equals("销售支持部经理审批")) {
confirmSid = flowTask.getTaskUserInfos().get(0).getAssigneeSid();
confirmName = flowTask.getTaskUserInfos().get(0).getAssigneeName();
confirmDate = DateUtil.formatDate(flowTask.getFinishTime());
@ -645,7 +645,7 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
confirmName = flowTask.getTaskUserInfos().get(0).getAssigneeName();
confirmDate = DateUtil.formatDate(flowTask.getFinishTime());
break;
}else if (flowTask.getTaskName().equals("销售支持部经理审批")) {
} else if (flowTask.getTaskName().equals("销售支持部经理审批")) {
confirmSid = flowTask.getTaskUserInfos().get(0).getAssigneeSid();
confirmName = flowTask.getTaskUserInfos().get(0).getAssigneeName();
confirmDate = DateUtil.formatDate(flowTask.getFinishTime());
@ -975,10 +975,10 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
public ResultBean cancal(String sid) {
ResultBean rb = ResultBean.fireFail();
ScmApplyInbound scmApplyInbound = fetchBySid(sid);
if("已办结".equals(scmApplyInbound.getNodeState())){
if ("已办结".equals(scmApplyInbound.getNodeState())) {
return rb.setMsg("该数据已审批通过,不允许终止");
}
if(StringUtils.isNotBlank(scmApplyInbound.getTaskId())){
if (StringUtils.isNotBlank(scmApplyInbound.getTaskId())) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo flowTaskVo = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
flowTaskVo.setTaskId(scmApplyInbound.getTaskId());
flowTaskVo.setInstanceId(scmApplyInbound.getProcInsId());
@ -991,10 +991,10 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
return rb.success().setData(resultBean.getData());
}else{
scmApplyInbound.setNodeState("终止");
scmApplyInbound.setTaskDefKey("Event_end");
baseMapper.updateById(scmApplyInbound);
} else {
scmApplyInbound.setNodeState("终止");
scmApplyInbound.setTaskDefKey("Event_end");
baseMapper.updateById(scmApplyInbound);
}
return rb.success();
}
@ -1005,13 +1005,12 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
String guidedPrice = dto.getGuidedPrice();
String[] split = guidedPrice.split("/");
List<String> stringList = Arrays.asList(split);
if (stringList.size() < 2){
if (stringList.size() < 2) {
return new ResultBean().fail().setMsg("车型与配置贷款或全款销售指导价未维护,不可确认");
}
List<ScmApplyInboundVehicleDto> vehicleList = dto.getVehicleList();
ScmApplyInbound scmApplyInbound1 = fetchBySid(busSid);
if (StringUtils.isBlank(busSid)) {
Map<String, Object> variables = BeanUtil.beanToMap(dto);
ResultBean<String> resultBean = saveOrUpdateApplyInBound(dto);
if (!resultBean.getSuccess()) {
return ResultBean.fireFail().setMsg(resultBean.getMsg());
@ -1041,6 +1040,7 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
}
int i = Integer.parseInt(num) - scmApplyInboundVehicleDtos1.size();
baseMapper.updateNumBySid(String.valueOf(i), businessSid);
baseMapper.updateNodeState(businessSid);
//数据推送
String name = "";
String confirmSid = "";
@ -1050,28 +1050,63 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
List<ScmApplyInboundVehicleDto> scmApplyInboundVehicleDtos = scmApplyInboundVehicleService.fetchByMainSid(businessSid);
ResultBean<List<String>> sids = scmVehicleExamineService.saveEntryCarInspectedInfoBatch(booad, scmApplyInboundVehicleDtos);
saveItem(sids);
FlowRecordVo flowRecordVo = flowTaskFeign.businessFlowRecord(booad.getProcInsId()).getData();
List<FlowTask> flowList = flowRecordVo.getFlowList();
for (FlowTask flowTask : flowList) {
if (flowTask.getTaskName().equals("账务部审批")) {
confirmSid = flowTask.getTaskUserInfos().get(0).getAssigneeSid();
confirmName = flowTask.getTaskUserInfos().get(0).getAssigneeName();
confirmDate = DateUtil.formatDate(flowTask.getFinishTime());
break;
}else if (flowTask.getTaskName().equals("销售支持部经理审批")) {
confirmSid = flowTask.getTaskUserInfos().get(0).getAssigneeSid();
confirmName = flowTask.getTaskUserInfos().get(0).getAssigneeName();
confirmDate = DateUtil.formatDate(flowTask.getFinishTime());
}
}
name = confirmSid + "," + confirmName + "," + confirmDate;
newBaseVehicleDto(booad, scmApplyInboundVehicleDtos, name);
//入账审批通关修改采购订单状态 state = 1
if (booad.getManPurOrderTypeKey().equals(ManPurOrderType.ManOrderType.PC_ORDER.getCode())) {
busVehicleOrderFeign.updateState(booad.getVehicleOrderSid());
}
return null;
return resultBean;
}
return submitBusinessData(dto, busSid, scmApplyInbound1);
return confirmRZUpdate(dto, busSid, scmApplyInbound1);
}
private synchronized ResultBean confirmRZUpdate(SubmitScmApplyInboundDto dto, String businessSid, ScmApplyInbound scmApplyInbound) {
List<ScmApplyInboundVehicleDto> scmApplyInboundVehicleDtos1 = new ArrayList<>();
List<ScmApplyInboundVehicleDto> scmApplyInboundVehicleDtos2 = new ArrayList<>();
ScmApplyInboundDto scmApplyInboundDto = new ScmApplyInboundDto();
List<ScmApplyInboundVehicleDto> vehicleList = dto.getVehicleList();
for (ScmApplyInboundVehicleDto scmApplyInboundVehicleDto : vehicleList) {
String vinNo = scmApplyInboundVehicleDto.getVinNo();
if (StringUtils.isBlank(vinNo)) {
scmApplyInboundVehicleService.deleteBySid(scmApplyInboundVehicleDto.getSid());
BeanUtil.copyProperties(dto, scmApplyInboundDto);
scmApplyInboundDto.setSid(null);
scmApplyInboundVehicleDtos1.add(scmApplyInboundVehicleDto);
} else {
scmApplyInboundVehicleDtos2.add(scmApplyInboundVehicleDto);
}
}
if (scmApplyInboundVehicleDtos1.size() > 0) {
scmApplyInboundDto.setVehicleList(scmApplyInboundVehicleDtos1);
scmApplyInboundDto.setNum(String.valueOf(scmApplyInboundVehicleDtos1.size()));
scmApplyInboundDto.setPcApplicationCode(scmApplyInbound.getPcApplicationCode());
saveOrUpdateApplyInBound(scmApplyInboundDto);
}
baseMapper.updateNumBySid(String.valueOf(scmApplyInboundVehicleDtos2.size()), businessSid);
baseMapper.updateNodeState(businessSid);
dto.setVehicleList(scmApplyInboundVehicleDtos2);
dto.setNum(String.valueOf(scmApplyInboundVehicleDtos2.size()));
dto.setNodeState("已办结");
ResultBean<String> stringResultBean = saveOrUpdateApplyInBound(dto);
if (!stringResultBean.getSuccess()) {
return ResultBean.fireFail().setMsg(stringResultBean.getMsg());
}
//数据推送
String name = "";
String confirmSid = "";
String confirmName = "";
String confirmDate = "";
ScmApplyInbound booad = fetchBySid(businessSid);
List<ScmApplyInboundVehicleDto> scmApplyInboundVehicleDtos = scmApplyInboundVehicleService.fetchByMainSid(businessSid);
ResultBean<List<String>> sids = scmVehicleExamineService.saveEntryCarInspectedInfoBatch(booad, scmApplyInboundVehicleDtos);
saveItem(sids);
name = confirmSid + "," + confirmName + "," + confirmDate;
newBaseVehicleDto(booad, scmApplyInboundVehicleDtos, name);
//入账审批通关修改采购订单状态 state = 1
if (booad.getManPurOrderTypeKey().equals(ManPurOrderType.ManOrderType.PC_ORDER.getCode())) {
busVehicleOrderFeign.updateState(booad.getVehicleOrderSid());
}
return ResultBean.fireSuccess();
}
}

2
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppFlowableRecordAndCommentVo.java

@ -30,4 +30,6 @@ public class AppFlowableRecordAndCommentVo implements Vo {
@JsonProperty("processCommentVo")
private ProcessCommentVo processCommentVo;
}

1
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppFlowableRecordVo.java

@ -63,5 +63,4 @@ public class AppFlowableRecordVo implements Vo {
private String procDefId;
private Map<String,Object> procVars;
}

1
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/app/flowable/AppUserVo.java

@ -19,5 +19,4 @@ public class AppUserVo implements Vo {
@ApiModelProperty(value = "头像")
@JsonProperty("image")
private String assigneeHeadImage;
}

16
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/AppBusDiscountpackageHandoversVo.java

@ -21,7 +21,7 @@ public class AppBusDiscountpackageHandoversVo implements Vo {
@ApiModelProperty("销售订单sid")
private String salesOrderSid; // 销售订单sid
@ApiModelProperty("交接状态 1待准备,2待交接,3已交接")
private String nodeSate; // 交接状态
private String nodeState; // 交接状态
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("创建日期")
private Date createDate; // 合同编号
@ -33,13 +33,17 @@ public class AppBusDiscountpackageHandoversVo implements Vo {
private String model; // 车型名称
@ApiModelProperty("车辆台数")
private String carNum; // 车辆台数
@ApiModelProperty("接收人姓名")
private String recName; // 接收人姓名
@ApiModelProperty("接收人电话")
private String recPhone; // 接收人电话
@ApiModelProperty("移交人")
private String receiveName; // 接收人姓名
@ApiModelProperty("移交人电话")
private String receivePhone; // 接收人电话
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("接收时间")
private Date receiveDate; // 接收时间
@ApiModelProperty("待交接显示")
private Boolean showHandleBtn; // 待交接显示
@ApiModelProperty("已交接显示")
private Boolean showDownloadBtn; // 已交接显示
private Boolean showUploadBtn; // 已交接显示
}

24
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/AppDiscountPackageHandoverFegin.java

@ -10,6 +10,7 @@ import org.springframework.web.bind.annotation.*;
import java.lang.reflect.InvocationTargetException;
import java.text.ParseException;
import java.util.List;
/**
* @author Administrator
@ -31,9 +32,20 @@ public interface AppDiscountPackageHandoverFegin {
@ResponseBody
public ResultBean<PagerVo<AppBusDiscountpackageHandoversVo>> listPage(@RequestBody PagerQuery<AppBusDiscountpackageHandoversQuery> pq);
@ApiOperation("移动端优惠包交接详情编辑回显")
@ApiOperation("移动端优惠包交接详情")
@GetMapping("/getDiscountPackageHandoverDetail")
@ResponseBody
public ResultBean<BusDiscountpackageHandoversDetailVo> getDiscountPackageHandoverDetail(@RequestParam("sid") String sid);
@ApiOperation("编辑初始化")
@GetMapping("/getDiscountHandoverInfo/{sid}")
@ResponseBody
public ResultBean<BusDiscountpackageHandoverInitVo> getDiscountHandoverInitInfo(@PathVariable("sid") String sid);
@ApiOperation("移动端优惠包交接详情编辑回显")
@GetMapping("/getDiscountHandoverInfor/{sid}")
@ResponseBody
public ResultBean<AppBusDiscountpackageHandoversDto> getDiscountHandoverInfo(@PathVariable("sid") String sid) throws InvocationTargetException, IllegalAccessException;
@ApiOperation("移动端交接操作")
@ -46,5 +58,15 @@ public interface AppDiscountPackageHandoverFegin {
@ResponseBody
public ResultBean uploadPicture(@RequestBody AppBusDiscountpackageHandoversDto dto) throws InvocationTargetException, IllegalAccessException;
@ApiOperation("移动端交接操作")
@PostMapping("/confirmPackageHandover")
@ResponseBody
public ResultBean confirmPackageHandover(@RequestBody AppBusDiscountpackageHandoversDto dto);
@ApiOperation("保存优惠包交接照片")
@PutMapping("/saveConfirmPackageHandoverImg")
@ResponseBody
public ResultBean<List<String>> confirmPackageHandoverImg(@RequestBody UploadPicture uploadPicture);
}

21
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/AppDiscountPackageHandoverFeginFallback.java

@ -6,6 +6,7 @@ import com.yxt.common.core.vo.PagerVo;
import java.lang.reflect.InvocationTargetException;
import java.text.ParseException;
import java.util.List;
/**
* @author Administrator
@ -18,6 +19,16 @@ public class AppDiscountPackageHandoverFeginFallback implements AppDiscountPacka
return null;
}
@Override
public ResultBean<BusDiscountpackageHandoversDetailVo> getDiscountPackageHandoverDetail(String sid) {
return null;
}
@Override
public ResultBean<BusDiscountpackageHandoverInitVo> getDiscountHandoverInitInfo(String sid) {
return null;
}
@Override
public ResultBean<AppBusDiscountpackageHandoversDto> getDiscountHandoverInfo(String sid) {
return null;
@ -32,4 +43,14 @@ public class AppDiscountPackageHandoverFeginFallback implements AppDiscountPacka
public ResultBean uploadPicture(AppBusDiscountpackageHandoversDto dto) {
return null;
}
@Override
public ResultBean confirmPackageHandover(AppBusDiscountpackageHandoversDto dto) {
return null;
}
@Override
public ResultBean<List<String>> confirmPackageHandoverImg(UploadPicture uploadPicture) {
return null;
}
}

50
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/BusDiscountpackageHandoverInitVo.java

@ -0,0 +1,50 @@
package com.yxt.anrui.terminal.api.autoservice.discountPackageHandover;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/19 13:43
*/
@Data
public class BusDiscountpackageHandoverInitVo implements Vo {
private String sid;
private String orgPath;
@ApiModelProperty("userSid")
private String userSid; // userSid
@ApiModelProperty("合同编号")
private String contractId; // 合同编号
@ApiModelProperty("车型名称")
private String model; // 车型名称
@ApiModelProperty("车辆台数")
private String carNumber; // 车辆台数
@ApiModelProperty("车架号")
private String vins; // 车架号
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("接收人姓名")
private String recName; // 接收人姓名
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("接收时间")
private Date recTime; // 接收时间
@ApiModelProperty("移交备注")
private String remarks; // 移交备注
@ApiModelProperty("接收备注")
private String remarks2; // 接收备注
@ApiModelProperty("优惠包交接优惠包列表")
private List<BusDiscountpackageHandoversListVo> discountPackageList;
@ApiModelProperty("业务关联附件表")
private List<String> busFiles = new ArrayList<>();
private String modelOrgPath; //
private String modelSid; //
private String configSid; //
private String saleOrderSid; //
}

51
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/BusDiscountpackageHandoversDetailVo.java

@ -0,0 +1,51 @@
package com.yxt.anrui.terminal.api.autoservice.discountPackageHandover;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/19 10:39
*/
@Data
public class BusDiscountpackageHandoversDetailVo implements Vo {
private String sid;
private String orgPath;
@ApiModelProperty("userSid")
private String userSid; // userSid
@ApiModelProperty("合同编号")
private String contractId; // 合同编号
@ApiModelProperty("车型名称")
private String model; // 车型名称
@ApiModelProperty("车辆台数")
private String carNumber; // 车辆台数
@ApiModelProperty("车架号")
private String vins; // 车架号
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("接收人姓名")
private String recName; // 接收人姓名
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("接收时间")
private Date recTime; // 接收时间
@ApiModelProperty("接收备注")
private String remarks; // 接收备注
@ApiModelProperty("移交备注")
private String remarks2; // 移交备注
@ApiModelProperty("优惠包交接优惠包列表")
private List<BusDiscountpackageHandoversListVo> discountPackageList;
@ApiModelProperty("业务关联附件表")
private List<String> busFiles = new ArrayList<>();
private String saleOrderSid; //
private String modelOrgPath; //
private String modelSid; //
private String configSid; //
}

26
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/BusDiscountpackageHandoversListVo.java

@ -0,0 +1,26 @@
package com.yxt.anrui.terminal.api.autoservice.discountPackageHandover;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/6/19 12:02
*/
@Data
public class BusDiscountpackageHandoversListVo implements Vo {
@ApiModelProperty("sid")
private String discountSid; // sid
@ApiModelProperty("价值")
private String price; // 价值
@ApiModelProperty("数量")
private String number; // 数量
@ApiModelProperty("优惠包说明")
private String explain; // 优惠包说明
@ApiModelProperty("总价值")
private String totalPrice; // 总价值
@ApiModelProperty("优惠包名称")
private String discountName; // 优惠包名
}

17
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/discountPackageHandover/UploadPicture.java

@ -0,0 +1,17 @@
package com.yxt.anrui.terminal.api.autoservice.discountPackageHandover;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/19 14:36
*/
@Data
public class UploadPicture {
private String sid;
private List<String> imgs = new ArrayList<>();
}

7
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/app/AppService.java

@ -86,6 +86,13 @@ public class AppService {
a.setTime(f.getFinishTime() == null ? new Date() : f.getFinishTime());
a.setFlowableRecordVo(f);
a.setState(0 + "");
List<AppUserVo> taskUserInfos = f.getTaskUserInfos();
if(taskUserInfos.size() == 1){
AppUserVo appUserVo = taskUserInfos.get(0);
if("admin".equals(appUserVo.getAssigneeName())){
return;
}
}
list.add(a);
});

26
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/discountPackageHandover/AppDiscountPackageHandoverRest.java

@ -1,9 +1,6 @@
package com.yxt.anrui.terminal.biz.autoservice.discountPackageHandover;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.AppBusDiscountpackageHandoversDto;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.AppBusDiscountpackageHandoversQuery;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.AppBusDiscountpackageHandoversVo;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.AppDiscountPackageHandoverFegin;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -14,6 +11,7 @@ import org.springframework.web.bind.annotation.RestController;
import java.lang.reflect.InvocationTargetException;
import java.text.ParseException;
import java.util.List;
/**
* @author Administrator
@ -34,6 +32,16 @@ public class AppDiscountPackageHandoverRest implements AppDiscountPackageHandove
return appDiscountPackageHandoverService.listPage(pq);
}
@Override
public ResultBean<BusDiscountpackageHandoversDetailVo> getDiscountPackageHandoverDetail(String sid) {
return appDiscountPackageHandoverService.getDiscountPackageHandoverDetail(sid);
}
@Override
public ResultBean<BusDiscountpackageHandoverInitVo> getDiscountHandoverInitInfo(String sid) {
return appDiscountPackageHandoverService.getDiscountHandoverInitInfo(sid);
}
@Override
public ResultBean<AppBusDiscountpackageHandoversDto> getDiscountHandoverInfo(String sid) throws InvocationTargetException, IllegalAccessException {
return appDiscountPackageHandoverService.getDiscountHandoverInfo(sid);
@ -48,4 +56,14 @@ public class AppDiscountPackageHandoverRest implements AppDiscountPackageHandove
public ResultBean uploadPicture(AppBusDiscountpackageHandoversDto dto) throws InvocationTargetException, IllegalAccessException {
return appDiscountPackageHandoverService.uploadPicture(dto);
}
@Override
public ResultBean confirmPackageHandover(AppBusDiscountpackageHandoversDto dto) {
return appDiscountPackageHandoverService.confirmPackageHandover(dto);
}
@Override
public ResultBean<List<String>> confirmPackageHandoverImg(UploadPicture uploadPicture) {
return appDiscountPackageHandoverService.confirmPackageHandoverImg(uploadPicture);
}
}

59
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/discountPackageHandover/AppDiscountPackageHandoverService.java

@ -2,14 +2,11 @@ package com.yxt.anrui.terminal.biz.autoservice.discountPackageHandover;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverDto;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverQuery;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.AppBusDiscountpackageHandoverVo;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.app.*;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.BusDiscountpackageHandoverFeign;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.AppBusDiscountpackageHandoversDto;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.AppBusDiscountpackageHandoversQuery;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.AppBusDiscountpackageHandoversVo;
import com.yxt.anrui.terminal.api.autoservice.discountPackageHandover.*;
import com.yxt.anrui.terminal.config.CoverUtils;
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;
@ -44,12 +41,12 @@ public class AppDiscountPackageHandoverService {
public ResultBean<PagerVo<AppBusDiscountpackageHandoversVo>> listPage(PagerQuery<AppBusDiscountpackageHandoversQuery> pagerQuery) {
ResultBean<PagerVo<AppBusDiscountpackageHandoversVo>> rb = ResultBean.fireFail();
PagerQuery<AppBusDiscountpackageHandoverQuery> pq = new PagerQuery<>();
BeanUtil.copyProperties(pagerQuery,pq);
BeanUtil.copyProperties(pagerQuery, pq);
ResultBean<PagerVo<AppBusDiscountpackageHandoverVo>> voResultBean = busDiscountpackageHandoverFeign.getDiscountHandoverList(pq);
PagerVo<AppBusDiscountpackageHandoversVo> vo = new PagerVo<>();
if (voResultBean.getSuccess()) {
PagerVo<AppBusDiscountpackageHandoverVo> data = voResultBean.getData();
BeanUtil.copyProperties(data,vo);
BeanUtil.copyProperties(data, vo);
}
return rb.success().setData(vo);
}
@ -100,4 +97,50 @@ public class AppDiscountPackageHandoverService {
System.out.println(phDto);
return busDiscountpackageHandoverFeign.appUploadPicture(phDto);
}
/**
* 移动端详情页
*
* @param
* @return
*/
public ResultBean<BusDiscountpackageHandoversDetailVo> getDiscountPackageHandoverDetail(String sid) {
ResultBean<BusDiscountpackageHandoversDetailVo> rb = ResultBean.fireFail();
BusDiscountpackageHandoversDetailVo vo = new BusDiscountpackageHandoversDetailVo();
AppBusDiscountpackageHandoversDetailVo data = busDiscountpackageHandoverFeign.getDiscountPackageHandoverDetail(sid).getData();
if (null != data) {
BeanUtil.copyProperties(data, vo);
}
return rb.success().setData(vo);
}
public ResultBean confirmPackageHandover(AppBusDiscountpackageHandoversDto dto) {
ResultBean rb = ResultBean.fireFail();
AppBusDiscountpackageHandoverDto handoverDto = new AppBusDiscountpackageHandoverDto();
BeanUtil.copyProperties(dto, handoverDto);
busDiscountpackageHandoverFeign.confirmPackageHandover(handoverDto);
return rb.success();
}
public ResultBean<BusDiscountpackageHandoverInitVo> getDiscountHandoverInitInfo(String sid) {
ResultBean<BusDiscountpackageHandoverInitVo> rb = ResultBean.fireFail();
BusDiscountpackageHandoverInitVo vo = new BusDiscountpackageHandoverInitVo();
AppBusDiscountpackageHandoversDetailVo data = busDiscountpackageHandoverFeign.getDiscountPackageHandoverDetail(sid).getData();
if (null != data) {
BeanUtil.copyProperties(data, vo);
}
return rb.success().setData(vo);
}
public ResultBean<List<String>> confirmPackageHandoverImg(UploadPicture uploadPicture) {
ResultBean<List<String>> rb = ResultBean.fireFail();
AppUploadPicture dtoApp = new AppUploadPicture();
List<String> strings = new ArrayList<>();
BeanUtil.copyProperties(uploadPicture, dtoApp);
ResultBean<List<String>> listResultBean = busDiscountpackageHandoverFeign.saveConfirmPackageHandoverImg(dtoApp);
if (listResultBean.getSuccess()) {
strings = listResultBean.getData();
}
return rb.success().setData(strings);
}
}

Loading…
Cancel
Save