Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
fanzongzhe 2 years ago
parent
commit
b9e0361455
  1. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bustransferrecords/BusTransferRecordsFeign.java
  2. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml
  3. 8
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandoverprepare/BusHandoverPrepareService.java
  4. 13
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandoverpreparevehicle/BusHandoverPrepareVehicleService.java
  5. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdiscount/BusSalesOrderDiscountMapper.xml
  6. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bustransferrecords/BusTransferRecordsMapper.java
  7. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bustransferrecords/BusTransferRecordsMapper.xml
  8. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bustransferrecords/BusTransferRecordsRest.java
  9. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bustransferrecords/BusTransferRecordsService.java
  10. 18
      anrui-buscenter/anrui-buscenter-ui/src/views/discountpackagehandover/discountpackagehandover.vue
  11. 18
      anrui-buscenter/anrui-buscenter-ui/src/views/discountpackagehandover/discountpackagetobehandover.vue
  12. 8
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/jiaochebanliFlow/deliveryconfirmationDaiBanInfo.vue
  13. 8
      anrui-buscenter/anrui-buscenter-ui/src/views/workflow/jiaochebanliFlow/deliveryconfirmationYiBanInfo.vue
  14. 8
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/jiaochebanli/deliveryconfirmationInfo.vue
  15. 6
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/jiaochezhunbei/readyfordeliveryAdd.vue
  16. 6
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/jiaochezhunbei/readyfordeliveryInfo.vue
  17. 11
      anrui-buscenter/anrui-finmanage-ui/src/api/anruifinmanagement/paymentConfirmation.js
  18. 687
      anrui-buscenter/anrui-finmanage-ui/src/views/anruifinmanagement/agencyfund/agencyfundAdd.vue
  19. 645
      anrui-buscenter/anrui-finmanage-ui/src/views/anruifinmanagement/paymentConfirmation/acknowledgementReceiptAdd.vue
  20. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/AppFinSelectedReceivablesPaymentDetailsVo.java
  21. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationFeign.java
  22. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationJYDDKYDJQuery.java
  23. 88
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApply.java
  24. 89
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyDetailsVo.java
  25. 89
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyDto.java
  26. 78
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyFeign.java
  27. 72
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyFeignFallback.java
  28. 87
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyQuery.java
  29. 89
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyVo.java
  30. 72
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVeh.java
  31. 73
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehDetailsVo.java
  32. 73
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehDto.java
  33. 78
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehFeign.java
  34. 72
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehFeignFallback.java
  35. 71
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehQuery.java
  36. 73
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehVo.java
  37. 4
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectReceivablesDetailedVo.java
  38. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedVo.java
  39. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesPaymentDetailsQuery.java
  40. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/DetailsOfReceivablesAndUncollectedItemsVo.java
  41. 277
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  42. 65
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyMapper.java
  43. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyMapper.xml
  44. 100
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyRest.java
  45. 110
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyService.java
  46. 65
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardveh/FinFundsCarriedForwardVehMapper.java
  47. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardveh/FinFundsCarriedForwardVehMapper.xml
  48. 100
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardveh/FinFundsCarriedForwardVehRest.java
  49. 110
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardveh/FinFundsCarriedForwardVehService.java
  50. 24
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.xml
  51. 51
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedService.java
  52. 14
      anrui-riskcenter-ui/.editorconfig
  53. 10
      anrui-riskcenter-ui/.env.development
  54. 9
      anrui-riskcenter-ui/.env.production
  55. 8
      anrui-riskcenter-ui/.env.staging
  56. 4
      anrui-riskcenter-ui/.eslintignore
  57. 199
      anrui-riskcenter-ui/.eslintrc.js
  58. 16
      anrui-riskcenter-ui/.gitignore
  59. 28
      anrui-riskcenter-ui/.project
  60. 5
      anrui-riskcenter-ui/.travis.yml
  61. 21
      anrui-riskcenter-ui/LICENSE
  62. 0
      anrui-riskcenter-ui/README-zh.md
  63. 90
      anrui-riskcenter-ui/README.md
  64. 14
      anrui-riskcenter-ui/babel.config.js
  65. 35
      anrui-riskcenter-ui/build/index.js
  66. 24
      anrui-riskcenter-ui/jest.config.js
  67. 9
      anrui-riskcenter-ui/jsconfig.json
  68. 57
      anrui-riskcenter-ui/mock/index.js
  69. 81
      anrui-riskcenter-ui/mock/mock-server.js
  70. 29
      anrui-riskcenter-ui/mock/table.js
  71. 84
      anrui-riskcenter-ui/mock/user.js
  72. 25
      anrui-riskcenter-ui/mock/utils.js
  73. 69
      anrui-riskcenter-ui/package.json
  74. 8
      anrui-riskcenter-ui/postcss.config.js
  75. BIN
      anrui-riskcenter-ui/public/favicon.ico
  76. BIN
      anrui-riskcenter-ui/public/image/liuchengtu.jpg
  77. 17
      anrui-riskcenter-ui/public/index.html
  78. 14
      anrui-riskcenter-ui/src/App.vue
  79. 20
      anrui-riskcenter-ui/src/api/Common/Upload.js
  80. 49
      anrui-riskcenter-ui/src/api/Common/areaPicker.js
  81. 13
      anrui-riskcenter-ui/src/api/Common/permission.js
  82. 36
      anrui-riskcenter-ui/src/api/User/login.js
  83. 116
      anrui-riskcenter-ui/src/api/management/yuangongguanli.js
  84. 44
      anrui-riskcenter-ui/src/api/system/Role/role.js
  85. 44
      anrui-riskcenter-ui/src/api/user.js
  86. BIN
      anrui-riskcenter-ui/src/assets/404_images/404.png
  87. BIN
      anrui-riskcenter-ui/src/assets/404_images/404_cloud.png
  88. BIN
      anrui-riskcenter-ui/src/assets/home/anrui.png
  89. BIN
      anrui-riskcenter-ui/src/assets/home/bIcon1.png
  90. BIN
      anrui-riskcenter-ui/src/assets/home/bIcon2.png
  91. BIN
      anrui-riskcenter-ui/src/assets/home/bIcon3.png
  92. BIN
      anrui-riskcenter-ui/src/assets/home/bIcon4.png
  93. BIN
      anrui-riskcenter-ui/src/assets/home/bIcon5.png
  94. BIN
      anrui-riskcenter-ui/src/assets/home/bIcon6.png
  95. BIN
      anrui-riskcenter-ui/src/assets/home/bIcon7.png
  96. BIN
      anrui-riskcenter-ui/src/assets/home/bIcon8.png
  97. BIN
      anrui-riskcenter-ui/src/assets/home/bottomBg.png
  98. BIN
      anrui-riskcenter-ui/src/assets/home/line.png
  99. BIN
      anrui-riskcenter-ui/src/assets/home/ltBg.png
  100. BIN
      anrui-riskcenter-ui/src/assets/home/ltIcon1.png

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bustransferrecords/BusTransferRecordsFeign.java

@ -46,7 +46,7 @@ public interface BusTransferRecordsFeign {
@ApiOperation("根据接收人sid以及车辆sid查询是否有待接收记录")
@GetMapping("/selectByVinSid")
ResultBean<BusTransferRecords> selectByVinSid(@RequestParam("vinSid") String vinSid, @RequestParam("receiveUserSid") String receiveUserSid,@RequestParam("goodsTypeKey") String goodsTypeKey);
ResultBean<BusTransferRecords> selectByVinSid(@RequestParam("contractNo") String contractNo,@RequestParam("vinSid") String vinSid, @RequestParam("receiveUserSid") String receiveUserSid,@RequestParam("goodsTypeKey") String goodsTypeKey);
@ApiOperation("根据来源sid删除")
@PostMapping("/delBySourceSid")

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

@ -133,7 +133,7 @@
</select>
<select id="selectNumByContractNo" resultType="int">
select sum(bddd.giveNum) from bus_delivered_details_discount bddd left join bus_delivered bd on bd.sid = bddd.applySid
select IFNULL(sum(bddd.giveNum),0) from bus_delivered_details_discount bddd left join bus_delivered bd on bd.sid = bddd.applySid
where contractNo = #{contractId} and (bd.state =2 or bd.state = 3)
</select>
</mapper>

8
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandoverprepare/BusHandoverPrepareService.java

@ -305,7 +305,7 @@ public class BusHandoverPrepareService extends MybatisBaseService<BusHandoverPre
BusHandoverPrepare busHandoverPrepare = fetchBySid(busHandoverPrepareVehicle.getMainSid());
String receiveUserSid = busHandoverPrepare.getCreateBySid();
//根据车辆sid以及销售专员的用户sid查询是否有待接收的记录
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(busHandoverPrepareVehicle.getVinSid(), receiveUserSid, BusTransferRecordEnum.FP.getCode());
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(busHandoverPrepare.getContractNo(),busHandoverPrepareVehicle.getVinSid(), receiveUserSid, BusTransferRecordEnum.FP.getCode());
if (busTransferRecordsResultBean.getData() == null) {
return rb.setMsg("发票未准备好");
} else {
@ -348,7 +348,7 @@ public class BusHandoverPrepareService extends MybatisBaseService<BusHandoverPre
//查询销售专员的用户sid
BusHandoverPrepare busHandoverPrepare = fetchBySid(busHandoverPrepareVehicle.getMainSid());
String receiveUserSid = busHandoverPrepare.getCreateBySid();
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(busHandoverPrepareVehicle.getVinSid(), receiveUserSid, BusTransferRecordEnum.HGZ.getCode());
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid("",busHandoverPrepareVehicle.getVinSid(), receiveUserSid, BusTransferRecordEnum.HGZ.getCode());
if (busTransferRecordsResultBean.getData() == null) {
return rb.setMsg("合格证未准备好");
} else {
@ -670,7 +670,7 @@ public class BusHandoverPrepareService extends MybatisBaseService<BusHandoverPre
//发票确认:确认时更新接收记录的接收日期及接收备注,如果发票移交状态为移交中的,则更新为已移交。
busHandoverPrepareVehicle.setInvoicingState(1);
//根据车辆sid查询移交记录
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(busHandoverPrepareVehicle.getVinSid(), busHandoverPrepare.getCreateBySid(), BusTransferRecordEnum.FP.getCode());
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(busHandoverPrepare.getContractNo(),busHandoverPrepareVehicle.getVinSid(), busHandoverPrepare.getCreateBySid(), BusTransferRecordEnum.FP.getCode());
if (busTransferRecordsResultBean.getData() != null) {
BusTransferRecords busTransferRecords = busTransferRecordsResultBean.getData();
busTransferRecords.setReceiveRemarks(dto.getRemarks());
@ -700,7 +700,7 @@ public class BusHandoverPrepareService extends MybatisBaseService<BusHandoverPre
//合格证确认:确认接收后,修改合格证的移交状态为已移交。
busHandoverPrepareVehicle.setCertificateState(1);
//根据车辆sid查询移交记录
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(busHandoverPrepareVehicle.getVinSid(), busHandoverPrepare.getCreateBySid(), BusTransferRecordEnum.HGZ.getCode());
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid("",busHandoverPrepareVehicle.getVinSid(), busHandoverPrepare.getCreateBySid(), BusTransferRecordEnum.HGZ.getCode());
if (busTransferRecordsResultBean.getData() != null) {
BusTransferRecords busTransferRecords = busTransferRecordsResultBean.getData();
busTransferRecords.setReceiveRemarks(dto.getRemarks());

13
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandoverpreparevehicle/BusHandoverPrepareVehicleService.java

@ -28,6 +28,7 @@ package com.yxt.anrui.buscenter.biz.bushandoverpreparevehicle;
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.common.enums.CertificState;
import com.yxt.anrui.buscenter.api.bushandoverprepare.BusHandoverPrepare;
import com.yxt.anrui.buscenter.api.bushandoverprepare.HandoverInformationIntemVo;
import com.yxt.anrui.buscenter.api.bushandoverpreparevehicle.*;
@ -131,13 +132,13 @@ public class BusHandoverPrepareVehicleService extends MybatisBaseService<BusHand
list.removeAll(Collections.singleton(null));
for(AppBusHandoverPrepareVehicleInfoVo vo : list){
//先判断是否准备好合格证
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(vo.getVinSid(), receiveUserSid, BusTransferRecordEnum.HGZ.getCode());
ResultBean<BusTransferRecords> busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid("",vo.getVinSid(), receiveUserSid, BusTransferRecordEnum.HGZ.getCode());
if (busTransferRecordsResultBean.getData() != null && !vo.isCertificateState()) {
vo.setCertificateStateStr("原件接收确认");
}
//判断发票是否准备好
//根据车辆sid以及销售专员的用户sid查询是否有待接收的记录
busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(vo.getVinSid(), receiveUserSid, BusTransferRecordEnum.FP.getCode());
busTransferRecordsResultBean = busTransferRecordsService.selectByVinSid(busHandoverPrepare.getContractNo(),vo.getVinSid(), receiveUserSid, BusTransferRecordEnum.FP.getCode());
if (busTransferRecordsResultBean.getData() != null && !vo.isInvoicingState()) {
vo.setInvoicingStateStr("原件接收确认");
}
@ -166,7 +167,13 @@ public class BusHandoverPrepareVehicleService extends MybatisBaseService<BusHand
vo.setOnBoardDataStateStr("接收确认");
}
}else{
vo.setOnBoardDataState(true);
if(CertificState.TransferState.TRANSTATE_YYJ.getCode().equals(busVehicleInformationHandover.getTransferStateKey())){
vo.setOnBoardDataState(true);
}else{
vo.setOnBoardDataState(false);
vo.setOnBoardDataStateStr("接收确认");
}
}
}
}

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

@ -72,7 +72,7 @@
</select>
<select id="selectByContractNo" resultType="int">
select sum(bddd.num) from bus_sales_order_discount bddd left join bus_sales_order bo on bo.sid = bddd.salesOrderSid
select IFNULL(sum(bddd.num),0) from bus_sales_order_discount bddd left join bus_sales_order bo on bo.sid = bddd.salesOrderSid
where bo.contractNo = #{contractId}
</select>
</mapper>

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bustransferrecords/BusTransferRecordsMapper.java

@ -24,7 +24,7 @@ import java.util.List;
public interface BusTransferRecordsMapper extends BaseMapper<BusTransferRecords> {
IPage<BusTransferRecordsVo> pagerList(IPage<BusTransferRecords> page, @Param(Constants.WRAPPER)QueryWrapper<BusTransferRecords> qw, @Param("list") List<String> roleSidList);
BusTransferRecords selectByVinSid(@Param("vinSid") String vinSid, @Param("userSid") String receiveUserSid,@Param("typeKey") String typeKey);
BusTransferRecords selectByVinSid(@Param("contractNo") String contractNo,@Param("vinSid") String vinSid, @Param("userSid") String receiveUserSid,@Param("typeKey") String typeKey);
@Delete("DELETE FROM bus_transfer_records WHERE goodsSid = #{sourceSid}")
void delBySourceSid(String sourceSid);

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bustransferrecords/BusTransferRecordsMapper.xml

@ -34,6 +34,10 @@
where vinSid = #{vinSid}
and receiveSid = #{userSid}
and goodsTypeKey = #{typeKey}
<if test="contractNo != null and contractNo != ''">
and contractNo = #{contractNo}
</if>
order by id desc limit 1
</select>
<select id="hgzPagerList" resultType="com.yxt.anrui.buscenter.api.bustransferrecords.BusTransferRecordsHgzVo">

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bustransferrecords/BusTransferRecordsRest.java

@ -52,8 +52,8 @@ public class BusTransferRecordsRest implements BusTransferRecordsFeign {
}
@Override
public ResultBean<BusTransferRecords> selectByVinSid(String vinSid, String receiveUserSid,String goodsTypeKey) {
return busTransferRecordsService.selectByVinSid(vinSid, receiveUserSid,goodsTypeKey);
public ResultBean<BusTransferRecords> selectByVinSid(String contractNo,String vinSid, String receiveUserSid, String goodsTypeKey) {
return busTransferRecordsService.selectByVinSid(contractNo,vinSid, receiveUserSid,goodsTypeKey);
}
@Override

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bustransferrecords/BusTransferRecordsService.java

@ -189,9 +189,9 @@ public class BusTransferRecordsService extends MybatisBaseService<BusTransferRec
return rb.success().setData(busRecordsInvoiceVo);
}
public ResultBean<BusTransferRecords> selectByVinSid(String vinSid, String receiveUserSid, String type) {
public ResultBean<BusTransferRecords> selectByVinSid(String contractNo,String vinSid, String receiveUserSid, String type) {
ResultBean<BusTransferRecords> rb = ResultBean.fireFail();
BusTransferRecords BusTransferRecords = baseMapper.selectByVinSid(vinSid, receiveUserSid, type);
BusTransferRecords BusTransferRecords = baseMapper.selectByVinSid(contractNo,vinSid, receiveUserSid, type);
return rb.success().setData(BusTransferRecords);
}

18
anrui-buscenter/anrui-buscenter-ui/src/views/discountpackagehandover/discountpackagehandover.vue

@ -54,47 +54,47 @@
</div>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center">
<el-table-column label="创建日期" align="center" width="110">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center">
<el-table-column label="合同编号" align="center" width="110">
<template slot-scope="scope">
<span>{{ scope.row.contractNo }}</span>
</template>
</el-table-column>
<el-table-column label="客户名称" align="center" width="180">
<el-table-column label="客户名称" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.customerName }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center" width="180">
<el-table-column label="车型" align="center" min-width="150">
<template slot-scope="scope">
<span>{{ scope.row.vehModel }}</span>
</template>
</el-table-column>
<el-table-column label="出库台数" align="center" width="180">
<el-table-column label="出库台数" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.vehCount }}</span>
</template>
</el-table-column>
<el-table-column label="待接收人" align="center" width="180">
<el-table-column label="待接收人" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.recName }}</span>
</template>
</el-table-column>
<el-table-column label="待接收人电话" align="center" width="180">
<el-table-column label="待接收人电话" align="center" width="160">
<template slot-scope="scope">
<span>{{ scope.row.recPhone }}</span>
</template>
</el-table-column>
<el-table-column label="移交人" align="center" width="180">
<el-table-column label="移交人" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.transferName }}</span>
</template>
</el-table-column>
<el-table-column label="移交人电话" align="center" width="180">
<el-table-column label="移交人电话" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.transferPhone }}</span>
</template>

