Browse Source

优化

master
dimengzhe 2 years ago
parent
commit
7cc208be7a
  1. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java
  2. 25
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
  3. 84
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java

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

@ -223,4 +223,8 @@ public interface BusSalesOrderMapper extends BaseMapper<BusSalesOrder> {
String selectBySid(String sid);
String selKpj(String contractNo);
String selectByBusSid(String sid);
String selectByBusVinSid(String sid);
}

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

@ -589,4 +589,29 @@
ON bo.sid = ls.`salesOrderSid`
WHERE bo.`contractNo` = #{contractNo}
</select>
<select id="selectByBusSid" resultType="java.lang.String">
select ifnull(sum(dbalance), 0) as subscriptionMoney
from (SELECT
cast((
d.`subscriptionMoney` - COALESCE(SUM(f.`thisUseMoney`), 0) ) AS DECIMAL(10, 2)) AS dbalance
FROM anrui_fin.fin_selected_receivables_detailed d
left join anrui_fin.fin_uncollected_receivables_detailed ff on ff.sid = d.receivablesSid
LEFT JOIN (
SELECT f.busSid,
f.thisUseMoney
FROM anrui_fin.fin_funds_carried_forward_veh f
JOIN anrui_fin.`fin_funds_carried_forward_apply` fa ON f.mainSid = fa.sid
WHERE fa.`nodeState` != '终止'
) f ON f.`busSid` = d.`sid`
WHERE d.auditState = 3
and ff.busVinSid = #{busVinSid}
GROUP BY d.`sid`) d
</select>
<select id="selectByBusVinSid" resultType="java.lang.String">
select sum(reveivableMoney)
from anrui_fin.fin_uncollected_receivables_detailed
where busVinSid = #{busVinSid}
</select>
</mapper>

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

