Browse Source

开票申请

master
God 3 years ago
parent
commit
d170e3863b
  1. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commonappendix/CommonAttachTypeEnum.java
  2. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busordermodel/BusOrderModelFeign.java
  3. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busordermodel/BusOrderModelFeignFallback.java
  4. 8
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApply.java
  5. 4
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyDetailsVo.java
  6. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyDto.java
  7. 34
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyFeign.java
  8. 29
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyFeignFallback.java
  9. 9
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyVo.java
  10. 28
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/SubmitBusSealApplyDto.java
  11. 3
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busordermodel/BusOrderModelMapper.java
  12. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busordermodel/BusOrderModelRest.java
  13. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busordermodel/BusOrderModelService.java
  14. 3
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussealapply/BusSealApplyMapper.java
  15. 12
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussealapply/BusSealApplyMapper.xml
  16. 39
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussealapply/BusSealApplyRest.java
  17. 200
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussealapply/BusSealApplyService.java
  18. 15
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplication.java
  19. 15
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDetailsVo.java
  20. 24
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDto.java
  21. 43
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeign.java
  22. 37
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeignFallback.java
  23. 46
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationOneDto.java
  24. 19
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationVo.java
  25. 29
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/SubmitFinBillApplicationDto.java
  26. 28
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/SubmitFinBillApplicationPageListDto.java
  27. 76
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublic.java
  28. 77
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicDetailsVo.java
  29. 75
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicDto.java
  30. 82
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicFeign.java
  31. 74
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicFeignFallback.java
  32. 73
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicQuery.java
  33. 75
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicVo.java
  34. 3
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFile.java
  35. 3
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileDetailsVo.java
  36. 3
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileDto.java
  37. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileFeign.java
  38. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileFeignFallback.java
  39. 3
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileVo.java
  40. 43
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/AppFlowRecordVo.java
  41. 28
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/AppFlowTaskQuery.java
  42. 19
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/AppFlowTaskVo.java
  43. 40
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowCommentDto.java
  44. 98
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowTask.java
  45. 23
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowTaskQuery.java
  46. 51
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowTaskVo.java
  47. 8
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/Flowable.java
  48. 43
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowableFallback.java
  49. 76
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowableFeign.java
  50. 90
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/TaskQuery.java
  51. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/AnruiFinApplication.java
  52. 40
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/actrutask/ActRuTaskMapper.java
  53. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/actrutask/ActRuTaskMapper.xml
  54. 91
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/actrutask/ActRuTaskRest.java
  55. 209
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/actrutask/ActRuTaskService.java
  56. 3
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationMapper.java
  57. 12
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationMapper.xml
  58. 51
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationRest.java
  59. 480
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java
  60. 65
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplicationpublic/FinBillApplicationPublicMapper.java
  61. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplicationpublic/FinBillApplicationPublicMapper.xml
  62. 104
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplicationpublic/FinBillApplicationPublicRest.java
  63. 133
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplicationpublic/FinBillApplicationPublicService.java
  64. 9
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileMapper.java
  65. 18
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileMapper.xml
  66. 7
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileRest.java
  67. 28
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileService.java
  68. 3
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleMapper.java
  69. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleService.java
  70. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  71. 4
      anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commonappendix/CommonAttachTypeEnum.java