18
anrui-buscenter/anrui-buscenter-ui/src/views/discountpackagehandover/discountpackagetobehandover.vue

@ -52,47 +52,47 @@
<span>{{ scope.row.state == 1 ? '待准备' : scope.row.state == 2 ? '待交接' : scope.row.state == 3 ? '已交接' : '其他' }}</span>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center">
<el-table-column label="创建日期" align="center" width="110">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center">
<el-table-column label="合同编号" align="center" width="110">
<template slot-scope="scope">
<span>{{ scope.row.contractNo }}</span>
</template>
</el-table-column>
<el-table-column label="客户名称" align="center" width="180">
<el-table-column label="客户名称" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.customerName }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center" width="180">
<el-table-column label="车型" align="center" min-width="150">
<template slot-scope="scope">
<span>{{ scope.row.vehModel }}</span>
</template>
</el-table-column>
<el-table-column label="出库台数" align="center" width="180">
<el-table-column label="出库台数" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.vehCount }}</span>
</template>
</el-table-column>
<el-table-column label="待接收人" align="center" width="180">
<el-table-column label="待接收人" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.recName }}</span>
</template>
</el-table-column>
<el-table-column label="待接收人电话" align="center" width="180">
<el-table-column label="待接收人电话" align="center" width="160">
<template slot-scope="scope">
<span>{{ scope.row.recPhone }}</span>
</template>
</el-table-column>
<el-table-column label="移交人" align="center" width="180">
<el-table-column label="移交人" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.transferName }}</span>
</template>
</el-table-column>
<el-table-column label="移交人电话" align="center" width="180">
<el-table-column label="移交人电话" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.transferPhone }}</span>
</template>

8
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/jiaochebanliFlow/deliveryconfirmationDaiBanInfo.vue

@ -79,7 +79,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>接收车辆确认书</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.receiveCarImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -87,7 +87,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>委托提车授权书及委托人身份证</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.entrustImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -95,7 +95,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>交车资料确认单</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.entrustConfirmImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -103,7 +103,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>出门证照片</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.exitTicketImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>

8
anrui-buscenter/anrui-buscenter-ui/src/views/workflow/jiaochebanliFlow/deliveryconfirmationYiBanInfo.vue

@ -77,7 +77,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>接收车辆确认书</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.receiveCarImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -85,7 +85,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>委托提车授权书及委托人身份证</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.entrustImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -93,7 +93,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>交车资料确认单</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.entrustConfirmImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -101,7 +101,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>出门证照片</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.exitTicketImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>

8
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/jiaochebanli/deliveryconfirmationInfo.vue

@ -77,7 +77,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>接收车辆确认书</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.receiveCarImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -85,7 +85,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>委托提车授权书及委托人身份证</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.entrustImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -93,7 +93,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>交车资料确认单</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.entrustConfirmImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>
@ -101,7 +101,7 @@
<el-row>
<el-col :span="24">
<div class="span-sty" style="display: flex;flex-direction: row;justify-content: flex-end;align-items: center"><span>出门证照片</span></div>
<el-form-item>
<el-form-item style="height: 178px;width: 178px">
<el-image class="addinputInfo" style="height: 178px;width: 178px" v-for="(item, index) in formobj.exitTicketImages" :key="index" :src="item" :preview-src-list="formobj.receiveCarImages"/>
</el-form-item>
</el-col>

6
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/jiaochezhunbei/readyfordeliveryAdd.vue

@ -42,13 +42,13 @@
</el-table-column>
<el-table-column label="发票" align="center">
<template slot-scope="scope">
<span class="bluezi" v-if="!scope.row.invoicingState" @click="handleAffirm(scope.row.sid, '01', '发票交接确认', scope.row.invoicingState)">{{ formobj.invoicingStateStr }}</span>
<span class="bluezi" v-if="!scope.row.invoicingState" @click="handleAffirm(scope.row.sid, '01', '发票交接确认', scope.row.invoicingState)">{{ scope.row.invoicingStateStr }}</span>
<span class="bluezi" v-else @click="handleAffirm(scope.row.sid, '01', '发票交接确认', scope.row.invoicingState)">查看</span>
</template>
</el-table-column>
<el-table-column label="合格证" align="center">
<template slot-scope="scope">
<span class="bluezi" v-if="!scope.row.certificateState" @click="handleAffirm(scope.row.sid, '02', '合格证交接确认', scope.row.certificateState)">{{ formobj.certificateStateStr }}</span>
<span class="bluezi" v-if="!scope.row.certificateState" @click="handleAffirm(scope.row.sid, '02', '合格证交接确认', scope.row.certificateState)">{{ scope.row.certificateStateStr }}</span>
<span class="bluezi" v-else @click="handleAffirm(scope.row.sid, '02', '合格证交接确认', scope.row.certificateState)">查看</span>
</template>
</el-table-column>
@ -60,7 +60,7 @@
</el-table-column>
<el-table-column label="随车资料" align="center">
<template slot-scope="scope">
<span class="bluezi" v-if="!scope.row.onBoardDataState" @click="handleAffirm(scope.row.sid, '04', '随车资料交接确认', scope.row.onBoardDataState)">{{ formobj.onBoardDataStateStr }}</span>
<span class="bluezi" v-if="!scope.row.onBoardDataState" @click="handleAffirm(scope.row.sid, '04', '随车资料交接确认', scope.row.onBoardDataState)">{{ scope.row.onBoardDataStateStr }}</span>
<span class="bluezi" v-else @click="handleAffirm(scope.row.sid, '04', '随车资料交接确认', scope.row.onBoardDataState)">查看</span>
</template>
</el-table-column>

6
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/jiaochezhunbei/readyfordeliveryInfo.vue

@ -40,13 +40,13 @@
</el-table-column>
<el-table-column label="发票" align="center">
<template slot-scope="scope">
<span class="bluezi" v-if="!scope.row.invoicingState" @click="handleAffirm(scope.row.sid, '01', '发票交接确认', scope.row.invoicingState)">{{ formobj.invoicingStateStr }}</span>
<span class="bluezi" v-if="!scope.row.invoicingState" @click="handleAffirm(scope.row.sid, '01', '发票交接确认', scope.row.invoicingState)">{{ scope.row.invoicingStateStr }}</span>
<span class="bluezi" v-else @click="handleAffirm(scope.row.sid, '01', '发票交接确认', scope.row.invoicingState)">查看</span>
</template>
</el-table-column>
<el-table-column label="合格证" align="center">
<template slot-scope="scope">
<span class="bluezi" v-if="!scope.row.certificateState" @click="handleAffirm(scope.row.sid, '02', '合格证交接确认', scope.row.certificateState)">{{ formobj.certificateStateStr }}</span>
<span class="bluezi" v-if="!scope.row.certificateState" @click="handleAffirm(scope.row.sid, '02', '合格证交接确认', scope.row.certificateState)">{{ scope.row.certificateStateStr }}</span>
<span class="bluezi" v-else @click="handleAffirm(scope.row.sid, '02', '合格证交接确认', scope.row.certificateState)">查看</span>
</template>
</el-table-column>
@ -58,7 +58,7 @@
</el-table-column>
<el-table-column label="随车资料" align="center">
<template slot-scope="scope">
<span class="bluezi" v-if="!scope.row.onBoardDataState" @click="handleAffirm(scope.row.sid, '04', '随车资料交接确认', scope.row.onBoardDataState)">{{ formobj.onBoardDataStateStr }}</span>
<span class="bluezi" v-if="!scope.row.onBoardDataState" @click="handleAffirm(scope.row.sid, '04', '随车资料交接确认', scope.row.onBoardDataState)">{{ scope.row.onBoardDataStateStr }}</span>
<span class="bluezi" v-else @click="handleAffirm(scope.row.sid, '04', '随车资料交接确认', scope.row.onBoardDataState)">查看</span>
</template>
</el-table-column>

11
anrui-buscenter/anrui-finmanage-ui/src/api/anruifinmanagement/paymentConfirmation.js

