md
This commit is contained in:
parent
6dcdbbfe9e
commit
35868f2933
@ -652,16 +652,10 @@ public class EmisCommonController extends EmisBaseController
|
|||||||
*/
|
*/
|
||||||
@GetMapping("/reCalcEmpProfitByBillCode")
|
@GetMapping("/reCalcEmpProfitByBillCode")
|
||||||
public AjaxResult reCalcEmpProfitByBillCode(String billCode){
|
public AjaxResult reCalcEmpProfitByBillCode(String billCode){
|
||||||
log.error("reCalcEmpProfitByBillCode start");
|
|
||||||
String lockKey="reCalcEmpProfitByBillCode"+billCode;
|
|
||||||
// 加锁查询
|
|
||||||
redissonService.lock(lockKey,300);
|
|
||||||
try{
|
try{
|
||||||
emisCommissionProfitService.reCalcProfitByBillCode(billCode);
|
emisCommissionProfitService.reCalcProfitByBillCode(billCode);
|
||||||
}
|
}
|
||||||
catch (Exception ex){
|
catch (Exception ex){
|
||||||
redissonService.unlock(lockKey);
|
|
||||||
|
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
// 返回子定义异常
|
// 返回子定义异常
|
||||||
if(ex instanceof EmisBizError){
|
if(ex instanceof EmisBizError){
|
||||||
@ -670,8 +664,6 @@ public class EmisCommonController extends EmisBaseController
|
|||||||
|
|
||||||
return AjaxResult.error("确认异常,联系客服");
|
return AjaxResult.error("确认异常,联系客服");
|
||||||
}
|
}
|
||||||
redissonService.unlock(lockKey);
|
|
||||||
log.error("reCalcEmpProfitByBillCode end");
|
|
||||||
return AjaxResult.success("发送成功");
|
return AjaxResult.success("发送成功");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,6 +19,7 @@ import com.alibaba.fastjson.JSONObject;
|
|||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.googlecode.aviator.AviatorEvaluator;
|
import com.googlecode.aviator.AviatorEvaluator;
|
||||||
import com.xdadan.erp.common.core.domain.entity.SysUser;
|
import com.xdadan.erp.common.core.domain.entity.SysUser;
|
||||||
|
import com.xdadan.erp.common.core.redis.RedissonService;
|
||||||
import com.xdadan.erp.common.utils.DateUtils;
|
import com.xdadan.erp.common.utils.DateUtils;
|
||||||
import com.xdadan.erp.common.utils.DictUtils;
|
import com.xdadan.erp.common.utils.DictUtils;
|
||||||
import com.xdadan.erp.emis.domain.*;
|
import com.xdadan.erp.emis.domain.*;
|
||||||
@ -31,6 +32,7 @@ import com.xdadan.erp.emis.utils.WaybillHelper;
|
|||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.scheduling.annotation.Async;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.xdadan.erp.emis.mapper.EmisCommissionProfitMapper;
|
import com.xdadan.erp.emis.mapper.EmisCommissionProfitMapper;
|
||||||
import com.xdadan.erp.emis.service.IEmisCommissionProfitService;
|
import com.xdadan.erp.emis.service.IEmisCommissionProfitService;
|
||||||
@ -59,6 +61,9 @@ public class EmisCommissionProfitServiceImpl extends EmisBaseService implements
|
|||||||
@Autowired
|
@Autowired
|
||||||
protected EmisWaybillMapper emisWaybillMapper;
|
protected EmisWaybillMapper emisWaybillMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
RedissonService redissonService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 自动计算提成
|
* 自动计算提成
|
||||||
*/
|
*/
|
||||||
@ -82,10 +87,17 @@ public class EmisCommissionProfitServiceImpl extends EmisBaseService implements
|
|||||||
/**
|
/**
|
||||||
* 根据单号重新计算提成
|
* 根据单号重新计算提成
|
||||||
*/
|
*/
|
||||||
|
@Async
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public int reCalcProfitByBillCode(String billCode)
|
public int reCalcProfitByBillCode(String billCode)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
String lockKey="reCalcProfitByBillCode"+billCode;
|
||||||
|
// 加锁查询
|
||||||
|
log.error("reCalcProfitByBillCode start:"+billCode);
|
||||||
|
redissonService.lock(lockKey, 300);
|
||||||
|
try {
|
||||||
// 获取运单信息
|
// 获取运单信息
|
||||||
EmisWaybill waybill = getWaybillByBillCode(billCode);
|
EmisWaybill waybill = getWaybillByBillCode(billCode);
|
||||||
|
|
||||||
@ -105,37 +117,37 @@ public class EmisCommissionProfitServiceImpl extends EmisBaseService implements
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
// 根据不同岗位计算
|
// 根据不同岗位计算
|
||||||
for(int postTypeIndex=1;postTypeIndex<=8;postTypeIndex++) {
|
for (int postTypeIndex = 1; postTypeIndex <= 8; postTypeIndex++) {
|
||||||
// 1.网点客服
|
// 1.网点客服
|
||||||
if(postTypeIndex == ProfitPostType.SITE_KEFU_EMP.typeCode) {
|
if (postTypeIndex == ProfitPostType.SITE_KEFU_EMP.typeCode) {
|
||||||
calcSiteFefuProfit(waybill);
|
calcSiteFefuProfit(waybill);
|
||||||
}
|
}
|
||||||
// 2.快件单证
|
// 2.快件单证
|
||||||
else if(postTypeIndex == ProfitPostType.KJDZ_EMP.typeCode) {
|
else if (postTypeIndex == ProfitPostType.KJDZ_EMP.typeCode) {
|
||||||
calcKjdzProfit(waybill);
|
calcKjdzProfit(waybill);
|
||||||
}
|
}
|
||||||
// 3.取件员
|
// 3.取件员
|
||||||
else if(postTypeIndex == ProfitPostType.TAKE_EMP.typeCode) {
|
else if (postTypeIndex == ProfitPostType.TAKE_EMP.typeCode) {
|
||||||
calcTakeProfit(waybill);
|
calcTakeProfit(waybill);
|
||||||
}
|
}
|
||||||
// 4.网点操作员
|
// 4.网点操作员
|
||||||
else if(postTypeIndex == ProfitPostType.SITE_OP_EMP.typeCode) {
|
else if (postTypeIndex == ProfitPostType.SITE_OP_EMP.typeCode) {
|
||||||
calcOpProfit(waybill);
|
calcOpProfit(waybill);
|
||||||
}
|
}
|
||||||
// 5.派件员
|
// 5.派件员
|
||||||
else if(postTypeIndex == ProfitPostType.DISPATCH_EMP.typeCode) {
|
else if (postTypeIndex == ProfitPostType.DISPATCH_EMP.typeCode) {
|
||||||
calcDispatchProfit(waybill);
|
calcDispatchProfit(waybill);
|
||||||
}
|
}
|
||||||
// 6.销售联系人
|
// 6.销售联系人
|
||||||
else if(postTypeIndex == ProfitPostType.SALES_EMP.typeCode) {
|
else if (postTypeIndex == ProfitPostType.SALES_EMP.typeCode) {
|
||||||
calcSalesProfit(waybill);
|
calcSalesProfit(waybill);
|
||||||
}
|
}
|
||||||
// 7.中转操作员
|
// 7.中转操作员
|
||||||
else if(postTypeIndex == ProfitPostType.MID_OP_EMP.typeCode) {
|
else if (postTypeIndex == ProfitPostType.MID_OP_EMP.typeCode) {
|
||||||
calcMidOpProfit(waybill);
|
calcMidOpProfit(waybill);
|
||||||
}
|
}
|
||||||
// 8.单证员
|
// 8.单证员
|
||||||
else if(postTypeIndex == ProfitPostType.DZ_EMP.typeCode) {
|
else if (postTypeIndex == ProfitPostType.DZ_EMP.typeCode) {
|
||||||
calcDzProfit(waybill);
|
calcDzProfit(waybill);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -143,6 +155,13 @@ public class EmisCommissionProfitServiceImpl extends EmisBaseService implements
|
|||||||
|
|
||||||
// 运单打上已计算提成标记
|
// 运单打上已计算提成标记
|
||||||
emisWaybillMapper.updateHasDoProfit(waybill);
|
emisWaybillMapper.updateHasDoProfit(waybill);
|
||||||
|
}catch (Exception ex){
|
||||||
|
redissonService.unlock(lockKey);
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
redissonService.unlock(lockKey);
|
||||||
|
log.error("reCalcProfitByBillCode end:"+billCode);
|
||||||
|
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
|||||||
@ -37,10 +37,7 @@ package com.xdadan.erp.emis.service.impl;
|
|||||||
import com.xdadan.erp.emis.domain.vo.WaybillOrder;
|
import com.xdadan.erp.emis.domain.vo.WaybillOrder;
|
||||||
import com.xdadan.erp.emis.domain.vo.scan.ScanInfo;
|
import com.xdadan.erp.emis.domain.vo.scan.ScanInfo;
|
||||||
import com.xdadan.erp.emis.mapper.*;
|
import com.xdadan.erp.emis.mapper.*;
|
||||||
import com.xdadan.erp.emis.service.EmisBaseService;
|
import com.xdadan.erp.emis.service.*;
|
||||||
import com.xdadan.erp.emis.service.IEmisElectronicSitePagService;
|
|
||||||
import com.xdadan.erp.emis.service.IEmisTmsScanRecordService;
|
|
||||||
import com.xdadan.erp.emis.service.IEmisWaybillService;
|
|
||||||
import com.xdadan.erp.emis.service.print.IXddTplPrint;
|
import com.xdadan.erp.emis.service.print.IXddTplPrint;
|
||||||
import com.xdadan.erp.emis.service.print.tanex.TanexPdfPrinter;
|
import com.xdadan.erp.emis.service.print.tanex.TanexPdfPrinter;
|
||||||
import com.xdadan.erp.emis.service.warehouse.DocUtils;
|
import com.xdadan.erp.emis.service.warehouse.DocUtils;
|
||||||
@ -110,6 +107,9 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
|
|||||||
@Autowired
|
@Autowired
|
||||||
private EmisWaybillOrigDataMapper emisWaybillOrigDataMapper;
|
private EmisWaybillOrigDataMapper emisWaybillOrigDataMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IEmisCommissionProfitService emisCommissionProfitService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private ISysFileInfoService sysFileInfoService;
|
private ISysFileInfoService sysFileInfoService;
|
||||||
|
|
||||||
@ -2868,6 +2868,10 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
|
|||||||
try {
|
try {
|
||||||
// 判断是否需要重新出账
|
// 判断是否需要重新出账
|
||||||
redoGenerateBill(emisWaybillSave.getBillCode());
|
redoGenerateBill(emisWaybillSave.getBillCode());
|
||||||
|
|
||||||
|
// 重新计算提成
|
||||||
|
emisCommissionProfitService.reCalcProfitByBillCode(emisWaybillSave.getBillCode());
|
||||||
|
|
||||||
}catch (Exception ex){
|
}catch (Exception ex){
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user