Commit dbd8ecde authored by zhengyi's avatar zhengyi

Merge branch 'dev' into test

parents 57aa743c 8730c577
-- 增加报价单目的国字段
alter table ecw_offer add COLUMN dest_country_id bigint DEFAULT 0 comment '目的国id';
update ecw_offer o join ecw_warehouse_line l on o.line_id = l.id join ecw_warehouse w on w.id = l.dest_warehouse_id set o.dest_country_id = w.guojia;
\ No newline at end of file
......@@ -95,6 +95,7 @@ public enum WorkFlowEmus {
SHIPMENT_LINE_WEIGHT_ALLOW_OVER("shipment_line_weight_allow_over", "出货审批-允许超出线路重量上限审核"),
ORDER_OVERSEAS_WAREHOUSE_CHANGE("order_overseas_warehouse_change", "订单审批-海外仓修改申请"),
ORDER_CONSIGNEE_LIMIT_CHANGE("order_consignee_limit_change", "订单审批-收货人限制修改申请"),
ORDER_WAREHOUSING("order_warehousing", "订单审批-入仓申请"),
;
private String key;
private String value;
......
package cn.iocoder.yudao.module.bpm.service.order.listener;
import cn.iocoder.yudao.module.bpm.enums.WorkFlowEmus;
import cn.iocoder.yudao.module.bpm.framework.bpm.core.event.BpmProcessInstanceResultEvent;
import cn.iocoder.yudao.module.bpm.framework.bpm.core.event.BpmProcessInstanceResultEventListener;
import cn.iocoder.yudao.module.order.service.order.OrderService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component
@Slf4j
public class BmpOrderWarehouseingResultListener extends BpmProcessInstanceResultEventListener {
@Resource
OrderService orderService;
@Override
protected String getProcessDefinitionKey() {
return WorkFlowEmus.ORDER_WAREHOUSING.getKey();
}
@Override
protected void onEvent(BpmProcessInstanceResultEvent event) {
log.info("----------------------入仓申请----------------------,{},{}" + event.getBusinessKey(), event.getResult());
//orderService.approvalOrder(event.getBusinessKey(), event.getResult());
}
}
......@@ -8,6 +8,8 @@ import java.util.*;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import javax.validation.constraints.NotNull;
/**
* 报价单管理 DO
......@@ -70,6 +72,9 @@ public class OfferDO extends BaseDO {
* 始发地信息
*/
private String departure;
@ApiModelProperty(value = "目的地国ID")
private Long destCountryId;
/**
* 目的地
*/
......
......@@ -65,5 +65,7 @@ public interface ErrorCodeConstants {
ErrorCode ORDER_ASSOCIATION_OFFER_NO_CAN_UPDATE = new ErrorCode(1004010052, "order.association.offer.no.can.update");
ErrorCode ORDER_BOUND_OFFER = new ErrorCode(1004010053, "order.bound.offer");
ErrorCode OFFER_LINE_NOT_EXIST = new ErrorCode(1004010054, "line.not.exist");
ErrorCode OFFER_DEPARTURE_OBJECTIVE_AND_LINE_NOT_AGREEMENT = new ErrorCode(1004010055, "offer.departure.objective.and.line.not.agreement");
}
......@@ -209,6 +209,18 @@ public class OfferServiceImpl extends AbstractService<OfferMapper, OfferDO> impl
if (Objects.nonNull(createReqVO.getEstCostVO())) {
offer.setEstCost(JSONObject.toJSONString(createReqVO.getEstCostVO()));
}
LogisticsInfoDto logisticsInfoDto =
warehouseLineMapper.getStartInfoAndDestInfoByLineId(
createReqVO.getLineId());
if (Objects.isNull(logisticsInfoDto)) {
throw exception(OFFER_LINE_NOT_EXIST);
}
if (!Objects.equals(logisticsInfoDto.getStartCityId(),
createReqVO.getDepartureId()) || !Objects.equals(
logisticsInfoDto.getDestCityId(), createReqVO.getObjectiveId()) || !Objects.equals(
logisticsInfoDto.getDestCountryId(), createReqVO.getDestCountryId())) {
throw exception(OFFER_DEPARTURE_OBJECTIVE_AND_LINE_NOT_AGREEMENT);
}
// offer.setStatus(2);// 确认中
// 查询始发地与目的地信息
RegionDO departure = regionService.getRegion(offer.getDepartureId());
......@@ -534,6 +546,18 @@ public class OfferServiceImpl extends AbstractService<OfferMapper, OfferDO> impl
if (Objects.nonNull(updateReqVO.getEstCostVO())) {
updateObj.setEstCost(JSONObject.toJSONString(updateReqVO.getEstCostVO()));
}
LogisticsInfoDto logisticsInfoDto =
warehouseLineMapper.getStartInfoAndDestInfoByLineId(
updateReqVO.getLineId());
if (Objects.isNull(logisticsInfoDto)) {
throw exception(OFFER_LINE_NOT_EXIST);
}
if (!Objects.equals(logisticsInfoDto.getStartCityId(),
updateReqVO.getDepartureId()) || !Objects.equals(
logisticsInfoDto.getDestCityId(), updateReqVO.getObjectiveId()) || !Objects.equals(
logisticsInfoDto.getDestCountryId(), updateReqVO.getDestCountryId())) {
throw exception(OFFER_DEPARTURE_OBJECTIVE_AND_LINE_NOT_AGREEMENT);
}
// 查询始发地与目的地信息
RegionDO departure = regionService.getRegion(updateReqVO.getDepartureId());
if (Objects.isNull(departure) || (!StrUtil.equals(departure.getType(), "2") && !StrUtil.equals(departure.getType(), "3"))) {
......@@ -642,7 +666,12 @@ public class OfferServiceImpl extends AbstractService<OfferMapper, OfferDO> impl
if (CollectionUtil.isEmpty(offerProdDOList)) {
throw exception(OFFER_PROD_NOT_NULL);
}
respVO.setOfferProdRespVOList(OfferProdConvert.INSTANCE.convertList(offerProdDOList));
LogisticsInfoDto logisticsInfoDto =
warehouseLineMapper.getStartInfoAndDestInfoByLineId(
respVO.getLineId());
respVO.setLogisticsInfoDto(logisticsInfoDto);
return respVO;
}
......@@ -947,6 +976,7 @@ public class OfferServiceImpl extends AbstractService<OfferMapper, OfferDO> impl
createReqVO.setType(offerDO.getServiceType());
createReqVO.setChannelId(channelId);
createReqVO.setLineId(lineId);
createReqVO.setType(offerDO.getServiceType());
createReqVO.setTransportId(offerDO.getTransportId());
createReqVO.setShippingCompany(offerTransportDO.getShippingCompany());
createReqVO.setAirlineCompany(offerTransportDO.getAirlineCompany());
......
......@@ -60,6 +60,10 @@ public class OfferBaseVO {
@NotNull(message = "objective.not.exists")
private Long objectiveId;
@ApiModelProperty(value = "目的地国ID")
@NotNull(message = "目的国不能为空")
private Long destCountryId;
// @ApiModelProperty(value = "目的地信息")
// private String objective;
......
......@@ -174,6 +174,9 @@ public class OfferPageReqVO extends PageParam {
@ApiModelProperty(value = "目的地id集合")
private List<Long> objectiveIds;
@ApiModelProperty(value = "目的仓ID集合")
private List<Long> startWarehouseIds;
@ApiModelProperty(value = "目的仓ID集合")
private List<Long> destWarehouseIds;
......
package cn.iocoder.yudao.module.sale.vo.offer;
import cn.iocoder.yudao.module.depository.dto.LogisticsInfoDto;
import cn.iocoder.yudao.module.sale.vo.offer.prod.OfferProdRespVO;
import cn.iocoder.yudao.module.sale.vo.offer.transport.OfferTransportCreateReqVO;
import cn.iocoder.yudao.module.sale.vo.offer.transport.OfferTransportRespVO;
......@@ -32,7 +33,10 @@ public class OfferRespVO extends OfferBaseVO {
private OfferTransportRespVO transportVO;
@ApiModelProperty(value = "报价单商品列表")
List<OfferProdRespVO> offerProdRespVOList;
private List<OfferProdRespVO> offerProdRespVOList;
@ApiModelProperty(value = "物流信息")
private LogisticsInfoDto logisticsInfoDto;
@ApiModelProperty(value = "始发地名称")
private String departureName;
......@@ -59,10 +63,14 @@ public class OfferRespVO extends OfferBaseVO {
// 线路相关
@ExcelProperty("始发仓库id")
@ApiModelProperty("始发仓库id")
private Long startWarehouseId;
@ExcelProperty("目的仓库id")
@ApiModelProperty("始发仓库名称")
private String startWarehouseName;
@ApiModelProperty("目的仓库id")
private Long destWarehouseId;
@ApiModelProperty("目的仓库名称")
private String destWarehouseName;
@ExcelProperty("运输方式")
private String transportType;
......
......@@ -170,7 +170,7 @@ spring:
logging:
level:
root: INFO
cn.iocoder.yudao: DEBUG
cn.iocoder.yudao: INFO
--- #################### 微信公众号相关配置 ####################
wx: # 参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-starters/wx-java-mp-spring-boot-starter/README.md 文档
......
This diff is collapsed.
......@@ -645,7 +645,9 @@ order.cargo.control.cancel.pick.reject=The release record of the control order i
order.cargo.control.cancel.pick.cancel=The release record of the control order has been cancelled
warehouse.in.item.quantity.required=warehouse in item quantity required
order.line.not.exist=Order line does not exist
line.not.exist=The line does not exist
order.departure.objective.and.line.not.agreement=The order origin destination is inconsistent with the route
offer.departure.objective.and.line.not.agreement=The offer origin destination is inconsistent with the route
transport.and.line.not.agreement=The shipping method of the order does not match the route information. Please reselect the route information
prod.brand.not.null=brand is not null or zero
preload.not.exist=Goods are not pre-loaded in the shipment order
......
......@@ -651,7 +651,9 @@ order.cargo.control.cancel.pick.reject=\u63A7\u8D27\u8BA2\u5355\u5DF2\u653E\u8D2
order.cargo.control.cancel.pick.cancel=\u63A7\u8D27\u8BA2\u5355\u5DF2\u653E\u8D27\u8BB0\u5F55\u8C03\u8D27\u5BA1\u6279\u53D6\u6D88
warehouse.in.item.quantity.required=\u5165\u4ED3\u9879\u6570\u91CF\u5FC5\u586B
order.line.not.exist=\u8BA2\u5355\u7EBF\u8DEF\u4E0D\u5B58\u5728
line.not.exist=\u7ebf\u8def\u4e0d\u5b58\u5728
order.departure.objective.and.line.not.agreement=\u8BA2\u5355\u59CB\u53D1\u5730\u76EE\u7684\u5730\u4E0E\u7EBF\u8DEF\u4E0D\u4E00\u81F4
offer.departure.objective.and.line.not.agreement=\u62a5\u4ef7\u5355\u59cb\u53d1\u5730\u76ee\u7684\u5730\u4e0e\u7ebf\u8def\u4e0d\u4e00\u81f4
transport.and.line.not.agreement=\u8BA2\u5355\u8FD0\u8F93\u65B9\u5F0F\u4E0E\u7EBF\u8DEF\u4FE1\u606F\u4E0D\u5339\u914D\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9\u7EBF\u8DEF\u4FE1\u606F
prod.brand.not.null=\u54C1\u724C\u4E0D\u80FD\u4E3A\u7A7A\u62160
preload.not.exist=\u51FA\u8D27\u5355\u672A\u9884\u88C5\u8D27\u7269
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment