Browse Source

修改问题及优化

master
dimengzhe 2 years ago
parent
commit
acb2d903e5
  1. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java
  2. 206
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/common/BusSalesOrderConstantUtils.java
  3. 354
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  4. 11
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorderdeposit/BusSalesOrderDepositService.java

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java

@ -279,7 +279,7 @@ public interface BusSalesOrderFeign {
@ResponseBody
ResultBean<String> selectTemporaryNo(@RequestParam("vehSid")String vehSid);
@ApiOperation(value = "根据车辆sid查询销售订单是否存在,若存在返回相关数据")
@ApiOperation(value = "出库初始化,根据车辆sid查询销售订单是否存在,若存在返回相关数据")
@GetMapping("/selectOrderOne")
@ResponseBody
ResultBean<BusSaleOrderVehicleOutVo> selectOrderOne(@RequestParam("vinSid")String vinSid);

206
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/common/BusSalesOrderConstantUtils.java

@ -17,8 +17,54 @@ public class BusSalesOrderConstantUtils {
*/
public static String GENERAL_MANAGER_ROLESID = "135b4829-2928-4124-a5b3-7d4b1101a863";
/**
* 车辆临时状态
* 流程中网关参数
* 是否是全款IS_LOAN
* 销售部经理是否超权限SALES_MANAGER_Price true超权限false不超权限
* 总经理是否超权限GENERAL_MANAGER_PRICE true超权限false不超权限
*/
public static String IS_LOAN = "isLoan";
public static String SALES_MANAGER_Price = "isPrice";
public static String GENERAL_MANAGER_PRICE = "isPrice1";
/**
* 付款类型
*/
@Getter
public static enum PayTypeEnum {
/**
* 全款
*/
FULL_PAYMENT("1", "全款"),
/**
* 贷款
*/
LOAN("2", "贷款");
/**
* code值
*/
private final String code;
/**
* 备注
*/
private final String remarks;
/**
* 构造器
*
* @param code code值
* @param remarks 备注
*/
private PayTypeEnum(String code, String remarks) {
this.code = code;
this.remarks = remarks;
}
}
/**
* 车辆类型
*/
@Getter
public static enum TypeEnum {
@ -55,4 +101,162 @@ public class BusSalesOrderConstantUtils {
this.remarks = remarks;
}
}
/**
* 是否包含上装
*/
@Getter
public static enum TopType {
/**
* 包含上装
*/
YES("1", "包含"),
/**
* 不包含上装
*/
NO("0", "不包含");
/**
* code值
*/
private final String code;
/**
* 备注
*/
private final String remarks;
/**
* 构造器
*
* @param code code值
* @param remarks 备注
*/
private TopType(String code, String remarks) {
this.code = code;
this.remarks = remarks;
}
}
/**
* 订金交纳方式
*/
@Getter
public static enum DepositType {
/**
* 现交订金
*/
CASH_DEPOSIT("01", "现交订金"),
/**
* 订金结转
*/
DEPOSIT_CARRY_FORWARD("02", "订金结转");
/**
* code值
*/
private final String code;
/**
* 备注
*/
private final String remarks;
/**
* 构造器
*
* @param code code值
* @param remarks 备注
*/
private DepositType(String code, String remarks) {
this.code = code;
this.remarks = remarks;
}
}
/**
* 是否包含保险
*/
@Getter
public static enum InsuranceType {
/**
* 包含保险
*/
YES("1", "入保"),
/**
* 不包含保险
*/
NO("0", "不入保");
/**
* code值
*/
private final String code;
/**
* 备注
*/
private final String remarks;
/**
* 构造器
*
* @param code code值
* @param remarks 备注
*/
private InsuranceType(String code, String remarks) {
this.code = code;
this.remarks = remarks;
}
}
/**
* 载货自卸搅拌车专用车有上装牵引车起重机没有上装的
*/
@Getter
public static enum VehicleFunctions {
/**
* 搅拌车
*/
MIXER("7", "搅拌车"),
/**
* 载货车
*/
TRUCK("005", "载货车"),
/**
* 牵引车
*/
TRACTION("4", "牵引车"),
/**
* 专用车/特种车
*/
SPECIAL("5", "专用车/特种车"),
/**
* 自卸车
*/
DUMP("3", "自卸车"),
/**
* 起重机
*/
CRANCE("6", "起重机");
/**
* code值
*/
private final String code;
/**
* 备注
*/
private final String remarks;
/**
* 构造器
*
* @param code code值
* @param remarks 备注
*/
private VehicleFunctions(String code, String remarks) {
this.code = code;
this.remarks = remarks;
}
}
}

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

@ -32,9 +32,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basebrandletpricepowimit.BaseBrandMitQuery;
import com.yxt.anrui.base.api.basebrandletpricepowimit.BaseBrandletpricepowimitFeign;
import com.yxt.anrui.base.api.basediscountpackage.BaseDiscountpackageFeign;
import com.yxt.anrui.base.api.basemodelconfig.AppCarConfigSummaryVo;
import com.yxt.anrui.base.api.basepostprice.BasePostPriceFeign;
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchSystemVo;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
@ -43,7 +41,6 @@ import com.yxt.anrui.base.api.basevehicle.app.AppBaseVehicleOrderVo;
import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel;
import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModelFeign;
import com.yxt.anrui.base.api.basevehiclemodelappendix.BaseVehicleModelAppendixFeign;
import com.yxt.anrui.base.api.basevehiclepolicy.BaseVehiclePolicyFeign;
import com.yxt.anrui.base.api.basevehicletempstate.BaseVehicleTempstateFeign;
import com.yxt.anrui.base.api.basevehicletempstate.BaseVehicleTempstateVo;
import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelConfigFeign;
@ -122,8 +119,6 @@ import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFeign;
import com.yxt.anrui.flowable.api.sysprourl.SysProUrlFeign;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.dictcommon.DictCommonFeign;
@ -136,7 +131,6 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.portal.api.sysuser.app.AppUserOrgInfoVo;
import com.yxt.anrui.portal.api.sysuserrole.SysUserRoleFeign;
import com.yxt.anrui.portal.config.DictCommonType;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
@ -149,6 +143,8 @@ import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.MessageFlowVo;
import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -173,6 +169,7 @@ import java.util.stream.Collectors;
*/
@Service
public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper, BusSalesOrder> {
public static final Logger log = LoggerFactory.getLogger(BusSalesOrderService.class);
@Autowired
private BusSalesOrderModelService busSalesOrderModelService;
@ -203,18 +200,12 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
@Autowired
private FlowTaskFeign flowTaskFeign;
@Autowired
private SysFormLinkFeign sysFormLinkFeign;
@Autowired
private BaseVehmodelConfigFeign baseVehmodelConfigFeign;
@Autowired
private BaseVehicleFeign baseVehicleFeign;
@Autowired
private BusVehicleOrderFeign busVehicleOrderFeign;
@Autowired
private BasePostPriceFeign basePostPriceFeign;
@Autowired
private BaseVehiclePolicyFeign baseVehiclePolicyFeign;
@Autowired
private DictCommonFeign dictCommonFeign;
@Autowired
private FileUploadComponent fileUploadComponent;
@ -235,8 +226,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
@Autowired
private CrmVehicledemandFeign crmVehicledemandFeign;
@Autowired
private SysProUrlFeign sysProUrlFeign;
@Autowired
private MessageFeign messageFeign;
@Autowired
private BusDepositService busDepositService;
@ -245,12 +234,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
@Autowired
private BaseVehicleTempstateFeign baseVehicleTempstateFeign;
@Autowired
private BaseDiscountpackageFeign baseDiscountpackageFeign;
@Autowired
private BaseBrandletpricepowimitFeign baseBrandletpricepowimitFeign;
@Autowired
private SysUserRoleFeign sysUserRoleFeign;
@Autowired
private BaseVehicleModelFeign baseVehicleModelFeign;
@ -332,12 +317,12 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
vo.setBusSalesOrderModel(busSalesOrderModelDetailsVo);
}
//查询现车车辆
if ("1".equals(entity.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(entity.getType())) {
List<BusSalesOrderVehicleDetailsVo> busSalesOrderVehicleListVoList = busSalesOrderVehicleService.detailsList(entity.getSid());
if (busSalesOrderVehicleListVoList.size() != 0) {
vo.setBusSalesOrderVehicleList(busSalesOrderVehicleListVoList);
}
} else if ("2".equals(entity.getType())) {
} else if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(entity.getType())) {
//查询采购订单
List<BusSalesVehicleOrderDetailsVo> busSalesVehicleOrderDetailsVoList = busSalesVehicleOrderService.detailsList(entity.getSid());
if (busSalesVehicleOrderDetailsVoList.size() != 0) {
@ -345,7 +330,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
}
//查询上装配置
if ("1".equals(entity.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(entity.getIsTop())) {
BusSalesOrderMakeupDetailsVo busSalesOrderMakeupDetailsVo = busSalesOrderMakeupService.details(entity.getSid());
if (busSalesOrderMakeupDetailsVo != null) {
if (StringUtils.isNotBlank(busSalesOrderMakeupDetailsVo.getContractPath())) {
@ -369,7 +354,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
vo.setBusSalesOrderDiscountList(busSalesOrderDiscountDetailsVoList);
}
//查询保险说明
BusSalesOrderInsuranceDetailsVo busSalesOrderInsuranceDetailsVo = busSalesOrderInsuranceService.details(entity.getSid());
if (busSalesOrderInsuranceDetailsVo != null) {
vo.setBusSalesOrderInsurance(busSalesOrderInsuranceDetailsVo);
@ -379,7 +363,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
BusSalesOrderDepositDetailsVo busSalesOrderDepositDetailsVo = busSalesOrderDepositService.details(entity.getSid());
if (busSalesOrderDepositDetailsVo != null) {
vo.setBusSalesOrderDeposit(busSalesOrderDepositDetailsVo);
if ("02".equals(busSalesOrderDepositDetailsVo.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDepositDetailsVo.getDepositTypeKey())) {
//查询虚拟订单和订金关联信息
List<BusDepositFictitiousDetailsVo> busDepositFictitiousDetailsVoList = busDepositFictitiousService.detailsList(busSalesOrderDepositDetailsVo.getSid());
if (busDepositFictitiousDetailsVoList.size() != 0) {
@ -400,7 +384,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
public ResultBean<String> saveOrUpdateOrder1(BusSalesOrderAllDto dto) {
ResultBean<String> rb = ResultBean.fireFail();
//销售订单单据信息是否全
String sid = dto.getSid();
//验证传入的参数是否正确
ResultBean resultBean = isCheck(dto);
@ -475,7 +458,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
}
String isTop = dto.getIsTop();
if ("1".equals(isTop)) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(isTop)) {
busSalesOrderMakeupService.saveMake(busSalesOrderMakeupDto, sid);
if (busSalesOrderMakeupDto != null) {
if (StringUtils.isNotBlank(busSalesOrderMakeupDto.getTopPrice())) {
@ -497,7 +480,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderDiscountService.saveDiscount(busSalesOrderDiscountDto, sid);
//是否有保险说明
String isInsurance = dto.getIsInsurance();
if ("1".equals(isInsurance)) {
if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(isInsurance)) {
busSalesOrderInsuranceService.saveInsurance(busSalesOrderInsuranceDto, sid);
} else {
if (dto.getBusSalesOrderInsurance() != null) {
@ -519,7 +502,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
BigDecimal makeUpDeposit = depositAll.subtract(makeUpDepositAll);
busSalesOrderDepositDto.setMakeUpDeposit(makeUpDeposit.toString());
String depositSid = busSalesOrderDepositService.saveOrderDepo(busSalesOrderDepositDto, sid);
if ("02".equals(busSalesOrderDepositDto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDepositDto.getDepositTypeKey())) {
//结转
busDepositFictitiousService.saveFictitious(busDepositFictitiousDtoList, depositSid);
}
@ -564,7 +547,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
//是否含有上装信息
String isTop = dto.getIsTop();
if ("1".equals(isTop)) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(isTop)) {
//删除上装信息
busSalesOrderMakeupService.deleteBySalesOrderSid(dto.getSid());
busSalesOrderMakeupService.saveMake(busSalesOrderMakeupDto, dto.getSid());
@ -585,7 +568,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderDiscountService.saveDiscount(busSalesOrderDiscountDto, dto.getSid());
//是否有保险说明
String isInsurance = dto.getIsInsurance();
if ("1".equals(isInsurance)) {
if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(isInsurance)) {
busSalesOrderInsuranceService.deleteByOrderSid(dto.getSid());
busSalesOrderInsuranceService.saveInsurance(busSalesOrderInsuranceDto, dto.getSid());
} else {
@ -608,7 +591,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderDepositService.updateOrderDepo(busSalesOrderDepositDto, dto.getSid());
BusSalesOrderDeposit busSalesOrderDeposit = busSalesOrderDepositService.selectByOrderSid(dto.getSid());
if (busSalesOrderDeposit != null) {
if ("02".equals(busSalesOrderDepositDto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDepositDto.getDepositTypeKey())) {
//结转金额
busDepositFictitiousService.deleteByOrderSid(busSalesOrderDeposit.getSid());
busDepositFictitiousService.saveFictitious(busDepositFictitiousDtoList, busSalesOrderDeposit.getSid());
@ -633,11 +616,11 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
int vehicleNum = 0;
//判断和价格信息中的台数是否一致
int quantity = dto.getBusSalesOrderPrice().getQuantity();
if ("1".equals(dto.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(dto.getType())) {
//现车
vehicleNum = dto.getBusSalesOrderVehicleList().size();
} else if ("2".equals(dto.getType())) {
} else if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(dto.getType())) {
//采购订单
List<BusSalesVehicleOrderDto> busSalesVehicleOrderList = dto.getBusSalesVehicleOrderList();
if (busSalesVehicleOrderList.size() > 0) {
@ -688,7 +671,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
String finalPrice = dto.getBusSalesOrderModel().getFinalPrice();
singleFinalPriceBig = singleFinalPriceBig.add(new BigDecimal(finalPrice));
//包含上装
if ("1".equals(dto.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(dto.getIsTop())) {
//上装价格
BusSalesOrderMakeupDto busSalesOrderMakeup = dto.getBusSalesOrderMakeup();
if (StringUtils.isBlank(busSalesOrderMakeup.getTopName())) {
@ -700,7 +683,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
singleFinalPriceBig = singleFinalPriceBig.add(new BigDecimal(topPrice));
}
}
if ("1".equals(dto.getIsInsurance())) {
if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(dto.getIsInsurance())) {
BusSalesOrderInsuranceDto busSalesOrderInsurance = dto.getBusSalesOrderInsurance();
if (StringUtils.isBlank(busSalesOrderInsurance.getInsuranceName())) {
return rb.setMsg("公司入保下保险公司名称不能为空");
@ -745,7 +728,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (new BigDecimal(depositAll).compareTo(new BigDecimal(deposit).multiply(new BigDecimal(new Integer(quantity).toString()))) != 0) {
return rb.setMsg("订金信息中订金合计数值计算错误");
}
if ("02".equals(dto.getBusSalesOrderDeposit().getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(dto.getBusSalesOrderDeposit().getDepositTypeKey())) {
List<BusDepositFictitiousDto> busDepositFictitiousList = dto.getBusDepositFictitiousList();
//本次结转金额之和
BigDecimal depositBig = new BigDecimal("0");
@ -807,16 +790,16 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderModelService.saveModel(busSalesOrderModelDto, dto.getSid());
busSalesOrderVehicleService.deleteByOrderSid(dto.getSid());
busSalesVehicleOrderService.deleteByOrderSid(dto.getSid());
if ("1".equals(dto.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(dto.getType())) {
//现车车辆信息
busSalesOrderVehicleService.saveVehicle(list, dto.getSid());
} else if ("2".equals(dto.getType())) {
} else if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(dto.getType())) {
//采购订单信息
busSalesVehicleOrderService.saveOrder(vehicleList, dto.getSid());
}
//是否含有上装信息
String isTop = dto.getIsTop();
if ("1".equals(isTop)) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(isTop)) {
//删除上装信息
busSalesOrderMakeupService.deleteBySalesOrderSid(dto.getSid());
busSalesOrderMakeupService.saveMake(busSalesOrderMakeupDto, dto.getSid());
@ -830,7 +813,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderDiscountService.saveDiscount(busSalesOrderDiscountDto, dto.getSid());
//是否有保险说明
String isInsurance = dto.getIsInsurance();
if ("1".equals(isInsurance)) {
if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(isInsurance)) {
busSalesOrderInsuranceService.deleteByOrderSid(dto.getSid());
busSalesOrderInsuranceService.saveInsurance(busSalesOrderInsuranceDto, dto.getSid());
} else {
@ -844,7 +827,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderDepositService.updateOrderDepo(busSalesOrderDepositDto, dto.getSid());
BusSalesOrderDeposit busSalesOrderDeposit = busSalesOrderDepositService.selectByOrderSid(dto.getSid());
if (busSalesOrderDeposit != null) {
if ("02".equals(busSalesOrderDepositDto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDepositDto.getDepositTypeKey())) {
//结转金额
busDepositFictitiousService.deleteByOrderSid(busSalesOrderDeposit.getSid());
busDepositFictitiousService.saveFictitious(busDepositFictitiousDtoList, busSalesOrderDeposit.getSid());
@ -884,16 +867,16 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
String sid = busSalesOrder.getSid();
//主车车型信息保存
busSalesOrderModelService.saveModel(busSalesOrderModelDto, sid);
if ("1".equals(dto.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(dto.getType())) {
//现车车辆信息
busSalesOrderVehicleService.saveVehicle(list, sid);
} else if ("2".equals(dto.getType())) {
} else if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(dto.getType())) {
//采购订单信息
busSalesVehicleOrderService.saveOrder(vehicleList, sid);
}
//是否含有上装信息
String isTop = dto.getIsTop();
if ("1".equals(isTop)) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(isTop)) {
busSalesOrderMakeupService.saveMake(busSalesOrderMakeupDto, sid);
}
//价格信息
@ -902,7 +885,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderDiscountService.saveDiscount(busSalesOrderDiscountDto, sid);
//是否有保险说明
String isInsurance = dto.getIsInsurance();
if ("1".equals(isInsurance)) {
if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(isInsurance)) {
busSalesOrderInsuranceService.saveInsurance(busSalesOrderInsuranceDto, sid);
} else {
if (dto.getBusSalesOrderInsurance() != null) {
@ -915,7 +898,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
}
String depositSid = busSalesOrderDepositService.saveOrderDepo(busSalesOrderDepositDto, sid);
if ("02".equals(busSalesOrderDepositDto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDepositDto.getDepositTypeKey())) {
//结转
busDepositFictitiousService.saveFictitious(busDepositFictitiousDtoList, depositSid);
}
@ -998,7 +981,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
}
//销售经理的角色sid
// String roleSid = "f07e98d3-d179-48ee-a5ff-5928addead3f";
String roleSid = BusSalesOrderConstantUtils.SALES_MANAGER_ROLESID;
//查询销售部经理是否超权限
BusSalesOrderModel busSalesOrderModel = busSalesOrderModelService.selectByOrderSid(sid);
@ -1059,73 +1041,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return busSalesOrderPowerVo;
}
/**
* 查询用户是否设置了部门
*
* @param staffSid
* @return
*/
/*private String checkUserOrg(String staffSid) {
String orgSid = "";
ResultBean<String> resultBean = sysStaffOrgFeign.getSysStaffOrgSidListByStaffSid(staffSid);
if (resultBean.getSuccess()) {
orgSid = resultBean.getData();
}
return orgSid;
}*/
/* private void modifyFlowState(String businessSid, String proDefId, String nodeState,
String procInsId,
String taskDefKey, String taskId) {
baseMapper.modifyFlowState(businessSid,
proDefId,
nodeState,
procInsId,
taskDefKey, taskId);
}*/
/* public ResultBean complete(BusSalesOrderFlowQuery busSalesOrderFlowQuery) {
ResultBean rb = ResultBean.fireFail();
//查询对象转换为map集合
Map<String, Object> variables = Convert.toMap(String.class, Object.class, busSalesOrderFlowQuery);
BusinessVariables bv = BusinessVariables.builder().build();
bv.setFormVariables(variables);
ResultBean<FlowTask> resultBean = flowTaskFeign.businessComplete(bv);
if (!resultBean.getSuccess()) {
return resultBean;
}
String nodeState = "";
String taskDefKey = "";
String taskId = "";
Map<String, Object> map = new HashMap<>();
map.put("businessSid", variables.get("businessSid").toString());
if (resultBean.getData() != null) {
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(resultBean.getData().getProcInsId());
if (listResultBean.getSuccess() && listResultBean.getData().size() != 0) {
nodeState = listResultBean.getData().get(0).getName_();
taskDefKey = listResultBean.getData().get(0).getTask_def_key_();
taskId = listResultBean.getData().get(0).getId_();
} else {
nodeState = ProcessStateEnum.FINISHED.getStateName();
taskDefKey = "Event_end";
taskId = variables.get("taskId").toString();
//更新销售订单的状态为已通过的状态:审批通过2
//ToDo:
updateStateByBusinessSid(2, variables.get("businessSid").toString());
//通过后新增合同表中的信息。
}
}
//更新业务表中的流程状态
modifyFlowState(variables.get("businessSid").toString(),
ProcDefEnum.SALESORDER.getProDefId(),
nodeState,
variables.get("instanceId").toString(),
taskDefKey,
taskId);
return rb.success();
}*/
/**
* 更新销售订单的状态
*
@ -1170,11 +1085,10 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
String nextName = listResultBean.getData().get(0).getName_();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
// if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(busSalesOrder1.getCreateBySid())) {
if ("销售订单申请".equals(nextName)) {
ResultBean<AppOrderDetailsVo> details = getSaleOrderDetails(query.getBusinessSid());
AppOrderDetailsVo vo = details.getData();
if ("现车".equals(vo.getOrderType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getRemarks().equals(vo.getOrderType())) {
//更新已选择的车架号的状态为未锁定
List<String> list = busSalesOrderVehicleService.selectVehicleSid(query.getBusinessSid());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
@ -1183,14 +1097,13 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.UN_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
if ("采购订单".equals(vo.getOrderType())) {
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getRemarks().equals(vo.getOrderType())) {
List<BusSalesVehicleOrder> list = busSalesVehicleOrderService.selectLinkSid(query.getBusinessSid());
for (BusSalesVehicleOrder b : list) {
String linkSid = b.getLinkSid();
int count = b.getUsingNum();
//查询该采购订单的已使用台数
int num = busSalesVehicleOrderService.selectByLinkSid1(linkSid);
// int numcount = num-count;
//更新
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(num));
}
@ -1211,7 +1124,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
String nextNodeUserSids2 = listResultBean2.getData().get(0).getASSIGNEE_();
List<String> receiveSidList2 = Arrays.asList(nextNodeUserSids2.split(","));
String nextName2 = listResultBean2.getData().get(0).getName_();
// if (receiveSidList2.size() == 1 && receiveSidList2.get(0).equals(busSalesOrder.get().getCreateBySid())) {
if ("销售订单申请".equals(nextName2)) {
messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交");
} else {
@ -1253,7 +1165,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
updateFlowFiled(map);
//再加回来
BusSalesOrderDeposit busSalesOrderDeposit = busSalesOrderDepositService.selectByOrderSid(query.getBusinessSid());
if ("02".equals(busSalesOrderDeposit.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
//根据订金sid查询虚拟订单和订金的关联
List<AppBusSalesOrderDepositListVo> listVos = busDepositFictitiousService.getList(busSalesOrderDeposit.getSid());
listVos.removeAll(Collections.singleton(null));
@ -1292,7 +1204,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
int count = b.getUsingNum();
//查询该采购订单的已使用台数
int num = busSalesVehicleOrderService.selectByLinkSid1(linkSid);
// int numcount = num-count;
//更新
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(num));
}
@ -1327,7 +1238,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
String nextName = listResultBean.getData().get(0).getName_();
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
// if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(busSalesOrder.getCreateBySid())) {
if ("销售订单申请".equals(nextName)) {
ResultBean<AppOrderDetailsVo> details = getSaleOrderDetails(query.getBusinessSid());
AppOrderDetailsVo vo = details.getData();
@ -1347,7 +1257,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
int count = b.getUsingNum();
//查询该采购订单的已使用台数
int num = busSalesVehicleOrderService.selectByLinkSid1(linkSid);
// int numcount = num-count;
//更新
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(num));
}
@ -1400,11 +1309,11 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//上装状态
if (StringUtils.isNotBlank(busSalesOrder.getIsTop())) {
//0不包含,1包含
if ("0".equals(busSalesOrder.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.NO.getCode().equals(busSalesOrder.getIsTop())) {
vo.setTopInfoState(0);
vo.setTopName("无");
}
if ("1".equals(busSalesOrder.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(busSalesOrder.getIsTop())) {
BusSalesOrderMakeupDetailsVo busSalesOrderMakeupDetailsVo = busSalesOrderMakeupService.details(saleOrderSid);
if (busSalesOrderMakeupDetailsVo != null) {
vo.setTopInfoState(1);
@ -1443,11 +1352,11 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
//0不入保,1入保
if (StringUtils.isNotBlank(busSalesOrder.getIsInsurance())) {
if ("0".equals(busSalesOrder.getIsInsurance())) {
if (BusSalesOrderConstantUtils.InsuranceType.NO.getCode().equals(busSalesOrder.getIsInsurance())) {
vo.setInsureInfoState(1);
vo.setInsureName("非公司投保");
}
if ("1".equals(busSalesOrder.getIsInsurance())) {
if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(busSalesOrder.getIsInsurance())) {
vo.setInsureInfoState(1);
vo.setInsureName("公司投保");
}
@ -1486,10 +1395,10 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
// TRUCK("005", "载货车"), TRACTION("4", "牵引车"),
// SPECIAL("5", "专用车/特种车"), DUMP("3", "自卸车");
if (StringUtils.isNotBlank(vo.getVehicleFunctionKey())) {
if ("005".equals(vo.getVehicleFunctionKey()) ||
"3".equals(vo.getVehicleFunctionKey()) ||
"7".equals(vo.getVehicleFunctionKey()) ||
"5".equals(vo.getVehicleFunctionKey())) {
if (BusSalesOrderConstantUtils.VehicleFunctions.TRUCK.getCode().equals(vo.getVehicleFunctionKey()) ||
BusSalesOrderConstantUtils.VehicleFunctions.DUMP.getCode().equals(vo.getVehicleFunctionKey()) ||
BusSalesOrderConstantUtils.VehicleFunctions.MIXER.getCode().equals(vo.getVehicleFunctionKey()) ||
BusSalesOrderConstantUtils.VehicleFunctions.SPECIAL.getCode().equals(vo.getVehicleFunctionKey())) {
vo.setTopState(true);
} else {
vo.setTopState(false);
@ -1604,7 +1513,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (StringUtils.isBlank(record.getSaleOrderState())) {
record.setSaleOrderState("待提交");
}
if ("1".equals(record.getType())) {//现车
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(record.getType())) {//现车
record.setShowInputBtn(false);
} else {
//是否有录入车架号按钮
@ -1947,7 +1856,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
vo.setCarInfo(appCarInfo);
/*********************以下为该销售订单所选择的车型信息**************************************/
//查询是否有车辆信息:1现车、2采购订单、3排产。需要对应apifox中对应的类型:0现车、1采购订单、2排产
if ("1".equals(busSalesOrder.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(busSalesOrder.getType())) {
//类型为现车,查询该销售订单的现车车辆信息
List<AppNowCarListVo> nowCarList = busSalesOrderVehicleService.selectAppDetailsVoBySaleOrderSid(saleOrderSid);
nowCarList.removeAll(Collections.singleton(null));
@ -1960,7 +1869,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
type = "0";
}
if ("2".equals(busSalesOrder.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(busSalesOrder.getType())) {
List<AppReadyCarListVo> appReadyCarList = busSalesVehicleOrderService.selectAppDetailsVoBySaleOrderSid(saleOrderSid);
appReadyCarList.removeAll(Collections.singleton(null));
if (!appReadyCarList.isEmpty()) {
@ -1983,7 +1892,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
type = "1";
}
if ("3".equals(busSalesOrder.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.PRODUCTION_SCHEDULING.getCode().equals(busSalesOrder.getType())) {
type = "2";
//查询数量
BusSalesOrderPrice busSalesOrderPrice = busSalesOrderPriceService.selectBySalesOrderSid(saleOrderSid);
@ -2014,11 +1923,13 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
for (AppNowCarListVo car : appNowCarList) {
String vinNo = car.getVin();
if (!vinNoList.contains(vinNo)) {
log.info("=====车架号为"+vinNo+"的现车已发生变化");
isCheck = true;
break;
}
String topSid = vinNoMap.get(vinNo).toString();
if (!topSid.equals(car.getTopSid())) {
log.info("=====车架号为"+vinNo+"的现车的上装已发生变化");
isCheck = true;
break;
}
@ -2040,6 +1951,12 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
String orderId = order.getOrderId();
if (orderIdMap.containsKey(orderId)) {
if (Integer.parseInt(orderIdMap.get(orderId).toString()) == 0 || Integer.parseInt(orderIdMap.get(orderId).toString()) < Integer.parseInt(order.getSelectNum())) {
if(Integer.parseInt(orderIdMap.get(orderId).toString()) == 0){
log.info("======"+orderId+"上装已发生变化");
}
if(Integer.parseInt(orderIdMap.get(orderId).toString()) < Integer.parseInt(order.getSelectNum())){
log.info("======"+orderId+"数量已发生变化");
}
isCheck = true;
break;
}
@ -2096,7 +2013,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
orderInfo.setNowCarList(appNowCarLists);
//订单选择的采购订单列表
orderInfo.setReadyCarList(appReadyCarLists);
if ("1".equals(busSalesOrder.getPayTypeKey())) {//全款
if (BusSalesOrderConstantUtils.PayTypeEnum.FULL_PAYMENT.getCode().equals(busSalesOrder.getPayTypeKey())) {//全款
vo.setPrice(data.getPrice());
} else {
vo.setPrice(data.getManufactorSettlementPrice());
@ -2229,15 +2146,15 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
deleteBySid(sid);
//删除主车车型信息
busSalesOrderModelService.deleteByOrderSid(sid);
if ("1".equals(busSalesOrder.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(busSalesOrder.getType())) {
//删除现车车辆信息
busSalesOrderVehicleService.deleteByOrderSid(sid);
}
if ("2".equals(busSalesOrder.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(busSalesOrder.getType())) {
//删除采购订单信息
busSalesVehicleOrderService.deleteByOrderSid(sid);
}
if ("1".equals(busSalesOrder.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(busSalesOrder.getIsTop())) {
//删除上装配置信息
busSalesOrderMakeupService.deleteBySalesOrderSid(sid);
}
@ -2245,13 +2162,13 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderPriceService.deleteByOrderSid(sid);
//删除主车优惠
busSalesOrderDiscountService.deleteByOrderSid(sid);
if ("1".equals(busSalesOrder.getIsInsurance())) {
if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(busSalesOrder.getIsInsurance())) {
//删除保险信息
busSalesOrderInsuranceService.deleteByOrderSid(sid);
}
BusSalesOrderDeposit busSalesOrderDeposit = busSalesOrderDepositService.selectByOrderSid(sid);
if (busSalesOrderDeposit != null) {
if ("02".equals(busSalesOrderDeposit.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
//根据订金sid查询虚拟订单和订金的关联
List<AppBusSalesOrderDepositListVo> listVos = busDepositFictitiousService.getList(busSalesOrderDeposit.getSid());
listVos.removeAll(Collections.singleton(null));
@ -2267,7 +2184,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
//删除订金信息
busSalesOrderDepositService.deleteByOrderSid(sid);
if ("02".equals(busSalesOrderDeposit.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
//删除订金和虚拟订单关联信息
busDepositFictitiousService.deleteByDepositSid(busSalesOrderDeposit.getSid());
}
@ -2296,15 +2213,15 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
deleteBySid(sid);
//删除主车车型信息
busSalesOrderModelService.deleteByOrderSid(sid);
if ("1".equals(busSalesOrder.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(busSalesOrder.getType())) {
//删除现车车辆信息
busSalesOrderVehicleService.deleteByOrderSid(sid);
}
if ("2".equals(busSalesOrder.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(busSalesOrder.getType())) {
//删除采购订单信息
busSalesVehicleOrderService.deleteByOrderSid(sid);
}
if ("1".equals(busSalesOrder.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(busSalesOrder.getIsTop())) {
//删除上装配置信息
busSalesOrderMakeupService.deleteBySalesOrderSid(sid);
}
@ -2312,7 +2229,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busSalesOrderPriceService.deleteByOrderSid(sid);
//删除主车优惠
busSalesOrderDiscountService.deleteByOrderSid(sid);
if ("1".equals(busSalesOrder.getIsInsurance())) {
if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(busSalesOrder.getIsInsurance())) {
//删除保险信息
busSalesOrderInsuranceService.deleteByOrderSid(sid);
}
@ -2320,7 +2237,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (busSalesOrderDeposit != null) {
//删除订金信息
busSalesOrderDepositService.deleteByOrderSid(sid);
if ("02".equals(busSalesOrderDeposit.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
//删除订金和虚拟订单关联信息
busDepositFictitiousService.deleteByDepositSid(busSalesOrderDeposit.getSid());
}
@ -2464,12 +2381,12 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return rb.setMsg("请完善车型信息");
}
//现车判断车架号是否已经锁定,已经锁定需要提示更换车架号。采购判断选择数量是否大于采购订单可用数量,提示车型数量超出可选数量
if ("1".equals(busSalesOrder.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(busSalesOrder.getType())) {
boolean isVehicle = isVehicle(sid);
if (!isVehicle) {
return rb.setMsg("当前车型已发生变化,请进行确认");
}
} else if ("2".equals(busSalesOrder.getType())) {
} else if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(busSalesOrder.getType())) {
boolean isVehicleOrder = isVehicleOrder(sid);
if (!isVehicleOrder) {
return rb.setMsg("当前车型已发生变化,请进行确认");
@ -2519,11 +2436,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return rb.setMsg("订金信息存在错误,请检查");
}
}
/* ResultBean<AppOrderDetailsVo> resultBean = getSaleOrderDetails(sid);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}*/
return rb.success();
}
@ -2536,11 +2448,14 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (details.getData() != null) {
String vehicleKey = details.getData().getVehicleType();
//(是否开启上装需要根据车辆功能载货、自卸、搅拌车、专用车的开启,且为必填)
if ("3".equals(vehicleKey) || "005".equals(vehicleKey) || "7".equals(vehicleKey) || "5".equals(vehicleKey)) {
if (BusSalesOrderConstantUtils.VehicleFunctions.DUMP.getCode().equals(vehicleKey) ||
BusSalesOrderConstantUtils.VehicleFunctions.TRUCK.getCode().equals(vehicleKey) ||
BusSalesOrderConstantUtils.VehicleFunctions.MIXER.getCode().equals(vehicleKey) ||
BusSalesOrderConstantUtils.VehicleFunctions.SPECIAL.getCode().equals(vehicleKey)) {
if (busSalesOrder.getIsTop() == null) {
isMakeUp = false;
} else {
if ("0".equals(busSalesOrder.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.NO.getCode().equals(busSalesOrder.getIsTop())) {
isMakeUp = false;
}
}
@ -2624,7 +2539,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
StringUtils.isBlank(busSalesOrderDepositDetailsVo.getDepositTypeKey())) {
isDeposit = false;
}
if ("02".equals(busSalesOrderDepositDetailsVo.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDepositDetailsVo.getDepositTypeKey())) {
List<BusDepositFictitiousDetailsVo> list = busDepositFictitiousService.detailsList(busSalesOrderDepositDetailsVo.getSid());
list.removeAll(Collections.singleton(null));
if (list.isEmpty()) {
@ -2653,7 +2568,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
String modelSid = orderInfo.getModelSid();
String configSid = orderInfo.getConfigSid();
String orgSid = sysStaffOrgFeign.getOrgSidByPath(busSalesOrder.getOrgSidPath()).getData();
// String orgSid = sysStaffOrgFeign.selectSidPathByStaffSid(busSalesOrder.getStaffSid()).getData();
//根据车型sid及配置sid查询现车列表
ResultBean<List<AppBaseVehicleOrderVo>> orderVoResultBean = baseVehicleFeign.selectAppList(modelSid, configSid, orgSid);
if (orderVoResultBean.getSuccess()) {
@ -2829,9 +2743,9 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
BusSalesOrderInsuranceDetailsVo busSalesOrderInsurance = busSalesOrderInsuranceService.details(sid);
if (busSalesOrderInsurance != null) {
if ("0".equals(busSalesOrder.getIsInsurance())) {
if (BusSalesOrderConstantUtils.InsuranceType.NO.getCode().equals(busSalesOrder.getIsInsurance())) {
vo.setInsuranceInfo("未在公司入保" + "\n\n" + "备注:" + busSalesOrderInsurance.getRemarks());
} else if ("1".equals(busSalesOrder.getIsInsurance())) {
} else if (BusSalesOrderConstantUtils.InsuranceType.YES.getCode().equals(busSalesOrder.getIsInsurance())) {
String x = "、";
String x1 = "单台车保费预估金额(元):";
String x2 = "公司入保期数:";
@ -2844,14 +2758,15 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
vo.setInsuranceInfoMessage(infoMessage);
}
} else {
if ("0".equals(busSalesOrder.getIsInsurance())) {
if (BusSalesOrderConstantUtils.InsuranceType.NO.getCode().equals(busSalesOrder.getIsInsurance())) {
vo.setInsuranceInfo("未在公司入保");
}
}
/***************************车型信息***************************************/
AppOrderModelInfoVo modelInfo = busSalesOrderModelService.selectModel(sid);
if (modelInfo != null) {
//若订单类型为0则为现车,为1采购订单,为2排产
//若前端传值的订单类型为0则为现车,为1采购订单,为2排产
//数据库中1为现车,2为采购订单,3为排产
if ("0".equals(modelInfo.getType())) {
//查询车架号
// List<String> vinList = busSalesOrderVehicleService.selectList(sid);
@ -2891,7 +2806,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
vo.setPriceInfo(priceInfo);
}
/***************************上装信息***************************************/
if ("1".equals(busSalesOrder.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(busSalesOrder.getIsTop())) {
AppOrderTopInfoVo topInfo = busSalesOrderMakeupService.selectTop(sid);
if (topInfo != null) {
if (StringUtils.isNotBlank(topInfo.getContractPath())) {
@ -3038,7 +2953,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
AppOrderDepositInfoVo depositInfo = busSalesOrderDepositService.selectDeposit(sid);
if (depositInfo != null) {
String a = "由";
if ("02".equals(depositInfo.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(depositInfo.getDepositTypeKey())) {
List<BusDepositFictitiousDetailsVo> list = busDepositFictitiousService.detailsList(depositInfo.getSid());
list.removeAll(Collections.singleton(null));
List<String> stringList = new ArrayList<>();
@ -3104,17 +3019,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return rb.setMsg("操作失败!提交的数据不一致");
}
BusSalesOrder busSalesOrderOne = fetchBySid(businessSid);
/*if ("2".equals(busSalesOrderOne.getType())) {
List<BusSalesVehicleOrderDetailsVo> list = busSalesVehicleOrderService.detailsList(busSalesOrderOne.getSid());
for (BusSalesVehicleOrderDetailsVo busSalesVehicleOrderDetailsVo : list) {
String linkSid = busSalesVehicleOrderDetailsVo.getLinkSid();
//查询该采购订单的已使用台数
int count = busSalesVehicleOrderService.selectByLinkSid1(linkSid);
count = count + busSalesVehicleOrderDetailsVo.getUsingNum();
//更新该采购订单的锁定台数
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(count));
}
}*/
//保存提交时补充的内容
BusSalesOrderSubmitDto busSalesOrderSubmit = dto.getInfo();
if (busSalesOrderSubmit != null) {
@ -3166,7 +3070,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
ResultBean<AppOrderDetailsVo> resultBean = getSaleOrderDetails(businessSid);
AppOrderDetailsVo vo = resultBean.getData();
if ("现车".equals(vo.getOrderType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getRemarks().equals(vo.getOrderType())) {
//更新已选择的车架号的状态为审批中
List<String> list = busSalesOrderVehicleService.selectVehicleSid(businessSid);
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
@ -3175,7 +3079,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.CONDUCT_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
if ("2".equals(busSalesOrderOne.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(busSalesOrderOne.getType())) {
List<BusSalesVehicleOrderDetailsVo> list = busSalesVehicleOrderService.detailsList(busSalesOrderOne.getSid());
for (BusSalesVehicleOrderDetailsVo busSalesVehicleOrderDetailsVo : list) {
String linkSid = busSalesVehicleOrderDetailsVo.getLinkSid();
@ -3186,45 +3090,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
ResultBean resultBeanOrder = busVehicleOrderFeign.updateLockNum(linkSid, String.valueOf(count));
}
}
/*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(() -> {
//极光推送
busSalesOrder.set(fetchBySid(businessSid));
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap((Map<String, Object>) variables.get("app"));
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName("销售订单申请");
messageFlowableQuery.setMsgContent(busSalesOrder.get().getStaffName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle("销售订单");
ResultBean<String> stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
});
Future future2 = pool.submit(() -> {
ResultBean<AppOrderDetailsVo> resultBean = getSaleOrderDetails(businessSid);
AppOrderDetailsVo vo = resultBean.getData();
if ("现车".equals(vo.getOrderType())) {
//更新已选择的车架号的状态为审批中
List<String> list = busSalesOrderVehicleService.selectVehicleSid(businessSid);
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
busMainDepositUpdateQuery.setVinSidList(list);
busMainDepositUpdateQuery.setLockedState(VehicleState.LockEnum.CONDUCT_LOCK.getCode());
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.CONDUCT_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
});
} catch (Exception e) {
e.printStackTrace();
}*/
return voResultBean;
}
if (r == 2) {
@ -3238,7 +3103,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
bv.setInstanceId(dto.getProcInsId());
ResultBean<AppOrderDetailsVo> resultBean = getSaleOrderDetails(businessSid);
AppOrderDetailsVo vo = resultBean.getData();
if ("现车".equals(vo.getOrderType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getRemarks().equals(vo.getOrderType())) {
//更新已选择的车架号的状态为审批中
List<String> list = busSalesOrderVehicleService.selectVehicleSid(businessSid);
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
@ -3247,7 +3112,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
busMainDepositUpdateQuery.setLockedStateValue(VehicleState.LockEnum.CONDUCT_LOCK.getRemarks());
baseVehicleFeign.updateMainDepositByVinNo(busMainDepositUpdateQuery);
}
if ("2".equals(busSalesOrderOne.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(busSalesOrderOne.getType())) {
List<BusSalesVehicleOrderDetailsVo> list = busSalesVehicleOrderService.detailsList(busSalesOrderOne.getSid());
for (BusSalesVehicleOrderDetailsVo busSalesVehicleOrderDetailsVo : list) {
String linkSid = busSalesVehicleOrderDetailsVo.getLinkSid();
@ -3292,16 +3157,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return r;
}
/*public ResultBean saveSubmitOrder(SubmitSalesOrderDto dto) {
ResultBean rb = ResultBean.fireFail();
String saleOrderSid = dto.getSaleOrderSid();
BusSalesOrderSubmit busSalesOrderSubmit = new BusSalesOrderSubmit();
OrderDto info = dto.getInfo();
BeanUtil.copyProperties(info, busSalesOrderSubmit);
busSalesOrderSubmit.setSalesOrderSid(saleOrderSid);
return rb.success();
}*/
/**
* 办理
*
@ -3339,7 +3194,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
} else {
ResultBean<AppOrderDetailsVo> details = getSaleOrderDetails(bv.getBusinessSid());
AppOrderDetailsVo vo = details.getData();
if ("现车".equals(vo.getOrderType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getRemarks().equals(vo.getOrderType())) {
//更新已选择的车架号的状态为销售订单锁定
List<String> list = busSalesOrderVehicleService.selectVehicleSid(bv.getBusinessSid());
BusMainDepositUpdateQuery busMainDepositUpdateQuery = new BusMainDepositUpdateQuery();
@ -3438,15 +3293,13 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
appMap.put("saleOrderSid", busSalesOrder.getSid());
variables.put("app", appMap);
//是否是全款
variables.put("isLoan", "1".equals(busSalesOrder.getPayTypeKey()));
variables.put(BusSalesOrderConstantUtils.IS_LOAN, BusSalesOrderConstantUtils.PayTypeEnum.FULL_PAYMENT.getCode().equals(busSalesOrder.getPayTypeKey()));
//查询是否超权限
BusSalesOrderPowerVo busSalesOrderPowerVo = isHavePower(busSalesOrder.getSid());
//销售部经理是否超权限
variables.put("isPrice", busSalesOrderPowerVo.getIsHavePower());
// variables.put("isPrice", true);
variables.put(BusSalesOrderConstantUtils.SALES_MANAGER_Price, busSalesOrderPowerVo.getIsHavePower());
//总经理是否超权限
variables.put("isPrice1", busSalesOrderPowerVo.getIsPower());
// variables.put("isPrice1", true);
variables.put(BusSalesOrderConstantUtils.GENERAL_MANAGER_PRICE, busSalesOrderPowerVo.getIsPower());
//是否排产
// variables.put("isLoan1", "3".equals(busSalesOrder.getType()));//废弃
return variables;
@ -3511,16 +3364,6 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
List<VinListDto> list = dto.getVinList();
//根据销售订单sid查询车架号
List<BusSalesOrderVehicleDetailsVo> busSalesOrderVehicleDetailsVos = busSalesOrderVehicleService.detailsList(dto.getSaleOrderSid());
/* if (busSalesOrderVehicleDetailsVos.size() > 0) {
busSalesOrderVehicleService.deleteByOrderSid(dto.getSaleOrderSid());
}*/
//新增
/* for (VinListDto v : list) {
BusSalesOrderVehicle busSalesOrderVehicle = new BusSalesOrderVehicle();
BeanUtil.copyProperties(v, busSalesOrderVehicle);
busSalesOrderVehicle.setSalesOrderSid(dto.getSaleOrderSid());
busSalesOrderVehicleService.insert(busSalesOrderVehicle);
}*/
busSalesOrderVehicleDetailsVos.removeAll(Collections.singleton(null));
if (busSalesOrderVehicleDetailsVos.size() > 0) {
//查询已选择的车辆
@ -3661,11 +3504,11 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
} else {
List<BusSalesOrderVehicleDto> busSalesOrderVehicleList = dto.getBusSalesOrderVehicleList();
List<BusSalesVehicleOrderDto> busSalesVehicleOrderList = dto.getBusSalesVehicleOrderList();
if ("1".equals(dto.getType())) {
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(dto.getType())) {
if (busSalesOrderVehicleList.size() == 0) {
return rb.setMsg("选择的类型为现车的车辆信息不允许为空");
}
} else if ("2".equals(dto.getType())) {
} else if (BusSalesOrderConstantUtils.TypeEnum.PURCHASE_ORDER.getCode().equals(dto.getType())) {
if (busSalesVehicleOrderList.size() == 0) {
return rb.setMsg("选择的类型为需采购的采购订单信息不允许为空");
}
@ -3674,7 +3517,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
//上装信息
BusSalesOrderMakeupDto busSalesOrderMakeup = dto.getBusSalesOrderMakeup();
if (StringUtils.isNotBlank(dto.getIsTop())) {
if ("1".equals(dto.getIsTop())) {
if (BusSalesOrderConstantUtils.TopType.YES.getCode().equals(dto.getIsTop())) {
if (busSalesOrderMakeup != null) {
if (StringUtils.isBlank(busSalesOrderMakeup.getTopName())) {
return rb.setMsg("上装名称不允许为空");
@ -3708,7 +3551,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
//保险说明
BusSalesOrderInsuranceDto busSalesOrderInsurance = dto.getBusSalesOrderInsurance();
if ("0".equals(dto.getIsInsurance())) {
if (BusSalesOrderConstantUtils.InsuranceType.NO.getCode().equals(dto.getIsInsurance())) {
if (busSalesOrderInsurance != null) {
if (StringUtils.isBlank(busSalesOrderInsurance.getRemarks())) {
return rb.setMsg("保险信息备注不允许为空");
@ -3724,7 +3567,7 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if (StringUtils.isBlank(busSalesOrderDeposit.getDepositTypeKey())) {
return rb.setMsg("请选择订金交纳方式");
} else {
if ("02".equals(busSalesOrderDeposit.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(busSalesOrderDeposit.getDepositTypeKey())) {
if (busDepositFictitiousList.size() > 0) {
return rb.setMsg("订金结转类型下虚拟订单列表不允许为空");
}
@ -3863,19 +3706,28 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return rb.success().setData(busSalesOrder);
}
/**
* 销售支持部经理审批办理同意,若选择的为需采购则需在销售支持部经理环节选择采购系统
*
* @param orderFlowableQuery 参数
* @return
*/
public ResultBean completeBy(OrderFlowableQuery orderFlowableQuery) {
ResultBean rb = ResultBean.fireFail();
BusSalesOrder busSalesOrder = fetchBySid(orderFlowableQuery.getBusinessSid());
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(orderFlowableQuery, bv);
bv.setModelId(ProcDefEnum.SALESORDER.getProDefId());
ResultBean resultBean = complete(bv);
if (resultBean.getSuccess()) {
if(BusSalesOrderConstantUtils.TypeEnum.PRODUCTION_SCHEDULING.getCode().equals(busSalesOrder.getType())){
//更新销售订单的采购系统
//根据销售订单sid更新采购系统sid和采购系统名称
String purchaseSystemName = orderFlowableQuery.getPurchaseSystemName();
String purchaseSystemSid = orderFlowableQuery.getPurchaseSystemSid();
String salesOrderSid = orderFlowableQuery.getBusinessSid();
updatePurchaseSystem(purchaseSystemName, purchaseSystemSid, salesOrderSid);
}
} else {
return rb.setMsg(resultBean.getMsg());
}
@ -3897,6 +3749,12 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
}
}
/**
* 出库初始化根据车辆获取销售订单的数据
*
* @param vinSid 车辆sid
* @return
*/
public ResultBean<BusSaleOrderVehicleOutVo> selectOrderOne(String vinSid) {
ResultBean<BusSaleOrderVehicleOutVo> rb = ResultBean.fireFail();
//根据车辆sid分公司sid查询已办结的销售订单

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

@ -38,6 +38,7 @@ import com.yxt.anrui.buscenter.api.bussalesorderdeposit.BusSalesOrderDepositDeta
import com.yxt.anrui.buscenter.api.bussalesorderdeposit.BusSalesOrderDepositDto;
import com.yxt.anrui.buscenter.api.bussalesorderdeposit.app.*;
import com.yxt.anrui.buscenter.api.bussalesorderprice.BusSalesOrderPrice;
import com.yxt.anrui.buscenter.api.common.BusSalesOrderConstantUtils;
import com.yxt.anrui.buscenter.biz.busdeposit.BusDepositService;
import com.yxt.anrui.buscenter.biz.busdepositfictitious.BusDepositFictitiousService;
import com.yxt.anrui.buscenter.biz.bussalesorder.BusSalesOrderService;
@ -203,7 +204,7 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
//先计算需补交订金是多少
//总的结转金额
BigDecimal makeUpDecimal = new BigDecimal("0");
if ("02".equals(dto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(dto.getDepositTypeKey())) {
List<AppBusSalesOrderDepositListDto> listVos = dto.getVirtualOrderList();
listVos.removeAll(Collections.singleton(null));
if (!listVos.isEmpty()) {
@ -262,7 +263,7 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
BeanUtil.copyProperties(dto, busSalesOrderDeposit, "sid");
//计算需补交订金
if (StringUtils.isNotBlank(dto.getDepositAll())) {
if ("02".equals(dto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(dto.getDepositTypeKey())) {
BigDecimal bigDecimalAll = new BigDecimal(dto.getDepositAll());
busSalesOrderDeposit.setMakeUpDeposit(bigDecimalAll.subtract(makeUpDecimal));
}
@ -274,13 +275,13 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
BeanUtil.copyProperties(dto, busSalesOrderDeposit, "sid");
//计算需补交订金
if (StringUtils.isNotBlank(dto.getDepositAll())) {
if ("02".equals(dto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(dto.getDepositTypeKey())) {
BigDecimal bigDecimalAll = new BigDecimal(dto.getDepositAll());
busSalesOrderDeposit.setMakeUpDeposit(bigDecimalAll.subtract(makeUpDecimal));
}
}
baseMapper.updateById(busSalesOrderDeposit);
if ("01".equals(dto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.CASH_DEPOSIT.getCode().equals(dto.getDepositTypeKey())) {
//将需补交订金设置为null
baseMapper.updateMakeUpDeposit(depositSid);
@ -305,7 +306,7 @@ public class BusSalesOrderDepositService extends MybatisBaseService<BusSalesOrde
busDepositFictitiousService.deleteByDepositSid(depositSid);
}
//若缴纳方式为订金结转
if ("02".equals(dto.getDepositTypeKey())) {
if (BusSalesOrderConstantUtils.DepositType.DEPOSIT_CARRY_FORWARD.getCode().equals(dto.getDepositTypeKey())) {
List<AppBusSalesOrderDepositListDto> listVos = dto.getVirtualOrderList();
listVos.removeAll(Collections.singleton(null));
BigDecimal bigDecimalAll = new BigDecimal("0");

Loading…
Cancel
Save