@ -45,7 +45,8 @@ public enum CommonAttachTypeEnum {
SCENESIGN("0008", "现场签署附件"),
PAYMENT_VOUCHER("0009", "打款凭证附件"),
REMITTAN_CECONFIRMATION("0010", "汇款确认书附件"),
SEAL_APPLY("0011", "盖章附件");
SEAL_APPLY("0011", "盖章附件"),
BILL_APPLICAYION("0012", "开票申请附件");
/**
* 附件类型
*/

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busordermodel/BusOrderModelFeign.java

@ -68,6 +68,10 @@ public interface BusOrderModelFeign {
@PostMapping("/getModelByVehicleSid")
public BusOrderModelVo getModelByVehicleSid(@RequestParam("vehicleSid") String vehicleSid);
@ApiOperation("根据订单sid查询单台成交价")
@GetMapping("/getPriceByOrderSid")
String getPriceByOrderSid(String busSid);
/*********************************************手机端接口*********************************************/
@ApiOperation("手机端根据销售订单sid查询主车车型信息")
@ -86,6 +90,5 @@ public interface BusOrderModelFeign {
@GetMapping("/getModelQuantityByOrderSid")
public ResultBean<BigDecimal> getModelQuantityByOrderSid(@RequestParam("orderSid") String orderSid);
/****************************************************************************************************/
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busordermodel/BusOrderModelFeignFallback.java

@ -73,6 +73,11 @@ public class BusOrderModelFeignFallback implements BusOrderModelFeign {
return null;
}
@Override
public String getPriceByOrderSid(String busSid) {
return null;
}
@Override
public ResultBean<AppBusOrderModelVo> getAppBusOrderModelInfoBySid(String orderSid) {
ResultBean rb = ResultBean.fireFail();

8
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApply.java

@ -66,5 +66,13 @@ public class BusSealApply extends BaseEntity {
private String sealFileUrl; // 文件路径
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("流程定义的id")
private String procDefId;
@ApiModelProperty("环节定义的sid")
private String nodeSid;
@ApiModelProperty("流程实例的sid")
private String procInstSid;
@ApiModelProperty(value = "节点状态")
private String nodeState;
}

4
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyDetailsVo.java

@ -32,6 +32,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* Project: bus_seal_apply(盖章申请管理) <br/>
* File: BusSealApplyVo.java <br/>
@ -68,4 +70,6 @@ public class BusSealApplyDetailsVo implements Vo {
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("盖章附件")
private List<BusSealApplyAppendix> busSealApplyAppendices; // 盖章附件
}

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyDto.java

@ -73,6 +73,8 @@ public class BusSealApplyDto implements Dto {
private String sealFileUrl; // 文件路径
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty(value = "节点状态")
private String nodeState;
@ApiModelProperty("盖章附件")
private List<BusSealApplyAppendix> busSealApplyAppendices; // 盖章附件

34
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyFeign.java

@ -26,16 +26,19 @@
package com.yxt.anrui.buscenter.api.bussealapply;
import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.BusAdvanceGinvoiceapplyDto;
import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
/**
* Project: bus_seal_apply(盖章申请管理) <br/>
@ -78,7 +81,36 @@ public interface BusSealApplyFeign {
@ResponseBody
public ResultBean<BusSealApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
/*************************流程审批**************************/
@ApiOperation("提交盖章申请审批流程")
@PostMapping("/submitSealApply")
public ResultBean submitSealApply(@RequestBody @Valid BusSealApplyDto dto);
public ResultBean submitSealApply(@RequestBody @Valid SubmitBusSealApplyDto dto);
@ApiOperation(value = "办理(同意)")
@PostMapping("/complete")
public ResultBean complete(@ApiParam(value = "变量集合,json对象") @RequestBody Map<String, Object> variables);
@ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess/{userSid}/{businessSid}")
public ResultBean revokeProcess(
@ApiParam(value = "用户sid") @PathVariable(value = "userSid")String userSid,
@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
@ApiParam(value = "工作流任务相关--请求参数") @RequestBody FlowTaskVo flowTaskVo) ;
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject/{businessSid}")
public ResultBean taskReject(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
@ApiParam(value = "工作流任务相关--请求参数")@RequestBody FlowTaskVo flowTaskVo);
@ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess/{businessSid}")
public ResultBean breakProcess(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
@RequestBody FlowTaskVo flowTaskVo);
@ApiOperation(value = "流程历史流转记录" )
@GetMapping(value = "/task/flowRecord/{procInsId}/{deployId}")
public ResultBean flowRecord( @ApiParam(value = "流程实例id")@PathVariable(value = "procInsId")String procInsId,
@ApiParam(value = "目前没用")@PathVariable(value = "deployId")String deployId);
}

29
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyFeignFallback.java

@ -25,12 +25,14 @@
*********************************************************/
package com.yxt.anrui.buscenter.api.bussealapply;
import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
/**
* Project: bus_seal_apply(盖章申请管理) <br/>
@ -71,7 +73,32 @@ public class BusSealApplyFeignFallback implements BusSealApplyFeign {
}
@Override
public ResultBean submitSealApply(BusSealApplyDto dto) {
public ResultBean submitSealApply(SubmitBusSealApplyDto dto) {
return null;
}
@Override
public ResultBean complete(Map<String, Object> variables) {
return null;
}
@Override
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
return null;
}
@Override
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) {
return null;
}
@Override
public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) {
return null;
}
@Override
public ResultBean flowRecord(String procInsId, String deployId) {
return null;
}
}

9
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/BusSealApplyVo.java

@ -67,5 +67,12 @@ public class BusSealApplyVo implements Vo {
private String sealFileUrl; // 文件路径
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("流程定义的id")
private String procDefId;
@ApiModelProperty("环节定义的sid")
private String nodeSid;
@ApiModelProperty("流程实例的sid")
private String procInstSid;
@ApiModelProperty(value = "节点状态")
private String nodeState;
}

28
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussealapply/SubmitBusSealApplyDto.java

@ -0,0 +1,28 @@
package com.yxt.anrui.buscenter.api.bussealapply;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author liuguohui
* @version 1.0
* @description
* @date 2022/04/13
*/
@ApiModel("提交")
@Data
public class SubmitBusSealApplyDto extends BusSealApplyDto{
@ApiModelProperty("业务sid")
private String businessSid;
@ApiModelProperty("意见")
private String comment;
@ApiModelProperty("流程实例id")
private String instanceId;
@ApiModelProperty("任务id")
private String taskId;
}

3
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busordermodel/BusOrderModelMapper.java

@ -42,4 +42,7 @@ public interface BusOrderModelMapper extends BaseMapper<BusOrderModel> {
BusOrderModel fetchModByOrderSid(@Param("busOrderSid") String busOrderSid);
BusOrderModelVo getModelByVehicleSid(String vehicleSid);
@Select("select single_invoice_price from bus_order_model where orderSid = #{busOrderSid}")
String getPriceByOrderSid(String busSid);
}

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busordermodel/BusOrderModelRest.java

@ -101,6 +101,11 @@ public class BusOrderModelRest implements BusOrderModelFeign {
return vo;
}
@Override
public String getPriceByOrderSid(String busSid) {
return busOrderModelService.getPriceByOrderSid(busSid);
}
@Override
public ResultBean<AppBusOrderModelVo> getAppBusOrderModelInfoBySid(String orderSid) {
return new ResultBean<AppBusOrderModelVo>().success().setData(busOrderModelService.getAppBusOrderModelInfoBySid(orderSid));

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busordermodel/BusOrderModelService.java

@ -260,4 +260,8 @@ public class BusOrderModelService extends MybatisBaseService<BusOrderModelMapper
public BusOrderModelVo getModelByVehicleSid(String vehicleSid) {
return baseMapper.getModelByVehicleSid(vehicleSid);
}
public String getPriceByOrderSid(String busSid) {
return baseMapper.getPriceByOrderSid(busSid);
}
}

3
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussealapply/BusSealApplyMapper.java

@ -36,6 +36,7 @@ import com.yxt.anrui.buscenter.api.bussealapply.BusSealApply;
import com.yxt.anrui.buscenter.api.bussealapply.BusSealApplyVo;
import java.util.List;
import java.util.Map;
/**
* Project: bus_seal_apply(盖章申请管理) <br/>
@ -62,4 +63,6 @@ public interface BusSealApplyMapper extends BaseMapper<BusSealApply> {
@Select("select * from bus_seal_apply")
List<BusSealApplyVo> selectListVo();
int updateFlowFiled(Map<String, Object> map);
}

12
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussealapply/BusSealApplyMapper.xml

@ -10,4 +10,16 @@
<select id="selectListAllVo" resultType="com.yxt.anrui.buscenter.api.bussealapply.BusSealApplyVo">
SELECT * FROM bus_seal_apply <where> ${ew.sqlSegment} </where>
</select>
<update id="updateFlowFiled">
UPDATE bus_seal_apply
SET nodeState=#{nodeState}, nodeSid=#{taskDefKey}
<if test="procDefId != null and procDefId != ''">
, procDefId=#{procDefId}
</if>
<if test="procInsId != null and procInsId != ''">
, procInstSid=#{procInsId}
</if>
WHERE sid=#{sid}
</update>
</mapper>

39
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussealapply/BusSealApplyRest.java

@ -25,21 +25,19 @@
*********************************************************/
package com.yxt.anrui.buscenter.biz.bussealapply;
import com.yxt.anrui.buscenter.api.bussealapply.*;
import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Delete;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import com.yxt.anrui.buscenter.api.bussealapply.BusSealApply;
import com.yxt.anrui.buscenter.api.bussealapply.BusSealApplyQuery;
import com.yxt.anrui.buscenter.api.bussealapply.BusSealApplyVo;
import com.yxt.anrui.buscenter.api.bussealapply.BusSealApplyDetailsVo;
import com.yxt.anrui.buscenter.api.bussealapply.BusSealApplyDto;
import com.yxt.anrui.buscenter.api.bussealapply.BusSealApplyFeign;
import java.util.Map;
/**
* Project: bus_seal_apply(盖章申请管理) <br/>
@ -80,7 +78,7 @@ public class BusSealApplyRest implements BusSealApplyFeign {
@Override
@ApiOperation("根据sid批量删除")
@PostMapping("/delBySids")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
busSealApplyService.delAllBySids(sids);
@ -97,7 +95,32 @@ public class BusSealApplyRest implements BusSealApplyFeign {
}
@Override
public ResultBean submitSealApply(BusSealApplyDto dto) {
public ResultBean submitSealApply(SubmitBusSealApplyDto dto) {
return busSealApplyService.submitSealApply(dto);
}
@Override
public ResultBean complete(Map<String, Object> variables) {
return busSealApplyService.complete(variables);
}
@Override
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
return busSealApplyService.revokeProcess(userSid, businessSid, flowTaskVo);
}
@Override
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) {
return busSealApplyService.taskReject(businessSid, flowTaskVo);
}
@Override
public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) {
return busSealApplyService.breakProcess(businessSid, flowTaskVo);
}
@Override
public ResultBean flowRecord(String procInsId, String deployId) {
return busSealApplyService.flowRecord(procInsId, deployId);
}
}

200
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussealapply/BusSealApplyService.java

@ -28,15 +28,19 @@ package com.yxt.anrui.buscenter.biz.bussealapply;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.api.R;
import com.yxt.anrui.base.api.commonappendix.*;
import com.yxt.anrui.buscenter.api.bussealapply.*;
import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
import com.yxt.anrui.buscenter.biz.flow.FlowableService;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkDto;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFeign;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFlowStateEnum;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkTypeEnum;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.api.utils.ProcessStateEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.common.base.config.component.FileUploadComponent;
@ -50,6 +54,7 @@ import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -80,6 +85,8 @@ public class BusSealApplyService extends MybatisBaseService<BusSealApplyMapper,
private FlowableService flowableService;
@Autowired
private SysFormLinkFeign sysFormLinkFeign;
@Autowired
private FlowTaskFeign flowTaskFeign;
private QueryWrapper<BusSealApply> createQueryWrapper(BusSealApplyQuery query) {
// todo: 这里根据具体业务调整查询条件
@ -131,6 +138,7 @@ public class BusSealApplyService extends MybatisBaseService<BusSealApplyMapper,
}
}
busSealApply.setSealFileUrl(sealFileUrl.substring(0, sealFileUrl.lastIndexOf(",")));
busSealApply.setNodeState("待提交");
save(busSealApply);
return rb.success().setMsg("操作成功").setData(busSealApply.getSid());
}
@ -152,6 +160,7 @@ public class BusSealApplyService extends MybatisBaseService<BusSealApplyMapper,
}
}
dto.setSealFileUrl(sealFileUrl.substring(0, sealFileUrl.lastIndexOf(",")));
dto.setNodeState("待提交");
updateBySid(dto,dtoSid);
return rb.success().setMsg("操作成功").setData(dtoSid);
}
@ -186,6 +195,19 @@ public class BusSealApplyService extends MybatisBaseService<BusSealApplyMapper,
sealCompleteFileUrl += path + ",";
}
vo.setSealFileUrl(sealCompleteFileUrl.substring(0,sealCompleteFileUrl.lastIndexOf(",")));
ResultBean<List<CommonAppendixVo>> listResultBean = commonAppendixFeign.selByLinkSid(sid);
List<CommonAppendixVo> data = listResultBean.getData();
List<BusSealApplyAppendix> busSealApplyAppendices = new ArrayList<>();
BusSealApplyAppendix busSealApplyAppendix = new BusSealApplyAppendix();
for (CommonAppendixVo datum : data) {
String filePath = datum.getFilePath();
String urlPrefix = fileUploadComponent.getUrlPrefix();
path = urlPrefix + filePath;
datum.setFilePath(path);
BeanUtil.copyProperties(datum,busSealApplyAppendix);
busSealApplyAppendices.add(busSealApplyAppendix);
}
vo.setBusSealApplyAppendices(busSealApplyAppendices);
return vo;
}
@ -205,26 +227,35 @@ public class BusSealApplyService extends MybatisBaseService<BusSealApplyMapper,
}
}
public ResultBean submitSealApply(BusSealApplyDto dto) {
public ResultBean submitSealApply(SubmitBusSealApplyDto dto) {
String orgSid = checkUserOrg(dto.getStaffSid());
String businessSid = "";
if (StringUtils.isBlank(orgSid)) {
return new ResultBean().fail().setMsg("用户组织机构不能为空");
}
ResultBean<String> stringResultBean = saveOrUpdateDto(dto);
String data = stringResultBean.getData();
businessSid = data;
// ???待完善(根据虚拟订单审批流程)
ResultBean resultBean = saveOrUpdateDto(dto);
String businessSid = resultBean.getData().toString();
Map<String, Object> variables = new HashMap<>();
variables.put("businessSid", businessSid);
variables.put("isLoan", true);
variables.put("orgSid", orgSid);//部门sid
ResultBean resultBean = flowableService.businessStart(ProcDefEnum.SEALAPPLY.getProDefId(), dto.getUserSid(), variables);
if (resultBean.getSuccess() && resultBean.getData() != null) {
Map<String, String> map = (Map<String, String>) resultBean.getData();
saveSysFormLink(map);
variables.put("orgSid", orgSid); //部门sid
if (StringUtils.isBlank(dto.getTaskId())) { // 新提交
String proDefId = ProcDefEnum.SEALAPPLY.getProDefId();
ResultBean resultBean1 = flowableService.businessStart(ProcDefEnum.SEALAPPLY.getProDefId(), dto.getUserSid(), variables);
if (resultBean1.getSuccess() && resultBean1.getData() != null) {
Map<String, String> map = (Map<String, String>) resultBean1.getData();
//更新业务表中的流程状态
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", businessSid);
paramMap.put("procDefId", ProcDefEnum.SEALAPPLY.getProDefId());
paramMap.put("nodeState", map.get("nodeState"));
paramMap.put("procInsId", map.get("procInsId"));
paramMap.put("taskDefKey", map.get("taskDefKey"));
updateFlowFiled(paramMap);
}
return resultBean1;
} else { // 驳回到发起人后再次提交
variables.put("comment", StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交");
variables.put("instanceId", dto.getInstanceId());
variables.put("taskId", dto.getTaskId());
variables.put("userSid", dto.getUserSid());
return complete(variables);
}
return resultBean;
}
/**
@ -268,4 +299,139 @@ public class BusSealApplyService extends MybatisBaseService<BusSealApplyMapper,
sysFormLinkFeign.updateFiled(updateMap);
}
}
/**
* 办理
* @param variables
* @return
*/
public ResultBean complete(Map<String, Object> variables) {
BusinessVariables bv= BusinessVariables.builder().build();
bv.setDetailUrl("");
bv.setHandleUrl("");
bv.setFormVariables(variables);
ResultBean<com.yxt.anrui.flowable.api.flowtask.FlowTask> resultBean = flowTaskFeign.businessComplete(bv);
if (!resultBean.getSuccess()) {
return resultBean;
}
String nodeState = "";
String taskDefKey = "";
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", variables.get("businessSid").toString());
if (resultBean.getData() != null) {
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(resultBean.getData().getProcInsId());
if (listResultBean.getSuccess() && listResultBean.getData() != null && listResultBean.getData().size() != 0) {
nodeState = listResultBean.getData().get(0).getName_();
taskDefKey = listResultBean.getData().get(0).getTask_def_key_();
} else {
nodeState = ProcessStateEnum.FINISHED.getStateName();
taskDefKey = "Event_end";
paramMap.put("flowState", SysFormLinkFlowStateEnum.FINISH.getCode());
}
}
paramMap.put("nodeState", nodeState);
paramMap.put("taskDefKey", taskDefKey);
updateFlowFiled(paramMap);
return resultBean;
}
/**
* 更新流程相关的状态
* @param map
* @return
*/
private int updateFlowFiled(Map<String, Object> map) {
return baseMapper.updateFlowFiled(map);
}
/**
* 撤回
* @param userSid
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
fl.setUserSid(userSid);
ResultBean<List<LatestTaskVo>> resultBean = flowTaskFeign.revokeProcess(fl);
if (!resultBean.getSuccess()) {
return resultBean;
}
String nodeState = resultBean.getData().get(0).getName_();
String taskDefKey = resultBean.getData().get(0).getTask_def_key_();
String incomingSourceRef = resultBean.getData().get(0).getIncomingSourceRef();
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", businessSid);
if (incomingSourceRef.contains("start")) {
paramMap.put("nodeState", SysFormLinkFlowStateEnum.UNCOMMITTED.getState());
paramMap.put("taskDefKey", taskDefKey);
paramMap.put("flowState", SysFormLinkFlowStateEnum.UNCOMMITTED.getCode());
} else {
paramMap.put("nodeState",nodeState );
paramMap.put("taskDefKey",taskDefKey );
}
updateFlowFiled(paramMap);
return resultBean;
}
/**
* 驳回
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
ResultBean<List<LatestTaskVo>> resultBean = flowTaskFeign.taskReject(fl);
if (!resultBean.getSuccess()) {
return resultBean;
}
String nodeState = resultBean.getData().get(0).getName_();
String taskDefKey = resultBean.getData().get(0).getTask_def_key_();
String incomingSourceRef = resultBean.getData().get(0).getIncomingSourceRef();
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", businessSid);
paramMap.put("nodeState", nodeState);
paramMap.put("taskDefKey", taskDefKey);
if (incomingSourceRef.contains("start")) {
paramMap.put("flowState", SysFormLinkFlowStateEnum.REJECT.getCode());
}
updateFlowFiled(paramMap);
return resultBean;
}
/**
* 终止流程
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
ResultBean resultBean = flowTaskFeign.breakProcess(fl);
if (!resultBean.getSuccess()) {
return resultBean;
}
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", businessSid);
paramMap.put("nodeState", String.valueOf(resultBean.getData()));
paramMap.put("taskDefKey", "Event_end");
paramMap.put("flowState", SysFormLinkFlowStateEnum.BREAK.getCode());
updateFlowFiled(paramMap);
return resultBean;
}
/**
* 流程历史流转记录
* @param procInsId
* @param deployId
* @return
*/
public ResultBean flowRecord(String procInsId, String deployId) {
return flowTaskFeign.businessFlowRecord(procInsId,deployId);
}
}

15
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplication.java

@ -74,4 +74,19 @@ public class FinBillApplication extends BaseEntity {
private Integer num; // 车辆总台数
@ApiModelProperty("申请日期")
private String applyDate; // 申请日期
@ApiModelProperty("开票公共表sid")
private String billAppPublicSid; // 开票公共表sid
@ApiModelProperty("流程定义的id")
private String procDefId;
@ApiModelProperty("环节定义的sid")
private String nodeSid;
@ApiModelProperty("流程实例的sid")
private String procInstSid;
@ApiModelProperty(value = "节点状态")
private String nodeState;
@ApiModelProperty(value = "是否高低开")
private Boolean isHighAndLowOpen;
@ApiModelProperty(value = "是否延迟开票")
private Integer isDelayBill;
}

15
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDetailsVo.java

@ -26,12 +26,18 @@
package com.yxt.anrui.fin.api.finbillapplication;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileDto;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDto;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleVo;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* Project: anrui-fin(开票申请管理) <br/>
* File: FinBillApplicationVo.java <br/>
@ -69,5 +75,12 @@ public class FinBillApplicationDetailsVo implements Vo {
private String totalBillMoney; // 开票金额合计
@ApiModelProperty("开票状态")
private String billState; // 开票状态
@ApiModelProperty("开票公共表sid")
private String billAppPublicSid; // 开票公共表sid
@ApiModelProperty("开票车辆信息")
private List<FinBillVehicleVo> finBillVehicles; // 开票车辆信息
@ApiModelProperty("附件信息")
private List<FinBillApplicationAppendxVo> finBillApplicationAppendxs; // 附件信息
@ApiModelProperty("开票申请-附件关联信息")
private List<FinBillFileVo> finBillFiles; // 开票申请-附件关联信息
}

24
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDto.java

@ -26,6 +26,7 @@
package com.yxt.anrui.fin.api.finbillapplication;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileDto;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDto;
import com.yxt.common.core.dto.Dto;
@ -54,10 +55,12 @@ public class FinBillApplicationDto implements Dto {
private String sid; // sid
@ApiModelProperty("userSid")
private String userSid; // userSid
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("合同sid")
private String contractSid; // 合同sid
@ApiModelProperty("合同编号")
@ -74,8 +77,25 @@ public class FinBillApplicationDto implements Dto {
private String billState; // 开票状态
@ApiModelProperty("附件类型")
private String fileType; // 附件类型
@ApiModelProperty("开票公共表sid")
private String billAppPublicSid; // 开票公共表sid
@ApiModelProperty("流程定义的id")
private String procDefId;
@ApiModelProperty("环节定义的sid")
private String nodeSid;
@ApiModelProperty("流程实例的sid")
private String procInstSid;
@ApiModelProperty(value = "是否高低开")
private Boolean isHighAndLowOpen;
@ApiModelProperty(value = "是否延迟开票")
private String isDelayBill;
@ApiModelProperty(value = "节点状态")
private String nodeState;
@ApiModelProperty("开票车辆信息")
private List<FinBillVehicleDto> finBillVehicles; // 开票车辆信息
@ApiModelProperty("附件信息")
private List<FinBillApplicationAppendxDto> finBillApplicationAppendxs; // 附件信息
@ApiModelProperty("开票申请-附件关联信息")
private List<FinBillFileDto> finBillFiles; // 开票申请-附件关联信息
}

43
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeign.java

@ -25,15 +25,18 @@
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplication;
import com.yxt.anrui.fin.api.flow.FlowTaskVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import javax.validation.Valid;
import java.util.Map;
/**
* Project: anrui-fin(开票申请管理) <br/>
@ -75,4 +78,42 @@ public interface FinBillApplicationFeign {
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody
public ResultBean<FinBillApplicationDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
/*************************流程管理接口********************************/
@ApiOperation("列表提交开票申请审批流程")
@PostMapping("/submitFinBillApplicationPageList")
public ResultBean submitFinBillApplicationPageList(@RequestBody @Valid SubmitFinBillApplicationPageListDto dto);
@ApiOperation("提交开票申请审批流程")
@PostMapping("/submitFinBillApplication")
public ResultBean submitFinBillApplication(@RequestBody @Valid SubmitFinBillApplicationDto dto);
@ApiOperation(value = "办理(同意)")
@PostMapping("/complete")
public ResultBean complete(@ApiParam(value = "变量集合,json对象") @RequestBody Map<String, Object> variables);
@ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess/{userSid}/{businessSid}")
public ResultBean revokeProcess(
@ApiParam(value = "用户sid") @PathVariable(value = "userSid")String userSid,
@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
@ApiParam(value = "工作流任务相关--请求参数") @RequestBody FlowTaskVo flowTaskVo) ;
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject/{businessSid}")
public ResultBean taskReject(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
@ApiParam(value = "工作流任务相关--请求参数")@RequestBody FlowTaskVo flowTaskVo);
@ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess/{businessSid}")
public ResultBean breakProcess(@ApiParam(value = "业务sid") @PathVariable(value = "businessSid")String businessSid,
@RequestBody FlowTaskVo flowTaskVo);
@ApiOperation(value = "流程历史流转记录" )
@GetMapping(value = "/task/flowRecord/{procInsId}/{deployId}")
public ResultBean flowRecord( @ApiParam(value = "流程实例id")@PathVariable(value = "procInsId")String procInsId,
@ApiParam(value = "目前没用")@PathVariable(value = "deployId")String deployId);
}

37
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeignFallback.java

@ -25,12 +25,14 @@
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplication;
import com.yxt.anrui.fin.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
/**
* Project: anrui-fin(开票申请管理) <br/>
@ -69,4 +71,39 @@ public class FinBillApplicationFeignFallback implements FinBillApplicationFeign
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finbillapplication/fetchDetailsBySid无法访问");
}
@Override
public ResultBean submitFinBillApplicationPageList(SubmitFinBillApplicationPageListDto dto) {
return null;
}
@Override
public ResultBean submitFinBillApplication(SubmitFinBillApplicationDto dto) {
return null;
}
@Override
public ResultBean complete(Map<String, Object> variables) {
return null;
}
@Override
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
return null;
}
@Override
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) {
return null;
}
@Override
public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) {
return null;
}
@Override
public ResultBean flowRecord(String procInsId, String deployId) {
return null;
}
}

46
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationOneDto.java

@ -0,0 +1,46 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplication;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileDto;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDto;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class FinBillApplicationOneDto implements Dto {
private String sid; // sid
@ApiModelProperty("userSid")
private String userSid; // userSid
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
}

19
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationVo.java

@ -69,5 +69,22 @@ public class FinBillApplicationVo implements Vo {
private String totalBillMoney; // 开票金额合计
@ApiModelProperty("开票状态")
private String billState; // 开票状态
@ApiModelProperty("开票公共表sid")
private String billAppPublicSid; // 开票公共表sid
@ApiModelProperty("流程定义的id")
private String procDefId;
@ApiModelProperty("环节定义的sid")
private String nodeSid;
@ApiModelProperty("流程实例的sid")
private String procInstSid;
@ApiModelProperty("车辆总台数")
private Integer num;
@ApiModelProperty("申请日期")
private String applyDate;
@ApiModelProperty(value = "节点状态")
private String nodeState;
@ApiModelProperty(value = "是否高低开")
private Boolean isHighAndLowOpen;
@ApiModelProperty(value = "是否延迟开票")
private String isDelayBill;
}

29
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/SubmitFinBillApplicationDto.java

@ -0,0 +1,29 @@
package com.yxt.anrui.fin.api.finbillapplication;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author liuguohui
* @version 1.0
* @description
* @date 2022/04/13
*/
@ApiModel("提交")
@Data
public class SubmitFinBillApplicationDto extends FinBillApplicationDto {
@ApiModelProperty("业务sid")
private String businessSid;
@ApiModelProperty("意见")
private String comment;
@ApiModelProperty("流程实例id")
private String instanceId;
@ApiModelProperty("任务id")
private String taskId;
}

28
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/SubmitFinBillApplicationPageListDto.java

@ -0,0 +1,28 @@
package com.yxt.anrui.fin.api.finbillapplication;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author liuguohui
* @version 1.0
* @description
* @date 2022/04/13
*/
@ApiModel("提交")
@Data
public class SubmitFinBillApplicationPageListDto extends FinBillApplicationOneDto {
@ApiModelProperty("业务sid")
private String businessSid;
@ApiModelProperty("意见")
private String comment;
@ApiModelProperty("流程实例id")
private String instanceId;
@ApiModelProperty("任务id")
private String taskId;
}

76
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublic.java

@ -0,0 +1,76 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplicationpublic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublic.java <br/>
* Class: com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublic <br/>
* Description: 开票申请公共表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "开票申请公共表", description = "开票申请公共表")
@TableName("fin_bill_application_public")
public class FinBillApplicationPublic extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("合同sid")
private String contractSid; // 合同sid
@ApiModelProperty("合同编号")
private String contractNo; // 合同编号
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("开票金额合计")
private BigDecimal totalBillMoney; // 开票金额合计
@ApiModelProperty("开票状态")
private String billState; // 开票状态
@ApiModelProperty("车辆总台数")
private Integer num; // 车辆总台数
@ApiModelProperty("申请日期")
private String applyDate; // 申请日期
}

77
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicDetailsVo.java

@ -0,0 +1,77 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplicationpublic;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicVo.java <br/>
* Class: com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicVo <br/>
* Description: 开票申请公共表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "开票申请公共表 视图数据详情", description = "开票申请公共表 视图数据详情")
public class FinBillApplicationPublicDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("合同sid")
private String contractSid; // 合同sid
@ApiModelProperty("合同编号")
private String contractNo; // 合同编号
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("开票金额合计")
private String totalBillMoney; // 开票金额合计
@ApiModelProperty("开票状态")
private String billState; // 开票状态
@ApiModelProperty("车辆总台数")
private Integer num; // 车辆总台数
@ApiModelProperty("申请日期")
private String applyDate; // 申请日期
}

