Browse Source

经销商调拨,学校修改

lazhaoqian 3 years ago
parent
commit
3121786b15

+ 4 - 0
blade-service-api/blade-deliver-goods-api/src/main/java/org/springblade/deliver/goods/enums/DeliveryStatusEnum.java

@@ -22,6 +22,10 @@ public enum DeliveryStatusEnum {
 	 */
 	REVOCATION("已发货"),
 	/**
+	 * 确认调拨
+	 */
+	ALLOT("确认调拨"),
+	/**
 	 * 增加溢付款
 	 */
 	ADD("add"),

+ 5 - 1
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/controller/AllotController.java

@@ -133,7 +133,7 @@ public class AllotController extends BladeController {
 					}
 				}
 				if (item.getTradeType().equals(OrderTypeEnum.DEALER.getType())){
-					
+
 				}
 			});
 		}
@@ -165,6 +165,10 @@ public class AllotController extends BladeController {
 		if (delivery.getId() == null){
 			throw  new SecurityException("请选择要删除的数据");
 		}
+		Delivery service = deliveryService.getById(delivery.getId());
+		if (service.getDeliveryStatus().equals(DeliveryStatusEnum.ALLOT.getType())){
+			throw  new SecurityException("订单已确认调拨,删除失败");
+		}
 		delivery.setIsDeleted(1);
 		deliveryService.updateById(delivery);
 		deliveryFeesService.updateByPid(delivery.getId());

+ 12 - 1
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/controller/ExportDeliveryController.java

@@ -40,6 +40,9 @@ import org.springblade.deliver.goods.entity.Delivery;
 import org.springblade.deliver.goods.entity.DeliveryData;
 import org.springblade.deliver.goods.enums.DeliveryEnum;
 import org.springblade.deliver.goods.enums.DeliveryStatusEnum;
+import org.springblade.deliver.goods.service.IDeliveryFeesService;
+import org.springblade.deliver.goods.service.IDeliveryFilesService;
+import org.springblade.deliver.goods.service.IDeliveryItemsService;
 import org.springblade.deliver.goods.service.IDeliveryService;
 import org.springblade.deliver.goods.vo.DeliveryVO;
 import org.springblade.purchase.sales.entity.Order;
@@ -64,6 +67,9 @@ import javax.validation.Valid;
 public class ExportDeliveryController extends BladeController {
 
 	private final IDeliveryService deliveryService;
+	private final IDeliveryItemsService deliveryItemsService;
+	private final IDeliveryFeesService deliveryFeesService;
+	private final IDeliveryFilesService deliveryFilesService;
 	private ICorpsDescClient corpsDescClient;//获取客户信息
 	private IUserClient iUserClient;//获取用户信息
 	private IStorageClient iStorageClient;//库区信息
@@ -164,7 +170,12 @@ public class ExportDeliveryController extends BladeController {
 			throw  new SecurityException("已发货不能删除");
 		}
 		delivery.setIsDeleted(1);
-		return R.status(deliveryService.updateById(delivery));
+		delivery.setIsDeleted(1);
+		deliveryService.updateById(delivery);
+		deliveryFeesService.updateByPid(delivery.getId());
+		deliveryFilesService.updateByPid(delivery.getId());
+		deliveryItemsService.updateByPid(delivery.getId());
+		return R.data("操作成");
 	}
 
 	/**

+ 11 - 2
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/controller/ImportDeliveryController.java

@@ -40,6 +40,9 @@ import org.springblade.core.tool.utils.Func;
 import org.springblade.deliver.goods.entity.Delivery;
 import org.springblade.deliver.goods.enums.DeliveryEnum;
 import org.springblade.deliver.goods.enums.DeliveryStatusEnum;
+import org.springblade.deliver.goods.service.IDeliveryFeesService;
+import org.springblade.deliver.goods.service.IDeliveryFilesService;
+import org.springblade.deliver.goods.service.IDeliveryItemsService;
 import org.springblade.deliver.goods.service.IDeliveryService;
 import org.springblade.deliver.goods.vo.DeliveryVO;
 import org.springblade.stock.feign.IStockGoodsClient;
@@ -63,6 +66,9 @@ import javax.validation.Valid;
 public class ImportDeliveryController extends BladeController {
 
 	private final IDeliveryService deliveryService;
+	private final IDeliveryItemsService deliveryItemsService;
+	private final IDeliveryFeesService deliveryFeesService;
+	private final IDeliveryFilesService deliveryFilesService;
 	private ICorpsDescClient corpsDescClient;//获取客户信息
 	private IUserClient iUserClient;//获取用户信息
 	private IStockGoodsClient stockGoodsClient;
@@ -164,8 +170,11 @@ public class ImportDeliveryController extends BladeController {
 		if (StringUtils.isNotBlank(deliveryMessage.getDeliveryStatus()) && deliveryMessage.getDeliveryStatus().equals(DeliveryStatusEnum.DELIVER.getType())){
 			throw  new SecurityException("已发货不能删除");
 		}
-		delivery.setIsDeleted(1);
-		return R.status(deliveryService.updateById(delivery));
+		deliveryService.updateById(delivery);
+		deliveryFeesService.updateByPid(delivery.getId());
+		deliveryFilesService.updateByPid(delivery.getId());
+		deliveryItemsService.updateByPid(delivery.getId());
+		return R.success("操作成功");
 	}
 
 	/**

+ 7 - 2
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/service/impl/DeliveryItemsServiceImpl.java

@@ -557,6 +557,7 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
 		else if(tradeType.equals(OrderTypeEnum.DEALER.getType()))
 		{
 			stockGoods.setTradeType("JXS");
+			stockGoods.setStorageId(storageId);
 		}
 		stockGoods.setCreateUser(SecureUtil.getUserId());
 		stockGoods.setTenantId(SecureUtil.getTenantId());
@@ -737,6 +738,7 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
 				//原仓库减去库存
 				stock.setOutQuantity(stock.getOutQuantity().add( deliveryItems.getActualQuantity()));//出库数量 加
 				stock.setSurplusRouteQuantity(stock.getSurplusRouteQuantity().subtract(deliveryItems.getActualQuantity()));//可用数量 减
+				stock.setBalanceQuantity(stock.getInQuantity().subtract(stock.getOutQuantity()));//结余数量
 				R updateStock = stockGoodsClient.updateStock(stock);
 				if (!updateStock.isSuccess()){
 					throw new RuntimeException("更新库存总账失败");
@@ -748,6 +750,7 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
 				}else {
 					serviceStock.setInQuantity(serviceStock.getInQuantity().add( deliveryItems.getActualQuantity()));//入库数量 加
 					serviceStock.setSurplusRouteQuantity(serviceStock.getSurplusRouteQuantity().add(deliveryItems.getActualQuantity()));//可用数量 加
+					serviceStock.setBalanceQuantity(serviceStock.getInQuantity().subtract(serviceStock.getOutQuantity()));//结余数量
 					R stockMessage = stockGoodsClient.updateStock(serviceStock);
 					if (!stockMessage.isSuccess()){
 						throw new RuntimeException("更新库存总账失败");
@@ -766,6 +769,7 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
 				//新仓库减去库存
 				stock.setInQuantity(stock.getInQuantity().subtract( deliveryItems.getActualQuantity()));//入库数量 减
 				stock.setSurplusRouteQuantity(stock.getSurplusRouteQuantity().subtract(deliveryItems.getActualQuantity()));//可用数量 减
+				stock.setBalanceQuantity(stock.getInQuantity().subtract(stock.getOutQuantity()));//结余数量
 				R updateStock = stockGoodsClient.updateStock(stock);
 				if (!updateStock.isSuccess()){
 					throw new RuntimeException("更新库存总账失败");
@@ -775,8 +779,9 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
 				if (serviceStock == null){
 					this.saveStock(tradeType,null,storageId,deliveryItems);
 				}else {
-					stock.setOutQuantity(stock.getOutQuantity().subtract( deliveryItems.getActualQuantity()));//出库数量 减
-					stock.setSurplusRouteQuantity(stock.getSurplusRouteQuantity().add(deliveryItems.getActualQuantity()));//可用数量 加
+					serviceStock.setOutQuantity(serviceStock.getOutQuantity().subtract( deliveryItems.getActualQuantity()));//出库数量 减
+					serviceStock.setSurplusRouteQuantity(serviceStock.getSurplusRouteQuantity().add(deliveryItems.getActualQuantity()));//可用数量 加
+					serviceStock.setBalanceQuantity(serviceStock.getInQuantity().subtract(serviceStock.getOutQuantity()));//结余数量
 					R stockMessage = stockGoodsClient.updateStock(serviceStock);
 					if (!stockMessage.isSuccess()){
 						throw new RuntimeException("更新库存总账失败");

+ 12 - 0
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/service/impl/DeliveryServiceImpl.java

@@ -842,6 +842,9 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 		if (select == null){
 			throw new SecurityException("未找到调拨单数据");
 		}
+		if (select.getDeliveryStatus().equals(DeliveryStatusEnum.ALLOT.getType())){
+			throw new SecurityException("调拨单已确认调拨,请勿重复调拨");
+		}
 		//获取调拨明细数据
 		LambdaQueryWrapper<DeliveryItems> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(DeliveryItems::getIsDeleted,0);
@@ -852,6 +855,9 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 		if (CollectionUtils.isNotEmpty(deliveryItemsList)){
 			deliveryItemsService.affirmAllot(delivery.getStorageId(),delivery.getAllotStorageId(),deliveryItemsList,1,select.getTradeType());
 		}
+		//修改原单的状态
+		select.setDeliveryStatus(DeliveryStatusEnum.ALLOT.getType());
+		baseMapper.updateById(select);
 		return R.success("操作成功");
 	}
 
@@ -863,6 +869,9 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 		if (select == null){
 			throw new SecurityException("未找到调拨单数据");
 		}
+		if (!select.getDeliveryStatus().equals(DeliveryStatusEnum.ALLOT.getType())){
+			throw new SecurityException("调拨单未确认调拨,撤销失败");
+		}
 		//获取调拨明细数据
 		LambdaQueryWrapper<DeliveryItems> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(DeliveryItems::getIsDeleted,0);
@@ -873,6 +882,9 @@ public class DeliveryServiceImpl extends ServiceImpl<DeliveryMapper, Delivery> i
 		if (CollectionUtils.isNotEmpty(deliveryItemsList)){
 			deliveryItemsService.affirmAllot(delivery.getStorageId(),delivery.getAllotStorageId(),deliveryItemsList,2,select.getTradeType());
 		}
+		//修改原单的状态
+		select.setDeliveryStatus(DeliveryStatusEnum.REPEAL.getType());
+		baseMapper.updateById(select);
 		return R.success("操作成功");
 	}
 

+ 1 - 3
blade-service/blade-school/src/main/java/org/springblade/school/service/impl/SalaryItemServiceImpl.java

@@ -2119,7 +2119,6 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
 				.eq("is_deleted", 0).eq("pid",id));
 			if (item == null){
 				salaryItem.setPid(id);
-				salaryItem.setId(item.getId());
 				salaryItem.setCreateUser(SecureUtil.getUserId());
 				salaryItem.setCreateTime(new Date());
 				baseMapper.insert(salaryItem);
@@ -2170,7 +2169,6 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
 				.eq("is_deleted", 0).eq("pid",id));
 			if (item == null){
 				salaryItem.setPid(id);
-				salaryItem.setId(item.getId());
 				salaryItem.setCreateUser(SecureUtil.getUserId());
 				salaryItem.setCreateTime(new Date());
 				baseMapper.insert(salaryItem);
@@ -2369,7 +2367,7 @@ public class SalaryItemServiceImpl extends ServiceImpl<SalaryItemMapper, SalaryI
 			}
 			//实发工资
 			item.setfSalary(item.getSalary().subtract(item.getPersonageTaxes()).subtract(item.getInsurancePersonage()).subtract(item.getReservedFundsPersonage()));
-			item.setPauseNoPayOne(item.getfSalary().setScale(0, BigDecimal.ROUND_HALF_UP));
+			item.setPauseNoPayOne(item.getfSalary());
 			baseMapper.updateById(item);
 		}
 	}