@ -171,3 +171,14 @@ export function ctskd(data) {
headers: { 'Content-Type': 'application/json' }
})
}
// 选择已认款项
export function selectPageList(data) {
return request({
url: '/fin/finselectedreceivablesdetailed/selectPageList',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}

687
anrui-buscenter/anrui-finmanage-ui/src/views/anruifinmanagement/agencyfund/agencyfundAdd.vue

@ -1,324 +1,328 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交
</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交
</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
</div>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="top" class="formadd">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>申请部门</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createDept }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>申请人</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createByName }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>申请日期</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createDate }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>销售部门</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="staffDeptName">
<el-select v-model="formobj.staffDeptName" placeholder="请选择" :disabled="forbidden" @change="changeStaffDept" filterable>
<el-option v-for="item in staffDept_list" :key="item.orgDeptSid" :label="item.orgDeptName" :value="item.orgDeptName"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>销售专员</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="staffName">
<el-select v-model="formobj.staffName" placeholder="请选择" :disabled="forbidden" @change="changeStaff" filterable>
<el-option v-for="item in staff_list" :key="item.staffSid" :label="item.staffName" :value="item.staffName"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>采购系统</span>
</el-col>
<el-col :span="4">
<el-form-item prop="purchaseSystemName">
<el-select v-model="formobj.purchaseSystemName" placeholder="请选择" :disabled="forbidden" @change="changePurchase" filterable clearable>
<el-option v-for="item in purchase_list" :key="item.deptSid" :label="item.purchaseSystemName" :value="item.purchaseSystemName"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款方式</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionTypeValue">
<el-select v-model="formobj.collectionTypeValue" placeholder="请选择" :disabled="forbidden" @change="changeCollectionType" filterable clearable>
<el-option v-for="item in receiptType_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款金额()</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionMoney">
<el-input v-model="formobj.collectionMoney" @keyup.native="UpNumber" @keydown.native="UpNumber" :disabled="forbidden" @change="changeCollectionMoney" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款日期</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionDate">
<el-date-picker value-format="yyyy-MM-dd" v-model="formobj.collectionDate" :disabled="forbidden" clearable type="date" style="width: 93%" placeholder="请选择"/>
</el-form-item>
</el-col>
</el-row>
<el-row v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'">
<el-col :span="4" class="tleftb balanceStyle">
<span><span class="icon">*</span>收款银行账号</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<el-select v-model="formobj.collectionBankNum" placeholder="请选择" :disabled="forbidden" @change="changeCollectionBankNum" filterable clearable>
<el-option v-for="item in collectionBankNum_list" :key="item.accountSid" :label="item.bankAccount" :value="item.bankAccount"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb balanceStyle">
<span>收款账户名称</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<span>{{ formobj.receivingName }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb balanceStyle">
<span>收款银行</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<span>{{ formobj.collectionBank }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>付款方名称</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="payerName">
<el-input v-model="formobj.payerName" :disabled="forbidden" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'"><span class="icon">*</span>付款账号后4位</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="formobj.payAccount" v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'" :disabled="forbidden" maxlength="4" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'">付款银行</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="formobj.payBank" v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'" :disabled="forbidden" placeholder="" clearable/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span>备注</span>
</el-col>
<el-col :span="20" class="trightb">
<el-form-item>
<el-input v-model="formobj.remarks" :disabled="forbidden" style="width: 70%" placeholder="" clearable/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span>打款凭证</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item>
<Upload v-show="forbidden !== true" style="float:left;" ref="remit" @handleSuccess="remitAdd" @handleRemove="remitRemove" />
<span v-show="forbidden == true" v-for="(item, index) in list1" :key="index">{{ item.name }}
</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>汇款确认书</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item>
<Upload style="float:left;" ref="remittance" @handleSuccess="remittanceAdd" @handleRemove="remittanceRemove" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24" style="padding: 0px">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="合同编号:">
<el-input v-model="listQuery.contractNo" size="mini" placeholder="" style="width: 110px" clearable/>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="top" class="formadd">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>申请部门</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createDept }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>申请人</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createByName }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>申请日期</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createDate }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>销售部门</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="staffDeptName">
<el-select v-model="formobj.staffDeptName" placeholder="请选择" :disabled="forbidden" @change="changeStaffDept" filterable>
<el-option v-for="item in staffDept_list" :key="item.orgDeptSid" :label="item.orgDeptName" :value="item.orgDeptName"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>销售专员</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="staffName">
<el-select v-model="formobj.staffName" placeholder="请选择" :disabled="forbidden" @change="changeStaff" filterable>
<el-option v-for="item in staff_list" :key="item.staffSid" :label="item.staffName" :value="item.staffName"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>采购系统</span>
</el-col>
<el-col :span="4">
<el-form-item prop="purchaseSystemName">
<el-select v-model="formobj.purchaseSystemName" placeholder="请选择" :disabled="forbidden" @change="changePurchase" filterable clearable>
<el-option v-for="item in purchase_list" :key="item.deptSid" :label="item.purchaseSystemName" :value="item.purchaseSystemName"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款方式</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionTypeValue">
<el-select v-model="formobj.collectionTypeValue" placeholder="请选择" :disabled="forbidden" @change="changeCollectionType" filterable clearable>
<el-option v-for="item in receiptType_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款金额()</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionMoney">
<el-input v-model="formobj.collectionMoney" @keyup.native="UpNumber" @keydown.native="UpNumber" :disabled="forbidden" @change="changeCollectionMoney" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款日期</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionDate">
<el-date-picker value-format="yyyy-MM-dd" v-model="formobj.collectionDate" :disabled="forbidden" clearable type="date" style="width: 93%" placeholder="请选择"/>
</el-form-item>
</el-col>
</el-row>
<el-row v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'">
<el-col :span="4" class="tleftb balanceStyle">
<span><span class="icon">*</span>收款银行账号</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<el-select v-model="formobj.collectionBankNum" placeholder="请选择" :disabled="forbidden" @change="changeCollectionBankNum" filterable clearable>
<el-option v-for="item in collectionBankNum_list" :key="item.accountSid" :label="item.bankAccount" :value="item.bankAccount"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb balanceStyle">
<span>收款账户名称</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<span>{{ formobj.receivingName }}</span>
</el-form-item>
<el-form-item label="客户名称:">
<el-input v-model="listQuery.customerName" size="mini" placeholder="" style="width: 100px" clearable/>
</el-col>
<el-col :span="4" class="tleftb balanceStyle">
<span>收款银行</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<span>{{ formobj.collectionBank }}</span>
</el-form-item>
<el-form-item label="联系电话:">
<el-input v-model="listQuery.customerPhone" size="mini" placeholder="" style="width: 140px" clearable/>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>付款方名称</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="payerName">
<el-input v-model="formobj.payerName" :disabled="forbidden" placeholder="" clearable/>
</el-form-item>
<el-form-item label="车架号:">
<el-input v-model="listQuery.vinNo" size="mini" placeholder="" style="width: 140px" clearable/>
</el-col>
<el-col :span="4" class="tleftb">
<span v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'"><span class="icon">*</span>付款账号后4位</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="formobj.payAccount" v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'" :disabled="forbidden" maxlength="4" placeholder="" clearable/>
</el-form-item>
</el-form>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<div style="padding-left: 20%">
<el-button type="primary" size="mini" @click="handleFilter">查询</el-button>
<el-button type="primary" size="mini" @click="handReset">重置</el-button>
</el-col>
<el-col :span="4" class="tleftb">
<span v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'">付款银行</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="formobj.payBank" v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'" :disabled="forbidden" placeholder="" clearable/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span>备注</span>
</el-col>
<el-col :span="20" class="trightb">
<el-form-item>
<el-input v-model="formobj.remarks" :disabled="forbidden" style="width: 70%" placeholder="" clearable/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span>打款凭证</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item>
<Upload v-show="forbidden !== true" style="float:left;" ref="remit" @handleSuccess="remitAdd" @handleRemove="remitRemove" />
<span v-show="forbidden == true" v-for="(item, index) in list1" :key="index">{{ item.name }}
</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>汇款确认书</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item>
<Upload style="float:left;" ref="remittance" @handleSuccess="remittanceAdd" @handleRemove="remittanceRemove" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24" style="padding: 0px">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="合同编号:">
<el-input v-model="listQuery.contractNo" size="mini" placeholder="" style="width: 110px" clearable/>
</el-form-item>
<el-form-item label="客户名称:">
<el-input v-model="listQuery.customerName" size="mini" placeholder="" style="width: 100px" clearable/>
</el-form-item>
<el-form-item label="联系电话:">
<el-input v-model="listQuery.customerPhone" size="mini" placeholder="" style="width: 140px" clearable/>
</el-form-item>
<el-form-item label="车架号:">
<el-input v-model="listQuery.vinNo" size="mini" placeholder="" style="width: 140px" clearable/>
</el-form-item>
</el-form>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<div style="padding-left: 20%">
<el-button type="primary" size="mini" @click="handleFilter">查询</el-button>
<el-button type="primary" size="mini" @click="handReset">重置</el-button>
<el-button type="primary" size="mini" @click="handleSelect">选择已认款项</el-button>
</div>
<div>
<span >余额:</span><el-input v-model="balance" placeholder="" style="width: 120px" readonly/>
</div>
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<div>
<span >余额:</span><el-input v-model="balance" placeholder="" style="width: 120px" readonly/>
<div class="tableTitle">应收未收款款项明细</div>
<el-table border :key="overduereceivableKey" width="100%" :data="overduereceivable_list">
<el-table-column fixed label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="handAdd(scope.row)">添加</el-button>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.contractNo }}
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.VIN }}
</template>
</el-table-column>
<el-table-column label="客户/电话" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.customerName }} {{ scope.row.customerPhone }}
</template>
</el-table-column>
<el-table-column label="付款" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.payType }}
</template>
</el-table-column>
<el-table-column label="应收金额" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.reveivableMoney }}
</template>
</el-table-column>
<el-table-column label="应收项目" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.receivablesName }}
</template>
</el-table-column>
<el-table-column label="当前应收" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.currentReceivableMoney }}
</template>
</el-table-column>
</el-table>
</div>
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<div>
<div class="tableTitle">应收未收款款项明细</div>
<el-table border :key="overduereceivableKey" width="100%" :data="overduereceivable_list">
<el-table-column fixed label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="handAdd(scope.row)">添加</el-button>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.contractNo }}
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.VIN }}
</template>
</el-table-column>
<el-table-column label="客户/电话" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.customerName }} {{ scope.row.customerPhone }}
</template>
</el-table-column>
<el-table-column label="付款" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.payType }}
</template>
</el-table-column>
<el-table-column label="应收金额" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.reveivableMoney }}
</template>
</el-table-column>
<el-table-column label="应收项目" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.receivablesName }}
</template>
</el-table-column>
<el-table-column label="当前应收" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.currentReceivableMoney }}
</template>
</el-table-column>
</el-table>
</div>
</el-col>
<el-col :span="14">
<div>
<div class="tableTitle">已选应收款项明细</div>
<el-table border :key="selectedreceivableKey" width="100%" :data="formobj.finSelectedReceivablesDetaileds">
<el-table-column fixed label="操作" align="center" width="70">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="handDelete(scope.row)">移除</el-button>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="95">
<template slot-scope="scope">
{{ scope.row.contractNo }}
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.VIN }}
</template>
</el-table-column>
<el-table-column label="客户/电话" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.customerName }} {{ scope.row.customerPhone }}
</template>
</el-table-column>
<el-table-column label="付款" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.payType }}
</template>
</el-table-column>
<el-table-column label="应收项目" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.receivablesName }}
</template>
</el-table-column>
<el-table-column label="当前应收" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.currentReceivableMoney }}
</template>
</el-table-column>
<el-table-column label="认款金额" align="center" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.subscriptionMoney" @input="changeMoney(scope.row)" @keyup.native="UpNumber" @keydown.native="UpNumber" @change="changeSubscriptionMoney" placeholder="" clearable/>
</template>
</el-table-column>
<el-table-column label="剩余应收" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.surplusReceivable }}</span>
</template>
</el-table-column>
<el-table-column label="认款申请日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.subscriptionDate }}</span>
</template>
</el-table-column>
</el-table>
</div>
</el-col>
</el-row>
</el-form>
</el-col>
<el-col :span="14">
<div>
<div class="tableTitle">已选应收款项明细</div>
<el-table border :key="selectedreceivableKey" width="100%" :data="formobj.finSelectedReceivablesDetaileds">
<el-table-column fixed label="操作" align="center" width="70">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="handDelete(scope.row)">移除</el-button>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="95">
<template slot-scope="scope">
{{ scope.row.contractNo }}
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.VIN }}
</template>
</el-table-column>
<el-table-column label="客户/电话" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.customerName }} {{ scope.row.customerPhone }}
</template>
</el-table-column>
<el-table-column label="付款" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.payType }}
</template>
</el-table-column>
<el-table-column label="应收项目" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.receivablesName }}
</template>
</el-table-column>
<el-table-column label="当前应收" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.currentReceivableMoney }}
</template>
</el-table-column>
<el-table-column label="认款金额" align="center" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.subscriptionMoney" @input="changeMoney(scope.row)" @keyup.native="UpNumber" @keydown.native="UpNumber" @change="changeSubscriptionMoney" placeholder="" clearable/>
</template>
</el-table-column>
<el-table-column label="剩余应收" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.surplusReceivable }}</span>
</template>
</el-table-column>
<el-table-column label="认款申请日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.subscriptionDate }}</span>
</template>
</el-table-column>
</el-table>
</div>
</el-col>
</el-row>
</el-form>
</div>
</div>
<amountpledged v-show="viewState == 2" ref="divSelect" @doback="resetState" @backData="backData"/>
</div>
</template>
@ -326,15 +330,18 @@
import { save, listAll, fetchDetailBySid } from '@/api/anruifinmanagement/paymentConfirmation.js'
import Upload from '@/components/uploadFile/filesUpload' //
import { selAccountByOrgSid, typeValues, fetchDetailsByUseOrgSid, getOrgSidByPath, selectOrgList } from '@/api/jichuxinxi/dictcommons'
import amountpledged from '../paymentConfirmation/relation/amountpledged'
export default {
name: 'DaiShouKuanAdd',
components: {
Upload
Upload,
amountpledged
},
data() {
return {
viewTitle: '',
viewState: 1,
dialogStatus: '',
overduereceivableKey: 0,
selectedreceivableKey: 1,
@ -392,7 +399,7 @@ export default {
createBySid: '',
vinNo: '',
orgPath: '',
purchaseSystemSid: '',
purchaseSystemSid: ''
},
rules: {
collectionMoney: [{ required: true, message: '收款金额不能为空', trigger: 'blur' }],
@ -604,6 +611,55 @@ export default {
}
this.getlist()
},
handleSelect() {
if (this.formobj.collectionMoney === '') {
this.$message({ showClose: true, type: 'error', message: '请先填写收款金额' })
return
}
if (this.formobj.purchaseSystemName === '') {
this.$message({ showClose: true, type: 'error', message: '请先选择采购系统' })
return
}
this.viewState = 2
this.$refs['divSelect'].showData(this.formobj.finSelectedReceivablesDetaileds, this.formobj.purchaseSystemSid)
},
backData(val) {
this.viewState = 1
var nowDate = new Date()
var date = {
year: nowDate.getFullYear(),
month: nowDate.getMonth() + 1,
day: nowDate.getDate()
}
var dayDate = date.year + '-' + (date.month >= 10 ? date.month : '0' + date.month) + '-' + (date.day >= 10 ? date.day : '0' + date.day)
for (var i = 0; i < val.length; i++) {
this.formobj.finSelectedReceivablesDetaileds.push({
createByName: window.sessionStorage.getItem('name'),
contractSid: val[i].contractSid,
contractNo: val[i].contractNo,
customerSid: val[i].customerSid,
customerName: val[i].customerName,
VIN: val[i].VIN,
useOrgSid: '',
customerPhone: val[i].customerPhone,
receivablesName: val[i].receivablesName,
currentReceivableMoney: val[i].currentReceivableMoney,
lastSubscriptionMoney: '',
subscriptionMoney: '',
surplusReceivable: '',
subscribedOf: val[i].subscribedOf,
subscriptionDate: dayDate,
collSid: '',
receivablesSid: val[i].sid,
payType: val[i].payType,
payTypeKey: val[i].payTypeKey,
sid: val[i].sid
})
}
},
resetState() {
this.viewState = 1
},
showAdd() {
this.DataDictionary()
this.newDate()
@ -722,6 +778,7 @@ export default {
lastSubscriptionMoney: '',
subscriptionMoney: '',
surplusReceivable: '',
subscribedOf: row.subscribedOf,
subscriptionDate: dayDate,
collSid: '',
receivablesSid: row.sid,
@ -734,10 +791,12 @@ export default {
}
},
handDelete(row) {
this.listQuery.sids.splice(this.listQuery.sids.indexOf(row.sid), 1)
this.formobj.finSelectedReceivablesDetaileds.splice(this.formobj.finSelectedReceivablesDetaileds.indexOf(row), 1)
this.calculateBalance()
this.getlist()
if (row.subscribedOf == 0) {
this.listQuery.sids.splice(this.listQuery.sids.indexOf(row.sid), 1)
this.getlist()
}
},
submit() {
if ((this.formobj.collectionTypeKey === '03' || this.formobj.collectionTypeKey === '05') && this.formobj.collectionBankNum === '') {

645
anrui-buscenter/anrui-finmanage-ui/src/views/anruifinmanagement/paymentConfirmation/acknowledgementReceiptAdd.vue

@ -1,303 +1,307 @@
<template>
<div class="app-container">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交
</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交
</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
</div>
<div class="listconadd">
<div class="titwu"><span>收款确认申请</span></div>
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="top" class="formadd">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>申请部门</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createDept }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>申请人</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createByName }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>申请日期</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createDate }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款方式</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionTypeValue">
<el-select v-model="formobj.collectionTypeValue" placeholder="请选择" :disabled="forbidden" @change="changeCollectionType" filterable clearable>
<el-option v-for="item in receiptType_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款金额()</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionMoney">
<el-input v-model="formobj.collectionMoney" @keyup.native="UpNumber" @keydown.native="UpNumber" :disabled="forbidden" @change="changeCollectionMoney" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款日期</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionDate">
<el-date-picker value-format="yyyy-MM-dd" v-model="formobj.collectionDate" :disabled="forbidden" clearable type="date" style="width: 93%" placeholder="请选择"/>
</el-form-item>
</el-col>
</el-row>
<el-row v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'">
<el-col :span="4" class="tleftb balanceStyle">
<span><span class="icon">*</span>收款银行账号</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<el-select v-model="formobj.collectionBankNum" placeholder="请选择" :disabled="forbidden" @change="changeCollectionBankNum" filterable clearable>
<el-option v-for="item in collectionBankNum_list" :key="item.accountSid" :label="item.bankAccount" :value="item.bankAccount"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb balanceStyle">
<span>收款账户名称</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<span>{{ formobj.receivingName }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb balanceStyle">
<span>收款银行</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<span>{{ formobj.collectionBank }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>付款方名称</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="payerName">
<el-input v-model="formobj.payerName" :disabled="forbidden" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'"><span class="icon">*</span>付款账号后4位</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="formobj.payAccount" v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'" :disabled="forbidden" maxlength="4" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'">付款银行</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="formobj.payBank" v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'" :disabled="forbidden" placeholder="" clearable/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span>备注</span>
</el-col>
<el-col :span="12" class="trightb">
<el-form-item>
<el-input v-model="formobj.remarks" :disabled="forbidden" style="width: 70%" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>采购系统</span>
</el-col>
<el-col :span="4">
<el-form-item prop="purchaseSystemName">
<el-select v-model="formobj.purchaseSystemName" placeholder="请选择" :disabled="forbidden" @change="changePurchase" filterable clearable>
<el-option v-for="item in purchase_list" :key="item.deptSid" :label="item.purchaseSystemName" :value="item.purchaseSystemName"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span>打款凭证</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item>
<Upload v-show="forbidden !== true" style="float:left;" ref="remit" @handleSuccess="remitAdd" @handleRemove="remitRemove" />
<span v-show="forbidden == true" v-for="(item, index) in list1" :key="index">{{ item.name }}
</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>汇款确认书</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item>
<Upload style="float:left;" ref="remittance" @handleSuccess="remittanceAdd" @handleRemove="remittanceRemove" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24" style="padding: 0px">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="合同编号:">
<el-input v-model="listQuery.contractNo" size="mini" placeholder="" style="width: 110px" clearable/>
<div class="listconadd">
<div class="titwu"><span>收款确认申请</span></div>
<el-form ref="form_obj" :model="formobj" :rules="rules" label-position="top" class="formadd">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="4" class="tleftb">
<span>申请部门</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createDept }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>申请人</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createByName }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>申请日期</span>
</el-col>
<el-col :span="4">
<el-form-item>
<span>{{ formobj.createDate }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款方式</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionTypeValue">
<el-select v-model="formobj.collectionTypeValue" placeholder="请选择" :disabled="forbidden" @change="changeCollectionType" filterable clearable>
<el-option v-for="item in receiptType_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款金额()</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionMoney">
<el-input v-model="formobj.collectionMoney" @keyup.native="UpNumber" @keydown.native="UpNumber" :disabled="forbidden" @change="changeCollectionMoney" placeholder="" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>收款日期</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="collectionDate">
<el-date-picker value-format="yyyy-MM-dd" v-model="formobj.collectionDate" :disabled="forbidden" clearable type="date" style="width: 93%" placeholder="请选择"/>
</el-form-item>
</el-col>
</el-row>
<el-row v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'">
<el-col :span="4" class="tleftb balanceStyle">
<span><span class="icon">*</span>收款银行账号</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<el-select v-model="formobj.collectionBankNum" placeholder="请选择" :disabled="forbidden" @change="changeCollectionBankNum" filterable clearable>
<el-option v-for="item in collectionBankNum_list" :key="item.accountSid" :label="item.bankAccount" :value="item.bankAccount"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb balanceStyle">
<span>收款账户名称</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<span>{{ formobj.receivingName }}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb balanceStyle">
<span>收款银行</span>
</el-col>
<el-col :span="4" class="tlineheightb">
<el-form-item>
<span>{{ formobj.collectionBank }}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>付款方名称</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item prop="payerName">
<el-input v-model="formobj.payerName" :disabled="forbidden" placeholder="" clearable/>
</el-form-item>
<el-form-item label="客户名称:">
<el-input v-model="listQuery.customerName" size="mini" placeholder="" style="width: 100px" clearable/>
</el-col>
<el-col :span="4" class="tleftb">
<span v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'"><span class="icon">*</span>付款账号后4位</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="formobj.payAccount" v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'" :disabled="forbidden" maxlength="4" placeholder="" clearable/>
</el-form-item>
<el-form-item label="联系电话:">
<el-input v-model="listQuery.customerPhone" size="mini" placeholder="" style="width: 140px" clearable/>
</el-col>
<el-col :span="4" class="tleftb">
<span v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'">付款银行</span>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="formobj.payBank" v-show="formobj.collectionTypeKey === '03' || formobj.collectionTypeKey === '05'" :disabled="forbidden" placeholder="" clearable/>
</el-form-item>
<el-form-item label="车架号:">
<el-input v-model="listQuery.vinNo" size="mini" placeholder="" style="width: 140px" clearable/>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span>备注</span>
</el-col>
<el-col :span="12" class="trightb">
<el-form-item>
<el-input v-model="formobj.remarks" :disabled="forbidden" style="width: 70%" placeholder="" clearable/>
</el-form-item>
</el-form>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<div style="padding-left: 20%">
<el-button type="primary" size="mini" @click="handleFilter">查询</el-button>
<el-button type="primary" size="mini" @click="handReset">重置</el-button>
</el-col>
<el-col :span="4" class="tleftb">
<span><span class="icon">*</span>采购系统</span>
</el-col>
<el-col :span="4">
<el-form-item prop="purchaseSystemName">
<el-select v-model="formobj.purchaseSystemName" placeholder="请选择" :disabled="forbidden" @change="changePurchase" filterable clearable>
<el-option v-for="item in purchase_list" :key="item.deptSid" :label="item.purchaseSystemName" :value="item.purchaseSystemName"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span>打款凭证</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item>
<Upload v-show="forbidden !== true" style="float:left;" ref="remit" @handleSuccess="remitAdd" @handleRemove="remitRemove" />
<span v-show="forbidden == true" v-for="(item, index) in list1" :key="index">{{ item.name }}
</span>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<span>汇款确认书</span>
</el-col>
<el-col :span="8" class="trightb">
<el-form-item>
<Upload style="float:left;" ref="remittance" @handleSuccess="remittanceAdd" @handleRemove="remittanceRemove" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24" style="padding: 0px">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="合同编号:">
<el-input v-model="listQuery.contractNo" size="mini" placeholder="" style="width: 110px" clearable/>
</el-form-item>
<el-form-item label="客户名称:">
<el-input v-model="listQuery.customerName" size="mini" placeholder="" style="width: 100px" clearable/>
</el-form-item>
<el-form-item label="联系电话:">
<el-input v-model="listQuery.customerPhone" size="mini" placeholder="" style="width: 140px" clearable/>
</el-form-item>
<el-form-item label="车架号:">
<el-input v-model="listQuery.vinNo" size="mini" placeholder="" style="width: 140px" clearable/>
</el-form-item>
</el-form>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<div style="padding-left: 20%">
<el-button type="primary" size="mini" @click="handleFilter">查询</el-button>
<el-button type="primary" size="mini" @click="handReset">重置</el-button>
<el-button type="primary" size="mini" @click="handleSelect">选择已认款项</el-button>
</div>
<div>
<span >余额:</span><el-input v-model="balance" placeholder="" style="width: 120px" readonly/>
</div>
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<div>
<div class="tableTitle">应收未收款款项明细</div>
<el-table border :key="overduereceivableKey" width="100%" :data="overduereceivable_list">
<el-table-column fixed label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="handAdd(scope.row)">添加</el-button>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.contractNo }}
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.VIN }}
</template>
</el-table-column>
<el-table-column label="客户/电话" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.customerName }} {{ scope.row.customerPhone }}
</template>
</el-table-column>
<el-table-column label="付款" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.payType }}
</template>
</el-table-column>
<el-table-column label="应收金额" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.reveivableMoney }}
</template>
</el-table-column>
<el-table-column label="应收项目" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.receivablesName }}
</template>
</el-table-column>
<el-table-column label="当前应收" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.currentReceivableMoney }}
</template>
</el-table-column>
</el-table>
</div>
</el-col>
<el-col :span="14">
<div>
<span >余额:</span><el-input v-model="balance" placeholder="" style="width: 120px" readonly/>
<div class="tableTitle">已选应收款项明细</div>
<el-table border :key="selectedreceivableKey" width="100%" :data="formobj.finSelectedReceivablesDetaileds">
<el-table-column fixed label="操作" align="center" width="70">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="handDelete(scope.row)">移除</el-button>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="95">
<template slot-scope="scope">
{{ scope.row.contractNo }}
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.VIN }}
</template>
</el-table-column>
<el-table-column label="客户/电话" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.customerName }} {{ scope.row.customerPhone }}
</template>
</el-table-column>
<el-table-column label="付款" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.payType }}
</template>
</el-table-column>
<el-table-column label="应收项目" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.receivablesName }}
</template>
</el-table-column>
<el-table-column label="当前应收" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.currentReceivableMoney }}
</template>
</el-table-column>
<el-table-column label="认款金额" align="center" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.subscriptionMoney" @input="changeMoney(scope.row)" @keyup.native="UpNumber" @keydown.native="UpNumber" @change="changeSubscriptionMoney" placeholder="" clearable/>
</template>
</el-table-column>
<el-table-column label="剩余应收" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.surplusReceivable }}</span>
</template>
</el-table-column>
<el-table-column label="认款申请日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.subscriptionDate }}</span>
</template>
</el-table-column>
</el-table>
</div>
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<div>
<div class="tableTitle">应收未收款款项明细</div>
<el-table border :key="overduereceivableKey" width="100%" :data="overduereceivable_list">
<el-table-column fixed label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="handAdd(scope.row)">添加</el-button>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.contractNo }}
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.VIN }}
</template>
</el-table-column>
<el-table-column label="客户/电话" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.customerName }} {{ scope.row.customerPhone }}
</template>
</el-table-column>
<el-table-column label="付款" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.payType }}
</template>
</el-table-column>
<el-table-column label="应收金额" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.reveivableMoney }}
</template>
</el-table-column>
<el-table-column label="应收项目" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.receivablesName }}
</template>
</el-table-column>
<el-table-column label="当前应收" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.currentReceivableMoney }}
</template>
</el-table-column>
</el-table>
</div>
</el-col>
<el-col :span="14">
<div>
<div class="tableTitle">已选应收款项明细</div>
<el-table border :key="selectedreceivableKey" width="100%" :data="formobj.finSelectedReceivablesDetaileds">
<el-table-column fixed label="操作" align="center" width="70">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="handDelete(scope.row)">移除</el-button>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center" width="95">
<template slot-scope="scope">
{{ scope.row.contractNo }}
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.VIN }}
</template>
</el-table-column>
<el-table-column label="客户/电话" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.customerName }} {{ scope.row.customerPhone }}
</template>
</el-table-column>
<el-table-column label="付款" align="center" width="70">
<template slot-scope="scope">
{{ scope.row.payType }}
</template>
</el-table-column>
<el-table-column label="应收项目" align="center" width="90">
<template slot-scope="scope">
{{ scope.row.receivablesName }}
</template>
</el-table-column>
<el-table-column label="当前应收" align="center" width="100">
<template slot-scope="scope">
{{ scope.row.currentReceivableMoney }}
</template>
</el-table-column>
<el-table-column label="认款金额" align="center" width="130">
<template slot-scope="scope">
<el-input v-model="scope.row.subscriptionMoney" @input="changeMoney(scope.row)" @keyup.native="UpNumber" @keydown.native="UpNumber" @change="changeSubscriptionMoney" placeholder="" clearable/>
</template>
</el-table-column>
<el-table-column label="剩余应收" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.surplusReceivable }}</span>
</template>
</el-table-column>
<el-table-column label="认款申请日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.subscriptionDate }}</span>
</template>
</el-table-column>
</el-table>
</div>
</el-col>
</el-row>
</el-form>
</el-col>
</el-row>
</el-form>
</div>
</div>
<amountpledged v-show="viewState == 2" ref="divSelect" @doback="resetState" @backData="backData"/>
</div>
</template>
@ -305,15 +309,18 @@
import { save, listAll, fetchDetailBySid } from '@/api/anruifinmanagement/paymentConfirmation.js'
import Upload from '@/components/uploadFile/filesUpload' //
import { selAccountByOrgSid, typeValues, fetchDetailsByUseOrgSid, getOrgSidByPath } from '@/api/jichuxinxi/dictcommons'
import amountpledged from './relation/amountpledged'
export default {
name: 'acknowledgementReceiptAdd',
components: {
Upload
Upload,
amountpledged
},
data() {
return {
viewTitle: '',
viewState: 1,
dialogStatus: '',
overduereceivableKey: 0,
selectedreceivableKey: 1,
@ -365,7 +372,7 @@ export default {
createBySid: '',
vinNo: '',
orgPath: '',
purchaseSystemSid: '',
purchaseSystemSid: ''
},
rules: {
collectionMoney: [{ required: true, message: '收款金额不能为空', trigger: 'blur' }],
@ -554,6 +561,55 @@ export default {
}
this.getlist()
},
handleSelect() {
if (this.formobj.collectionMoney === '') {
this.$message({ showClose: true, type: 'error', message: '请先填写收款金额' })
return
}
if (this.formobj.purchaseSystemName === '') {
this.$message({ showClose: true, type: 'error', message: '请先选择采购系统' })
return
}
this.viewState = 2
this.$refs['divSelect'].showData(this.formobj.finSelectedReceivablesDetaileds, this.formobj.purchaseSystemSid)
},
backData(val) {
this.viewState = 1
var nowDate = new Date()
var date = {
year: nowDate.getFullYear(),
month: nowDate.getMonth() + 1,
day: nowDate.getDate()
}
var dayDate = date.year + '-' + (date.month >= 10 ? date.month : '0' + date.month) + '-' + (date.day >= 10 ? date.day : '0' + date.day)
for (var i = 0; i < val.length; i++) {
this.formobj.finSelectedReceivablesDetaileds.push({
createByName: window.sessionStorage.getItem('name'),
contractSid: val[i].contractSid,
contractNo: val[i].contractNo,
customerSid: val[i].customerSid,
customerName: val[i].customerName,
VIN: val[i].VIN,
useOrgSid: '',
customerPhone: val[i].customerPhone,
receivablesName: val[i].receivablesName,
currentReceivableMoney: val[i].currentReceivableMoney,
lastSubscriptionMoney: '',
subscriptionMoney: '',
surplusReceivable: '',
subscribedOf: val[i].subscribedOf,
subscriptionDate: dayDate,
collSid: '',
receivablesSid: val[i].sid,
payType: val[i].payType,
payTypeKey: val[i].payTypeKey,
sid: val[i].sid
})
}
},
resetState() {
this.viewState = 1
},
showAdd() {
this.DataDictionary()
this.newDate()
@ -672,6 +728,7 @@ export default {
lastSubscriptionMoney: '',
subscriptionMoney: '',
surplusReceivable: '',
subscribedOf: row.subscribedOf,
subscriptionDate: dayDate,
collSid: '',
receivablesSid: row.sid,
@ -684,10 +741,12 @@ export default {
}
},
handDelete(row) {
this.listQuery.sids.splice(this.listQuery.sids.indexOf(row.sid), 1)
this.formobj.finSelectedReceivablesDetaileds.splice(this.formobj.finSelectedReceivablesDetaileds.indexOf(row), 1)
this.calculateBalance()
this.getlist()
if (row.subscribedOf == 0) {
this.listQuery.sids.splice(this.listQuery.sids.indexOf(row.sid), 1)
this.getlist()
}
},
submit() {
if ((this.formobj.collectionTypeKey === '03' || this.formobj.collectionTypeKey === '05') && this.formobj.collectionBankNum === '') {

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/AppFinSelectedReceivablesPaymentDetailsVo.java

@ -49,4 +49,6 @@ public class AppFinSelectedReceivablesPaymentDetailsVo implements Vo {
@ApiModelProperty("分公司sid")
private String useOrgSid;
private int subscribedOf;
}

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationFeign.java

@ -168,7 +168,7 @@ public interface FinCollectionConfirmationFeign {
/**********************************************************************************************************/
@ApiOperation("简易订单可用订金列表 ")
@ApiOperation("简易订单可用订金列表")
@PostMapping("/jyddkydjListPage")
public ResultBean<PagerVo<FinCollectionConfirmationJYDDKYDJVo>> jyddkydjListPage(@RequestBody PagerQuery<FinCollectionConfirmationJYDDKYDJQuery> pq);
}

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/fincollectionconfirmation/FinCollectionConfirmationJYDDKYDJQuery.java

@ -72,7 +72,6 @@ public class FinCollectionConfirmationJYDDKYDJQuery implements Query {
private String createBySid;
@ApiModelProperty("当前组织机构分公司sid全路径")
private String orgPath;
@ApiModelProperty("移动端查询条件")
private String name;
}

88
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApply.java

@ -0,0 +1,88 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardapply;
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;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardApply.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApply <br/>
* Description: 款项结转申请表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转申请表", description = "款项结转申请表")
@TableName("fin_funds_carried_forward_apply")
public class FinFundsCarriedForwardApply extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("申请部门sid")
private String applyDeptSid; // 申请部门sid
@ApiModelProperty("申请部门名称")
private String applyDeptName; // 申请部门名称
@ApiModelProperty("销售部门sid")
private String saleDeptSid; // 销售部门sid
@ApiModelProperty("销售部门名称")
private String saleDeptName; // 销售部门名称
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
@ApiModelProperty("业务员姓名")
private String staffName; // 业务员姓名
@ApiModelProperty("来源")
private String source; // 来源
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("分公司名称")
private String useOrgName; // 分公司名称
@ApiModelProperty("组织全路径")
private String orgSidPath; // 组织全路径
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程实例的sid")
private String procInstSid; // 流程实例的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("任务id")
private String taskId; // 任务id
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
}

89
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyDetailsVo.java

@ -0,0 +1,89 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardapply;
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: FinFundsCarriedForwardApplyVo.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyVo <br/>
* Description: 款项结转申请表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转申请表 视图数据详情", description = "款项结转申请表 视图数据详情")
public class FinFundsCarriedForwardApplyDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("申请部门sid")
private String applyDeptSid; // 申请部门sid
@ApiModelProperty("申请部门名称")
private String applyDeptName; // 申请部门名称
@ApiModelProperty("销售部门sid")
private String saleDeptSid; // 销售部门sid
@ApiModelProperty("销售部门名称")
private String saleDeptName; // 销售部门名称
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
@ApiModelProperty("业务员姓名")
private String staffName; // 业务员姓名
@ApiModelProperty("来源")
private String source; // 来源
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("分公司名称")
private String useOrgName; // 分公司名称
@ApiModelProperty("组织全路径")
private String orgSidPath; // 组织全路径
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程实例的sid")
private String procInstSid; // 流程实例的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("任务id")
private String taskId; // 任务id
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
}

89
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyDto.java

@ -0,0 +1,89 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardapply;
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: FinFundsCarriedForwardApplyDto.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyDto <br/>
* Description: 款项结转申请表 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转申请表 数据传输对象", description = "款项结转申请表 数据传输对象")
public class FinFundsCarriedForwardApplyDto implements Dto {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("申请部门sid")
private String applyDeptSid; // 申请部门sid
@ApiModelProperty("申请部门名称")
private String applyDeptName; // 申请部门名称
@ApiModelProperty("销售部门sid")
private String saleDeptSid; // 销售部门sid
@ApiModelProperty("销售部门名称")
private String saleDeptName; // 销售部门名称
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
@ApiModelProperty("业务员姓名")
private String staffName; // 业务员姓名
@ApiModelProperty("来源")
private String source; // 来源
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("分公司名称")
private String useOrgName; // 分公司名称
@ApiModelProperty("组织全路径")
private String orgSidPath; // 组织全路径
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程实例的sid")
private String procInstSid; // 流程实例的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("任务id")
private String taskId; // 任务id
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
}

78
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyFeign.java

@ -0,0 +1,78 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardapply;
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 org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardApplyFeign.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyFeign <br/>
* Description: 款项结转申请表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "款项结转申请表")
@FeignClient(
contextId = "anrui-fin-FinFundsCarriedForwardApply",
name = "anrui-fin",
path = "v1/finfundscarriedforwardapply",
fallback = FinFundsCarriedForwardApplyFeignFallback.class)
public interface FinFundsCarriedForwardApplyFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<FinFundsCarriedForwardApplyVo>> listPage(@RequestBody PagerQuery<FinFundsCarriedForwardApplyQuery> pq);
@ApiOperation("新增或修改")
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody FinFundsCarriedForwardApplyDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody
public ResultBean<FinFundsCarriedForwardApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
}

72
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyFeignFallback.java

@ -0,0 +1,72 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardapply;
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;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardApplyFeignFallback.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyFeignFallback <br/>
* Description: 款项结转申请表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Component
public class FinFundsCarriedForwardApplyFeignFallback implements FinFundsCarriedForwardApplyFeign {
@Override
public ResultBean<PagerVo<FinFundsCarriedForwardApplyVo>> listPage(PagerQuery<FinFundsCarriedForwardApplyQuery> pq){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finfundscarriedforwardapply/listPage无法访问");
}
@Override
public ResultBean save(FinFundsCarriedForwardApplyDto dto){
return ResultBean.fireFail().setMsg("接口anrui-fin/finfundscarriedforwardapply/save无法访问");
}
@Override
public ResultBean delBySids( String[] sids){
return ResultBean.fireFail().setMsg("接口anrui-fin/finfundscarriedforwardapply/delBySids无法访问");
}
@Override
public ResultBean<FinFundsCarriedForwardApplyDetailsVo> fetchDetailsBySid(String sid){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finfundscarriedforwardapply/fetchDetailsBySid无法访问");
}
}

87
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyQuery.java

@ -0,0 +1,87 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardapply;
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: FinFundsCarriedForwardApplyQuery.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyQuery <br/>
* Description: 款项结转申请表 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转申请表 查询条件", description = "款项结转申请表 查询条件")
public class FinFundsCarriedForwardApplyQuery implements Query {
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("申请部门sid")
private String applyDeptSid; // 申请部门sid
@ApiModelProperty("申请部门名称")
private String applyDeptName; // 申请部门名称
@ApiModelProperty("销售部门sid")
private String saleDeptSid; // 销售部门sid
@ApiModelProperty("销售部门名称")
private String saleDeptName; // 销售部门名称
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
@ApiModelProperty("业务员姓名")
private String staffName; // 业务员姓名
@ApiModelProperty("来源")
private String source; // 来源
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("分公司名称")
private String useOrgName; // 分公司名称
@ApiModelProperty("组织全路径")
private String orgSidPath; // 组织全路径
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程实例的sid")
private String procInstSid; // 流程实例的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("任务id")
private String taskId; // 任务id
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
}

89
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardapply/FinFundsCarriedForwardApplyVo.java

@ -0,0 +1,89 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardapply;
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: FinFundsCarriedForwardApplyVo.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyVo <br/>
* Description: 款项结转申请表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转申请表 视图数据对象", description = "款项结转申请表 视图数据对象")
public class FinFundsCarriedForwardApplyVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("申请部门sid")
private String applyDeptSid; // 申请部门sid
@ApiModelProperty("申请部门名称")
private String applyDeptName; // 申请部门名称
@ApiModelProperty("销售部门sid")
private String saleDeptSid; // 销售部门sid
@ApiModelProperty("销售部门名称")
private String saleDeptName; // 销售部门名称
@ApiModelProperty("业务员sid")
private String staffSid; // 业务员sid
@ApiModelProperty("业务员姓名")
private String staffName; // 业务员姓名
@ApiModelProperty("来源")
private String source; // 来源
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("分公司名称")
private String useOrgName; // 分公司名称
@ApiModelProperty("组织全路径")
private String orgSidPath; // 组织全路径
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程实例的sid")
private String procInstSid; // 流程实例的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("任务id")
private String taskId; // 任务id
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
}

72
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVeh.java

@ -0,0 +1,72 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardveh;
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;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardVeh.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVeh <br/>
* Description: 款项结转车辆表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转车辆表", description = "款项结转车辆表")
@TableName("fin_funds_carried_forward_veh")
public class FinFundsCarriedForwardVeh extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("业务编号")
private String busBillNo; // 业务编号
@ApiModelProperty("主表sid")
private String mainSid; // 主表sid
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("剩余金额")
private String balance; // 剩余金额
@ApiModelProperty("本次使用金额")
private String thisUseMoney; // 本次使用金额
}