75
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicDto.java

@ -0,0 +1,75 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplicationpublic;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicDto.java <br/>
* Class: com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicDto <br/>
* Description: 开票申请公共表 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "开票申请公共表 数据传输对象", description = "开票申请公共表 数据传输对象")
public class FinBillApplicationPublicDto implements Dto {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("合同sid")
private String contractSid; // 合同sid
@ApiModelProperty("合同编号")
private String contractNo; // 合同编号
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("开票金额合计")
private String totalBillMoney; // 开票金额合计
@ApiModelProperty("开票状态")
private String billState; // 开票状态
@ApiModelProperty("车辆总台数")
private Integer num; // 车辆总台数
@ApiModelProperty("申请日期")
private String applyDate; // 申请日期
}

82
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicFeign.java

@ -0,0 +1,82 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplicationpublic;
import com.yxt.anrui.fin.api.flow.FlowTaskVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicFeign.java <br/>
* Class: com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicFeign <br/>
* Description: 开票申请公共表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "开票申请公共表")
@FeignClient(
contextId = "anrui-fin-FinBillApplicationPublic",
name = "anrui-fin",
path = "v1/finbillapplicationpublic",
fallback = FinBillApplicationPublicFeignFallback.class)
public interface FinBillApplicationPublicFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<FinBillApplicationPublicVo>> listPage(@RequestBody PagerQuery<FinBillApplicationPublicQuery> pq);
@ApiOperation("新增或修改")
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody FinBillApplicationPublicDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody
public ResultBean<FinBillApplicationPublicDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
}

74
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicFeignFallback.java

@ -0,0 +1,74 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplicationpublic;
import com.yxt.anrui.fin.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicFeignFallback.java <br/>
* Class: com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicFeignFallback <br/>
* Description: 开票申请公共表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Component
public class FinBillApplicationPublicFeignFallback implements FinBillApplicationPublicFeign {
@Override
public ResultBean<PagerVo<FinBillApplicationPublicVo>> listPage(PagerQuery<FinBillApplicationPublicQuery> pq){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finbillapplicationpublic/listPage无法访问");
}
@Override
public ResultBean save(FinBillApplicationPublicDto dto){
return ResultBean.fireFail().setMsg("接口anrui-fin/finbillapplicationpublic/save无法访问");
}
@Override
public ResultBean delBySids( String[] sids){
return ResultBean.fireFail().setMsg("接口anrui-fin/finbillapplicationpublic/delBySids无法访问");
}
@Override
public ResultBean<FinBillApplicationPublicDetailsVo> fetchDetailsBySid(String sid){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finbillapplicationpublic/fetchDetailsBySid无法访问");
}
}

73
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicQuery.java

@ -0,0 +1,73 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplicationpublic;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicQuery.java <br/>
* Class: com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicQuery <br/>
* Description: 开票申请公共表 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "开票申请公共表 查询条件", description = "开票申请公共表 查询条件")
public class FinBillApplicationPublicQuery implements Query {
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("合同编号")
private String contractNo; // 合同编号
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("开票类型key")
private String billTypeKey; // 开票类型key
@ApiModelProperty("挂靠公司名称")
private String billName; // 挂靠公司名称
@ApiModelProperty("申请开始日期")
private String applyStartDate; // 申请开始日期
@ApiModelProperty("申请结束日期")
private String applyEndDate; // 申请结束日期
@ApiModelProperty("开票状态")
private String billState; // 开票状态
}

