Browse Source

修改收货和财务的bug

1021934019@qq.com 4 years ago
parent
commit
9b6cb947ce

+ 8 - 5
blade-service-api/blade-check-api/src/main/java/com/blade/check/entity/AuditPathsActs.java

@@ -58,11 +58,14 @@ public class AuditPathsActs implements Serializable {
 	*/
 		@ApiModelProperty(value = "审核路径Id")
 		private Integer pathId;
-	/**
-	* 存储对应审批字段
-	*/
-		@ApiModelProperty(value = "存储对应审批字段")
-		private String fidStatus;
+
+
+		/**
+		 * 是否启用此审批流(1启动 2不启动)
+		 */
+		@ApiModelProperty(value = "是否启用此审批流(1启动 2不启动)")
+		private Integer isEnable;
+
 
 
 }

+ 5 - 0
blade-service-api/trade-purchase-api/src/main/java/com/trade/purchase/order/feign/IOrderDescClient.java

@@ -3,6 +3,7 @@ package com.trade.purchase.order.feign;
 import com.trade.purchase.order.entity.Order;
 import org.springblade.core.tool.api.R;
 import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 
 /**
@@ -15,6 +16,7 @@ import org.springframework.web.bind.annotation.PostMapping;
 public interface IOrderDescClient {
 	String API_PREFIX = "/client";
 	String UPDATE_ORDER=API_PREFIX+"/updateOrder";
+	String GET_BY_ORDER_NO=API_PREFIX+"/getByOrderNo";
 
 	/**
 	 * 修改采购订单状态
@@ -24,4 +26,7 @@ public interface IOrderDescClient {
 	@PostMapping(UPDATE_ORDER)
 	R updateOrder(Order order);
 
+	@GetMapping(GET_BY_ORDER_NO)
+	Order getByOrder(String orderNo);
+
 }

+ 16 - 1
blade-service/blade-deliver-goods/src/main/java/org/springblade/deliver/goods/controller/DeliveryController.java

@@ -36,8 +36,10 @@ import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.deliver.goods.entity.DeliveryItems;
 import org.springblade.deliver.goods.enums.DeliveryEnum;
 import org.springblade.deliver.goods.enums.DeliveryStatusEnum;
+import org.springblade.deliver.goods.service.IDeliveryItemsService;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.feign.IUserClient;
 import org.springframework.web.bind.annotation.*;
@@ -66,6 +68,7 @@ public class DeliveryController extends BladeController {
 	private ICorpsDescClient corpsDescClient;//获取客户信息
 	private IUserClient iUserClient;//获取用户信息
 	private IStorageClient iStorageClient;//库区信息
+	private final IDeliveryItemsService iDeliveryItemsService;
 	/**
 	 * 详情
 	 */
@@ -210,7 +213,19 @@ public class DeliveryController extends BladeController {
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
-	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids)
+	{
+		LambdaQueryWrapper<Delivery> itemsLambdaQueryWrapper=new LambdaQueryWrapper<>();
+		itemsLambdaQueryWrapper.in(Delivery::getId,Func.toLongList(ids));
+		List<Delivery> list = deliveryService.list(itemsLambdaQueryWrapper);
+		if(CollectionUtils.isNotEmpty(list))
+		{
+			long count = list.stream().filter(e -> e.getDeliveryStatus().equals("已收货")).count();
+			if(count>0)
+			{
+				throw new SecurityException("存在已收货信息, 禁止删除");
+			}
+		}
 		return R.status(deliveryService.removeByIds(Func.toLongList(ids)));
 	}
 

+ 6 - 0
blade-service/trade-finance/pom.xml

@@ -75,6 +75,12 @@
             <groupId>org.springblade</groupId>
             <artifactId>blade-starter-transaction</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>trade-purchase-api</artifactId>
+            <version>2.8.2.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
 
 

+ 1 - 2
blade-service/trade-finance/src/main/java/com/trade/finance/controller/SettlementController.java