73
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehDetailsVo.java

@ -0,0 +1,73 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardveh;
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: FinFundsCarriedForwardVehVo.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehVo <br/>
* Description: 款项结转车辆表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转车辆表 视图数据详情", description = "款项结转车辆表 视图数据详情")
public class FinFundsCarriedForwardVehDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("业务编号")
private String busBillNo; // 业务编号
@ApiModelProperty("主表sid")
private String mainSid; // 主表sid
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("剩余金额")
private String balance; // 剩余金额
@ApiModelProperty("本次使用金额")
private String thisUseMoney; // 本次使用金额
}

73
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehDto.java

@ -0,0 +1,73 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardveh;
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: FinFundsCarriedForwardVehDto.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehDto <br/>
* Description: 款项结转车辆表 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转车辆表 数据传输对象", description = "款项结转车辆表 数据传输对象")
public class FinFundsCarriedForwardVehDto implements Dto {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("业务编号")
private String busBillNo; // 业务编号
@ApiModelProperty("主表sid")
private String mainSid; // 主表sid
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("剩余金额")
private String balance; // 剩余金额
@ApiModelProperty("本次使用金额")
private String thisUseMoney; // 本次使用金额
}

78
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehFeign.java

@ -0,0 +1,78 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardveh;
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 org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardVehFeign.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehFeign <br/>
* Description: 款项结转车辆表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "款项结转车辆表")
@FeignClient(
contextId = "anrui-fin-FinFundsCarriedForwardVeh",
name = "anrui-fin",
path = "v1/finfundscarriedforwardveh",
fallback = FinFundsCarriedForwardVehFeignFallback.class)
public interface FinFundsCarriedForwardVehFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<FinFundsCarriedForwardVehVo>> listPage(@RequestBody PagerQuery<FinFundsCarriedForwardVehQuery> pq);
@ApiOperation("新增或修改")
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody FinFundsCarriedForwardVehDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody
public ResultBean<FinFundsCarriedForwardVehDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
}