75
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplicationpublic/FinBillApplicationPublicVo.java

@ -0,0 +1,75 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finbillapplicationpublic;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicVo.java <br/>
* Class: com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicVo <br/>
* Description: 开票申请公共表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "开票申请公共表 视图数据对象", description = "开票申请公共表 视图数据对象")
public class FinBillApplicationPublicVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("合同sid")
private String contractSid; // 合同sid
@ApiModelProperty("合同编号")
private String contractNo; // 合同编号
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("开票金额合计")
private String totalBillMoney; // 开票金额合计
@ApiModelProperty("开票状态")
private String billState; // 开票状态
@ApiModelProperty("车辆总台数")
private Integer num; // 车辆总台数
@ApiModelProperty("申请日期")
private String applyDate; // 申请日期
}

3
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFile.java

@ -58,5 +58,6 @@ public class FinBillFile extends BaseEntity {
private String fileType; // 附件类型
@ApiModelProperty("附件sid")
private String fileSid; // 附件sid
@ApiModelProperty("附件路径")
private String fileUrl; // 附件路径
}

3
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileDetailsVo.java

@ -59,5 +59,6 @@ public class FinBillFileDetailsVo implements Vo {
private String fileType; // 附件类型
@ApiModelProperty("附件sid")
private String fileSid; // 附件sid
@ApiModelProperty("附件路径")
private String fileUrl; // 附件路径
}

3
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileDto.java

@ -59,5 +59,6 @@ public class FinBillFileDto implements Dto {
private String fileType; // 附件类型
@ApiModelProperty("附件sid")
private String fileSid; // 附件sid
@ApiModelProperty("附件路径")
private String fileUrl; // 附件路径
}

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileFeign.java

@ -75,4 +75,9 @@ public interface FinBillFileFeign {
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody
public ResultBean<FinBillFileDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation("查看图片")
@PostMapping("/fetchFileBySid")
@ResponseBody
public ResultBean<List<FinBillFileDetailsVo>> fetchFileBySid(@RequestParam("billAppSid") String billAppSid,@RequestParam("fileType") String fileType);
}

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileFeignFallback.java

@ -69,4 +69,9 @@ public class FinBillFileFeignFallback implements FinBillFileFeign {
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finbillfile/fetchDetailsBySid无法访问");
}
@Override
public ResultBean<List<FinBillFileDetailsVo>> fetchFileBySid(String billAppSid, String fileType) {
return null;
}
}

3
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinBillFileVo.java

@ -59,5 +59,6 @@ public class FinBillFileVo implements Vo {
private String fileType; // 附件类型
@ApiModelProperty("附件sid")
private String fileSid; // 附件sid
@ApiModelProperty("附件路径")
private String fileUrl; // 附件路径
}

43
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/AppFlowRecordVo.java