@@ -175,8 +175,7 @@ public class SettlementController extends BladeController {
 	@ApiOperation(value = "保存收付款信息", notes = "保存收付款信息")
 	public R saveOrEdit(@RequestBody SettlementDTO dto)
 	{
-		settlementService.saveOrEdit(dto);
-		return R.data(dto);
+		return R.data(settlementService.saveOrEdit(dto));
 	}
 
 	/**

+ 1 - 1
blade-service/trade-finance/src/main/java/com/trade/finance/service/ISettlementService.java

@@ -52,6 +52,6 @@ public interface ISettlementService extends IService<Settlement> {
 
 	void paymentApply(List<Items> itemsList, String billType);
 
-	void saveOrEdit(SettlementDTO settlementDTO);
+	SettlementDTO saveOrEdit(SettlementDTO settlementDTO);
 
 }

+ 21 - 3
blade-service/trade-finance/src/main/java/com/trade/finance/service/impl/SettlementServiceImpl.java

@@ -30,8 +30,11 @@ import com.trade.finance.mapper.ItemsMapper;
 import com.trade.finance.mapper.SettlementMapper;
 import com.trade.finance.service.ISettlementService;
 import com.trade.finance.vo.SettlementVO;
+import com.trade.purchase.order.entity.Order;
+import com.trade.purchase.order.feign.IOrderDescClient;
 import org.springblade.client.entity.CorpsBank;
 import org.springblade.client.feign.ICorpsDescClient;
+import org.springblade.client.feign.IFeesDescClient;
 import org.springblade.client.feign.ISerialClient;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
@@ -64,6 +67,10 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
     @Autowired
 	private ICorpsDescClient corpsDescClient;
 
+    public IOrderDescClient iOrderDescClient;
+
+
+
 	@Override
 	public IPage<SettlementVO> selectSettlementPage(IPage<SettlementVO> page, SettlementVO settlement) {
 		return page.setRecords(baseMapper.selectSettlementPage(page, settlement));
@@ -151,9 +158,14 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			{
 				BigDecimal total = accs.stream().filter(e -> e.getSettlementAmount() != null).map(Acc::getSettlementAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
 				Settlement settlement = baseMapper.selectById(model.getId());
-				if(total.compareTo(settlement.getAmount())>1)
+				Order order = iOrderDescClient.getByOrder(settlement.getSrcOrderno());
+				if(order==null)
+				{
+					throw new SecurityException("结算未发现订单信息");
+				}
+				if(total.compareTo(order.getAmount())>1)
 				{
-					throw new SecurityException("订单号:"+settlement.getSrcOrderno()+",结算总金额大于原单据的总金额,--原单号金额为:"+settlement.getAmount()+",--当前结算总金额为:"+total);
+					throw new SecurityException("订单号:"+order.getOrderNo()+",结算总金额大于原单据的总金额,--原单号金额为:"+order.getAmount()+",--当前结算总金额为:"+total);
 				}
 			}
 		}
@@ -265,7 +277,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 
 	@Override
 	@Transactional
-	public void saveOrEdit(SettlementDTO settlementDTO)
+	public SettlementDTO saveOrEdit(SettlementDTO settlementDTO)
 	{
 		Settlement model=new Settlement();
 		BeanUtils.copyProperties(settlementDTO,model);
@@ -282,6 +294,11 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			model.setCreateUser(AuthUtil.getUserId());
 			model.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
 			baseMapper.insert(model);
+			settlementDTO.setId(model.getId());
+			settlementDTO.setSysNo(model.getSysNo());
+			settlementDTO.setFinanceStatus("待结算");
+			settlementDTO.setCreateTime(new Date());
+			settlementDTO.setCreateUserName(AuthUtil.getUserName());
 			if(CollectionUtils.isNotEmpty(itemsList))
 			{
 				itemsList.forEach(e->{
@@ -332,6 +349,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			}
 
 		}
+		return settlementDTO;
 	}
 
 }

+ 16 - 0
blade-service/trade-purchase/src/main/java/com/trade/purchase/order/feign/OrderDescClient.java

@@ -1,10 +1,13 @@
 package com.trade.purchase.order.feign;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.trade.purchase.order.entity.Order;
 import com.trade.purchase.order.service.IOrderService;
 import lombok.AllArgsConstructor;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 @RestController
@@ -24,4 +27,17 @@ public class OrderDescClient implements IOrderDescClient {
 		iOrderService.updateById(order);
 		return R.success("操作成功");
 	}
+
+	@Override
+	@GetMapping(GET_BY_ORDER_NO)
+	public Order getByOrder(String orderNo)
+	{
+		LambdaQueryWrapper<Order> orderLambdaQueryWrapper=new LambdaQueryWrapper<>();
+		orderLambdaQueryWrapper.eq(Order::getTenantId, AuthUtil.getTenantId());
+		orderLambdaQueryWrapper.eq(Order::getIsDeleted, 0);
+		orderLambdaQueryWrapper.eq(Order::getOrderNo,orderNo);
+		return iOrderService.getOne(orderLambdaQueryWrapper, false);
+	}
+
+
 }