72
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehFeignFallback.java

@ -0,0 +1,72 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardveh;
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;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardVehFeignFallback.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehFeignFallback <br/>
* Description: 款项结转车辆表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Component
public class FinFundsCarriedForwardVehFeignFallback implements FinFundsCarriedForwardVehFeign {
@Override
public ResultBean<PagerVo<FinFundsCarriedForwardVehVo>> listPage(PagerQuery<FinFundsCarriedForwardVehQuery> pq){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finfundscarriedforwardveh/listPage无法访问");
}
@Override
public ResultBean save(FinFundsCarriedForwardVehDto dto){
return ResultBean.fireFail().setMsg("接口anrui-fin/finfundscarriedforwardveh/save无法访问");
}
@Override
public ResultBean delBySids( String[] sids){
return ResultBean.fireFail().setMsg("接口anrui-fin/finfundscarriedforwardveh/delBySids无法访问");
}
@Override
public ResultBean<FinFundsCarriedForwardVehDetailsVo> fetchDetailsBySid(String sid){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-fin/finfundscarriedforwardveh/fetchDetailsBySid无法访问");
}
}

71
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehQuery.java

@ -0,0 +1,71 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardveh;
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: FinFundsCarriedForwardVehQuery.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehQuery <br/>
* Description: 款项结转车辆表 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转车辆表 查询条件", description = "款项结转车辆表 查询条件")
public class FinFundsCarriedForwardVehQuery implements Query {
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("业务编号")
private String busBillNo; // 业务编号
@ApiModelProperty("主表sid")
private String mainSid; // 主表sid
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("剩余金额")
private String balance; // 剩余金额
@ApiModelProperty("本次使用金额")
private String thisUseMoney; // 本次使用金额
}

73
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finfundscarriedforwardveh/FinFundsCarriedForwardVehVo.java

@ -0,0 +1,73 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.api.finfundscarriedforwardveh;
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: FinFundsCarriedForwardVehVo.java <br/>
* Class: com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehVo <br/>
* Description: 款项结转车辆表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "款项结转车辆表 视图数据对象", description = "款项结转车辆表 视图数据对象")
public class FinFundsCarriedForwardVehVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("业务编号")
private String busBillNo; // 业务编号
@ApiModelProperty("主表sid")
private String mainSid; // 主表sid
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("剩余金额")
private String balance; // 剩余金额
@ApiModelProperty("本次使用金额")
private String thisUseMoney; // 本次使用金额
}

4
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectReceivablesDetailedVo.java

@ -50,7 +50,9 @@ public class FinSelectReceivablesDetailedVo implements Vo {
private int subscribedOf;
private String subscriptionMoney;
@ApiModelProperty("分公司sid")
private String useOrgSid;
@ApiModelProperty("认款申请日期")
private String subscriptionDate;
}

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedVo.java

@ -116,4 +116,6 @@ public class FinSelectedReceivablesDetailedVo implements Vo {
private String payTypeKey;
@ApiModelProperty("全款贷款")
private String payType;
private int subscribedOf;
}

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesPaymentDetailsQuery.java

@ -4,6 +4,8 @@ import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @description: 已认款查询
* @author: dimengzhe
@ -31,4 +33,7 @@ public class FinSelectedReceivablesPaymentDetailsQuery implements Query {
private String name;
@ApiModelProperty("应收款项sid")
private List<String> sids;
}

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/DetailsOfReceivablesAndUncollectedItemsVo.java

