Browse Source

1.干线-开单及入库配置,三方品类

pull/30/head
zhenghaoyu 11 months ago
parent
commit
4e98d67c26
  1. 1
      blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataFactoryCategoryEntity.java
  2. 1
      blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataOpenIncomingSettingEntity.java
  3. 6
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/LoadCarsDTO.java
  4. 13
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineLoadSignOrderEntity.java
  5. 44
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineLoadSignPhotoEntity.java
  6. 5
      blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineLoadSignOrderVO.java
  7. 16
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataOpenIncomingController.java
  8. 1
      blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/dto/BasicdataOpenIncomingDTO.java
  9. 33
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/api/CarsLoadApiController.java
  10. 4
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsOrderMapper.xml
  11. 9
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignOrderMapper.xml
  12. 11
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignPhotoMapper.java
  13. 3
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java
  14. 10
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineLoadSignPhotoService.java
  15. 92
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java
  16. 26
      blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineLoadSignPhotoServiceImpl.java

1
blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataFactoryCategoryEntity.java

@ -45,6 +45,7 @@ public class BasicdataFactoryCategoryEntity extends TenantEntity {
private String seconds;
private String thirds;
private String brand;
private Long brandId;
}

1
blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataOpenIncomingSettingEntity.java

@ -42,5 +42,6 @@ public class BasicdataOpenIncomingSettingEntity extends TenantEntity {
private Long warehouseId;
private String brand;
private Long brandId;
}

6
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/dto/LoadCarsDTO.java

@ -1,5 +1,6 @@
package com.logpm.trunkline.dto;
import com.logpm.trunkline.entity.TrunklineLoadSignPhotoEntity;
import com.logpm.trunkline.vo.LoadScanFinalNodeIdVO;
import com.logpm.trunkline.vo.ZeroOrderVO;
import com.logpm.trunkline.vo.ZeroSuppleVO;
@ -113,4 +114,9 @@ public class LoadCarsDTO implements Serializable {
private String url;
private Integer incomingType;
private Long userId;
private List<TrunklineLoadSignPhotoEntity> signPhotoList;
}

13
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineLoadSignOrderEntity.java

@ -87,4 +87,17 @@ public class TrunklineLoadSignOrderEntity extends TenantEntity {
@ApiModelProperty(name = "签收时间",notes = "")
private Date signTime;
/** 签收时间 */
@ApiModelProperty(name = "计划目的仓节点id",notes = "")
private Long finalNodeId;
/** 司机用户id */
@ApiModelProperty(name = "司机用户id",notes = "")
private Long driverUserId;
/** 副驾用户id */
@ApiModelProperty(name = "副驾用户id",notes = "")
private Long assistantUserId;
}

44
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/entity/TrunklineLoadSignPhotoEntity.java

@ -0,0 +1,44 @@
package com.logpm.trunkline.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.core.tenant.mp.TenantEntity;
@Data
@TableName("logpm_trunkline_load_sign_photo")
@ApiModel(value = "TrunklineLoadSignPhoto对象", description = "配载计划直发签收照片")
@EqualsAndHashCode(callSuper = true)
public class TrunklineLoadSignPhotoEntity extends TenantEntity {
/** 预留1 */
@ApiModelProperty(name = "预留1",notes = "")
private String reserve1 ;
/** 预留2 */
@ApiModelProperty(name = "预留2",notes = "")
private String reserve2 ;
/** 预留3 */
@ApiModelProperty(name = "预留3",notes = "")
private String reserve3 ;
/** 预留4 */
@ApiModelProperty(name = "预留4",notes = "")
private String reserve4 ;
/** 预留5 */
@ApiModelProperty(name = "预留5",notes = "")
private String reserve5 ;
/** 签收单id */
@ApiModelProperty(name = "签收单id",notes = "")
private Long signOrderId ;
/** 照片类型 */
@ApiModelProperty(name = "照片类型",notes = "")
private Integer photoType;
/** 照片地址 */
@ApiModelProperty(name = "照片地址",notes = "")
private String photoUrl;
}