@ -5529,6 +5529,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (new BigDecimal(singleFinalPrice).compareTo(new BigDecimal(deposit)) != 0) {//推送车款
String money = new BigDecimal(singleFinalPrice).subtract(new BigDecimal(deposit)).subtract(StringUtils.isNotBlank(solutionsDetailsVo.getDiscountCar()) ? new BigDecimal(solutionsDetailsVo.getDiscountCar()) : new BigDecimal(solutionsDetailsVo.getFactoryDiscount())).add(new BigDecimal(solutionsDetailsVo.getServiceAmount())).toString();
List<VinListsVo> vinList = appOrderModelInfoVo.getVinListsVos();
List<BaseVehicleStateDto> dtoList = new ArrayList<>();
for (int i = 0; i < vinList.size(); i++) {
UnCollectionDto unCollectionDto = new UnCollectionDto();
unCollectionDto.setContractNo(busSalesOrder.getContractNo());
@ -5566,6 +5567,34 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
unCollectionDto.setOtherReceivableMoney(new BigDecimal(solutionsDetailsVo.getDiscountCar()));
}
finUncollectedDetailedFeign.saveUnCollection(unCollectionDto);
//==========================================================
if (new BigDecimal(money).compareTo(BigDecimal.ZERO) == 0) {//首付款及费用若为0
//判断认款是否已认完,若已认完,则更新车辆状态为交清。
String subscribute = baseMapper.selectByBusSid(vinList.get(i).getSid());
String receiableMoney = baseMapper.selectByBusVinSid(vinList.get(i).getSid());
if (new BigDecimal(subscribute).compareTo(new BigDecimal(receiableMoney)) >= 0) {
//已认款完成
BaseVehicleStateDto baseVehicleStateDto = new BaseVehicleStateDto();
baseVehicleStateDto.setOperateType(BaseVehicleStateEnum.OperateTypeEnum.FIN_RQ.getTypeKey());
baseVehicleStateDto.setBusSid(vinList.get(i).getSid());
dtoList.add(baseVehicleStateDto);
}
}
}
//==============================修改车辆的持久状态组装数据
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
Future future1 = pool.submit(() -> {
if (!dtoList.isEmpty()) {
ResultBean busVehicleStateResultBean = baseVehicleStateFeign.saveOrUpdate(dtoList);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
}
@ -5587,6 +5616,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (new BigDecimal(singleFinalPrice).compareTo(new BigDecimal(deposit)) != 0) {//推送车款
String money = new BigDecimal(solutionsDetailsVo.getRealTotal()).subtract(new BigDecimal(deposit)).toString();
List<VinListsVo> vinList = appOrderModelInfoVo.getVinListsVos();
List<BaseVehicleStateDto> dtoList = new ArrayList<>();
for (int i = 0; i < vinList.size(); i++) {
UnCollectionDto unCollectionDto = new UnCollectionDto();
//合同编号
@ -5625,9 +5655,32 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//==========================================================
if (new BigDecimal(money).compareTo(BigDecimal.ZERO) == 0) {//首付款及费用若为0
//判断认款是否已认完,若已认完,则更新车辆状态为交清。
String subscribute = baseMapper.selectByBusSid(vinList.get(i).getSid());
String receiableMoney = baseMapper.selectByBusVinSid(vinList.get(i).getSid());
if (new BigDecimal(subscribute).compareTo(new BigDecimal(receiableMoney)) >= 0) {
//已认款完成
BaseVehicleStateDto baseVehicleStateDto = new BaseVehicleStateDto();
baseVehicleStateDto.setOperateType(BaseVehicleStateEnum.OperateTypeEnum.FIN_RQ.getTypeKey());
baseVehicleStateDto.setBusSid(vinList.get(i).getSid());
dtoList.add(baseVehicleStateDto);
}
}
}
//==============================修改车辆的持久状态组装数据
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
Future future1 = pool.submit(() -> {
if (!dtoList.isEmpty()) {
ResultBean busVehicleStateResultBean = baseVehicleStateFeign.saveOrUpdate(dtoList);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
}
@ -5648,6 +5701,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (new BigDecimal(singleFinalPrice).compareTo(new BigDecimal(deposit)) != 0) {//推送车款
String money = new BigDecimal(singleFinalPrice).subtract(new BigDecimal(deposit)).toString();
List<VinListsVo> vinList = appOrderModelInfoVo.getVinListsVos();
List<BaseVehicleStateDto> dtoList = new ArrayList<>();
for (int i = 0; i < vinList.size(); i++) {
UnCollectionDto unCollectionDto = new UnCollectionDto();
//合同编号
@ -5683,6 +5737,34 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
unCollectionDto.setUseOrgName(busSalesOrder.getUseOrgName());
unCollectionDto.setKxState("01");
finUncollectedDetailedFeign.saveUnCollection(unCollectionDto);
//==========================================================
if (new BigDecimal(money).compareTo(BigDecimal.ZERO) == 0) {//首付款及费用若为0
//判断认款是否已认完,若已认完,则更新车辆状态为交清。
String subscribute = baseMapper.selectByBusSid(vinList.get(i).getSid());
String receiableMoney = baseMapper.selectByBusVinSid(vinList.get(i).getSid());
if (new BigDecimal(subscribute).compareTo(new BigDecimal(receiableMoney)) >= 0) {
//已认款完成
BaseVehicleStateDto baseVehicleStateDto = new BaseVehicleStateDto();
baseVehicleStateDto.setOperateType(BaseVehicleStateEnum.OperateTypeEnum.FIN_RQ.getTypeKey());
baseVehicleStateDto.setBusSid(vinList.get(i).getSid());
dtoList.add(baseVehicleStateDto);
}
}
}
//==============================修改车辆的持久状态组装数据
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
Future future1 = pool.submit(() -> {
if (!dtoList.isEmpty()) {
ResultBean busVehicleStateResultBean = baseVehicleStateFeign.saveOrUpdate(dtoList);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}

Loading…
Cancel
Save