@ -69,7 +69,7 @@ public class DetailsOfReceivablesAndUncollectedItemsVo implements Vo {
@ApiModelProperty("当前应收金额")
private String currentReceivableMoney; // 当前应收金额
@ApiModelProperty("应收金额")
@ApiModelProperty("剩余应收金额")
private String reveivableMoney;
@ApiModelProperty("业务车辆sid")
private String busVinSid;

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

@ -57,7 +57,6 @@ import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeig
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.crm.api.crmcustomertemp.CustomerQuery;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.*;
import com.yxt.anrui.fin.api.fincollectionconfirmation.app.AppBusArrearsCarryMoneyVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.app.FinConfirmDto;
@ -101,7 +100,6 @@ import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* Project: anrui-fin(销售相关) <br/>
@ -493,11 +491,14 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
//认款日期默认为当天的日期
finSelectedReceivablesDetailed.setSubscriptionDate(DateUtil.today());
finSelectedReceivablesDetailedService.insert(finSelectedReceivablesDetailed);
//应收未收减去相应的认款
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().subtract(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
if(v.getSubscribedOf() == 0){
//应收未收减去相应的认款
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().subtract(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
}
});
}
finCollectionConfirmation.setBalance(finCollectionConfirmation.getCollectionMoney());
@ -534,31 +535,14 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
finSelectedReceivablesDetailed.setCreateBySid(dto.getUserSid());
finSelectedReceivablesDetailed.setSubscriptionDate(DateUtil.today());
finSelectedReceivablesDetailedService.insert(finSelectedReceivablesDetailed);
//添加已选车架号为临时状态
/* BaseVehicleTempstateDto baseVehicleTempstateDto = new BaseVehicleTempstateDto();
baseVehicleTempstateDto.setTempStateKey(VehicleStateTempOrLast.PaymentEnum.FIN_PAYMENT.getCode());
baseVehicleTempstateDto.setTempStateValue(VehicleStateTempOrLast.PaymentEnum.FIN_PAYMENT.getRemarks());
if ("车款".equals(v.getReceivablesName())) {
baseVehicleTempstateDto.setTempKey("001");
baseVehicleTempstateDto.setTempValue("车款");
}
if ("订金".equals(v.getReceivablesName())) {
baseVehicleTempstateDto.setTempKey("002");
baseVehicleTempstateDto.setTempValue("订金");
if(v.getSubscribedOf() == 0){
//应收未收减去相应的认款
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().subtract(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
}
baseVehicleTempstateDto.setBusSid(finalSid);
//根据合同编号和车架号查询该合同的车辆sid
ResultBean<String> resultBean = busSalesOrderFeign.getVinSidByConSid(v.getContractNo(), v.getVIN());
if (resultBean.getSuccess()) {
baseVehicleTempstateDto.setVehSid(resultBean.getData());
}
ResultBean vehicleStateResult = baseVehicleTempstateFeign.save(baseVehicleTempstateDto);*/
//应收未收减去相应的认款
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().subtract(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
});
}
finCollectionConfirmation.setAuditState(1);
@ -1019,11 +1003,14 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
finSelectedReceivablesDetailed.setCreateByName(finCollectionConfirmation.getCreateByName());
finSelectedReceivablesDetailed.setUseOrgSid(paymentDetail.getUseOrgSid());
finSelectedReceivablesDetailed.setCustomerSid(paymentDetail.getCustomerSid());
finSelectedReceivablesDetailed.setSubscribedOf(paymentDetail.getSubscribedOf());
finSelectedReceivablesDetailedService.save(finSelectedReceivablesDetailed);
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().subtract(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
if(paymentDetail.getSubscribedOf() == 0){
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().subtract(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
}
}
return rb.success();
}
@ -1130,8 +1117,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
}
}
if (StringUtils.isNotBlank(pagerQuery.getParams().getName())) {
List<AppFinUncollectedReceivablesDetailedVo> cll = collList.stream().filter(v -> v.getVin().contains(pagerQuery.getParams().getName())).collect(Collectors.toList());
collList = Stream.of(collList, cll).flatMap(Collection::stream).collect(Collectors.toList());
collList = collList.stream().filter(v -> v.getVin().contains(pagerQuery.getParams().getName())).collect(Collectors.toList());
// List<AppFinUncollectedReceivablesDetailedVo> cll = collList.stream().filter(v -> v.getVin().contains(pagerQuery.getParams().getName())).collect(Collectors.toList());
// collList = Stream.of(collList, cll).flatMap(Collection::stream).collect(Collectors.toList());
}
}
//将collList根据sid去重
@ -1139,13 +1127,22 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
-> new TreeSet<>(Comparator.comparing(AppFinUncollectedReceivablesDetailedVo::getSid))), ArrayList::new));
//根据合同编号倒序排序
collList = collList.stream().sorted(Comparator.comparing(AppFinUncollectedReceivablesDetailedVo::getContractId).reversed()).collect(Collectors.toList());
//分页
/*//分页
IPage<AppFinUncollectedReceivablesDetailedVo> page1 = new Page<>();
page1.setRecords(collList);
page1.setTotal(collList.size());
page1.setPages((collList.size() / pagerQuery.getSize()) + 1);
page1.setCurrent(pagerQuery.getCurrent());
page1.setSize(pagerQuery.getSize());
return page1;*/
//分页
IPage<AppFinUncollectedReceivablesDetailedVo> page1 = new Page<>();
page1.setTotal(collList.size());
page1.setPages(collList.size()/pagerQuery.getSize()+(collList.size()%pagerQuery.getSize()==0?0:1));
collList = collList.stream().skip((pagerQuery.getCurrent() - 1) *pagerQuery.getSize()).limit(pagerQuery.getSize()).collect(Collectors.toList()); //开始分页
page1.setRecords(collList);
page1.setCurrent(pagerQuery.getCurrent());
page1.setSize(pagerQuery.getSize());
return page1;
}
@ -1184,11 +1181,14 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
finSelectedReceivablesDetailed.setAuditDate(DateUtil.today());
finSelectedReceivablesDetailed.setAuditState(2);
finSelectedReceivablesDetailedService.updateById(finSelectedReceivablesDetailed);
//应收未收将款项加回来
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().add(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
if(v.getSubscribedOf() == 0){
//应收未收将款项加回来
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().add(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
}
});
confirmation.setAuditState(2);
//更新驳回原因
@ -1428,116 +1428,119 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
finSelectedReceivablesDetailedService.updateById(finSelectedReceivablesDetailed);
//ToDo:查询是否符合待出库的条件
//该合同编号下的该车架号的所有认款金额
List<FinSelectedReceivablesDetailedVo> voList = finSelectedReceivablesDetailedService.selectListByVin(v.getContractNo(), finUncollectedReceivablesDetailed.getBusVinSid(), 3);
BigDecimal bigDecimalVinAll = voList.stream().map(FinSelectedReceivablesDetailedVo::getSubscriptionMoney).map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add);
//查询该合同编号下的销售订单的单车成交价
ResultBean<CommonContract> commonContractResultBean = commonContractFeign.selectByNo(v.getContractNo());
if (commonContractResultBean.getSuccess()) {
CommonContract commonContract = commonContractResultBean.getData();
if (commonContract != null) {
ResultBean<AppOrderDetailsVo> orderDetails = busSalesOrderFeign.getSaleOrderDetails(commonContract.getBusSid());
AppOrderDetailsVo vo = orderDetails.getData();
if (vo != null) {
AppOrderPriceInfoVo priceInfoVo = vo.getPriceInfo();
AppOrderDepositInfoVo depositInfo = vo.getDepositInfo();
if (depositInfo != null) {
if ("02".equals(depositInfo.getDepositTypeKey())) {//订金结转
BigDecimal decimalDeposit = BigDecimal.ZERO;
if (StringUtils.isNotBlank(depositInfo.getDepositTotal())) {
decimalDeposit = new BigDecimal(depositInfo.getDepositTotal());
}
if (StringUtils.isNotBlank(depositInfo.getMakeUpDeposit())) {
decimalDeposit = decimalDeposit.subtract(new BigDecimal(depositInfo.getMakeUpDeposit()));
if(v.getSubscribedOf() == 0){
List<FinSelectedReceivablesDetailedVo> voList = finSelectedReceivablesDetailedService.selectListByVin(v.getContractNo(), finUncollectedReceivablesDetailed.getBusVinSid(), 3);
BigDecimal bigDecimalVinAll = voList.stream().map(FinSelectedReceivablesDetailedVo::getSubscriptionMoney).map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add);
//查询该合同编号下的销售订单的单车成交价
ResultBean<CommonContract> commonContractResultBean = commonContractFeign.selectByNo(v.getContractNo());
if (commonContractResultBean.getSuccess()) {
CommonContract commonContract = commonContractResultBean.getData();
if (commonContract != null) {
ResultBean<AppOrderDetailsVo> orderDetails = busSalesOrderFeign.getSaleOrderDetails(commonContract.getBusSid());
AppOrderDetailsVo vo = orderDetails.getData();
if (vo != null) {
AppOrderPriceInfoVo priceInfoVo = vo.getPriceInfo();
AppOrderDepositInfoVo depositInfo = vo.getDepositInfo();
if (depositInfo != null) {
if ("02".equals(depositInfo.getDepositTypeKey())) {//订金结转
BigDecimal decimalDeposit = BigDecimal.ZERO;
if (StringUtils.isNotBlank(depositInfo.getDepositTotal())) {
decimalDeposit = new BigDecimal(depositInfo.getDepositTotal());
}
if (StringUtils.isNotBlank(depositInfo.getMakeUpDeposit())) {
decimalDeposit = decimalDeposit.subtract(new BigDecimal(depositInfo.getMakeUpDeposit()));
}
decimalDeposit = decimalDeposit.divide(new BigDecimal(priceInfoVo.getNumber()), BigDecimal.ROUND_CEILING);
bigDecimalVinAll = bigDecimalVinAll.add(decimalDeposit);
}
decimalDeposit = decimalDeposit.divide(new BigDecimal(priceInfoVo.getNumber()), BigDecimal.ROUND_CEILING);
bigDecimalVinAll = bigDecimalVinAll.add(decimalDeposit);
}
}
//单台整体成交价
BigDecimal singleFinalPrice = new BigDecimal(priceInfoVo.getSingleFinalPrice());
BigDecimal leftAll = BigDecimal.ZERO;
BigDecimal rightAll = BigDecimal.ZERO;
if ("2".equals(vo.getFinancePlan()) || "2".equals(vo.getPayTypeKey())) {
//根据销售订单sid查询金融方案
ResultBean<SolutionsDetailsVo> solutionsDetailsVoResultBean = loanSolutionsFeign.selectDetailss(commonContract.getBusSid());
SolutionsDetailsVo solutionsDetailsVo = solutionsDetailsVoResultBean.getData();
if (solutionsDetailsVo != null) {
if (StringUtils.isNotBlank(solutionsDetailsVo.getTypeKey())) {
if ("02".equals(solutionsDetailsVo.getTypeKey())) {
//外部金融:成交价 = 订金+车款+厂家贴息-服务费
leftAll = leftAll.add(singleFinalPrice);
if (StringUtils.isNotBlank(solutionsDetailsVo.getFactoryDiscount())) {
leftAll = leftAll.subtract(new BigDecimal(solutionsDetailsVo.getFactoryDiscount()));
//单台整体成交价
BigDecimal singleFinalPrice = new BigDecimal(priceInfoVo.getSingleFinalPrice());
BigDecimal leftAll = BigDecimal.ZERO;
BigDecimal rightAll = BigDecimal.ZERO;
if ("2".equals(vo.getFinancePlan()) || "2".equals(vo.getPayTypeKey())) {
//根据销售订单sid查询金融方案
ResultBean<SolutionsDetailsVo> solutionsDetailsVoResultBean = loanSolutionsFeign.selectDetailss(commonContract.getBusSid());
SolutionsDetailsVo solutionsDetailsVo = solutionsDetailsVoResultBean.getData();
if (solutionsDetailsVo != null) {
if (StringUtils.isNotBlank(solutionsDetailsVo.getTypeKey())) {
if ("02".equals(solutionsDetailsVo.getTypeKey())) {
//外部金融:成交价 = 订金+车款+厂家贴息-服务费
leftAll = leftAll.add(singleFinalPrice);
if (StringUtils.isNotBlank(solutionsDetailsVo.getFactoryDiscount())) {
leftAll = leftAll.subtract(new BigDecimal(solutionsDetailsVo.getFactoryDiscount()));
}
if (StringUtils.isNotBlank(solutionsDetailsVo.getServiceAmount())) {
leftAll = leftAll.add(new BigDecimal(solutionsDetailsVo.getServiceAmount()));
}
rightAll = rightAll.add(bigDecimalVinAll);
} else {
//自营非担保: 实收订金 = 首付款及费用+订金
if (StringUtils.isNotBlank(solutionsDetailsVo.getRealTotal())) {
leftAll = leftAll.add(new BigDecimal(solutionsDetailsVo.getRealTotal()));
}
rightAll = rightAll.add(bigDecimalVinAll);
}
if (StringUtils.isNotBlank(solutionsDetailsVo.getServiceAmount())) {
leftAll = leftAll.add(new BigDecimal(solutionsDetailsVo.getServiceAmount()));
}
rightAll = rightAll.add(bigDecimalVinAll);
} else {
//自营非担保: 实收订金 = 首付款及费用+订金
} else {//担保贷款: 实收订金 = 首付款及费用+订金
if (StringUtils.isNotBlank(solutionsDetailsVo.getRealTotal())) {
leftAll = leftAll.add(new BigDecimal(solutionsDetailsVo.getRealTotal()));
}
rightAll = rightAll.add(bigDecimalVinAll);
}
} else {//担保贷款: 实收订金 = 首付款及费用+订金
if (StringUtils.isNotBlank(solutionsDetailsVo.getRealTotal())) {
leftAll = leftAll.add(new BigDecimal(solutionsDetailsVo.getRealTotal()));
}
} else {
// 成交价 = 车款+订金
leftAll = leftAll.add(singleFinalPrice);
rightAll = rightAll.add(bigDecimalVinAll);
}
} else {
// 成交价 = 车款+订金
// 成交价 = 车款+订金
leftAll = leftAll.add(singleFinalPrice);
rightAll = rightAll.add(bigDecimalVinAll);
}
} else {
// 成交价 = 车款+订金
leftAll = leftAll.add(singleFinalPrice);
rightAll = rightAll.add(bigDecimalVinAll);
}
//根据busVinSid查询待出库中是否存在该数据
ResultBean<BusDelivered> busDeliveredResultBean = busDeliveredFeign.selectByBusVinSid(finUncollectedReceivablesDetailed.getBusVinSid());
if (busDeliveredResultBean.getData() == null) {
if (leftAll.compareTo(rightAll) <= 0) {//推送待出库
BusDeliveredDto busDeliveredDto = new BusDeliveredDto();
busDeliveredDto.setSubscriptionKey(VehicleStateTempOrLast.PaymentEnum.PAY_MODELS.getCode());
busDeliveredDto.setSubscription(VehicleStateTempOrLast.PaymentEnum.PAY_MODELS.getRemarks());
busDeliveredDto.setPaymentMethodKey(vo.getPayTypeKey());
busDeliveredDto.setPaymentMethod(vo.getPayType());
busDeliveredDto.setContractNo(v.getContractNo());
busDeliveredDto.setName(v.getCustomerName());
busDeliveredDto.setVinNo(v.getVIN());
busDeliveredDto.setMobile(v.getCustomerPhone());
busDeliveredDto.setPrice(priceInfoVo.getSingleFinalPrice());
busDeliveredDto.setCreateBySid(confirmation.getStaffUserSid());
SubmitVo intermediary1 = vo.getIntermediary1();
if (intermediary1 != null) {
busDeliveredDto.setDistributorName(intermediary1.getIntermediaryName());
busDeliveredDto.setDistributorPrice(intermediary1.getAgencyFee());
}
SubmitVo intermediary2 = vo.getIntermediary2();
if (intermediary2 != null) {
busDeliveredDto.setDistributorNameTwo(intermediary2.getIntermediaryName());
busDeliveredDto.setDistributorPriceTwo(intermediary2.getAgencyFee());
}
busDeliveredDto.setSingleCarDiscountPrice(priceInfoVo.getSingleCarDiscountPrice());
//根据客户sid查询客户的身份证号
AppOrderModelInfoVo appOrderModelInfoVo = vo.getModelInfo();
busDeliveredDto.setModelName(appOrderModelInfoVo.getModelName());
busDeliveredDto.setUseOrgSid(confirmation.getUseOrgSid());
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(confirmation.getUseOrgSid());
if (sysOrganizationVoResultBean.getData() != null) {
busDeliveredDto.setUseOrgName(sysOrganizationVoResultBean.getData().getName());
//根据busVinSid查询待出库中是否存在该数据
ResultBean<BusDelivered> busDeliveredResultBean = busDeliveredFeign.selectByBusVinSid(finUncollectedReceivablesDetailed.getBusVinSid());
if (busDeliveredResultBean.getData() == null) {
if (leftAll.compareTo(rightAll) <= 0) {//推送待出库
BusDeliveredDto busDeliveredDto = new BusDeliveredDto();
busDeliveredDto.setSubscriptionKey(VehicleStateTempOrLast.PaymentEnum.PAY_MODELS.getCode());
busDeliveredDto.setSubscription(VehicleStateTempOrLast.PaymentEnum.PAY_MODELS.getRemarks());
busDeliveredDto.setPaymentMethodKey(vo.getPayTypeKey());
busDeliveredDto.setPaymentMethod(vo.getPayType());
busDeliveredDto.setContractNo(v.getContractNo());
busDeliveredDto.setName(v.getCustomerName());
busDeliveredDto.setVinNo(v.getVIN());
busDeliveredDto.setMobile(v.getCustomerPhone());
busDeliveredDto.setPrice(priceInfoVo.getSingleFinalPrice());
busDeliveredDto.setCreateBySid(confirmation.getStaffUserSid());
SubmitVo intermediary1 = vo.getIntermediary1();
if (intermediary1 != null) {
busDeliveredDto.setDistributorName(intermediary1.getIntermediaryName());
busDeliveredDto.setDistributorPrice(intermediary1.getAgencyFee());
}
SubmitVo intermediary2 = vo.getIntermediary2();
if (intermediary2 != null) {
busDeliveredDto.setDistributorNameTwo(intermediary2.getIntermediaryName());
busDeliveredDto.setDistributorPriceTwo(intermediary2.getAgencyFee());
}
busDeliveredDto.setSingleCarDiscountPrice(priceInfoVo.getSingleCarDiscountPrice());
//根据客户sid查询客户的身份证号
AppOrderModelInfoVo appOrderModelInfoVo = vo.getModelInfo();
busDeliveredDto.setModelName(appOrderModelInfoVo.getModelName());
busDeliveredDto.setUseOrgSid(confirmation.getUseOrgSid());
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(confirmation.getUseOrgSid());
if (sysOrganizationVoResultBean.getData() != null) {
busDeliveredDto.setUseOrgName(sysOrganizationVoResultBean.getData().getName());
}
busDeliveredDto.setBusVinSid(finUncollectedReceivablesDetailed.getBusVinSid());
ResultBean resultBean1 = busDeliveredFeign.save(busDeliveredDto);
}
busDeliveredDto.setBusVinSid(finUncollectedReceivablesDetailed.getBusVinSid());
ResultBean resultBean1 = busDeliveredFeign.save(busDeliveredDto);
}
}
}
}
}
}
});
//查询该申请已认款金额总数
subscriptionMoneyAll = finSelectedReceivablesDetailedVos.stream().map(FinSelectedReceivablesDetailedVo::getSubscriptionMoney).map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add);
@ -2257,10 +2260,12 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
finSelectedReceivablesDetailed.setAuditState(4);
finSelectedReceivablesDetailedService.updateById(finSelectedReceivablesDetailed);
//应收未收将款项加回来
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().add(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
if(v.getSubscribedOf() == 0){
FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid());
BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().add(finSelectedReceivablesDetailed.getSubscriptionMoney());
finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney);
finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed);
}
});
confirmation.setAuditState(4);
confirmation.setReason("申请人已撤回");

65
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyMapper.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finfundscarriedforwardapply;
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.finfundscarriedforwardapply.FinFundsCarriedForwardApply;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyVo;
import java.util.List;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardApplyMapper.java <br/>
* Class: com.yxt.anrui.fin.biz.finfundscarriedforwardapply.FinFundsCarriedForwardApplyMapper <br/>
* Description: 款项结转申请表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface FinFundsCarriedForwardApplyMapper extends BaseMapper<FinFundsCarriedForwardApply> {
//@Update("update fin_funds_carried_forward_apply set name=#{msg} where id=#{id}")
//IPage<FinFundsCarriedForwardApplyVo> voPage(IPage<FinFundsCarriedForwardApply> page, @Param(Constants.WRAPPER) QueryWrapper<FinFundsCarriedForwardApply> qw);
IPage<FinFundsCarriedForwardApplyVo> selectPageVo(IPage<FinFundsCarriedForwardApply> page, @Param(Constants.WRAPPER) Wrapper<FinFundsCarriedForwardApply> qw);
List<FinFundsCarriedForwardApplyVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<FinFundsCarriedForwardApply> qw);
@Select("select * from fin_funds_carried_forward_apply")
List<FinFundsCarriedForwardApplyVo> selectListVo();
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyMapper.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.finfundscarriedforwardapply.FinFundsCarriedForwardApplyMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyVo">
SELECT * FROM fin_funds_carried_forward_apply <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyVo">
SELECT * FROM fin_funds_carried_forward_apply <where> ${ew.sqlSegment} </where>
</select>
</mapper>

100
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyRest.java

@ -0,0 +1,100 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finfundscarriedforwardapply;
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 com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApply;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyQuery;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyDetailsVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyDto;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyFeign;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardApplyFeignFallback.java <br/>
* Class: com.yxt.anrui.fin.biz.finfundscarriedforwardapply.FinFundsCarriedForwardApplyRest <br/>
* Description: 款项结转申请表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "款项结转申请表")
@RestController("com.yxt.anrui.fin.biz.finfundscarriedforwardapply.FinFundsCarriedForwardApplyRest")
@RequestMapping("v1/finfundscarriedforwardapply")
public class FinFundsCarriedForwardApplyRest implements FinFundsCarriedForwardApplyFeign {
@Autowired
private FinFundsCarriedForwardApplyService finFundsCarriedForwardApplyService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<FinFundsCarriedForwardApplyVo>> listPage(@RequestBody PagerQuery<FinFundsCarriedForwardApplyQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<FinFundsCarriedForwardApplyVo> pv = finFundsCarriedForwardApplyService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody FinFundsCarriedForwardApplyDto dto){
ResultBean rb = ResultBean.fireFail();
finFundsCarriedForwardApplyService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
@ApiOperation("根据sid批量删除")
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
finFundsCarriedForwardApplyService.delBySids(sids);
return rb.success();
}
@Override
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<FinFundsCarriedForwardApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
FinFundsCarriedForwardApplyDetailsVo vo = finFundsCarriedForwardApplyService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

110
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardapply/FinFundsCarriedForwardApplyService.java

@ -0,0 +1,110 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finfundscarriedforwardapply;
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.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApply;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyQuery;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyDetailsVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyDto;
import com.yxt.anrui.fin.api.finfundscarriedforwardapply.FinFundsCarriedForwardApplyFeign;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardApplyService.java <br/>
* Class: com.yxt.anrui.fin.biz.finfundscarriedforwardapply.FinFundsCarriedForwardApplyService <br/>
* Description: 款项结转申请表 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class FinFundsCarriedForwardApplyService extends MybatisBaseService<FinFundsCarriedForwardApplyMapper, FinFundsCarriedForwardApply> {
private QueryWrapper<FinFundsCarriedForwardApply> createQueryWrapper(FinFundsCarriedForwardApplyQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<FinFundsCarriedForwardApply> qw = new QueryWrapper<>();
return qw;
}
public PagerVo<FinFundsCarriedForwardApplyVo> listPageVo(PagerQuery<FinFundsCarriedForwardApplyQuery> pq) {
FinFundsCarriedForwardApplyQuery query = pq.getParams();
QueryWrapper<FinFundsCarriedForwardApply> qw = createQueryWrapper(query);
IPage<FinFundsCarriedForwardApply> page = PagerUtil.queryToPage(pq);
IPage<FinFundsCarriedForwardApplyVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<FinFundsCarriedForwardApplyVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(FinFundsCarriedForwardApplyDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
this.insertByDto(dto);
return;
}
this.updateByDto(dto);
}
public void insertByDto(FinFundsCarriedForwardApplyDto dto){
FinFundsCarriedForwardApply entity = new FinFundsCarriedForwardApply();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void updateByDto(FinFundsCarriedForwardApplyDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
FinFundsCarriedForwardApply entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public FinFundsCarriedForwardApplyDetailsVo fetchDetailsVoBySid(String sid){
FinFundsCarriedForwardApply entity = fetchBySid(sid);
FinFundsCarriedForwardApplyDetailsVo vo = new FinFundsCarriedForwardApplyDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
}

65
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardveh/FinFundsCarriedForwardVehMapper.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finfundscarriedforwardveh;
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.finfundscarriedforwardveh.FinFundsCarriedForwardVeh;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehVo;
import java.util.List;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardVehMapper.java <br/>
* Class: com.yxt.anrui.fin.biz.finfundscarriedforwardveh.FinFundsCarriedForwardVehMapper <br/>
* Description: 款项结转车辆表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface FinFundsCarriedForwardVehMapper extends BaseMapper<FinFundsCarriedForwardVeh> {
//@Update("update fin_funds_carried_forward_veh set name=#{msg} where id=#{id}")
//IPage<FinFundsCarriedForwardVehVo> voPage(IPage<FinFundsCarriedForwardVeh> page, @Param(Constants.WRAPPER) QueryWrapper<FinFundsCarriedForwardVeh> qw);
IPage<FinFundsCarriedForwardVehVo> selectPageVo(IPage<FinFundsCarriedForwardVeh> page, @Param(Constants.WRAPPER) Wrapper<FinFundsCarriedForwardVeh> qw);
List<FinFundsCarriedForwardVehVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<FinFundsCarriedForwardVeh> qw);
@Select("select * from fin_funds_carried_forward_veh")
List<FinFundsCarriedForwardVehVo> selectListVo();
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardveh/FinFundsCarriedForwardVehMapper.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.finfundscarriedforwardveh.FinFundsCarriedForwardVehMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehVo">
SELECT * FROM fin_funds_carried_forward_veh <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehVo">
SELECT * FROM fin_funds_carried_forward_veh <where> ${ew.sqlSegment} </where>
</select>
</mapper>

100
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardveh/FinFundsCarriedForwardVehRest.java

@ -0,0 +1,100 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finfundscarriedforwardveh;
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 com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVeh;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehQuery;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehDetailsVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehDto;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehFeign;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardVehFeignFallback.java <br/>
* Class: com.yxt.anrui.fin.biz.finfundscarriedforwardveh.FinFundsCarriedForwardVehRest <br/>
* Description: 款项结转车辆表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "款项结转车辆表")
@RestController("com.yxt.anrui.fin.biz.finfundscarriedforwardveh.FinFundsCarriedForwardVehRest")
@RequestMapping("v1/finfundscarriedforwardveh")
public class FinFundsCarriedForwardVehRest implements FinFundsCarriedForwardVehFeign {
@Autowired
private FinFundsCarriedForwardVehService finFundsCarriedForwardVehService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<FinFundsCarriedForwardVehVo>> listPage(@RequestBody PagerQuery<FinFundsCarriedForwardVehQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<FinFundsCarriedForwardVehVo> pv = finFundsCarriedForwardVehService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody FinFundsCarriedForwardVehDto dto){
ResultBean rb = ResultBean.fireFail();
finFundsCarriedForwardVehService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
@ApiOperation("根据sid批量删除")
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
finFundsCarriedForwardVehService.delBySids(sids);
return rb.success();
}
@Override
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<FinFundsCarriedForwardVehDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
FinFundsCarriedForwardVehDetailsVo vo = finFundsCarriedForwardVehService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

110
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finfundscarriedforwardveh/FinFundsCarriedForwardVehService.java

@ -0,0 +1,110 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.fin.biz.finfundscarriedforwardveh;
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.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVeh;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehQuery;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehDetailsVo;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehDto;
import com.yxt.anrui.fin.api.finfundscarriedforwardveh.FinFundsCarriedForwardVehFeign;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Project: anrui-fin(款项结转申请) <br/>
* File: FinFundsCarriedForwardVehService.java <br/>
* Class: com.yxt.anrui.fin.biz.finfundscarriedforwardveh.FinFundsCarriedForwardVehService <br/>
* Description: 款项结转车辆表 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2023-07-04 08:59:22 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class FinFundsCarriedForwardVehService extends MybatisBaseService<FinFundsCarriedForwardVehMapper, FinFundsCarriedForwardVeh> {
private QueryWrapper<FinFundsCarriedForwardVeh> createQueryWrapper(FinFundsCarriedForwardVehQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<FinFundsCarriedForwardVeh> qw = new QueryWrapper<>();
return qw;
}
public PagerVo<FinFundsCarriedForwardVehVo> listPageVo(PagerQuery<FinFundsCarriedForwardVehQuery> pq) {
FinFundsCarriedForwardVehQuery query = pq.getParams();
QueryWrapper<FinFundsCarriedForwardVeh> qw = createQueryWrapper(query);
IPage<FinFundsCarriedForwardVeh> page = PagerUtil.queryToPage(pq);
IPage<FinFundsCarriedForwardVehVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<FinFundsCarriedForwardVehVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(FinFundsCarriedForwardVehDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
this.insertByDto(dto);
return;
}
this.updateByDto(dto);
}
public void insertByDto(FinFundsCarriedForwardVehDto dto){
FinFundsCarriedForwardVeh entity = new FinFundsCarriedForwardVeh();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void updateByDto(FinFundsCarriedForwardVehDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
FinFundsCarriedForwardVeh entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public FinFundsCarriedForwardVehDetailsVo fetchDetailsVoBySid(String sid){
FinFundsCarriedForwardVeh entity = fetchBySid(sid);
FinFundsCarriedForwardVehDetailsVo vo = new FinFundsCarriedForwardVehDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
}

24
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.xml

@ -122,7 +122,8 @@
payType,
payTypeKey,
customerSid,
useOrgSid
useOrgSid,
subscribedOf
FROM fin_selected_receivables_detailed
WHERE collSid = #{collectionBillSid}
</select>
@ -180,7 +181,7 @@
where collSid = #{sid}
and auditState = #{state}
and receivablesName = #{type}
and payTypeKey = #{payTypeKey}
and payTypeKey = #{payTypeKey} and subscribedOf = 0
group by contractNo
</select>
@ -191,7 +192,7 @@
where collSid = #{sid}
and auditState = #{state}
and receivablesName = #{type}
and payTypeKey = #{payTypeKey}
and payTypeKey = #{payTypeKey} and subscribedOf = 0
</select>
<select id="selectCustomerList" resultType="com.yxt.anrui.fin.api.finselectedreceivablesdetailed.SelectCustomerVo">
@ -199,7 +200,7 @@
from fin_selected_receivables_detailed
where collSid = #{sid}
and auditState = #{state}
and receivablesName = #{type}
and receivablesName = #{type} and subscribedOf = 0
group by concat(customerName, customerPhone)
</select>
@ -208,7 +209,7 @@
select *
from fin_selected_receivables_detailed
where collSid = #{sid}
and auditState = #{state}
and auditState = #{state} and subscribedOf = 0
and receivablesName = #{type}
</select>
@ -220,7 +221,7 @@
and auditState = #{state}
and receivablesName = #{type}
and customerName = #{customerName}
and customerPhone = #{customerPhone}
and customerPhone = #{customerPhone} and subscribedOf = 0
and length(VIN) > 0
</select>
@ -231,7 +232,7 @@
where collSid = #{sid}
and auditState = #{state}
and receivablesName = #{type}
and contractNo = #{contractNo}
and contractNo = #{contractNo} and subscribedOf = 0
and length(VIN) > 0
</select>
@ -242,7 +243,7 @@
where collSid = #{sid}
and auditState = #{state}
and receivablesName = #{type}
and contractNo = #{contractNo}
and contractNo = #{contractNo} and subscribedOf = 0
and length(VIN) = 0
</select>
@ -254,7 +255,7 @@
and auditState = #{state}
and receivablesName = #{type}
and customerName = #{customerName}
and customerPhone = #{customerPhone}
and customerPhone = #{customerPhone} and subscribedOf = 0
and length(VIN) = 0
</select>
@ -263,7 +264,7 @@
from fin_selected_receivables_detailed fd
left join fin_uncollected_receivables_detailed ff on ff.sid = fd.receivablesSid
where ff.busVinSid = #{busVinSid}
and fd.auditState = 3
and fd.auditState = 3 and subscribedOf = 0
</select>
<update id="updateAuditStateBySid">
@ -304,7 +305,8 @@
furd.payType,
furd.payTypeKey,
fd.subscriptionMoney,
fd.useOrgSid
fd.useOrgSid,
fd.subscriptionDate
from fin_selected_receivables_detailed fd
left join fin_uncollected_receivables_detailed furd on furd.sid = fd.receivablesSid
<where>

51
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedService.java

@ -34,8 +34,6 @@ import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.fin.api.fincollectionconfirmation.AppFinSelectedReceivablesPaymentDetailsQuery;
import com.yxt.anrui.fin.api.fincollectionconfirmation.AppFinSelectedReceivablesPaymentDetailsVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmation;
import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationJYDDKYDJVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.app.AppBusArrearsCarryMoneyVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.*;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.AppFinUncollectedReceivablesDetailedVo;
@ -53,9 +51,11 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.*;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.TreeSet;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* Project: anrui-fin(销售相关) <br/>
@ -360,12 +360,23 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
if (StringUtils.isNotBlank(userSid)) {
qw.eq("fd.createBySid", userSid);
}
//查询没有认完的车辆sid
/* List<String> stringList = baseMapper.selectUnSelectList(pagerQuery.getParams().getPurchaseSystemSid(),userSid,useOrgSid);
stringList.removeAll(Collections.singleton(null));
if(!stringList.isEmpty()){
qw.notIn("receivablesSid",stringList);
}*/
List<String> sids = pagerQuery.getParams().getSids();
if (sids != null) {
for (String sid : sids) {
if (StringUtils.isNotBlank(sid)) {
qw.ne("fd.sid", sid);
}
}
}
if(StringUtils.isNotBlank(params.getContractNo())){
qw.like("fd.contractNo",params.getContractNo());
}
if(StringUtils.isNotBlank(params.getCustomerName())){
qw.like("fd.customerName",params.getCustomerName());
}
if(StringUtils.isNotBlank(params.getMobile())){
qw.like("fd.customerPhone",params.getMobile());
}
List<FinSelectReceivablesDetailedVo> collList = baseMapper.selectPageList(qw, params.getName());
if (collList.isEmpty()) {
collList = baseMapper.selectPageList(qw, "");
@ -404,6 +415,9 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
if (StringUtils.isNotBlank(pagerQuery.getParams().getName())) {
collList = collList.stream().filter(v -> v.getVIN().contains(pagerQuery.getParams().getName())).collect(Collectors.toList());
}
if (StringUtils.isNotBlank(pagerQuery.getParams().getVinNo())) {
collList = collList.stream().filter(v -> v.getVIN().contains(pagerQuery.getParams().getVinNo())).collect(Collectors.toList());
}
} else {
for (FinSelectReceivablesDetailedVo record : collList) {
BigDecimal currentMoney = new BigDecimal(record.getCurrentReceivableMoney());
@ -438,8 +452,14 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
}
}
if (StringUtils.isNotBlank(pagerQuery.getParams().getName())) {
List<FinSelectReceivablesDetailedVo> cll = collList.stream().filter(v -> v.getVIN().contains(pagerQuery.getParams().getName())).collect(Collectors.toList());
collList = Stream.of(collList, cll).flatMap(Collection::stream).collect(Collectors.toList());
collList = collList.stream().filter(v -> v.getVIN().contains(pagerQuery.getParams().getName())).collect(Collectors.toList());
// List<FinSelectReceivablesDetailedVo> cll = collList.stream().filter(v -> v.getVIN().contains(pagerQuery.getParams().getName())).collect(Collectors.toList());
// collList = Stream.of(collList, cll).flatMap(Collection::stream).collect(Collectors.toList());
}
if (StringUtils.isNotBlank(pagerQuery.getParams().getVinNo())) {
collList = collList.stream().filter(v -> v.getVIN().contains(pagerQuery.getParams().getVinNo())).collect(Collectors.toList());
// List<FinSelectReceivablesDetailedVo> cll = collList.stream().filter(v -> v.getVIN().contains(pagerQuery.getParams().getVinNo())).collect(Collectors.toList());
// collList = Stream.of(collList, cll).flatMap(Collection::stream).collect(Collectors.toList());
}
}
//将collList根据sid去重
@ -449,9 +469,12 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
collList = collList.stream().sorted(Comparator.comparing(FinSelectReceivablesDetailedVo::getContractNo).reversed()).collect(Collectors.toList());
//分页
IPage<FinSelectReceivablesDetailedVo> page1 = new Page<>();
page1.setRecords(collList);
page1.setTotal(collList.size());
page1.setPages((collList.size() / pagerQuery.getSize()) + 1);
// page1.setPages((collList.size() / pagerQuery.getSize()) + 1);
page1.setPages(collList.size()/pagerQuery.getSize()+(collList.size()%pagerQuery.getSize()==0?0:1));
collList = collList.stream().skip((pagerQuery.getCurrent() - 1) *pagerQuery.getSize()).limit(pagerQuery.getSize()).collect(Collectors.toList()); //开始分页
// collList = CollUtil.page(Integer.parseInt(String.valueOf(pagerQuery.getCurrent())), Integer.parseInt(String.valueOf(pagerQuery.getSize())), collList);
page1.setRecords(collList);
page1.setCurrent(pagerQuery.getCurrent());
page1.setSize(pagerQuery.getSize());
return page1;

14
anrui-riskcenter-ui/.editorconfig

@ -0,0 +1,14 @@
# http://editorconfig.org
root = true
[*]
charset = utf-8
indent_style = space
indent_size = 2
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
[*.md]
insert_final_newline = false
trim_trailing_whitespace = false

10
anrui-riskcenter-ui/.env.development

@ -0,0 +1,10 @@
# just a flag
ENV = 'development'
# base api
VUE_APP_BASE_API = '/api'
## 配置测试和本地开发时的 接口地址
##VUE_APP_URL = "http://26077a35f5.wicp.vip"
VUE_APP_URL = "http://anrui.yyundong.com"

9
anrui-riskcenter-ui/.env.production

@ -0,0 +1,9 @@
# just a flag
ENV = 'production'
# base api
VUE_APP_BASE_API = '/api'
## 配置 正式接口地址
VUE_APP_URL = "http://218.11.12.154:8111"

8
anrui-riskcenter-ui/.env.staging

@ -0,0 +1,8 @@
NODE_ENV = production
# just a flag
ENV = 'staging'
# base api
VUE_APP_BASE_API = '/stage-api'

4
anrui-riskcenter-ui/.eslintignore

@ -0,0 +1,4 @@
build/*.js
src/assets
public
dist

199
anrui-riskcenter-ui/.eslintrc.js

@ -0,0 +1,199 @@
module.exports = {
root: true,
parserOptions: {
parser: 'babel-eslint',
sourceType: 'module'
},
env: {
browser: true,
node: true,
es6: true,
},
extends: ['plugin:vue/recommended', 'eslint:recommended'],
// add your custom rules here
//it is base on https://github.com/vuejs/eslint-config-vue
rules: {
"vue/max-attributes-per-line": [2, {
"singleline": 10,
"multiline": {
"max": 1,
"allowFirstLine": false
}
}],
"vue/singleline-html-element-content-newline": "off",
"vue/multiline-html-element-content-newline":"off",
"vue/name-property-casing": ["error", "PascalCase"],
"vue/no-v-html": "off",
'accessor-pairs': 2,
'arrow-spacing': [2, {
'before': true,
'after': true
}],
'block-spacing': [2, 'always'],
'brace-style': [2, '1tbs', {
'allowSingleLine': true
}],
'camelcase': [0, {
'properties': 'always'
}],
'comma-dangle': [2, 'never'],
'comma-spacing': [2, {
'before': false,
'after': true
}],
'comma-style': [2, 'last'],
'constructor-super': 2,
'curly': [2, 'multi-line'],
'dot-location': [2, 'property'],
'eol-last': 2,
'eqeqeq': ["error", "always", {"null": "ignore"}],
'generator-star-spacing': [2, {
'before': true,
'after': true
}],
'handle-callback-err': [2, '^(err|error)$'],
// 'indent': [2, 2, {
// 'SwitchCase': 1
// }],
'indent': 'off',
'jsx-quotes': [2, 'prefer-single'],
'key-spacing': [2, {
'beforeColon': false,
'afterColon': true
}],
'keyword-spacing': [2, {
'before': true,
'after': true
}],
'new-cap': [2, {
'newIsCap': true,
'capIsNew': false
}],
'new-parens': 2,
'no-array-constructor': 2,
'no-caller': 2,
'no-console': 'off',
'no-class-assign': 2,
'no-cond-assign': 2,
'no-const-assign': 2,
'no-control-regex': 0,
'no-delete-var': 2,
'no-dupe-args': 2,
'no-dupe-class-members': 2,
'no-dupe-keys': 2,
'no-duplicate-case': 2,
'no-empty-character-class': 2,
'no-empty-pattern': 2,
'no-eval': 2,
'no-ex-assign': 2,
'no-extend-native': 2,
'no-extra-bind': 2,
'no-extra-boolean-cast': 2,
'no-extra-parens': [2, 'functions'],
'no-fallthrough': 2,
'no-floating-decimal': 2,
'no-func-assign': 2,
'no-implied-eval': 2,
'no-inner-declarations': [2, 'functions'],
'no-invalid-regexp': 2,
'no-irregular-whitespace': 2,
'no-iterator': 2,
'no-label-var': 2,
'no-labels': [2, {
'allowLoop': false,
'allowSwitch': false
}],
'no-lone-blocks': 2,
'no-mixed-spaces-and-tabs': 2,
'no-multi-spaces': 2,
'no-multi-str': 2,
'no-multiple-empty-lines': [2, {
'max': 1
}],
'no-native-reassign': 2,
'no-negated-in-lhs': 2,
'no-new-object': 2,
'no-new-require': 2,
'no-new-symbol': 2,
'no-new-wrappers': 2,
'no-obj-calls': 2,
'no-octal': 2,
'no-octal-escape': 2,
'no-path-concat': 2,
'no-proto': 2,
'no-redeclare': 2,
'no-regex-spaces': 2,
'no-return-assign': [2, 'except-parens'],
'no-self-assign': 2,
'no-self-compare': 2,
'no-sequences': 2,
'no-shadow-restricted-names': 2,
'no-spaced-func': 2,
'no-sparse-arrays': 2,
'no-this-before-super': 2,
'no-throw-literal': 2,
'no-trailing-spaces': 2,
'no-undef': 2,
'no-undef-init': 2,
'no-unexpected-multiline': 2,
'no-unmodified-loop-condition': 2,
'no-unneeded-ternary': [2, {
'defaultAssignment': false
}],
'no-unreachable': 2,
'no-unsafe-finally': 2,
'no-unused-vars': [2, {
'vars': 'all',
'args': 'none'
}],
'no-useless-call': 2,
'no-useless-computed-key': 2,
'no-useless-constructor': 2,
'no-useless-escape': 0,
'no-whitespace-before-property': 2,
'no-with': 2,
'one-var': [2, {
'initialized': 'never'
}],
'operator-linebreak': [2, 'after', {
'overrides': {
'?': 'before',
':': 'before'
}
}],
'padded-blocks': [2, 'never'],
'quotes': [2, 'single', {
'avoidEscape': true,
'allowTemplateLiterals': true
}],
'semi': [2, 'never'],
'semi-spacing': [2, {
'before': false,
'after': true
}],
'space-before-blocks': [2, 'always'],
'space-before-function-paren': [2, 'never'],
'space-in-parens': [2, 'never'],
'space-infix-ops': 2,
'space-unary-ops': [2, {
'words': true,
'nonwords': false
}],
'spaced-comment': [2, 'always', {
'markers': ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ',']
}],
'template-curly-spacing': [2, 'never'],
'use-isnan': 2,
'valid-typeof': 2,
'wrap-iife': [2, 'any'],
'yield-star-spacing': [2, 'both'],
'yoda': [2, 'never'],
'prefer-const': 2,
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
'object-curly-spacing': [2, 'always', {
objectsInObjects: false
}],
'array-bracket-spacing': [2, 'never']
}
}

16
anrui-riskcenter-ui/.gitignore

@ -0,0 +1,16 @@
.DS_Store
node_modules/
dist/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
package-lock.json
tests/**/coverage/
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln

28
anrui-riskcenter-ui/.project

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>anrui-system-ui</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>com.aptana.ide.core.unifiedBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.aptana.projects.webnature</nature>
</natures>
<filteredResources>
<filter>
<id>1629107336958</id>
<name></name>
<type>26</type>
<matcher>
<id>org.eclipse.ui.ide.multiFilter</id>
<arguments>1.0-name-matches-false-false-node_modules</arguments>
</matcher>
</filter>
</filteredResources>
</projectDescription>

5
anrui-riskcenter-ui/.travis.yml

@ -0,0 +1,5 @@
language: node_js
node_js: 10
script: npm run test
notifications:
email: false

21
anrui-riskcenter-ui/LICENSE

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2017-present PanJiaChen
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

0
anrui-riskcenter-ui/README-zh.md

90
anrui-riskcenter-ui/README.md

@ -0,0 +1,90 @@
# vue-admin-template
English | [简体中文](./README-zh.md)
> A minimal vue admin template with Element UI & axios & iconfont & permission control & lint
**Live demo:** http://panjiachen.github.io/vue-admin-template
**The current version is `v4.0+` build on `vue-cli`. If you want to use the old version , you can switch branch to [tag/3.11.0](https://github.com/PanJiaChen/vue-admin-template/tree/tag/3.11.0), it does not rely on `vue-cli`**
## Build Setup
```bash
# clone the project
git clone https://github.com/PanJiaChen/vue-admin-template.git
# enter the project directory
cd vue-admin-template
# install dependency
npm install
# develop
npm run dev
```
This will automatically open http://localhost:9528
## Build
```bash
# build for test environment
npm run build:stage
# build for production environment
npm run build:prod
```
## Advanced
```bash
# preview the release environment effect
npm run preview
# preview the release environment effect + static resource analysis
npm run preview -- --report
# code format check
npm run lint
# code format check and auto fix
npm run lint -- --fix
```
Refer to [Documentation](https://panjiachen.github.io/vue-element-admin-site/guide/essentials/deploy.html) for more information
## Demo
![demo](https://github.com/PanJiaChen/PanJiaChen.github.io/blob/master/images/demo.gif)
## Extra
If you want router permission && generate menu by user roles , you can use this branch [permission-control](https://github.com/PanJiaChen/vue-admin-template/tree/permission-control)
For `typescript` version, you can use [vue-typescript-admin-template](https://github.com/Armour/vue-typescript-admin-template) (Credits: [@Armour](https://github.com/Armour))
## Related Project
- [vue-element-admin](https://github.com/PanJiaChen/vue-element-admin)
- [electron-vue-admin](https://github.com/PanJiaChen/electron-vue-admin)
- [vue-typescript-admin-template](https://github.com/Armour/vue-typescript-admin-template)
- [awesome-project](https://github.com/PanJiaChen/vue-element-admin/issues/2312)
## Browsers support
Modern browsers and Internet Explorer 10+.
| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt="IE / Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>IE / Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Safari |
| --------- | --------- | --------- | --------- |
| IE10, IE11, Edge| last 2 versions| last 2 versions| last 2 versions
## License
[MIT](https://github.com/PanJiaChen/vue-admin-template/blob/master/LICENSE) license.
Copyright (c) 2017-present PanJiaChen

14
anrui-riskcenter-ui/babel.config.js

@ -0,0 +1,14 @@
module.exports = {
presets: [
// https://github.com/vuejs/vue-cli/tree/master/packages/@vue/babel-preset-app
'@vue/cli-plugin-babel/preset'
],
'env': {
'development': {
// babel-plugin-dynamic-import-node plugin only does one thing by converting all import() to require().
// This plugin can significantly increase the speed of hot updates, when you have a large number of pages.
// https://panjiachen.github.io/vue-element-admin-site/guide/advanced/lazy-loading.html
'plugins': ['dynamic-import-node']
}
}
}

35
anrui-riskcenter-ui/build/index.js

@ -0,0 +1,35 @@
const { run } = require('runjs')
const chalk = require('chalk')
const config = require('../vue.config.js')
const rawArgv = process.argv.slice(2)
const args = rawArgv.join(' ')
if (process.env.npm_config_preview || rawArgv.includes('--preview')) {
const report = rawArgv.includes('--report')
run(`vue-cli-service build ${args}`)
const port = 9526
const publicPath = config.publicPath
var connect = require('connect')
var serveStatic = require('serve-static')
const app = connect()
app.use(
publicPath,
serveStatic('./dist', {
index: ['index.html', '/']
})
)
app.listen(port, function () {
console.log(chalk.green(`> Preview at http://localhost:${port}${publicPath}`))
if (report) {
console.log(chalk.green(`> Report at http://localhost:${port}${publicPath}report.html`))
}
})
} else {
run(`vue-cli-service build ${args}`)
}

24
anrui-riskcenter-ui/jest.config.js

@ -0,0 +1,24 @@
module.exports = {
moduleFileExtensions: ['js', 'jsx', 'json', 'vue'],
transform: {
'^.+\\.vue$': 'vue-jest',
'.+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$':
'jest-transform-stub',
'^.+\\.jsx?$': 'babel-jest'
},
moduleNameMapper: {
'^@/(.*)$': '<rootDir>/src/$1'
},
snapshotSerializers: ['jest-serializer-vue'],
testMatch: [
'**/tests/unit/**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)'
],
collectCoverageFrom: ['src/utils/**/*.{js,vue}', '!src/utils/auth.js', '!src/utils/request.js', 'src/components/**/*.{js,vue}'],
coverageDirectory: '<rootDir>/tests/unit/coverage',
// 'collectCoverage': true,
'coverageReporters': [
'lcov',
'text-summary'
],
testURL: 'http://localhost/'
}

9
anrui-riskcenter-ui/jsconfig.json

@ -0,0 +1,9 @@
{
"compilerOptions": {
"baseUrl": "./",
"paths": {
"@/*": ["src/*"]
}
},
"exclude": ["node_modules", "dist"]
}

57
anrui-riskcenter-ui/mock/index.js

@ -0,0 +1,57 @@
const Mock = require('mockjs')
const { param2Obj } = require('./utils')
const user = require('./user')
const table = require('./table')
const mocks = [
...user,
...table
]
// for front mock
// please use it cautiously, it will redefine XMLHttpRequest,
// which will cause many of your third-party libraries to be invalidated(like progress event).
function mockXHR() {
// mock patch
// https://github.com/nuysoft/Mock/issues/300
Mock.XHR.prototype.proxy_send = Mock.XHR.prototype.send
Mock.XHR.prototype.send = function() {
if (this.custom.xhr) {
this.custom.xhr.withCredentials = this.withCredentials || false
if (this.responseType) {
this.custom.xhr.responseType = this.responseType
}
}
this.proxy_send(...arguments)
}
function XHR2ExpressReqWrap(respond) {
return function(options) {
let result = null
if (respond instanceof Function) {
const { body, type, url } = options
// https://expressjs.com/en/4x/api.html#req
result = respond({
method: type,
body: JSON.parse(body),
query: param2Obj(url)
})
} else {
result = respond
}
return Mock.mock(result)
}
}
for (const i of mocks) {
Mock.mock(new RegExp(i.url), i.type || 'get', XHR2ExpressReqWrap(i.response))
}
}
module.exports = {
mocks,
mockXHR
}

81
anrui-riskcenter-ui/mock/mock-server.js

@ -0,0 +1,81 @@
const chokidar = require('chokidar')
const bodyParser = require('body-parser')
const chalk = require('chalk')
const path = require('path')
const Mock = require('mockjs')
const mockDir = path.join(process.cwd(), 'mock')
function registerRoutes(app) {
let mockLastIndex
const { mocks } = require('./index.js')
const mocksForServer = mocks.map(route => {
return responseFake(route.url, route.type, route.response)
})
for (const mock of mocksForServer) {
app[mock.type](mock.url, mock.response)
mockLastIndex = app._router.stack.length
}
const mockRoutesLength = Object.keys(mocksForServer).length
return {
mockRoutesLength: mockRoutesLength,
mockStartIndex: mockLastIndex - mockRoutesLength
}
}
function unregisterRoutes() {
Object.keys(require.cache).forEach(i => {
if (i.includes(mockDir)) {
delete require.cache[require.resolve(i)]
}
})
}
// for mock server
const responseFake = (url, type, respond) => {
return {
url: new RegExp(`${process.env.VUE_APP_BASE_API}${url}`),
type: type || 'get',
response(req, res) {
console.log('request invoke:' + req.path)
res.json(Mock.mock(respond instanceof Function ? respond(req, res) : respond))
}
}
}
module.exports = app => {
// parse app.body
// https://expressjs.com/en/4x/api.html#req.body
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({
extended: true
}))
const mockRoutes = registerRoutes(app)
var mockRoutesLength = mockRoutes.mockRoutesLength
var mockStartIndex = mockRoutes.mockStartIndex
// watch files, hot reload mock server
chokidar.watch(mockDir, {
ignored: /mock-server/,
ignoreInitial: true
}).on('all', (event, path) => {
if (event === 'change' || event === 'add') {
try {
// remove mock routes stack
app._router.stack.splice(mockStartIndex, mockRoutesLength)
// clear routes cache
unregisterRoutes()
const mockRoutes = registerRoutes(app)
mockRoutesLength = mockRoutes.mockRoutesLength
mockStartIndex = mockRoutes.mockStartIndex
console.log(chalk.magentaBright(`\n > Mock Server hot reload success! changed ${path}`))
} catch (error) {
console.log(chalk.redBright(error))
}
}
})
}

29
anrui-riskcenter-ui/mock/table.js

@ -0,0 +1,29 @@
const Mock = require('mockjs')
const data = Mock.mock({
'items|30': [{
id: '@id',
title: '@sentence(10, 20)',
'status|1': ['published', 'draft', 'deleted'],
author: 'name',
display_time: '@datetime',
pageviews: '@integer(300, 5000)'
}]
})
module.exports = [
{
url: '/vue-admin-template/table/list',
type: 'get',
response: config => {
const items = data.items
return {
code: 20000,
data: {
total: items.length,
items: items
}
}
}
}
]

84
anrui-riskcenter-ui/mock/user.js

@ -0,0 +1,84 @@
const tokens = {
admin: {
token: 'admin-token'
},
editor: {
token: 'editor-token'
}
}
const users = {
'admin-token': {
roles: ['admin'],
introduction: 'I am a super administrator',
avatar: 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif',
name: 'Super Admin'
},
'editor-token': {
roles: ['editor'],
introduction: 'I am an editor',
avatar: 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif',
name: 'Normal Editor'
}
}
module.exports = [
// user login
{
url: '/vue-admin-template/user/login',
type: 'post',
response: config => {
const { username } = config.body
const token = tokens[username]
// mock error
if (!token) {
return {
code: 60204,
message: 'Account and password are incorrect.'
}
}
return {
code: 20000,
data: token
}
}
},
// get user info
{
url: '/vue-admin-template/user/info\.*',
type: 'get',
response: config => {
const { token } = config.query
const info = users[token]
// mock error
if (!info) {
return {
code: 50008,
message: 'Login failed, unable to get user details.'
}
}
return {
code: 20000,
data: info
}
}
},
// user logout
{
url: '/vue-admin-template/user/logout',
type: 'post',
response: _ => {
return {
code: 20000,
data: 'success'
}
}
}
]

25
anrui-riskcenter-ui/mock/utils.js

@ -0,0 +1,25 @@
/**
* @param {string} url
* @returns {Object}
*/
function param2Obj(url) {
const search = decodeURIComponent(url.split('?')[1]).replace(/\+/g, ' ')
if (!search) {
return {}
}
const obj = {}
const searchArr = search.split('&')
searchArr.forEach(v => {
const index = v.indexOf('=')
if (index !== -1) {
const name = v.substring(0, index)
const val = v.substring(index + 1, v.length)
obj[name] = val
}
})
return obj
}
module.exports = {
param2Obj
}

69
anrui-riskcenter-ui/package.json

@ -0,0 +1,69 @@
{
"name": "admin-template",
"version": "4.4.0",
"description": "A vue admin template with Element UI & axios & iconfont & permission control & lint",
"author": "Pan <panfree23@gmail.com>",
"scripts": {
"dev": "vue-cli-service serve",
"build:prod": "vue-cli-service build",
"build:stage": "vue-cli-service build --mode staging",
"preview": "node build/index.js --preview",
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml",
"lint": "eslint --ext .js,.vue src",
"test:unit": "jest --clearCache && vue-cli-service test:unit",
"test:ci": "npm run lint && npm run test:unit"
},
"dependencies": {
"axios": "0.18.1",
"core-js": "^3.22.5",
"element-ui": "2.13.2",
"js-cookie": "2.2.0",
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"path-to-regexp": "2.4.0",
"portfinder": "^1.0.21",
"qs": "^6.9.4",
"sass-resources-loader": "^2.1.1",
"viewerjs": "^1.9.0",
"vue": "2.6.10",
"vue-amap": "^0.5.10",
"vue-router": "3.0.6",
"vuex": "3.1.0",
"vuex-persistedstate": "^4.0.0"
},
"devDependencies": {
"@vue/cli-plugin-babel": "4.4.4",
"@vue/cli-plugin-eslint": "4.4.4",
"@vue/cli-plugin-unit-jest": "4.4.4",
"@vue/cli-service": "4.4.4",
"@vue/test-utils": "1.0.0-beta.29",
"autoprefixer": "9.5.1",
"babel-eslint": "10.1.0",
"babel-jest": "23.6.0",
"babel-plugin-dynamic-import-node": "2.3.3",
"babel-polyfill": "^6.26.0",
"chalk": "2.4.2",
"connect": "3.6.6",
"eslint": "6.7.2",
"eslint-plugin-vue": "6.2.2",
"html-webpack-plugin": "3.2.0",
"mockjs": "1.0.1-beta3",
"runjs": "4.3.2",
"sass": "1.26.8",
"sass-loader": "8.0.2",
"script-ext-html-webpack-plugin": "2.1.3",
"serve-static": "1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.2",
"vue-template-compiler": "2.6.10"
},
"browserslist": [
"> 1%",
"last 2 versions"
],
"engines": {
"node": ">=8.9",
"npm": ">= 3.0.0"
},
"license": "MIT"
}

8
anrui-riskcenter-ui/postcss.config.js

@ -0,0 +1,8 @@
// https://github.com/michael-ciniawsky/postcss-load-config
module.exports = {
'plugins': {
// to edit target browsers: use "browserslist" field in package.json
'autoprefixer': {}
}
}

BIN
anrui-riskcenter-ui/public/favicon.ico

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

BIN
anrui-riskcenter-ui/public/image/liuchengtu.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

17
anrui-riskcenter-ui/public/index.html

@ -0,0 +1,17 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= webpackConfig.name %></title>
</head>
<body>
<noscript>
<strong>We're sorry but <%= webpackConfig.name %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>

14
anrui-riskcenter-ui/src/App.vue

@ -0,0 +1,14 @@
<template>
<div id="app">
<router-view />
</div>
</template>
<script>
export default {
name: 'App',
mounted() {
},
}
</script>

20
anrui-riskcenter-ui/src/api/Common/Upload.js

@ -0,0 +1,20 @@
import request from '@/utils/request'
// 上传图片
export function imageUpload(data){
return request({
url: '/jlcyry/file/upload',
method: 'post',
data,
headers:{'Content-Type':'multipart/form-data'}
})
}
// export function uploadFile(data){
// return request({
// url: '/portal/file/upload',
// method: 'post',
// data,
// headers:{'Content-Type':'multipart/form-data'}
// })
// }
//
export const uploadFile = '/api/portal/file/upload'

49
anrui-riskcenter-ui/src/api/Common/areaPicker.js

@ -0,0 +1,49 @@
import request from '@/utils/request'
//区域获取省
// export function getProvince(data) {
// return request({
// url: '/system/region/getProvince',
// method: 'get'
// })
// }
// //根据省sid获取该省的所有市
// export function getCity(data) {
// return request({
// url: '/system/region/getCity',
// method: 'get',
// params: data
// })
// }
// //根据市sid获取该市的所有县区
// export function getCounty(data) {
// return request({
// url: '/system/region/getCounty',
// method: 'get',
// params: data
// })
// }
// 获取省/portal/v1/regions/getProvince
export function getProvince(data) {
return request({
url: '/portal/v1/regions/getProvince',data,
method: 'get',
params:data,
})
}
// 根据省sid获取该省的所有市
export function getCity(data) {
return request({
url: '/portal/v1/regions/getCity',
params:data,
method: 'get',
})
}
// 根据市sid获取该市的所有县区
export function getCounty(data) {
return request({
url: '/portal/v1/regions/getCounty',
method: 'get',
params:data,
})
}

13
anrui-riskcenter-ui/src/api/Common/permission.js

@ -0,0 +1,13 @@
import request from '@/utils/request'
// 请求按钮权限
export default {
// 查询分页列表,输入当前路径和userSid,返回
buttonPermission: function(params) {
return request({
url: '/demopackage/v1/demo/buttonPermission',
method: 'post',
data: params
})
}
}

36
anrui-riskcenter-ui/src/api/User/login.js

@ -0,0 +1,36 @@
import request from '@/utils/request'
import qs from 'qs'
class user {
login(data) { // 登录
return request({
url: '/system/user/login',
method: 'post',
data
})
}
logout(data) { // 退出
return request({
url: '/portal/v1/sysuser/signOut',
method: 'post',
data: qs.stringify(data)
})
}
updatePassword(data) { // 退出修改密码
return request({
url: '/portal/v1/sysuser/updatePassword',
method: 'post',
data: qs.stringify(data)
})
}
reGetPwd(data){
return request({
url: `/system/user/reGetPwd/${data.userName}/${data.userPhone}`,
method: 'post',
data: qs.stringify(data)
})
}
}
export default new user()

116
anrui-riskcenter-ui/src/api/management/yuangongguanli.js

@ -0,0 +1,116 @@
import request from '@/utils/request'
// import qs from 'qs'
// 其他入库单
export default {
// 查询分页列表
listPage: function(params) {
return request({
url: '/portal/v1/sysstaffinfo/listPage',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
})
},
// 保存新增记录
saveAdd: function(params) {
return request({
url: '/portal/v1/sysstaffinfo/save',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
})
},
// 保存修改记录
saveEdit: function(params,sid) {
console.log('bianjiebaocunjiekou',sid)
return request({
url: '/portal/v1/sysstaffinfo/update/' + sid,
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
})
},
// 通过sid删除一条或多条记录
delBySids: function(data) {
return request({
url: '/base/v1/basedatalist/del_by_sids',
method: 'delete',
data,
headers: { 'Content-Type': 'application/json' }
})
},
// 通过sid删除一条或多条记录
del: function(data) {
return request({
url: '/portal/v1/sysstaffinfo/del',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
})
},
// 员工信息编辑初始化及详情
fetchBySid: function(sid) {
return request({
url: '/portal/v1/sysstaffinfo/fetchBySid/' + sid,
method: 'get'
})
},
// 获取部门级联
salesDepName: function(data) {
return request({
url: '/portal/v1/sysorganization/selectListOrg',
method: 'get',
params: data,
data: data
})
},
// 获取岗位级联
postName: function(data) {
return request({
// /portal/v1/syspost/selectByOrgSid/{orgSid} 岗位列表
url: '/portal/v1/syspost/selectList',
method: 'get',
params: data,
})
},
// 获取下拉列表
pullDown: function(data) {
return request({
url: '/portal/v1/dictcommons/typeValues',
method: 'get',
params: data
})
},
// 提交
doSubmit: function(params) {
return request({
url: '/anruiscm/v1/scmotherinbound/doSubmit',
method: 'post',
data: params
})
},
// 导入
importExcel: function(params) {
return request({
url: '/anruiscm/v1/scmotherinbound/importExcel',
method: 'post',
data: params
})
},
// 导出
exportExcel: function(params) {
return request({
url: '/anruiscm/v1/scmotherinbound/exportExcel',
method: 'post',
data: params
})
}
}

44
anrui-riskcenter-ui/src/api/system/Role/role.js

@ -0,0 +1,44 @@
import request from '@/utils/request'
import qs from 'qs'
let tokens = window.sessionStorage.getItem('token');
//
export function rolemenus(data) {
return request({
url: '/system/v1/rolemenus/'+data.roleSid,
method: 'get',
params: data
})
}
// 获取左侧菜单
export function getrolemenus(data) {
return request({
url: '/portal/v1/sysmenu/sourcemenutree',
data: data,
method: 'POST',
async: false,
headers: {'Content-Type': 'application/json'}
})
}
// 获取角色的主页菜单
export function sourcesofrole(data) {
return request({
url: '/system/v1/rolemenus/sourcesofrole',
method: 'POST',
data: data,
headers: {'Content-Type': 'application/json'}
})
}
// 根据token值获取登录后的用户信息
export function loginDetails(data) {
return request({
url: '/portal/v1/sysuser/loginDetails',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}

44
anrui-riskcenter-ui/src/api/user.js

@ -0,0 +1,44 @@
import request from '@/utils/request'
import qs from 'qs'
//登录
export function login(data) {
return request({
url: '/portal/v1/sysuser/login',
method: 'post',
data: data,
headers: {'Content-Type': 'application/json'}
})
}
// 用户注册
export function registUser(data) {
return request({
url: '/system/user/save',
method: 'post',
data,
headers:{'Content-Type':'application/x-www-form-urlencoded;'}
})
}
// 获取手机验证码
export function getVerificationCode(data) {
return request({
url: '/system/user/getVerificationCode',
method: 'get',
params: data
})
}
// 获取登录验证码
export function imgCode() {
return request({
url: '/system/api/defaultBlendCode?temm=' + new Date().getTime(),
method: 'get'
})
}
// 获取用信息
export function getInfo(token) {
return request({
url: '/system/user/loginDetails',
method: 'post',
})
}

BIN
anrui-riskcenter-ui/src/assets/404_images/404.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

BIN
anrui-riskcenter-ui/src/assets/404_images/404_cloud.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

BIN
anrui-riskcenter-ui/src/assets/home/anrui.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bIcon1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bIcon2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bIcon3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bIcon4.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bIcon5.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bIcon6.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bIcon7.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bIcon8.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

BIN
anrui-riskcenter-ui/src/assets/home/bottomBg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
anrui-riskcenter-ui/src/assets/home/line.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 B

BIN
anrui-riskcenter-ui/src/assets/home/ltBg.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

BIN
anrui-riskcenter-ui/src/assets/home/ltIcon1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save