@ -0,0 +1,43 @@
package com.yxt.anrui.fin.api.flow;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Description
* @Author liuguohui
* @Date 2021/12/27
*/
@Data
@ApiModel("手机端审批流程")
public class AppFlowRecordVo implements Vo {
@ApiModelProperty(value = "任务名称")
private String taskName;
@ApiModelProperty(value = "任务执行人名称")
private String assigneeName;
@ApiModelProperty("任务执行人头像")
private String assigneeHeadImage;
@ApiModelProperty("任务创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String createTime;
@ApiModelProperty("任务完成时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String finishTime;
@ApiModelProperty("任务耗时")
private String duration;
@ApiModelProperty("意见类别 1正常(同意)意见 2退回意见 3 驳回意见 4 委派意见 5 转办意见 6 终止流程 7 撤回流程")
private String type;
@ApiModelProperty("意见内容")
private String comment;
}

28
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/AppFlowTaskQuery.java

@ -0,0 +1,28 @@
package com.yxt.anrui.fin.api.flow;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Description
* @Author liuguohui
* @Date 2021/12/27
*/
@Data
@ApiModel("手机端查询待办订单任务详情")
public class AppFlowTaskQuery implements Query {
@ApiModelProperty(value = "订单sid", required = true)
@NotBlank(message = "订单sid不能为空")
private String orderSid;
@ApiModelProperty(value = "流程实例ID")
private String procInsId;
@ApiModelProperty(value = "流程部署编号")
private String deployId;
}

19
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/AppFlowTaskVo.java

@ -0,0 +1,19 @@
package com.yxt.anrui.fin.api.flow;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Description
* @Author liuguohui
* @Date 2021/12/27
*/
@Data
public class AppFlowTaskVo implements Vo {
@ApiModelProperty(value = "审批流程")
private List<AppFlowRecordVo> taskList;
}

40
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowCommentDto.java

@ -0,0 +1,40 @@
package com.yxt.anrui.fin.api.flow;
import lombok.Builder;
import lombok.Data;
import java.io.Serializable;
/**
* @author XuanXuan
* @date 2021/3/28 15:50
*/
@Data
@Builder
/*@NoArgsConstructor
@AllArgsConstructor*/
public class FlowCommentDto implements Serializable {
public FlowCommentDto() {
}
public FlowCommentDto(String type, String comment) {
this.type = type;
this.comment = comment;
}
/**
*
*/
private static final long serialVersionUID = 1929734226858491967L;
/**
* 意见类别 1正常同意意见 2退回意见 3 驳回意见 4 委派意见 5 转办意见 6 终止流程 7 撤回流程
*/
private String type;
/**
* 意见内容
*/
private String comment;
}

98
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowTask.java

@ -0,0 +1,98 @@
package com.yxt.anrui.fin.api.flow;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>工作流任务<p>
*
* @author XuanXuan
* @date 2021-04-03
*/
@ApiModel("工作流任务相关-返回参数")
@Data
public class FlowTask extends BaseEntity implements Serializable {
@ApiModelProperty("任务编号")
private String taskId;
@ApiModelProperty("任务名称")
private String taskName;
@ApiModelProperty("任务Key")
private String taskDefKey;
@ApiModelProperty("任务执行人Id")
private Long assigneeId;
@ApiModelProperty("部门名称")
private String deptName;
@ApiModelProperty("流程发起人部门名称")
private String startDeptName;
@ApiModelProperty("任务执行人名称")
private String assigneeName;
@ApiModelProperty("任务执行人头像")
private String assigneeHeadImage;
@ApiModelProperty("流程发起人Id")
private String startUserId;
@ApiModelProperty("流程发起人名称")
private String startUserName;
@ApiModelProperty("流程类型")
private String category;
@ApiModelProperty("流程变量信息")
private Object procVars;
@ApiModelProperty("局部变量信息")
private Object taskLocalVars;
@ApiModelProperty("流程部署编号")
private String deployId;
@ApiModelProperty("流程ID")
private String procDefId;
@ApiModelProperty("流程key")
private String procDefKey;
@ApiModelProperty("流程定义名称")
private String procDefName;
@ApiModelProperty("流程定义内置使用版本")
private int procDefVersion;
@ApiModelProperty("流程实例ID")
private String procInsId;
@ApiModelProperty("历史流程实例ID")
private String hisProcInsId;
@ApiModelProperty("任务耗时")
private String duration;
@ApiModelProperty("任务意见")
private FlowCommentDto comment = new FlowCommentDto();
@ApiModelProperty("候选执行人")
private String candidate;
@ApiModelProperty("任务创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty("任务完成时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date finishTime;
}

23
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowTaskQuery.java

@ -0,0 +1,23 @@
package com.yxt.anrui.fin.api.flow;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author hanweijia
* @date 2021/11/06 13:53
* @description
*/
@Data
public class FlowTaskQuery implements Query {
private static final long serialVersionUID = -7395299971899690002L;
@ApiModelProperty(value = "用户sid", required = true)
private String userSid;
@ApiModelProperty(value = "zd", required = true)
private String zd;
@ApiModelProperty(value = "days", required = true)
private String days;
}

51
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowTaskVo.java

@ -0,0 +1,51 @@
package com.yxt.anrui.fin.api.flow;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* <p>流程任务<p>
*
* @author XuanXuan
* @date 2021-04-03
*/
@ApiModel("工作流任务相关--请求参数")
@Data
public class FlowTaskVo {
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("用户Id")
private String userId;
@ApiModelProperty("用户Sid")
private String userSid;
@ApiModelProperty("任务意见")
private String comment;
@ApiModelProperty("流程实例Id")
private String instanceId;
@ApiModelProperty("节点")
private String targetKey;
@ApiModelProperty("流程变量信息")
private Map<String, Object> values=new HashMap<>();
@ApiModelProperty("审批人")
private String assignee;
@ApiModelProperty("候选人")
private List<String> candidateUsers=new ArrayList<>();
@ApiModelProperty("审批组")
private List<String> candidateGroups=new ArrayList<>();
}

8
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/Flowable.java

@ -0,0 +1,8 @@
package com.yxt.anrui.fin.api.flow;
import com.yxt.common.core.domain.BaseEntity;
import lombok.Data;
@Data
public class Flowable extends BaseEntity {
}

43
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowableFallback.java

@ -0,0 +1,43 @@
package com.yxt.anrui.fin.api.flow;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Component;
import java.util.Map;
@Component
public class FlowableFallback implements FlowableFeign{
@Override
public ResultBean businessStart(String procDefId, String userSid, Map<String, Object> variables) {
return null;
}
@Override
public ResultBean processPagerList(Integer pageNum, Integer pageSize) {
return null;
}
@Override
public ResultBean myprocess( String userSid, PagerQuery<FlowTaskQuery> taskQueryPagerQuery) {
return null;
}
@Override
public ResultBean getAppFlowRecordList(AppFlowTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-buscenter/bussolutiondetail/getOrderTaskDetaile无法访问");
}
@Override
public ResultBean stopProcess(FlowTaskVo flowTaskVo) {
return null;
}
@Override
public ResultBean deleteProcess(String procInsId) {
return null;
}
}

76
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/FlowableFeign.java

@ -0,0 +1,76 @@
package com.yxt.anrui.fin.api.flow;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
@Api(tags = "Flowable")
@FeignClient(
contextId = "anrui-fin-flow-Flowable",
name = "anrui-fin",
path = "v1/flow",
fallback = FlowableFallback.class)
public interface FlowableFeign {
/**
* 业务系统发起流程申请
* @param procDefId 流程定义id
* @param userSid 用户sid
* @param variables form参数
* @return
*/
@PostMapping("/businessStart/{procDefId}/{userSid}")
public ResultBean businessStart(@ApiParam(value = "流程定义id") @PathVariable(value = "procDefId") String procDefId,
@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid,
@ApiParam(value = "变量集合,json对象") @RequestBody Map<String, Object> variables);
/**
* 流程定义列表 一般业务中不需要查询该列表
* @param pageNum 页数
* @param pageSize 容量
* @return
*/
@PostMapping("/processPagerList/{userSid}")
public ResultBean processPagerList(@ApiParam(value = "当前页码", required = true) @RequestParam("pageNum") Integer pageNum,
@ApiParam(value = "每页条数", required = true) @RequestParam("pageSize") Integer pageSize);
/**
* 我的流程 我发起的流程
* @param userSid 用户sid
* @param taskQueryPagerQuery 查询参数
* @return
*/
@PostMapping("/myprocess/{userSid}")
public ResultBean myprocess(@ApiParam(value = "用户sid") @PathVariable(value = "userSid") String userSid,
@ApiParam(value = "变量集合,json对象") @RequestBody PagerQuery<FlowTaskQuery> taskQueryPagerQuery);
@ApiOperation("手机端查询审批订单流程记录")
@PostMapping("/getAppFlowRecordList")
public ResultBean<List<AppFlowRecordVo>> getAppFlowRecordList(@RequestBody AppFlowTaskQuery query);
/**
* 取消申请
* @param flowTaskVo
* @return
*/
@ApiOperation(value = "取消申请")
@PostMapping(value = "/task/stopProcess")
@ResponseBody
ResultBean stopProcess(@ApiParam(value = "工作流任务相关--请求参数")@RequestBody FlowTaskVo flowTaskVo);
/**
* 删除流程实例
* @param procInsId 流程实例id
* @return
*/
@ApiOperation(value = "删除流程实例")
@DeleteMapping(value = "/task/deleteProcess/{procInsId}")
@ResponseBody
ResultBean deleteProcess(@ApiParam(value = "流程实例id")@PathVariable(value = "procInsId")String procInsId);
}

90
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/flow/TaskQuery.java

@ -0,0 +1,90 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.flow;
import com.yxt.common.core.query.Query;
/**
* Project: anrui-parent <br/>
* File: TaskQuery.java <br/>
* Class: com.yxt.anrui.portal.biz.flow.TaskQuery <br/>
* Description: <描述类的功能>. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021/10/27 下午3:36 <br/>
*
* @author popo
* @version 1.0
* @since 1.0
*/
public class TaskQuery implements Query {
private String userSid;
private String days;
private String zd1;
private String processDefinitionId;
private String startTime;
public String getZd1() {
return zd1;
}
public void setZd1(String zd1) {
this.zd1 = zd1;
}
public String getProcessDefinitionId() {
return processDefinitionId;
}
public void setProcessDefinitionId(String processDefinitionId) {
this.processDefinitionId = processDefinitionId;
}
public String getUserSid() {
return userSid;
}
public void setUserSid(String userSid) {
this.userSid = userSid;
}
public String getDays() {
return days;
}
public void setDays(String days) {
this.days = days;
}
public String getStartTime() {
return startTime;
}
public void setStartTime(String startTime) {
this.startTime = startTime;
}
}

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

@ -48,7 +48,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients;
"com.yxt.common.base.config",
"com.yxt.anrui.fin"
})
@EnableFeignClients(basePackages = {"com.yxt.anrui.crm", "com.yxt.anrui.portal", "com.yxt.anrui.buscenter", "com.yxt.anrui.base"})
@EnableFeignClients(basePackages = {"com.yxt.anrui.crm", "com.yxt.anrui.portal", "com.yxt.anrui.buscenter", "com.yxt.anrui.base", "com.yxt.anrui.flowable"})
public class AnruiFinApplication {
public static void main(String[] args) {

40
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/actrutask/ActRuTaskMapper.java

@ -0,0 +1,40 @@
package com.yxt.anrui.fin.biz.actrutask;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
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.buscenter.api.actrutask.ActRuTask;
import com.yxt.anrui.buscenter.api.actrutask.ActRuTaskVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
* Project: anrui-flowable(工作流) <br/>
* File: ActRuTaskMapper.java <br/>
* Class: com.yxt.anrui.flowable.biz.actrutask.ActRuTaskMapper <br/>
* Description: act_ru_task. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-26 09:03:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface ActRuTaskMapper extends BaseMapper<ActRuTask> {
//@Update("update act_ru_task set name=#{msg} where id=#{id}")
//IPage<ActRuTaskVo> voPage(IPage<ActRuTask> page, @Param(Constants.WRAPPER) QueryWrapper<ActRuTask> qw);
IPage<ActRuTaskVo> selectPageVo(IPage<ActRuTask> page, @Param(Constants.WRAPPER) Wrapper<ActRuTask> qw);
List<ActRuTaskVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<ActRuTask> qw);
@Select("select * from act_ru_task")
List<ActRuTaskVo> selectListVo();
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/actrutask/ActRuTaskMapper.xml

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.fin.biz.actrutask.ActRuTaskMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.buscenter.api.actrutask.ActRuTaskVo">
SELECT * FROM act_ru_task <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.buscenter.api.actrutask.ActRuTaskVo">
SELECT * FROM act_ru_task <where> ${ew.sqlSegment} </where>
</select>
</mapper>

91
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/actrutask/ActRuTaskRest.java

@ -0,0 +1,91 @@
package com.yxt.anrui.fin.biz.actrutask;
import com.yxt.anrui.buscenter.api.actrutask.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* Project: anrui-flowable(工作流) <br/>
* File: ActRuTaskFeignFallback.java <br/>
* Class: com.yxt.anrui.flowable.biz.actrutask.ActRuTaskRest <br/>
* Description: act_ru_task. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-26 09:03:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "act_ru_task")
@RestController
@RequestMapping("v1/actrutask")
public class ActRuTaskRest implements ActRuTaskFeign {
@Autowired
private ActRuTaskService actRuTaskService;
@Override
public ResultBean<PagerVo<ActRuTaskVo>> listPage(@RequestBody PagerQuery<ActRuTaskQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<ActRuTaskVo> pv = actRuTaskService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
public ResultBean<List<ActRuTaskVo>> listAll(@RequestBody ActRuTaskQuery query){
ResultBean rb = ResultBean.fireFail();
List<ActRuTaskVo> list = actRuTaskService.listAllVo(query);
return rb.success().setData(list);
}
@Override
public ResultBean<List<ActRuTaskVo>> list(){
ResultBean rb = ResultBean.fireFail();
List<ActRuTaskVo> list = actRuTaskService.listVo();
return rb.success().setData(list);
}
@Override
public ResultBean save(ActRuTaskDto dto){
ResultBean rb = ResultBean.fireFail();
actRuTaskService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
public ResultBean update(ActRuTaskDto dto,String sid){
ResultBean rb = ResultBean.fireFail();
actRuTaskService.updateBySid(dto.toMap(),sid);
return rb.success();
}
@Override
public ResultBean del(String ids){
ResultBean rb = ResultBean.fireFail();
actRuTaskService.delByIds(ids);
return rb.success();
}
@Override
public ResultBean<ActRuTaskVo> fetch(String id){
ResultBean rb = ResultBean.fireFail();
ActRuTaskVo vo = actRuTaskService.fetchByIdVo(id);
return rb.success().setData(vo);
}
@Override
public ResultBean<ActRuTask> fetchBySid(String sid){
ResultBean rb = ResultBean.fireFail();
ActRuTask vo = actRuTaskService.fetchBySid(sid);
return rb.success().setData(vo);
}
}

209
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/actrutask/ActRuTaskService.java

@ -0,0 +1,209 @@
package com.yxt.anrui.fin.biz.actrutask;
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.buscenter.api.actrutask.ActRuTask;
import com.yxt.anrui.buscenter.api.actrutask.ActRuTaskDto;
import com.yxt.anrui.buscenter.api.actrutask.ActRuTaskQuery;
import com.yxt.anrui.buscenter.api.actrutask.ActRuTaskVo;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Project: anrui-flowable(工作流) <br/>
* File: ActRuTaskService.java <br/>
* Class: com.yxt.anrui.flowable.biz.actrutask.ActRuTaskService <br/>
* Description: act_ru_task 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2021-10-26 09:03:11 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class ActRuTaskService extends MybatisBaseService<ActRuTaskMapper, ActRuTask> {
public PagerVo<ActRuTask> listPage(PagerQuery<ActRuTaskQuery> pq) {
ActRuTaskQuery query = pq.getParams();
QueryWrapper<ActRuTask> qw = createQueryWrapper(query);
IPage<ActRuTask> page = PagerUtil.queryToPage(pq);
IPage<ActRuTask> pagging = baseMapper.selectPage(page, qw);
PagerVo<ActRuTask> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<ActRuTask> listAll(ActRuTaskQuery query) {
QueryWrapper<ActRuTask> qw = createQueryWrapper(query);
return baseMapper.selectList(qw);
}
private QueryWrapper<ActRuTask> createQueryWrapper(ActRuTaskQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<ActRuTask> qw = new QueryWrapper<>();
if (query.getREV_() != null) {
qw.eq("REV_", query.getREV_());
}
if (StringUtils.isNotBlank(query.getEXECUTION_ID_())) {
qw.eq("EXECUTION_ID_", query.getEXECUTION_ID_());
}
if (StringUtils.isNotBlank(query.getPROC_INST_ID_())) {
qw.eq("PROC_INST_ID_", query.getPROC_INST_ID_());
}
if (StringUtils.isNotBlank(query.getPROC_DEF_ID_())) {
qw.eq("PROC_DEF_ID_", query.getPROC_DEF_ID_());
}
if (StringUtils.isNotBlank(query.getTASK_DEF_ID_())) {
qw.eq("TASK_DEF_ID_", query.getTASK_DEF_ID_());
}
if (StringUtils.isNotBlank(query.getSCOPE_ID_())) {
qw.eq("SCOPE_ID_", query.getSCOPE_ID_());
}
if (StringUtils.isNotBlank(query.getSUB_SCOPE_ID_())) {
qw.eq("SUB_SCOPE_ID_", query.getSUB_SCOPE_ID_());
}
if (StringUtils.isNotBlank(query.getSCOPE_TYPE_())) {
qw.eq("SCOPE_TYPE_", query.getSCOPE_TYPE_());
}
if (StringUtils.isNotBlank(query.getSCOPE_DEFINITION_ID_())) {
qw.eq("SCOPE_DEFINITION_ID_", query.getSCOPE_DEFINITION_ID_());
}
if (StringUtils.isNotBlank(query.getPROPAGATED_STAGE_INST_ID_())) {
qw.eq("PROPAGATED_STAGE_INST_ID_", query.getPROPAGATED_STAGE_INST_ID_());
}
if (StringUtils.isNotBlank(query.getNAME_())) {
qw.eq("NAME_", query.getNAME_());
}
if (StringUtils.isNotBlank(query.getPARENT_TASK_ID_())) {
qw.eq("PARENT_TASK_ID_", query.getPARENT_TASK_ID_());
}
if (StringUtils.isNotBlank(query.getDESCRIPTION_())) {
qw.eq("DESCRIPTION_", query.getDESCRIPTION_());
}
if (StringUtils.isNotBlank(query.getTASK_DEF_KEY_())) {
qw.eq("TASK_DEF_KEY_", query.getTASK_DEF_KEY_());
}
if (StringUtils.isNotBlank(query.getOWNER_())) {
qw.eq("OWNER_", query.getOWNER_());
}
if (StringUtils.isNotBlank(query.getASSIGNEE_())) {
qw.eq("ASSIGNEE_", query.getASSIGNEE_());
}
if (StringUtils.isNotBlank(query.getDELEGATION_())) {
qw.eq("DELEGATION_", query.getDELEGATION_());
}
if (query.getPRIORITY_() != null) {
qw.eq("PRIORITY_", query.getPRIORITY_());
}
if (query.getCREATE_TIME_Start() != null) {
qw.ge("CREATE_TIME_", query.getCREATE_TIME_Start());
}
if (query.getCREATE_TIME_End() != null) {
qw.le("CREATE_TIME_", query.getCREATE_TIME_End());
}
if (query.getDUE_DATE_Start() != null) {
qw.ge("DUE_DATE_", query.getDUE_DATE_Start());
}
if (query.getDUE_DATE_End() != null) {
qw.le("DUE_DATE_", query.getDUE_DATE_End());
}
if (StringUtils.isNotBlank(query.getCATEGORY_())) {
qw.eq("CATEGORY_", query.getCATEGORY_());
}
if (query.getSUSPENSION_STATE_() != null) {
qw.eq("SUSPENSION_STATE_", query.getSUSPENSION_STATE_());
}
if (StringUtils.isNotBlank(query.getTENANT_ID_())) {
qw.eq("TENANT_ID_", query.getTENANT_ID_());
}
if (StringUtils.isNotBlank(query.getFORM_KEY_())) {
qw.eq("FORM_KEY_", query.getFORM_KEY_());
}
if (query.getCLAIM_TIME_Start() != null) {
qw.ge("CLAIM_TIME_", query.getCLAIM_TIME_Start());
}
if (query.getCLAIM_TIME_End() != null) {
qw.le("CLAIM_TIME_", query.getCLAIM_TIME_End());
}
if (query.getIS_COUNT_ENABLED_() != null) {
qw.eq("IS_COUNT_ENABLED_", query.getIS_COUNT_ENABLED_());
}
if (query.getVAR_COUNT_() != null) {
qw.eq("VAR_COUNT_", query.getVAR_COUNT_());
}
if (query.getID_LINK_COUNT_() != null) {
qw.eq("ID_LINK_COUNT_", query.getID_LINK_COUNT_());
}
if (query.getSUB_TASK_COUNT_() != null) {
qw.eq("SUB_TASK_COUNT_", query.getSUB_TASK_COUNT_());
}
return qw;
}
public PagerVo<ActRuTaskVo> listPageVo(PagerQuery<ActRuTaskQuery> pq) {
ActRuTaskQuery query = pq.getParams();
QueryWrapper<ActRuTask> qw = createQueryWrapper(query);
IPage<ActRuTask> page = PagerUtil.queryToPage(pq);
IPage<ActRuTaskVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<ActRuTaskVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<ActRuTaskVo> listAllVo(ActRuTaskQuery query) {
QueryWrapper<ActRuTask> qw = createQueryWrapper(query);
return baseMapper.selectListAllVo(qw);
}
public List<ActRuTaskVo> listVo() {
return baseMapper.selectListVo();
}
public void saveOrUpdateDto(ActRuTaskDto dto){
ActRuTask entity = new ActRuTask();
dto.fillEntity(entity);
this.saveOrUpdate(entity);
}
public ActRuTaskVo fetchByIdVo(String id){
ActRuTask entity = this.fetchById(id);
ActRuTaskVo vo = new ActRuTaskVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
}

3
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationMapper.java

@ -36,6 +36,7 @@ import com.yxt.anrui.fin.api.finbillapplication.FinBillApplication;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationVo;
import java.util.List;
import java.util.Map;
/**
* Project: anrui-fin(开票申请管理) <br/>
@ -62,4 +63,6 @@ public interface FinBillApplicationMapper extends BaseMapper<FinBillApplication>
@Select("select * from fin_bill_application")
List<FinBillApplicationVo> selectListVo();
int updateFlowFiled(Map<String, Object> map);
}

12
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationMapper.xml

@ -15,4 +15,16 @@
<select id="selectListAllVo" resultType="com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationVo">
SELECT * FROM fin_bill_application <where> ${ew.sqlSegment} </where>
</select>
<update id="updateFlowFiled">
UPDATE fin_bill_application
SET nodeState=#{nodeState}, nodeSid=#{taskDefKey}
<if test="procDefId != null and procDefId != ''">
, procDefId=#{procDefId}
</if>
<if test="procInsId != null and procInsId != ''">
, procInstSid=#{procInsId}
</if>
WHERE sid=#{sid}
</update>
</mapper>

51
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationRest.java

@ -25,6 +25,8 @@
*********************************************************/
package com.yxt.anrui.fin.biz.finbillapplication;
import com.yxt.anrui.fin.api.finbillapplication.*;
import com.yxt.anrui.fin.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -33,13 +35,7 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplication;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationQuery;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationVo;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationDetailsVo;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationDto;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationFeign;
import java.util.Map;
/**
* Project: anrui-fin(开票申请管理) <br/>
@ -75,9 +71,7 @@ public class FinBillApplicationRest implements FinBillApplicationFeign {
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody FinBillApplicationDto dto){
ResultBean rb = ResultBean.fireFail();
finBillApplicationService.saveOrUpdateDto(dto);
return rb.success();
return finBillApplicationService.saveOrUpdateDto(dto);
}
@Override
@ -85,7 +79,7 @@ public class FinBillApplicationRest implements FinBillApplicationFeign {
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
finBillApplicationService.delBySids(sids);
finBillApplicationService.delAllBySids(sids);
return rb.success();
}
@ -97,4 +91,39 @@ public class FinBillApplicationRest implements FinBillApplicationFeign {
FinBillApplicationDetailsVo vo = finBillApplicationService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
@Override
public ResultBean submitFinBillApplicationPageList(SubmitFinBillApplicationPageListDto dto) {
return finBillApplicationService.submitFinBillApplicationPageList(dto);
}
@Override
public ResultBean submitFinBillApplication(SubmitFinBillApplicationDto dto) {
return finBillApplicationService.submitFinBillApplication(dto);
}
@Override
public ResultBean complete(Map<String, Object> variables) {
return finBillApplicationService.complete(variables);
}
@Override
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
return finBillApplicationService.revokeProcess(userSid, businessSid, flowTaskVo);
}
@Override
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) {
return finBillApplicationService.taskReject(businessSid, flowTaskVo);
}
@Override
public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) {
return finBillApplicationService.breakProcess(businessSid, flowTaskVo);
}
@Override
public ResultBean flowRecord(String procInsId, String deployId) {
return finBillApplicationService.flowRecord(procInsId, deployId);
}
}

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

@ -28,22 +28,56 @@ package com.yxt.anrui.fin.biz.finbillapplication;
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.commonappendix.CommonAppendixDto;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixFeign;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo;
import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum;
import com.yxt.anrui.base.api.commoncontract.CommonContractFeign;
import com.yxt.anrui.base.api.commoncontract.CommonContractVo;
import com.yxt.anrui.buscenter.api.busordermodel.BusOrderModelFeign;
import com.yxt.anrui.fin.api.finbillapplication.*;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublic;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicDto;
import com.yxt.anrui.fin.api.finbillfile.FinBillFile;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileDto;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicle;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDto;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleVo;
import com.yxt.anrui.fin.api.flow.FlowTaskVo;
import com.yxt.anrui.fin.biz.finbillapplicationpublic.FinBillApplicationPublicService;
import com.yxt.anrui.fin.biz.finbillfile.FinBillFileService;
import com.yxt.anrui.fin.biz.finbillvehicle.FinBillVehicleService;
import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkDto;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFeign;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFlowStateEnum;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkTypeEnum;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.api.utils.ProcessStateEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.common.base.config.component.FileUploadComponent;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplication;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationQuery;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationVo;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationDetailsVo;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationDto;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* Project: anrui-fin(开票申请管理) <br/>
@ -60,12 +94,38 @@ import java.util.List;
*/
@Service
public class FinBillApplicationService extends MybatisBaseService<FinBillApplicationMapper, FinBillApplication> {
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private CommonAppendixFeign commonAppendixFeign;
@Autowired
private FinBillVehicleService finBillVehicleService;
@Autowired
private FinBillFileService finBillFileService;
@Autowired
private FinBillApplicationPublicService finBillApplicationPublicService;
@Autowired
private FlowTaskFeign flowTaskFeign;
@Autowired
private FlowableFeign flowableFeign;
@Autowired
private SysFormLinkFeign sysFormLinkFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private CommonContractFeign commonContractFeign;
@Autowired
private BusOrderModelFeign busOrderModelFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
private QueryWrapper<FinBillApplication> createQueryWrapper(FinBillApplicationQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<FinBillApplication> qw = new QueryWrapper<>();
qw.eq("useOrgSid", query.getUseOrgSid());
qw.eq("createBySid", query.getStaffSid());
qw.eq("fba.useOrgSid", query.getUseOrgSid());
qw.eq("fba.createBySid", query.getStaffSid());
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.eq("fba.contractNo", query.getContractNo());
}
@ -94,6 +154,25 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
public PagerVo<FinBillApplicationVo> listPageVo(PagerQuery<FinBillApplicationQuery> pq) {
FinBillApplicationQuery query = pq.getParams();
String staffSid = query.getStaffSid();
ResultBean<List<SysStaffOrgVo>> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid);
List<SysStaffOrgVo> data = sysStaffOrgListByStaffSid.getData();
String orgSidPath = "";
for (SysStaffOrgVo datum : data) {
orgSidPath = datum.getOrgSidPath();
String[] split = orgSidPath.split("/");
for (String s : split) {
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s);
SysOrganizationVo data1 = sysOrganizationVoResultBean.getData();
Integer isDept = data1.getIsDept();
String psid = data1.getPsid();
if (isDept == 0 && !psid.equals(0)) {
orgSidPath = s;
break;
}
}
}
query.setUseOrgSid(orgSidPath);
QueryWrapper<FinBillApplication> qw = createQueryWrapper(query);
IPage<FinBillApplication> page = PagerUtil.queryToPage(pq);
IPage<FinBillApplicationVo> pagging = baseMapper.selectPageVo(page, qw);
@ -101,13 +180,115 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
return p;
}
public void saveOrUpdateDto(FinBillApplicationDto dto) {
public ResultBean<String> saveOrUpdateDto(FinBillApplicationDto dto) {
ResultBean rb = ResultBean.fireFail();
String dtoSid = dto.getSid();
List<FinBillVehicleDto> finBillVehicles = dto.getFinBillVehicles();
List<FinBillApplicationAppendxDto> finBillApplicationAppendxs = dto.getFinBillApplicationAppendxs();
List<FinBillFileDto> finBillFiles = dto.getFinBillFiles();
String path = "";
CommonAppendixDto commonAppendixDto = new CommonAppendixDto();
if (StringUtils.isBlank(dtoSid)) {//新增
this.insertByDto(dto);
return;
FinBillApplication finBillApplication = new FinBillApplication();
String sid = finBillApplication.getSid();
BeanUtil.copyProperties(dto,finBillApplication);
finBillApplication.setSid(sid);
FinBillApplicationPublic finBillApplicationPublic = new FinBillApplicationPublic();
String sid2 = finBillApplicationPublic.getSid();
BeanUtil.copyProperties(finBillApplication,finBillApplicationPublic);
finBillApplicationPublic.setSid(sid2);
finBillApplicationPublicService.save(finBillApplicationPublic);
finBillApplication.setBillAppPublicSid(sid2);
finBillApplication.setNodeState("待提交");
String contractSid = finBillApplication.getContractSid();
String oneBillMoney = dto.getOneBillMoney();
ResultBean<CommonContractVo> commonContractVoResultBean = commonContractFeign.fetchBySid(contractSid);
CommonContractVo data1 = commonContractVoResultBean.getData();
String busSid = data1.getBusSid();
String price = busOrderModelFeign.getPriceByOrderSid(busSid);
if (price.equals(oneBillMoney)){
finBillApplication.setIsHighAndLowOpen(false);
}else {
finBillApplication.setIsHighAndLowOpen(true);
}
save(finBillApplication);
for (FinBillVehicleDto finBillVehicleDto : finBillVehicles) {
FinBillVehicle finBillVehicle = new FinBillVehicle();
String sid1 = finBillVehicle.getSid();
BeanUtil.copyProperties(finBillVehicleDto,finBillVehicle);
finBillVehicle.setSid(sid1);
finBillVehicle.setBillAppSid(sid);
finBillVehicleService.save(finBillVehicle);
}
for (FinBillApplicationAppendxDto finBillApplicationAppendx : finBillApplicationAppendxs) {
BeanUtil.copyProperties(finBillApplicationAppendx,commonAppendixDto);
String filePath = finBillApplicationAppendx.getFilePath();
String urlPrefix = fileUploadComponent.getUrlPrefix();
path = urlPrefix + filePath;
commonAppendixDto.setLinkSid(sid);
commonAppendixDto.setFilePath(path);
commonAppendixDto.setCreateBySid(dto.getStaffSid());
commonAppendixDto.setAttachType(CommonAttachTypeEnum.BILL_APPLICAYION.getAttachType());
commonAppendixFeign.save(commonAppendixDto);
}
for (FinBillFileDto finBillFileDto : finBillFiles) {
FinBillFile finBillFile = new FinBillFile();
String fileUrl = finBillFileDto.getFileUrl();
String urlPrefix = fileUploadComponent.getUrlPrefix();
path = urlPrefix + fileUrl;
finBillFile.setBillAppSid(sid);
finBillFile.setCreateByName(finBillFileDto.getCreateByName());
finBillFile.setFileType(finBillFileDto.getFileType());
finBillFile.setFileUrl(path);
ResultBean<CommonAppendixVo> commonAppendixVoResultBean = commonAppendixFeign.fetchByFilePath(path);
CommonAppendixVo data = commonAppendixVoResultBean.getData();
String sid1 = data.getSid();
finBillFile.setFileSid(sid1);
finBillFileService.save(finBillFile);
}
return rb.success().setMsg("保存成功").setData(sid);
}
FinBillApplication finBillApplication = fetchBySid(dtoSid);
if (finBillApplication == null){
rb.setMsg("该数据不存在");
}
commonAppendixFeign.deleteFiles(dtoSid);
for (FinBillApplicationAppendxDto finBillApplicationAppendx : finBillApplicationAppendxs) {
BeanUtil.copyProperties(finBillApplicationAppendx,commonAppendixDto);
String filePath = finBillApplicationAppendx.getFilePath();
String urlPrefix = fileUploadComponent.getUrlPrefix();
path = urlPrefix + filePath;
commonAppendixDto.setLinkSid(dtoSid);
commonAppendixDto.setFilePath(path);
commonAppendixDto.setCreateBySid(dto.getStaffSid());
commonAppendixDto.setAttachType(CommonAttachTypeEnum.BILL_APPLICAYION.getAttachType());
commonAppendixFeign.save(commonAppendixDto);
}
this.updateByDto(dto);
finBillFileService.deleteByFinAppSid(dtoSid);
for (FinBillFileDto finBillFileDto : finBillFiles) {
FinBillFile finBillFile = new FinBillFile();
String fileUrl = finBillFileDto.getFileUrl();
String urlPrefix = fileUploadComponent.getUrlPrefix();
path = urlPrefix + fileUrl;
finBillFile.setBillAppSid(dtoSid);
finBillFile.setCreateByName(finBillFileDto.getCreateByName());
finBillFile.setFileType(finBillFileDto.getFileType());
finBillFile.setFileUrl(path);
ResultBean<CommonAppendixVo> commonAppendixVoResultBean = commonAppendixFeign.fetchByFilePath(path);
CommonAppendixVo data = commonAppendixVoResultBean.getData();
String sid1 = data.getSid();
finBillFile.setFileSid(sid1);
finBillFileService.save(finBillFile);
}
FinBillApplicationPublicDto finBillApplicationPublicDto = new FinBillApplicationPublicDto();
String billAppPublicSid = dto.getBillAppPublicSid();
FinBillApplicationPublic finBillApplicationPublic = finBillApplicationPublicService.fetchBySid(billAppPublicSid);
BeanUtil.copyProperties(dto,finBillApplicationPublic);
finBillApplicationPublic.setSid(billAppPublicSid);
updateBySid(dto,dtoSid);
BeanUtil.copyProperties(finBillApplicationPublic,finBillApplicationPublicDto);
finBillApplicationPublicService.updateBySid(finBillApplicationPublicDto,billAppPublicSid);
return rb.success().setMsg("修改成功").setData(dtoSid);
}
public void insertByDto(FinBillApplicationDto dto) {
@ -130,6 +311,281 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
FinBillApplication entity = fetchBySid(sid);
FinBillApplicationDetailsVo vo = new FinBillApplicationDetailsVo();
BeanUtil.copyProperties(entity, vo);
List<FinBillVehicleVo> finBillVehicleVos = finBillVehicleService.fetchVehBySid(sid);
vo.setFinBillVehicles(finBillVehicleVos);
List<FinBillFileVo> finBillFileVos = finBillFileService.fetchBillFileBySid(sid);
vo.setFinBillFiles(finBillFileVos);
return vo;
}
public void delAllBySids(String[] sids) {
for (String sid : sids) {
FinBillApplication finBillApplication = fetchBySid(sid);
String billAppPublicSid = finBillApplication.getBillAppPublicSid();
finBillApplicationPublicService.deleteBySid(billAppPublicSid);
deleteBySid(sid);
ResultBean<List<CommonAppendixVo>> listResultBean = commonAppendixFeign.selByLinkSid(sid);
List<CommonAppendixVo> data = listResultBean.getData();
String path = "";
for (CommonAppendixVo datum : data) {
String filePath = datum.getFilePath();
String urlPrefix = fileUploadComponent.getUrlPrefix();
path = urlPrefix + filePath;
commonAppendixFeign.deleteFilesOss(path);
}
commonAppendixFeign.deleteFiles(sid);
finBillFileService.deleteByFinAppSid(sid);
}
}
public ResultBean submitFinBillApplication(SubmitFinBillApplicationDto dto) {
String orgSid = checkUserOrg(dto.getStaffSid());
ResultBean<String> resultBean = saveOrUpdateDto(dto);
String businessSid = resultBean.getData();
Map<String, Object> variables = new HashMap<>();
variables.put("businessSid", businessSid);
variables.put("orgSid", orgSid); //部门sid
if (StringUtils.isBlank(dto.getTaskId())) { // 新提交
String proDefId = ProcDefEnum.SEALAPPLY.getProDefId();
ResultBean resultBean1 = flowableFeign.businessStart(ProcDefEnum.FINBILLAPPLICATION.getProDefId(), dto.getUserSid(), variables);
if (resultBean1.getSuccess() && resultBean1.getData() != null) {
Map<String, String> map = (Map<String, String>) resultBean1.getData();
//更新业务表中的流程状态
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", businessSid);
paramMap.put("procDefId", ProcDefEnum.SEALAPPLY.getProDefId());
paramMap.put("nodeState", map.get("nodeState"));
paramMap.put("procInsId", map.get("procInsId"));
paramMap.put("taskDefKey", map.get("taskDefKey"));
updateFlowFiled(paramMap);
}
return resultBean1;
} else { // 驳回到发起人后再次提交
variables.put("comment", StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交");
variables.put("instanceId", dto.getInstanceId());
variables.put("taskId", dto.getTaskId());
variables.put("userSid", dto.getUserSid());
return complete(variables);
}
}
/**
* 检查用户是否设置部门
*
* @param staffSid
* @return 返回部门sid
*/
private String checkUserOrg(String staffSid) {
String orgSid = "";
ResultBean<String> resultBean = sysStaffOrgFeign.getSysStaffOrgSidListByStaffSid(staffSid);
if (resultBean.getSuccess()) {
orgSid = resultBean.getData();
}
return orgSid;
}
/**
* 保存流程业务关联表 数据
*
* @param map
*/
private void submitFinBillApplication(Map<String, String> map) {
String sid = map.get("sid");
ResultBean resultBean = sysFormLinkFeign.selectByBusinessSid(sid);
if (!resultBean.getSuccess()) { // 新增
SysFormLinkDto sysFormLinkDto = new SysFormLinkDto();
sysFormLinkDto.setBusinessSid(map.get("sid"));
sysFormLinkDto.setProcInsId(map.get("procInsId"));
sysFormLinkDto.setTaskDefKey(map.get("taskDefKey"));
sysFormLinkDto.setNodeState(map.get("nodeState"));
sysFormLinkDto.setFormType(SysFormLinkTypeEnum.ORDER_DEPOSIT_VEHICLE.getCode());
sysFormLinkDto.setFlowState(Integer.parseInt(SysFormLinkFlowStateEnum.PROCESSING.getCode()));
sysFormLinkFeign.save(sysFormLinkDto);
} else { // 更新
Map<String, Object> updateMap = new HashMap<>();
updateMap.put("businessSid", sid);
updateMap.put("nodeState", map.get("nodeState"));
updateMap.put("taskDefKey", map.get("taskDefKey"));
updateMap.put("flowState", SysFormLinkFlowStateEnum.PROCESSING.getCode());
sysFormLinkFeign.updateFiled(updateMap);
}
}
/**
* 办理
* @param variables
* @return
*/
public ResultBean complete(Map<String, Object> variables) {
BusinessVariables bv= BusinessVariables.builder().build();
bv.setDetailUrl("");
bv.setHandleUrl("");
bv.setFormVariables(variables);
ResultBean<com.yxt.anrui.flowable.api.flowtask.FlowTask> resultBean = flowTaskFeign.businessComplete(bv);
if (!resultBean.getSuccess()) {
return resultBean;
}
String nodeState = "";
String taskDefKey = "";
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", variables.get("businessSid").toString());
if (resultBean.getData() != null) {
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(resultBean.getData().getProcInsId());
if (listResultBean.getSuccess() && listResultBean.getData() != null && listResultBean.getData().size() != 0) {
nodeState = listResultBean.getData().get(0).getName_();
taskDefKey = listResultBean.getData().get(0).getTask_def_key_();
} else {
nodeState = ProcessStateEnum.FINISHED.getStateName();
taskDefKey = "Event_end";
paramMap.put("flowState", SysFormLinkFlowStateEnum.FINISH.getCode());
}
}
paramMap.put("nodeState", nodeState);
paramMap.put("taskDefKey", taskDefKey);
updateFlowFiled(paramMap);
return resultBean;
}
/**
* 更新流程相关的状态
* @param map
* @return
*/
private int updateFlowFiled(Map<String, Object> map) {
return baseMapper.updateFlowFiled(map);
}
/**
* 撤回
* @param userSid
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean revokeProcess(String userSid, String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
fl.setUserSid(userSid);
ResultBean<List<LatestTaskVo>> resultBean = flowTaskFeign.revokeProcess(fl);
if (!resultBean.getSuccess()) {
return resultBean;
}
String nodeState = resultBean.getData().get(0).getName_();
String taskDefKey = resultBean.getData().get(0).getTask_def_key_();
String incomingSourceRef = resultBean.getData().get(0).getIncomingSourceRef();
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", businessSid);
if (incomingSourceRef.contains("start")) {
paramMap.put("nodeState", SysFormLinkFlowStateEnum.UNCOMMITTED.getState());
paramMap.put("taskDefKey", taskDefKey);
paramMap.put("flowState", SysFormLinkFlowStateEnum.UNCOMMITTED.getCode());
} else {
paramMap.put("nodeState",nodeState );
paramMap.put("taskDefKey",taskDefKey );
}
updateFlowFiled(paramMap);
return resultBean;
}
/**
* 驳回
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
ResultBean<List<LatestTaskVo>> resultBean = flowTaskFeign.taskReject(fl);
if (!resultBean.getSuccess()) {
return resultBean;
}
String nodeState = resultBean.getData().get(0).getName_();
String taskDefKey = resultBean.getData().get(0).getTask_def_key_();
String incomingSourceRef = resultBean.getData().get(0).getIncomingSourceRef();
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", businessSid);
paramMap.put("nodeState", nodeState);
paramMap.put("taskDefKey", taskDefKey);
if (incomingSourceRef.contains("start")) {
paramMap.put("flowState", SysFormLinkFlowStateEnum.REJECT.getCode());
}
updateFlowFiled(paramMap);
return resultBean;
}
/**
* 终止流程
* @param businessSid
* @param flowTaskVo
* @return
*/
public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) {
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl=new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo();
BeanUtil.copyProperties(flowTaskVo,fl);
ResultBean resultBean = flowTaskFeign.breakProcess(fl);
if (!resultBean.getSuccess()) {
return resultBean;
}
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", businessSid);
paramMap.put("nodeState", String.valueOf(resultBean.getData()));
paramMap.put("taskDefKey", "Event_end");
paramMap.put("flowState", SysFormLinkFlowStateEnum.BREAK.getCode());
updateFlowFiled(paramMap);
return resultBean;
}
/**
* 流程历史流转记录
* @param procInsId
* @param deployId
* @return
*/
public ResultBean flowRecord(String procInsId, String deployId) {
return flowTaskFeign.businessFlowRecord(procInsId,deployId);
}
public ResultBean submitFinBillApplicationPageList(SubmitFinBillApplicationPageListDto dto) {
ResultBean rb = ResultBean.fireFail();
FinBillApplicationDetailsVo finBillApplicationDetailsVo = fetchDetailsVoBySid(dto.getSid());
String oneBillMoney = finBillApplicationDetailsVo.getOneBillMoney();
if (StringUtils.isBlank(oneBillMoney)){
rb.setMsg("该申请单信息不完善,请补充完整后提交");
}
List<FinBillVehicleVo> finBillVehicles = finBillApplicationDetailsVo.getFinBillVehicles();
for (FinBillVehicleVo finBillVehicle : finBillVehicles) {
String billTypeValue = finBillVehicle.getBillTypeValue();
String billName = finBillVehicle.getBillName();
if (StringUtils.isBlank(billTypeValue) || StringUtils.isBlank(billName)){
rb.setMsg("该申请单信息不完善,请补充完整后提交");
}
}
String orgSid = checkUserOrg(dto.getStaffSid());
Map<String, Object> variables = new HashMap<>();
variables.put("businessSid", dto.getSid());
variables.put("orgSid", orgSid); //部门sid
if (StringUtils.isBlank(dto.getTaskId())) { // 新提交
String proDefId = ProcDefEnum.SEALAPPLY.getProDefId();
ResultBean resultBean1 = flowableFeign.businessStart(ProcDefEnum.FINBILLAPPLICATION.getProDefId(), dto.getUserSid(), variables);
if (resultBean1.getSuccess() && resultBean1.getData() != null) {
Map<String, String> map = (Map<String, String>) resultBean1.getData();
//更新业务表中的流程状态
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("sid", dto.getSid());
paramMap.put("procDefId", ProcDefEnum.SEALAPPLY.getProDefId());
paramMap.put("nodeState", map.get("nodeState"));
paramMap.put("procInsId", map.get("procInsId"));
paramMap.put("taskDefKey", map.get("taskDefKey"));
updateFlowFiled(paramMap);
}
return resultBean1;
} else { // 驳回到发起人后再次提交
variables.put("comment", StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交");
variables.put("instanceId", dto.getInstanceId());
variables.put("taskId", dto.getTaskId());
variables.put("userSid", dto.getUserSid());
return complete(variables);
}
}
}

65
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplicationpublic/FinBillApplicationPublicMapper.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finbillapplicationpublic;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublic;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicVo;
import java.util.List;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicMapper.java <br/>
* Class: com.yxt.anrui.fin.biz.finbillapplicationpublic.FinBillApplicationPublicMapper <br/>
* Description: 开票申请公共表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface FinBillApplicationPublicMapper extends BaseMapper<FinBillApplicationPublic> {
//@Update("update fin_bill_application_public set name=#{msg} where id=#{id}")
//IPage<FinBillApplicationPublicVo> voPage(IPage<FinBillApplicationPublic> page, @Param(Constants.WRAPPER) QueryWrapper<FinBillApplicationPublic> qw);
IPage<FinBillApplicationPublicVo> selectPageVo(IPage<FinBillApplicationPublic> page, @Param(Constants.WRAPPER) Wrapper<FinBillApplicationPublic> qw);
List<FinBillApplicationPublicVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<FinBillApplicationPublic> qw);
@Select("select * from fin_bill_application_public")
List<FinBillApplicationPublicVo> selectListVo();
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplicationpublic/FinBillApplicationPublicMapper.xml

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.fin.biz.finbillapplicationpublic.FinBillApplicationPublicMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicVo">
SELECT * FROM fin_bill_application_public <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicVo">
SELECT * FROM fin_bill_application_public <where> ${ew.sqlSegment} </where>
</select>
</mapper>

104
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplicationpublic/FinBillApplicationPublicRest.java

@ -0,0 +1,104 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finbillapplicationpublic;
import com.yxt.anrui.buscenter.api.bussealapply.SubmitBusSealApplyDto;
import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublic;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicQuery;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicVo;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicDetailsVo;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicDto;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicFeign;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicFeignFallback.java <br/>
* Class: com.yxt.anrui.fin.biz.finbillapplicationpublic.FinBillApplicationPublicRest <br/>
* Description: 开票申请公共表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "开票申请公共表")
@RestController("com.yxt.anrui.fin.biz.finbillapplicationpublic.FinBillApplicationPublicRest")
@RequestMapping("v1/finbillapplicationpublic")
public class FinBillApplicationPublicRest implements FinBillApplicationPublicFeign {
@Autowired
private FinBillApplicationPublicService finBillApplicationPublicService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<FinBillApplicationPublicVo>> listPage(@RequestBody PagerQuery<FinBillApplicationPublicQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<FinBillApplicationPublicVo> pv = finBillApplicationPublicService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody FinBillApplicationPublicDto dto){
ResultBean rb = ResultBean.fireFail();
finBillApplicationPublicService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
@ApiOperation("根据sid批量删除")
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
finBillApplicationPublicService.delBySids(sids);
return rb.success();
}
@Override
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<FinBillApplicationPublicDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
FinBillApplicationPublicDetailsVo vo = finBillApplicationPublicService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

133
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplicationpublic/FinBillApplicationPublicService.java

@ -0,0 +1,133 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finbillapplicationpublic;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublic;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicQuery;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicVo;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicDetailsVo;
import com.yxt.anrui.fin.api.finbillapplicationpublic.FinBillApplicationPublicDto;
import org.springframework.stereotype.Service;
/**
* Project: anrui-fin(财务管理) <br/>
* File: FinBillApplicationPublicService.java <br/>
* Class: com.yxt.anrui.fin.biz.finbillapplicationpublic.FinBillApplicationPublicService <br/>
* Description: 开票申请公共表 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 16:26:48 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class FinBillApplicationPublicService extends MybatisBaseService<FinBillApplicationPublicMapper, FinBillApplicationPublic> {
private QueryWrapper<FinBillApplicationPublic> createQueryWrapper(FinBillApplicationPublicQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<FinBillApplicationPublic> qw = new QueryWrapper<>();
qw.eq("useOrgSid", query.getUseOrgSid());
qw.eq("createBySid", query.getStaffSid());
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.eq("fba.contractNo", query.getContractNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.eq("fba.customerName", query.getCustomerName());
}
if (StringUtils.isNotBlank(query.getBillTypeKey())) {
qw.eq("fbv.billTypeKey", query.getBillTypeKey());
}
if (StringUtils.isNotBlank(query.getBillName())) {
qw.eq("fbv.billName", query.getBillName());
}
String applyStartDate = query.getApplyStartDate();
String applyEndDate = query.getApplyEndDate();
qw.apply(StringUtils.isNotEmpty(applyStartDate), "date_format (applyDate,'%Y-%m-%d') >= date_format('" + applyStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(applyEndDate), "date_format (applyDate,'%Y-%m-%d') <= date_format('" + applyEndDate + "','%Y-%m-%d')"
);
if (StringUtils.isNotBlank(query.getCreateByName())) {
qw.eq("fba.createByName", query.getCreateByName());
}
if (StringUtils.isNotBlank(query.getBillState())) {
qw.eq("fba.billState", query.getBillState());
}
return qw;
}
public PagerVo<FinBillApplicationPublicVo> listPageVo(PagerQuery<FinBillApplicationPublicQuery> pq) {
FinBillApplicationPublicQuery query = pq.getParams();
QueryWrapper<FinBillApplicationPublic> qw = createQueryWrapper(query);
IPage<FinBillApplicationPublic> page = PagerUtil.queryToPage(pq);
IPage<FinBillApplicationPublicVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<FinBillApplicationPublicVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(FinBillApplicationPublicDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
this.insertByDto(dto);
return;
}
this.updateByDto(dto);
}
public void insertByDto(FinBillApplicationPublicDto dto){
FinBillApplicationPublic entity = new FinBillApplicationPublic();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void updateByDto(FinBillApplicationPublicDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
FinBillApplicationPublic entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public FinBillApplicationPublicDetailsVo fetchDetailsVoBySid(String sid){
FinBillApplicationPublic entity = fetchBySid(sid);
FinBillApplicationPublicDetailsVo vo = new FinBillApplicationPublicDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
}

9
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileMapper.java

@ -29,6 +29,8 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileDetailsVo;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@ -62,4 +64,11 @@ public interface FinBillFileMapper extends BaseMapper<FinBillFile> {
@Select("select * from fin_bill_file")
List<FinBillFileVo> selectListVo();
@Delete("delete from fin_bill_file where billAppSid = #{dtoSid}")
void deleteByFinAppSid(String dtoSid);
List<FinBillFileVo> fetchBillFileBySid(String sid);
List<FinBillFileDetailsVo> fetchFileBySid(@Param("billAppSid") String billAppSid, @Param("fileType") String fileType);
}

18
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileMapper.xml

@ -10,4 +10,22 @@
<select id="selectListAllVo" resultType="com.yxt.anrui.fin.api.finbillfile.FinBillFileVo">
SELECT * FROM fin_bill_file <where> ${ew.sqlSegment} </where>
</select>
<select id="fetchBillFileBySid" resultType="com.yxt.anrui.fin.api.finbillfile.FinBillFileVo">
SELECT
*
FROM
fin_bill_file
WHERE billAppSid = #{sid}
GROUP BY fileType
</select>
<select id="fetchFileBySid" resultType="com.yxt.anrui.fin.api.finbillfile.FinBillFileDetailsVo">
SELECT
*
FROM
fin_bill_file
WHERE billAppSid = #{billAppSid}
AND fileType = #{fileType}
</select>
</mapper>

7
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileRest.java

@ -97,4 +97,11 @@ public class FinBillFileRest implements FinBillFileFeign {
FinBillFileDetailsVo vo = finBillFileService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
@Override
public ResultBean<List<FinBillFileDetailsVo>> fetchFileBySid(String billAppSid, String fileType) {
ResultBean rb = ResultBean.fireFail();
List<FinBillFileDetailsVo> finBillFileDetailsVos = finBillFileService.fetchFileBySid(billAppSid, fileType);
return rb.success().setData(finBillFileDetailsVos);
}
}

28
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileService.java

@ -28,19 +28,19 @@ package com.yxt.anrui.fin.biz.finbillfile;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.config.component.FileUploadComponent;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.anrui.fin.api.finbillfile.FinBillFile;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileQuery;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileVo;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileDetailsVo;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileDto;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@ -60,6 +60,10 @@ import java.util.List;
*/
@Service
public class FinBillFileService extends MybatisBaseService<FinBillFileMapper, FinBillFile> {
@Autowired
private FileUploadComponent fileUploadComponent;
private QueryWrapper<FinBillFile> createQueryWrapper(FinBillFileQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
@ -107,4 +111,24 @@ public class FinBillFileService extends MybatisBaseService<FinBillFileMapper, Fi
BeanUtil.copyProperties(entity, vo);
return vo;
}
public void deleteByFinAppSid(String dtoSid) {
baseMapper.deleteByFinAppSid(dtoSid);
}
public List<FinBillFileVo> fetchBillFileBySid(String sid) {
return baseMapper.fetchBillFileBySid(sid);
}
public List<FinBillFileDetailsVo> fetchFileBySid(String billAppSid, String fileType) {
List<FinBillFileDetailsVo> finBillFileDetailsVos = baseMapper.fetchFileBySid(billAppSid, fileType);
String path = "";
for (FinBillFileDetailsVo finBillFileDetailsVo : finBillFileDetailsVos) {
String fileUrl = finBillFileDetailsVo.getFileUrl();
String urlPrefix = fileUploadComponent.getUrlPrefix();
path = urlPrefix + fileUrl;
finBillFileDetailsVo.setFileUrl(path);
}
return finBillFileDetailsVos;
}
}

3
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleMapper.java

@ -62,4 +62,7 @@ public interface FinBillVehicleMapper extends BaseMapper<FinBillVehicle> {
@Select("select * from fin_bill_vehicle")
List<FinBillVehicleVo> selectListVo();
@Select("select * from fin_bill_vehicle where billAppSid = #{sid}")
List<FinBillVehicleVo> fetchVehBySid(String sid);
}

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleService.java

@ -107,4 +107,8 @@ public class FinBillVehicleService extends MybatisBaseService<FinBillVehicleMapp
BeanUtil.copyProperties(entity, vo);
return vo;
}
public List<FinBillVehicleVo> fetchVehBySid(String sid) {
return baseMapper.fetchVehBySid(sid);
}
}

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

@ -112,7 +112,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
apply(StringUtils.isNotEmpty(collectionEndDate), "date_format (collectionDate,'%Y-%m-%d') <= date_format('" + collectionEndDate + "','%Y-%m-%d')"
);
if (StringUtils.isNotBlank(query.getCollectionBank())) {
qw.eq("collectionBank", query.getCollectionBank());
qw.eq("collectionBankKey", query.getCollectionBank());
}
if (StringUtils.isNotBlank(query.getCollectionTypeKey())) {
qw.eq("collectionTypeKey", query.getCollectionTypeKey());

4
anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java

@ -10,13 +10,13 @@ public enum ProcDefEnum {
ORDERAPPROVE("订单审批", "order_approve_96asleqi:1:227504"),
CARSALECONTRACTAPPROVE("新车买卖合同审批", "car_sale_contract_asbspcvd:1:230020"),
SALESPOLICY("销售政策审批流程", "sales_policy_oxeeyzhr:1:247508"),
INVOICEAPPLY("开票申请流程", "invoice_apply_ul4vx0oi:1:247512"),
FINBILLAPPLICATION("开票申请流程", "process_t5ksueur:1:242768"),
ADVANCEGINVOICEAPPLY("提前开票申请流程", "advance_ginvoiceapply:1:242664"),
ARREARSCARRYVEHICLE("欠款提车审批流程", "arrears_carryvehicle:1:232589"),
VEHICLEAPPLY("排产申请流程", "process_9egcg169:1:242660"),
RECORDAPPLICATION("入账申请", "record_application_7y80d4r8:1:265008"),
SCMVEHICLERETURN("采购退库", "process_md8aeoap:4:245028"),
SEALAPPLY("盖章申请", "process_7h0z66tp:2:235008"),
SEALAPPLY("盖章申请", "process_7h0z66tp:1:240064" ),
BASEVEHICLEACTUALSALES("未售买断", ""),//ToDo
;

Loading…
Cancel
Save