Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
yunuo970428 3 years ago
parent
commit
288446ee28
  1. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppCarConfigSummaryVo.java
  2. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListVo.java
  3. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/ModelConfigListQuery.java
  4. 8
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml
  5. 9
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java
  6. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml
  7. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelRest.java
  8. 3
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehmodelconfig/BaseVehmodelConfigMapper.xml
  9. 1
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdepositfictitious/BusDepositFictitiousFeign.java
  10. 7
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/model/AppBusSaleOrderInitModelInfoQuery.java
  11. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/model/AppOrderInfoVo.java
  12. 4
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordermodel/BusSalesOrderModel.java
  13. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordermodel/app/AppOrderInfoDto.java
  14. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousRest.java
  15. 7
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busmaindeposit/BusMainDepositService.java
  16. 44
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  17. 39
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdeposit/BusSalesOrderDepositService.java
  18. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermodel/BusSalesOrderModelMapper.xml
  19. 15
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderprice/BusSalesOrderPriceService.java
  20. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java
  21. 42
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillUrl.java
  22. 62
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/appayable/APPayable.java
  23. 46
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/appaybill/ApPayBill.java
  24. 70
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/arreceivable/ARReceivable.java
  25. 8
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/auditKd/AuditKD.java
  26. 34
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/saloutstock/SalOutStock.java
  27. 9
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stktransferdirect/StkTransferDirect.java
  28. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentrecord/FinPaymentrecordService.java
  29. 11
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  30. 164
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeService.java
  31. 33
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/KingDeeConfig.java
  32. 340
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/KingDeeSaveSKD.java
  33. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/KingDeeUtils.java
  34. 3
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appayable/APPayableService.java
  35. 17
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerService.java
  36. 31
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java
  37. 16
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsupplier/BdSupplierService.java
  38. 24
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/orgorganizations/OrgOrganizationsService.java
  39. 3
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/purmrb/PurMrbService.java
  40. 18
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/purmrb/data_FPURMRBENTRY.json
  41. 5
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/receivablebill/ReceivableBillService.java
  42. 3
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/SalOutStockService.java
  43. 10
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/ApPayBillCastToKingDeeBillFields.java
  44. 9
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/ApPayBillService.java
  45. 0
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data.json
  46. 0
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_FPAYBILLENTRY.json
  47. 0
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_data.json
  48. 0
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_model.json
  49. 0
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/remarks.txt
  50. 0
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/webapi测试的数据.txt
  51. 0
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/~$付款单的参数必填备注.xlsx
  52. 0
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/付款单的参数必填备注.xlsx
  53. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/data_FEntity.json
  54. 27
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stkinstock/STKInStockService.java
  55. 3
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/StkTransferDirectService.java
  56. 15
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java
  57. 102
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebate.java
  58. 103
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateDetailsVo.java
  59. 103
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateDto.java
  60. 78
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateFeign.java
  61. 72
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateFeignFallback.java
  62. 66
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateQuery.java
  63. 103
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateVo.java
  64. 2
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateVo.java
  65. 65
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java
  66. 13
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml
  67. 100
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java
  68. 125
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java
  69. 8
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleenterlibrary/ScmVehicleEnterlibraryService.java
  70. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java
  71. 2
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java
  72. 31
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml
  73. 7
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java
  74. 10
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java
  75. 3
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyService.java
  76. 7
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/model/BusSaleOrderInitModelInfoQuery.java
  77. 2
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/model/ModelDto.java
  78. 5
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/model/OrderInfoDto.java
  79. 5
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/model/OrderInfoVo.java
  80. 11
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/virtualOrders/AppBusMainDepositFeign.java
  81. 18
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/virtualOrders/AppBusMainDepositFeignFallback.java
  82. 21
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/virtualOrders/flowable/GetNodeQuery.java
  83. 30
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/virtualOrders/AppBusMainDepositRest.java
  84. 46
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/virtualOrders/AppBusMainDepositService.java

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppCarConfigSummaryVo.java

@ -17,6 +17,8 @@ public class AppCarConfigSummaryVo implements Vo {
@ApiModelProperty("车型名称")
private String model;
@ApiModelProperty(value = "销售指导价")
@ApiModelProperty(value = "全款销售指导价")
private String price;
@ApiModelProperty("贷款销售指导价")
private String manufactorSettlementPrice;
}

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/AppModelConfigListVo.java

