Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 2 years ago
parent
commit
9b8b74483d
  1. 16
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseSalesReturnVo.java
  2. 11
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseVehicleOutFeign.java
  3. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehmodelconfig/BaseVehmodelConfigFeign.java
  4. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehmodelconfig/BaseVehmodelConfigFeignFallback.java
  5. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java
  6. 8
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutMapper.java
  7. 27
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutMapper.xml
  8. 12
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutRest.java
  9. 30
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java
  10. 2
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehmodelconfig/BaseVehmodelConfigMapper.java
  11. 10
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehmodelconfig/BaseVehmodelConfigMapper.xml
  12. 12
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehmodelconfig/BaseVehmodelConfigRest.java
  13. 9
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehmodelconfig/BaseVehmodelConfigService.java
  14. 4
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderloancontract/BusSalesOrderLoancontractFeign.java
  15. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderloancontract/BusSalesOrderLoancontractFeignFallback.java
  16. 37
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesreturnorders/BusSalesReturnOrders.java
  17. 34
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesreturnorders/BusSalesReturnOrdersDto.java
  18. 71
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesreturnorders/BusSalesReturnOrdersFeign.java
  19. 57
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesreturnorders/BusSalesReturnOrdersFeignFallback.java
  20. 1
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  21. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractMapper.java
  22. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractRest.java
  23. 6
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractService.java
  24. 96
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java
  25. 19
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesreturnorders/BusSalesReturnOrdersMapper.java
  26. 10
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesreturnorders/BusSalesReturnOrdersMapper.xml
  27. 29
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesreturnorders/BusSalesReturnOrdersRest.java
  28. 61
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesreturnorders/BusSalesReturnOrdersService.java
  29. 179
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandService.java
  30. 69
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java
  31. 6
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java
  32. 4
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java
  33. 54
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/salesreturn/SalesReturn.java
  34. 82
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  35. 59
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/SalesReturnOrdersCastToKingDeeBillFields.java
  36. 97
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/SalesReturnOrdersService.java
  37. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/data.json
  38. 142
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/data_FEntity.json
  39. 13
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/data_data.json
  40. 112
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/data_model.json
  41. 208
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/remarks.txt
  42. 2
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserInfoVo.java
  43. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.xml
  44. 2
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultDto.java
  45. 14
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultFeign.java
  46. 10
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultFeignFallback.java
  47. 33
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultQuery.java
  48. 33
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultVo.java
  49. 1
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanhomevisitinvestigatefile/LoanAttachTypeEnum.java
  50. 23
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultMapper.java
  51. 45
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultMapper.xml
  52. 75
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultRest.java
  53. 197
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultService.java
  54. 15
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyMapper.xml
  55. 5
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsService.java
  56. 2
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/creditreview/CreditReviewDetailsQuery.java
  57. 1
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/creditreview/IdentityDetailsVo.java
  58. 3
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/creditreview/CreditReviewService.java

16
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseSalesReturnVo.java

@ -0,0 +1,16 @@
package com.yxt.anrui.base.api.basevehicleout;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/8/31 16:04
*/
@Data
public class BaseSalesReturnVo {
private String mainSid;
private String customerNo;
private String materialCode;
}

11
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseVehicleOutFeign.java

@ -87,6 +87,17 @@ public interface BaseVehicleOutFeign {
@PostMapping("/ctxsckd")
@ResponseBody
ResultBean ctxsckd(@RequestParam("xsckdSid") String xsckdSid);
@ApiOperation("退车成功后查询出库记录")
@PostMapping("/selectByVehReturn")
@ResponseBody
public ResultBean<BaseSalesReturnVo> selectByVehReturn(@RequestParam("vinSid") String vinSid, @RequestParam("contractNo") String contractNo);
@ApiOperation("退车成功后删除出库记录")
@PostMapping("/deleteByVehReturn")
@ResponseBody
public ResultBean deleteByVehReturn(@RequestParam("vinSid") String vinSid, @RequestParam("mainSid") String mainSid);
}

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehmodelconfig/BaseVehmodelConfigFeign.java

