完善配载
This commit is contained in:
+10
-3
@@ -104,22 +104,29 @@ public class LoadingManageController extends BladeController {
|
|||||||
return R.status(loadingManageService.reassign(loadingManage));
|
return R.status(loadingManageService.reassign(loadingManage));
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/cancel")
|
@PostMapping("/change-route")
|
||||||
@ApiOperationSupport(order = 9)
|
@ApiOperationSupport(order = 9)
|
||||||
|
@Operation(summary = "变更运输路线", description = "传入配载单路线与变更记录")
|
||||||
|
public R changeRoute(@RequestBody LoadingManage loadingManage) {
|
||||||
|
return R.status(loadingManageService.changeRoute(loadingManage));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/cancel")
|
||||||
|
@ApiOperationSupport(order = 10)
|
||||||
@Operation(summary = "取消", description = "传入id")
|
@Operation(summary = "取消", description = "传入id")
|
||||||
public R cancel(@Parameter(description = "主键", required = true) @RequestParam Long id) {
|
public R cancel(@Parameter(description = "主键", required = true) @RequestParam Long id) {
|
||||||
return R.status(loadingManageService.cancel(id));
|
return R.status(loadingManageService.cancel(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/complete")
|
@PostMapping("/complete")
|
||||||
@ApiOperationSupport(order = 10)
|
@ApiOperationSupport(order = 11)
|
||||||
@Operation(summary = "完成", description = "传入id")
|
@Operation(summary = "完成", description = "传入id")
|
||||||
public R complete(@Parameter(description = "主键", required = true) @RequestParam Long id) {
|
public R complete(@Parameter(description = "主键", required = true) @RequestParam Long id) {
|
||||||
return R.status(loadingManageService.complete(id));
|
return R.status(loadingManageService.complete(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping("/batch-complete")
|
@PostMapping("/batch-complete")
|
||||||
@ApiOperationSupport(order = 11)
|
@ApiOperationSupport(order = 12)
|
||||||
@Operation(summary = "批量完成", description = "传入ids")
|
@Operation(summary = "批量完成", description = "传入ids")
|
||||||
public R<BusinessRemoveResultVO> batchComplete(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
|
public R<BusinessRemoveResultVO> batchComplete(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
|
||||||
return R.data(loadingManageService.batchComplete(ids));
|
return R.data(loadingManageService.batchComplete(ids));
|
||||||
|
|||||||
+2
@@ -36,6 +36,8 @@ public interface ILoadingManageService extends BaseService<LoadingManage> {
|
|||||||
|
|
||||||
boolean reassign(LoadingManage loadingManage);
|
boolean reassign(LoadingManage loadingManage);
|
||||||
|
|
||||||
|
boolean changeRoute(LoadingManage loadingManage);
|
||||||
|
|
||||||
boolean cancel(Long id);
|
boolean cancel(Long id);
|
||||||
|
|
||||||
boolean complete(Long id);
|
boolean complete(Long id);
|
||||||
|
|||||||
+25
-1
@@ -77,8 +77,10 @@ public class LoadingManageServiceImpl extends BaseServiceImpl<LoadingManageMappe
|
|||||||
public boolean saveDraft(LoadingManage loadingManage) {
|
public boolean saveDraft(LoadingManage loadingManage) {
|
||||||
prepare(loadingManage);
|
prepare(loadingManage);
|
||||||
validate(loadingManage, true);
|
validate(loadingManage, true);
|
||||||
|
List<Long> oldWaybillIds = new ArrayList<>();
|
||||||
if (Func.isNotEmpty(loadingManage.getId())) {
|
if (Func.isNotEmpty(loadingManage.getId())) {
|
||||||
LoadingManage oldRecord = loadEditable(loadingManage.getId(), true);
|
LoadingManage oldRecord = loadEditable(loadingManage.getId(), true);
|
||||||
|
oldWaybillIds = waybillIds(oldRecord.getWaybillIdsJson());
|
||||||
loadingManage.setLoadingNo(oldRecord.getLoadingNo());
|
loadingManage.setLoadingNo(oldRecord.getLoadingNo());
|
||||||
loadingManage.setDeptId(oldRecord.getDeptId());
|
loadingManage.setDeptId(oldRecord.getDeptId());
|
||||||
loadingManage.setDeptName(oldRecord.getDeptName());
|
loadingManage.setDeptName(oldRecord.getDeptName());
|
||||||
@@ -88,7 +90,10 @@ public class LoadingManageServiceImpl extends BaseServiceImpl<LoadingManageMappe
|
|||||||
if (Func.isEmpty(loadingManage.getLoadingNo())) {
|
if (Func.isEmpty(loadingManage.getLoadingNo())) {
|
||||||
loadingManage.setLoadingNo(nextCode());
|
loadingManage.setLoadingNo(nextCode());
|
||||||
}
|
}
|
||||||
return saveOrUpdate(loadingManage);
|
validateWaybillsAvailable(loadingManage, waybillIds(loadingManage.getWaybillIdsJson()));
|
||||||
|
boolean result = saveOrUpdate(loadingManage);
|
||||||
|
syncAssociatedWaybills(loadingManage, STATUS_DRAFT, oldWaybillIds);
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -124,6 +129,7 @@ public class LoadingManageServiceImpl extends BaseServiceImpl<LoadingManageMappe
|
|||||||
}
|
}
|
||||||
BusinessRemoveResultVO result = new BusinessRemoveResultVO();
|
BusinessRemoveResultVO result = new BusinessRemoveResultVO();
|
||||||
List<Long> deleteIdList = new ArrayList<>();
|
List<Long> deleteIdList = new ArrayList<>();
|
||||||
|
List<Long> releaseWaybillIds = new ArrayList<>();
|
||||||
for (LoadingManage loadingManage : listByIds(idList)) {
|
for (LoadingManage loadingManage : listByIds(idList)) {
|
||||||
TransportBusinessSupport.assertCurrentDept(loadingManage.getDeptId(), "配载管理");
|
TransportBusinessSupport.assertCurrentDept(loadingManage.getDeptId(), "配载管理");
|
||||||
if (!Objects.equals(loadingManage.getBusinessStatus(), STATUS_DRAFT)) {
|
if (!Objects.equals(loadingManage.getBusinessStatus(), STATUS_DRAFT)) {
|
||||||
@@ -132,9 +138,11 @@ public class LoadingManageServiceImpl extends BaseServiceImpl<LoadingManageMappe
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
deleteIdList.add(loadingManage.getId());
|
deleteIdList.add(loadingManage.getId());
|
||||||
|
releaseWaybillIds.addAll(waybillIds(loadingManage.getWaybillIdsJson()));
|
||||||
}
|
}
|
||||||
if (Func.isNotEmpty(deleteIdList)) {
|
if (Func.isNotEmpty(deleteIdList)) {
|
||||||
deleteLogic(deleteIdList);
|
deleteLogic(deleteIdList);
|
||||||
|
releaseAssociatedWaybills(releaseWaybillIds, STATUS_PENDING);
|
||||||
}
|
}
|
||||||
result.setSuccessCount(deleteIdList.size());
|
result.setSuccessCount(deleteIdList.size());
|
||||||
return result;
|
return result;
|
||||||
@@ -224,6 +232,22 @@ public class LoadingManageServiceImpl extends BaseServiceImpl<LoadingManageMappe
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public boolean changeRoute(LoadingManage loadingManage) {
|
||||||
|
LoadingManage oldRecord = loadEditable(loadingManage.getId(), true);
|
||||||
|
if (Objects.equals(oldRecord.getBusinessStatus(), STATUS_COMPLETED)
|
||||||
|
|| Objects.equals(oldRecord.getBusinessStatus(), STATUS_CANCELLED)) {
|
||||||
|
throw new ServiceException("当前配载单状态不允许变更运输路线");
|
||||||
|
}
|
||||||
|
oldRecord.setRouteJson(TransportBusinessSupport.trimToNull(loadingManage.getRouteJson()));
|
||||||
|
oldRecord.setDepartureAddress(TransportBusinessSupport.trimToNull(loadingManage.getDepartureAddress()));
|
||||||
|
oldRecord.setTransitAddress(TransportBusinessSupport.trimToNull(loadingManage.getTransitAddress()));
|
||||||
|
oldRecord.setArrivalAddress(TransportBusinessSupport.trimToNull(loadingManage.getArrivalAddress()));
|
||||||
|
oldRecord.setTaskInfoJson(TransportBusinessSupport.trimToNull(loadingManage.getTaskInfoJson()));
|
||||||
|
return updateById(oldRecord);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public boolean cancel(Long id) {
|
public boolean cancel(Long id) {
|
||||||
|
|||||||
Reference in New Issue
Block a user