@ -40,9 +40,9 @@ public class AppModelConfigListVo implements Vo {
private String tireSize;
@ApiModelProperty(value = "驾驶室:后端内部使用")
private String specification;
@ApiModelProperty(value = "后桥速比:后端内部使用")
@ApiModelProperty(value = "速比:后端内部使用")
private String rearAxleRatio;
@ApiModelProperty("后桥value")
@ApiModelProperty(value = "后桥:后端内部使用")
private String rearAxleValue;
@ApiModelProperty(value = "空调:后端内部使用")
private String airConditioner;

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelconfig/ModelConfigListQuery.java

@ -19,9 +19,9 @@ public class ModelConfigListQuery implements Query {
private String tireSize;
@ApiModelProperty("驾驶室")
private String specification;
@ApiModelProperty("后桥速比")
@ApiModelProperty("速比")
private String rearAxleRatio;
@ApiModelProperty("后桥value")
@ApiModelProperty("后桥")
private String rearAxleValue;
@ApiModelProperty("空调")
private String airConditioner;

8
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml

@ -550,7 +550,7 @@
and (bv.vehicleStateValue = '库存' or bv.vehicleStateValue = '在途' or bv.vehicleStateValue = '调入')
AND bv.lockedState = #{lockedStateKey}
and bv.useOrgSid = #{orgSid}) AS nowCarNum,
(select SUM(distinct cast((cast(bo.platformNo as signed)-IFNULL(cast(bo.lockingNum as signed),'0')) as signed))
(select SUM(cast((cast(bo.platformNo as signed)-IFNULL(cast(bo.lockingNum as signed),'0')) as signed))
as quantity from bus_vehicle_order bo
LEFT JOIN bus_vehicle_apply_detail bd on bo.purchaseApplyMediumModelSid = bd.sid
where bo.useOrgSid =#{orgSid} and bd.vehicleSid = bvc.modelSid and bd.configSid = bvc.configurationItemsSid and
@ -575,7 +575,7 @@
and bv.modelConfigSid = #{configSid}
AND bv.lockedState = #{state}
and bv.useOrgSid = bvc.useOrgSid) AS nowCarNum,
(select SUM(distinct cast((cast(bo.platformNo as signed) -
(select SUM(cast((cast(bo.platformNo as signed) -
IFNULL(cast(bo.lockingNum as signed), '0')) as signed)) as quantity
from bus_vehicle_order bo
LEFT JOIN bus_vehicle_apply_detail bd on bo.purchaseRequisitionSid = bd.applySid
@ -657,7 +657,7 @@
AND (bv.vehicleStateValue = '库存' or bv.vehicleStateValue = '在途' or bv.vehicleStateValue = '调入')
AND bv.lockedState = #{state}
and bv.useOrgSid = #{orgSid}) AS nowCarNum,
(select SUM(distinct cast((cast(bo.platformNo as signed)-IFNULL(cast(bo.lockingNum as signed),'0')) as signed))
(select SUM(cast((cast(bo.platformNo as signed)-IFNULL(cast(bo.lockingNum as signed),'0')) as signed))
as quantity from bus_vehicle_order bo
LEFT JOIN bus_vehicle_apply_detail bd on bo.purchaseRequisitionSid = bd.applySid
where bo.useOrgSid =#{orgSid} and bd.vehicleSid = bvc.modelSid and bd.configSid = bvc.configurationItemsSid) AS
@ -731,7 +731,7 @@
and (bv.vehicleStateValue = '库存' or bv.vehicleStateValue = '在途' or bv.vehicleStateValue = '调入')
AND bv.lockedState = #{lockedStateKey}
and bv.useOrgSid = #{orgSid}) AS nowCarNum,
(select SUM(distinct cast((cast(bo.platformNo as signed)-IFNULL(cast(bo.lockingNum as signed),'0')) as signed))
(select SUM(cast((cast(bo.platformNo as signed)-IFNULL(cast(bo.lockingNum as signed),'0')) as signed))
as quantity from bus_vehicle_order bo
LEFT JOIN bus_vehicle_apply_detail bd on bo.purchaseRequisitionSid = bd.applySid
where bo.useOrgSid =#{orgSid} and bd.vehicleSid = bvc.modelSid and bd.configSid = bvc.configurationItemsSid and

9
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java

@ -558,7 +558,7 @@ public class BaseModelConfigService extends MybatisBaseService<BaseModelConfigMa
List<MoreConfigVo> moreConfigVos = baseMapper.getCompanyModelList(appModelConfigListVo.getModelSid(), appModelConfigListVo.getConfigSid(), orgSid, VehicleState.LockEnum.UN_LOCK.getCode());
for (MoreConfigVo moreConfigVo : moreConfigVos) {
String sid = moreConfigVo.getUseOrgSid();
if(StringUtils.isNotBlank(sid)){
if (StringUtils.isNotBlank(sid)) {
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(sid).getData();
moreConfigVo.setCompanyName(sysOrganization.getName());
}
@ -755,9 +755,12 @@ public class BaseModelConfigService extends MybatisBaseService<BaseModelConfigMa
if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getSpecification())) {//驾驶室
qw.eq("bmc.specification", pagerQuery.getSpecification());
}
if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getRearAxleRatio())) {//后桥速比
if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getRearAxleRatio())) {//速比
qw.eq("bmc.rearAxleRatio", pagerQuery.getRearAxleRatio());
}
if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getRearAxleValue())) {//后桥
qw.eq("bmc.rearAxleValue", pagerQuery.getRearAxleValue());
}
if (com.yxt.common.base.utils.StringUtils.isNotBlank(pagerQuery.getAirConditioner())) {//空调
qw.eq("bmc.airConditioner", pagerQuery.getAirConditioner());
}
@ -844,7 +847,7 @@ public class BaseModelConfigService extends MybatisBaseService<BaseModelConfigMa
List<MoreConfigVo> moreConfigVos = baseMapper.getCompanyModelList(appModelConfigListVo.getModelSid(), appModelConfigListVo.getConfigSid(), orgSid, VehicleState.LockEnum.UN_LOCK.getCode());
for (MoreConfigVo moreConfigVo : moreConfigVos) {
String sid = moreConfigVo.getUseOrgSid();
if(StringUtils.isNotBlank(sid)){
if (StringUtils.isNotBlank(sid)) {
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(sid).getData();
moreConfigVo.setCompanyName(sysOrganization.getName());
}

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

@ -572,7 +572,7 @@
or bv.vehicleStateValue = '调入')
AND lockedState = #{lockedStateKey}
AND bv.useOrgSid = #{useOrgSid}) AS nowCarNum,
(select SUM(distinct cast((cast(bo.platformNo as signed)-IFNULL(cast(bo.lockingNum as signed),'0')) as signed))
(select SUM(cast((cast(bo.platformNo as signed)-IFNULL(cast(bo.lockingNum as signed),'0')) as signed))
as quantity from bus_vehicle_order bo
LEFT JOIN bus_vehicle_apply_detail bd on bo.purchaseApplyMediumModelSid = bd.sid
where bo.useOrgSid = #{useOrgSid} AND bd.vehicleSid = bvm.sid AND bo.state = 0) AS produceCarNum
@ -593,7 +593,7 @@
WHERE bv.modelSid = #{modelSid}
AND bv.lockedState = #{state}
and bv.useOrgSid = bvc.useOrgSid) AS nowCarNum,
(select SUM(distinct cast((cast(bo.platformNo as signed) -
(select SUM(cast((cast(bo.platformNo as signed) -
IFNULL(cast(bo.lockingNum as signed), '0')) as signed)) as quantity
from bus_vehicle_order bo
LEFT JOIN bus_vehicle_apply_detail bd on bo.purchaseRequisitionSid = bd.applySid

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehiclemodel/BaseVehicleModelRest.java

@ -212,11 +212,6 @@ public class BaseVehicleModelRest implements BaseVehicleModelFeign {
return rb.setMsg("该车型信息不存在");
}
ResultBean<SysOrganizationVo> useOrgByUserSid = sysOrganizationFeign.getUseOrgByUserSid(userSid);
String sid1 = useOrgByUserSid.getData().getSid();
int i4 = baseVehicleModelService.checkByCreateOrgAndModelSid(sid1, sid);
if (i4 == 0) {
return rb.setMsg("该车型不属于当前分公司,无法修改");
}
return rb.success().setData(vo);
}

3
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehmodelconfig/BaseVehmodelConfigMapper.xml

@ -254,7 +254,8 @@
bmc.fuelTank,
bmc.multimedia,
bvc.guidedPrice as price,
bmc.otherConfig
bmc.otherConfig,
bvc.manufactorSettlementPrice
FROM base_vehmodel_config bvc
LEFT JOIN base_model_config bmc ON bvc.configurationItemsSid = bmc.sid
LEFT JOIN base_vehicle_model bvm ON bvc.modelSid = bvm.sid

1
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdepositfictitious/BusDepositFictitiousFeign.java

@ -61,6 +61,7 @@ public interface BusDepositFictitiousFeign {
@ApiOperation("订金使用记录接口")
@GetMapping("/getDepositRecords/{depositBillNo}")
public ResultBean<List<BusDepositRecordsVo>> getDepositRecords(@PathVariable("depositBillNo") String depositBillNo);
@ApiOperation("查询订金使用")
@GetMapping("/detailsList/{sid}")
ResultBean<List<BusDepositFictitiousDetailsVo>> detailsList(@PathVariable("sid") String sid);

7
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/model/AppBusSaleOrderInitModelInfoQuery.java

@ -27,4 +27,11 @@ public class AppBusSaleOrderInitModelInfoQuery implements Query {
@ApiModelProperty(value = "用户sid")
private String userSid;
@ApiModelProperty("公告型号sid")
private String publicModelSid;
@ApiModelProperty("公告型号")
private String publicModel;
private String saleOrderSid;
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/app/model/AppOrderInfoVo.java

@ -41,4 +41,9 @@ public class AppOrderInfoVo implements Vo {
@ApiModelProperty(value = "销售指导价:后端内部使用")
private String price;
@ApiModelProperty("公告型号sid")
private String publicModelSid;
@ApiModelProperty("公告型号")
private String publicModel;
}

4
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordermodel/BusSalesOrderModel.java

@ -73,5 +73,9 @@ public class BusSalesOrderModel extends BaseEntity {
private BigDecimal guildPrice;
@ApiModelProperty("单台成交价")
private BigDecimal finalPrice;
@ApiModelProperty("公告型号")
private String publicModel;
@ApiModelProperty("公告型号sid")
private String publicModelSid;
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordermodel/app/AppOrderInfoDto.java

@ -32,4 +32,9 @@ public class AppOrderInfoDto implements Dto {
private List<AppBusSalesOrderVehicleDto> nowCarList;
@ApiModelProperty(value = "已选择的采购订单列表")
private List<AppBusSalesVehicleOrderDto> readyCarList;
@ApiModelProperty("公告型号")
private String publicModel;
@ApiModelProperty("公告型号sid")
private String publicModelSid;
}

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdepositfictitious/BusDepositFictitiousRest.java

@ -61,7 +61,7 @@ public class BusDepositFictitiousRest implements BusDepositFictitiousFeign {
ResultBean rb = ResultBean.fireFail();
List<BusDepositRecordsVo> list = busDepositFictitiousService.getDepositRecords(depositBillNo);
for (BusDepositRecordsVo busDepositRecordsVo : list) {
busDepositRecordsVo.setPurpose("虚拟订单转订金");
busDepositRecordsVo.setPurpose("简易订单转订金");
}
return rb.success().setData(list);
}

7
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busmaindeposit/BusMainDepositService.java

@ -644,9 +644,9 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
AppBusDepositBusDetailsVo vo = baseMapper.selDepositByBillsid(virtualOrderSid);
record.setPayName(vo.getPayName());
record.setMobile(vo.getMobile());
if(StringUtils.isNotBlank(record.getUsedDeposit())){
if (StringUtils.isNotBlank(record.getUsedDeposit())) {
record.setDescribe("订金: " + vo.getDeposit() + "元 已用:" + record.getUsedDeposit() + "元");
}else{
} else {
record.setDescribe("订金: " + vo.getDeposit() + "元 已用:" + "0" + "元");
}
/*List<BusDepositRecordsVo> depositRecords = busDepositFictitiousService.getDepositRecords(record.getVirtualOrderId());
@ -1866,6 +1866,9 @@ public class BusMainDepositService extends MybatisBaseService<BusMainDepositMapp
if (r == 0) {
return rb.setMsg("操作失败!提交的数据不一致");
}
if (dto.getCarList().size() <= 0) {
return rb.setMsg("请补充车辆信息");
}
//新增修改保存
ResultBean<String> resultBean = reserveCarInfo(dto);
if (!resultBean.getSuccess()) {

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

@ -1261,7 +1261,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
/**
* App初始化销售订单单据信息
*
* @param saleOrderSid 销售订单sid
* @param appOrderInitQuery
* @return
*/
public AppBusSalesOrderBillInfoVo getBillInfo(AppOrderInitQuery appOrderInitQuery) {
@ -1550,7 +1550,10 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
vo.setOrderInfo(orderInfo);
vo.setState(type);
vo.setPrice(orderInfo.getPrice());
if(StringUtils.isNotBlank(orderInfo.getPrice())){
vo.setPrice(String.valueOf((int)Math.floor(Double.valueOf(orderInfo.getPrice()))));
}
}
return rb.success().setData(vo);
@ -1609,6 +1612,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
String userSid = appBusSaleOrderInitModelInfoQuery.getUserSid();
String orgSid = sysStaffOrgFeign.getPathSidByUserSid(userSid).getData();
String special = appBusSaleOrderInitModelInfoQuery.getSpecial();
String saleOrderSid = appBusSaleOrderInitModelInfoQuery.getSaleOrderSid();
BusSalesOrder busSalesOrder = fetchBySid(saleOrderSid);
AppBusSaleOrderInitModelInfoVo vo = new AppBusSaleOrderInitModelInfoVo();
//选择的车型信息的数据
AppOrderInfoVo orderInfo = new AppOrderInfoVo();
@ -1642,8 +1647,21 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
orderInfo.setNowCarList(appNowCarLists);
//订单选择的采购订单列表
orderInfo.setReadyCarList(appReadyCarLists);
vo.setPrice(data.getPrice());
if("1".equals(busSalesOrder.getPayTypeKey())){//全款
if(StringUtils.isNotBlank(data.getPrice())){
Double doublePrice = Double.valueOf(data.getPrice());
vo.setPrice(String.valueOf((int)Math.floor(doublePrice)));
}
}else{
if(StringUtils.isNotBlank(data.getManufactorSettlementPrice())){
vo.setPrice(String.valueOf((int)Math.floor(Double.valueOf(data.getManufactorSettlementPrice()))));
}
}
}
orderInfo.setPublicModel(appBusSaleOrderInitModelInfoQuery.getPublicModel());
orderInfo.setPublicModelSid(appBusSaleOrderInitModelInfoQuery.getPublicModelSid());
vo.setOrderInfo(orderInfo);
//查询该车型下的现车列表
@ -1921,6 +1939,20 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (!isDeposit) {
return rb.setMsg("请完善订金信息");
}
if(StringUtils.isNotBlank(busSalesOrder.getIsInsurance())){
return rb.setMsg("请完善保险信息");
}else{
if("0".equals(busSalesOrder.getIsInsurance())){
BusSalesOrderInsuranceDetailsVo busSalesOrderInsurance = busSalesOrderInsuranceService.details(sid);
if(busSalesOrderInsurance != null){
if(StringUtils.isBlank(busSalesOrderInsurance.getRemarks())){
return rb.setMsg("请先完善保险信息");
}
}else{
return rb.setMsg("请先完善保险信息");
}
}
}
//现车判断车架号是否已经锁定,已经锁定需要提示更换车架号。采购判断选择数量是否大于采购订单可用数量,提示车型数量超出可选数量
if ("1".equals(busSalesOrder.getType())) {
boolean isVehicle = isVehicle(sid);
@ -2226,7 +2258,11 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (StringUtils.isNotBlank(topInfo.getContractPath())) {
List<String> stringList = Arrays.asList(topInfo.getContractPath().split(","));
if (!stringList.isEmpty()) {
topInfo.setContractImages(stringList);
List<String> stringList1 = new ArrayList<>();
stringList.stream().forEach(i->{
stringList1.add(fileUploadComponent.getUrlPrefix()+i);
});
topInfo.setContractImages(stringList1);
}
}
vo.setTopInfo(topInfo);

39
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdeposit/BusSalesOrderDepositService.java

@ -57,6 +57,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@ -150,9 +151,14 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
if (!listVos.isEmpty()) {
for (AppBusSalesOrderDepositListVo listVo : listVos) {
String payPath = listVo.getPayPath();
if(StringUtils.isNotBlank(payPath)){
if (StringUtils.isNotBlank(payPath)) {
List<String> stringList = Arrays.asList(payPath.split(","));
listVo.setEntrustImage(stringList);
//添加前缀
List<String> strings = new ArrayList<>();
stringList.stream().forEach(i -> {
strings.add(fileUploadComponent.getUrlPrefix() + i);
});
listVo.setEntrustImage(strings);
}
//根据销售订单
if (!busSalesOrder.getCustomerName().equals(listVo.getName())) {
@ -165,9 +171,9 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
vo.setVirtualOrderList(listVos);
}
if (busSalesOrderPrice != null) {
if(busSalesOrderPrice.getQuantity() != null){
if (busSalesOrderPrice.getQuantity() != null) {
vo.setCarNumber(String.valueOf(busSalesOrderPrice.getQuantity()));
}else{
} else {
return rb.setMsg("请先完善车型信息");
}
@ -207,8 +213,8 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
busSalesOrderDeposit = new BusSalesOrderDeposit();
BeanUtil.copyProperties(dto, busSalesOrderDeposit, "sid");
//计算需补交订金
if(StringUtils.isNotBlank(dto.getDepositAll())){
if("02".equals(dto.getDepositTypeKey())){
if (StringUtils.isNotBlank(dto.getDepositAll())) {
if ("02".equals(dto.getDepositTypeKey())) {
BigDecimal bigDecimalAll = new BigDecimal(dto.getDepositAll());
busSalesOrderDeposit.setMakeUpDeposit(bigDecimalAll.subtract(makeUpDecimal));
}
@ -219,8 +225,8 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
depositSid = busSalesOrderDeposit.getSid();
BeanUtil.copyProperties(dto, busSalesOrderDeposit, "sid");
//计算需补交订金
if(StringUtils.isNotBlank(dto.getDepositAll())){
if("02".equals(dto.getDepositTypeKey())){
if (StringUtils.isNotBlank(dto.getDepositAll())) {
if ("02".equals(dto.getDepositTypeKey())) {
BigDecimal bigDecimalAll = new BigDecimal(dto.getDepositAll());
busSalesOrderDeposit.setMakeUpDeposit(bigDecimalAll.subtract(makeUpDecimal));
}
@ -240,14 +246,19 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
if ("02".equals(dto.getDepositTypeKey())) {
List<AppBusSalesOrderDepositListDto> listVos = dto.getVirtualOrderList();
listVos.removeAll(Collections.singleton(null));
BigDecimal bigDecimalAll = new BigDecimal("0");
for (AppBusSalesOrderDepositListDto listDto : listVos) {
//判断可用金额是否大于结转金额
if (new BigDecimal(listDto.getPrice()).compareTo(new BigDecimal(listDto.getDepositPrice())) > 0) {
return rb.setMsg("结转金额中存在结转金额大于订金剩余金额的情况,请重新输入");
}
BusDepositFictitious busDepositFictitious = new BusDepositFictitious();
BeanUtil.copyProperties(listDto, busDepositFictitious, "sid");
busDepositFictitious.setDepositSid(depositSid);
if(listDto.getEntrustImage().size()>0){
if (listDto.getEntrustImage().size() > 0) {
String payPath = StringUtils.join(listDto.getEntrustImage(), ",");
if(payPath.contains(fileUploadComponent.getUrlPrefix())){
payPath = payPath.replaceAll(fileUploadComponent.getUrlPrefix(),"");
if (payPath.contains(fileUploadComponent.getUrlPrefix())) {
payPath = payPath.replaceAll(fileUploadComponent.getUrlPrefix(), "");
}
busDepositFictitious.setPayPath(payPath);
}
@ -255,7 +266,11 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
//查询该虚拟订金单已使用的订金值
String depositAll = busDepositFictitiousService.selectDeposit(listDto.getDepositBillNo());
//更新该虚拟订单的订金值
busDepositService.updateDeposit(depositAll,listDto.getDepositBillNo());
busDepositService.updateDeposit(depositAll, listDto.getDepositBillNo());
bigDecimalAll = bigDecimalAll.add(new BigDecimal(listDto.getPrice()));
}
if(bigDecimalAll.compareTo(new BigDecimal(dto.getDepositAll()))>0){
return rb.setMsg("结转金额大于订金合计,请重新选择");
}
}
return rb.success().setMsg("保存成功");

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermodel/BusSalesOrderModelMapper.xml

@ -39,7 +39,9 @@
modelConfigSid as configSid,
modelSid,
specialConfig as specialInstructions,
guildPrice as price
guildPrice as price,
publicModel,
publicModelSid
from bus_sales_order_model
where salesOrderSid = #{saleOrderSid}
</select>

15
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderprice/BusSalesOrderPriceService.java

@ -156,6 +156,21 @@ public class BusSalesOrderPriceService extends MybatisBaseService<BusSalesOrderP
vo.setOverallPrice(bigDecimalFinalPrice.toString());
}
vo.setSaleOrderSid(sid);
if(StringUtils.isNotBlank(vo.getGuidancePrice())){
vo.setGuidancePrice(String.valueOf((int)Math.floor(Double.valueOf(vo.getGuidancePrice()))));
}
if(StringUtils.isNotBlank(vo.getTransactionPrice())){
vo.setTransactionPrice(String.valueOf((int)Math.floor(Double.valueOf(vo.getTransactionPrice()))));
}
if(StringUtils.isNotBlank(vo.getOverallPrice())){
vo.setOverallPrice(String.valueOf((int)Math.floor(Double.valueOf(vo.getOverallPrice()))));
}
if(StringUtils.isNotBlank(vo.getTopAndTrailerPrice())){
vo.setTopAndTrailerPrice(String.valueOf((int)Math.floor(Double.valueOf(vo.getTopAndTrailerPrice()))));
}
if(StringUtils.isNotBlank(vo.getTotalPrice())){
vo.setTotalPrice(String.valueOf((int)Math.floor(Double.valueOf(vo.getTotalPrice()))));
}
return rb.success().setData(vo);
}

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java

@ -55,7 +55,7 @@ public interface FinKingDeeFeign {
@ApiOperation("保存采购入库单的接口")
@PostMapping("/draftStkInStock")
@ResponseBody
public ResultBean<List<KingDeeResult>> draftStkInStock(@RequestBody StkInStock stkInStock) ;
public ResultBean<List<KingDeeResult>> draftStkInStock(@RequestBody StkInStock stkInStock) throws Exception;
@ApiOperation("保存采购退料单的接口")
@PostMapping("/draftPurMrb")

42
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillUrl.java

@ -0,0 +1,42 @@
package com.yxt.anrui.fin.api.kingdee;
public enum KingDeeBillUrl {
/* // 数据保存接口地址
private static String Save_URL = "/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc";
//数据提交接口的地址
private static String Submit_URL = "/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc";
//数据审核接口的地址
private static String Audit_URL = "/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc";
//数据分配接口的地址
private static String Allocate_URL = "/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Allocate.common.kdsvc";
//查看单据接口的地址
private static String View_URL = "/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc";
//查询单据接口的地址
private static String ExecuteBillQuery_URL = "/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery.common.kdsvc";
//登录,校验用户的API接口地址
private static String Login_URL = "/k3cloud/Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc";
*/
SAVE_URL("/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc","数据保存接口地址"),
SUBMIT_URL("/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc","数据提交接口的地址"),
AUDIT_URL("/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc","数据审核接口的地址"),
ALLOCATE_URL("/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Allocate.common.kdsvc","数据分配接口的地址"),
VIEW_URL("/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc","查看单据接口的地址"),
EXECUTEBILLQUERY_URL("/k3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery.common.kdsvc","查询单据接口的地址"),
LOGIN_URL("/k3cloud/Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc","登录,校验用户的API接口地址");
private String URL;
private String NAME;
KingDeeBillUrl(String URL, String NAME) {
this.URL = URL;
this.NAME = NAME;
}
public String getURL() {
return URL;
}
public String getNAME() {
return NAME;
}
}

62
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/appayable/APPayable.java

@ -16,96 +16,96 @@ import java.util.List;
public class APPayable {
@ApiModelProperty("车辆入账单sid")
private String sid;
public String sid;
@ApiModelProperty("用户sid")
@NotBlank(message = "用户sid不能为空")
private String userSid;
public String userSid;
@ApiModelProperty("申请编号")
@NotBlank(message = "申请编号不能为空")
private String applicationCode;
public String applicationCode;
@ApiModelProperty("申请人sid")
@NotBlank(message = "申请人不能为空")
private String applicationSid;
public String applicationSid;
@ApiModelProperty("申请人名称")
@NotBlank(message = "申请人不能为空")
private String applicationName;
public String applicationName;
@ApiModelProperty("申请日期")
@Pattern(regexp = "^(\\s*)|([1-9]\\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1]))$", message = "申请日期日期格式不正确")
private String applicationDate;
public String applicationDate;
@ApiModelProperty("采购订单sid")
@NotBlank(message = "采购订单不能为空")
private String vehicleOrderSid;
public String vehicleOrderSid;
@ApiModelProperty("采购订单编号")
@NotBlank(message = "采购订单编号不能为空")
private String purchaseOrderNo;
public String purchaseOrderNo;
@ApiModelProperty("车型sid ")
@NotBlank(message = "车型不能为空")
private String modelSid;
public String modelSid;
@ApiModelProperty("车型名称 ")
@NotBlank(message = "车型名称不能为空")
private String modelName;
public String modelName;
@ApiModelProperty("常用配置 ")
private String configName;
public String configName;
@ApiModelProperty("常用配置Sid")
private String configSid;
public String configSid;
@ApiModelProperty("厂家合同价")
private BigDecimal contractPrice;
public BigDecimal contractPrice;
@ApiModelProperty("其中上装价格")
private BigDecimal amongSzPrice;
public BigDecimal amongSzPrice;
@ApiModelProperty("上装价格计算依据")
private String szPriceCalBasis;
public String szPriceCalBasis;
@ApiModelProperty("一次运费")
private BigDecimal onceFreight;
public BigDecimal onceFreight;
@ApiModelProperty("二次运费")
private BigDecimal secondaryFreight;
public BigDecimal secondaryFreight;
@ApiModelProperty("下浮比例")
private String lowerProportion;
public String lowerProportion;
@ApiModelProperty("下浮金额")
private BigDecimal lowerMoney;
public BigDecimal lowerMoney;
@ApiModelProperty("下浮合计")
private BigDecimal lowerTotal;
public BigDecimal lowerTotal;
@ApiModelProperty("下浮备注")
private String lowerRemarks;
public String lowerRemarks;
@ApiModelProperty("厂家结算价")
private BigDecimal costPrice;
public BigDecimal costPrice;
@ApiModelProperty("内部编码")
private String insideCode;
public String insideCode;
@ApiModelProperty("厂家入库日期")
private String priceDate;
public String priceDate;
@ApiModelProperty("厂家发车日期")
private String departureDate;
public String departureDate;
@ApiModelProperty("备注")
private String remarks;
public String remarks;
@ApiModelProperty("流程状态")
private String nodeState;
public String nodeState;
@ApiModelProperty("车辆台数")
private String num;
public String num;
@ApiModelProperty("车辆列表")
private List<ScmApplyInboundVehicleDto> vehicleList;
public List<ScmApplyInboundVehicleDto> vehicleList;
@Data
public static class ScmApplyInboundVehicleDto implements Dto {
@ApiModelProperty("物料编码")
private String vinNo;
public String vinNo;
@ApiModelProperty("物料名称")
private String remarks;
public String remarks;
}
/**

46
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/appaybill/ApPayBill.java

@ -17,46 +17,46 @@ public class ApPayBill {
@JsonProperty("FPOSTDATE")
@NotBlank
//登账日期:FPOSTDATE (必填项)
private String FPOSTDATE;
public String FPOSTDATE;
@JsonProperty("FDATE")
@NotBlank
//业务日期:FDATE (必填项)
private String FDATE;
public String FDATE;
/* @JsonProperty("FCONTACTUNITTYPE")
@NotBlank
//往来单位类型:FCONTACTUNITTYPE (必填项)
private String FCONTACTUNITTYPE="BD_Supplier";*/
public String FCONTACTUNITTYPE="BD_Supplier";*/
@JsonProperty("FCONTACTUNIT")
@NotBlank
//往来单位:FCONTACTUNIT (必填项)
private String FCONTACTUNIT="010001";
public String FCONTACTUNIT="010001";
/* @JsonProperty("FRECTUNITTYPE")
@NotBlank
//收款单位类型:FRECTUNITTYPE (必填项)
private String FRECTUNITTYPE="BD_Supplier";*/
public String FRECTUNITTYPE="BD_Supplier";*/
@JsonProperty("FRECTUNIT")
@NotBlank
//收款单位:FRECTUNIT (必填项)
private String FRECTUNIT="010001";
public String FRECTUNIT="010001";
@JsonProperty("FSETTLEORGID")
@NotBlank
//结算组织:FSETTLEORGID (必填项)
private String FSETTLEORGID="101";
public String FSETTLEORGID="101";
@JsonProperty("FPURCHASEORGID")
@NotBlank
//采购组织:FPURCHASEORGID
private String FPURCHASEORGID="101";
public String FPURCHASEORGID="101";
@JsonProperty("FPURCHASEDEPTID")
@NotBlank
//采购部门:FPURCHASEDEPTID(必填项)
private String FPURCHASEDEPTID="05.04";
public String FPURCHASEDEPTID="05.04";
@JsonProperty("FPAYORGID")
@NotBlank
//付款组织:FPAYORGID (必填项)
private String FPAYORGID="101";
public String FPAYORGID="101";
@JsonProperty("FPAYBILLENTRY")
@NotBlank
private List<FPAYBILLENTRY> FPAYBILLENTRY=new ArrayList<>();
public List<FPAYBILLENTRY> FPAYBILLENTRY=new ArrayList<>();
@Data
public static class FPAYBILLENTRY{
/**
@ -64,50 +64,50 @@ public class ApPayBill {
*/
@JsonProperty("FSETTLETYPEID")
@NotBlank
private String FSETTLETYPEID="02";
public String FSETTLETYPEID="02";
//付款用途:FPURPOSEID (必填项) SFKYT08_SYS:采购付款 SFKYT09_SYS:预付款
@JsonProperty("FPURPOSEID")
@NotBlank
private String FPURPOSEID;
public String FPURPOSEID;
@JsonProperty("FPAYTOTALAMOUNTFOR")
@NotBlank
//表体-应付金额:FPAYTOTALAMOUNTFOR
private double FPAYTOTALAMOUNTFOR;
public double FPAYTOTALAMOUNTFOR;
@JsonProperty("FPAYAMOUNTFOR_E")
@NotBlank
//付款金额:FPAYAMOUNTFOR_E
private double FPAYAMOUNTFOR_E;
public double FPAYAMOUNTFOR_E;
@JsonProperty("FSETTLEPAYAMOUNTFOR")
@NotBlank
//折后金额:FSETTLEPAYAMOUNTFOR
private double FSETTLEPAYAMOUNTFOR;
public double FSETTLEPAYAMOUNTFOR;
@JsonProperty("FREALPAYAMOUNTFOR_D")
@NotBlank
//表体-实付金额:FREALPAYAMOUNTFOR_D
private double FREALPAYAMOUNTFOR_D;
public double FREALPAYAMOUNTFOR_D;
@JsonProperty("FPAYAMOUNT_E")
@NotBlank
//付款金额本位币:FPAYAMOUNT_E
private double FPAYAMOUNT_E;
public double FPAYAMOUNT_E;
@JsonProperty("FACCOUNTID")
@NotBlank
//我方银行账号:FACCOUNTID 第1行分录,银行业务的结算方式,我方银行相关信息必录
private String FACCOUNTID;
public String FACCOUNTID;
@JsonProperty("FPOSTDATE")
@NotBlank
//登账日期:FPOSTDATE (必填项)
private String FPOSTDATE;
public String FPOSTDATE;
@JsonProperty("FRuZhangType")
@NotBlank
//入账类型:FRuZhangType (必填项)
private String FRuZhangType="1";
public String FRuZhangType="1";
@JsonProperty("FPayType")
@NotBlank
//支付类型:FPayType (必填项)
private String FPayType;
public String FPayType;
}
private final static ApPayBill apPayBill = new ApPayBill();
public final static ApPayBill apPayBill = new ApPayBill();
/*static {

70
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/arreceivable/ARReceivable.java

@ -16,107 +16,107 @@ import java.util.List;
public class ARReceivable {
@ApiModelProperty("车辆入账单sid")
private String sid;
public String sid;
@ApiModelProperty("用户sid")
@NotBlank(message = "用户sid不能为空")
private String userSid;
public String userSid;
@ApiModelProperty("申请编号")
@NotBlank(message = "申请编号不能为空")
private String applicationCode;
public String applicationCode;
@ApiModelProperty("申请人sid")
@NotBlank(message = "申请人不能为空")
private String applicationSid;
public String applicationSid;
@ApiModelProperty("申请人名称")
@NotBlank(message = "申请人不能为空")
private String applicationName;
public String applicationName;
@ApiModelProperty("申请日期")
@Pattern(regexp = "^(\\s*)|([1-9]\\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1]))$", message = "申请日期日期格式不正确")
private String applicationDate;
public String applicationDate;
@ApiModelProperty("采购订单sid")
@NotBlank(message = "采购订单不能为空")
private String vehicleOrderSid;
public String vehicleOrderSid;
@ApiModelProperty("采购订单编号")
@NotBlank(message = "采购订单编号不能为空")
private String purchaseOrderNo;
public String purchaseOrderNo;
@ApiModelProperty("车型sid ")
@NotBlank(message = "车型不能为空")
private String modelSid;
public String modelSid;
@ApiModelProperty("车型名称 ")
@NotBlank(message = "车型名称不能为空")
private String modelName;
public String modelName;
@ApiModelProperty("常用配置 ")
private String configName;
public String configName;
@ApiModelProperty("常用配置Sid")
private String configSid;
public String configSid;
@ApiModelProperty("厂家合同价")
private BigDecimal contractPrice;
public BigDecimal contractPrice;
@ApiModelProperty("其中上装价格")
private BigDecimal amongSzPrice;
public BigDecimal amongSzPrice;
@ApiModelProperty("上装价格计算依据")
private String szPriceCalBasis;
public String szPriceCalBasis;
@ApiModelProperty("一次运费")
private BigDecimal onceFreight;
public BigDecimal onceFreight;
@ApiModelProperty("二次运费")
private BigDecimal secondaryFreight;
public BigDecimal secondaryFreight;
@ApiModelProperty("下浮比例")
private String lowerProportion;
public String lowerProportion;
@ApiModelProperty("下浮金额")
private BigDecimal lowerMoney;
public BigDecimal lowerMoney;
@ApiModelProperty("下浮合计")
private BigDecimal lowerTotal;
public BigDecimal lowerTotal;
@ApiModelProperty("下浮备注")
private String lowerRemarks;
public String lowerRemarks;
@ApiModelProperty("厂家结算价")
private BigDecimal costPrice;
public BigDecimal costPrice;
@ApiModelProperty("内部编码")
private String insideCode;
public String insideCode;
@ApiModelProperty("厂家入库日期")
private String priceDate;
public String priceDate;
@ApiModelProperty("厂家发车日期")
private String departureDate;
public String departureDate;
@ApiModelProperty("备注")
private String remarks;
public String remarks;
@ApiModelProperty("流程状态")
private String nodeState;
public String nodeState;
@ApiModelProperty("车辆台数")
private String num;
public String num;
@ApiModelProperty("客户ID")
private String fcustomerid;
public String fcustomerid;
@ApiModelProperty("车辆列表")
private List<ScmApplyInboundVehicleDto> vehicleList;
public List<ScmApplyInboundVehicleDto> vehicleList;
@Data
public static class ScmApplyInboundVehicleDto implements Dto {
@ApiModelProperty("车辆信息sid")
private String sid;
public String sid;
@ApiModelProperty("车辆入库单sid")
private String applySid;
public String applySid;
@ApiModelProperty("车型sid")
private String modelSid;
public String modelSid;
@ApiModelProperty("车架号(VIN)")
private String vinNo;
public String vinNo;
@ApiModelProperty("备注")
private String remarks;
public String remarks;
}
}

8
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/auditKd/AuditKD.java

@ -10,14 +10,14 @@ import lombok.Data;
public class AuditKD {
// 2.1.CreateOrgId:创建者组织内码,字符串类型(非必录)
@JsonProperty("CreateOrgId")
private String CreateOrgId;
public String CreateOrgId;
//2.2.Numbers:单据编码集合,数组类型,格式:[No1,No2,...](使用编码时必录)
@JsonProperty("Numbers")
private String[] Numbers;
public String[] Numbers;
//2.3.Ids:单据内码集合,字符串类型,格式:"Id1,Id2,..."(使用内码时必录)
@JsonProperty("Ids")
private String Ids;
public String Ids;
//2.4.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult)
@JsonProperty("InterationFlags")
private String InterationFlags;
public String InterationFlags;
}

34
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/saloutstock/SalOutStock.java

@ -17,76 +17,76 @@ public class SalOutStock {
* 日期:FDate (必填项)
*/
@JsonProperty("FDate")
private String FDate;
public String FDate;
/**
* 销售组织:FSaleOrgId (必填项)
*/
@JsonProperty("FSaleOrgId")
private String FSaleOrgId;
public String FSaleOrgId;
/**
* 客户:FCustomerID (必填项)
*/
@JsonProperty("FCustomerID")
private String FCustomerID;
public String FCustomerID;
/**
* 销售部门:FSaleDeptID (必填项)
*/ @JsonProperty("FSaleDeptID")
private String FSaleDeptID;
public String FSaleDeptID;
/**
* 发货组织:FStockOrgId (必填项)
*/ //@JsonProperty("FStockOrgId")
// private String FStockOrgId;
// public String FStockOrgId;
/**
* 付款方:FPayerID FCustomerID
*/ @JsonProperty("FPayerID")
private String FPayerID;
public String FPayerID;
/**
* 项目类别:F_PAEZ_Assistant (必填项)
*/ /*@JsonProperty("F_PAEZ_Assistant")
private String F_PAEZ_Assistant;*/
public String F_PAEZ_Assistant;*/
/**
* 物料列表
*/
@JsonProperty("FEntity")
private List<FEntity> FEntity=new ArrayList<>();
public List<FEntity> FEntity=new ArrayList<>();
@Data
public static class FEntity{
/**
* 物料编码:FMaterialID
*/
@JsonProperty("FMaterialID")
private String FMaterialID;
public String FMaterialID;
/**
* 库存单位:FUnitID (必填项)
*/ @JsonProperty("FUnitID")
private String FUnitID;
public String FUnitID;
/**
* 实发数量:FRealQty
*/ @JsonProperty("FRealQty")
private double FRealQty;
public double FRealQty;
/**
* 批号:FLot
*/ @JsonProperty("Flot")
private String Flot;
public String Flot;
/**
* 货主:FOwnerID (必填项)
*/ @JsonProperty("FOwnerID")
private String FOwnerID;
public String FOwnerID;
/**
* 仓库:FStockID
*/ @JsonProperty("FStockID")
private String FStockID;
public String FStockID;
/**
* 库存状态:FStockStatusID
*/ @JsonProperty("FStockStatusID")
private String FStockStatusID;
public String FStockStatusID;
/**
* 销售单位:FSalUnitID
*/ @JsonProperty("FSalUnitID")
private String FSalUnitID;
public String FSalUnitID;
}
private final static SalOutStock salOutStock = new SalOutStock();
public final static SalOutStock salOutStock = new SalOutStock();
static {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

9
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stktransferdirect/StkTransferDirect.java

@ -21,6 +21,10 @@ public class StkTransferDirect {
@JsonProperty("FDestStockStatusId")
@NotBlank
public String FDestStockStatusId;
/* 调入仓库 (必填项)*/
@JsonProperty("FDestStockId")
@NotBlank
public String FDestStockId;
/*调出库存状态:FSrcStockStatusId (必填项)*/
@JsonProperty("FSrcStockStatusId")
@NotBlank
@ -73,10 +77,7 @@ public class StkTransferDirect {
@JsonProperty("FKeeperTypeId")
@NotBlank
public String FKeeperTypeId;
/* 调入仓库:FDestStockId (必填项)*/
@JsonProperty("FDestStockId")
@NotBlank
public String FDestStockId;
/* 单位:FUnitID (必填项)*/
// @JsonProperty("FUnitID")
// @NotBlank

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

@ -37,7 +37,7 @@ import com.yxt.anrui.fin.api.finpaymentrecord.*;
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill;
import com.yxt.anrui.fin.biz.finpaymentapply.FinPaymentapplyService;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.anrui.fin.biz.kingdee.appaybill.ApPayBillService;
import com.yxt.anrui.fin.biz.kingdee.saloutstock.appaybill.ApPayBillService;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;

11
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java

@ -13,7 +13,7 @@ import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb;
import com.yxt.anrui.fin.api.kingdee.saloutstock.SalOutStock;
import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock;
import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect;
import com.yxt.anrui.fin.biz.kingdee.appaybill.ApPayBillService;
import com.yxt.anrui.fin.biz.kingdee.saloutstock.appaybill.ApPayBillService;
import com.yxt.anrui.fin.biz.kingdee.appayable.APPayableService;
import com.yxt.anrui.fin.biz.kingdee.bdcustomer.BdCustomerService;
import com.yxt.anrui.fin.biz.kingdee.bdmaterial.BdMaterialService;
@ -30,7 +30,6 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
@Api(tags = "单据调用金蝶的保存接口")
@ -119,7 +118,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@PostMapping("/draftStkInStock")
@ResponseBody
@Override
public ResultBean draftStkInStock(@RequestBody StkInStock stkInStock) {
public ResultBean draftStkInStock(@RequestBody StkInStock stkInStock) throws Exception {
return stkInStockService.draftStkInStock(stkInStock);
}
@ApiOperation("保存采购退料单的接口")
@ -140,7 +139,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@PostMapping("/draftBdMaterial")
@ResponseBody
@Override
public ResultBean<List<KingDeeResult>> draftBdMaterial(@RequestBody BdMaterial bdMaterial) {
public ResultBean draftBdMaterial(@RequestBody BdMaterial bdMaterial) {
return bdMaterialService.draftBdMaterial(bdMaterial);
}
@ -184,7 +183,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@ResponseBody
@Override
public ResultBean<String> getKingDataInfoByNumber(@PathVariable("formId") String formId,@PathVariable("number") String number) {
return bdCustomerService.getKingDataInfoByNumber(formId,number);
return null;// bdCustomerService.accessKingDeeInterface(formId,number);
}
@ApiOperation("单据查询")
@ -192,7 +191,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@ResponseBody
@Override
public ResultBean<String> executeBillQuery() {
return bdCustomerService.getKingBillDataInfoList("","");
return null;//bdCustomerService.getKingBillDataInfoList("","");
}
}

164
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeService.java

@ -1,15 +1,12 @@
package com.yxt.anrui.fin.biz.kingdee;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSONString;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.result.ResultBean;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import java.lang.reflect.Field;
@ -29,10 +26,25 @@ public class FinKingDeeService {
* @param data
* @return
*/
public ResultBean<List<KingDeeResult>> saveBill(String formId,String data) throws Exception {
public ResultBean<String> accessKingDeeInterface(String formId,String data,String url) throws Exception {
ResultBean<String> listResultBean = accessKingDeeInterface(formId,data,null,null,url);
return listResultBean;
}
/**
* 调用金蝶的保存接口
* @param data
* @return
*/
public ResultBean<String> accessKingDeeInterface(String formId,String data,String username,String psssword,String url) throws Exception {
KingDeeParams kdp = getKingDeeParams(formId, data);
kdp.setPassword(psssword==null?KingDeeConfig.password:psssword);
kdp.setUserName(username==null?KingDeeConfig.userName:username);
if(StringUtils.isBlank(url)){
return new ResultBean<String>().fail().setMsg("url不能为空");
}
kdp.setUrl(url);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.SavePurRKD(kdp);
ResultBean<String> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
@ -41,103 +53,101 @@ public class FinKingDeeService {
* @param number
* @return
*/
public ResultBean<String> getKingDeeBillDataByNumber(String formId,String number) {
/* String data="{\"formId\":\""+formId+"\"," +
/* public ResultBean<List<KingDeeResult>> getKingDeeBillDataByNumber(String formId, String number) throws Exception {
*//* String data="{\"formId\":\""+formId+"\"," +
"\"data\":\"{\\\"CreateOrgId\\\":\\\"0\\\",\\\"Number\\\":\\\""+number+"\\\",\\\"Id\\\":\\\"\\\"}\"}";
KingDeeParams kdp = getKingDeeParams(formId, data);
log.info("kdp:{}", JSONObject.toJSONString(kdp));
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.getKingDeeBillDataByNumber(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;*/
return listResultBean;*//*
String data = getGetKDForNumbers(formId, number);
KingDeeParams kdp = getKingDeeParams(formId, data);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<String> listResultBean = KingDeeSaveSKD.getKingDeeBillDataByNumber(kdp);
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
}*/
/**
* 调用提交金蝶的数据接口
* @param formId
* @param data
* @return
*/
public ResultBean<List<KingDeeResult>> submitKingDeeBillData(String formId,String data) {
/*public ResultBean<List<KingDeeResult>> submitKingDeeBillData(String formId,String data) throws Exception {
KingDeeParams kdp = getKingDeeParams(formId, data);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.submitKingDeeBillData(kdp);
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
}*/
/**
* 调用提交金蝶的数据接口
* @param formId
* @param result
* @return
*/
public ResultBean<List<KingDeeResult>> submitKingDeeBillData(String formId,ResultBean<List<KingDeeResult>> result) {
/* public ResultBean<List<KingDeeResult>> submitKingDeeBillData(String formId,ResultBean<List<KingDeeResult>> result) throws Exception {
String data = getSubmitKD(result, formId);
KingDeeParams kdp = getKingDeeParams(formId, data);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.submitKingDeeBillData(kdp);
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
}*/
/**
* 调用审核金蝶的数据接口
* @param formId
* @param data
* @return
*/
public ResultBean<List<KingDeeResult>> auditKingDeeBillData(String formId,String data) {
/*public ResultBean<List<KingDeeResult>> auditKingDeeBillData(String formId,String data) throws Exception {
KingDeeParams kdp = getKingDeeParams(formId, data);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.auditKingDeeBillData(kdp);
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
}*/
/**
* 调用审核金蝶的数据接口
* @param formId
* @param result
* @return
*/
public ResultBean<List<KingDeeResult>> auditKingDeeBillData(String formId,ResultBean<List<KingDeeResult>> result) {
/* public ResultBean<List<KingDeeResult>> auditKingDeeBillData(String formId,ResultBean<List<KingDeeResult>> result) throws Exception {
String data = getAuditKD(result, formId);
KingDeeParams kdp = getKingDeeParams(formId, data);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.auditKingDeeBillData(kdp);
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
}*/
/**
* 调用分配金蝶的数据接口
* @param formId
* @param data
* @return
*/
public ResultBean<List<KingDeeResult>> allocateKingDeeBillData(String formId, String data) {
/*public ResultBean<List<KingDeeResult>> allocateKingDeeBillData(String formId, String data) throws Exception {
KingDeeParams kdp = getKingDeeParams(formId, data);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.allocateKingDeeBillData(kdp);
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
}*/
/**
* 调用分配金蝶的数据接口
* @param formId
* @param tOrgIds
* @param result
* @return
*/
public ResultBean<List<KingDeeResult>> allocateKingDeeBillData(String formId,String tOrgIds,ResultBean<List<KingDeeResult>> result){
/* public ResultBean<List<KingDeeResult>> allocateKingDeeBillData(String formId,String tOrgIds,ResultBean<List<KingDeeResult>> result) throws Exception {
String data = getAllocate(result,tOrgIds, formId);
KingDeeParams kdp = getKingDeeParams(formId, data);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.allocateKingDeeBillData(kdp);
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
}*/
private KingDeeParams getKingDeeParams(String formId, String data) {
KingDeeParams kdp=new KingDeeParams();
@ -197,19 +207,29 @@ public class FinKingDeeService {
}
/**
* 构造提交接口的数据格式
* @param resultBean
* @return
*/
public String getSubmitKD(ResultBean<List<KingDeeResult>> resultBean,String formId) {
public String getSubmitKD(String data,String formId) {
//2.1.CreateOrgId:创建者组织内码,字符串类型(非必录)
//2.2.Numbers:单据编码集合,数组类型,格式:[No1,No2,...](使用编码时必录)
//2.3.Ids:单据内码集合,字符串类型,格式:"Id1,Id2,..."(使用内码时必录)
List<KingDeeResult> data = resultBean.getData();
/* List<KingDeeResult> data = resultBean.getData();
StringBuilder Ids=new StringBuilder();
for (int i=0;i<data.size();i++){
Ids.append(data.get(i).getId()).append(",");
}
String s = Ids.toString();
s=s.substring(0,s.length()-1);*/
JSONObject jsonObject = JSONObject.parseObject(data);
JSONObject result = (JSONObject)jsonObject.get("Result");
JSONObject responseStatus = (JSONObject)result.get("ResponseStatus");
JSONArray successEntitys = (JSONArray)responseStatus.get("SuccessEntitys");
StringBuilder Ids=new StringBuilder();
for (int i=0;i<successEntitys.size();i++){
JSONObject o = (JSONObject)successEntitys.get(i);
Ids.append(o.get("Id")).append(",");
}
String s = Ids.toString();
s=s.substring(0,s.length()-1);
return "{\"formId\":\""+formId+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\"}\"}";
}
@ -218,14 +238,18 @@ public class FinKingDeeService {
* @param resultBean
* @return
*/
public String getAuditKD(ResultBean<List<KingDeeResult>> resultBean,String formId) {
public String getAuditKD(String data,String formId) {
//2.1.CreateOrgId:创建者组织内码,字符串类型(非必录)
//2.2.Numbers:单据编码集合,数组类型,格式:[No1,No2,...](使用编码时必录)
//2.3.Ids:单据内码集合,字符串类型,格式:"Id1,Id2,..."(使用内码时必录)
List<KingDeeResult> data = resultBean.getData();
JSONObject jsonObject = JSONObject.parseObject(data);
JSONObject result = (JSONObject)jsonObject.get("Result");
JSONObject responseStatus = (JSONObject)result.get("ResponseStatus");
JSONArray successEntitys = (JSONArray)responseStatus.get("SuccessEntitys");
StringBuilder Ids=new StringBuilder();
for (int i=0;i<data.size();i++){
Ids.append(data.get(i).getId()).append(",");
for (int i=0;i<successEntitys.size();i++){
JSONObject o = (JSONObject)successEntitys.get(i);
Ids.append(o.get("Id")).append(",");
}
String s = Ids.toString();
s=s.substring(0,s.length()-1);
@ -236,35 +260,39 @@ public class FinKingDeeService {
* @param resultBean
* @return
*/
public String getAllocate(ResultBean<List<KingDeeResult>> resultBean,String tOrgIds,String formId) {
public String getAllocate(String data,String tOrgIds,String formId) {
/* 2.1.PkIds被分配的基础资料内码集合字符串类型格式"PkId1,PkId2,..."必录
2.2.TOrgIds目标组织内码集合字符串类型格式"TOrgId1,TOrgId2,..."必录
2.3.IsAutoSubmitAndAudit是否自动提交与审核布尔类型默认false非必录*/
List<KingDeeResult> data = resultBean.getData();
JSONObject jsonObject = JSONObject.parseObject(data);
JSONObject result = (JSONObject)jsonObject.get("Result");
JSONObject responseStatus = (JSONObject)result.get("ResponseStatus");
JSONArray successEntitys = (JSONArray)responseStatus.get("SuccessEntitys");
StringBuilder Ids=new StringBuilder();
for (int i=0;i<data.size();i++){
Ids.append(data.get(i).getId()).append(",");
for (int i=0;i<successEntitys.size();i++){
JSONObject o = (JSONObject)successEntitys.get(i);
Ids.append(o.get("Id")).append(",");
}
String s = Ids.toString();
s=s.substring(0,s.length()-1);
/*{\"PkIds\":\"0\",\"TOrgIds\":\"\",\"IsAutoSubmitAndAudit\":\"false\"}*/
return "{\"formId\":\""+formId+"\",\"data\":\"{\\\"PkIds\\\":\\\""+s+"\\\",\\\"TOrgIds\\\":\\\""+tOrgIds+"\\\",\\\"IsAutoSubmitAndAudit\\\":\\\"true\\\"}\"}";
}
public ResultBean<String> getKingDataInfoByNumber(String formId,String number) {
ResultBean<String> kingDeeBillDataByNumber = getKingDeeBillDataByNumber(formId, number);
/* public ResultBean<List<KingDeeResult>> getKingDataInfoByNumber(String formId, String number) throws Exception {
ResultBean<List<KingDeeResult>> kingDeeBillDataByNumber = getKingDeeBillDataByNumber(formId, number);
return kingDeeBillDataByNumber;
}
}*/
public ResultBean<String> getKingBillDataInfoList(String formId,String jsonParam) {
/*String jsonParam="{\\\"FormId\\\":\\\""+KingDeeBillId.BD_MATERIAL+"\\\"," +
/* public ResultBean<List<KingDeeResult>> getKingBillDataInfoList(String formId, String jsonParam) throws Exception {
*//*String jsonParam="{\\\"FormId\\\":\\\""+KingDeeBillId.BD_MATERIAL+"\\\"," +
"\\\"FieldKeys\\\":\\\"\\\",\\\"FilterString\\\":\\\"FName=''\\\",\\\"OrderString\\\":\\\"\\\"," +
"\\\"TopRowCount\\\":\\\"0\\\",\\\"StartRow\\\":\\\"0\\\",\\\"Limit\\\":\\\"0\\\"}";*/
"\\\"TopRowCount\\\":\\\"0\\\",\\\"StartRow\\\":\\\"0\\\",\\\"Limit\\\":\\\"0\\\"}";*//*
KingDeeParams kdp = getKingDeeParams(formId, jsonParam);
log.info("kdp:{}",JSONObject.toJSONString(kdp));
ResultBean<String> listResultBean = KingDeeSaveSKD.getKingBillDataInfoList(kdp);
ResultBean<List<KingDeeResult>> listResultBean = KingDeeSaveSKD.accessKingDeeInterface(kdp);
log.info("listResultBean:{}",JSONObject.toJSONString(listResultBean));
return listResultBean;
}
}*/
/**
* 调用金蝶接口的数据格式
@ -278,6 +306,42 @@ public class FinKingDeeService {
* 接口的主要业务参数
*/
private String data;
/**
* 登录金蝶的用户名称
*/
private String userName;
/**
* 登录金蝶的密码
*/
private String password;
/**
* url
*/
private String url;
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public void setFormId(String formId) {
this.formId = formId;

33
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/KingDeeConfig.java

@ -0,0 +1,33 @@
package com.yxt.anrui.fin.biz.kingdee;
public class KingDeeConfig {
public static String sessionkey = "kdservice-sessionid";
public static String aspnetsessionkey = "ASP.NET_SessionId";
public static String sessionValue = "";
public static String aspnetsessionValue = "";
/**
* 登录金蝶的账户信息
*/
public static String acctID = "61dce6601125a0";
/**
* 登录金蝶的账户信息
*/
public static String userName = "信息部1";
/**
* 登录金蝶的账户信息
*/
public static String password = "123321";
/**
* 登录金蝶的账户信息
*/
public static String userName_administrator = "administrator";
/**
* 登录金蝶的账户信息
*/
public static String password_administrator = "ANrui123456.";
/**
* 登录金蝶的账户信息
*/
public static String lcid = "2052";
public static String url="http://121.36.43.55" ;
}

340
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/KingDeeSaveSKD.java

@ -3,6 +3,7 @@ package com.yxt.anrui.fin.biz.kingdee;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.auditKd.AuditKD;
import com.yxt.anrui.fin.api.kingdee.submitkd.SubmitKD;
@ -26,70 +27,23 @@ import java.util.Map;
public class KingDeeSaveSKD {
private static Logger log= LoggerFactory.getLogger(KingDeeSaveSKD.class);
private static String sessionkey = "kdservice-sessionid";
private static String aspnetsessionkey = "ASP.NET_SessionId";
private static String sessionValue = "";
private static String aspnetsessionValue = "";
/**
* 登录金蝶的账户信息
*/
private static String acctID = "61dce6601125a0";
/**
* 登录金蝶的账户信息
*/
private static String userName = "信息部1";
/**
* 登录金蝶的账户信息
*/
private static String password = "123321";
/**
* 登录金蝶的账户信息
*/
private static String userName_administrator = "administrator";
/**
* 登录金蝶的账户信息
*/
private static String password_administrator = "ANrui123456.";
/**
* 登录金蝶的账户信息
*/
private static String lcid = "2052";
private static String url="http://121.36.43.55/k3cloud/Kingdee.BOS.WebApi.ServicesStub.";
// 数据保存接口地址
private static String Save_URL = url+"DynamicFormService.Save.common.kdsvc";
//数据提交接口的地址
private static String Submit_URL = url+"DynamicFormService.Submit.common.kdsvc";
//数据审核接口的地址
private static String Audit_URL = url+"DynamicFormService.Audit.common.kdsvc";
//数据分配接口的地址
private static String Allocate_URL = url+"DynamicFormService.Allocate.common.kdsvc";
//查看单据接口的地址
private static String View_URL = url+"DynamicFormService.View.common.kdsvc";
//查询单据接口的地址
private static String ExecuteBillQuery_URL = url+"DynamicFormService.ExecuteBillQuery.common.kdsvc";
//登录,校验用户的API接口地址
private static String Login_URL = url+"AuthService.ValidateUser.common.kdsvc";
/**
* 保存采购入库单
*
* @throws Exception
*/
@SuppressWarnings({"resource", "deprecation"})
public static ResultBean<List<KingDeeResult> > SavePurRKD(FinKingDeeService.KingDeeParams jsonParam ) throws Exception {
public static ResultBean<String> accessKingDeeInterface(FinKingDeeService.KingDeeParams jsonParam ) throws Exception {
// 定义httpClient的实例
HttpClient httpclient = new DefaultHttpClient();
/********** 用户登录Begin ************************/
ResultBean<List<KingDeeResult>> rb1 = loginKingDeeSystem(httpclient);
if (!rb1.getSuccess()) return rb1;
ResultBean<Map<String, String>> rb1 = loginKingDeeSystem(httpclient, jsonParam.getUserName(), jsonParam.getPassword());
if (!rb1.getSuccess()) return ResultBean.fireFail();
/********** 用户登录END ************************/
/********** 保存Beigin************************/
return saveKingDeeBillData(jsonParam, httpclient);
String sessionValue = rb1.getData().get("sessionValue");
String aspnetsessionValue = rb1.getData().get("aspnetsessionValue");
return accessKingDeeInterface(jsonParam, httpclient,sessionValue,aspnetsessionValue);
/********** 保存采购入库单End************************/
}
@ -99,74 +53,19 @@ public class KingDeeSaveSKD {
* @param httpclient
* @return
*/
public static ResultBean<List<KingDeeResult>> saveKingDeeBillData(FinKingDeeService.KingDeeParams jsonParam, HttpClient httpclient) {
ResultBean<List<KingDeeResult> > rb= ResultBean.fireFail();
try {
URI save_uri = new URI(Save_URL);
HttpPost method = new HttpPost(save_uri);
log.info(jsonParam.getData());
/*String ss="{\"formId\":\"AR_receivable\",\"data\":\"{\\\"Creator\\\":\\\"\\\",\\\"NeedUpDateFields\\\":[],\\\"NeedReturnFields\\\":[],\\\"IsDeleteEntry\\\":\\\"True\\\",\\\"SubSystemId\\\":\\\"\\\",\\\"IsVerifyBaseDataField\\\":\\\"false\\\",\\\"IsEntryBatchFill\\\":\\\"True\\\",\\\"ValidateFlag\\\":\\\"True\\\",\\\"NumberSearch\\\":\\\"True\\\",\\\"InterationFlags\\\":\\\"\\\",\\\"Model\\\":{\\\"FID\\\":0,\\\"FBillTypeID\\\":{\\\"FNUMBER\\\":\\\"YSD01_SYS\\\"},\\\"FDATE\\\":\\\"2022-08-02 00:00:00\\\",\\\"FISINIT\\\":false,\\\"FENDDATE_H\\\":\\\"2022-08-02 00:00:00\\\",\\\"FCUSTOMERID\\\":{\\\"FNumber\\\":\\\" JXYXB\\\"},\\\"FCURRENCYID\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FISPRICEEXCLUDETAX\\\":true,\\\"FSETTLEORGID\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FPAYORGID\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FSALEORGID\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FISTAX\\\":true,\\\"FCancelStatus\\\":\\\"A\\\",\\\"FBUSINESSTYPE\\\":\\\"BZ\\\",\\\"FSetAccountType\\\":\\\"1\\\",\\\"FISHookMatch\\\":false,\\\"FISINVOICEARLIER\\\":false,\\\"F_PMZC_Assistant2\\\":{\\\"FNumber\\\":\\\"01\\\"},\\\"FsubHeadSuppiler\\\":{\\\"FORDERID\\\":{\\\"FNumber\\\":\\\" JXYXB\\\"},\\\"FTRANSFERID\\\":{\\\"FNumber\\\":\\\" JXYXB\\\"},\\\"FChargeId\\\":{\\\"FNumber\\\":\\\" JXYXB\\\"}},\\\"FsubHeadFinc\\\":{\\\"FACCNTTIMEJUDGETIME\\\":\\\"2022-08-02 00:00:00\\\",\\\"FMAINBOOKSTDCURRID\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FEXCHANGETYPE\\\":{\\\"FNumber\\\":\\\"HLTX01_SYS\\\"},\\\"FExchangeRate\\\":1.0,\\\"FTaxAmountFor\\\":121.01,\\\"FNoTaxAmountFor\\\":12100.99},\\\"FEntityDetail\\\":[{\\\"FMATERIALID\\\":{\\\"FNumber\\\":\\\" JX091054\\\"},\\\"FMaterialDesc\\\":\\\"X牵引6*4-550超\\\",\\\"FPRICEUNITID\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FPriceQty\\\":1.0,\\\"FTaxPrice\\\":12222.0,\\\"FPrice\\\":12100.99,\\\"FEntryTaxRate\\\":1.0,\\\"FNoTaxAmountFor_D\\\":12100.99,\\\"FTAXAMOUNTFOR_D\\\":121.01,\\\"FALLAMOUNTFOR_D\\\":12222.0,\\\"FDeliveryControl\\\":false,\\\"FStockUnitId\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FStockQty\\\":1.0,\\\"FIsFree\\\":false,\\\"FStockBaseQty\\\":1.0,\\\"FSalUnitId\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FSalQty\\\":1.0,\\\"FSalBaseQty\\\":1.0,\\\"FPriceBaseDen\\\":1.0,\\\"FSalBaseNum\\\":1.0,\\\"FStockBaseNum\\\":1.0}],\\\"FEntityPlan\\\":[{\\\"FENDDATE\\\":\\\"2022-08-02 00:00:00\\\",\\\"FPAYRATE\\\":100.0,\\\"FPAYAMOUNTFOR\\\":12222.0}]}}\"}";
log.info("ss-:{}",ss);*/
/* String ss="{\"formId\":\"AP_PAYBILL\",\"data\":\"{\\\"Creator\\\":\\\"\\\",\\\"NeedUpDateFields\\\":[],\\\"NeedReturnFields\\\":[],\\\"IsDeleteEntry\\\":\\\"True\\\",\\\"SubSystemId\\\":\\\"\\\",\\\"IsVerifyBaseDataField\\\":\\\"false\\\",\\\"IsEntryBatchFill\\\":\\\"True\\\",\\\"ValidateFlag\\\":\\\"True\\\",\\\"NumberSearch\\\":\\\"True\\\",\\\"InterationFlags\\\":\\\"\\\",\\\"Model\\\":{\\\"FID\\\":0,\\\"FBillTypeID\\\":{\\\"FNUMBER\\\":\\\"FKDLX01_SYS\\\"},\\\"FDATE\\\":\\\"2022-08-10 00:00:00\\\",\\\"FCONTACTUNITTYPE\\\":\\\"BD_Supplier\\\",\\\"FCONTACTUNIT\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FRECTUNITTYPE\\\":\\\"BD_Supplier\\\",\\\"FRECTUNIT\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FISINIT\\\":false,\\\"FCURRENCYID\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FEXCHANGERATE\\\":1.0,\\\"FSETTLERATE\\\":1.0,\\\"FSETTLEORGID\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FPURCHASEORGID\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FPURCHASEDEPTID\\\":{\\\"FNumber\\\":\\\"05.04\\\"},\\\"FDOCUMENTSTATUS\\\":\\\"Z\\\",\\\"FCancelStatus\\\":\\\"A\\\",\\\"FPAYORGID\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FISSAMEORG\\\":true,\\\"FIsCredit\\\":false,\\\"FSETTLECUR\\\":{\\\"FNUMBER\\\":\\\"PRE001\\\"},\\\"FIsWriteOff\\\":false,\\\"FREALPAY\\\":false,\\\"F_PAEZ_Assistant\\\":{\\\"FNumber\\\":\\\"001\\\"},\\\"FPAYBILLENTRY\\\":[{\\\"FSETTLETYPEID\\\":{\\\"FNumber\\\":\\\"02\\\"},\\\"FPURPOSEID\\\":{\\\"FNumber\\\":\\\"SFKYT08_SYS\\\"},\\\"FPAYTOTALAMOUNTFOR\\\":1000.0,\\\"FPAYAMOUNTFOR_E\\\":1000.0,\\\"FSETTLEPAYAMOUNTFOR\\\":1000.0,\\\"FREALPAYAMOUNTFOR_D\\\":1000.0,\\\"FPAYAMOUNT_E\\\":1000.0,\\\"FACCOUNTID\\\":{\\\"FNumber\\\":\\\"100473861600010002\\\"},\\\"FPOSTDATE\\\":\\\"2022-08-10 00:00:00\\\",\\\"FRuZhangType\\\":\\\"1\\\",\\\"FPayType\\\":\\\"A\\\"}]}}\"}";
log.info("ss-:{}",ss);*/
/*String ss="{\"formId\":\"STK_InStock\",\"data\":\"{\\\"Creator\\\":\\\"\\\",\\\"NeedUpDateFields\\\":[],\\\"NeedReturnFields\\\":[],\\\"IsDeleteEntry\\\":\\\"True\\\",\\\"SubSystemId\\\":\\\"\\\",\\\"IsVerifyBaseDataField\\\":\\\"false\\\",\\\"IsEntryBatchFill\\\":\\\"True\\\",\\\"ValidateFlag\\\":\\\"True\\\",\\\"NumberSearch\\\":\\\"True\\\",\\\"InterationFlags\\\":\\\"\\\",\\\"Model\\\":{\\\"FID\\\":0,\\\"FBillTypeID\\\":{\\\"FNUMBER\\\":\\\"RKD01_SYS\\\"},\\\"FDate\\\":\\\"2022-08-12 00:00:00\\\",\\\"FStockOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FDemandOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FPurchaseOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FPurchaseDeptId\\\":{\\\"FNumber\\\":\\\"05.04\\\"},\\\"FSupplierId\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FSupplyId\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FSettleId\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FChargeId\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FOwnerTypeIdHead\\\":\\\"BD_OwnerOrg\\\",\\\"FOwnerIdHead\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FInStockFin\\\":{\\\"FSettleOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FSettleCurrId\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FIsIncludedTax\\\":true,\\\"FPriceTimePoint\\\":\\\"1\\\",\\\"FLocalCurrId\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FExchangeTypeId\\\":{\\\"FNumber\\\":\\\"HLTX01_SYS\\\"},\\\"FExchangeRate\\\":1.0,\\\"FISPRICEEXCLUDETAX\\\":true},\\\"FInStockEntry\\\":[{\\\"FRowType\\\":\\\"Standard\\\",\\\"FMaterialId\\\":{\\\"FNumber\\\":\\\" JX091054\\\"},\\\"FUnitID\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FRealQty\\\":1.0,\\\"FPriceUnitID\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FLot\\\": {\\\"FNumber\\\": \\\"1234567890\\\"},\\\"FStockId\\\":{\\\"FNumber\\\":\\\"CK001\\\"},\\\"FTaxPrice\\\":1000.0,\\\"FPrice\\\":1000.0,\\\"FStockStatusId\\\":{\\\"FNumber\\\":\\\"KCZT01_SYS\\\"},\\\"FGiveAway\\\":false,\\\"FCheckInComing\\\":false,\\\"FIsReceiveUpdateStock\\\":false,\\\"FPriceBaseQty\\\":1.0,\\\"FRemainInStockUnitId\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FBILLINGCLOSE\\\":false,\\\"FRemainInStockQty\\\":1.0,\\\"FAPNotJoinQty\\\":1.0,\\\"FRemainInStockBaseQty\\\":1.0}]}}\"}";
log.info("ss-:{}",ss);*/
/*String ss="{\"formId\":\"PUR_MRB\",\"data\":\"{\\\"Creator\\\":\\\"\\\",\\\"NeedUpDateFields\\\":[],\\\"NeedReturnFields\\\":[],\\\"IsDeleteEntry\\\":\\\"True\\\",\\\"SubSystemId\\\":\\\"\\\",\\\"IsVerifyBaseDataField\\\":\\\"false\\\",\\\"IsEntryBatchFill\\\":\\\"True\\\",\\\"ValidateFlag\\\":\\\"True\\\",\\\"NumberSearch\\\":\\\"True\\\",\\\"InterationFlags\\\":\\\"\\\",\\\"Model\\\":{\\\"FID\\\":0,\\\"FBillTypeID\\\":{\\\"FNUMBER\\\":\\\"TLD01_SYS\\\"},\\\"FDate\\\":\\\"2022-08-12 00:00:00\\\",\\\"FMRTYPE\\\":\\\"B\\\",\\\"FMRMODE\\\":\\\"A\\\",\\\"FStockOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FRequireOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FPurchaseOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FSupplierID\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FACCEPTORID\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FSettleId\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FCHARGEID\\\":{\\\"FNumber\\\":\\\"010001\\\"},\\\"FOwnerTypeIdHead\\\":\\\"BD_OwnerOrg\\\",\\\"FOwnerIdHead\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FPURMRBFIN\\\":{\\\"FSettleOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FSettleCurrId\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FIsIncludedTax\\\":true,\\\"FPRICETIMEPOINT\\\":\\\"1\\\",\\\"FLOCALCURRID\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FEXCHANGETYPEID\\\":{\\\"FNumber\\\":\\\"HLTX01_SYS\\\"},\\\"FEXCHANGERATE\\\":1.0,\\\"FISPRICEEXCLUDETAX\\\":true},\\\"FPURMRBENTRY\\\":[{\\\"FRowType\\\":\\\"Standard\\\",\\\"FMATERIALID\\\":{\\\"FNumber\\\":\\\" JX091054\\\"},\\\"FMaterialDesc\\\":\\\"X牵引6*4-550超\\\",\\\"FUnitID\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"Flot\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FRMREALQTY\\\":1.0,\\\"FREPLENISHQTY\\\":1.0,\\\"FKEAPAMTQTY\\\":1.0,\\\"FPRICEUNITID\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FSTOCKID\\\":{\\\"FNumber\\\":\\\"CK001\\\"},\\\"FStockStatusId\\\":{\\\"FNumber\\\":\\\"KCZT01_SYS\\\"},\\\"FIsReceiveUpdateStock\\\":false,\\\"FGiveAway\\\":false,\\\"FPriceBaseQty\\\":1.0,\\\"FCarryUnitId\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FCarryQty\\\":1.0,\\\"FCarryBaseQty\\\":1.0,\\\"FBILLINGCLOSE\\\":false,\\\"FIsStock\\\":false}]}}\"}";
log.info("ss-:{}",ss);*/
/*String ss="{\"formId\":\"SAL_OUTSTOCK\",\"data\":\"{\\\"Creator\\\":\\\"\\\",\\\"NeedUpDateFields\\\":[],\\\"NeedReturnFields\\\":[],\\\"IsDeleteEntry\\\":\\\"True\\\",\\\"SubSystemId\\\":\\\"\\\",\\\"IsVerifyBaseDataField\\\":\\\"false\\\",\\\"IsEntryBatchFill\\\":\\\"True\\\",\\\"ValidateFlag\\\":\\\"True\\\",\\\"NumberSearch\\\":\\\"True\\\",\\\"InterationFlags\\\":\\\"\\\",\\\"Model\\\":{\\\"FID\\\":0,\\\"FBillTypeID\\\":{\\\"FNUMBER\\\":\\\"XSCKD01_SYS\\\"},\\\"FDate\\\":\\\"2022-08-15 00:00:00\\\",\\\"FSaleOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FCustomerID\\\":{\\\"FNumber\\\":\\\" JXYXB\\\"},\\\"FSaleDeptID\\\":{\\\"FNumber\\\":\\\"05.04\\\"},\\\"FStockOrgId\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FReceiverID\\\":{\\\"FNumber\\\":\\\" JXYXB\\\"},\\\"FSettleID\\\":{\\\"FNumber\\\":\\\" JXYXB\\\"},\\\"FPayerID\\\":{\\\"FNumber\\\":\\\" JXYXB\\\"},\\\"FOwnerTypeIdHead\\\":\\\"BD_OwnerOrg\\\",\\\"FIsTotalServiceOrCost\\\":false,\\\"F_PAEZ_Assistant\\\":{\\\"FNumber\\\":\\\"00\\\"},\\\"SubHeadEntity\\\":{\\\"FSettleCurrID\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FSettleOrgID\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FIsIncludedTax\\\":true,\\\"FLocalCurrID\\\":{\\\"FNumber\\\":\\\"PRE001\\\"},\\\"FExchangeTypeID\\\":{\\\"FNumber\\\":\\\"HLTX01_SYS\\\"},\\\"FExchangeRate\\\":1.0,\\\"FIsPriceExcludeTax\\\":true},\\\"FEntity\\\":[{\\\"FRowType\\\":\\\"Standard\\\",\\\"FMaterialID\\\":{\\\"FNumber\\\":\\\" JX091054\\\"},\\\"FUnitID\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FRealQty\\\":1.0,\\\"FIsFree\\\":false,\\\"FOwnerTypeID\\\":\\\"BD_OwnerOrg\\\",\\\"Flot\\\":{\\\"FNumber\\\":\\\"1233321\\\"},\\\"FOwnerID\\\":{\\\"FNumber\\\":\\\"101\\\"},\\\"FStockID\\\":{\\\"FNumber\\\":\\\"CK001\\\"},\\\"FStockStatusID\\\":{\\\"FNumber\\\":\\\"KCZT01_SYS\\\"},\\\"FSalUnitID\\\":{\\\"FNumber\\\":\\\"liang\\\"},\\\"FSALUNITQTY\\\":1.0,\\\"FSALBASEQTY\\\":1.0,\\\"FPRICEBASEQTY\\\":1.0,\\\"FOUTCONTROL\\\":false,\\\"FIsOverLegalOrg\\\":false,\\\"FARNOTJOINQTY\\\":1.0}]}}\"}";
log.info("ss-:{}",ss);*/
//StringEntity entity = new StringEntity(ss, "utf-8");
StringEntity entity = new StringEntity(jsonParam.getData(), "utf-8");
log.info(JSON.toJSONString(entity));
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
//把成功登录的Session信息传进去,获取连接信息
method.setHeader(sessionkey, sessionValue);
method.setHeader(aspnetsessionkey, aspnetsessionValue);
//方法参数
method.setEntity(entity);
HttpResponse result = httpclient.execute(method);
// 请求发送成功,并得到响应
if (result.getStatusLine().getStatusCode() == 200) {
log.info("请求成功");
// 读取服务器返回过来的json字符串数据
String str = EntityUtils.toString(result.getEntity());
if(StringUtils.isBlank(str)){
return rb.setMsg("操作失败");
}
log.info(str);
// submitKingDeeBillData();
return createResultBean(str);
}
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
/**
* 调用提交金蝶的数据接口
* @param jsonParam
* @return
*/
public static ResultBean<List<KingDeeResult>> submitKingDeeBillData(FinKingDeeService.KingDeeParams jsonParam) {
// 定义httpClient的实例
HttpClient httpclient = new DefaultHttpClient();
/********** 用户登录Begin ************************/
ResultBean<List<KingDeeResult>> rb1 = loginKingDeeSystem(httpclient);
if (!rb1.getSuccess()) return rb1;
ResultBean<List<KingDeeResult> > rb= ResultBean.fireFail();
private static ResultBean<String> accessKingDeeInterface(FinKingDeeService.KingDeeParams jsonParam,
HttpClient httpclient,String aspnetsessionkey,String aspnetsessionValue) {
ResultBean<String> rb= ResultBean.fireFail();
try {
URI save_uri = new URI(Submit_URL);
URI save_uri = new URI(KingDeeConfig.url+jsonParam.getUrl());
HttpPost method = new HttpPost(save_uri);
log.info(jsonParam.getData());
//String ss= "{\"formId\":\"BD_MATERIAL\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\"6263811\\\"}\"}";
//StringEntity entity = new StringEntity(ss, "utf-8");
StringEntity entity = new StringEntity(jsonParam.getData(), "utf-8");
log.info(JSON.toJSONString(entity));
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
//把成功登录的Session信息传进去,获取连接信息
method.setHeader(sessionkey, sessionValue);
method.setHeader(KingDeeConfig.sessionkey, KingDeeConfig.sessionValue);
method.setHeader(aspnetsessionkey, aspnetsessionValue);
//方法参数
method.setEntity(entity);
@ -180,199 +79,24 @@ public class KingDeeSaveSKD {
return rb.setMsg("操作失败");
}
log.info(str);
return createResultBean(str);
return rb.success().setData(str);//createResultBean(str);
}
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
/**
* 调用审核金蝶的数据接口
* @param jsonParam
* @return
*/
public static ResultBean<List<KingDeeResult>> auditKingDeeBillData(FinKingDeeService.KingDeeParams jsonParam) {
// 定义httpClient的实例
HttpClient httpclient = new DefaultHttpClient();
/********** 用户登录Begin ************************/
ResultBean<List<KingDeeResult>> rb1 = loginKingDeeSystem(httpclient);
if (!rb1.getSuccess()) return rb1;
ResultBean<List<KingDeeResult> > rb= ResultBean.fireFail();
public static ResultBean<Map<String,String>> loginKingDeeSystem( HttpClient httpclient,String userName,String password) {
ResultBean<Map<String,String>> rb= ResultBean.fireFail();
try {
URI save_uri = new URI(Audit_URL);
HttpPost method = new HttpPost(save_uri);
//采购入库单保存参数
log.info("jsonParam:{}",jsonParam);
StringEntity entity = new StringEntity(jsonParam.getData(), "utf-8");
log.info(JSON.toJSONString(entity));
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
//把成功登录的Session信息传进去,获取连接信息
method.setHeader(sessionkey, sessionValue);
method.setHeader(aspnetsessionkey, aspnetsessionValue);
//方法参数
method.setEntity(entity);
HttpResponse result = httpclient.execute(method);
// 请求发送成功,并得到响应
if (result.getStatusLine().getStatusCode() == 200) {
log.info("请求成功");
// 读取服务器返回过来的json字符串数据
String str = EntityUtils.toString(result.getEntity());
if(StringUtils.isBlank(str)){
return rb.setMsg("操作失败");
}
log.info(str);
return createResultBean(str);
}
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
/**
* 分配金蝶返回的数据
* @param jsonParam
* @return
*/
public static ResultBean<List<KingDeeResult>> allocateKingDeeBillData(FinKingDeeService.KingDeeParams jsonParam) {
// 定义httpClient的实例
HttpClient httpclient = new DefaultHttpClient();
/********** 用户登录Begin ************************/
ResultBean<List<KingDeeResult>> rb1 = loginKingDeeSystem(httpclient);
if (!rb1.getSuccess()) return rb1;
ResultBean<List<KingDeeResult> > rb= ResultBean.fireFail();
try {
URI save_uri = new URI(Allocate_URL);
HttpPost method = new HttpPost(save_uri);
//采购入库单保存参数
log.info("jsonParam:{}",JSON.toJSON(jsonParam.getData()));
StringEntity entity = new StringEntity(jsonParam.getData(), "utf-8");
log.info(JSON.toJSONString(entity));
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
//把成功登录的Session信息传进去,获取连接信息
method.setHeader(sessionkey, sessionValue);
method.setHeader(aspnetsessionkey, aspnetsessionValue);
//方法参数
method.setEntity(entity);
HttpResponse result = httpclient.execute(method);
// 请求发送成功,并得到响应
if (result.getStatusLine().getStatusCode() == 200) {
log.info("请求成功");
// 读取服务器返回过来的json字符串数据
String str = EntityUtils.toString(result.getEntity());
if(StringUtils.isBlank(str)){
return rb.setMsg("操作失败");
}
log.info(str);
return createResultBean(str);
}
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
/**
* 单据查询
* @param jsonParam
* @return
*/
public static ResultBean<String> getKingBillDataInfoList(FinKingDeeService.KingDeeParams jsonParam) {
ResultBean<String > rb= ResultBean.fireFail();
// 定义httpClient的实例
HttpClient httpclient = new DefaultHttpClient();
/********** 用户登录Begin ************************/
ResultBean<List<KingDeeResult>> rb1 = loginKingDeeSystem(httpclient);
if (!rb1.getSuccess()) return rb;
try {
URI save_uri = new URI(ExecuteBillQuery_URL);
HttpPost method = new HttpPost(save_uri);
//采购入库单保存参数
log.info("jsonParam:{}",JSON.toJSON(jsonParam.getData()));
//StringEntity entity = new StringEntity(jsonParam.getData(), "utf-8");"{\\\"FormId\\\":\\\"BD_MATERIAL\\\",\\\"TopRowCount\\\":0,\\\"Limit\\\":10,\\\"StartRow\\\":0,\\\"FilterString\\\":\\\"FNumber=' JX091054'\\\",\\\"OrderString\\\":\\\"FID ASC\\\",\\\"FieldKeys\\\":\\\"FUseOrgId,FNumber\\\"}"
StringEntity entity = new StringEntity(jsonParam.getData(), "utf-8");
log.info(JSON.toJSONString(entity));
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
//把成功登录的Session信息传进去,获取连接信息
method.setHeader(sessionkey, sessionValue);
method.setHeader(aspnetsessionkey, aspnetsessionValue);
//方法参数
method.setEntity(entity);
HttpResponse result = httpclient.execute(method);
// 请求发送成功,并得到响应
if (result.getStatusLine().getStatusCode() == 200) {
log.info("请求成功");
// 读取服务器返回过来的json字符串数据
String str = EntityUtils.toString(result.getEntity());
if(StringUtils.isBlank(str)){
return rb.setMsg("操作失败");
}
log.info(str);
return rb.success().setData(str);
}
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
/**
* 查看金蝶数据
* @param jsonParam
* @return
*/
public static ResultBean<String> getKingDeeBillDataByNumber(FinKingDeeService.KingDeeParams jsonParam) {
ResultBean<String > rb= ResultBean.fireFail();
// 定义httpClient的实例
HttpClient httpclient = new DefaultHttpClient();
/********** 用户登录Begin ************************/
ResultBean<List<KingDeeResult>> rb1 = loginKingDeeSystem(httpclient);
if (!rb1.getSuccess()) return rb;
try {
URI save_uri = new URI(View_URL);
HttpPost method = new HttpPost(save_uri);
//采购入库单保存参数
log.info("jsonParam:{}",JSON.toJSON(jsonParam.getData()));
//StringEntity entity = new StringEntity(jsonParam.getData(), "utf-8");
StringEntity entity = new StringEntity(jsonParam.getData(), "utf-8");
log.info(JSON.toJSONString(entity));
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
//把成功登录的Session信息传进去,获取连接信息
method.setHeader(sessionkey, sessionValue);
method.setHeader(aspnetsessionkey, aspnetsessionValue);
//方法参数
method.setEntity(entity);
HttpResponse result = httpclient.execute(method);
// 请求发送成功,并得到响应
if (result.getStatusLine().getStatusCode() == 200) {
log.info("请求成功");
// 读取服务器返回过来的json字符串数据
String str = EntityUtils.toString(result.getEntity());
if(StringUtils.isBlank(str)){
return rb.setMsg("操作失败");
}
log.info(str);
return rb.success().setData(str);
}
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
public static ResultBean<List<KingDeeResult>> loginKingDeeSystem( HttpClient httpclient) {
ResultBean<List<KingDeeResult> > rb= ResultBean.fireFail();
try {
URI uri = new URI(Login_URL);
URI uri = new URI(KingDeeConfig.url+ KingDeeBillUrl.LOGIN_URL.getURL());
HttpPost method = new HttpPost(uri);
//登录请求参数
Map<String,String> loginParams=new HashMap<>();
loginParams.put("acctID",acctID);
loginParams.put("userName",userName_administrator);
loginParams.put("password",password_administrator);
loginParams.put("lcid",lcid);
loginParams.put("acctID",KingDeeConfig.acctID);
loginParams.put("userName",userName);
loginParams.put("password",password);
loginParams.put("lcid",KingDeeConfig.lcid);
String jsonParamdl=JSON.toJSONString(loginParams);
StringEntity entity = new StringEntity(jsonParamdl, "utf-8");
entity.setContentEncoding("UTF-8");
@ -390,19 +114,22 @@ public class KingDeeSaveSKD {
log.info("登录成功!");
// 获取Cookie
Header[] headers = result.getHeaders("Set-Cookie");
for (int i = 1; i < headers.length; i++) {
Map<String,String > m=new HashMap<>();
for (int i = 0; i < headers.length; i++) {
Header header = headers[i];
String headerValue = header.getValue();
// 登录成功返回的登录session信息,保存下来,下面再调用接口的时候传给服务端
if (headerValue.trim().startsWith(sessionkey)) {
if (headerValue.trim().startsWith(KingDeeConfig.sessionkey)) {
int endIndex = headerValue.indexOf(';');
sessionValue = headerValue.substring(20, endIndex);
} else if (headerValue.trim().startsWith( aspnetsessionkey)) {
String sessionValue = headerValue.substring(20, endIndex);
m.put("sessionValue",sessionValue);
} else if (headerValue.trim().startsWith(KingDeeConfig.aspnetsessionkey)) {
int endIndex = headerValue.indexOf(';');
aspnetsessionValue = headerValue.substring(18, endIndex);
String aspnetsessionValue = headerValue.substring(18, endIndex);
m.put("aspnetsessionValue",aspnetsessionValue);
}
}
return ResultBean.fireSuccess();
return rb.success().setData(m);
}
// 登录失败,不继续
else {
@ -418,15 +145,14 @@ public class KingDeeSaveSKD {
}
return rb;
}
/**
* 解析金蝶返回的数据
* @param str
* @return
*/
public static ResultBean<List<KingDeeResult>> createResultBean(String str) {
/* public static ResultBean<String> createResultBean(String str) {
log.info(str);
ResultBean<List<KingDeeResult>> rb=ResultBean.fireFail();
ResultBean<String> rb=ResultBean.fireFail();
if(StringUtils.isBlank(str)){
return rb.setMsg("操作失败");
}
@ -454,8 +180,8 @@ public class KingDeeSaveSKD {
kingDeeResult.setNumber(jr.get("Number")!=null?jr.get("Number").toString():"");
list.add(kingDeeResult);
});
return new ResultBean<List<KingDeeResult>> (aBoolean,"操作成功!","200").setData(list);
}
return new ResultBean<String> (aBoolean,"操作成功!","200").setData(list);
}*/
}

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/KingDeeUtils.java

@ -1,13 +1,15 @@
package com.yxt.anrui.fin.biz.kingdee;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.resource.ResourceUtil;
import java.io.BufferedReader;
import java.io.IOException;
import java.nio.charset.Charset;
import java.util.Map;
public class KingDeeUtils {
public static String readJsonFile(String filename) { //#传文件的路径
public static String readJsonFileByResource(String filename) { //#传文件的路径
try {
BufferedReader br= FileUtil.getUtf8Reader(filename);
StringBuffer sb = new StringBuffer();
@ -21,6 +23,10 @@ public class KingDeeUtils {
return null;
}
}
public static String readJsonFile(String filename) { //#传文件的路径
String str= ResourceUtil.readStr(filename, Charset.forName("utf8"));
return str;
}
public static String replaceTemplateParams(String template, Map<String, String> params) {
for (Map.Entry<String, String> entry : params.entrySet()) {
template = template.replace("@KD_"+entry.getKey(),entry.getValue());

3
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appayable/APPayableService.java

@ -1,6 +1,7 @@
package com.yxt.anrui.fin.biz.kingdee.appayable;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.appayable.APPayable;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.base.utils.StringUtils;
@ -42,7 +43,7 @@ public class APPayableService extends FinKingDeeService {
}
String kingDeeData = APPayableCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap.getData());
try {
return saveBill(KingDeeBillId.AP_PAYABLE.getID(),kingDeeData);
return accessKingDeeInterface(KingDeeBillId.AP_PAYABLE.getID(),kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
} catch (Exception e) {
e.printStackTrace();
}

17
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerService.java

@ -1,6 +1,7 @@
package com.yxt.anrui.fin.biz.kingdee.bdcustomer;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
@ -44,26 +45,28 @@ public class BdCustomerService extends FinKingDeeService {
Map<String,String> map_fEntityModel_= object2Map(bdCustomer);
//准备 物料列表的数据 ForEntryBill
String kingDeeData = BdCustomerCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_);
ResultBean<List<KingDeeResult>> resultBean = saveBill(KingDeeBillId.BD_CUSTOMER.getID(), kingDeeData);
ResultBean<String> resultBean = accessKingDeeInterface(
KingDeeBillId.BD_CUSTOMER.getID(), kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
String data = resultBean.getData();
//String submitKD = getSubmitKD(resultBean,KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<List<KingDeeResult>> resultBean1 = submitKingDeeBillData(KingDeeBillId.BD_CUSTOMER.getID(), resultBean);
String submitKD = getSubmitKD(null,KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());
if(!resultBean1.getSuccess()){
log.info("客户提交失败!");
return rb.setMsg("客户提交失败!");
}
log.info("客户提交成功!");
//String auditKD = getAuditKD(resultBean,KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<List<KingDeeResult>> resultBean2 = auditKingDeeBillData(KingDeeBillId.BD_CUSTOMER.getID(), resultBean);
String auditKD = getAuditKD(null,KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());
if(!resultBean2.getSuccess()){
log.info("客户审核失败!");
return rb.setMsg("客户审核失败!");
}
log.info("客户审核成功!");
//String allocate = getAllocate(resultBean1,bdCustomer.getTOrgIds(),KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<List<KingDeeResult>> resultBean3 = allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(),bdCustomer.getTOrgIds(), resultBean1);
String allocate = getAllocate(null,bdCustomer.getTOrgIds(),KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<String> resultBean3 = accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(),allocate,KingDeeBillUrl.ALLOCATE_URL.getURL());
if(!resultBean3.getSuccess()){
log.info("客户分配失败!");
return rb.setMsg("客户分配失败!");

31
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java

@ -1,7 +1,10 @@
package com.yxt.anrui.fin.biz.kingdee.bdmaterial;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
@ -29,12 +32,12 @@ public class BdMaterialService extends FinKingDeeService {
*/
public ResultBean<List<KingDeeResult>> draftBdMaterialList(List<BdMaterial> bdMaterial) {
// bdMaterial=BdMaterial.createBdMaterial();
List<KingDeeResult> list=new ArrayList<>();
List<String> list=new ArrayList<>();
ResultBean rb=ResultBean.fireFail();
for(BdMaterial b:bdMaterial) {
ResultBean<List<KingDeeResult>> resultBean = draftBdMaterial(b);
ResultBean<String> resultBean = draftBdMaterial(b);
if (resultBean.getSuccess()) {
list.add(resultBean.getData().get(0));
list.add(resultBean.getData());
}
}
return rb.success().setData(list);
@ -44,7 +47,7 @@ public class BdMaterialService extends FinKingDeeService {
* @param bdMaterial
* @return
*/
public ResultBean<List<KingDeeResult>> draftBdMaterial(BdMaterial bdMaterial) {
public ResultBean<String> draftBdMaterial(BdMaterial bdMaterial) {
// bdMaterial=BdMaterial.createBdMaterial();
ResultBean rb=ResultBean.fireFail();
//物料信息转map参数
@ -53,30 +56,36 @@ public class BdMaterialService extends FinKingDeeService {
Map<String,String> map_fEntityModel_=createMapParams(stringObjectMap);
String kingDeeData = BdMaterialCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_);
try {
ResultBean<List<KingDeeResult>> resultBean = saveBill(KingDeeBillId.BD_MATERIAL.getID(), kingDeeData);
ResultBean<String> resultBean = accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(),
kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
if(!resultBean.getSuccess()){
log.info("物料保存失败!");
return rb.setMsg("物料保存失败!");
}
log.info("物料保存成功!");
String data = resultBean.getData();
//String submitKD = getSubmitKD(resultBean,KingDeeBillId.BD_MATERIAL.getID());
ResultBean<List<KingDeeResult>> resultBean1 = submitKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), resultBean);//submitKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), submitKD);
String submitKD = getSubmitKD(data,KingDeeBillId.BD_MATERIAL.getID());
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(),
submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());//submitKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), submitKD);
if(!resultBean1.getSuccess()){
log.info("物料提交失败!");
return rb.setMsg("物料提交失败!");
}
log.info("物料提交成功!");
// String auditKD = getAuditKD(resultBean,KingDeeBillId.BD_MATERIAL.getID());
ResultBean<List<KingDeeResult>> resultBean2 = auditKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), resultBean);//auditKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), auditKD);
String auditKD = getAuditKD(data,KingDeeBillId.BD_MATERIAL.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(
KingDeeBillId.BD_MATERIAL.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());//auditKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), auditKD);
if(!resultBean2.getSuccess()){
log.info("物料审核失败!");
return rb.setMsg("物料审核失败!");
}
log.info("物料审核成功!");
//String allocate = getAllocate(resultBean1,bdMaterial.getTOrgIds(),KingDeeBillId.BD_MATERIAL.getID());
ResultBean<List<KingDeeResult>> resultBean3 =allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(),bdMaterial.getTOrgIds(), resultBean1);// allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), allocate);
String allocate = getAllocate(data,bdMaterial.getTOrgIds(),KingDeeBillId.BD_MATERIAL.getID());
ResultBean<String> resultBean3 =accessKingDeeInterface(
KingDeeBillId.BD_MATERIAL.getID(), allocate,
KingDeeBillUrl.ALLOCATE_URL.getURL());// allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), allocate);
if(!resultBean3.getSuccess()){
log.info("物料分配失败!");
return rb.setMsg("物料分配失败!");

16
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdsupplier/BdSupplierService.java

@ -1,6 +1,7 @@
package com.yxt.anrui.fin.biz.kingdee.bdsupplier;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.bdsupplier.BdSupplier;
@ -44,25 +45,26 @@ public class BdSupplierService extends FinKingDeeService {
//业务表的主表数据集合
Map<String,String> map_fEntityModel_= object2Map(bdSupplier);
String kingDeeData = BdSupplierCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_);
ResultBean<List<KingDeeResult>> resultBean = saveBill(KingDeeBillId.BD_SUPPLIER.getID(), kingDeeData);
ResultBean<List<KingDeeResult>> resultBean1 = submitKingDeeBillData(KingDeeBillId.BD_SUPPLIER.getID(), resultBean);
ResultBean<String> resultBean = accessKingDeeInterface(KingDeeBillId.BD_SUPPLIER.getID(), kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
String submitKD = getSubmitKD(null,KingDeeBillId.BD_SUPPLIER.getID());
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.BD_SUPPLIER.getID(), submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());
if(!resultBean1.getSuccess()){
log.info("供应商提交失败!");
return rb.setMsg("供应商提交失败!");
}
log.info("供应商提交成功!");
//String auditKD = getAuditKD(resultBean,KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<List<KingDeeResult>> resultBean2 = auditKingDeeBillData(KingDeeBillId.BD_SUPPLIER.getID(), resultBean);
String auditKD = getAuditKD(null,KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<String> resultBean2 = accessKingDeeInterface(KingDeeBillId.BD_SUPPLIER.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());
if(!resultBean2.getSuccess()){
log.info("供应商审核失败!");
return rb.setMsg("供应商审核失败!");
}
log.info("供应商审核成功!");
//String allocate = getAllocate(resultBean1,bdCustomer.getTOrgIds(),KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<List<KingDeeResult>> resultBean3 = allocateKingDeeBillData(KingDeeBillId.BD_SUPPLIER.getID(),bdSupplier.getTOrgIds(), resultBean1);
String allocate = getAllocate(null,bdSupplier.getTOrgIds(),KingDeeBillId.BD_CUSTOMER.getID());
ResultBean<String> resultBean3 = accessKingDeeInterface(
KingDeeBillId.BD_SUPPLIER.getID(), allocate,KingDeeBillUrl.ALLOCATE_URL.getURL());
if(!resultBean3.getSuccess()){
log.info("供应商分配失败!");
return rb.setMsg("供应商分配失败!");

24
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/orgorganizations/OrgOrganizationsService.java

@ -2,10 +2,12 @@ package com.yxt.anrui.fin.biz.kingdee.orgorganizations;
import com.alibaba.fastjson.JSONObject;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.anrui.fin.biz.kingdee.KingDeeConfig;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
@ -26,22 +28,23 @@ public class OrgOrganizationsService extends FinKingDeeService {
try {
//业务表的主表数据集合
Map<String,String> map_fEntityModel_= object2Map(orgOrganizations);
//准备 物料列表的数据 ForEntryBill
String kingDeeData = OrgOrganizationsCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_);
ResultBean<List<KingDeeResult>> result = saveBill(KingDeeBillId.ORG_ORGANIZATIONS.getID(), kingDeeData);
ResultBean<String> result = accessKingDeeInterface(KingDeeBillId.ORG_ORGANIZATIONS.getID(), kingDeeData,
KingDeeConfig.userName_administrator,KingDeeConfig.password_administrator, KingDeeBillUrl.SAVE_URL.getURL());
if (!result.getSuccess()){
return result;
}
String number = orgOrganizations.getFNumber();
ResultBean<String> kingDeeBillDataByNumber = getKingDeeBillDataByNumber(KingDeeBillId.ORG_ORGANIZATIONS.getID(), number);
String data = kingDeeBillDataByNumber.getData();
JSONObject jsonObject = JSONObject.parseObject(data);
JSONObject result1 = (JSONObject) jsonObject.get("Result");
JSONObject result2 = (JSONObject) result1.get("Result");
int Id = (int) result2.get("Id");
String data="{\"formId\":\""+KingDeeBillId.ORG_ORGANIZATIONS+"\"," +
"\"data\":\"{\\\"CreateOrgId\\\":\\\"0\\\",\\\"Number\\\":\\\""+number+"\\\",\\\"Id\\\":\\\"\\\"}\"}";
ResultBean<String> listResultBean = accessKingDeeInterface(KingDeeBillId.ORG_ORGANIZATIONS.getID(), data,
KingDeeConfig.userName_administrator, KingDeeConfig.password_administrator, KingDeeBillUrl.VIEW_URL.getURL());
// List<KingDeeResult> data1 = listResultBean.getData();
String Id = "";// data1.get(0).getId();
String data_submit = "{\"formId\":\""+KingDeeBillId.ORG_ORGANIZATIONS.getID()+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+Id+"\\\"}\"}";
ResultBean<List<KingDeeResult>> resultBean1 = submitKingDeeBillData(KingDeeBillId.ORG_ORGANIZATIONS.getID(), data_submit);
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.ORG_ORGANIZATIONS.getID(), data_submit, KingDeeConfig.userName_administrator,KingDeeConfig.password_administrator, KingDeeBillUrl.SUBMIT_URL.getURL());
if(!resultBean1.getSuccess()){
log.info("组织机构提交失败!");
return rb.setMsg("组织机构提交失败!");
@ -49,7 +52,8 @@ public class OrgOrganizationsService extends FinKingDeeService {
log.info("组织机构提交成功!");
String data_audit = "{\"formId\":\""+KingDeeBillId.ORG_ORGANIZATIONS.getID()+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+Id+"\\\",\\\"InterationFlags\\\":\\\"\\\"}\"}";
ResultBean<List<KingDeeResult>> resultBean2 = auditKingDeeBillData(KingDeeBillId.ORG_ORGANIZATIONS.getID(), data_audit);
ResultBean<String> resultBean2 =
accessKingDeeInterface(KingDeeBillId.ORG_ORGANIZATIONS.getID(), data_audit,KingDeeConfig.userName_administrator,KingDeeConfig.password_administrator, KingDeeBillUrl.AUDIT_URL.getURL());
if(!resultBean2.getSuccess()){
log.info("组织机构审核失败!");
return rb.setMsg("组织机构审核失败!");

3
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/purmrb/PurMrbService.java

@ -1,6 +1,7 @@
package com.yxt.anrui.fin.biz.kingdee.purmrb;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.core.result.ResultBean;
@ -27,7 +28,7 @@ public class PurMrbService extends FinKingDeeService {
List<PurMrb.FPURMRBENTRY> fpurmrbentry = purMrb.getFPURMRBENTRY();
List<Map<String, String>> vehicleListMap = createVehicleLists(fpurmrbentry);
String kingDeeData = PurMrbCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap);
return saveBill(KingDeeBillId.PUR_MRB.getID(),kingDeeData);
return accessKingDeeInterface(KingDeeBillId.PUR_MRB.getID(),kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
} catch (Exception e) {
e.printStackTrace();
}

18
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/purmrb/data_FPURMRBENTRY.json

@ -5,16 +5,16 @@
},
"FMaterialDesc": "@KD_FMaterialDesc",
"FUnitID": {
"FNumber": "@KD_FUnitID"
"FNumber": "liang"
},
"FLot": {
"FNumber": "@KD_Flot"
"FNumber": "@KD_FLot"
},
"FRMREALQTY": @KD_FRMREALQTY,
"FREPLENISHQTY": @KD_FRMREALQTY,
"FKEAPAMTQTY": @KD_FRMREALQTY,
"FRMREALQTY": 1.0,
"FREPLENISHQTY": 1.0,
"FKEAPAMTQTY": 1.0,
"FPRICEUNITID": {
"FNumber": "@KD_FPRICEUNITID"
"FNumber": "liang"
},
"FSTOCKID": {
"FNumber": "@KD_FSTOCKID"
@ -26,10 +26,10 @@
"FGiveAway": false,
"FPriceBaseQty": 1.0,
"FCarryUnitId": {
"FNumber": "@KD_FCarryUnitId"
"FNumber": "liang"
},
"FCarryQty": @KD_FRMREALQTY,
"FCarryBaseQty": @KD_FRMREALQTY,
"FCarryQty": 1.0,
"FCarryBaseQty": 1.0,
"FBILLINGCLOSE": false,
"FIsStock": false
}

5
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/receivablebill/ReceivableBillService.java

@ -1,6 +1,7 @@
package com.yxt.anrui.fin.biz.kingdee.receivablebill;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.arreceivable.ARReceivable;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.base.utils.StringUtils;
@ -30,7 +31,7 @@ public class ReceivableBillService extends FinKingDeeService {
}
//业务日期
map_fEntityModel_.put("FDATE",aRReceivable.getApplicationDate());
map_fEntityModel_.put("FCUSTOMERID",aRReceivable.getFcustomerid()==null?" JXYXB":aRReceivable.getFcustomerid());
map_fEntityModel_.put("FCUSTOMERID",aRReceivable.getFcustomerid());
//供应商:FSUPPLIERID (必填项)
if(aRReceivable.getApplicationDate()==null){
return rb.setMsg("供应商 不能为空");
@ -44,7 +45,7 @@ public class ReceivableBillService extends FinKingDeeService {
}
String kingDeeData = ReceivableBillCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap.getData());
try {
return saveBill(KingDeeBillId.AP_PAYABLE.getID(),kingDeeData);
return accessKingDeeInterface(KingDeeBillId.AP_PAYABLE.getID(),kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
} catch (Exception e) {
e.printStackTrace();
}

3
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/SalOutStockService.java

@ -2,6 +2,7 @@ package com.yxt.anrui.fin.biz.kingdee.saloutstock;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.saloutstock.SalOutStock;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.core.result.ResultBean;
@ -33,7 +34,7 @@ public class SalOutStockService extends FinKingDeeService {
List<SalOutStock.FEntity> fEntity = salOutStock.getFEntity();
List<Map<String, String>> vehicleListMap = createVehicleLists(fEntity);
String kingDeeData = SalOutStockCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap);
return saveBill(KingDeeBillId.SAL_OUTSTOCK.getID(),kingDeeData);
return accessKingDeeInterface(KingDeeBillId.SAL_OUTSTOCK.getID(),kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
} catch (Exception e) {
e.printStackTrace();
}

10
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/ApPayBillCastToKingDeeBillFields.java → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/ApPayBillCastToKingDeeBillFields.java

@ -1,4 +1,4 @@
package com.yxt.anrui.fin.biz.kingdee.appaybill;
package com.yxt.anrui.fin.biz.kingdee.saloutstock.appaybill;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
@ -26,10 +26,10 @@ public class ApPayBillCastToKingDeeBillFields {
/**
* 取模板
*/
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/appaybill/data.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/appaybill/data_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/appaybill/data_model.json");
String fPAYBILLENTRY_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/appaybill/data_FPAYBILLENTRY.json");
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_model.json");
String fPAYBILLENTRY_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_FPAYBILLENTRY.json");
//模板字符创转json
JSONObject jsonObj= JSONObject.parseObject(readJsonFile, Feature.OrderedField);

9
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/ApPayBillService.java → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/ApPayBillService.java

@ -1,15 +1,12 @@
package com.yxt.anrui.fin.biz.kingdee.appaybill;
package com.yxt.anrui.fin.biz.kingdee.saloutstock.appaybill;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -31,7 +28,7 @@ public class ApPayBillService extends FinKingDeeService {
List<ApPayBill.FPAYBILLENTRY> fpaybillentrYs = apPayBill.getFPAYBILLENTRY();
List<Map<String, String>> vehicleListMap = createVehicleLists(fpaybillentrYs);
String kingDeeData = ApPayBillCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap);
return saveBill(KingDeeBillId.AP_PAYBILL.getID(),kingDeeData);
return accessKingDeeInterface(KingDeeBillId.AP_PAYBILL.getID(),kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
} catch (Exception e) {
e.printStackTrace();
}

0
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/data.json → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data.json

0
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/data_FPAYBILLENTRY.json → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_FPAYBILLENTRY.json

0
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/data_data.json → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_data.json

0
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/data_model.json → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/data_model.json

0
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/remarks.txt → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/remarks.txt

0
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/webapi测试的数据.txt → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/webapi测试的数据.txt

0
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/~$付款单的参数必填备注.xlsx → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/~$付款单的参数必填备注.xlsx

0
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/appaybill/付款单的参数必填备注.xlsx → anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/appaybill/付款单的参数必填备注.xlsx

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/saloutstock/data_FEntity.json

@ -24,10 +24,10 @@
"FSalUnitID": {
"FNumber": "@KD_FUnitID"
},
"FSALUNITQTY": @KD_FSALUNITQTY,
"FSALBASEQTY": @KD_FSALUNITQTY,
"FPRICEBASEQTY": @KD_FSALUNITQTY,
"FSALUNITQTY": @KD_FRealQty,
"FSALBASEQTY": @KD_FRealQty,
"FPRICEBASEQTY": @KD_FRealQty,
"FOUTCONTROL": false,
"FIsOverLegalOrg": false,
"FARNOTJOINQTY": @KD_FSALUNITQTY
"FARNOTJOINQTY": @KD_FRealQty
}

27
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stkinstock/STKInStockService.java

@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.KingDeeResult;
import com.yxt.anrui.fin.api.kingdee.appaybill.ApPayBill;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
@ -30,13 +31,16 @@ public class STKInStockService extends FinKingDeeService {
* @param stkInStock
* @return
*/
public ResultBean draftStkInStock(StkInStock stkInStock) {
public ResultBean draftStkInStock(StkInStock stkInStock) throws Exception {
// stkInStock=StkInStock.createStkInStock();
List<StkInStock.FInStockEntry> fInStockEntry1 = stkInStock.getFInStockEntry();
for (StkInStock.FInStockEntry f: fInStockEntry1){
ResultBean<String> kingDataInfoByNumber = getKingDataInfoByNumber(KingDeeBillId.BD_MATERIAL.getID(), f.getFMaterialId());
String data="{\"formId\":\""+KingDeeBillId.BD_MATERIAL+"\"," +
"\"data\":\"{\\\"CreateOrgId\\\":\\\"0\\\",\\\"Number\\\":\\\""+f.getFMaterialId()+"\\\",\\\"Id\\\":\\\"\\\"}\"}";
// ResultBean<String> kingDataInfoByNumber = getKingDataInfoByNumber(KingDeeBillId.BD_MATERIAL.getID(), f.getFMaterialId());
ResultBean<String> kingDataInfoByNumber = accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(), data, KingDeeBillUrl.VIEW_URL.getURL());
log.info("kingDataInfoByNumber:{}",kingDataInfoByNumber.getData());
JSONObject jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData());
JSONObject jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData().toString());
JSONObject result = (JSONObject)jsonObject.get("Result");
JSONObject responseStatus = (JSONObject)result.get("ResponseStatus");
if(responseStatus!=null){
@ -60,23 +64,22 @@ public class STKInStockService extends FinKingDeeService {
String jsonParam="{\"data\":\"{\\\"FormId\\\":\\\""+KingDeeBillId.BD_MATERIAL+"\\\"," +
"\\\"FieldKeys\\\":\\\"FName,FNumber,FUseOrgId\\\",\\\"FilterString\\\":\\\"FNumber='"+f.getFMaterialId()+"'\\\"," +
"\\\"OrderString\\\":\\\"\\\",\\\"TopRowCount\\\":\\\"0\\\",\\\"StartRow\\\":\\\"0\\\",\\\"Limit\\\":\\\"20\\\"}\"}";
ResultBean<String> kingBillDataInfoList = getKingBillDataInfoList(KingDeeBillId.BD_MATERIAL.getID(), jsonParam);
String data1 = kingBillDataInfoList.getData();
JSONArray jSONArray = JSONArray.parseArray(data1);
ResultBean<String> kingBillDataInfoList = accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(), jsonParam, KingDeeBillUrl.EXECUTEBILLQUERY_URL.getURL());
JSONArray objects = JSONArray.parseArray(kingBillDataInfoList.getData());
boolean b=true;
for(int i=0;i<jSONArray.size();i++){
JSONArray ja = (JSONArray) jSONArray.get(i);
int o =(int) ja.get(2);
for(int i=0;i<objects.size();i++){
JSONArray ja = (JSONArray) objects.get(i);
int o =(int) ja.get(2);
String tOrgId = stkInStock.getTOrgId();
if(tOrgId!=null&tOrgId.equals(o+"")){
b=false;
}
}
if(b){
String data="{\"formId\":\""+KingDeeBillId.BD_MATERIAL.getID()+"\"," +
String data2="{\"formId\":\""+KingDeeBillId.BD_MATERIAL.getID()+"\"," +
"\"data\":\"{\\\"PkIds\\\":\\\""+Id+"\\\",\\\"TOrgIds\\\":\\\""+stkInStock.getTOrgId()+"\\\"," +
"\\\"IsAutoSubmitAndAudit\\\":\\\"true\\\"}\"}";
ResultBean<List<KingDeeResult>> resultBean3 =allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(),data);// allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), allocate);
ResultBean<String> resultBean3 =accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(),data2,KingDeeBillUrl.ALLOCATE_URL.getURL());// allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), allocate);
if(!resultBean3.getSuccess()){
log.info("物料分配失败!");
// return resultBean3.setMsg("物料分配失败!");
@ -95,7 +98,7 @@ public class STKInStockService extends FinKingDeeService {
//准备 物料列表的数据 ForEntryBill
List<Map<String, String>> vehicleListMap = createVehicleLists(fInStockEntry);
String kingDeeData =STKInStockCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap);
return saveBill(KingDeeBillId.STK_INSTOCK.getID(),kingDeeData);
return accessKingDeeInterface(KingDeeBillId.STK_INSTOCK.getID(),kingDeeData,KingDeeBillUrl.SAVE_URL.getURL());
} catch (Exception e) {
e.printStackTrace();
}

3
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/StkTransferDirectService.java

@ -1,6 +1,7 @@
package com.yxt.anrui.fin.biz.kingdee.stktransferdirect;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.core.result.ResultBean;
@ -27,7 +28,7 @@ public class StkTransferDirectService extends FinKingDeeService {
//准备 物料列表的数据 ForEntryBill
List<Map<String, String>> vehicleListMap = createVehicleLists(fBillEntry);
String kingDeeData = StkTransferDirectCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap);
return saveBill(KingDeeBillId.STK_TRANSFERDIRECT.getID(),kingDeeData);
return accessKingDeeInterface(KingDeeBillId.STK_TRANSFERDIRECT.getID(),kingDeeData, KingDeeBillUrl.SAVE_URL.getURL());
} catch (Exception e) {
e.printStackTrace();
}

15
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java

@ -532,13 +532,16 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
} else if ("2".equals(type)) {
//插件
String appSid2 = appSid.substring(0, appSid.indexOf("#"));
List<Integer> integers = appVer.get(appSid2);
if (integers == null) {
integers = new ArrayList<>();
if(StringUtils.isNotBlank(appSid)){
String appSid2 = appSid.substring(0, appSid.indexOf("#"));
List<Integer> integers = appVer.get(appSid2);
if (integers == null) {
integers = new ArrayList<>();
}
integers.add(i);
appVer.put(appSid2, integers);
}
integers.add(i);
appVer.put(appSid2, integers);
}
appVo.setType(type);
appVo.setMsgSid(f.getTaskId());

102
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebate.java

@ -0,0 +1,102 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmspecialrebate;
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-scm(专项返利管理) <br/>
* File: ScmSpecialRebate.java <br/>
* Class: com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebate <br/>
* Description: 专项返利表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "专项返利表", description = "专项返利表")
@TableName("scm_special_rebate")
public class ScmSpecialRebate extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
private String brandName; // 品牌名称
@ApiModelProperty("返利类型key")
private String rebateTypeKey; // 返利类型key
@ApiModelProperty("返利类型value")
private String rebateTypeValue; // 返利类型value
@ApiModelProperty("返利名称")
private String rebateName; // 返利名称
@ApiModelProperty("计算标准")
private String calculationStandard; // 计算标准
@ApiModelProperty("预计返利")
private String estimateRebate; // 预计返利
@ApiModelProperty("所属年月")
private String palceGenDate; // 所属年月
@ApiModelProperty("预提日期")
private String withholdingDate; // 预提日期
@ApiModelProperty("上传日期")
private String uploadDate; // 上传日期
@ApiModelProperty("上传金额")
private String uploadMoney; // 上传金额
@ApiModelProperty("二次上传日期")
private String secondaryUploadDate; // 二次上传日期
@ApiModelProperty("二次上传金额")
private String secondaryUploadMoney; // 二次上传金额
@ApiModelProperty("待确定金额")
private String stayDetermineMoney; // 待确定金额
@ApiModelProperty("费用")
private String money; // 费用
@ApiModelProperty("是否调整")
private String isAdjustment; // 是否调整
@ApiModelProperty("调整金额")
private String adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
private String adjustmentRemarks; // 调整说明
@ApiModelProperty("计算方式key")
private String calculationModeKey; // 计算方式key
@ApiModelProperty("计算方式Value")
private String calculationModeValue; // 计算方式Value
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称")
private String useOrgName; // 使用组织名称
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
}

103
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateDetailsVo.java

@ -0,0 +1,103 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmspecialrebate;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(专项返利管理) <br/>
* File: ScmSpecialRebateVo.java <br/>
* Class: com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo <br/>
* Description: 专项返利表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "专项返利表 视图数据详情", description = "专项返利表 视图数据详情")
public class ScmSpecialRebateDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
private String brandName; // 品牌名称
@ApiModelProperty("返利类型key")
private String rebateTypeKey; // 返利类型key
@ApiModelProperty("返利类型value")
private String rebateTypeValue; // 返利类型value
@ApiModelProperty("返利名称")
private String rebateName; // 返利名称
@ApiModelProperty("计算标准")
private String calculationStandard; // 计算标准
@ApiModelProperty("预计返利")
private String estimateRebate; // 预计返利
@ApiModelProperty("所属年月")
private String palceGenDate; // 所属年月
@ApiModelProperty("预提日期")
private String withholdingDate; // 预提日期
@ApiModelProperty("上传日期")
private String uploadDate; // 上传日期
@ApiModelProperty("上传金额")
private String uploadMoney; // 上传金额
@ApiModelProperty("二次上传日期")
private String secondaryUploadDate; // 二次上传日期
@ApiModelProperty("二次上传金额")
private String secondaryUploadMoney; // 二次上传金额
@ApiModelProperty("待确定金额")
private String stayDetermineMoney; // 待确定金额
@ApiModelProperty("费用")
private String money; // 费用
@ApiModelProperty("是否调整")
private String isAdjustment; // 是否调整
@ApiModelProperty("调整金额")
private String adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
private String adjustmentRemarks; // 调整说明
@ApiModelProperty("计算方式key")
private String calculationModeKey; // 计算方式key
@ApiModelProperty("计算方式Value")
private String calculationModeValue; // 计算方式Value
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称")
private String useOrgName; // 使用组织名称
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
}

103
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateDto.java

@ -0,0 +1,103 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmspecialrebate;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(专项返利管理) <br/>
* File: ScmSpecialRebateDto.java <br/>
* Class: com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateDto <br/>
* Description: 专项返利表 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "专项返利表 数据传输对象", description = "专项返利表 数据传输对象")
public class ScmSpecialRebateDto implements Dto {
private String sid; // sid
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
private String brandName; // 品牌名称
@ApiModelProperty("返利类型key")
private String rebateTypeKey; // 返利类型key
@ApiModelProperty("返利类型value")
private String rebateTypeValue; // 返利类型value
@ApiModelProperty("返利名称")
private String rebateName; // 返利名称
@ApiModelProperty("计算标准")
private String calculationStandard; // 计算标准
@ApiModelProperty("预计返利")
private String estimateRebate; // 预计返利
@ApiModelProperty("所属年月")
private String palceGenDate; // 所属年月
@ApiModelProperty("预提日期")
private String withholdingDate; // 预提日期
@ApiModelProperty("上传日期")
private String uploadDate; // 上传日期
@ApiModelProperty("上传金额")
private String uploadMoney; // 上传金额
@ApiModelProperty("二次上传日期")
private String secondaryUploadDate; // 二次上传日期
@ApiModelProperty("二次上传金额")
private String secondaryUploadMoney; // 二次上传金额
@ApiModelProperty("待确定金额")
private String stayDetermineMoney; // 待确定金额
@ApiModelProperty("费用")
private String money; // 费用
@ApiModelProperty("是否调整")
private String isAdjustment; // 是否调整
@ApiModelProperty("调整金额")
private String adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
private String adjustmentRemarks; // 调整说明
@ApiModelProperty("计算方式key")
private String calculationModeKey; // 计算方式key
@ApiModelProperty("计算方式Value")
private String calculationModeValue; // 计算方式Value
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称")
private String useOrgName; // 使用组织名称
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
}

78
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateFeign.java

@ -0,0 +1,78 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmspecialrebate;
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-scm(专项返利管理) <br/>
* File: ScmSpecialRebateFeign.java <br/>
* Class: com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateFeign <br/>
* Description: 专项返利表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "专项返利表")
@FeignClient(
contextId = "anrui-scm-ScmSpecialRebate",
name = "anrui-scm",
path = "v1/scmspecialrebate",
fallback = ScmSpecialRebateFeignFallback.class)
public interface ScmSpecialRebateFeign {
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ResponseBody
public ResultBean<PagerVo<ScmSpecialRebateVo>> listPage(@RequestBody PagerQuery<ScmSpecialRebateQuery> pq);
@ApiOperation("新增或修改")
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody ScmSpecialRebateDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody
public ResultBean<ScmSpecialRebateDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
}

72
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateFeignFallback.java

@ -0,0 +1,72 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmspecialrebate;
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-scm(专项返利管理) <br/>
* File: ScmSpecialRebateFeignFallback.java <br/>
* Class: com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateFeignFallback <br/>
* Description: 专项返利表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Component
public class ScmSpecialRebateFeignFallback implements ScmSpecialRebateFeign {
@Override
public ResultBean<PagerVo<ScmSpecialRebateVo>> listPage(PagerQuery<ScmSpecialRebateQuery> pq){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-scm/scmspecialrebate/listPage无法访问");
}
@Override
public ResultBean save(ScmSpecialRebateDto dto){
return ResultBean.fireFail().setMsg("接口anrui-scm/scmspecialrebate/save无法访问");
}
@Override
public ResultBean delBySids( String[] sids){
return ResultBean.fireFail().setMsg("接口anrui-scm/scmspecialrebate/delBySids无法访问");
}
@Override
public ResultBean<ScmSpecialRebateDetailsVo> fetchDetailsBySid(String sid){
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui-scm/scmspecialrebate/fetchDetailsBySid无法访问");
}
}

66
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateQuery.java

@ -0,0 +1,66 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmspecialrebate;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(专项返利管理) <br/>
* File: ScmSpecialRebateQuery.java <br/>
* Class: com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateQuery <br/>
* Description: 专项返利表 查询条件. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "专项返利表 查询条件", description = "专项返利表 查询条件")
public class ScmSpecialRebateQuery implements Query {
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("返利类型key")
private String rebateTypeKey; // 返利类型key
@ApiModelProperty("返利名称")
private String rebateName; // 返利名称
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建开始日期")
private String createStartTime; // 创建开始日期
@ApiModelProperty("创建结束日期")
private String createEndTime; // 创建结束日期
@ApiModelProperty("状态")
private String state; // 状态
}

103
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebate/ScmSpecialRebateVo.java

@ -0,0 +1,103 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.api.scmspecialrebate;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-scm(专项返利管理) <br/>
* File: ScmSpecialRebateVo.java <br/>
* Class: com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo <br/>
* Description: 专项返利表 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "专项返利表 视图数据对象", description = "专项返利表 视图数据对象")
public class ScmSpecialRebateVo implements Vo {
private String sid; // sid
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
private String brandName; // 品牌名称
@ApiModelProperty("返利类型key")
private String rebateTypeKey; // 返利类型key
@ApiModelProperty("返利类型value")
private String rebateTypeValue; // 返利类型value
@ApiModelProperty("返利名称")
private String rebateName; // 返利名称
@ApiModelProperty("计算标准")
private String calculationStandard; // 计算标准
@ApiModelProperty("预计返利")
private String estimateRebate; // 预计返利
@ApiModelProperty("所属年月")
private String palceGenDate; // 所属年月
@ApiModelProperty("预提日期")
private String withholdingDate; // 预提日期
@ApiModelProperty("上传日期")
private String uploadDate; // 上传日期
@ApiModelProperty("上传金额")
private String uploadMoney; // 上传金额
@ApiModelProperty("二次上传日期")
private String secondaryUploadDate; // 二次上传日期
@ApiModelProperty("二次上传金额")
private String secondaryUploadMoney; // 二次上传金额
@ApiModelProperty("待确定金额")
private String stayDetermineMoney; // 待确定金额
@ApiModelProperty("费用")
private String money; // 费用
@ApiModelProperty("是否调整")
private String isAdjustment; // 是否调整
@ApiModelProperty("调整金额")
private String adjustmentMoney; // 调整金额
@ApiModelProperty("调整说明")
private String adjustmentRemarks; // 调整说明
@ApiModelProperty("计算方式key")
private String calculationModeKey; // 计算方式key
@ApiModelProperty("计算方式Value")
private String calculationModeValue; // 计算方式Value
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称")
private String useOrgName; // 使用组织名称
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
}

2
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateVo.java

@ -121,6 +121,6 @@ public class ScmVehRebateVo implements Vo {
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
@ApiModelProperty("上传状态(0未调整、1已调整、2未上传、3已上传)")
@ApiModelProperty("上传状态(2未上传、3已上传)")
private String uploadState; // 上传状态
}

65
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scmspecialrebate;
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.scm.api.scmspecialrebate.ScmSpecialRebate;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo;
import java.util.List;
/**
* Project: anrui-scm(专项返利管理) <br/>
* File: ScmSpecialRebateMapper.java <br/>
* Class: com.yxt.anrui.scm.biz.scmspecialrebate.ScmSpecialRebateMapper <br/>
* Description: 专项返利表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface ScmSpecialRebateMapper extends BaseMapper<ScmSpecialRebate> {
//@Update("update scm_special_rebate set name=#{msg} where id=#{id}")
//IPage<ScmSpecialRebateVo> voPage(IPage<ScmSpecialRebate> page, @Param(Constants.WRAPPER) QueryWrapper<ScmSpecialRebate> qw);
IPage<ScmSpecialRebateVo> selectPageVo(IPage<ScmSpecialRebate> page, @Param(Constants.WRAPPER) Wrapper<ScmSpecialRebate> qw);
List<ScmSpecialRebateVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<ScmSpecialRebate> qw);
@Select("select * from scm_special_rebate")
List<ScmSpecialRebateVo> selectListVo();
}

13
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.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.scm.biz.scmspecialrebate.ScmSpecialRebateMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo">
SELECT * FROM scm_special_rebate <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo">
SELECT * FROM scm_special_rebate <where> ${ew.sqlSegment} </where>
</select>
</mapper>

100
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateRest.java

@ -0,0 +1,100 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scmspecialrebate;
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.scm.api.scmspecialrebate.ScmSpecialRebate;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateQuery;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateDetailsVo;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateDto;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateFeign;
/**
* Project: anrui-scm(专项返利管理) <br/>
* File: ScmSpecialRebateFeignFallback.java <br/>
* Class: com.yxt.anrui.scm.biz.scmspecialrebate.ScmSpecialRebateRest <br/>
* Description: 专项返利表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "专项返利表")
@RestController("com.yxt.anrui.scm.biz.scmspecialrebate.ScmSpecialRebateRest")
@RequestMapping("v1/scmspecialrebate")
public class ScmSpecialRebateRest implements ScmSpecialRebateFeign {
@Autowired
private ScmSpecialRebateService scmSpecialRebateService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<ScmSpecialRebateVo>> listPage(@RequestBody PagerQuery<ScmSpecialRebateQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<ScmSpecialRebateVo> pv = scmSpecialRebateService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody ScmSpecialRebateDto dto){
ResultBean rb = ResultBean.fireFail();
scmSpecialRebateService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
@ApiOperation("根据sid批量删除")
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
scmSpecialRebateService.delBySids(sids);
return rb.success();
}
@Override
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<ScmSpecialRebateDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
ScmSpecialRebateDetailsVo vo = scmSpecialRebateService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

125
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java

@ -0,0 +1,125 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.scm.biz.scmspecialrebate;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebate;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateQuery;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateVo;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateDetailsVo;
import com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateDto;
import org.springframework.stereotype.Service;
/**
* Project: anrui-scm(专项返利管理) <br/>
* File: ScmSpecialRebateService.java <br/>
* Class: com.yxt.anrui.scm.biz.scmspecialrebate.ScmSpecialRebateService <br/>
* Description: 专项返利表 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-09-08 16:11:43 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class ScmSpecialRebateService extends MybatisBaseService<ScmSpecialRebateMapper, ScmSpecialRebate> {
private QueryWrapper<ScmSpecialRebate> createQueryWrapper(ScmSpecialRebateQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<ScmSpecialRebate> qw = new QueryWrapper<>();
return qw;
}
public PagerVo<ScmSpecialRebateVo> listPageVo(PagerQuery<ScmSpecialRebateQuery> pq) {
ScmSpecialRebateQuery query = pq.getParams();
QueryWrapper<ScmSpecialRebate> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getBrandSid())) {
qw.eq("brandSid", query.getBrandSid());
}
if (StringUtils.isNotBlank(query.getRebateTypeKey())) {
qw.eq("rebateTypeKey", query.getRebateTypeKey());
}
if (StringUtils.isNotBlank(query.getRebateName())) {
qw.like("rebateName", query.getRebateName());
}
if (StringUtils.isNotBlank(query.getState())) {
qw.eq("state", query.getState());
}
String createStartTime = query.getCreateStartTime();
String createEndTime = query.getCreateEndTime();
qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotBlank(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.eq("createOrgSid",query.getCreateOrgSid());
qw.orderByDesc("createTime");
IPage<ScmSpecialRebate> page = PagerUtil.queryToPage(pq);
IPage<ScmSpecialRebateVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<ScmSpecialRebateVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(ScmSpecialRebateDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
this.insertByDto(dto);
return;
}
this.updateByDto(dto);
}
public void insertByDto(ScmSpecialRebateDto dto){
ScmSpecialRebate entity = new ScmSpecialRebate();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void updateByDto(ScmSpecialRebateDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
ScmSpecialRebate entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public ScmSpecialRebateDetailsVo fetchDetailsVoBySid(String sid){
ScmSpecialRebate entity = fetchBySid(sid);
ScmSpecialRebateDetailsVo vo = new ScmSpecialRebateDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
}

8
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleenterlibrary/ScmVehicleEnterlibraryService.java

@ -341,11 +341,11 @@ public class ScmVehicleEnterlibraryService extends MybatisBaseService<ScmVehicle
//推送调拨单
List<StkTransferDirect.FBillEntry> FPAYBILLENTRYs = new ArrayList<>();
StkTransferDirect stkTransferDirect = new StkTransferDirect();
stkTransferDirect.setFStockOutOrgId("100013"); //调出库存组织
stkTransferDirect.setFStockOutOrgId("101"); //调出库存组织
stkTransferDirect.setFTransferBizType("调车"); //调拨类型
stkTransferDirect.setFTransferDirect("GENERAL"); //调拨方向
stkTransferDirect.setFOwnerTypeOutIdHead("BD_OwnerOrg"); //调出货主类型
stkTransferDirect.setFStockOrgId("BD_OwnerOrg"); //调入库存组织
stkTransferDirect.setFStockOrgId("101"); //调入库存组织
stkTransferDirect.setFOwnerTypeIdHead("BD_OwnerOrg"); //调入货主类型
stkTransferDirect.setFBillTypeID("ZJDB01_SYS"); //单据类型
stkTransferDirect.setFDate(scmVehicleEnterlibrary.getInboundDate()); //日期
@ -441,11 +441,11 @@ public class ScmVehicleEnterlibraryService extends MybatisBaseService<ScmVehicle
//推送调拨单
List<StkTransferDirect.FBillEntry> FPAYBILLENTRYs = new ArrayList<>();
StkTransferDirect stkTransferDirect = new StkTransferDirect();
stkTransferDirect.setFStockOutOrgId("100013"); //调出库存组织
stkTransferDirect.setFStockOutOrgId("101"); //调出库存组织
stkTransferDirect.setFTransferBizType("调车"); //调拨类型
stkTransferDirect.setFTransferDirect("GENERAL"); //调拨方向
stkTransferDirect.setFOwnerTypeOutIdHead("BD_OwnerOrg"); //调出货主类型
stkTransferDirect.setFStockOrgId("BD_OwnerOrg"); //调入库存组织
stkTransferDirect.setFStockOrgId("101"); //调入库存组织
stkTransferDirect.setFOwnerTypeIdHead("BD_OwnerOrg"); //调入货主类型
stkTransferDirect.setFBillTypeID("ZJDB01_SYS"); //单据类型
stkTransferDirect.setFDate(scmVehicleEnterlibrary.getInboundDate()); //日期

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java

@ -902,11 +902,11 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
BaseVehicleVo baseVehicleVo = baseVehicleFeign.selVehicleByVinNo(s).getData();
List<StkTransferDirect.FBillEntry> FPAYBILLENTRYs = new ArrayList<>();
StkTransferDirect stkTransferDirect = new StkTransferDirect();
stkTransferDirect.setFStockOutOrgId("100013"); //调出库存组织
stkTransferDirect.setFStockOutOrgId("101"); //调出库存组织
stkTransferDirect.setFTransferBizType("调车"); //调拨类型
stkTransferDirect.setFTransferDirect("GENERAL"); //调拨方向
stkTransferDirect.setFOwnerTypeOutIdHead("BD_OwnerOrg"); //调出货主类型
stkTransferDirect.setFStockOrgId("BD_OwnerOrg"); //调入库存组织
stkTransferDirect.setFStockOrgId("101"); //调入库存组织
stkTransferDirect.setFOwnerTypeIdHead("BD_OwnerOrg"); //调入货主类型
stkTransferDirect.setFBillTypeID("ZJDB01_SYS"); //单据类型
stkTransferDirect.setFDate(simpleDateFormat.format(baseVehicleVo.getPriceDate())); //日期

2
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java

@ -66,4 +66,6 @@ public interface ScmVehRebateMapper extends BaseMapper<ScmVehRebate> {
@Update("update from scm_veh_rebate set state = 1 where sid = #{sid}")
void updateState(String sid);
ScmVehRebateVo selectByVinNoAndOrgSid(@Param("vinNo") String vinNo,@Param("createOrgSid") String createOrgSid);
}

31
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml

@ -1,13 +1,26 @@
<?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.scm.biz.scmvehrebate.ScmVehRebateMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo">
SELECT * FROM scm_veh_rebate <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo">
SELECT * FROM scm_veh_rebate <where> ${ew.sqlSegment} </where>
</select>
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo">
SELECT * FROM scm_veh_rebate
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo">
SELECT * FROM scm_veh_rebate
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selectByVinNoAndOrgSid" resultType="com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo">
SELECT *
FROM scm_veh_rebate
WHERE vinNo = #{vinNo}
AND createOrgSid = #{createOrgSid}
</select>
</mapper>

7
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java

@ -110,6 +110,13 @@ public class ScmVehRebateRest implements ScmVehRebateFeign {
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
for (String sid : sids) {
ScmVehRebate scmVehRebate = scmVehRebateService.fetchBySid(sid);
Integer state = scmVehRebate.getState();
if (state == 1){
return rb.setMsg("所选数据中包含已预提单车返利信息,无法删除");
}
}
scmVehRebateService.delBySids(sids);
return rb.success();
}

10
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java

@ -92,6 +92,7 @@ public class ScmVehRebateService extends MybatisBaseService<ScmVehRebateMapper,
apply(StringUtils.isNotBlank(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
qw.eq("createOrgSid",query.getCreateOrgSid());
qw.orderByDesc("createTime");
IPage<ScmVehRebate> page = PagerUtil.queryToPage(pq);
IPage<ScmVehRebateVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<ScmVehRebateVo> p = PagerUtil.pageToVo(pagging, null);
@ -168,10 +169,6 @@ public class ScmVehRebateService extends MybatisBaseService<ScmVehRebateMapper,
if (StringUtils.isNotBlank(record.getUploadDate()) && StringUtils.isNotBlank(record.getUploadMoney()) && record.getIsAdjustment().equals("否")){
record.setUploadState("3");
}
//上传状态:未调整
if (StringUtils.isNotBlank(record.getUploadDate()) && StringUtils.isNotBlank(record.getUploadMoney()) && record.getIsAdjustment().equals("是")){
record.setUploadState("0");
}
}
PagerVo<ScmVehRebateVo> p = PagerUtil.pageToVo(pagging, null);
return p;
@ -242,6 +239,11 @@ public class ScmVehRebateService extends MybatisBaseService<ScmVehRebateMapper,
ScmVehRebate scmVehRebate = new ScmVehRebate();
String sid = scmVehRebate.getSid();
BeanUtil.copyProperties(scmVehRebateVeh,scmVehRebate);
String vinNo = scmVehRebateVeh.getVinNo();
ScmVehRebateVo scmVehRebateVo = baseMapper.selectByVinNoAndOrgSid(vinNo, dto.getCreateOrgSid());
if (scmVehRebateVo != null){
return rb.setMsg("车架号为"+vinNo+"的单车返利信息已存在");
}
scmVehRebate.setSid(sid);
scmVehRebate.setRebateTypeKey(dto.getRebateTypeKey());
scmVehRebate.setRebateTypeValue(dto.getRebateTypeValue());

3
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatewithapply/ScmVehRebateWithApplyService.java

@ -120,6 +120,9 @@ public class ScmVehRebateWithApplyService extends MybatisBaseService<ScmVehRebat
IPage<ScmVehRebateWithApplyVo> pagging = baseMapper.selectPageVo(page, qw);
for (ScmVehRebateWithApplyVo record : pagging.getRecords()) {
String withRebateTotal = record.getWithRebateTotal();
if (StringUtils.isBlank(withRebateTotal)){
withRebateTotal = "0.0";
}
withRebateTotal = withRebateTotal.substring(0, withRebateTotal.lastIndexOf("."));
record.setWithRebateTotal(withRebateTotal);
}

7
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/model/BusSaleOrderInitModelInfoQuery.java

@ -27,4 +27,11 @@ public class BusSaleOrderInitModelInfoQuery implements Query {
@ApiModelProperty(value = "用户sid")
private String userSid;
@ApiModelProperty("公告型号sid")
private String publicModelSid;
@ApiModelProperty("公告型号")
private String publicModel;
private String saleOrderSid;
}

2
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/model/ModelDto.java

@ -35,4 +35,6 @@ public class ModelDto implements Dto {
@ApiModelProperty(value = "销售指导价")
@JsonProperty(value = "price")
private String guildPrice;
}

5
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/model/OrderInfoDto.java

@ -40,4 +40,9 @@ public class OrderInfoDto implements Dto {
private List<VehicleDto> nowCarList;
@ApiModelProperty(value = "已选择的采购订单列表")
private List<VehicleOrderDto> readyCarList;
@ApiModelProperty("公告型号")
private String publicModel;
@ApiModelProperty("公告型号sid")
private String publicModelSid;
}

5
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/saleOrders/model/OrderInfoVo.java

@ -45,4 +45,9 @@ public class OrderInfoVo implements Vo {
@ApiModelProperty(value = "销售指导价:后端内部使用")
private String price;
@ApiModelProperty("公告型号sid")
private String publicModelSid;
@ApiModelProperty("公告型号")
private String publicModel;
}

11
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/virtualOrders/AppBusMainDepositFeign.java

@ -1,7 +1,6 @@
package com.yxt.anrui.terminal.api.autoservice.virtualOrders;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.deposit.*;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.GetNodeQuery;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.GetNodeVo;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.ScmVirtualOrderTaskQuery;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.orders.*;
@ -112,16 +111,6 @@ public interface AppBusMainDepositFeign {
/************************************** 流程节点 ********************************************/
@ApiOperation(value = "获取上一个环节")
@PostMapping(value = "/getPreviousNodesForReject")
@ResponseBody
ResultBean<List<GetNodeVo>> getPreviousNodesForReject(@Valid @RequestBody GetNodeQuery query);
@ApiOperation(value = "获取下一个环节")
@PostMapping(value = "/getNextNodesForSubmit")
@ResponseBody
ResultBean<List<GetNodeVo>> getNextNodesForSubmit(@Valid @RequestBody GetNodeQuery query);
@ApiOperation(value = "驳回任务")
@PutMapping(value = "/reject")
@ResponseBody

18
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/virtualOrders/AppBusMainDepositFeignFallback.java

@ -25,15 +25,7 @@
*********************************************************/
package com.yxt.anrui.terminal.api.autoservice.virtualOrders;
import com.yxt.anrui.buscenter.api.busdeposit.AppBusDepositBusDetailsVo;
import com.yxt.anrui.buscenter.api.busdeposit.AppBusDepositBuscenterDetailVo;
import com.yxt.anrui.buscenter.api.busdepositvehicle.AppBusDepositVehicleDetailVo;
import com.yxt.anrui.buscenter.api.busdepositvehicle.AppBusDepositVehicleDetailsInitQuery;
import com.yxt.anrui.buscenter.api.busdepositvehicle.AppBusDepositVehicleDetailsInitVo;
import com.yxt.anrui.buscenter.api.busdepositvehicle.AppBusDepositVehicleDto;
import com.yxt.anrui.buscenter.api.busmaindeposit.AppBusDepositBuscenterDto;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.deposit.*;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.GetNodeQuery;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.GetNodeVo;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.ScmVirtualOrderTaskQuery;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.orders.*;
@ -125,16 +117,6 @@ public class AppBusMainDepositFeignFallback implements AppBusMainDepositFeign {
return null;
}
@Override
public ResultBean<List<GetNodeVo>> getPreviousNodesForReject(GetNodeQuery query) {
return null;
}
@Override
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNodeQuery query) {
return null;
}
@Override
public ResultBean taskReject(ScmVirtualOrderTaskQuery query) {
return null;

21
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/virtualOrders/flowable/GetNodeQuery.java

@ -1,21 +0,0 @@
package com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@Data
public class GetNodeQuery implements Query {
private static final long serialVersionUID = -1142359748202597961L;
@ApiModelProperty(value = "环节定义id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
// @ApiModelProperty(value = "分支字段及业务字段")
// private Map<String, Object> formVariables;
}

30
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/virtualOrders/AppBusMainDepositRest.java

@ -26,16 +26,8 @@
package com.yxt.anrui.terminal.biz.autoservice.virtualOrders;
import com.yxt.anrui.buscenter.api.busdeposit.AppBusDepositBusDetailsVo;
import com.yxt.anrui.buscenter.api.busdeposit.AppBusDepositBuscenterDetailVo;
import com.yxt.anrui.buscenter.api.busdepositvehicle.AppBusDepositVehicleDetailVo;
import com.yxt.anrui.buscenter.api.busdepositvehicle.AppBusDepositVehicleDetailsInitQuery;
import com.yxt.anrui.buscenter.api.busdepositvehicle.AppBusDepositVehicleDetailsInitVo;
import com.yxt.anrui.buscenter.api.busdepositvehicle.AppBusDepositVehicleDto;
import com.yxt.anrui.buscenter.api.busmaindeposit.AppBusDepositBuscenterDto;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.*;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.deposit.*;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.GetNodeQuery;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.GetNodeVo;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.ScmVirtualOrderTaskQuery;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.orders.*;
@ -239,28 +231,6 @@ public class AppBusMainDepositRest implements AppBusMainDepositFeign {
}
/************************************** 流程节点 ********************************************/
/**
* 获取上一个环节
*
* @param query
* @return
*/
@Override
public ResultBean<List<GetNodeVo>> getPreviousNodesForReject(GetNodeQuery query) {
return appBusMainDepositService.getPreviousNodesForReject(query);
}
/**
* 获取下一个环节
*
* @param query
* @return
*/
@Override
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNodeQuery query) {
return appBusMainDepositService.getNextNodesForSubmit(query);
}
/**
* 驳回任务
*

46
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/virtualOrders/AppBusMainDepositService.java

@ -38,7 +38,6 @@ import com.yxt.anrui.buscenter.api.busmaindeposit.*;
import com.yxt.anrui.buscenter.api.busmaindeposit.AppBusDepositBuscenterDto;
import com.yxt.anrui.buscenter.api.busmaindeposit.flowable.*;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.deposit.*;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.GetNodeQuery;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.GetNodeVo;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.flowable.ScmVirtualOrderTaskQuery;
import com.yxt.anrui.terminal.api.autoservice.virtualOrders.orders.*;
@ -46,7 +45,6 @@ import com.yxt.anrui.terminal.api.autoservice.virtualOrders.vehicle.*;
import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.flowable.GressionQuery;
import com.yxt.anrui.terminal.config.CoverUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.query.Query;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.BeanUtils;
@ -132,10 +130,10 @@ public class AppBusMainDepositService {
public ResultBean<List<DepositRecordsVo>> getDepositRecords(String depositBillNo) {
ResultBean<List<DepositRecordsVo>> rb = ResultBean.fireFail();
List<DepositRecordsVo> list = new ArrayList<>();
DepositRecordsVo vo = new DepositRecordsVo();
ResultBean<List<BusDepositRecordsVo>> depositRecords = busDepositFictitiousFeign.getDepositRecords(depositBillNo);
List<BusDepositRecordsVo> data = depositRecords.getData();
for (BusDepositRecordsVo datum : data) {
DepositRecordsVo vo = new DepositRecordsVo();
BeanUtils.copyProperties(datum, vo);
list.add(vo);
}
@ -342,48 +340,6 @@ public class AppBusMainDepositService {
return resultBean;
}
/**
* 获取上一个环节
*
* @param query
* @return
*/
public ResultBean<List<GetNodeVo>> getPreviousNodesForReject(GetNodeQuery query) {
ResultBean<List<GetNodeVo>> rb = ResultBean.fireFail();
AppGetNodeQuery appGetNodeQuery = new AppGetNodeQuery();
List<GetNodeVo> list = new ArrayList<>();
GetNodeVo getNodeVo = new GetNodeVo();
BeanUtils.copyProperties(query, appGetNodeQuery);
ResultBean<List<AppGetNodeVo>> previousNodesForReject = busMainDepositFeign.getPreviousNodesForReject(appGetNodeQuery);
List<AppGetNodeVo> data = previousNodesForReject.getData();
for (AppGetNodeVo datum : data) {
BeanUtils.copyProperties(datum, getNodeVo);
list.add(getNodeVo);
}
return rb.success().setData(list);
}
/**
* 获取下一个环节
*
* @param query
* @return
*/
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNodeQuery query) {
ResultBean<List<GetNodeVo>> rb = ResultBean.fireFail();
AppGetNodeQuery appGetNodeQuery = new AppGetNodeQuery();
List<GetNodeVo> list = new ArrayList<>();
GetNodeVo getNodeVo = new GetNodeVo();
BeanUtils.copyProperties(query, appGetNodeQuery);
ResultBean<List<AppGetNodeVo>> previousNodesForReject = busMainDepositFeign.getNextNodesForSubmit(appGetNodeQuery);
List<AppGetNodeVo> data = previousNodesForReject.getData();
for (AppGetNodeVo datum : data) {
BeanUtils.copyProperties(datum, getNodeVo);
list.add(getNodeVo);
}
return rb.success().setData(list);
}
/**
* 驳回任务
*

Loading…
Cancel
Save