@ -118,7 +118,7 @@ public interface BaseVehmodelConfigFeign {
*/
@ApiOperation("根据分公司查询车型配置关联表中的车型信息")
@PostMapping("/selModelByUseOrgSid")
ResultBean<List<BaseVehmodelConfigVos>> selModelByUseOrgSid(@RequestParam("useOrgSid") String useOrgSid);
ResultBean<List<BaseVehmodelConfigVos>> selModelByUseOrgSid(@RequestParam("useOrgSid") String useOrgSid,@RequestParam(value = "name",required = false) String name);
/**
* 根据分公司sid查询车型和常用配置关联表

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehmodelconfig/BaseVehmodelConfigFeignFallback.java

@ -94,7 +94,7 @@ public class BaseVehmodelConfigFeignFallback implements BaseVehmodelConfigFeign
}
@Override
public ResultBean<List<BaseVehmodelConfigVos>> selModelByUseOrgSid(String useOrgSid) {
public ResultBean<List<BaseVehmodelConfigVos>> selModelByUseOrgSid(String useOrgSid, String name) {
return null;
}

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

@ -32,9 +32,11 @@ public enum BillTypeEnum {
XSDDTCSQ("XSDDTCSQ", "销售订单退车申请"),
QKTCSQ("QKTCSQ", "欠款提车申请"),
GCCKSQ("GCCKSQ", "挂车出库申请"),
XXTHS("XXTHS", "销售退货单"),
JCZLQRD("JCZLQRD", "交车资料确认单"),
JCECQRD("JCECQRD", "交车资料二次确认单");
private String billType;
private String billTypeName;

8
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutMapper.java

@ -26,7 +26,7 @@ public interface BaseVehicleOutMapper extends BaseMapper<BaseVehicleOut> {
int selectCountByVinSid(String vinSid);
IPage<BaseVehicleOutVo> selectPageVo(IPage<BaseVehicleOut> page, @Param(Constants.WRAPPER)QueryWrapper<BaseVehicleOut> qw);
IPage<BaseVehicleOutVo> selectPageVo(IPage<BaseVehicleOut> page, @Param(Constants.WRAPPER) QueryWrapper<BaseVehicleOut> qw);
BaseVehicleOutDetailsVo details(String sid);
@ -37,7 +37,7 @@ public interface BaseVehicleOutMapper extends BaseMapper<BaseVehicleOut> {
@Select("select * from base_vehicle_out where mainSid = #{xsckdSid}")
List<BaseVehicleOut> fetchByMainSid(String xsckdSid);
BaseVehicleOutDetailsVo selByOrgSidAndVehSid(@Param("useOrgSid") String useOrgSid,@Param("vehSid") String vehSid);
BaseVehicleOutDetailsVo selByOrgSidAndVehSid(@Param("useOrgSid") String useOrgSid, @Param("vehSid") String vehSid);
List<BaseVehicleOutVoExecl> selByExcel(@Param(Constants.WRAPPER) Wrapper<BaseVehicleOutVoExecl> qw);
@ -47,4 +47,8 @@ public interface BaseVehicleOutMapper extends BaseMapper<BaseVehicleOut> {
BaseVehicleOutDetailsNewVo detailsNew(String sid);
List<BaseVehicleOutVoExeclNew> listExcelNew(@Param(Constants.WRAPPER) QueryWrapper<BaseVehicleOutVoExeclNew> qw);
BaseSalesReturnVo selectByVehReturn(@Param("vinSid") String vinSid, @Param("contractNo") String contractNo);
void deleteByVehReturn(@Param("vinSid") String vinSid, @Param("mainSid") String mainSid);
}

27
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutMapper.xml

@ -1,6 +1,7 @@
<?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.base.biz.basevehicleout.BaseVehicleOutMapper">
<!--库存状态为库存或调入、且问题状态为无问题的、且为相同合同内-->
<select id="selectCountBySid" resultType="java.lang.String">
select vinNo
@ -18,7 +19,7 @@
select count(*)
from base_vehicle
where (vehicleStateValue &lt;&gt; '库存'
or vehicleStateValue &lt;&gt; '调入')
or vehicleStateValue &lt;&gt; '调入')
and isProblemVeh &lt;&gt; '0'
and sid = #{vinSid}
</select>
@ -100,7 +101,7 @@
bo.trailerOrInstallDealPrice,
bo.totalDealPrice
from base_vehicle_out bo
left join base_vehicle_out_apply ba on ba.sid = bo.mainSid
left join base_vehicle_out_apply ba on ba.sid = bo.mainSid
where bo.sid = #{sid}
</select>
@ -116,7 +117,7 @@
from base_vehicle_out_apply
where billNo LIKE concat(#{billNo}, '%')
order by billNo desc
limit 1
limit 1
</select>
<select id="selByOrgSidAndVehSid" resultType="com.yxt.anrui.base.api.basevehicleout.BaseVehicleOutDetailsVo">
@ -192,8 +193,8 @@
bvo.`rebateMoneyTwo`,
bvo.`remarks`
FROM base_vehicle_out bvo
LEFT JOIN base_vehicle_out_apply bvoa
ON bvo.`mainSid` = bvoa.`sid`
LEFT JOIN base_vehicle_out_apply bvoa
ON bvo.`mainSid` = bvoa.`sid`
WHERE bvo.sid = #{sid}
</select>
@ -235,4 +236,20 @@
${ew.sqlSegment}
</where>
</select>
<select id="selectByVehReturn" resultType="com.yxt.anrui.base.api.basevehicleout.BaseSalesReturnVo">
SELECT ba.sid as mainSid,
bv.cwCustomerNo as customerNo,
bv.materialCode as materialCode
FROM base_vehicle_out as bv
JOIN base_vehicle_out_apply as ba ON bv.mainSid = ba.sid
WHERE bv.vinSid = #{vinSid}
AND ba.contractNo = #{contractNo}
</select>
<update id="deleteByVehReturn">
UPDATE base_vehicle_out
SET isDelete = 1
WHERE vinSid = #{vinSid}
AND mainSid = #{mainSid}
</update>
</mapper>

12
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutRest.java

@ -123,4 +123,16 @@ public class BaseVehicleOutRest implements BaseVehicleOutFeign {
public ResultBean ctxsckd(String xsckdSid) {
return baseVehicleOutService.ctxsckd(xsckdSid);
}
@Override
public ResultBean<BaseSalesReturnVo> selectByVehReturn(String vinSid, String contractNo) {
return baseVehicleOutService.selectByVehReturn(vinSid,contractNo);
}
@Override
public ResultBean deleteByVehReturn(String vinSid, String mainSid) {
return baseVehicleOutService.deleteByVehReturn(vinSid,mainSid);
}
}

30
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java

@ -65,6 +65,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.*;
@ -1009,10 +1010,10 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
}
}
BusSalesOrder busSalesOrder = busSalesOrderFeign.selectOrderByContractNo(appDto.getContractNo()).getData();
if ("2".equals(busSalesOrder.getFinancePlan())){
if ("2".equals(busSalesOrder.getFinancePlan())) {
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.selectByNoAndVinSid(appDto.getContractNo(), baseVehicle.getSid()).getData();
String otherReceivableMoney = finUncollectedReceivablesDetailedFeign.selectByBusVinSid(busSalesOrderVehicle.getSid()).getData();
if (StringUtils.isNotBlank(otherReceivableMoney)){
if (StringUtils.isNotBlank(otherReceivableMoney)) {
note = note + "贴息抵车款" + otherReceivableMoney + "元。";
}
}
@ -1857,10 +1858,10 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
}
}
BusSalesOrder busSalesOrder = busSalesOrderFeign.selectOrderByContractNo(baseVehicleOutApply.getContractNo()).getData();
if ("2".equals(busSalesOrder.getFinancePlan())){
if ("2".equals(busSalesOrder.getFinancePlan())) {
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.selectByNoAndVinSid(baseVehicleOutApply.getContractNo(), baseVehicle.getSid()).getData();
String otherReceivableMoney = finUncollectedReceivablesDetailedFeign.selectByBusVinSid(busSalesOrderVehicle.getSid()).getData();
if (StringUtils.isNotBlank(otherReceivableMoney)){
if (StringUtils.isNotBlank(otherReceivableMoney)) {
note = note + "贴息抵车款" + otherReceivableMoney + "元。";
}
}
@ -1934,10 +1935,10 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
for (BaseVehicleOutVoExeclNew baseVehicleOutVoExeclNew : baseVehicleOutVoExeclNews) {
baseVehicleOutVoExeclNew.setRankNo(id);
String createOrgSid = baseVehicleOutVoExeclNew.getCreateOrgSid();
if (StringUtils.isNotBlank(createOrgSid)){
if (StringUtils.isNotBlank(createOrgSid)) {
SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(createOrgSid).getData();
baseVehicleOutVoExeclNew.setCreateOrgName(sysOrganizationVo.getName());
}else {
} else {
baseVehicleOutVoExeclNew.setCreateOrgName("无");
}
id = id + 1;
@ -2056,7 +2057,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
AppDeliveredDetailsVo appDeliveredDetailsVo = busDeliveredApplyFeign.getRetrievalApplyInfoBySid(baseVehicleOutApply.getBusSid()).getData();
if (appDeliveredDetailsVo != null) {
List<PCHistTaskListAndCommentList> flowRecordVo = flowableFeignPro.flowRecordAndComment(appDeliveredDetailsVo.getProcInstId(), "1").getData();
if (flowRecordVo != null){
if (flowRecordVo != null) {
for (PCHistTaskListAndCommentList flowTask : flowRecordVo) {
if (flowTask.getFlowableRecordVo() != null) {
Map<String, Object> flowableRecordVo = flowTask.getFlowableRecordVo();
@ -2071,7 +2072,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
dataMap.put("jrsp", assigneeName + finishTime);
} else if ("Activity_1xzxtct".equals(taskDefKey) || "Activity_1ohp3br".equals(taskDefKey)) {
dataMap.put("confirmName", assigneeName + finishTime);
}else if ("Activity_1461e4e".equals(taskDefKey)){
} else if ("Activity_1461e4e".equals(taskDefKey)) {
dataMap.put("cwsp", assigneeName + finishTime);
}
}
@ -2168,4 +2169,17 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
public String selectNum(String billNo) {
return baseMapper.selectNum(billNo);
}
@Transactional(rollbackFor = Exception.class)
public ResultBean deleteByVehReturn(String vinSid, String mainSid) {
ResultBean rb = ResultBean.fireFail();
baseMapper.deleteByVehReturn(vinSid, mainSid);
return rb.success();
}
public ResultBean<BaseSalesReturnVo> selectByVehReturn(String vinSid, String contractNo) {
ResultBean<BaseSalesReturnVo> rb = ResultBean.fireFail();
BaseSalesReturnVo vo = baseMapper.selectByVehReturn(vinSid, contractNo);
return rb.success().setData(vo);
}
}

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

@ -141,5 +141,5 @@ public interface BaseVehmodelConfigMapper extends BaseMapper<BaseVehmodelConfig>
@Select("SELECT configurationItemsSid FROM base_vehmodel_config WHERE modelSid = #{modelSid}")
List<String> selectModelConfigSidByModelSid(@Param("modelSid") String modelSid);
List<BaseVehmodelConfigVos> selModelByUseOrgSid(String useOrgSid);
List<BaseVehmodelConfigVos> selModelByUseOrgSid(@Param(Constants.WRAPPER) QueryWrapper qw);
}

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

@ -372,10 +372,12 @@
<select id="selModelByUseOrgSid" resultType="com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelConfigVos">
SELECT DISTINCT bvm.`sid` AS modelSid,
bvm.vehicleAlias
bvm.vehicleAlias
FROM base_vehmodel_config bvc
LEFT JOIN base_vehicle_model bvm
ON bvc.`modelSid` = bvm.`sid`
WHERE useOrgSid = #{useOrgSid}
LEFT JOIN base_vehicle_model bvm
ON bvc.`modelSid` = bvm.`sid`
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

12
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehmodelconfig/BaseVehmodelConfigRest.java

@ -119,8 +119,8 @@ public class BaseVehmodelConfigRest implements BaseVehmodelConfigFeign {
}
@Override
public ResultBean<BaseVehmodelVo> selectOne(String modelSid, String configSid,String orgSid) {
return baseVehmodelConfigService.selectOne(modelSid, configSid,orgSid);
public ResultBean<BaseVehmodelVo> selectOne(String modelSid, String configSid, String orgSid) {
return baseVehmodelConfigService.selectOne(modelSid, configSid, orgSid);
}
@Override
@ -131,8 +131,8 @@ public class BaseVehmodelConfigRest implements BaseVehmodelConfigFeign {
}
@Override
public ResultBean<List<BaseVehmodelConfigVos>> selModelByUseOrgSid(String useOrgSid) {
return baseVehmodelConfigService.selModelByUseOrgSid(useOrgSid);
public ResultBean<List<BaseVehmodelConfigVos>> selModelByUseOrgSid(String useOrgSid, String name) {
return baseVehmodelConfigService.selModelByUseOrgSid(useOrgSid, name);
}
@Override
@ -189,12 +189,12 @@ public class BaseVehmodelConfigRest implements BaseVehmodelConfigFeign {
@Override
public ResultBean<AppCarConfigSummaryVo> selectCarConfigSummary(String modelSid, String configSid, String userSid) {
return baseVehmodelConfigService.selectCarConfigSummary(modelSid, configSid,userSid);
return baseVehmodelConfigService.selectCarConfigSummary(modelSid, configSid, userSid);
}
@Override
public ResultBean<AppCarConfigSummaryVo> selectCarConfigSummary1(String modelSid, String configSid, String orgSid) {
return baseVehmodelConfigService.selectCarConfigSummary1(modelSid, configSid,orgSid);
return baseVehmodelConfigService.selectCarConfigSummary1(modelSid, configSid, orgSid);
}
@Override

9
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehmodelconfig/BaseVehmodelConfigService.java

@ -942,9 +942,14 @@ public class BaseVehmodelConfigService extends MybatisBaseService<BaseVehmodelCo
return baseMapper.selectModelConfigSidByModelSid(modelSid);
}
public ResultBean<List<BaseVehmodelConfigVos>> selModelByUseOrgSid(String useOrgSid) {
public ResultBean<List<BaseVehmodelConfigVos>> selModelByUseOrgSid(String useOrgSid, String name) {
ResultBean rb = ResultBean.fireFail();
List<BaseVehmodelConfigVos> baseVehmodelConfigVos = baseMapper.selModelByUseOrgSid(useOrgSid);
QueryWrapper qw = new QueryWrapper<>();
qw.eq("bvc.useOrgSid", useOrgSid);
if (StringUtils.isNotBlank(name)) {
qw.like("bvm.vehicleAlias", name);
}
List<BaseVehmodelConfigVos> baseVehmodelConfigVos = baseMapper.selModelByUseOrgSid(qw);
return rb.success().setData(baseVehmodelConfigVos);
}
}

4
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderloancontract/BusSalesOrderLoancontractFeign.java

@ -86,4 +86,8 @@ public interface BusSalesOrderLoancontractFeign {
@ResponseBody
public ResultBean<BusSalesOrderLoancontract> fetchDetailsByOrderSid(@PathVariable("orderSid") String sid);
@ApiOperation("更新资方合同号和状态")
@PostMapping("/updateBankConAndBusNo")
@ResponseBody
ResultBean updateBankConAndBusNo(@RequestParam("loanContractSid") String loanContractSid,@RequestParam("bankContractNo") String bankContractNo);
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorderloancontract/BusSalesOrderLoancontractFeignFallback.java

@ -79,4 +79,9 @@ public class BusSalesOrderLoancontractFeignFallback implements BusSalesOrderLoan
public ResultBean<BusSalesOrderLoancontract> fetchDetailsByOrderSid(String sid) {
return null;
}
@Override
public ResultBean updateBankConAndBusNo(String loanContractSid, String bankContractNo) {
return null;
}
}

37
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesreturnorders/BusSalesReturnOrders.java

@ -0,0 +1,37 @@
package com.yxt.anrui.buscenter.api.bussalesreturnorders;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/8/31 11:52
*/
@Data
@TableName("bus_sales_return_orders")
public class BusSalesReturnOrders extends BaseEntity {
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("车辆sid")
private String vinSid;
@ApiModelProperty("客户编码")
private String customerNo;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("物料编码")
private String materialCode;
@ApiModelProperty("应退数量")
private String mustQty;
@ApiModelProperty("实退数量")
private String realQty;
@ApiModelProperty("销售组织编码")
private String saleOrgId;
@ApiModelProperty("是否赠品")
private String isFree;
@ApiModelProperty("组织全路径")
private String orgSidPath;
}

34
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesreturnorders/BusSalesReturnOrdersDto.java

@ -0,0 +1,34 @@
package com.yxt.anrui.buscenter.api.bussalesreturnorders;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/8/31 16:28
*/
@Data
public class BusSalesReturnOrdersDto implements Dto {
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("车辆sid")
private String vinSid;
@ApiModelProperty("客户编码")
private String customerNo;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("物料编码")
private String materialCode;
@ApiModelProperty("应退数量")
private String mustQty;
@ApiModelProperty("实退数量")
private String realQty;
@ApiModelProperty("销售组织编码")
private String saleOrgId;
@ApiModelProperty("是否赠品")
private String isFree;
@ApiModelProperty("组织全路径")
private String orgSidPath;
}

71
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesreturnorders/BusSalesReturnOrdersFeign.java

@ -0,0 +1,71 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.bussalesreturnorders;
import com.yxt.anrui.buscenter.api.bussealapply.*;
import com.yxt.anrui.buscenter.api.busvehicleinformationhandover.BusVehicleInformationHandoverDto;
import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.Map;
/**
* Project: bus_seal_apply(盖章申请管理) <br/>
* File: BusSealApplyFeign.java <br/>
* Class: com.yxt.anrui.buscenter.api.bussealapply.BusSealApplyFeign <br/>
* Description: 盖章申请表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-24 13:45:23 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "销售退货单表")
@FeignClient(
contextId = "anrui-buscenter-BusSalesReturnOrders",
name = "anrui-buscenter",
path = "v1/bussalesreturnorders",
fallback = BusSealApplyFeignFallback.class)
public interface BusSalesReturnOrdersFeign {
@ApiOperation("新增")
@PostMapping("/saveReturnOrders")
@ResponseBody
public ResultBean<String> saveReturnOrders(@RequestBody BusSalesReturnOrdersDto dto);
}

57
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesreturnorders/BusSalesReturnOrdersFeignFallback.java

@ -0,0 +1,57 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.buscenter.api.bussalesreturnorders;
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-buscenter(业务管理) <br/>
* File: BusSalesOrderVehicleFeignFallback.java <br/>
* Class: com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeignFallback <br/>
* Description: 销售订单-车辆信息. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-04-27 13:39:04 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Component
public class BusSalesReturnOrdersFeignFallback implements BusSalesReturnOrdersFeign {
@Override
public ResultBean<String> saveReturnOrders(BusSalesReturnOrdersDto dto) {
return null;
}
}

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

@ -2157,7 +2157,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (StringUtils.isBlank(dto.getUserSid())) {
return rb.setMsg("用户sid不能为空");
}
// AppUserOrgInfoVo data = sysUserFeign.getUserOrgInfoByUserSid(dto.getUserSid()).getData();
SysUserVo sysUserInfoVo = sysUserFeign.fetchBySid(dto.getUserSid()).getData();
//根据客户sid查询客户信息
ResultBean<AppCrmCustomerTempInfoVo> crmCustomerTempInfoVoResultBean = crmCustomerTempFeign.getAppCustomerTempDetailsBySid(dto.getCustomerSid());

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractMapper.java

@ -35,6 +35,7 @@ import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontract;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontractVo;
import org.apache.ibatis.annotations.Update;
import java.util.List;
@ -69,4 +70,7 @@ public interface BusSalesOrderLoancontractMapper extends BaseMapper<BusSalesOrde
@Select("select * from bus_sales_order_loancontract where borrowerSid = #{saleOrderBorrowerSid}")
List<BusSalesOrderLoancontractDetailsVo> selectByBorrowerSid(String saleOrderBorrowerSid);
@Update("update bus_sales_order_loancontract set bankContractNo=#{bankContractNo},busNo='305' where sid=#{loanContractSid}")
void updateBankConAndBusNo(@Param("loanContractSid") String loanContractSid,@Param("bankContractNo") String bankContractNo);
}

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractRest.java

@ -111,4 +111,9 @@ public class BusSalesOrderLoancontractRest implements BusSalesOrderLoancontractF
BusSalesOrderLoancontract entity = busSalesOrderLoancontractService.fetchDetailsByOrderSid(sid);
return rb.success().setData(entity);
}
@Override
public ResultBean updateBankConAndBusNo(String loanContractSid, String bankContractNo) {
return busSalesOrderLoancontractService.updateBankConAndBusNo(loanContractSid,bankContractNo);
}
}

6
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderloancontract/BusSalesOrderLoancontractService.java

@ -118,4 +118,10 @@ public class BusSalesOrderLoancontractService extends MybatisBaseService<BusSale
BusSalesOrderLoancontract entity = baseMapper.fetchDetailsByOrderSid(sid);
return entity;
}
public ResultBean updateBankConAndBusNo(String loanContractSid, String bankContractNo) {
ResultBean rb = ResultBean.fireFail();
baseMapper.updateBankConAndBusNo(loanContractSid,bankContractNo);
return rb.success();
}
}

96
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderreturnvehapply/BusSalesOrderReturnVehApplyService.java

@ -37,6 +37,8 @@ import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateFeign;
import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateVo;
import com.yxt.anrui.base.api.basevehicleout.BaseSalesReturnVo;
import com.yxt.anrui.base.api.basevehicleout.BaseVehicleOutFeign;
import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleState;
import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleStateDto;
import com.yxt.anrui.base.api.basevehiclestate.BaseVehicleStateEnum;
@ -60,9 +62,12 @@ import com.yxt.anrui.buscenter.api.bussalesorderreturnvehapply.flow.GetNodeVo;
import com.yxt.anrui.buscenter.api.bussalesorderreturnvehapply.flow.SubmitBusSalesOrderReturnVehApplyDto;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesreturnorders.BusSalesReturnOrders;
import com.yxt.anrui.buscenter.api.bussalesreturnorders.BusSalesReturnOrdersDto;
import com.yxt.anrui.buscenter.biz.bussalesorder.BusSalesOrderService;
import com.yxt.anrui.buscenter.biz.bussalesorderreturnveh.BusSalesOrderReturnVehService;
import com.yxt.anrui.buscenter.biz.bussalesordervehicle.BusSalesOrderVehicleService;
import com.yxt.anrui.buscenter.biz.bussalesreturnorders.BusSalesReturnOrdersService;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailed;
@ -71,6 +76,8 @@ import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedRec
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedFeign;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.StateQuery;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign;
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.fin.api.kingdee.salesreturn.SalesReturn;
import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flow2.FlowFeign;
@ -101,6 +108,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@ -159,6 +167,16 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
@Autowired
private FinVehicleInvoiceFeign finVehicleInvoiceFeign;
@Autowired
private BaseVehicleOutFeign baseVehicleOutFeign;
@Autowired
private BusSalesReturnOrdersService busSalesReturnOrdersService;
@Autowired
private FinKingDeeFeign finKingDeeFeign;
public PagerVo<BusSalesOrderReturnVehApplyVo> listPageVo(PagerQuery<BusSalesOrderReturnVehApplyQuery> pq) {
BusSalesOrderReturnVehApplyQuery query = pq.getParams();
QueryWrapper<BusSalesOrderReturnVehApply> qw = new QueryWrapper<>();
@ -634,10 +652,67 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
List<BusSalesOrderVehicle> vehicleList = new ArrayList<>();
BusSalesOrder finalBusSalesOrderOne = busSalesOrderService.fetchBySid(orderSid);
//---------------------修改车辆持久状态-------------------------
SalesReturn salesReturn = new SalesReturn();
List<SalesReturn.SalesReturnDetailDto> salesReturnDetails = new ArrayList<>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//-----------------生成销售退货单号----------------------------
ResultBean<String> orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(finalBusSalesOrderOne.getOrgSidPath());
String billNo = "";
if (orgSidByPath.getSuccess()) {
String userOrgSid = orgSidByPath.getData();
//交车资料确认单编号
billNo = busSalesReturnOrdersService.getApplyCode(userOrgSid);
}
for (BusSalesOrderReturnVehDetailsVo busSalesOrderReturnVehDetailsVo : busSalesOrderReturnVehDetailsVos) {
//8.30优化退车申请---如果车辆sid不为空-----
if (StringUtils.isNotBlank(busSalesOrderReturnVehDetailsVo.getVehSid())) {
String vehSid = busSalesOrderReturnVehDetailsVo.getVehSid();
//------------对已经出库的车推送销售退货单----------------------
BaseVehicleSelectVo vehicleSelectVo = baseVehicleFeign.details(vehSid).getData();
if (null != vehicleSelectVo) {
if (StringUtils.isNotBlank(vehicleSelectVo.getVehicleStateValue())) {
if ("出库".equals(vehicleSelectVo.getVehicleStateValue())) {
SalesReturn.SalesReturnDetailDto salesReturnDetailDto = new SalesReturn.SalesReturnDetailDto();
BusSalesReturnOrdersDto busSalesReturnOrdersDto = new BusSalesReturnOrdersDto();
busSalesReturnOrdersDto.setVinSid(vehSid);
busSalesReturnOrdersDto.setOrgSidPath(finalBusSalesOrderOne.getOrgSidPath());
busSalesReturnOrdersDto.setVinNo(busSalesOrderReturnVehDetailsVo.getVinNo());
if (StringUtils.isNotBlank(vehicleSelectVo.getOrgCode())) {
salesReturn.setFSaleOrgId(vehicleSelectVo.getOrgCode());
salesReturn.setFStockOrgId(vehicleSelectVo.getOrgCode());
busSalesReturnOrdersDto.setSaleOrgId(vehicleSelectVo.getOrgCode());
}
BaseSalesReturnVo returnVo = baseVehicleOutFeign.selectByVehReturn(vehSid, busSalesOrderReturnVehApply.getContractNo()).getData();
if (null != returnVo) {
if (StringUtils.isNotBlank(returnVo.getMainSid())) {
baseVehicleOutFeign.deleteByVehReturn(vehSid, returnVo.getMainSid());
}
if (StringUtils.isNotBlank(returnVo.getMaterialCode())) {
String realQty = "1";
busSalesReturnOrdersDto.setMaterialCode(returnVo.getMaterialCode());
busSalesReturnOrdersDto.setIsFree("0");
busSalesReturnOrdersDto.setRealQty(realQty);
salesReturnDetailDto.setFMaterialId(returnVo.getMaterialCode());
salesReturnDetailDto.setFIsFree("false");
salesReturnDetailDto.setFRealQty(realQty);
salesReturnDetailDto.setFUnitID("liang");
salesReturnDetailDto.setFDeliveryDate(sdf.format(new Date()));
salesReturn.setFDate(sdf.format(new Date()));
}
if (StringUtils.isNotBlank(returnVo.getCustomerNo())) {
salesReturn.setCustomerNo(returnVo.getCustomerNo());
busSalesReturnOrdersDto.setCustomerNo(returnVo.getCustomerNo());
}
if (StringUtils.isNotBlank(billNo)) {
salesReturn.setBillNo(billNo);
busSalesReturnOrdersDto.setBillNo(billNo);
}
busSalesReturnOrdersService.saveReturnOrders(busSalesReturnOrdersDto);
salesReturnDetails.add(salesReturnDetailDto);
}
}
}
}
baseVehicleFeign.updateLockedState(vehSid);
//------修改车辆台账库存状态为库存、销售日期清空、成交价清空、锁定状态未锁定
baseVehicleFeign.updateStateForReturnVeh(vehSid);
@ -648,6 +723,12 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.fetchBySid(busSalesOrderReturnVehDetailsVo.getBusVinSid());
vehicleList.add(busSalesOrderVehicle);
}
//----------------------------推送金蝶销售退货单---------------------------------
salesReturnDetails.removeAll(Collections.singleton(null));
if (!salesReturnDetails.isEmpty()) {
salesReturn.setSalesReturnDetails(salesReturnDetails);
finKingDeeFeign.draftSalesReturnOrders(salesReturn);
}
//------------------------修改车辆持久状态--------------------------
vehicleList.removeAll(Collections.singleton(null));
if (!vehicleList.isEmpty()) {
@ -856,7 +937,7 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
BusSalesOrderReturnVehApply busSalesOrderReturnVehApply = fetchBySid(query.getBusinessSid());
String businessTaskId = busSalesOrderReturnVehApply.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if (businessTaskId.equals(query.getTaskId())) {
if (query.getUserSid().equals(busSalesOrderReturnVehApply.getCreateBySid())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
@ -866,7 +947,20 @@ public class BusSalesOrderReturnVehApplyService extends MybatisBaseService<BusSa
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
return rb.success().setData(resultBean.getData());
} else {
if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
updateFlowFiled(map);
return rb.success().setData(resultBean.getData());
}
}
}
return rb.setMsg("操作失败!提交的数据不一致!");
}

19
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesreturnorders/BusSalesReturnOrdersMapper.java

@ -0,0 +1,19 @@
package com.yxt.anrui.buscenter.biz.bussalesreturnorders;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.buscenter.api.bussalesreturnorders.BusSalesReturnOrders;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/5/16 13:53
*/
@Mapper
public interface BusSalesReturnOrdersMapper extends BaseMapper<BusSalesReturnOrders> {
int selectNum(String bill);
}

10
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesreturnorders/BusSalesReturnOrdersMapper.xml

@ -0,0 +1,10 @@
<?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.buscenter.biz.bussalesreturnorders.BusSalesReturnOrdersMapper">
<select id="selectNum" resultType="java.lang.Integer">
select IFNULL(CAST(REPLACE(MAX(billNo), #{bill}, '') AS SIGNED), 0) as code
from bus_sales_return_orders
where billNo LIKE concat(#{bill}, '%')
</select>
</mapper>

29
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesreturnorders/BusSalesReturnOrdersRest.java

@ -0,0 +1,29 @@
package com.yxt.anrui.buscenter.biz.bussalesreturnorders;
import com.yxt.anrui.buscenter.api.bussalesreturnorders.BusSalesReturnOrdersDto;
import com.yxt.anrui.buscenter.api.bussalesreturnorders.BusSalesReturnOrdersFeign;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/5/16 13:54
*/
@Api(tags = "销售退货单")
@RestController("com.yxt.anrui.buscenter.biz.bussalesreturnorders.BusSalesReturnOrdersRest")
@RequestMapping("v1/bussalesreturnorders")
public class BusSalesReturnOrdersRest implements BusSalesReturnOrdersFeign {
@Autowired
private BusSalesReturnOrdersService busSalesReturnOrdersService;
@Override
public ResultBean<String> saveReturnOrders(BusSalesReturnOrdersDto dto) {
return busSalesReturnOrdersService.saveReturnOrders(dto);
}
}

61
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesreturnorders/BusSalesReturnOrdersService.java

@ -0,0 +1,61 @@
package com.yxt.anrui.buscenter.biz.bussalesreturnorders;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.buscenter.api.bushandoverprepare.HandoverInformationIntemVo;
import com.yxt.anrui.buscenter.api.bussalesreturnorders.BusSalesReturnOrders;
import com.yxt.anrui.buscenter.api.bussalesreturnorders.BusSalesReturnOrdersDto;
import com.yxt.anrui.buscenter.api.busvehicleinformation.BusVehicleInformation;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/5/16 13:53
*/
@Service
public class BusSalesReturnOrdersService extends MybatisBaseService<BusSalesReturnOrdersMapper, BusSalesReturnOrders> {
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
public ResultBean<String> saveReturnOrders(BusSalesReturnOrdersDto dto) {
ResultBean<String> rb = ResultBean.fireFail();
BusSalesReturnOrders busSalesReturnOrders = new BusSalesReturnOrders();
BeanUtil.copyProperties(dto, busSalesReturnOrders, "id", "sid");
baseMapper.insert(busSalesReturnOrders);
return rb.success().setData(busSalesReturnOrders.getSid());
}
/**
* 生成交销售退货单单据编号
*
* @param orgSid
* @return
*/
public String getApplyCode(String orgSid) {
//获取分公司sid
ResultBean<SysOrganizationVo> resultBean1 = sysOrganizationFeign.fetchBySid(orgSid);
String orgCode = resultBean1.getData().getOrgCode();
BillNo b = new BillNo();
b.setOrgCode(orgCode);
b.setBillType(BillTypeEnum.XXTHS.getBillType());
String bill = Rule.getBill(b);
int i = baseMapper.selectNum(bill);
String billNo = Rule.getBillNo(bill, i);
return billNo;
}
}

179
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmvehicledemand/CrmVehicledemandService.java

@ -8,7 +8,6 @@ import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModelFeign;
import com.yxt.anrui.base.api.basevehmodelconfig.AppModelVeDetailVo;
import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelConfigFeign;
import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelVo;
import com.yxt.anrui.buscenter.api.bussalesorder.OrderSolutionVo;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp;
import com.yxt.anrui.crm.api.crmfindemand.CrmFindemand;
import com.yxt.anrui.crm.api.crmfindemand.CrmFindemandDto;
@ -415,7 +414,7 @@ public class CrmVehicledemandService extends MybatisBaseService<CrmVehicledemand
}
entity.setTypeKey("1");
entity.setType("资方常规");
}else{
} else {
boolean isShowMore = finNormal.isShowMore();
if (isShowMore) {
loanSolutionsFeign.deleteByOrderSid(sid);
@ -622,57 +621,11 @@ public class CrmVehicledemandService extends MybatisBaseService<CrmVehicledemand
BeanUtil.copyProperties(dto, crmVehicledemand, "sid");
crmVehicledemand.setCustomerSid(crmCustomerTemp.getSid());
crmVehicledemand.setStates("1");
if ("1".equals(dto.getPurchaseMethod())) {
if ("2".equals(dto.getFinancePlan())) {//三方金融
if ("1".equals(dto.getTypeKey())) {//资方常规
CrmSolutions crmSolutions = dto.getCrmSolutions();
if (crmSolutions != null) {
SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(sid);
if ("2".equals(dto.getFinancePlan())) {
solutionsDto.setShowMore(false);
}
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
}
crmVehicledemand.setTypeKey("1");
crmVehicledemand.setType("资方常规");
}
}
ResultBean<CrmVehicledemand> resultBean = getCrmDemand(dto, crmVehicledemand);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
} else {
//新增客户的金融方案
if(StringUtils.isNotBlank(dto.getTypeKey())){
if ("1".equals(dto.getTypeKey())) {//资方常规
CrmSolutions crmSolutions = dto.getCrmSolutions();
if (crmSolutions != null) {
SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(sid);
solutionsDto.setShowMore(true);
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
}
crmVehicledemand.setTypeKey("1");
crmVehicledemand.setType("资方常规");
} else {//定制金融
}
SolutionsDetailsVo loanSolutions = loanSolutionsFeign.selectDetailss(sid).getData();
if (loanSolutions != null) {
if (StringUtils.isBlank(loanSolutions.getTypeKey())) {
crmVehicledemand.setFinancePlan("4");//担保
crmVehicledemand.setFinancePlanValue("担保");//担保
} else {
crmVehicledemand.setFinancePlan("3");//自营非担保
crmVehicledemand.setFinancePlanValue("自营非担保");//自营非担保
}
}
}
crmVehicledemand = resultBean.getData();
}
baseMapper.insert(crmVehicledemand);
@ -683,71 +636,81 @@ public class CrmVehicledemandService extends MybatisBaseService<CrmVehicledemand
}
BeanUtil.copyProperties(dto, crmVehicledemand, "sid");
crmVehicledemand.setCustomerSid(crmCustomerTemp.getSid());
if ("1".equals(dto.getPurchaseMethod())) {//全款
if ("2".equals(dto.getFinancePlan())) {//三方金融
if ("1".equals(dto.getTypeKey())) {//资方常规
CrmSolutions crmSolutions = dto.getCrmSolutions();
if (crmSolutions != null) {
SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(sid);
if ("2".equals(dto.getFinancePlan())) {
solutionsDto.setShowMore(false);
}
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
ResultBean<CrmVehicledemand> resultBean = getCrmDemand(dto, crmVehicledemand);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
} else {
crmVehicledemand = resultBean.getData();
}
baseMapper.updateById(crmVehicledemand);
}
return rb.success();
}
public ResultBean<CrmVehicledemand> getCrmDemand(CrmVehicledemandsDto dto, CrmVehicledemand crmVehicledemand) {
ResultBean<CrmVehicledemand> rb = ResultBean.fireFail();
//如果是全款且自有资金的,需要删除金融方案
String purchaseMethod = dto.getPurchaseMethod();
if ("1".equals(purchaseMethod)) {//全款
if ("1".equals(dto.getFinancePlan())) {//自有资金
crmVehicledemand.setType(null);
crmVehicledemand.setTypeKey(null);
loanSolutionsFeign.deleteByOrderSid(crmVehicledemand.getSid());
} else {//三方金融
if ("1".equals(dto.getTypeKey())) {//资方常规
CrmSolutions solutions = dto.getCrmSolutions();
if (solutions != null) {
SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(solutions, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(crmVehicledemand.getSid());
if ("2".equals(dto.getFinancePlan())) {
solutionsDto.setShowMore(false);
}
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
crmVehicledemand.setTypeKey("1");
crmVehicledemand.setType("资方常规");
}
} else {
crmVehicledemand.setType(null);
crmVehicledemand.setTypeKey(null);
loanSolutionsFeign.deleteByOrderSid(sid);
crmVehicledemand.setTypeKey("1");
crmVehicledemand.setType("资方常规");
}
} else {//贷款
//新增客户的金融方案
if(StringUtils.isNotBlank(dto.getTypeKey())){
if ("1".equals(dto.getTypeKey())) {//资方常规
CrmSolutions crmSolutions = dto.getCrmSolutions();
if (crmSolutions != null) {
SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(sid);
solutionsDto.setShowMore(true);
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
} else {
loanSolutionsFeign.deleteByOrderSid(sid);
}
} else {//贷款
if (StringUtils.isNotBlank(dto.getTypeKey())) {
if ("1".equals(dto.getTypeKey())) {//资方常规
CrmSolutions crmSolutions = dto.getCrmSolutions();
if (crmSolutions != null) {
SolutionssDto solutionsDto = new SolutionssDto();
BeanUtil.copyProperties(crmSolutions, solutionsDto, "sid");
solutionsDto.setSaleOrderSid(crmVehicledemand.getSid());
solutionsDto.setShowMore(true);
ResultBean resultBean = loanSolutionsFeign.save2(solutionsDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
crmVehicledemand.setTypeKey("1");
crmVehicledemand.setType("资方常规");
} else {//定制金融
}
SolutionsDetailsVo loanSolutions = loanSolutionsFeign.selectDetailss(sid).getData();
if (loanSolutions != null) {
if (StringUtils.isBlank(loanSolutions.getTypeKey())) {
crmVehicledemand.setFinancePlan("4");//担保
crmVehicledemand.setFinancePlanValue("担保");//担保
} else {
crmVehicledemand.setFinancePlan("3");//自营非担保
crmVehicledemand.setFinancePlanValue("自营非担保");//自营非担保
}
crmVehicledemand.setTypeKey("1");
crmVehicledemand.setType("资方常规");
} else {//定制金融
}
SolutionsDetailsVo loanSolutions = loanSolutionsFeign.selectDetailss(crmVehicledemand.getSid()).getData();
if (loanSolutions != null) {
if (StringUtils.isBlank(loanSolutions.getTypeKey())) {
crmVehicledemand.setFinancePlan("4");//担保
crmVehicledemand.setFinancePlanValue("担保");//担保
} else {
crmVehicledemand.setFinancePlan("3");//自营非担保
crmVehicledemand.setFinancePlanValue("自营非担保");//自营非担保
}
}else{
loanSolutionsFeign.deleteByOrderSid(sid);
crmVehicledemand.setTypeKey(null);
crmVehicledemand.setType(null);
}
} else {
loanSolutionsFeign.deleteByOrderSid(crmVehicledemand.getSid());
crmVehicledemand.setTypeKey(null);
crmVehicledemand.setType(null);
}
baseMapper.updateById(crmVehicledemand);
}
return rb.success();
return rb.success().setData(crmVehicledemand);
}
public ResultBean<CrmVehicledemandsVo> details(String sid) {

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

@ -17,6 +17,7 @@ import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
import com.yxt.anrui.fin.api.kingdee.otherarreceivable.OtherReceivable;
import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb;
import com.yxt.anrui.fin.api.kingdee.push.STKInStockPushPurmrb;
import com.yxt.anrui.fin.api.kingdee.salesreturn.SalesReturn;
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;
@ -34,22 +35,25 @@ import java.util.List;
*/
@Api(tags = "财务模块调用金蝶暂存业务单据的接口")
@FeignClient(
contextId = "anrui-fin-FinKingDeeFeign",
name = "anrui-fin",
path = "/finKingDee",
fallback =FinKingDeeFeignFallBack.class
contextId = "anrui-fin-FinKingDeeFeign",
name = "anrui-fin",
path = "/finKingDee",
fallback = FinKingDeeFeignFallBack.class
)
public interface FinKingDeeFeign {
/**
* 入账暂存应付单的接口
*
* @return
*/
@ApiOperation("入账暂存应付单的接口")
@PostMapping("/draftEntryBill")
@ResponseBody
ResultBean<String> draftEntryBill(@RequestBody @Valid APPayable APPayable);
/**
* 生成的应付单的数据推送到金蝶的平台中
*
* @return
*/
@ApiOperation("入账暂存应收单的接口")
@ -70,111 +74,138 @@ public interface FinKingDeeFeign {
@ApiOperation("暂存付款单的接口")
@PostMapping("/draftApPayBill")
@ResponseBody
public ResultBean<String> draftApPayBill(@RequestBody @Valid ApPayBill apPayBill) ;
public ResultBean<String> draftApPayBill(@RequestBody @Valid ApPayBill apPayBill);
@ApiOperation("暂存采购入库单的接口")
@PostMapping("/draftStkInStock")
@ResponseBody
public ResultBean<String> draftStkInStock(@RequestBody @Valid StkInStock stkInStock) throws Exception;
@ApiOperation("根据物料查询入库单的状态 的审核状态 true 审核通过 false 未审核通过")
@GetMapping("/getStinstockState/{fMaterialId}")
@ResponseBody
public ResultBean<Boolean> getStinstockState(@PathVariable("fMaterialId")String fMaterialId) ;
public ResultBean<Boolean> getStinstockState(@PathVariable("fMaterialId") String fMaterialId);
@ApiOperation("暂存采购退料单的接口")
@PostMapping("/draftPurMrb")
@ResponseBody
public ResultBean<String> draftPurMrb(@RequestBody @Valid PurMrb purMrb) ;
public ResultBean<String> draftPurMrb(@RequestBody @Valid PurMrb purMrb);
@ApiOperation("暂存采购出库单的接口")
@PostMapping("/draftSalOutStock")
@ResponseBody
public ResultBean<String> draftSalOutStock(@RequestBody @Valid SalOutStock salOutStock) ;
public ResultBean<String> draftSalOutStock(@RequestBody @Valid SalOutStock salOutStock);
@ApiOperation("暂存物料的接口")
@PostMapping("/draftBdMaterialList")
@ResponseBody
public ResultBean<String> draftBdMaterialList(@RequestBody List<BdMaterial> bdMaterial) ;
public ResultBean<String> draftBdMaterialList(@RequestBody List<BdMaterial> bdMaterial);
@ApiOperation("批量修改物料的接口")
@PostMapping("/saveBdMaterialList")
@ResponseBody
public ResultBean<String> saveBdMaterialList(@RequestBody List<BdMaterial> bdMaterial) ;
public ResultBean<String> saveBdMaterialList(@RequestBody List<BdMaterial> bdMaterial);
@ApiOperation("暂存直接调拨单的接口")
@PostMapping("/draftStkTransferDirect")
@ResponseBody
public ResultBean<String> draftStkTransferDirect(@RequestBody @Valid StkTransferDirect stkTransferDirect) ;
public ResultBean<String> draftStkTransferDirect(@RequestBody @Valid StkTransferDirect stkTransferDirect);
@ApiOperation("暂存组织机构的接口")
@PostMapping("/draftOrgOrganizations")
@ResponseBody
public ResultBean<String> draftOrgOrganizations(@RequestBody @Valid OrgOrganizations orgOrganizations) ;
public ResultBean<String> draftOrgOrganizations(@RequestBody @Valid OrgOrganizations orgOrganizations);
@ApiOperation("批量修改组织机构的接口")
@PostMapping("/updateOrgOrganizations")
@ResponseBody
public ResultBean<String> updateOrgOrganizations(@RequestBody @Valid List<OrgOrganizations> orgOrganizations) ;
public ResultBean<String> updateOrgOrganizations(@RequestBody @Valid List<OrgOrganizations> orgOrganizations);
@ApiOperation("暂存供应商的接口")
@PostMapping("/draftBdSupplier")
@ResponseBody
ResultBean<String> draftBdSupplier(@RequestBody @Valid BdSupplier bdSupplier);
@ApiOperation("修改供应商的接口")
@PostMapping("/updateBdSupplier")
@ResponseBody
ResultBean<String> updateBdSupplier(@RequestBody @Valid BdSupplier bdSupplier);
@ApiOperation("新增客户信息的接口 适用客户查询的批量推送财务客户数据")
@PostMapping("/draftBdCustomer")
@ResponseBody
ResultBean<String> draftBdCustomer(@RequestBody @Valid BdCustomer bdCustomer);
@ApiOperation("新增客户信息的接口 适用客户查询的批量推送财务客户数据 批量")
@PostMapping("/draftBdCustomers")
@ResponseBody
ResultBean<String> draftBdCustomers(@RequestBody List<BdCustomer> bdCustomers);
@ApiOperation("修改客户信息的接口")
@PostMapping("/saveBdCustomers")
@ResponseBody
ResultBean<String> saveBdCustomers(@RequestBody @Valid List<BdCustomer> bdCustomers);
@ApiOperation("根据编码查询客户的存在状态 true 存在,false不存在")
@GetMapping("/customerExistState/{number}")
@ResponseBody
ResultBean<Boolean> customerExistState(@PathVariable("number") String number);
@ApiOperation("单个 销售出库单 推送客户信息")
@PostMapping("/updateSingleCustomer")
@ResponseBody
public ResultBean<String> updateSingleCustomer(@RequestBody @Valid BdCustomer bdCustomer);
@ApiOperation("使用number查看数据表单")
@GetMapping("/getKingDataInfoByNumber/{formId}/{number}")
@ResponseBody
ResultBean<String> getKingDataInfoByNumber(@PathVariable("formId") String formId, @PathVariable("number") String number);
@ApiOperation("单据查询")
@GetMapping("/executeBillQuery/{formId}/{number}")
@ResponseBody
ResultBean<String> executeBillQuery();
@ApiOperation("下推")
@PostMapping("/draftStkInStockPushPurMrb")
@ResponseBody
public ResultBean<String> draftStkInStockPushPurMrb(@RequestBody @Valid STKInStockPushPurmrb push) throws Exception;
@ApiOperation("暂存仓库信息的接口")
@PostMapping("/drafBDStock")
@ResponseBody
public ResultBean<String> drafBDtStock(@RequestBody @Valid BDStock bDtStock) throws Exception;
@ApiOperation("修改仓库信息的接口")
@PostMapping("/updateBDtStock")
@ResponseBody
public ResultBean<String> updateBDtStock(@RequestBody @Valid BDStock bDtStock);
@ApiOperation("暂存银行的接口")
@PostMapping("/drafBDBank")
@ResponseBody
public ResultBean<String> drafBDBank(@RequestBody @Valid BDBank bdBank) ;
public ResultBean<String> drafBDBank(@RequestBody @Valid BDBank bdBank);
@ApiOperation("修改银行的接口")
@PostMapping("/updateBDBank")
@ResponseBody
public ResultBean<String> updateBDBank(@RequestBody @Valid BDBank bdBank) ;
public ResultBean<String> updateBDBank(@RequestBody @Valid BDBank bdBank);
@ApiOperation("暂存银行账号的接口")
@PostMapping("/drafCNBankacnt")
@ResponseBody
public ResultBean<String> drafCNBankacnt(@RequestBody @Valid CNBankacnt cnBankacnt);
@ApiOperation("修改银行账号的接口")
@PostMapping("/updateCNBankacnt")
@ResponseBody
public ResultBean<String> updateCNBankacnt(@RequestBody @Valid CNBankacnt cNBankacnt) ;
public ResultBean<String> updateCNBankacnt(@RequestBody @Valid CNBankacnt cNBankacnt);
@ApiOperation("暂存收付款的接口")
@PostMapping("/draftCNRecpaypurpose")
@ResponseBody
public ResultBean<String> draftCNRecpaypurpose(@RequestBody @Valid CNRecpaypurpose cNRecpaypurpose);
@ApiOperation("保存部门的接口")
@PostMapping("/saveBdDepartment")
@ResponseBody
@ -194,4 +225,10 @@ public interface FinKingDeeFeign {
@PostMapping("/updateBDEmpinfo")
@ResponseBody
public ResultBean<String> updateBDEmpinfo(@RequestBody @Valid BDEmpinfo bdEmpinfo);
@ApiOperation("暂存销售退货单的接口")
@PostMapping("/draftSalesReturnOrders")
@ResponseBody
ResultBean<String> draftSalesReturnOrders(@RequestBody @Valid SalesReturn salesReturn);
}

6
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java

@ -17,6 +17,7 @@ import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
import com.yxt.anrui.fin.api.kingdee.otherarreceivable.OtherReceivable;
import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb;
import com.yxt.anrui.fin.api.kingdee.push.STKInStockPushPurmrb;
import com.yxt.anrui.fin.api.kingdee.salesreturn.SalesReturn;
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;
@ -200,5 +201,10 @@ implements FinKingDeeFeign{
return null;
}
@Override
public ResultBean<String> draftSalesReturnOrders(SalesReturn salesReturn) {
return null;
}
}

4
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java

@ -5,6 +5,7 @@ public enum KingDeeBillId {
AR_RECEIVABLE("AR_receivable", "应收单"),
AR_OTHERRECEIVABLE("AR_OtherRecAble", "其他应收单"),
AP_PAYBILL("AP_PAYBILL", "付款单"),
SAL_RETURNSTOCK("SAL_RETURNSTOCK","销售退货单"),
AR_RECEIVEBILL("AR_RECEIVEBILL", "收款单"),
STK_INSTOCK("STK_InStock", "采购入库单"),
PUR_MRB("PUR_MRB", "采购退料单"),
@ -23,6 +24,9 @@ public enum KingDeeBillId {
BD_SETTLETYPE("BD_SETTLETYPE", "结算方式"),
CN_RECPAYPURPOSE("CN_RECPAYPURPOSE", "收付款用途"),
BD_STOCK("BD_STOCK", "仓库");
private String ID;
private String NAME;

54
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/salesreturn/SalesReturn.java

@ -0,0 +1,54 @@
package com.yxt.anrui.fin.api.kingdee.salesreturn;
import com.yxt.anrui.fin.api.kingdee.otherarreceivable.OtherReceivable;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/8/31 10:48
*/
/**
* 销售退货单
*/
@Data
public class SalesReturn {
@ApiModelProperty("单据类型")
public String billType = "XSTHD01_SYS";
@ApiModelProperty("退货客户编码")
public String customerNo;
@ApiModelProperty("库存组织编码")
public String FStockOrgId;
@ApiModelProperty("单据编号")
public String billNo;
@ApiModelProperty("币别")
public String currency = "PRE001";
@ApiModelProperty("日期")
public String FDate;
@ApiModelProperty("销售组织编码")
public String FSaleOrgId;
@ApiModelProperty("收款明细")
public List<SalesReturn.SalesReturnDetailDto> salesReturnDetails;
@Data
public static class SalesReturnDetailDto implements Dto {
@ApiModelProperty("物料编码")
public String FMaterialId;
@ApiModelProperty("库存单位")
public String FUnitID;
@ApiModelProperty("应退数量")
public String FMustQty;
@ApiModelProperty("实退数量")
public String FRealQty;
@ApiModelProperty("退货日期")
public String FDeliveryDate;
@ApiModelProperty("是否赠品")
public String FIsFree;
}
}

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

@ -21,6 +21,7 @@ import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations;
import com.yxt.anrui.fin.api.kingdee.otherarreceivable.OtherReceivable;
import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb;
import com.yxt.anrui.fin.api.kingdee.push.STKInStockPushPurmrb;
import com.yxt.anrui.fin.api.kingdee.salesreturn.SalesReturn;
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;
@ -41,6 +42,7 @@ import com.yxt.anrui.fin.biz.kingdee.otherreceivablebill.OtherReceivableBillServ
import com.yxt.anrui.fin.biz.kingdee.purmrb.PurMrbService;
import com.yxt.anrui.fin.biz.kingdee.push.PushService;
import com.yxt.anrui.fin.biz.kingdee.receivablebill.ReceivableBillService;
import com.yxt.anrui.fin.biz.kingdee.salesreturn.SalesReturnOrdersService;
import com.yxt.anrui.fin.biz.kingdee.saloutstock.SalOutStockService;
import com.yxt.anrui.fin.biz.kingdee.stkinstock.STKInStockService;
import com.yxt.anrui.fin.biz.kingdee.stktransferdirect.StkTransferDirectService;
@ -151,9 +153,10 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@Autowired
private BDEmpinfoService bDEmpinfoService;
/**
*
*/
@Autowired
private FinKingDeeService finKingDeeService;
private FinKingDeeService finKingDeeService;
/**
* 收款单
*/
@ -164,19 +167,27 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
*/
@Autowired
private OtherReceivableBillService otherReceivableBillService;
/**
* 销售退货单
*/
@Autowired
private SalesReturnOrdersService salesReturnOrdersService;
@ApiOperation("入账暂存应付单的接口")
@PostMapping("/draftEntryBill")
@ResponseBody
@Override
public ResultBean<String> draftEntryBill(@RequestBody @Valid APPayable APPayable) {
public ResultBean<String> draftEntryBill(@RequestBody @Valid APPayable APPayable) {
log.info("FinKingDeeFeignRest-draftEntryBill:{}", JSONObject.toJSONString(APPayable));
return apPayableService.draftAPPayable(APPayable);
}
@ApiOperation("暂存应收单的接口")
@PostMapping("/draftReceivableBill")
@ResponseBody
@Override
public ResultBean<String> draftReceivableBill(@RequestBody @Valid ARReceivable aRReceivable) {
public ResultBean<String> draftReceivableBill(@RequestBody @Valid ARReceivable aRReceivable) {
log.info("FinKingDeeFeignRest-draftReceivableBill:{}", JSONObject.toJSONString(aRReceivable));
return receivableBillService.draftReceivableBill(aRReceivable);
}
@ -187,6 +198,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
return otherReceivableBillService.otherReceivableBillService(otherReceivable);
}
@Override
public ResultBean<String> draftSalesReturnOrders(SalesReturn salesReturn) {
log.info("FinKingDeeFeignRest-draftSalesReturnOrders:{}", JSONObject.toJSONString(salesReturn));
return salesReturnOrdersService.salesReturnOrdersService(salesReturn);
}
@ApiOperation("暂存收款单的接口")
@PostMapping("/draftArReceivebill")
@ResponseBody
@ -206,7 +223,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@PostMapping("/draftApPayBill")
@ResponseBody
@Override
public ResultBean<String> draftApPayBill(@RequestBody @Valid ApPayBill apPayBill) {
public ResultBean<String> draftApPayBill(@RequestBody @Valid ApPayBill apPayBill) {
log.info("FinKingDeeFeignRest-draftApPayBill:{}", JSONObject.toJSONString(apPayBill));
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
kingDeeOrgAndDeptCode.setOrgCode(apPayBill.getFPURCHASEORGID());
@ -223,7 +240,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@PostMapping("/draftStkInStock")
@ResponseBody
@Override
public ResultBean<String> draftStkInStock(@RequestBody @Valid StkInStock stkInStock) throws Exception {
public ResultBean<String> draftStkInStock(@RequestBody @Valid StkInStock stkInStock) throws Exception {
log.info("FinKingDeeFeignRest-draftStkInStock:{}", JSONObject.toJSONString(stkInStock));
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
kingDeeOrgAndDeptCode.setOrgCode(stkInStock.getFPurchaseOrgId());
@ -235,11 +252,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
stkInStock.setFSupplierId(kingDeeOrgAndDeptCode.getOtherCode());
return stkInStockService.draftStkInStock(stkInStock);
}
@ApiOperation("根据物料查询入库单的状态 的审核状态 true 审核通过 false 未审核通过")
@GetMapping("/getStinstockState/{fMaterialId}")
@ResponseBody
@Override
public ResultBean<Boolean> getStinstockState(String fMaterialId) {
public ResultBean<Boolean> getStinstockState(String fMaterialId) {
log.info("FinKingDeeFeignRest-getStinstockState:{}", JSONObject.toJSONString(fMaterialId));
return stkInStockService.getStinstockState(fMaterialId);
}
@ -248,7 +266,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@PostMapping("/draftPurMrb")
@ResponseBody
@Override
public ResultBean<String> draftPurMrb(@RequestBody @Valid PurMrb purMrb) {
public ResultBean<String> draftPurMrb(@RequestBody @Valid PurMrb purMrb) {
log.info("FinKingDeeFeignRest-draftPurMrb:{}", JSONObject.toJSONString(purMrb));
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
kingDeeOrgAndDeptCode.setOrgCode(purMrb.getFStockOrgId());
@ -258,11 +276,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
purMrb.setFSupplierID(kingDeeOrgAndDeptCode.getOtherCode());
return purMrbService.draftPurMrb(purMrb);
}
@ApiOperation("暂存采购出库单的接口")
@PostMapping("/draftSalOutStock")
@ResponseBody
@Override
public ResultBean<String> draftSalOutStock(@RequestBody @Valid SalOutStock salOutStock) {
public ResultBean<String> draftSalOutStock(@RequestBody @Valid SalOutStock salOutStock) {
log.info("FinKingDeeFeignRest-draftSalOutStock:{}", JSONObject.toJSONString(salOutStock));
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
kingDeeOrgAndDeptCode.setOrgCode(salOutStock.getFSaleOrgId());
@ -275,11 +294,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
//salOutStock.setF_PAEZ_Base(kingDeeOrgAndDeptCode.getOrgCode());
return salOutStockService.draftSalOutStock(salOutStock);
}
@ApiOperation("批量暂存物料的接口")
@PostMapping("/draftBdMaterialList")
@ResponseBody
@Override
public ResultBean<String> draftBdMaterialList(@RequestBody @Valid List<BdMaterial> bdMaterial) {
public ResultBean<String> draftBdMaterialList(@RequestBody @Valid List<BdMaterial> bdMaterial) {
log.info("FinKingDeeFeignRest-draftBdMaterialList:{}", JSONObject.toJSONString(bdMaterial));
for (BdMaterial material : bdMaterial) {
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
@ -289,11 +309,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
}
return bdMaterialService.draftBdMaterialList(bdMaterial);
}
@ApiOperation("批量修改物料的接口")
@PostMapping("/saveBdMaterialList")
@ResponseBody
@Override
public ResultBean<String> saveBdMaterialList(@RequestBody @Valid List<BdMaterial> bdMaterial) {
public ResultBean<String> saveBdMaterialList(@RequestBody @Valid List<BdMaterial> bdMaterial) {
log.info("FinKingDeeFeignRest-saveBdMaterialList:{}", JSONObject.toJSONString(bdMaterial));
for (BdMaterial material : bdMaterial) {
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
@ -303,6 +324,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
}
return bdMaterialService.saveBdMaterialList(bdMaterial);
}
@ApiOperation("暂存直接调拨单的接口")
@PostMapping("/draftStkTransferDirect")
@ResponseBody
@ -315,27 +337,30 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
stkTransferDirect.setFStockOrgId(kingDeeOrgAndDeptCode.getOrgCode());
return stkTransferDirectService.draftStkTransferDirect(stkTransferDirect);
}
@ApiOperation("暂存组织机构的接口")
@PostMapping("/draftOrgOrganizations")
@ResponseBody
@Override
public ResultBean<String> draftOrgOrganizations(@RequestBody @Valid OrgOrganizations orgOrganizations) {
public ResultBean<String> draftOrgOrganizations(@RequestBody @Valid OrgOrganizations orgOrganizations) {
log.info("FinKingDeeFeignRest-draftOrgOrganizations:{}", JSONObject.toJSONString(orgOrganizations));
return orgOrganizationsService.draftOrgOrganizations(orgOrganizations);
}
@ApiOperation("批量修改组织机构的接口")
@PostMapping("/updateOrgOrganizations")
@ResponseBody
@Override
public ResultBean<String> updateOrgOrganizations(@RequestBody @Valid List<OrgOrganizations> orgOrganizations) {
public ResultBean<String> updateOrgOrganizations(@RequestBody @Valid List<OrgOrganizations> orgOrganizations) {
log.info("FinKingDeeFeignRest-updateOrgOrganizations:{}", JSONObject.toJSONString(orgOrganizations));
return orgOrganizationsService.updateOrgOrganizations(orgOrganizations);
}
@ApiOperation("暂存供应商的接口")
@PostMapping("/draftBdSupplier")
@ResponseBody
@Override
public ResultBean<String> draftBdSupplier(@RequestBody @Valid BdSupplier bdSupplier) {
public ResultBean<String> draftBdSupplier(@RequestBody @Valid BdSupplier bdSupplier) {
log.info("FinKingDeeFeignRest-draftBdSupplier:{}", JSONObject.toJSONString(bdSupplier));
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
kingDeeOrgAndDeptCode.setOrgCode(bdSupplier.getFUseOrgId());
@ -343,11 +368,12 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
bdSupplier.setFUseOrgId(kingDeeOrgAndDeptCode.getOrgCode());
return bdSupplierService.draftBdSupplier(bdSupplier);
}
@ApiOperation("修改供应商的接口")
@PostMapping("/updateBdSupplier")
@ResponseBody
@Override
public ResultBean<String> updateBdSupplier(@RequestBody @Valid BdSupplier bdSupplier) {
public ResultBean<String> updateBdSupplier(@RequestBody @Valid BdSupplier bdSupplier) {
log.info("FinKingDeeFeignRest-updateBdSupplier:{}", JSONObject.toJSONString(bdSupplier));
KingDeeOrgAndDeptCode kingDeeOrgAndDeptCode = new KingDeeOrgAndDeptCode();
kingDeeOrgAndDeptCode.setOrgCode(bdSupplier.getFUseOrgId());
@ -355,6 +381,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
bdSupplier.setFUseOrgId(kingDeeOrgAndDeptCode.getOrgCode());
return bdSupplierService.updateBdSupplier(bdSupplier);
}
@ApiOperation("暂存客户信息的接口")
@PostMapping("/draftBdCustomer")
@ResponseBody
@ -367,6 +394,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
bdCustomer.setTOrgIds(kingDeeOrgAndDeptCode.getOrgCode());
return bdCustomerService.draftBdCustomer(bdCustomer);
}
@ApiOperation("暂存客户信息的接口 批量")
@PostMapping("/draftBdCustomers")
@ResponseBody
@ -381,6 +409,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
}
return bdCustomerService.draftBdCustomers(bdCustomers);
}
@ApiOperation("修改客户信息的接口")
@PostMapping("/saveBdCustomers")
@ResponseBody
@ -393,24 +422,25 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
kingDeeOrgAndDeptCode = KingDeeUtils.orgAndDeptCodeMerge(kingDeeOrgAndDeptCode);
bdCustomer.setTOrgIds(kingDeeOrgAndDeptCode.getOrgCode());
}
return bdCustomerService.updateCustomers(bdCustomers);
return bdCustomerService.updateCustomers(bdCustomers);
}
@ApiOperation("根据编码查询客户的存在状态 true 存在,false不存在")
@GetMapping("/customerExistState/{number}")
@ResponseBody
@Override
public ResultBean<Boolean> customerExistState(String number) {
log.info("FinKingDeeFeignRest-customerExistState:{}", number);
return finKingDeeService.customerExistState(number);
return finKingDeeService.customerExistState(number);
}
@ApiOperation("单个 销售出库单 推送客户信息")
@PostMapping("/updateSingleCustomer")
@ResponseBody
@Override
public ResultBean<String> updateSingleCustomer( @RequestBody @Valid BdCustomer bdCustomers) {
public ResultBean<String> updateSingleCustomer(@RequestBody @Valid BdCustomer bdCustomers) {
log.info("FinKingDeeFeignRest-updateSingleCustomer:{}", JSONObject.toJSONString(bdCustomers));
return bdCustomerService.updateSingleCustomer(bdCustomers);
return bdCustomerService.updateSingleCustomer(bdCustomers);
}
@ApiOperation("使用number查看数据表单")
@ -419,8 +449,8 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
@Override
public ResultBean<String> getKingDataInfoByNumber(@PathVariable("formId") String formId,
@PathVariable("number") String number) {
log.info("FinKingDeeFeignRest-getKingDataInfoByNumber:{},{}", formId,number);
return finKingDeeService.accessKingDeeInterface(formId,number);
log.info("FinKingDeeFeignRest-getKingDataInfoByNumber:{},{}", formId, number);
return finKingDeeService.accessKingDeeInterface(formId, number);
}
@ApiOperation("单据查询")
@ -448,14 +478,16 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
log.info("FinKingDeeFeignRest-drafBDtStock:{}", JSONObject.toJSONString(bDtStock));
return bDStockService.draftBDStock(bDtStock);//bdCustomerService;//bdCustomerService.getKingBillDataInfoList("","");
}
@ApiOperation("修改仓库信息的接口")
@PostMapping("/updateBDtStock")
@ResponseBody
@Override
public ResultBean<String> updateBDtStock(@RequestBody @Valid BDStock bDtStock) {
public ResultBean<String> updateBDtStock(@RequestBody @Valid BDStock bDtStock) {
log.info("FinKingDeeFeignRest-updateBDtStock:{}", JSONObject.toJSONString(bDtStock));
return bDStockService.updateBDtStock(bDtStock);//bdCustomerService;//bdCustomerService.getKingBillDataInfoList("","");
}
@ApiOperation("暂存银行的接口")
@PostMapping("/drafBDBank")
@ResponseBody
@ -497,7 +529,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
kingDeeOrgAndDeptCode.setOrgCode(cNBankacnt.getFCreateOrgId());
kingDeeOrgAndDeptCode = KingDeeUtils.orgAndDeptCodeMerge(kingDeeOrgAndDeptCode);
cNBankacnt.setFCreateOrgId(kingDeeOrgAndDeptCode.getOrgCode());
return cnBankcntService.updateCNBankacnt(cNBankacnt);//bdCustomerService;//bdCustomerService.getKingBillDataInfoList("","");
return cnBankcntService.updateCNBankacnt(cNBankacnt);//bdCustomerService;//bdCustomerService.getKingBillDataInfoList("","");
}
@ApiOperation("暂存收付款用途的接口")
@ -508,6 +540,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
log.info("FinKingDeeFeignRest-draftCNRecpaypurpose:{}", JSONObject.toJSONString(cNRecpaypurpose));
return cNRecpaypurposeService.draftCNRecpaypurpose(cNRecpaypurpose);
}
@ApiOperation("保存部门的接口")
@PostMapping("/saveBdDepartment")
@ResponseBody
@ -520,6 +553,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
bdDepartment.setFUseOrgId(kingDeeOrgAndDeptCode.getOrgCode());
return bdDepartmentService.saveBdDepartment(bdDepartment);
}
@ApiOperation("修改部门的接口")
@PostMapping("/updateBdDepartment")
@ResponseBody
@ -532,6 +566,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
bdDepartment.setFUseOrgId(kingDeeOrgAndDeptCode.getOrgCode());
return bdDepartmentService.updateBdDepartment(bdDepartment);
}
@ApiOperation("保存员工的接口")
@PostMapping("/saveBDEmpinfo")
@ResponseBody
@ -540,6 +575,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
log.info("FinKingDeeFeignRest-saveBDEmpinfo:{}", JSONObject.toJSONString(bdEmpinfo));
return bDEmpinfoService.saveBDEmpinfo(bdEmpinfo);
}
@ApiOperation("修改员工的接口")
@PostMapping("/updateBDEmpinfo")
@ResponseBody
@ -548,4 +584,6 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
log.info("FinKingDeeFeignRest-updateBDEmpinfo:{}", JSONObject.toJSONString(bdEmpinfo));
return bDEmpinfoService.updateBDEmpinfo(bdEmpinfo);
}
}

59
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/SalesReturnOrdersCastToKingDeeBillFields.java

@ -0,0 +1,59 @@
package com.yxt.anrui.fin.biz.kingdee.salesreturn;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.parser.Feature;
import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 封装转换的类
*/
public class SalesReturnOrdersCastToKingDeeBillFields {
/**
* 构造金蝶需要的数据结构 并对字段赋值
*
* @param map_fEntityModel_
* @param vehicleList
* @return
*/
public static String getKingDeeData(Map<String, String> map_fEntityModel_, List<Map<String, String>> vehicleList) {
/**
* 取模板
*/
String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/salesreturn/data.json");
String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/salesreturn/data_data.json");
String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/salesreturn/data_model.json");
//模板字符创转json
JSONObject jsonObj = JSONObject.parseObject(readJsonFile, Feature.OrderedField);
JSONObject jsonFEntityData_ = JSONObject.parseObject(fEntityData_, Feature.OrderedField);
fEntityModel_ = KingDeeUtils.replaceTemplateParams(fEntityModel_, map_fEntityModel_);
JSONObject jsonFEntityModel_ = JSONObject.parseObject(fEntityModel_, Feature.OrderedField);
List<JSONObject> list_fEntity_ = new ArrayList<>();
//对模板字段赋值 根据传递进来的map数据的集合进行赋值
for (int i = 0; i < vehicleList.size(); i++) {
String fEntity_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/salesreturn/data_FEntity.json");
Map<String, String> params = vehicleList.get(i);
Map<String, String> map_fEntity_ = new HashMap<>();
for (Map.Entry<String, String> entry : params.entrySet()) {
map_fEntity_.put(entry.getKey(), entry.getValue());
}
fEntity_ = KingDeeUtils.replaceTemplateParams(fEntity_, map_fEntity_);
list_fEntity_.add(JSONObject.parseObject(fEntity_, Feature.OrderedField));
}
jsonFEntityModel_.put("FEntity", JSONArray.parseArray(JSON.toJSONString(list_fEntity_)));
jsonFEntityData_.put("Model", JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_), Feature.OrderedField));
jsonObj.put("data", jsonFEntityData_.toJSONString());
return jsonObj.toJSONString();
}
}

97
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/SalesReturnOrdersService.java

@ -0,0 +1,97 @@
package com.yxt.anrui.fin.biz.kingdee.salesreturn;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillId;
import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl;
import com.yxt.anrui.fin.api.kingdee.otherarreceivable.OtherReceivable;
import com.yxt.anrui.fin.api.kingdee.salesreturn.SalesReturn;
import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class SalesReturnOrdersService extends FinKingDeeService {
/**
* 生成的销售退货单的数据推送到金蝶的平台中
*
* @param salesReturn
* @return
*/
public ResultBean salesReturnOrdersService(SalesReturn salesReturn) {
ResultBean rb = ResultBean.fireFail();
//业务表的主表数据集合
Map<String, String> map_fEntityModel_ = new HashMap<>();
//客户
if (StringUtils.isBlank(salesReturn.getCustomerNo())) {
return rb.setMsg("客户编码不能为空");
}
map_fEntityModel_.put("FRetcustId", salesReturn.getCustomerNo());
//库存组织
if (StringUtils.isBlank(salesReturn.getFStockOrgId())) {
return rb.setMsg("库存组织不能为空");
}
map_fEntityModel_.put("FStockOrgId", salesReturn.getFStockOrgId());
//单据编号
if (StringUtils.isBlank(salesReturn.getBillNo())) {
return rb.setMsg("单据编号不能为空");
}
map_fEntityModel_.put("FBillNo", salesReturn.getBillNo());
//业务日期
if (StringUtils.isBlank(salesReturn.getFDate())) {
return rb.setMsg("业务日期不能为空");
}
map_fEntityModel_.put("FDate", salesReturn.getFDate());
//销售组织
if (StringUtils.isBlank(salesReturn.getFSaleOrgId())) {
return rb.setMsg("销售组织不能为空");
}
map_fEntityModel_.put("FSaleOrgId", salesReturn.getFSaleOrgId());
List<SalesReturn.SalesReturnDetailDto> salesReturnDetailDtos = salesReturn.getSalesReturnDetails() == null ? new ArrayList<>() : salesReturn.getSalesReturnDetails();
//准备 物料列表的数据
ResultBean<List<Map<String, String>>> vehicleListMap = createVehicleListsForReceivableBill(salesReturnDetailDtos);
if (!vehicleListMap.getSuccess()) {
return rb.setMsg(vehicleListMap.getMsg());
}
String kingDeeData = SalesReturnOrdersCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_, vehicleListMap.getData());
try {
ResultBean<String> resultBean1 = accessKingDeeInterface(KingDeeBillId.SAL_RETURNSTOCK.getID(), kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL());
if (!resultBean1.getSuccess()) {
log.info("销售退货单保存失败!");
return rb.setMsg("销售退货单保存失败!");
}
log.info("销售退货单保存成功!");
} catch (Exception e) {
e.printStackTrace();
}
return rb;
}
public ResultBean<List<Map<String, String>>> createVehicleListsForReceivableBill(List<SalesReturn.SalesReturnDetailDto> collectionDetails) {
ResultBean<List<Map<String, String>>> rb = ResultBean.fireFail();
List<Map<String, String>> collectionDetailMap = new ArrayList<>();
for (int i = 0; i < collectionDetails.size(); i++) {
SalesReturn.SalesReturnDetailDto c = collectionDetails.get(i);
Map<String, String> m = new HashMap<>();
if (StringUtils.isBlank(c.getFMaterialId())) {
return rb.setMsg("物料编码不能为空");
}
if (StringUtils.isBlank(c.getFUnitID())) {
return rb.setMsg("库存单位不能为空");
}
m.put("FMaterialId", c.getFMaterialId());
m.put("FUnitID", c.getFUnitID());
m.put("FRealQty", c.getFRealQty());
m.put("FDeliveryDate", c.getFDeliveryDate());
m.put("FIsFree", c.getFIsFree());
collectionDetailMap.add(m);
}
return rb.success().setData(collectionDetailMap);
}
}

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/data.json

@ -0,0 +1,4 @@
{
"formId": "SAL_RETURNSTOCK",
"data": "@KD_data"
}

142
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/data_FEntity.json

@ -0,0 +1,142 @@
{
"FENTRYID": "0",
"FRowType": "",
"FMapId": {
"FNumber": ""
},
"FMaterialId": {
"FNumber": "@KD_FMaterialId"
},
"FAuxpropId": {
"FAUXPROPID__FF100001": {
"FNumber": ""
},
"FAUXPROPID__FF100005": {
"FNumber": ""
},
"FAUXPROPID__FF100002": {
"FNumber": ""
},
"FAUXPROPID__FF100004": {
"FNumber": ""
},
"FAUXPROPID__FF100006": {
"FNumber": ""
}
},
"FUnitID": {
"FNumber": "@KD_FUnitID"
},
"FInventoryQty": "0",
"FRealQty": "@KD_FRealQty",
"FParentMatId": {
"FNUMBER": ""
},
"FPrice": "0",
"FTaxPrice": "0",
"FIsFree": "@KD_FIsFree",
"FTaxCombination": {
"FNumber": ""
},
"FEntryTaxRate": "0",
"FBOMId": {
"FNumber": ""
},
"FReturnType": {
"FNumber": "THLX01_SYS"
},
"FOwnerTypeId": "",
"FOwnerId": {
"FNumber": ""
},
"FProduceDate": "",
"FExpiryDate": "",
"FStockId": {
"FNumber": ""
},
"FStocklocId": {
"FSTOCKLOCID__FF100001": {
"FNumber": ""
},
"FSTOCKLOCID__FF100002": {
"FNumber": ""
},
"FSTOCKLOCID__FF100003": {
"FNumber": ""
},
"FSTOCKLOCID__FF100004": {
"FNumber": ""
},
"FSTOCKLOCID__FF100005": {
"FNumber": ""
},
"FSTOCKLOCID__FF100006": {
"FNumber": ""
},
"FSTOCKLOCID__FF100007": {
"FNumber": ""
},
"FSTOCKLOCID__FF100008": {
"FNumber": ""
},
"FSTOCKLOCID__FF100009": {
"FNumber": ""
},
"FSTOCKLOCID__FF100010": {
"FNumber": ""
}
},
"FStockstatusId": {
"FNumber": ""
},
"FDeliveryDate": "@KD_FDeliveryDate",
"FMtoNo": "",
"FNote": "",
"FDiscountRate": "0",
"FPriceDiscount": "0",
"FAuxUnitQty": "0",
"FExtAuxUnitId": {
"FNumber": ""
},
"FExtAuxUnitQty": "0",
"FSalCostPrice": "0",
"FISCONSUMESUM": "",
"FLot": {
"FNumber": ""
},
"FSalUnitID": {
"FNumber": ""
},
"FSalUnitQty": "0",
"FSalBaseQty": "0",
"FPriceBaseQty": "0",
"FProjectNo": "",
"FQualifyType": "",
"FEOwnerSupplierId": {
"FNUMBER": ""
},
"FIsOverLegalOrg": "false",
"FESettleCustomerId": {
"FNUMBER": ""
},
"FThirdEntryId": "",
"FSOEntryId": "0",
"FPriceListEntry": {
"FNUMBER": ""
},
"FARNOTJOINQTY": "0",
"FIsReturnCheck": "false",
"FTaxDetailSubEntity": [
{
"FDetailID": "0",
"FTaxRate": "0"
}
],
"FSerialSubEntity": [
{
"FDetailID": "0",
"FSerialNo": "",
"FSerialNote": ""
}
]
}

13
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/data_data.json

@ -0,0 +1,13 @@
{
"Creator": "",
"NeedUpDateFields": [],
"NeedReturnFields": [],
"IsDeleteEntry": "True",
"SubSystemId": "",
"IsVerifyBaseDataField": "false",
"IsEntryBatchFill": "True",
"ValidateFlag": "True",
"NumberSearch": "True",
"InterationFlags": "",
"Model": {}
}

112
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/data_model.json

@ -0,0 +1,112 @@
{
"FID": "0",
"FBillTypeID": {
"FNUMBER": "XSTHD01_SYS"
},
"FBillNo": "@KD_FBillNo",
"FDate": "@KD_FDate",
"FSaleOrgId": {
"FNumber": "@KD_FSaleOrgId"
},
"FRetcustId": {
"FNumber": "@KD_FRetcustId"
},
"FSaledeptid": {
"FNumber": ""
},
"FReturnReason": {
"FNumber": ""
},
"FHeadLocId": {
"FNumber": ""
},
"FCorrespondOrgId": {
"FNumber": ""
},
"FTransferBizType": {
"FNumber": ""
},
"FSaleGroupId": {
"FNumber": ""
},
"FSalesManId": {
"FNumber": ""
},
"FStockOrgId": {
"FNumber": "@KD_FStockOrgId"
},
"FStockDeptId": {
"FNumber": ""
},
"FStockerGroupId": {
"FNumber": ""
},
"FStockerId": {
"FNumber": ""
},
"FHeadNote": "",
"FReceiveCustId": {
"FNumber": ""
},
"FReceiveAddress": "",
"FSettleCustId": {
"FNumber": ""
},
"FReceiveCusContact": {
"FNAME": ""
},
"FPayCustId": {
"FNumber": ""
},
"FOwnerTypeIdHead": "",
"FOwnerIdHead": {
"FNumber": ""
},
"FScanBox": "",
"FCDateOffsetUnit": "",
"FCDateOffsetValue": "0",
"FIsTotalServiceOrCost": "false",
"F_PAEZ_Assistant": {
"FNumber": ""
},
"SubHeadEntity": {
"FEntryId": "0",
"FSettleCurrId": {
"FNumber": "PRE001"
},
"FThirdBillNo": "",
"FThirdBillId": "",
"FThirdSrcType": "",
"FSettleOrgId": {
"FNumber": ""
},
"FSettleTypeId": {
"FNumber": ""
},
"FChageCondition": {
"FNumber": ""
},
"FPriceListId": {
"FNumber": ""
},
"FDiscountListId": {
"FNumber": ""
},
"FLocalCurrId": {
"FNumber": ""
},
"FExchangeTypeId": {
"FNumber": ""
},
"FExchangeRate": "0",
"FBuyerNick": "",
"FReceiverAddress": "",
"FReceiverName": "",
"FReceiverMobile": "",
"FReceiverCountry": "",
"FReceiverState": "",
"FReceiverCity": "",
"FReceiverDistrict": "",
"FReceiverPhone": ""
}
}

208
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/salesreturn/remarks.txt

@ -0,0 +1,208 @@
一、请求参数说明:
1.formid:业务对象表单Id,字符串类型(必录)
2.data:Json格式数据(详情参考Json格式数据)(必录)
2.1.Creator:创建者内码(非必录)
2.2.NeedUpDateFields:需要更新的字段,数组类型,格式:[key1,key2,...](非必录),注(更新单据体字段得加上单据体key)
2.3.NeedReturnFields:需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录),注(返回单据体字段格式:entitykey.key)
2.4.IsDeleteEntry:是否删除已存在的分录,布尔类型,默认true(非必录)
2.5.SubSystemId:表单所在的子系统内码,字符串类型(非必录)
2.6.IsVerifyBaseDataField:是否验证所有的基础资料有效性,布尔类,默认false(非必录)
2.7.IsEntryBatchFill:是否批量填充分录,默认true(非必录)
2.8.ValidateFlag:是否验证标志,布尔类型,默认true(非必录)
2.9.NumberSearch:是否用编码搜索基础资料,布尔类型,默认true(非必录)
2.10.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult)
2.11.Model:表单数据包,Json类型(必录)
字段说明:
关联应收金额:FARJOINAMOUNT
累计应收数量(销售基本):FBASEARQTY
业务流程:FBFLowId
累计应收金额:FARAMOUNT
订单类型:FSOBILLTYPEID
源单编号:FSrcBillNo
销售成本价:FSalCostPrice
关联应收数量(计价基本):FBaseARJoinQty
价税合计:FAllAmount
税额(本位币):FTaxAmount_LC
税额:FEntryTaxAmount
价税合计(本位币):FAllAmount_LC
退货日期:FDeliveryDate (必填项)
净价:FTaxNetPrice
是否赠品:FIsFree
序列号单位:FSNUnitID
销售数量:FSalUnitQty
销售单位:FSalUnitID
计价基本数量:FPriceBaseQty
销售基本数量:FSalBaseQty
库存基本分母:FStockBaseDen
销售基本分子:FSalBaseNum
质量类型:FQualifyType
当前库存:FInventoryQty
项目编号:FProjectNo
计划跟踪号:FMtoNo
序列号单位数量:FSNQty
拒收标志:FRefuseFlag
实退数量(辅单位):FExtAuxUnitQty
辅单位:FExtAuxUnitId
消耗汇总:FISCONSUMESUM
金额(本位币):FAmount_LC
仓位:FStocklocId
保质期:FExpPeriod
保质期单位:FExpUnit
客户物料编码:FMapId
退货类型:FReturnType (必填项)
批号:FLot
客户物料名称:FMapName
源单类型:FSrcBillTypeID
(作废)关联开票数量(基本单位):FBaseInvoicedQty
关联应收数量(计价):FInvoicedQty
备注:FNote
累计应收数量(销售):FSumInvoicedQty
库存更新标示:FStockFlag
累计收款金额:FSumRecievedAmt
累计开票金额:FSumInvoicedAmt
(作废)累计开票数量(基本单位):FBaseSumInvoicedQty
折前金额:FBefDisAmt
最低限价:FLimitDownPrice
系统定价:FSysPrice
折前价税合计:FBefDisAllAmt
金额:FAmount
折扣额:FDiscount
折扣率%:FDiscountRate
价格系数:FPriceCoefficient
计价数量:FPriceUnitQty
计价单位:FPriceUnitId
总成本(本位币):FCostAmount_LC
单价:FPrice
税率%:FEntryTaxRate
税组合:FTaxCombination
含税单价:FTaxPrice
第三方单据编号:FThirdBillNo
第三方单据内码:FThirdBillId
第三方系统来源:FThirdSrcType
会员名称:FBuyerNick
收货人国家:FReceiverCountry
收货人地址:FReceiverAddress
收货人:FReceiverName
价外税:FIsPriceExcludeTax
价目表:FPriceListId
是否含税:FIsIncludedTax
税额:FBillTaxAmount
折扣表:FDiscountListId
跨组织结算生成:FISGENFORIOS
货主供应商:FOwnerSupplierID
结算组织客户:FSETTLECustomerID
收货人城市:FReceiverCity
卖方代扣代缴:FSellerWithholding
增值税:FVAT
计入成本金额:FCostAmount
买方代扣代缴:FBuyerWithholding
备注:FSerialNote
序列号:FSerialId
序列号:FSerialNo
计入成本比例%:FCostPercent
收货人省份:FReceiverState
收货人地区:FReceiverDistrict
收货人手机:FReceiverMobile
收货人电话:FReceiverPhone
税额:FTaxAmount
税率%:FTaxRate
税率名称:FTaxRateId
金额:FBillAmount
产品类型:FRowType
退货检验:FIsReturnCheck
销售订单EntryId:FSOEntryId
父项产品:FParentMatId
第三方单据分录ID:FThirdEntryId
父项标识:FParentRowId
行标识:FRowId
未关联应收数量(计价单位):FARNOTJOINQTY
明细货主供应商:FEOwnerSupplierId
携带的主业务单位:FSRCBIZUNITID
关联应收数量(库存基本):FStockBaseARJoinQty
组织间结算跨法人标识:FIsOverLegalOrg
行价目表:FPriceListEntry
关联应收数量(销售基本):FSalBaseARJoinQty
明细结算组织客户:FESettleCustomerId
单价折扣:FPriceDiscount
汇率精度:FPrecision
总成本(本位币):FBillCostAmount_LC
总成本:FBillCostAmount
价税合计(本位币):FBillAllAmount_LC
价税合计:FBillAllAmount
税额(本位币):FBillTaxAmount_LC
金额(本位币):FBillAmount_LC
汇率:FExchangeRate
收款条件:FChageCondition
结算方式:FSettleTypeId
车辆类型:F_PAEZ_BaseProperty
结算组织:FSettleOrgId (必填项)
汇率类型:FExchangeTypeId
本位币:FLocalCurrId
结算币别:FSettleCurrId (必填项)
单据类型:FBillTypeIDFBillTypeID (必填项)
收货方:FReceiveCustId
货主:FOwnerIdHead
货主类型:FOwnerTypeIdHead
销售部门:FSaledeptid
销售组:FSaleGroupId
库存部门:FStockDeptId
销售员:FSalesManId
创建人:FCreatorId
付款方:FPayCustId
结算方:FSettleCustId
仓管员:FStockerId
销售组织:FSaleOrgId (必填项)
单据状态:FDocumentStatus
单据编号:FBillNo
日期:FDate (必填项)
库存组:FStockerGroupId
退货客户:FRetcustId (必填项)
库存组织:FStockOrgId (必填项)
创建日期:FCreateDate
审核人:FApproverId
最后修改日期:FModifyDate
最后修改人:FModifierId
审核日期:FApproveDate
作废状态:FCancelStatus
作废日期:FCancelDate
作废人:FCancellerId
物料类别:FMaterialType
规格型号:FMaterialModel
物料名称:FMaterialName
库存单位:FUnitID (必填项)
仓库:FStockId
实退数量:FRealQty
应退数量:FMustqty
物料编码:FMaterialId (必填项)
创建日期偏移量:FCDateOffsetValue
创建日期偏移单位:FCDateOffsetUnit
备注:FHeadNote
项目类别:F_PAEZ_Assistant
整单服务标识:FIsTotalServiceOrCost
库存状态:FStockstatusId
库存辅单位:FAuxUnitId
库存基本数量:FBaseunitQty
基本单位:FBaseunitId
库存辅单位数量:FAuxUnitQty
订单单号:FOrderNo
总成本:FEntryCostAmount
成本价(本位币):FCostPrice
有效期至:FExpiryDate
保管者类型:FKeeperTypeId
货主:FOwnerId (必填项)
货主类型:FOwnerTypeId
保管者:FKeeperId
生产日期:FProduceDate
辅助属性:FAuxpropId
BOM版本:FBOMId
对应组织:FCorrespondOrgId
跨组织业务类型:FTransferBizType
收货方地址:FReceiveAddress
退货原因:FReturnReason
业务类型:FBussinessType
交货地点:FHeadLocId
信用检查结果:FCreditCheckResult
组织间结算跨法人标识:FIsInterLegalPerson
收货方联系人:FReceiveCusContact
序列号上传:FScanBox

2
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysuser/SysUserInfoVo.java

@ -27,4 +27,6 @@ public class SysUserInfoVo implements Vo {
@ApiModelProperty("员工的组织部门编码")
private String orgCode;
private String mobile;
}

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysuser/SysUserMapper.xml

@ -207,7 +207,7 @@
</select>
<!--根据用户的sid查询用户的组织信息:多个时取第一个-->
<select id="selectUserInfoByUserSid" resultType="com.yxt.anrui.portal.api.sysuser.SysUserInfoVo">
SELECT su.staffSid, si.name staffName, sso.orgSid, sso.orgName, so.orgCode
SELECT su.staffSid, si.name staffName, sso.orgSid, sso.orgName, so.orgCode,su.mobile
FROM sys_user su
LEFT JOIN sys_staffinfo si ON su.staffSid = si.sid
LEFT JOIN sys_staff_org sso ON su.staffSid = sso.staffSid

2
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultDto.java

@ -57,6 +57,8 @@ public class LoanCapitalCreditResultDto implements Dto {
private String capCarefulResult; // 资方信审结果
@ApiModelProperty("销售订单sid")
private String saleOrderSid; // 销售订单sid
@ApiModelProperty("资方合同号")
private String bankContractNo;
@ApiModelProperty("销售订单消贷合同sid")
private String loanContractSid; // 销售订单消贷合同sid

14
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultFeign.java

@ -61,16 +61,26 @@ public interface LoanCapitalCreditResultFeign {
@ResponseBody
public ResultBean<PagerVo<LoanCapitalCreditResultVo>> listPage(@RequestBody PagerQuery<LoanCapitalCreditResultQuery> pq);
@ApiOperation("保存附件")
@PostMapping("/saveImages")
@ResponseBody
public ResultBean saveImages(@RequestBody List<String> images, @RequestParam("sid") String sid);
@ApiOperation("查看附件")
@PostMapping("/selectImages")
@ResponseBody
public ResultBean<List<String>> selectImages(@RequestParam("sid") String sid);
@ApiOperation("新增或修改")
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody LoanCapitalCreditResultDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody

10
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultFeignFallback.java

@ -54,6 +54,16 @@ public class LoanCapitalCreditResultFeignFallback implements LoanCapitalCreditRe
return rb.setMsg("接口anrui-riskcenter/loancapitalcreditresult/listPage无法访问");
}
@Override
public ResultBean saveImages(List<String> images, String sid) {
return null;
}
@Override
public ResultBean<List<String>> selectImages(String sid) {
return null;
}
@Override
public ResultBean save(LoanCapitalCreditResultDto dto){
return ResultBean.fireFail().setMsg("接口anrui-riskcenter/loancapitalcreditresult/save无法访问");

33
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultQuery.java

@ -49,13 +49,28 @@ import lombok.Data;
@ApiModel(value = "资方信审终审结果反馈 查询条件", description = "资方信审终审结果反馈 查询条件")
public class LoanCapitalCreditResultQuery implements Query {
@ApiModelProperty("资方信审时间")
private String capCarefulDate; // 资方信审时间
@ApiModelProperty("资方信审结果")
private String capCarefulResult; // 资方信审结果
@ApiModelProperty("销售订单sid")
private String saleOrderSid; // 销售订单sid
@ApiModelProperty("销售订单消贷合同sid")
private String loanContractSid; // 销售订单消贷合同sid
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("分公司名称")
private String useOrgName;
@ApiModelProperty("销售部门名称")
private String saleDeptName;
@ApiModelProperty("销售专员名称")
private String staffName;
@ApiModelProperty("消贷合同编号")
private String loanContractNo;
@ApiModelProperty("贷款人名称")
private String loanPeoName;
@ApiModelProperty("资方名称")
private String capitalName;
@ApiModelProperty("金融产品名称")
private String policyName;
@ApiModelProperty("资方合同号")
private String bankContractNo;
@ApiModelProperty("资方信审结果")
private String capCarefulResult;
@ApiModelProperty("组织全路径")
private String orgSidPath;
private String menuUrl;
private String type;
}

33
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loancapitalcreditresult/LoanCapitalCreditResultVo.java

@ -49,15 +49,32 @@ import lombok.Data;
@ApiModel(value = "资方信审终审结果反馈 视图数据对象", description = "资方信审终审结果反馈 视图数据对象")
public class LoanCapitalCreditResultVo implements Vo {
private String sid; // sid
private String sid;
@ApiModelProperty("信审状态")
private String state;
@ApiModelProperty("分公司名称")
private String useOrgName;
@ApiModelProperty("销售部门名称")
private String orgName;
@ApiModelProperty("销售专员名称")
private String staffName;
@ApiModelProperty("消贷合同编号")
private String loanContractNo;
@ApiModelProperty("台数")
private String num;
@ApiModelProperty("贷款人名称")
private String borrowerName;
@ApiModelProperty("资方名称")
private String bankName;
@ApiModelProperty("金融产品名称")
private String policyName;
@ApiModelProperty("资方信审时间")
private String capCarefulDate; // 资方信审时间
private String capCarefulDate;
@ApiModelProperty("资方信审结果")
private String capCarefulResult; // 资方信审结果
@ApiModelProperty("销售订单sid")
private String saleOrderSid; // 销售订单sid
@ApiModelProperty("销售订单消贷合同sid")
private String loanContractSid; // 销售订单消贷合同sid
private String capCarefulResult;
@ApiModelProperty("资方合同号")
private String bankContractNo;
@ApiModelProperty("销售订单消贷合同sid")
private String loanContractSid;
}

1
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanhomevisitinvestigatefile/LoanAttachTypeEnum.java

@ -25,6 +25,7 @@ public enum LoanAttachTypeEnum {
FC("016", "房产"),
CL("017", "车辆"),
SSFJ("018", "申诉附件"),
XSFJ("019", "信审附件"),
;
/**

23
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultMapper.java

@ -34,6 +34,7 @@ import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResult;
import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultVo;
import org.apache.ibatis.annotations.Update;
import java.util.List;
@ -53,13 +54,17 @@ import java.util.List;
@Mapper
public interface LoanCapitalCreditResultMapper extends BaseMapper<LoanCapitalCreditResult> {
//@Update("update loan_capital_credit_result set name=#{msg} where id=#{id}")
//IPage<LoanCapitalCreditResultVo> voPage(IPage<LoanCapitalCreditResult> page, @Param(Constants.WRAPPER) QueryWrapper<LoanCapitalCreditResult> qw);
IPage<LoanCapitalCreditResultVo> selectPageVo(IPage<LoanCapitalCreditResult> page, @Param(Constants.WRAPPER) Wrapper<LoanCapitalCreditResult> qw);
List<LoanCapitalCreditResultVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<LoanCapitalCreditResult> qw);
@Select("select * from loan_capital_credit_result")
List<LoanCapitalCreditResultVo> selectListVo();
//@Update("update loan_capital_credit_result set name=#{msg} where id=#{id}")
//IPage<LoanCapitalCreditResultVo> voPage(IPage<LoanCapitalCreditResult> page, @Param(Constants.WRAPPER) QueryWrapper<LoanCapitalCreditResult> qw);
IPage<LoanCapitalCreditResultVo> selectPageVo(IPage<LoanCapitalCreditResult> page, @Param(Constants.WRAPPER) Wrapper<LoanCapitalCreditResult> qw);
List<LoanCapitalCreditResultVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<LoanCapitalCreditResult> qw);
@Select("select * from loan_capital_credit_result")
List<LoanCapitalCreditResultVo> selectListVo();
@Update("update loan_capital_credit_result set capCarefulDate = #{capCarefulDate},capCarefulResult = #{capCarefulResult},state = '2' where sid = #{dtoSid")
void updateStateAndDateResult(@Param("dtoSid") String dtoSid, @Param("capCarefulDate") String capCarefulDate, @Param("capCarefulResult") String capCarefulResult);
}

45
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultMapper.xml

@ -1,13 +1,40 @@
<?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.riskcenter.biz.loancapitalcreditresult.LoanCapitalCreditResultMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultVo">
SELECT * FROM loan_capital_credit_result <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultVo">
SELECT * FROM loan_capital_credit_result <where> ${ew.sqlSegment} </where>
</select>
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo"
resultType="com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultVo">
SELECT
lr.`sid`,
bo.`useOrgName`,
bo.`orgName`,
bo.`staffName`,
bl.`loanCotractNo`,
bl.`vehCount` AS num,
bl.`borrowerName`,
bl.`bankName`,
bl.`policyName`,
lr.`capCarefulDate`,
lr.`capCarefulResult`,
bl.`bankContractNo`,
lr.loanContractSid
FROM
loan_capital_credit_result lr
LEFT JOIN anrui_buscenter.bus_sales_order_loancontract bl
ON lr.`loanContractSid` = bl.`sid`
LEFT JOIN anrui_buscenter.`bus_sales_order` bo
ON lr.`saleOrderSid` = bo.`sid`
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selectListAllVo"
resultType="com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultVo">
SELECT * FROM loan_capital_credit_result
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

75
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultRest.java

@ -34,6 +34,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResult;
import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultQuery;
import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultVo;
@ -59,42 +60,52 @@ import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditRes
@RequestMapping("v1/loancapitalcreditresult")
public class LoanCapitalCreditResultRest implements LoanCapitalCreditResultFeign {
@Autowired
private LoanCapitalCreditResultService loanCapitalCreditResultService;
@Autowired
private LoanCapitalCreditResultService loanCapitalCreditResultService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<LoanCapitalCreditResultVo>> listPage(@RequestBody PagerQuery<LoanCapitalCreditResultQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<LoanCapitalCreditResultVo> pv = loanCapitalCreditResultService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
public ResultBean saveImages(List<String> images, String sid) {
return loanCapitalCreditResultService.saveImages(images, sid);
}
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<LoanCapitalCreditResultVo>> listPage(@RequestBody PagerQuery<LoanCapitalCreditResultQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<LoanCapitalCreditResultVo> pv = loanCapitalCreditResultService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
public ResultBean<List<String>> selectImages(String sid) {
return loanCapitalCreditResultService.selectImages(sid);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody LoanCapitalCreditResultDto dto){
ResultBean rb = ResultBean.fireFail();
loanCapitalCreditResultService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody LoanCapitalCreditResultDto dto) {
ResultBean rb = ResultBean.fireFail();
loanCapitalCreditResultService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
@ApiOperation("根据sid批量删除")
@Override
@ApiOperation("根据sid批量删除")
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
loanCapitalCreditResultService.delBySids(sids);
return rb.success();
}
public ResultBean delBySids(@RequestBody String[] sids) {
ResultBean rb = ResultBean.fireFail();
loanCapitalCreditResultService.delBySids(sids);
return rb.success();
}
@Override
@ApiOperation("根据SID获取一条记录")
@Override
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<LoanCapitalCreditResultDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
LoanCapitalCreditResultDetailsVo vo = loanCapitalCreditResultService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
public ResultBean<LoanCapitalCreditResultDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid) {
ResultBean rb = ResultBean.fireFail();
LoanCapitalCreditResultDetailsVo vo = loanCapitalCreditResultService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
}

197
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loancapitalcreditresult/LoanCapitalCreditResultService.java

@ -28,6 +28,15 @@ package com.yxt.anrui.riskcenter.biz.loancapitalcreditresult;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontractFeign;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatefile.LoanAttachTypeEnum;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatefile.LoanHomevisitInvestigateFileDetailsVo;
import com.yxt.anrui.riskcenter.api.loanhomevisitinvestigatefile.LoanHomevisitInvestigateFileDto;
import com.yxt.anrui.riskcenter.api.loanhomevisitprep.LoanHomevisitPrepVo;
import com.yxt.anrui.riskcenter.biz.loanhomevisitinvestigatefile.LoanHomevisitInvestigateFileService;
import com.yxt.common.base.config.component.FileUploadComponent;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
@ -41,8 +50,10 @@ import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditRes
import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultDto;
import com.yxt.anrui.riskcenter.api.loancapitalcreditresult.LoanCapitalCreditResultFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
@ -60,51 +71,153 @@ import java.util.List;
*/
@Service
public class LoanCapitalCreditResultService extends MybatisBaseService<LoanCapitalCreditResultMapper, LoanCapitalCreditResult> {
private QueryWrapper<LoanCapitalCreditResult> createQueryWrapper(LoanCapitalCreditResultQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<LoanCapitalCreditResult> qw = new QueryWrapper<>();
return qw;
}
public PagerVo<LoanCapitalCreditResultVo> listPageVo(PagerQuery<LoanCapitalCreditResultQuery> pq) {
LoanCapitalCreditResultQuery query = pq.getParams();
QueryWrapper<LoanCapitalCreditResult> qw = createQueryWrapper(query);
IPage<LoanCapitalCreditResult> page = PagerUtil.queryToPage(pq);
IPage<LoanCapitalCreditResultVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<LoanCapitalCreditResultVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(LoanCapitalCreditResultDto dto){
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private BusSalesOrderLoancontractFeign busSalesOrderLoancontractFeign;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private LoanHomevisitInvestigateFileService loanHomevisitInvestigateFileService;
public PagerVo<LoanCapitalCreditResultVo> listPageVo(PagerQuery<LoanCapitalCreditResultQuery> pq) {
LoanCapitalCreditResultQuery query = pq.getParams();
QueryWrapper<LoanCapitalCreditResult> qw = new QueryWrapper<>();
qw.eq("lr.state", query.getType());
if ("1".equals(query.getType())) {
qw.eq("bl.busNo", 301);
}
if (StringUtils.isNotBlank(query.getMenuUrl())) {
//=======================
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgSidPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgSidPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("bo.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("bo.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("bo.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("bo.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("bo.createBySid", query.getUserSid());
} else {
PagerVo<LoanCapitalCreditResultVo> p = new PagerVo<>();
return p;
}
} else {
PagerVo<LoanCapitalCreditResultVo> p = new PagerVo<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getUseOrgName())) {
qw.like("bo.useOrgName", query.getUseOrgName());
}
if (StringUtils.isNotBlank(query.getSaleDeptName())) {
qw.like("bo.orgName", query.getSaleDeptName());
}
if (StringUtils.isNotBlank(query.getStaffName())) {
qw.like("bo.staffName", query.getStaffName());
}
if (StringUtils.isNotBlank(query.getLoanContractNo())) {
qw.like("bl.loanCotractNo", query.getLoanContractNo());
}
if (StringUtils.isNotBlank(query.getLoanPeoName())) {
qw.like("bl.borrowerName", query.getLoanPeoName());
}
if (StringUtils.isNotBlank(query.getCapitalName())) {
qw.like("bl.bankName", query.getCapitalName());
}
if (StringUtils.isNotBlank(query.getPolicyName())) {
qw.like("bl.policyName", query.getPolicyName());
}
if (StringUtils.isNotBlank(query.getBankContractNo())) {
qw.like("bl.bankContractNo", query.getBankContractNo());
}
if (StringUtils.isNotBlank(query.getCapCarefulResult())) {
qw.like("lr.capCarefulResult", query.getCapCarefulResult());
}
IPage<LoanCapitalCreditResult> page = PagerUtil.queryToPage(pq);
IPage<LoanCapitalCreditResultVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<LoanCapitalCreditResultVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public void saveOrUpdateDto(LoanCapitalCreditResultDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
this.insertByDto(dto);
return;
}
this.updateByDto(dto);
}
public void insertByDto(LoanCapitalCreditResultDto dto){
LoanCapitalCreditResult entity = new LoanCapitalCreditResult();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void updateByDto(LoanCapitalCreditResultDto dto){
String dtoSid = dto.getSid();
return;
}
baseMapper.updateStateAndDateResult(dtoSid, dto.getCapCarefulDate(), dto.getCapCarefulResult());
busSalesOrderLoancontractFeign.updateBankConAndBusNo(dto.getLoanContractSid(), dto.getBankContractNo());
}
public void insertByDto(LoanCapitalCreditResultDto dto) {
LoanCapitalCreditResult entity = new LoanCapitalCreditResult();
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity);
}
public void updateByDto(LoanCapitalCreditResultDto dto) {
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return;
}
LoanCapitalCreditResult entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public LoanCapitalCreditResultDetailsVo fetchDetailsVoBySid(String sid){
LoanCapitalCreditResult entity = fetchBySid(sid);
LoanCapitalCreditResultDetailsVo vo = new LoanCapitalCreditResultDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
}
LoanCapitalCreditResult entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
public LoanCapitalCreditResultDetailsVo fetchDetailsVoBySid(String sid) {
LoanCapitalCreditResult entity = fetchBySid(sid);
LoanCapitalCreditResultDetailsVo vo = new LoanCapitalCreditResultDetailsVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
public ResultBean saveImages(List<String> images, String sid) {
ResultBean rb = ResultBean.fireFail();
loanHomevisitInvestigateFileService.delByMainSidAndType(sid, LoanAttachTypeEnum.XSFJ.getAttachType());
for (String image : images) {
LoanHomevisitInvestigateFileDto loanHomevisitInvestigateFileDto = new LoanHomevisitInvestigateFileDto();
loanHomevisitInvestigateFileDto.setMainSid(sid);
loanHomevisitInvestigateFileDto.setAttachType(LoanAttachTypeEnum.XSFJ.getAttachType());
if (image.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
image = image.replace(fileUploadComponent.getUrlPrefix(), "");
}
loanHomevisitInvestigateFileDto.setFileUrl(image);
loanHomevisitInvestigateFileService.saveOrUpdateDto(loanHomevisitInvestigateFileDto);
}
return rb.success();
}
public ResultBean<List<String>> selectImages(String sid) {
ResultBean rb = ResultBean.fireFail();
List<LoanHomevisitInvestigateFileDetailsVo> xsfjFileVos = loanHomevisitInvestigateFileService.selByMainSidAndTypeKey(sid, LoanAttachTypeEnum.XSFJ.getAttachType());
List<String> xsfjImages = new ArrayList<>();
if (xsfjFileVos != null && xsfjFileVos.size() > 0) {
for (LoanHomevisitInvestigateFileDetailsVo xsfjFileVo : xsfjFileVos) {
xsfjImages.add(xsfjFileVo.getFileUrl());
}
}
return rb.success().setData(xsfjImages);
}
}

15
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyMapper.xml

@ -88,7 +88,7 @@
</select>
<select id="selectListOne" resultType="com.yxt.anrui.riskcenter.api.loanfinpolicy.PolicyVo">
select lfp.policyName name,
select lfp.policyName name,
lfp.sid,
lfp.downPayRatio,
lfp.downPayRatioKey,
@ -97,18 +97,19 @@
lfp.bondRatio,
lfp.bondRatioKey,
lfp.yearRatio,
lfp.serviceAmountTypeKey as serviceChargeTypeKey,
lfp.serviceAmount as serviceChargeTypeValue,
lfp.depositPremium,
lfp.depositSettle,
lfp.nominalPrice
lfp.serviceAmountTypeKey as serviceChargeTypeKey,
lfp.serviceAmount as serviceChargeTypeValue,
lfp.depositPremium,
lfp.depositSettle,
lfp.nominalPrice,
lfp.vehAccidentAmount
from loan_fin_policy lfp
where lfp.filingState = 1
and isPack = #{isPack}
and lfp.useOrgSid = #{useOrgSid}
and lfp.validDateTo > now()
<if test="name != null and name != ''">
and lfp.policyName like concat('%',#{name},'%')
and lfp.policyName like concat('%', #{name}, '%')
</if>
</select>
</mapper>

5
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loansolutions/LoanSolutionsService.java

@ -1374,6 +1374,11 @@ public class LoanSolutionsService extends MybatisBaseService<LoanSolutionsMapper
downPayAmountsRatio = loanDownPay.divide(loanTotal, 4, BigDecimal.ROUND_CEILING).multiply(new BigDecimal("100"));
downPayAmountsRatio = downPayAmountsRatio.setScale(0, BigDecimal.ROUND_HALF_UP);
calculateVo.setDownPayAmountsRatio(downPayAmountsRatio.toString());
//
BigDecimal downPayRatioLeast = loanFinPolicy.getDownPayRatioLeast();
if(downPayAmountsRatio.compareTo(downPayRatioLeast)<0){
return rb.setMsg("实际首付比例不能低于产品政策中的最低首付比例");
}
//总贷款金额
calculateVo.setLoanAmountTotal(loanAmountTotal.setScale(0, BigDecimal.ROUND_HALF_UP).toString());
//期数

2
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/creditreview/CreditReviewDetailsQuery.java

@ -22,4 +22,6 @@ public class CreditReviewDetailsQuery implements Query {
private String sourceSid;
@ApiModelProperty("申诉来源 true贷前信用审核发起申诉 false申诉申请回显")
private Boolean addNew;
@ApiModelProperty("查询条件")
private String name;
}

1
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/creditreview/IdentityDetailsVo.java

@ -7,6 +7,7 @@ import lombok.Data;
@Data
public class IdentityDetailsVo implements Vo {
private String id;
private String sid;
@ApiModelProperty("人员类型key")
private String dictKey;

3
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/creditreview/CreditReviewService.java

@ -345,10 +345,11 @@ public class CreditReviewService {
public ResultBean<List<IdentityDetailsVo>> selModelByUseOrgSid(CreditReviewDetailsQuery query) {
ResultBean rb = ResultBean.fireFail();
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(query.getOrgPath()).getData();
List<BaseVehmodelConfigVos> baseVehmodelConfigVos = baseVehmodelConfigFeign.selModelByUseOrgSid(useOrgSid).getData();
List<BaseVehmodelConfigVos> baseVehmodelConfigVos = baseVehmodelConfigFeign.selModelByUseOrgSid(useOrgSid,query.getName()).getData();
List<IdentityDetailsVo> identityDetailsVos = new ArrayList<>();
for (BaseVehmodelConfigVos baseVehmodelConfigVo : baseVehmodelConfigVos) {
IdentityDetailsVo identityDetailsVo = new IdentityDetailsVo();
identityDetailsVo.setId(baseVehmodelConfigVo.getModelSid());
identityDetailsVo.setSid(baseVehmodelConfigVo.getModelSid());
identityDetailsVo.setDictKey(baseVehmodelConfigVo.getModelSid());
identityDetailsVo.setDictValue(baseVehmodelConfigVo.getVehicleAlias());

Loading…
Cancel
Save