5
blade-service-api/logpm-trunkline-api/src/main/java/com/logpm/trunkline/vo/TrunklineLoadSignOrderVO.java

@ -1,12 +1,17 @@
package com.logpm.trunkline.vo;
import com.logpm.trunkline.entity.TrunklineLoadSignOrderEntity;
import com.logpm.trunkline.entity.TrunklineLoadSignPhotoEntity;
import lombok.Data;
import java.util.List;
@Data
public class TrunklineLoadSignOrderVO extends TrunklineLoadSignOrderEntity {
private String driverName;
private String carsNo;
private List<TrunklineLoadSignPhotoEntity> signPhotoList;
}

16
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataOpenIncomingController.java

@ -83,19 +83,15 @@ public class BasicdataOpenIncomingController {
public R remove(@RequestBody BasicdataOpenIncomingDTO basicdataOpenIncomingDTO) {
String method = "############addEntity: ";
log.info(method+"请求参数{}",basicdataOpenIncomingDTO);
Long openIncomingId = basicdataOpenIncomingDTO.getOpenIncomingId();
try{
String brand = basicdataOpenIncomingDTO.getBrand();
Long warehouseId = basicdataOpenIncomingDTO.getWarehouseId();
if(StringUtil.isBlank(brand)){
log.warn(method+"品牌不能为空");
return R.fail(405,"品牌不能为空");
}
if(Objects.isNull(warehouseId)){
log.warn(method+"仓库不能为空");
return R.fail(405,"仓库不能为空");
if(Objects.isNull(openIncomingId)){
log.warn(method+"配置id为空 openIncomingId={}",openIncomingId);
return R.fail(405,"配置id为空");
}
return basicdataOpenIncomingSettingService.addEntity(basicdataOpenIncomingDTO);
return R.status(basicdataOpenIncomingSettingService.removeById(openIncomingId));
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);

1
blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/dto/BasicdataOpenIncomingDTO.java

@ -9,4 +9,5 @@ public class BasicdataOpenIncomingDTO extends BasicdataOpenIncomingSettingEntity
private Integer pageSize;
private Integer pageNum;
private Long openIncomingId;
}

33
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/api/CarsLoadApiController.java

@ -836,6 +836,39 @@ public class CarsLoadApiController {
}
@ResponseBody
@PostMapping("/uploadSignPhoto")
@ApiOperationSupport(order = 1)
@ApiOperation(value = "上传签收图片", notes = "传入loadCarsDTO")
public R uploadSignPhoto(@RequestBody LoadCarsDTO loadCarsDTO) {
String method = "############uploadSignPhoto: ";
log.info(method + "请求参数{}", loadCarsDTO);
// Long signOrderId = loadCarsDTO.getSignOrderId();
try{
//当前登录人选择的仓库
BasicdataWarehouseEntity myCurrentWarehouse = warehouseClient.getMyCurrentWarehouse();
if(Objects.isNull(myCurrentWarehouse)){
log.warn(method+"仓库信息为空 myCurrentWarehouse={}",myCurrentWarehouse);
return R.fail(405,"仓库信息为空");
}
loadCarsDTO.setWarehouseId(myCurrentWarehouse.getId());
// if(Objects.isNull(signOrderId)){
// log.warn(method+"签收单Id为空 signOrderId={}",signOrderId);
// return R.fail(405,"签收单Id为空");
// }
return carsLoadService.uploadSignPhoto(loadCarsDTO);
}catch (CustomerException e){
log.error(e.message,e);
return R.fail(e.code,e.message);
}catch (Exception e){
log.error(method+"系统异常",e);
return R.fail(500,"系统异常");
}
}
@ResponseBody
@PostMapping("/signScanPackageCode")
@ApiOperationSupport(order = 1)

4
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsOrderMapper.xml

@ -199,6 +199,7 @@
ldsa.mall_name mallName,
lww.id belongToWarehouseId,
lww.name belongToWarehouseName,
ltco.final_node_id finalNodeId,
0 signNum,
'0' signStatus,
GROUP_CONCAT(distinct ldsa.consignee_person) mallPerson,
@ -219,7 +220,8 @@
ltco.node_id,
ldsa.mall_name,
lww.id,
lww.name
lww.name,
ltco.final_node_id
</select>
<select id="findSignOrderList" resultType="com.logpm.trunkline.vo.SignScanOrderVO">

9
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignOrderMapper.xml

@ -23,18 +23,21 @@
from logpm_trunkline_load_sign_order ltlso
left join logpm_trunkline_cars_load ltcl on ltcl.id = ltlso.load_id
<where>
and (ltlso.warehouse_id = #{param.warehouseId} or ltlso.final_node_id = #{param.warehouseId} or ltlso.driver_user_id = #{param.userId} or ltlso.assistant_user_id = #{param.userId})
<if test="param.loadId != null">
and ltlso.load_id = #{param.loadId}
</if>
<if test="param.signStatus != null and param.signStatus == '20'">
and ltlso.sign_status = '20'
and ltlso.sign_time &gt;= #{param.enterTimeStart}
and ltlso.sign_time &lt;= #{param.enterTimeEnd}
</if>
<if test="param.signStatus != null and param.signStatus == '10'">
and ltlso.sign_status != '20'
and ltlso.create_time &gt;= #{param.enterTimeStart}
and ltlso.create_time &lt;= #{param.enterTimeEnd}
</if>
<!-- <if test="param.driverId != null">-->
<!-- and ltcl.driver_id = #{param.driverId}-->
<!-- </if>-->
</where>
</select>

11
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineLoadSignPhotoMapper.java

@ -0,0 +1,11 @@
package com.logpm.trunkline.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.logpm.trunkline.entity.TrunklineLoadSignPhotoEntity;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface TrunklineLoadSignPhotoMapper extends BaseMapper<TrunklineLoadSignPhotoEntity> {
}

3
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineCarsLoadService.java

@ -194,4 +194,7 @@ public interface ITrunklineCarsLoadService extends BaseService<TrunklineCarsLoad
R syncIncomingPackage(Long carsLoadScanId);
R transitOrderPageList(LoadCarsDTO loadCarsDTO);
R uploadSignPhoto(LoadCarsDTO loadCarsDTO);
}

10
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/ITrunklineLoadSignPhotoService.java

@ -0,0 +1,10 @@
package com.logpm.trunkline.service;
import com.logpm.trunkline.entity.TrunklineLoadSignPhotoEntity;
import org.springblade.core.mp.base.BaseService;
import java.util.List;
public interface ITrunklineLoadSignPhotoService extends BaseService<TrunklineLoadSignPhotoEntity> {
List<TrunklineLoadSignPhotoEntity> findBySignPhotoList(Long signOrderId);
}

92
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java

@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.logpm.aftersales.entity.AftersalesAbnormalRecordEntity;
import com.logpm.aftersales.feign.IAftersalesAbnormalRecordClient;
import com.logpm.basicdata.entity.BasicdataDriverArteryEntity;
import com.logpm.basicdata.entity.BasicdataTrayEntity;
import com.logpm.basicdata.entity.BasicdataWarehouseEntity;
import com.logpm.basicdata.feign.IBasicdataCodeClient;
@ -99,6 +100,9 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
private final FactoryDataMessageSender factoryDataMessageSender;
private final IPackageTrackLogAsyncService packageTrackLogAsyncService;
private final IBasicdataDriverArteryClient driverArteryClient;
private final ITrunklineLoadSignPhotoService loadSignPhotoService;
@Override
public IPage<TrunklineCarsLoadVO> loadCarsPageList(LoadCarsDTO loadCarsDTO) {
IPage<Object> page = new Page<>();
@ -375,15 +379,32 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
}
String warehouseCode = basicdataWarehouseEntity.getWarehouseCode();
TrunklineCarsLoadEntity carsLoadEntity = baseMapper.selectById(loadId);
if(Objects.isNull(carsLoadEntity)){
log.warn("################createCustomerSignOrder: 配载计划不存在 loadId={}", loadId);
throw new CustomerException(405, "配载计划不存在");
}
Long driverId = carsLoadEntity.getDriverId();
Long driverUserId = null;
BasicdataDriverArteryEntity driverArtery = driverArteryClient.getDriverArtery(driverId);
if(!Objects.isNull(driverArtery) && !Objects.isNull(driverArtery.getUserId())){
driverUserId = driverArtery.getUserId();
}
Long assistantId = carsLoadEntity.getAssistantId();
Long assistantUserId = null;
BasicdataDriverArteryEntity assistantArtery = driverArteryClient.getDriverArtery(assistantId);
if(!Objects.isNull(assistantArtery) && !Objects.isNull(assistantArtery.getUserId())){
assistantUserId = assistantArtery.getUserId();
}
List<TrunklineLoadSignOrderEntity> list = trunklineCarsOrderService.findSignOrderListBy(loadId, warehouseId);
for (TrunklineLoadSignOrderEntity trunklineLoadSignOrderEntity : list) {
// TrunklineLoadSignOrderEntity trunklineLoadSignOrderEntity = new TrunklineLoadSignOrderEntity();
// BeanUtil.copy(entity,trunklineLoadSignOrderEntity);
trunklineLoadSignOrderEntity.setDriverUserId(driverUserId);
trunklineLoadSignOrderEntity.setAssistantUserId(assistantUserId);
trunklineLoadSignOrderEntity.setLoadSignCode(codeClient.getCodeByType(CodeNumConstant.TRUNKLINE_LOAD_SIGN, warehouseCode, ""));
trunklineLoadSignOrderService.save(trunklineLoadSignOrderEntity);
}
for (TrunklineLoadSignOrderEntity trunklineLoadSignOrderEntity : list) {
Long signOrderId = trunklineLoadSignOrderEntity.getId();
String mallName = trunklineLoadSignOrderEntity.getMallName();
@ -394,6 +415,17 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
trunklineCarsOrderService.updateBatchById(ls);
}
// for (TrunklineLoadSignOrderEntity trunklineLoadSignOrderEntity : list) {
// Long signOrderId = trunklineLoadSignOrderEntity.getId();
// String mallName = trunklineLoadSignOrderEntity.getMallName();
//
// List<TrunklineCarsOrderEntity> ls = trunklineCarsOrderService.findCustomerOrderList(loadId, warehouseId, mallName);
// for (TrunklineCarsOrderEntity l : ls) {
// l.setSignOrderId(signOrderId);
// }
// trunklineCarsOrderService.updateBatchById(ls);
// }
}
@Override
@ -3423,22 +3455,21 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
IPage<Object> page = new Page<>();
page.setCurrent(pageNum);
page.setSize(pageSize);
loadCarsDTO.setUserId(AuthUtil.getUserId());
// Long userId = AuthUtil.getUserId();
// if(Objects.isNull(userId)){
// log.warn("###############finaSignOrderList: 登录人id为空");
// return R.fail(405,"登录人id为空");
// }
//
// BasicdataDriverArteryEntity driverArteryEntity = basicdataDriverArteryClient.getDriverArtery(userId);
// if(Objects.isNull(driverArteryEntity)){
// log.warn("###############finaSignOrderList: 未找到司机信息 userId={}",userId);
// return R.fail(405,"未找到司机信息");
// }
// loadCarsDTO.setDriverId(driverArteryEntity.getId());
loadCarsDTO.setEnterTimeStart(CommonUtil.getStartByDateStr(loadCarsDTO.getEnterTimeStartStr()));
loadCarsDTO.setEnterTimeEnd(CommonUtil.getStartByDateStr(loadCarsDTO.getEnterTimeEndStr()));
IPage<TrunklineLoadSignOrderVO> pageList = trunklineLoadSignOrderService.finaSignOrderList(page, loadCarsDTO);
List<TrunklineLoadSignOrderVO> records = pageList.getRecords();
for (TrunklineLoadSignOrderVO record : records) {
Long id = record.getId();
List<TrunklineLoadSignPhotoEntity> bySignPhotoList = loadSignPhotoService.findBySignPhotoList(id);
record.setSignPhotoList(bySignPhotoList);
}
pageList.setRecords(records);
return R.data(pageList);
}
@ -3471,10 +3502,13 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
signScanOrderVO.setSignPackageList(signPackageList);
}
List<TrunklineLoadSignPhotoEntity> signPhotoList = loadSignPhotoService.findBySignPhotoList(signOrderId);
Map<String, Object> map = new HashMap<>();
map.put("signOrder", signOrderVO);
map.put("signScanOrderList", signScanOrderList);
map.put("signScanZeroOrderList", signScanZeroOrderList);
map.put("signPhotoList", signPhotoList);
return R.data(map);
}
@ -4191,6 +4225,18 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
return R.data(ls);
}
@Override
public R uploadSignPhoto(LoadCarsDTO loadCarsDTO) {
Long signOrderId = loadCarsDTO.getSignOrderId();
List<TrunklineLoadSignPhotoEntity> signPhotoList = loadCarsDTO.getSignPhotoList();
List<TrunklineLoadSignPhotoEntity> oldSignPhotoList = loadSignPhotoService.findBySignPhotoList(signOrderId);
loadSignPhotoService.removeBatchByIds(oldSignPhotoList);
loadSignPhotoService.saveBatch(signPhotoList);
return R.success("添加成功");
}
@Override
public R loadingTrayInfo(LoadCarsDTO loadCarsDTO) {
log.info("##############loadingTrayInfo: 查询托盘的货物信息");
@ -4953,9 +4999,15 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
Long waybillId = carsLoadScanEntity.getWaybillId();
String scanCode = carsLoadScanEntity.getScanCode();
Long loadScanId = carsLoadScanEntity.getId();
if (enterNun != num) {
log.warn("#############unloadZero: 零担信息卸车数量不正确 enterNun={} num={}", enterNun, num);
return R.fail(405, "零担信息卸车数量不正确");
if (enterNun > num) {
log.warn("#############unloadZero: 零担信息卸车数量大于装车件数 enterNun={} num={}", enterNun, num);
return R.fail(405, "零担信息卸车数量大于装车件数");
}else{
Integer difficute = num - enterNun;
DistributionStockArticleEntity stockArticleEntity = distributionStockArticleClient.findStockArticleByOrderCodeAndWarehouseId(orderCode, fromWarehouseId);
Long orderId = stockArticleEntity.getId();
distributionStockArticleClient.addHandQuantity(orderId,difficute);
}
carsLoadScanEntity.setUnloadNum(enterNun);
@ -5017,7 +5069,7 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl<TrunklineCarsL
}
} else {
Integer handQuantity = newStockArticleEntity.getHandQuantity() + enterNun;
Integer incomingNum = newStockArticleEntity.getIncomingNum();
Integer incomingNum = newStockArticleEntity.getIncomingNum() + enterNun;
Integer totalNumber = newStockArticleEntity.getTotalNumber();
if (incomingNum == totalNumber) {

26
blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineLoadSignPhotoServiceImpl.java

@ -0,0 +1,26 @@
package com.logpm.trunkline.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.logpm.trunkline.entity.TrunklineLoadSignPhotoEntity;
import com.logpm.trunkline.mapper.TrunklineLoadSignPhotoMapper;
import com.logpm.trunkline.service.ITrunklineLoadSignPhotoService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.stereotype.Service;
import java.util.List;
@Slf4j
@Service
@AllArgsConstructor
public class TrunklineLoadSignPhotoServiceImpl extends BaseServiceImpl<TrunklineLoadSignPhotoMapper, TrunklineLoadSignPhotoEntity> implements ITrunklineLoadSignPhotoService {
@Override
public List<TrunklineLoadSignPhotoEntity> findBySignPhotoList(Long signOrderId) {
QueryWrapper<TrunklineLoadSignPhotoEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("sign_order_id",signOrderId)
.eq("is_deleted",0);
return baseMapper.selectList(queryWrapper);
}
}
Loading…
Cancel
Save