Browse Source

达沃特修改

Signed-off-by: sunhz <mpcoo@foxmail.com>
sunhz 3 years ago
parent
commit
2351ff66cf
21 changed files with 710 additions and 654 deletions
  1. 12 8
      blade-service-api/blade-check-api/src/main/java/org/springblade/check/vo/AuditOrderVO.java
  2. 5 1
      blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/entity/OrderFees.java
  3. 3 0
      blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/entity/OrderItems.java
  4. 19 10
      blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/feign/IOrderItemsClient.java
  5. 16 12
      blade-service-api/trade-finance-api/src/main/java/org/springblade/finance/feign/IFinanceClient.java
  6. 6 2
      blade-service-api/trade-purchase-api/src/main/java/com/trade/purchase/order/entity/OrderFees.java
  7. 3 0
      blade-service-api/trade-purchase-api/src/main/java/com/trade/purchase/order/entity/OrderItems.java
  8. 12 6
      blade-service/blade-check/src/main/java/org/springblade/check/controller/AuditProecessController.java
  9. 3 1
      blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderServiceImpl.java
  10. 6 5
      blade-service/blade-land/src/main/java/org/springblade/land/util/MessageUtil.java
  11. 50 33
      blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/feign/OrderItemsClient.java
  12. 89 89
      blade-service/blade-stock/src/main/java/org/springblade/stock/controller/StockGoodsController.java
  13. 37 36
      blade-service/trade-finance/src/main/java/org/springblade/finance/controller/AccController.java
  14. 1 1
      blade-service/trade-finance/src/main/java/org/springblade/finance/controller/ItemsController.java
  15. 83 104
      blade-service/trade-finance/src/main/java/org/springblade/finance/controller/SettlementController.java
  16. 5 3
      blade-service/trade-finance/src/main/java/org/springblade/finance/service/IAccService.java
  17. 4 0
      blade-service/trade-finance/src/main/java/org/springblade/finance/service/IItemsService.java
  18. 13 8
      blade-service/trade-finance/src/main/java/org/springblade/finance/service/ISettlementService.java
  19. 64 29
      blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/AccServiceImpl.java
  20. 49 1
      blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/ItemsServiceImpl.java
  21. 230 305
      blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java

+ 12 - 8
blade-service-api/blade-check-api/src/main/java/org/springblade/check/vo/AuditOrderVO.java

@@ -12,17 +12,21 @@ import java.util.Date;
 @Data
 @ApiModel(value = "AuditItemsVO对象", description = "用户审批列表返回对象")
 @EqualsAndHashCode(callSuper = true)
-public class AuditOrderVO extends AuditProecess
-{
-	 @ApiModelProperty(value = "订单号")
- 	 private String orderNo;
+public class AuditOrderVO extends AuditProecess {
 
-	 @ApiModelProperty(value = "供应商名称")
- 	 private String corpsName;
+	@ApiModelProperty(value = "订单号")
+	private String orderNo;
 
-	 @ApiModelProperty(value = "订单日期")
- 	 private Date orderDate;
+	@ApiModelProperty(value = "供应商名称")
+	private String corpsName;
 
 	@ApiModelProperty(value = "订单日期")
+	private Date orderDate;
+
+	@ApiModelProperty(value = "金额")
 	private BigDecimal amount;
+
+	@ApiModelProperty(value = "请核人真实姓名")
+	private String sendRealName;
+
 }

+ 5 - 1
blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/entity/OrderFees.java

@@ -186,7 +186,11 @@ public class OrderFees implements Serializable {
 
 	private BigDecimal refundSettlmentAmount;
 
-	private int isCheck;
+	@ApiModelProperty(value = "0 未审核 1已审核")
+	private Integer isCheck;
+
+	@ApiModelProperty(value = "生成货款")
+	private Integer submitPay;
 
 
 }

+ 3 - 0
blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/entity/OrderItems.java

@@ -479,4 +479,7 @@ public class OrderItems implements Serializable {
 	@ApiModelProperty(value = "录入类型")
 	private Integer inputMold;
 
+	@ApiModelProperty(value = "生成货款")
+	private Integer submitPay;
+
 }

+ 19 - 10
blade-service-api/blade-purchase-sales-api/src/main/java/org/springblade/purchase/sales/feign/IOrderItemsClient.java

@@ -1,12 +1,12 @@
 package org.springblade.purchase.sales.feign;
 
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import io.swagger.annotations.ApiParam;
 import org.springblade.common.constant.LauncherConstant;
 import org.springblade.core.tool.api.R;
 import org.springblade.purchase.sales.entity.OrderItems;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestParam;
 
 import java.math.BigDecimal;
@@ -16,31 +16,40 @@ import java.util.List;
 	value = LauncherConstant.APPLICATION_PURCHASE_SALES_NAME
 )
 public interface IOrderItemsClient {
-	String API_PREFIX = "/client";
+	String API_PREFIX = "/items";
 	String ACTUAL_QUANTITY = API_PREFIX + "actualQuantity";
 	String ACTUAL_WEIGHT = API_PREFIX + "actualWeight";
 	String RECEIVED = API_PREFIX + "/received";
 	String LIST_BY_ITEM_ID = API_PREFIX + "/listByItemId";
+	String SUBMIT = API_PREFIX + "/submit";
+	String GET_BY_ID = API_PREFIX + "/getById";
 
 
 	/**
 	 * 修改订单明细发货数量
-	 * @param orderItemsId 订单明细id
+	 *
+	 * @param orderItemsId   订单明细id
 	 * @param actualQuantity 发货数量
-	 * @param    deliveryType 操作类型 发货、撤销发货
+	 * @param deliveryType   操作类型 发货、撤销发货
 	 * @return
 	 */
 	@GetMapping(ACTUAL_QUANTITY)
 	R updateActualQuantity(@RequestParam("orderItemsId") Long orderItemsId,
-						   @RequestParam("actualQuantity")BigDecimal actualQuantity,
-						   @RequestParam("deliveryType")int deliveryType);
+						   @RequestParam("actualQuantity") BigDecimal actualQuantity,
+						   @RequestParam("deliveryType") int deliveryType);
 
 	@GetMapping(ACTUAL_WEIGHT)
 	R updateActualWeight(@RequestParam("orderItemsId") Long orderItemsId,
-						   @RequestParam("actualWeight")BigDecimal actualWeight,
-						   @RequestParam("deliveryType")int deliveryType);
+						 @RequestParam("actualWeight") BigDecimal actualWeight,
+						 @RequestParam("deliveryType") int deliveryType);
 
-    @GetMapping(LIST_BY_ITEM_ID)
+	@GetMapping(LIST_BY_ITEM_ID)
 	R<List<OrderItems>> listByItemId(@RequestParam("itemId") Long itemId);
 
+	@PostMapping(SUBMIT)
+	R submit(@RequestBody OrderItems orderItems);
+
+	@GetMapping(GET_BY_ID)
+	OrderItems getById(@RequestParam("id") Long id);
+
 }

+ 16 - 12
blade-service-api/trade-finance-api/src/main/java/org/springblade/finance/feign/IFinanceClient.java

@@ -9,43 +9,47 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestParam;
 
-
 import javax.validation.Valid;
 import java.math.BigDecimal;
 import java.util.List;
 
-@FeignClient(
-	value = "trade-finance"
-)
 /**
  * 商品信息对外访问API
  */
-public interface IFinanceClient
-{
+@FeignClient(
+	value = "trade-finance"
+)
+public interface IFinanceClient {
+
 	@PostMapping("/settlement/passCheck")
-	 R passCheck(@RequestParam("id") Long id);
+	R passCheck(@RequestParam("id") Long id);
 
 	@PostMapping("/settlement/passCancel")
-	 R passCancel(@RequestParam("id") Long id);
+	R passCancel(@RequestParam("id") Long id);
 
-    @GetMapping("/settlement/getFinanceAcc")
-	R<BigDecimal> getFinanceAcc(@RequestParam("accSysNo")String accSysNo,@RequestParam("tradeType")String tradeType);
+	@GetMapping("/settlement/getFinanceAcc")
+	R<BigDecimal> getFinanceAcc(@RequestParam("accSysNo") String accSysNo, @RequestParam("tradeType") String tradeType);
 
 	@GetMapping("/settlement/detail")
 	R<Settlement> detail(Settlement settlement);
 
+	@PostMapping("/settlement/getById")
+	R<Settlement> getById(@RequestParam Long id);
+
 	@PostMapping("/acc/getAccListByCondition")
-	R<List<Acc>> getAccListByCondition( @RequestBody Acc acc);
+	R<List<Acc>> getAccListByCondition(@RequestBody Acc acc);
 
 	@PostMapping("settlement/submit")
 	R submit(@Valid @RequestBody Settlement settlement);
 
 	/**
 	 * 根据订单号获取账单信息
+	 *
 	 * @param accSysNo
 	 * @param tradeType
 	 * @return
 	 */
 	@GetMapping("/settlement/getFinanceAccList")
-	List<Acc> getFinanceAccList(@RequestParam("accSysNo")String accSysNo,@RequestParam("tradeType")String tradeType);
+	List<Acc> getFinanceAccList(@RequestParam("accSysNo") String accSysNo, @RequestParam("tradeType") String tradeType);
+
 }

+ 6 - 2
blade-service-api/trade-purchase-api/src/main/java/com/trade/purchase/order/entity/OrderFees.java

@@ -173,8 +173,12 @@ public class OrderFees extends OrderBase {
 	private String corpName;
 
 	@ApiModelProperty(value = "1.应收 2.应付")
-	private int feesType;
+	private Integer feesType;
+
 	@ApiModelProperty(value = "0 未审核 1已审核")
-	private int isCheck;
+	private Integer isCheck;
+
+	@ApiModelProperty(value = "生成货款")
+	private Integer submitPay;
 
 }

+ 3 - 0
blade-service-api/trade-purchase-api/src/main/java/com/trade/purchase/order/entity/OrderItems.java

@@ -446,6 +446,9 @@ public class OrderItems extends OrderBase {
 	@ApiModelProperty(value = "最新价格时间")
 	private Date newDate;
 
+	@ApiModelProperty(value = "生成货款")
+	private Integer submitPay;
+
 	@TableField(exist = false)
 	private String goodsName;
 

+ 12 - 6
blade-service/blade-check/src/main/java/org/springblade/check/controller/AuditProecessController.java

@@ -38,6 +38,7 @@ import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.finance.feign.IFinanceClient;
 import org.springblade.finance.vojo.Settlement;
 import org.springblade.purchase.sales.entity.Order;
@@ -52,7 +53,6 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
 import java.util.List;
-import java.util.stream.Collectors;
 
 /**
  * 审批流记录 控制器
@@ -86,6 +86,7 @@ public class AuditProecessController extends BladeController {
 		LambdaQueryWrapper<AuditProecess> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 		lambdaQueryWrapper.eq(AuditProecess::getIsDelete, 0);
 		lambdaQueryWrapper.like(AuditProecess::getAuditUserId, String.valueOf(AuthUtil.getUserId()));
+		lambdaQueryWrapper.eq(StringUtils.isNotBlank(auditProecess.getProcessType()), AuditProecess::getProcessType, auditProecess.getProcessType());
 		lambdaQueryWrapper.eq(StringUtils.isNotBlank(auditProecess.getAuditStatus()), AuditProecess::getAuditStatus, auditProecess.getAuditStatus());
 		lambdaQueryWrapper.orderByDesc(AuditProecess::getSendTime);
 		IPage pages = auditProecessService.page(Condition.getPage(query), lambdaQueryWrapper);
@@ -101,7 +102,7 @@ public class AuditProecessController extends BladeController {
 					if (order != null) {
 						auditOrderVO.setOrderDate(order.getCreateTime());
 						auditOrderVO.setOrderNo(order.getOrderNo());
-						if (order.getCorpId() != null) {
+						if (order.getCorpId() != null ) {
 							auditOrderVO.setCorpsName(corpsDescClient.getCorpMessage(order.getCorpId()).getData().getCname());
 						}
 
@@ -109,14 +110,19 @@ public class AuditProecessController extends BladeController {
 				}
 				//财务明细表相关数据
 				if (e.getSrcBillId() != null) {
-					Settlement settlement = new Settlement();
-					settlement.setId(e.getBillId());
-					R<Settlement> detail = financeClient.detail(settlement);
-					if (detail.isSuccess()) {
+					R<Settlement> detail = financeClient.getById(e.getSrcBillId());
+					if (detail.isSuccess() && ObjectUtil.isNotEmpty(detail.getData())) {
 						BigDecimal amount = detail.getData().getAmount();
 						auditOrderVO.setAmount(amount);
 					}
 				}
+
+				if (ObjectUtil.isNotEmpty(e.getSendUserId())) {
+					R<User> user = userClient.userInfoById(e.getSendUserId());
+					if (user.isSuccess() && ObjectUtil.isNotEmpty(user.getData())) {
+						auditOrderVO.setSendRealName(user.getData().getRealName());
+					}
+				}
 				auditOrderVOS.add(auditOrderVO);
 
 			});

+ 3 - 1
blade-service/blade-land/src/main/java/org/springblade/land/service/impl/OrderServiceImpl.java

@@ -406,7 +406,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 				orderItemMapper.updateById(item);
 			}
 
-			freight = freight.add(item.getLandAmountD().multiply(new BigDecimal(String.valueOf(item.getCtnQuantity()))));
+			if (ObjectUtil.isNotEmpty(item.getLandAmountD()) && ObjectUtil.isNotEmpty(item.getCtnQuantity())) {
+				freight = freight.add(item.getLandAmountD().multiply(new BigDecimal(String.valueOf(item.getCtnQuantity()))));
+			}
 		}
 
 		StringBuilder addressDetail = new StringBuilder();

+ 6 - 5
blade-service/blade-land/src/main/java/org/springblade/land/util/MessageUtil.java

@@ -22,7 +22,7 @@ public class MessageUtil {
 
 	private final static String LAND_GS_URL = "/landTransportation/driver/index";
 
-	public static Message send(Long orderId, Long userId, String url, String msg) {
+	public static Message send(Long orderId, Long userId, String url, String msg, String pageLabel) {
 		Message message = new Message();
 		message.setParameter(String.valueOf(orderId));
 		message.setUserName(AuthUtil.getUserName());
@@ -34,6 +34,7 @@ public class MessageUtil {
 		message.setCreateTime(new Date());
 		message.setUrl(url);
 		message.setMessageBody(msg);
+		message.setPageLabel(pageLabel);
 		return message;
 	}
 
@@ -54,7 +55,7 @@ public class MessageUtil {
 		if ("WG".equals(mold)) {
 			msg = "您的订单已完工,提单号:" + item.getBillNo() + ",箱型箱量:" + item.getCtnType() + "×" + item.getCtnQuantity() + "。";
 		}
-		return send(item.getOrderId(), item.getSendUserId(), LAND_WT_URL, msg);
+		return send(item.getOrderId(), item.getSendUserId(), LAND_WT_URL, msg, "委托");
 	}
 
 	public static Message toUser(OrderItem item, String mold) {
@@ -78,7 +79,7 @@ public class MessageUtil {
 		if ("WG".equals(mold)) {
 			msg = "已完工,提单号:" + item.getBillNo() + ",箱型箱量:" + item.getCtnType() + "×" + item.getCtnQuantity() + "。";
 		}
-		return send(item.getOrderId(), item.getSendUserId(), LAND_DD_URL, msg);
+		return send(item.getOrderId(), item.getSendUserId(), LAND_DD_URL, msg, "调度");
 	}
 
 	public static Message toFleet(OrderItem item, String mold) {
@@ -98,13 +99,13 @@ public class MessageUtil {
 		if ("WG".equals(mold)) {
 			msg = "已完工,提单号:" + item.getBillNo() + ",箱型箱量:" + item.getCtnType() + "×" + item.getCtnQuantity() + "。";
 		}
-		return send(item.getOrderId(), item.getSendUserId(), LAND_PC_URL, msg);
+		return send(item.getOrderId(), item.getSendUserId(), LAND_PC_URL, msg, "派车");
 	}
 
 	public static Message toDriver(OrderItem item) {
 		String msg = "您有新的订单需受理,提单号:" + item.getBillNo() + ",箱型箱量:" + item.getCtnType() + "×" + item.getCtnQuantity() + ","
 			+ "到场时间:" + DateUtil.formatDateTime(item.getArrivalTime()) + ",场站:" + item.getStation() + "。";
-		return send(item.getOrderId(), item.getSendUserId(), LAND_GS_URL, msg);
+		return send(item.getOrderId(), item.getSendUserId(), LAND_GS_URL, msg, "跟踪");
 	}
 
 }

+ 50 - 33
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/feign/OrderItemsClient.java

@@ -20,41 +20,47 @@ import java.util.List;
 @ApiIgnore()
 @RestController
 @AllArgsConstructor
-public class OrderItemsClient implements IOrderItemsClient{
-	private IOrderItemsService orderItemsService;//订单明细
+public class OrderItemsClient implements IOrderItemsClient {
+
+	/**
+	 * 订单明细
+	 */
+	private IOrderItemsService orderItemsService;
 
 	/**
 	 * 修改订单明细发货数量
-	 * @param orderItemsId 订单明细id
+	 *
+	 * @param orderItemsId   订单明细id
 	 * @param actualQuantity 发货数量
-	 * @param deliveryType 操作类型发货 撤销发货
+	 * @param deliveryType   操作类型发货 撤销发货
 	 * @return
 	 */
 	@Override
 	@GetMapping(ACTUAL_QUANTITY)
-	public R updateActualQuantity(Long orderItemsId, BigDecimal actualQuantity,int deliveryType) {
+	public R updateActualQuantity(Long orderItemsId, BigDecimal actualQuantity, int deliveryType) {
 		OrderItems orderItems = orderItemsService.getById(orderItemsId);
-		if (orderItems == null){
+		if (orderItems == null) {
 			throw new RuntimeException("找不到订单明细");
 		}
 		OrderItems items = new OrderItems();
 		items.setId(orderItemsId);
-		if (deliveryType == DeliveryEnum.DELIVER.getType()){ //发货
-			log.info("已发货数量为:==>"+actualQuantity);
-			log.info("订货数量:==>"+orderItems.getOrderQuantity());
-			log.info("已收数量:==>"+orderItems.getActualQuantity());
-			log.info("订货数量-已收数量:==>"+orderItems.getOrderQuantity().subtract(orderItems.getActualQuantity()));
+		//发货
+		if (deliveryType == DeliveryEnum.DELIVER.getType()) {
+			log.info("已发货数量为:==>" + actualQuantity);
+			log.info("订货数量:==>" + orderItems.getOrderQuantity());
+			log.info("已收数量:==>" + orderItems.getActualQuantity());
+			log.info("订货数量-已收数量:==>" + orderItems.getOrderQuantity().subtract(orderItems.getActualQuantity()));
 
 			//判断 已发货数量 或者 已收货数量 ,不能大于(订货数量-已收数量)
-			if(actualQuantity.compareTo(orderItems.getOrderQuantity().subtract(orderItems.getActualQuantity()))>0)
-			{
-				throw  new RuntimeException("操作数量大于件数,无法出入库");
+			if (actualQuantity.compareTo(orderItems.getOrderQuantity().subtract(orderItems.getActualQuantity())) > 0) {
+				throw new RuntimeException("操作数量大于件数,无法出入库");
 			}
 
 			items.setActualQuantity(orderItems.getActualQuantity().add(actualQuantity));
-		}else if (deliveryType == DeliveryEnum.REPEAL.getType()){ //撤销发货
-			if (orderItems.getActualQuantity().compareTo(actualQuantity) <0){
-				throw  new RuntimeException("当前可撤销发货数量为"+orderItems.getActualQuantity());
+		} else if (deliveryType == DeliveryEnum.REPEAL.getType()) {
+			//撤销发货
+			if (orderItems.getActualQuantity().compareTo(actualQuantity) < 0) {
+				throw new RuntimeException("当前可撤销发货数量为" + orderItems.getActualQuantity());
 			}
 			items.setActualQuantity(orderItems.getActualQuantity().subtract(actualQuantity));
 		}
@@ -63,30 +69,30 @@ public class OrderItemsClient implements IOrderItemsClient{
 
 	@Override
 	@GetMapping(ACTUAL_WEIGHT)
-	public R updateActualWeight(Long orderItemsId, BigDecimal actualWeight, int deliveryType)
-	{
+	public R updateActualWeight(Long orderItemsId, BigDecimal actualWeight, int deliveryType) {
 		OrderItems orderItems = orderItemsService.getById(orderItemsId);
-		if (orderItems == null){
+		if (orderItems == null) {
 			throw new RuntimeException("找不到订单明细");
 		}
 		OrderItems items = new OrderItems();
 		items.setId(orderItemsId);
-		if (deliveryType == DeliveryEnum.DELIVER.getType()){ //发货
-			log.info("发货-发票重量为:==>"+actualWeight);
-			log.info("原发票重量:==>"+orderItems.getInvoiceWeight());
-			log.info("已收发票重量:==>"+orderItems.getActualWeight());
-			log.info("原发票重量-已收发票重量:==>"+orderItems.getInvoiceWeight().subtract(orderItems.getActualWeight()));
+		//发货
+		if (deliveryType == DeliveryEnum.DELIVER.getType()) {
+			log.info("发货-发票重量为:==>" + actualWeight);
+			log.info("原发票重量:==>" + orderItems.getInvoiceWeight());
+			log.info("已收发票重量:==>" + orderItems.getActualWeight());
+			log.info("原发票重量-已收发票重量:==>" + orderItems.getInvoiceWeight().subtract(orderItems.getActualWeight()));
 
 			//判断 已发货数量 或者 已收货数量 ,不能大于(订货数量-已收数量)
-			if(actualWeight.compareTo(orderItems.getInvoiceWeight().subtract(orderItems.getActualWeight()))>0)
-			{
-				throw  new RuntimeException("操作重量大于发票重量,无法出入库");
+			if (actualWeight.compareTo(orderItems.getInvoiceWeight().subtract(orderItems.getActualWeight())) > 0) {
+				throw new RuntimeException("操作重量大于发票重量,无法出入库");
 			}
 
 			items.setActualWeight(orderItems.getActualWeight().add(actualWeight));
-		}else if (deliveryType == DeliveryEnum.REPEAL.getType()){ //撤销发货
-			if (orderItems.getActualWeight().compareTo(actualWeight) <0){
-				throw  new RuntimeException("当前可撤销发货数量为"+orderItems.getActualWeight());
+		} else if (deliveryType == DeliveryEnum.REPEAL.getType()) {
+			//撤销发货
+			if (orderItems.getActualWeight().compareTo(actualWeight) < 0) {
+				throw new RuntimeException("当前可撤销发货数量为" + orderItems.getActualWeight());
 			}
 			items.setActualWeight(orderItems.getActualWeight().subtract(actualWeight));
 		}
@@ -96,9 +102,20 @@ public class OrderItemsClient implements IOrderItemsClient{
 	@Override
 	@GetMapping(LIST_BY_ITEM_ID)
 	public R<List<OrderItems>> listByItemId(Long itemId) {
-		LambdaQueryWrapper<OrderItems> orderItemsLambdaQueryWrapper=new LambdaQueryWrapper<>();
-		orderItemsLambdaQueryWrapper.eq(OrderItems::getItemId,itemId).eq(OrderItems::getIsDeleted,0);
+		LambdaQueryWrapper<OrderItems> orderItemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
+		orderItemsLambdaQueryWrapper.eq(OrderItems::getItemId, itemId).eq(OrderItems::getIsDeleted, 0);
 		List<OrderItems> list = orderItemsService.list(orderItemsLambdaQueryWrapper);
 		return R.data(list);
 	}
+
+	@Override
+	public R submit(OrderItems orderItems) {
+		return R.status(orderItemsService.saveOrUpdate(orderItems));
+	}
+
+	@Override
+	public OrderItems getById(Long id) {
+		return orderItemsService.getById(id);
+	}
+
 }

+ 89 - 89
blade-service/blade-stock/src/main/java/org/springblade/stock/controller/StockGoodsController.java

@@ -17,23 +17,21 @@
 package org.springblade.stock.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
-
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
-
 import org.springblade.client.entity.CorpsDesc;
 import org.springblade.client.entity.StorageDesc;
 import org.springblade.client.feign.ICorpsDescClient;
 import org.springblade.client.feign.IGoodsDescClient;
 import org.springblade.client.feign.IStorageClient;
 import org.springblade.client.vo.GoodsDescVO;
+import org.springblade.core.boot.ctrl.BladeController;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
@@ -41,17 +39,17 @@ import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.stock.entity.StockGoods;
 import org.springblade.stock.excel.StockGoodsExcel;
+import org.springblade.stock.service.IStockGoodsService;
+import org.springblade.stock.vo.StockGoodsVO;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.feign.IUserClient;
 import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.stock.entity.StockGoods;
-import org.springblade.stock.vo.StockGoodsVO;
-import org.springblade.stock.service.IStockGoodsService;
-import org.springblade.core.boot.ctrl.BladeController;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -68,10 +66,22 @@ import java.util.List;
 public class StockGoodsController extends BladeController {
 
 	private final IStockGoodsService stockGoodsService;
-	private ICorpsDescClient corpsDescClient;//获取客户信息
-	private IGoodsDescClient goodsDescClient;//商品信息
-	private IUserClient userClient;//用户信息
-	private IStorageClient iStorageClient;//库区信息
+	/**
+	 * 获取客户信息
+	 */
+	private final ICorpsDescClient corpsDescClient;
+	/**
+	 * 商品信息
+	 */
+	private final IGoodsDescClient goodsDescClient;
+	/**
+	 * 用户信息
+	 */
+	private final IUserClient userClient;
+	/**
+	 * 库区信息
+	 */
+	private final IStorageClient iStorageClient;
 
 	/**
 	 * 详情
@@ -92,52 +102,50 @@ public class StockGoodsController extends BladeController {
 	@ApiOperation(value = "分页", notes = "传入stockGoods")
 	public R<IPage<StockGoods>> list(StockGoodsVO stockGoods, Query query) {
 		//不区分箱号
-		if(stockGoods.getIsCntrON()==0)
-		{
+		if (stockGoods.getIsCntrON() == 0) {
 			List<Long> list = new ArrayList<>();
 			if (StringUtils.isNotBlank(stockGoods.getCode()) || StringUtils.isNotBlank(stockGoods.getCname()) || StringUtils.isNotBlank(stockGoods.getBrand())
 				|| StringUtils.isNotBlank(stockGoods.getBrandItem()) || StringUtils.isNotBlank(stockGoods.getPlaceProduction()) || StringUtils.isNotBlank(stockGoods.getTypeno())
-				|| StringUtils.isNotBlank(stockGoods.getTypenoOne())){
-				list = goodsDescClient.getGoodId(stockGoods.getCode(),stockGoods.getCname(),stockGoods.getBrand(),stockGoods.getBrandItem(),
-					stockGoods.getPlaceProduction(),stockGoods.getTypeno(),stockGoods.getTypenoOne());
+				|| StringUtils.isNotBlank(stockGoods.getTypenoOne())) {
+				list = goodsDescClient.getGoodId(stockGoods.getCode(), stockGoods.getCname(), stockGoods.getBrand(), stockGoods.getBrandItem(),
+					stockGoods.getPlaceProduction(), stockGoods.getTypeno(), stockGoods.getTypenoOne());
 			}
 			LambdaQueryWrapper<StockGoods> lambdaQueryWrapper = new LambdaQueryWrapper<>();
 			lambdaQueryWrapper.eq(StockGoods::getTenantId, SecureUtil.getTenantId());
-			lambdaQueryWrapper.eq(StockGoods::getIsDeleted,0);
-			lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getBillNo()),StockGoods::getBillNo,stockGoods.getBillNo());
-			lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getContractNumber()),StockGoods::getContractNumber,stockGoods.getContractNumber());
+			lambdaQueryWrapper.eq(StockGoods::getIsDeleted, 0);
+			lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getBillNo()), StockGoods::getBillNo, stockGoods.getBillNo());
+			lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getContractNumber()), StockGoods::getContractNumber, stockGoods.getContractNumber());
 
-			if(Func.isNotEmpty(stockGoods.getCname()))
-			{
+			if (Func.isNotEmpty(stockGoods.getCname())) {
 				List<Long> goodId = goodsDescClient.getGoodId(null, stockGoods.getCname(), null, null, null, null, null);
-				if(CollectionUtils.isNotEmpty(goodId))
-				{
+				if (CollectionUtils.isNotEmpty(goodId)) {
 					lambdaQueryWrapper.in(StockGoods::getGoodsId, goodId);
 				}
 			}
 
-			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getBrandItem()),StockGoods::getBrandItem,stockGoods.getBrandItem());//花纹
-			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getPlaceProduction()),StockGoods::getPlaceProduction,stockGoods.getPlaceProduction());//产地
-			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getBrand()),StockGoods::getBrand,stockGoods.getBrand());//品牌
-			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getTypeno()),StockGoods::getTypeno,stockGoods.getTypeno());//规格
-			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getTypenoOne()),StockGoods::getTypenoOne,stockGoods.getTypenoOne());//规格1
-			lambdaQueryWrapper.ge(Func.isNotEmpty(stockGoods.getCreateStartTime()),StockGoods::getCreateTime,stockGoods.getCreateStartTime());//制单日期开始
-			lambdaQueryWrapper.le(Func.isNotEmpty(stockGoods.getCreateEndTime()),StockGoods::getCreateTime,stockGoods.getCreateEndTime());//制单日期结束
-			lambdaQueryWrapper.or();
-			lambdaQueryWrapper.in(Func.isNotEmpty(list),StockGoods::getGoodsId,list);
+			lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getStorageId()), StockGoods::getStorageId, stockGoods.getStorageId());
+			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getBrandItem()), StockGoods::getBrandItem, stockGoods.getBrandItem());//花纹
+			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getPlaceProduction()), StockGoods::getPlaceProduction, stockGoods.getPlaceProduction());//产地
+			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getBrand()), StockGoods::getBrand, stockGoods.getBrand());//品牌
+			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getTypeno()), StockGoods::getTypeno, stockGoods.getTypeno());//规格
+			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getTypenoOne()), StockGoods::getTypenoOne, stockGoods.getTypenoOne());//规格1
+			lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getTypenoTwo()), StockGoods::getTypenoTwo, stockGoods.getTypenoTwo());//速级
+			lambdaQueryWrapper.ge(Func.isNotEmpty(stockGoods.getCreateStartTime()), StockGoods::getCreateTime, stockGoods.getCreateStartTime());//制单日期开始
+			lambdaQueryWrapper.le(Func.isNotEmpty(stockGoods.getCreateEndTime()), StockGoods::getCreateTime, stockGoods.getCreateEndTime());//制单日期结束
+			lambdaQueryWrapper.in(Func.isNotEmpty(list), StockGoods::getGoodsId, list);
 			IPage<StockGoods> pages = stockGoodsService.page(Condition.getPage(query), lambdaQueryWrapper);
-			if (CollectionUtils.isNotEmpty(pages.getRecords())){
-				pages.getRecords().stream().forEach(item ->{
+			if (CollectionUtils.isNotEmpty(pages.getRecords())) {
+				pages.getRecords().forEach(item -> {
 					//获取商品信息
 					R<GoodsDescVO> goodsMessage = goodsDescClient.selectGoodsMessage(item.getGoodsId());
-					if (goodsMessage.isSuccess() && goodsMessage.getData() != null){
-						if (StringUtils.isNotBlank(goodsMessage.getData().getBrand())){
+					if (goodsMessage.isSuccess() && goodsMessage.getData() != null) {
+						if (StringUtils.isNotBlank(goodsMessage.getData().getBrand())) {
 							item.setBrand(goodsMessage.getData().getBrand());
 						}
-						if (StringUtils.isNotBlank(goodsMessage.getData().getBrandItem())){
+						if (StringUtils.isNotBlank(goodsMessage.getData().getBrandItem())) {
 							item.setBrandItem(goodsMessage.getData().getBrandItem());
 						}
-						if (StringUtils.isNotBlank(goodsMessage.getData().getTypeno())){
+						if (StringUtils.isNotBlank(goodsMessage.getData().getTypeno())) {
 							item.setTypeno(goodsMessage.getData().getTypeno());
 						}
 						item.setCname(goodsMessage.getData().getCname());
@@ -145,29 +153,28 @@ public class StockGoodsController extends BladeController {
 					}
 					//获取客户信息
 					R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getCorpId());
-					if (corpMessage.isSuccess() && corpMessage.getData() != null){
+					if (corpMessage.isSuccess() && corpMessage.getData() != null) {
 						item.setCorpName(corpMessage.getData().getCname());
 					}
 					//获取用户信息
-					if (item.getCreateUser() != null){
+					if (item.getCreateUser() != null) {
 						R<User> createUser = userClient.userInfoById(item.getCreateUser());
-						if (createUser.isSuccess() && createUser.getData() != null){
+						if (createUser.isSuccess() && createUser.getData() != null) {
 							item.setCreateUserName(createUser.getData().getName());
 						}
 					}
 					//获取仓库信息
-					if (item.getStorageId() != null){
+					if (item.getStorageId() != null) {
 						//仓库信息
 						StorageDesc storageDesc = iStorageClient.findById(item.getStorageId());
-						if(storageDesc!=null)
-						{
+						if (storageDesc != null) {
 							item.setStockName(storageDesc.getCname());
 						}
 
 					}
-					if (item.getUpdateUser() != null){
+					if (item.getUpdateUser() != null) {
 						R<User> updateUser = userClient.userInfoById(item.getUpdateUser());
-						if (updateUser.isSuccess() && updateUser.getData() != null){
+						if (updateUser.isSuccess() && updateUser.getData() != null) {
 							item.setUpdateUserName(updateUser.getData().getName());
 						}
 					}
@@ -176,34 +183,29 @@ public class StockGoodsController extends BladeController {
 			return R.data(pages);
 		}
 		//区分箱号查询
-		else if(stockGoods.getIsCntrON()==1)
-		{
-			Long goodId=null;
-			if(Func.isNotEmpty(stockGoods.getCname()))
-			{
+		else if (stockGoods.getIsCntrON() == 1) {
+			Long goodId = null;
+			if (Func.isNotEmpty(stockGoods.getCname())) {
 				List<Long> longs = goodsDescClient.getGoodId(null, stockGoods.getCname(), null, null, null, null, null);
-				if(CollectionUtils.isNotEmpty(longs))
-				{
-					goodId=longs.get(0).longValue();
+				if (CollectionUtils.isNotEmpty(longs)) {
+					goodId = longs.get(0);
 				}
-
 			}
 
-			IPage<StockGoods> iPage = stockGoodsService.groupByStock(Condition.getPage(query), AuthUtil.getTenantId(),stockGoods.getContractNumber(),stockGoods.getBillNo(),goodId,stockGoods.getCreateStartTime(),stockGoods.getCreateEndTime());
+			IPage<StockGoods> iPage = stockGoodsService.groupByStock(Condition.getPage(query), AuthUtil.getTenantId(), stockGoods.getContractNumber(), stockGoods.getBillNo(), goodId, stockGoods.getCreateStartTime(), stockGoods.getCreateEndTime());
 			List<StockGoods> records = iPage.getRecords();
-			if(CollectionUtils.isNotEmpty(records))
-			{
-				records.forEach(item->{
+			if (CollectionUtils.isNotEmpty(records)) {
+				records.forEach(item -> {
 					//获取商品信息
 					R<GoodsDescVO> goodsMessage = goodsDescClient.selectGoodsMessage(item.getGoodsId());
-					if (goodsMessage.isSuccess() && goodsMessage.getData() != null){
-						if (StringUtils.isNotBlank(goodsMessage.getData().getBrand())){
+					if (goodsMessage.isSuccess() && goodsMessage.getData() != null) {
+						if (StringUtils.isNotBlank(goodsMessage.getData().getBrand())) {
 							item.setBrand(goodsMessage.getData().getBrand());
 						}
-						if (StringUtils.isNotBlank(goodsMessage.getData().getBrandItem())){
+						if (StringUtils.isNotBlank(goodsMessage.getData().getBrandItem())) {
 							item.setBrandItem(goodsMessage.getData().getBrandItem());
 						}
-						if (StringUtils.isNotBlank(goodsMessage.getData().getTypeno())){
+						if (StringUtils.isNotBlank(goodsMessage.getData().getTypeno())) {
 							item.setTypeno(goodsMessage.getData().getTypeno());
 						}
 						item.setCname(goodsMessage.getData().getCname());
@@ -211,29 +213,28 @@ public class StockGoodsController extends BladeController {
 					}
 					//获取客户信息
 					R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getCorpId());
-					if (corpMessage.isSuccess() && corpMessage.getData() != null){
+					if (corpMessage.isSuccess() && corpMessage.getData() != null) {
 						item.setCorpName(corpMessage.getData().getCname());
 					}
 					//获取用户信息
-					if (item.getCreateUser() != null){
+					if (item.getCreateUser() != null) {
 						R<User> createUser = userClient.userInfoById(item.getCreateUser());
-						if (createUser.isSuccess() && createUser.getData() != null){
+						if (createUser.isSuccess() && createUser.getData() != null) {
 							item.setCreateUserName(createUser.getData().getName());
 						}
 					}
 					//获取仓库信息
-					if (item.getStorageId() != null){
+					if (item.getStorageId() != null) {
 						//仓库信息
 						StorageDesc storageDesc = iStorageClient.findById(item.getStorageId());
-						if(storageDesc!=null)
-						{
+						if (storageDesc != null) {
 							item.setStockName(storageDesc.getCname());
 						}
 
 					}
-					if (item.getUpdateUser() != null){
+					if (item.getUpdateUser() != null) {
 						R<User> updateUser = userClient.userInfoById(item.getUpdateUser());
-						if (updateUser.isSuccess() && updateUser.getData() != null){
+						if (updateUser.isSuccess() && updateUser.getData() != null) {
 							item.setUpdateUserName(updateUser.getData().getName());
 						}
 					}
@@ -242,13 +243,9 @@ public class StockGoodsController extends BladeController {
 			}
 			iPage.setRecords(records);
 			return R.data(iPage);
-		}
-		else
-		{
+		} else {
 			return R.fail("操作失败");
 		}
-
-
 	}
 
 	/**
@@ -302,6 +299,7 @@ public class StockGoodsController extends BladeController {
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
 		return R.status(stockGoodsService.removeByIds(Func.toLongList(ids)));
 	}
+
 	/**
 	 * 导出模板
 	 */
@@ -312,6 +310,7 @@ public class StockGoodsController extends BladeController {
 		List<StockGoodsExcel> list = new ArrayList<>();
 		ExcelUtil.export(response, "导入模板-库存更新", "库存导入数据表", list, StockGoodsExcel.class);
 	}
+
 	/**
 	 * 导入库存
 	 */
@@ -320,11 +319,12 @@ public class StockGoodsController extends BladeController {
 	@ApiOperation(value = "导入库存", notes = "传入excel")
 	public R importUser(@RequestParam("file") MultipartFile file) {
 		List<StockGoodsExcel> excelList = ExcelUtil.read(file, StockGoodsExcel.class);
-		if (CollectionUtils.isEmpty(excelList)){
+		if (CollectionUtils.isEmpty(excelList)) {
 			throw new SecurityException("数据不能为空");
 		}
-		return stockGoodsService.importUser(excelList,false);
+		return stockGoodsService.importUser(excelList, false);
 	}
+
 	/**
 	 * 详情
 	 */
@@ -332,17 +332,17 @@ public class StockGoodsController extends BladeController {
 	@ApiOperationSupport(order = 13)
 	@ApiOperation(value = "详情", notes = "传入stockGoods")
 	public R<StockGoods> message(StockGoods stockGoods) {
-		if (stockGoods.getGoodsId() == null){
+		if (stockGoods.getGoodsId() == null) {
 			throw new SecurityException("缺少必要的参数");
 		}
 		LambdaQueryWrapper<StockGoods> lambdaQueryWrapper = new LambdaQueryWrapper<>();
-		lambdaQueryWrapper.eq(StockGoods::getGoodsId,stockGoods.getGoodsId());//商品id
-		lambdaQueryWrapper.eq(StockGoods::getTenantId,SecureUtil.getTenantId());//租户id
-		lambdaQueryWrapper.eq(StockGoods::getTradeType,stockGoods.getTradeType());//贸易类型
-		lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getStorageId()),StockGoods::getStorageId,stockGoods.getStorageId());
-		lambdaQueryWrapper.isNull(Func.isEmpty(stockGoods.getStorageId()),StockGoods::getStorageId);
-		lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getLotNo()),StockGoods::getLotNo,stockGoods.getLotNo());
-		lambdaQueryWrapper.isNull(Func.isEmpty(stockGoods.getLotNo()),StockGoods::getLotNo);
+		lambdaQueryWrapper.eq(StockGoods::getGoodsId, stockGoods.getGoodsId());//商品id
+		lambdaQueryWrapper.eq(StockGoods::getTenantId, SecureUtil.getTenantId());//租户id
+		lambdaQueryWrapper.eq(StockGoods::getTradeType, stockGoods.getTradeType());//贸易类型
+		lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getStorageId()), StockGoods::getStorageId, stockGoods.getStorageId());
+		lambdaQueryWrapper.isNull(Func.isEmpty(stockGoods.getStorageId()), StockGoods::getStorageId);
+		lambdaQueryWrapper.eq(Func.isNotEmpty(stockGoods.getLotNo()), StockGoods::getLotNo, stockGoods.getLotNo());
+		lambdaQueryWrapper.isNull(Func.isEmpty(stockGoods.getLotNo()), StockGoods::getLotNo);
 		StockGoods detail = stockGoodsService.getOne(lambdaQueryWrapper);
 		return R.data(detail);
 	}

+ 37 - 36
blade-service/trade-finance/src/main/java/org/springblade/finance/controller/AccController.java

@@ -18,38 +18,34 @@ package org.springblade.finance.controller;
 
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
-import org.springblade.client.entity.CorpsDesc;
-import org.springblade.client.entity.FeesDesc;
-import org.springblade.core.secure.utils.AuthUtil;
-import org.springblade.finance.excel.FeeStatisticsExcel;
-import org.springblade.finance.vo.AccVO;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
-import org.springblade.core.excel.util.ExcelUtil;
-
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
-
+import org.springblade.client.entity.CorpsDesc;
+import org.springblade.client.entity.FeesDesc;
 import org.springblade.client.feign.ICorpsDescClient;
 import org.springblade.client.feign.IFeesDescClient;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.finance.excel.FeeStatisticsExcel;
 import org.springblade.finance.service.IAccService;
-import org.springblade.purchase.sales.entity.Order;
+import org.springblade.finance.vo.AccVO;
+import org.springblade.finance.vojo.Acc;
 import org.springblade.system.user.feign.IUserClient;
 import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.finance.vojo.Acc;
-
-import org.springblade.core.boot.ctrl.BladeController;
 
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -69,7 +65,10 @@ public class AccController extends BladeController {
 
 	private final IFeesDescClient iFeesDescClient;
 
-	private final ICorpsDescClient corpsDescClient;//获取客户信息
+	/**
+	 * 获取客户信息
+	 */
+	private final ICorpsDescClient corpsDescClient;
 
 	private final IUserClient iUserClient;
 
@@ -134,16 +133,16 @@ public class AccController extends BladeController {
 			//录入人
 			e.setCreateUserName(iUserClient.userInfoById(e.getCreateUser()).getData().getRealName());
 			//费用名称
-			if (StringUtils.isNotBlank(e.getCostType())){
+			if (StringUtils.isNotBlank(e.getCostType())) {
 				R<FeesDesc> detail = iFeesDescClient.detail(Long.valueOf(e.getCostType()));
-				if (detail.isSuccess() && detail.getData() != null){
+				if (detail.isSuccess() && detail.getData() != null) {
 					e.setItemName(detail.getData().getCname());
 				}
 			}
 			//客户名称
-			if (e.getCorpId() != null){
+			if (e.getCorpId() != null) {
 				R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(e.getCorpId());
-				if (corpMessage.isSuccess() && corpMessage.getData() != null){
+				if (corpMessage.isSuccess() && corpMessage.getData() != null) {
 					e.setCorpName(corpMessage.getData().getCname());
 				}
 			}
@@ -200,7 +199,7 @@ public class AccController extends BladeController {
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
-		return R.status(accService.removeByIds(Func.toLongList(ids)));
+		return R.status(accService.removeAcc(Func.toLongList(ids)));
 	}
 
 	@PostMapping("/getAccListByCondition")
@@ -222,15 +221,16 @@ public class AccController extends BladeController {
 		return R.data(list);
 
 	}
+
 	@GetMapping("/getAccMessage")
 	@ApiOperationSupport(order = 9)
 	@ApiOperation(value = "统计收付费明细", notes = "传入ids")
 	public R getAccMessage(Acc acc, Query query) {
-		if (StringUtils.isBlank(acc.getTradeType())){
+		if (StringUtils.isBlank(acc.getTradeType())) {
 			throw new SecurityException("请选择查询的类型");
 		}
 		//默认为付费
-		if (StringUtils.isBlank(acc.getDc())){
+		if (StringUtils.isBlank(acc.getDc())) {
 			acc.setDc("c");
 		}
 		LambdaQueryWrapper<Acc> accLambdaQueryWrapper = new LambdaQueryWrapper<>();
@@ -238,14 +238,14 @@ public class AccController extends BladeController {
 			.eq(Acc::getTenantId, AuthUtil.getTenantId())
 			.eq(Acc::getIsDeleted, 0)
 			.eq(Acc::getTradeType, acc.getTradeType())
-			.like(StringUtils.isNotBlank(acc.getAccSysNo()),Acc::getAccSysNo,acc.getAccSysNo())
-			.eq(acc.getCorpId() != null,Acc::getCorpId,acc.getCorpId())
-			.eq(Acc::getDc,acc.getDc())
+			.like(StringUtils.isNotBlank(acc.getAccSysNo()), Acc::getAccSysNo, acc.getAccSysNo())
+			.eq(acc.getCorpId() != null, Acc::getCorpId, acc.getCorpId())
+			.eq(Acc::getDc, acc.getDc())
 			.ge(StringUtils.isNotBlank(acc.getAccDateStart()), Acc::getAccDate, acc.getAccDateStart())//订单日期开始
 			.le(StringUtils.isNotBlank(acc.getAccDateEnd()), Acc::getAccDate, acc.getAccDateEnd());//订单日期结束
 
 		IPage<Acc> page = accService.page(Condition.getPage(query), accLambdaQueryWrapper);
-		if (CollectionUtils.isNotEmpty(page.getRecords())){
+		if (CollectionUtils.isNotEmpty(page.getRecords())) {
 			page.getRecords().forEach(e -> {
 				//客户名称
 				e.setCorpName(corpsDescClient.getCorpMessage(e.getCorpId()).getData().getCname());
@@ -253,15 +253,16 @@ public class AccController extends BladeController {
 		}
 		return R.data(page);
 	}
+
 	@GetMapping("/exportAccMessage")
 	@ApiOperationSupport(order = 10)
 	@ApiOperation(value = "导出收付费明细", notes = "传入ids")
 	public void exportAccMessage(Acc acc, HttpServletResponse response) {
-		if (StringUtils.isBlank(acc.getTradeType())){
+		if (StringUtils.isBlank(acc.getTradeType())) {
 			throw new SecurityException("请选择查询的类型");
 		}
 		//默认为付费
-		if (StringUtils.isBlank(acc.getDc())){
+		if (StringUtils.isBlank(acc.getDc())) {
 			acc.setDc("c");
 		}
 		List<FeeStatisticsExcel> feeStatisticsExcelArrayList = new ArrayList<>();
@@ -270,20 +271,20 @@ public class AccController extends BladeController {
 			.eq(Acc::getTenantId, AuthUtil.getTenantId())
 			.eq(Acc::getIsDeleted, 0)
 			.eq(Acc::getTradeType, acc.getTradeType())
-			.like(StringUtils.isNotBlank(acc.getAccSysNo()),Acc::getAccSysNo,acc.getAccSysNo())
-			.eq(acc.getCorpId()!= null,Acc::getCorpId,acc.getCorpId())
-			.eq(Acc::getDc,acc.getDc())
+			.like(StringUtils.isNotBlank(acc.getAccSysNo()), Acc::getAccSysNo, acc.getAccSysNo())
+			.eq(acc.getCorpId() != null, Acc::getCorpId, acc.getCorpId())
+			.eq(Acc::getDc, acc.getDc())
 			.ge(StringUtils.isNotBlank(acc.getAccDateStart()), Acc::getAccDate, acc.getAccDateStart())//订单日期开始
 			.le(StringUtils.isNotBlank(acc.getAccDateEnd()), Acc::getAccDate, acc.getAccDateEnd());//订单日期结束
 
 		List<Acc> list = accService.list(accLambdaQueryWrapper);
-		if (CollectionUtils.isNotEmpty(list)){
+		if (CollectionUtils.isNotEmpty(list)) {
 			list.forEach(e -> {
 				//客户名称
 				e.setCorpName(corpsDescClient.getCorpMessage(e.getCorpId()).getData().getCname());
-				if (StringUtils.isNotBlank(e.getDc()) || e.getDc().equals("d")){
+				if (StringUtils.isNotBlank(e.getDc()) || "d".equals(e.getDc())) {
 					e.setDc("收");
-				}else if (StringUtils.isNotBlank(e.getDc()) || e.getDc().equals("c")){
+				} else if (StringUtils.isNotBlank(e.getDc()) || "c".equals(e.getDc())) {
 					e.setDc("付");
 				}
 			});

+ 1 - 1
blade-service/trade-finance/src/main/java/org/springblade/finance/controller/ItemsController.java

@@ -119,7 +119,7 @@ public class ItemsController extends BladeController {
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
-		return R.status(itemsService.removeByIds(Func.toLongList(ids)));
+		return R.status(itemsService.removeItems(Func.toLongList(ids)));
 	}
 
 

+ 83 - 104
blade-service/trade-finance/src/main/java/org/springblade/finance/controller/SettlementController.java

@@ -166,28 +166,26 @@ public class SettlementController extends BladeController {
 	@ApiOperationSupport(order = 2)
 	@ApiOperation(value = "分页", notes = "传入settlement")
 	public R<IPage<Settlement>> list(Settlement settlement, Query query) {
-        LambdaQueryWrapper<Settlement> settlementLambdaQueryWrapper=new LambdaQueryWrapper<>();
-		settlementLambdaQueryWrapper.between(StringUtils.isNotBlank(settlement.getSettlementStartDate())&&StringUtils.isNotBlank(settlement.getSettlementEndDate()),Settlement::getSettlementDate,settlement.getSettlementStartDate(),settlement.getSettlementEndDate());
-		settlementLambdaQueryWrapper.between(StringUtils.isNotBlank(settlement.getCreateStartDate())&&StringUtils.isNotBlank(settlement.getCreateEndDate()),Settlement::getCreateTime,settlement.getCreateStartDate(),settlement.getCreateEndDate());
-		settlementLambdaQueryWrapper.like(StringUtils.isNotBlank(settlement.getSrcOrderno()),Settlement::getSrcOrderno,settlement.getSrcOrderno());
-		settlementLambdaQueryWrapper.like(StringUtils.isNotBlank(settlement.getBillNo()),Settlement::getBillNo,settlement.getBillNo());
-		settlementLambdaQueryWrapper.like(StringUtils.isNotBlank(settlement.getRemark()),Settlement::getRemark,settlement.getRemark());
-		settlementLambdaQueryWrapper.like(StringUtils.isNotBlank(settlement.getAccountName()),Settlement::getAccountName,settlement.getAccountName());
-		settlementLambdaQueryWrapper.like(settlement.getCorpId()!=null,Settlement::getCorpId,settlement.getCorpId());
-		settlementLambdaQueryWrapper.eq(StringUtils.isNotBlank(settlement.getFinanceStatus()),Settlement::getFinanceStatus,settlement.getFinanceStatus());
-		settlementLambdaQueryWrapper.eq(StringUtils.isNotBlank(settlement.getCheckStatus()),Settlement::getCheckStatus,settlement.getCheckStatus());
-		settlementLambdaQueryWrapper.eq(StringUtils.isNotBlank(settlement.getBillType()),Settlement::getBillType,settlement.getBillType());
+		LambdaQueryWrapper<Settlement> settlementLambdaQueryWrapper = new LambdaQueryWrapper<>();
+		settlementLambdaQueryWrapper.between(StringUtils.isNotBlank(settlement.getSettlementStartDate()) && StringUtils.isNotBlank(settlement.getSettlementEndDate()), Settlement::getSettlementDate, settlement.getSettlementStartDate(), settlement.getSettlementEndDate());
+		settlementLambdaQueryWrapper.between(StringUtils.isNotBlank(settlement.getCreateStartDate()) && StringUtils.isNotBlank(settlement.getCreateEndDate()), Settlement::getCreateTime, settlement.getCreateStartDate(), settlement.getCreateEndDate());
+		settlementLambdaQueryWrapper.like(StringUtils.isNotBlank(settlement.getSrcOrderno()), Settlement::getSrcOrderno, settlement.getSrcOrderno());
+		settlementLambdaQueryWrapper.like(StringUtils.isNotBlank(settlement.getBillNo()), Settlement::getBillNo, settlement.getBillNo());
+		settlementLambdaQueryWrapper.like(StringUtils.isNotBlank(settlement.getRemark()), Settlement::getRemark, settlement.getRemark());
+		settlementLambdaQueryWrapper.like(StringUtils.isNotBlank(settlement.getAccountName()), Settlement::getAccountName, settlement.getAccountName());
+		settlementLambdaQueryWrapper.like(settlement.getCorpId() != null, Settlement::getCorpId, settlement.getCorpId());
+		settlementLambdaQueryWrapper.eq(StringUtils.isNotBlank(settlement.getFinanceStatus()), Settlement::getFinanceStatus, settlement.getFinanceStatus());
+		settlementLambdaQueryWrapper.eq(StringUtils.isNotBlank(settlement.getCheckStatus()), Settlement::getCheckStatus, settlement.getCheckStatus());
+		settlementLambdaQueryWrapper.eq(StringUtils.isNotBlank(settlement.getBillType()), Settlement::getBillType, settlement.getBillType());
 		settlementLambdaQueryWrapper.eq(Settlement::getTenantId, AuthUtil.getTenantId());
 		settlementLambdaQueryWrapper.eq(Settlement::getIsDeleted, 0);
 		settlementLambdaQueryWrapper.orderByDesc(Settlement::getCreateTime);
 		IPage<Settlement> pages = settlementService.page(Condition.getPage(query), settlementLambdaQueryWrapper);
 		List<Settlement> settlementList = pages.getRecords();
-		if(CollectionUtils.isNotEmpty(settlementList))
-		{
-			settlementList.forEach(e->{
+		if (CollectionUtils.isNotEmpty(settlementList)) {
+			settlementList.forEach(e -> {
 				R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(e.getCorpId());
-				if(corpMessage.getData()!=null)
-				{
+				if (corpMessage.getData() != null) {
 					e.setCorpName(corpMessage.getData().getCname());
 				}
 			});
@@ -208,16 +206,14 @@ public class SettlementController extends BladeController {
 
 	@PostMapping("modify")
 	@ApiOperation(value = "修改新增收付款信息", notes = "传入修改新增收付款信息对象")
-	public R modify(@RequestBody SettlementDTO dto)
-	{
+	public R modify(@RequestBody SettlementDTO dto) {
 		Settlement modify = settlementService.modify(dto);
 		return R.data(modify);
 	}
 
 	@PostMapping("cancelModify")
 	@ApiOperation(value = "撤销结算", notes = "撤销结算")
-	public R cancelModify(@RequestBody SettlementDTO dto)
-	{
+	public R cancelModify(@RequestBody SettlementDTO dto) {
 
 		Settlement modify = settlementService.cancelModify(dto);
 		return R.data(modify);
@@ -225,21 +221,20 @@ public class SettlementController extends BladeController {
 
 	@PostMapping("saveOrEdit")
 	@ApiOperation(value = "保存收付款信息", notes = "保存收付款信息")
-	public R saveOrEdit(@RequestBody SettlementDTO dto)
-	{
+	public R saveOrEdit(@RequestBody SettlementDTO dto) {
 		return R.data(settlementService.saveOrEdit(dto));
 	}
 
 	/**
 	 * 新增 结算表
-	@PostMapping("/save")
-	@ApiOperationSupport(order = 4)
-	@ApiOperation(value = "新增", notes = "传入settlement")
-	public R save(@Valid @RequestBody Settlement settlement) {
-		return R.status(settlementService.save(settlement));
-	}
-
-	*//**
+	 @PostMapping("/save")
+	 @ApiOperationSupport(order = 4)
+	 @ApiOperation(value = "新增", notes = "传入settlement")
+	 public R save(@Valid @RequestBody Settlement settlement) {
+	 return R.status(settlementService.save(settlement));
+	 }
+
+	 *//**
 	 * 修改 结算表
 	 *//*
 	@PostMapping("/update")
@@ -256,7 +251,7 @@ public class SettlementController extends BladeController {
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入settlement")
 	public R submit(@Valid @RequestBody Settlement settlement) {
-		 settlementService.saveOrUpdate(settlement);
+		settlementService.saveOrUpdate(settlement);
 		return R.data(settlement);
 	}
 
@@ -268,55 +263,49 @@ public class SettlementController extends BladeController {
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
 	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
-		return R.status(settlementService.removeByIds(Func.toLongList(ids)));
+		return R.status(settlementService.removeSettlement(Func.toLongList(ids)));
 	}
 
 	/**
 	 * 申请货款(申请/付费)
-	 * */
+	 */
 	@PostMapping("/apply")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "请货款(收费/付费)", notes = "传入Finance_items")
 	public R apply(@RequestBody ApplyDTO dto) throws Exception {
-          if(CollectionUtils.isEmpty(dto.getItemsList()))
-          {
-          	throw new SecurityException("传入数据不能为空");
-		  }
-          return R.data(settlementService.apply(dto.getItemsList(),dto.getBillType(),dto.getUrl(),dto.getPageStatus(),dto.getPageLabel(),dto.getCheckType()));
+		if (CollectionUtils.isEmpty(dto.getItemsList())) {
+			throw new SecurityException("传入数据不能为空");
+		}
+		return R.data(settlementService.apply(dto.getItemsList(), dto.getBillType(), dto.getUrl(), dto.getPageStatus(), dto.getPageLabel(), dto.getCheckType()));
 	}
 
 	/**
 	 * 批量申请货款(申请/付费)
-	 * */
+	 */
 	@PostMapping("/applyList")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "批量财务申请", notes = "传入Finance_items")
-	public R applyList(@RequestBody ApplyDTO dto)
-	{
-		if(CollectionUtils.isEmpty(dto.getItemsList()))
-		{
+	public R applyList(@RequestBody ApplyDTO dto) {
+		if (CollectionUtils.isEmpty(dto.getItemsList())) {
 			throw new SecurityException("传入数据不能为空");
 		}
-		settlementService.applyList(dto.getItemsList(),dto.getBillType(),dto.getUrl(),dto.getPageStatus(),dto.getPageLabel(),dto.getCheckType());
+		settlementService.applyList(dto.getItemsList(), dto.getBillType(), dto.getUrl(), dto.getPageStatus(), dto.getPageLabel(), dto.getCheckType());
 		return R.success("操作成功");
 	}
 
 
 	/**
 	 * 付款申请-清核
-	 * */
+	 */
 	@PostMapping("/check")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "付款申请-清核", notes = "传入付款申请对象")
-	public R check (@RequestBody Settlement settlement) throws Exception {
+	public R check(@RequestBody Settlement settlement) throws Exception {
 		settlementService.check(settlement);
 		R<Settlement> detail = this.detail(settlement);
-		if(detail.getData()!=null)
-		{
+		if (detail.getData() != null) {
 			return R.data(detail.getData());
-		}
-		else
-		{
+		} else {
 			return R.data(null);
 		}
 
@@ -325,60 +314,60 @@ public class SettlementController extends BladeController {
 
 	/**
 	 * 销售-收款结算
-	 * */
+	 */
 	@PostMapping("/paymentApply")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "付销售-收款结算-生成-销售收费账单", notes = "传入销售申请对象")
-	public R paymentApply (@RequestBody ApplyDTO dto)
-	{
-		settlementService.paymentApply(dto.getItemsList(),dto.getBillType(),dto.getBelongCompany());
+	public R paymentApply(@RequestBody ApplyDTO dto) {
+		settlementService.paymentApply(dto.getItemsList(), dto.getBillType(), dto.getBelongCompany());
 		return R.success("操作成功");
 	}
 
+	@PostMapping("/getById")
+	public R<Settlement> getById(@RequestParam Long id) {
+		return R.data(settlementService.getById(id));
+	}
+
 	/**
 	 * 审核通过
-	 * */
+	 */
 	@PostMapping("/passCheck")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "Feign-审核通过", notes = "传入财务id")
-	public R passCheck (@ApiParam(value = "财务主表id", required = true) @RequestParam Long id)
-	{
+	public R passCheck(@ApiParam(value = "财务主表id", required = true) @RequestParam Long id) {
 		settlementService.passCheck(id);
 		return R.success("操作成功");
 	}
 
 	/**
 	 * 审核不通过
-	 * */
+	 */
 	@PostMapping("/passCancel")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "Feign-审核不通过", notes = "传入财务id")
-	public R passCancel (@ApiParam(value = "财务主表id", required = true) @RequestParam Long id)
-	{
+	public R passCancel(@ApiParam(value = "财务主表id", required = true) @RequestParam Long id) {
 		settlementService.passCancel(id);
 		return R.success("操作成功");
 	}
 
 	@GetMapping("/getFinanceAcc")
-	public R<BigDecimal> getFinanceAcc(@RequestParam(value = "accSysNo",required = true)String accSysNo,@RequestParam(value = "tradeType",required = true)String tradeType)
-	{
-		LambdaQueryWrapper<Acc> accLambdaQueryWrapper=new LambdaQueryWrapper<>();
+	public R<BigDecimal> getFinanceAcc(@RequestParam(value = "accSysNo", required = true) String accSysNo, @RequestParam(value = "tradeType", required = true) String tradeType) {
+		LambdaQueryWrapper<Acc> accLambdaQueryWrapper = new LambdaQueryWrapper<>();
 		accLambdaQueryWrapper
-			.eq(Acc::getAccSysNo,accSysNo)
-			.eq(Acc::getBillType,"收费")
-			 .eq(Acc::getTradeType,tradeType)
-			.eq(Acc::getTenantId,AuthUtil.getTenantId())
-			.eq(Acc::getIsDeleted,0);
+			.eq(Acc::getAccSysNo, accSysNo)
+			.eq(Acc::getBillType, "收费")
+			.eq(Acc::getTradeType, tradeType)
+			.eq(Acc::getTenantId, AuthUtil.getTenantId())
+			.eq(Acc::getIsDeleted, 0);
 		List<Acc> accList = accService.list(accLambdaQueryWrapper);
-		return R.data(accList.stream().filter(e->e.getSettlementAmount()!=null).reduce(BigDecimal.ZERO,(x,y) ->{
+		return R.data(accList.stream().filter(e -> e.getSettlementAmount() != null).reduce(BigDecimal.ZERO, (x, y) -> {
 			return x.add(y.getSettlementAmount().multiply(y.getExchangeRate()));
-		},BigDecimal::add));
+		}, BigDecimal::add));
 	}
 
 	/**
-	 *
-	 *  发起-进项和销项的请求结算接口
- 	 */
+	 * 发起-进项和销项的请求结算接口
+	 */
 	@PostMapping("putFund")
 	public R putFund(@RequestBody Settlement settlement) throws Exception {
 		settlementService.putFund(settlement);
@@ -386,8 +375,7 @@ public class SettlementController extends BladeController {
 	}
 
 	/**
-	 *
-	 *  撤回-进项和销项的请求结算接口
+	 * 撤回-进项和销项的请求结算接口
 	 */
 	@PostMapping("cancelFund")
 	public R cancelFund(@RequestBody Settlement settlement) throws Exception {
@@ -396,70 +384,61 @@ public class SettlementController extends BladeController {
 	}
 
 	@PostMapping("createInvoiceItem")
-	public R createInvoiceItem(@RequestBody Settlement settlement)
-	{
+	public R createInvoiceItem(@RequestBody Settlement settlement) {
 		settlementService.createInvoiceItem(settlement);
 		return R.success("操作成功");
 	}
 
 	@GetMapping("getProjectList")
-	public R<String> getProjectList(@RequestParam(value = "search",required = true)String search,
-									@RequestParam(value = "accountName",required = true)String accountName
-									)
-	{
+	public R<String> getProjectList(@RequestParam(value = "search", required = true) String search,
+									@RequestParam(value = "accountName", required = true) String accountName
+	) {
 		return R.data(settlementService.getProjectList(search, accountName));
 	}
+
 	//根据订单号获取账单
 	@GetMapping("/getFinanceAccList")
-	public List<Acc> getFinanceAccList(@RequestParam(value = "accSysNo",required = true)String accSysNo,@RequestParam(value = "tradeType",required = true)String tradeType)
-	{
-		LambdaQueryWrapper<Acc> accLambdaQueryWrapper=new LambdaQueryWrapper<>();
+	public List<Acc> getFinanceAccList(@RequestParam(value = "accSysNo", required = true) String accSysNo, @RequestParam(value = "tradeType", required = true) String tradeType) {
+		LambdaQueryWrapper<Acc> accLambdaQueryWrapper = new LambdaQueryWrapper<>();
 		accLambdaQueryWrapper
-			.eq(Acc::getAccSysNo,accSysNo)
-			.eq(Acc::getBillType,"收费")
-			.eq(Acc::getTradeType,tradeType)
-			.eq(Acc::getTenantId,AuthUtil.getTenantId())
-			.eq(Acc::getIsDeleted,0);
+			.eq(Acc::getAccSysNo, accSysNo)
+			.eq(Acc::getBillType, "收费")
+			.eq(Acc::getTradeType, tradeType)
+			.eq(Acc::getTenantId, AuthUtil.getTenantId())
+			.eq(Acc::getIsDeleted, 0);
 		return accService.list(accLambdaQueryWrapper);
 	}
 
 	//获取当前租户对应的账套信息
 	@GetMapping("getAccountList")
-	public R<List<?>>  getAccountList() throws Exception
-	{
+	public R<List<?>> getAccountList() throws Exception {
 		List<JdyTool.AccountGroup> accountList = settlementService.getAccountList();
 		return R.data(accountList);
 	}
 
 	//获取当前租户账套对应的供应商列表
 	@GetMapping("getSupplierList")
-	public R<List<JdyTool.Supplier>>  getSupplierList(@RequestParam(value = "accountName",required = true)String accountName,
-													  @RequestParam(value = "search",required = false)String search) throws Exception
-	{
+	public R<List<JdyTool.Supplier>> getSupplierList(@RequestParam(value = "accountName", required = true) String accountName,
+													 @RequestParam(value = "search", required = false) String search) throws Exception {
 		List<JdyTool.Supplier> supplierList = settlementService.getSupplierList(accountName, search);
 		return R.data(supplierList);
 	}
 
 	//获取当前租户账套对应的客户列表
 	@GetMapping("getCustomerList")
-	public R<List<JdyTool.Customer>> getCustomerList (@RequestParam(value = "accountName",required = true)String accountName,
-									   @RequestParam(value = "search",required = false)String search) throws Exception
-	{
+	public R<List<JdyTool.Customer>> getCustomerList(@RequestParam(value = "accountName", required = true) String accountName,
+													 @RequestParam(value = "search", required = false) String search) throws Exception {
 		List<JdyTool.Customer> customersList = settlementService.getCustomerList(accountName, search);
 		return R.data(customersList);
 	}
 
 	//获取当前租户账套对应的职员列表
 	@GetMapping("getEmployeeList")
-	public R<List<JdyTool.Employee>> getEmployeeList(@RequestParam(value = "accountName",required = true)String accountName,
-	                                              @RequestParam(value = "search",required = false)String search) throws Exception
-	{
+	public R<List<JdyTool.Employee>> getEmployeeList(@RequestParam(value = "accountName", required = true) String accountName,
+													 @RequestParam(value = "search", required = false) String search) throws Exception {
 		List<JdyTool.Employee> employeeList = settlementService.getEmployeeList(accountName, search);
 		return R.data(employeeList);
 	}
 
 
-
-
-
 }

+ 5 - 3
blade-service/trade-finance/src/main/java/org/springblade/finance/service/IAccService.java

@@ -16,10 +16,10 @@
  */
 package org.springblade.finance.service;
 
-import org.springblade.finance.vojo.Acc;
-import org.springblade.finance.vo.AccVO;
-import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.finance.vo.AccVO;
+import org.springblade.finance.vojo.Acc;
 
 import java.util.List;
 
@@ -42,4 +42,6 @@ public interface IAccService extends IService<Acc> {
 
 	void submit(List<Acc> acc);
 
+	boolean removeAcc(List<Long> idList);
+
 }

+ 4 - 0
blade-service/trade-finance/src/main/java/org/springblade/finance/service/IItemsService.java

@@ -22,6 +22,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.finance.vojo.Items;
 import org.springblade.finance.vo.ItemsVO;
 
+import java.util.List;
+
 /**
  * 结算明细 服务类
  *
@@ -38,5 +40,7 @@ public interface IItemsService extends IService<Items> {
 	 * @return
 	 */
 	IPage<ItemsVO> selectItemsPage(IPage<ItemsVO> page, ItemsVO items);
+	
+	boolean removeItems(List<Long> idList);
 
 }

+ 13 - 8
blade-service/trade-finance/src/main/java/org/springblade/finance/service/ISettlementService.java

@@ -17,13 +17,13 @@
 package org.springblade.finance.service;
 
 
-import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.finance.dto.SettlementDTO;
 import org.springblade.finance.tool.JdyTool;
+import org.springblade.finance.vo.SettlementVO;
 import org.springblade.finance.vojo.Items;
 import org.springblade.finance.vojo.Settlement;
-import org.springblade.finance.vo.SettlementVO;
 
 import java.util.List;
 
@@ -44,21 +44,26 @@ public interface ISettlementService extends IService<Settlement> {
 	 */
 	IPage<SettlementVO> selectSettlementPage(IPage<SettlementVO> page, SettlementVO settlement);
 
-	/**修改新增收付款信息 */
+	/**
+	 * 修改新增收付款信息
+	 */
 	Settlement modify(SettlementDTO settlementDTO);
-    //取消结算
+
+	//取消结算
 	Settlement cancelModify(SettlementDTO settlementDTO);
 
-	Settlement apply(List<Items> itemsList, String billType,String url,String pageStatus,String pageLabel,String checkType) throws Exception;
+	Settlement apply(List<Items> itemsList, String billType, String url, String pageStatus, String pageLabel, String checkType) throws Exception;
 
-	void applyList(List<Items> itemsList, String billType,String url,String pageStatus,String pageLabel,String checkType);
+	void applyList(List<Items> itemsList, String billType, String url, String pageStatus, String pageLabel, String checkType);
 
 	void check(Settlement settlement);
 
-	void paymentApply(List<Items> itemsList, String billType,String belongCompany);
+	void paymentApply(List<Items> itemsList, String billType, String belongCompany);
 
 	SettlementDTO saveOrEdit(SettlementDTO settlementDTO);
 
+	boolean removeSettlement(List<Long> idList);
+
 	void passCheck(Long settlementId);
 
 	void passCancel(Long settlementId);
@@ -69,7 +74,7 @@ public interface ISettlementService extends IService<Settlement> {
 
 	void createInvoiceItem(Settlement settlement);
 
-	String getProjectList(String search,String accountName);
+	String getProjectList(String search, String accountName);
 
 	List<JdyTool.AccountGroup> getAccountList() throws Exception;
 

+ 64 - 29
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/AccServiceImpl.java

@@ -16,20 +16,25 @@
  */
 package org.springblade.finance.service.impl;
 
-import org.springblade.finance.vojo.Acc;
-import org.springblade.finance.vojo.Items;
-import org.springblade.finance.vojo.Settlement;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import io.seata.spring.annotation.GlobalTransactional;
+import lombok.AllArgsConstructor;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.finance.mapper.AccMapper;
 import org.springblade.finance.mapper.ItemsMapper;
 import org.springblade.finance.mapper.SettlementMapper;
-
-import org.springblade.finance.mapper.AccMapper;
 import org.springblade.finance.service.IAccService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springblade.finance.vo.AccVO;
-import org.springblade.core.secure.utils.AuthUtil;
-import org.springframework.beans.factory.annotation.Autowired;
+import org.springblade.finance.vojo.Acc;
+import org.springblade.finance.vojo.Items;
+import org.springblade.finance.vojo.Settlement;
+import org.springblade.purchase.sales.entity.OrderFees;
+import org.springblade.purchase.sales.entity.OrderItems;
+import org.springblade.purchase.sales.feign.IOrderFeesClient;
+import org.springblade.purchase.sales.feign.IOrderItemsClient;
 import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Date;
@@ -42,12 +47,16 @@ import java.util.List;
  * @since 2021-11-23
  */
 @Service
-public class AccServiceImpl extends ServiceImpl<AccMapper, Acc> implements IAccService
-{
-	@Autowired
-	private SettlementMapper settlementMapper;
-	@Autowired
-	private ItemsMapper itemsMapper;
+@AllArgsConstructor
+public class AccServiceImpl extends ServiceImpl<AccMapper, Acc> implements IAccService {
+
+	private final SettlementMapper settlementMapper;
+
+	private final ItemsMapper itemsMapper;
+
+	private final IOrderItemsClient orderItemsClient;
+
+	private final IOrderFeesClient orderFeesClient;
 
 	@Override
 	public IPage<AccVO> selectAccPage(IPage<AccVO> page, AccVO acc) {
@@ -55,12 +64,10 @@ public class AccServiceImpl extends ServiceImpl<AccMapper, Acc> implements IAccS
 	}
 
 	@Override
-	@Transactional
-	public void submit(List<Acc> acc)
-	{
+	@Transactional(rollbackFor = Exception.class)
+	public void submit(List<Acc> acc) {
 		//生成账单
-		acc.forEach(e->
-		{
+		acc.forEach(e -> {
 			e.setStatus(0);
 			e.setTenantId(AuthUtil.getTenantId());
 			e.setIsDeleted(0);
@@ -71,13 +78,10 @@ public class AccServiceImpl extends ServiceImpl<AccMapper, Acc> implements IAccS
 		});
 
 		//生成结算单
-		Settlement settlement=new Settlement();
-		if(acc.get(0).getBillType().equals("CG"))
-		{
+		Settlement settlement = new Settlement();
+		if ("CG".equals(acc.get(0).getBillType())) {
 			settlement.setBillType("付费");
-		}
-		else if(acc.get(0).getBillType().equals("XS"))
-		{
+		} else if ("XS".equals(acc.get(0).getBillType())) {
 			settlement.setBillType("收费");
 		}
 		settlement.setSrcOrderno(acc.get(0).getAccSysNo());
@@ -89,10 +93,9 @@ public class AccServiceImpl extends ServiceImpl<AccMapper, Acc> implements IAccS
 		settlement.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
 		settlementMapper.insert(settlement);
 		//生成结算单子表
-		acc.forEach(k->
-		{
+		acc.forEach(k -> {
 			//生成结算单子表
-			Items items=new Items();
+			Items items = new Items();
 			items.setPid(settlement.getId());
 			items.setItemId(k.getSrcId());
 			items.setCorpId(k.getCorpId());
@@ -115,8 +118,40 @@ public class AccServiceImpl extends ServiceImpl<AccMapper, Acc> implements IAccS
 			items.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
 			itemsMapper.insert(items);
 		});
+	}
 
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	@GlobalTransactional(rollbackFor = Exception.class)
+	public boolean removeAcc(List<Long> idList) {
+		idList.forEach(id -> {
+			Acc acc = baseMapper.selectById(id);
+			if (acc.getSrcType() == 1) {
+				OrderItems client = orderItemsClient.getById(acc.getSrcFeesId());
+				if (client == null) {
+					throw new SecurityException("未查到原单据的商品明细,无法修改状态");
+				}
+				client.setSubmitPay(0);
+				R submit = orderItemsClient.submit(client);
+				if (!submit.isSuccess()) {
+					throw new SecurityException("修改原单据的商品明细错误");
+				}
+			} else if (acc.getSrcType() == 2) {
+				OrderFees client = orderFeesClient.getById(acc.getSrcFeesId());
+				if (client == null) {
+					throw new SecurityException("未查到原单据的费用明细,无法修改状态");
+				}
+				client.setIsCheck(0);
+				client.setSubmitPay(0);
+				R submit = orderFeesClient.submit(client);
+				if (!submit.isSuccess()) {
+					throw new SecurityException("修改原单据的费用明细错误");
+				}
+			}
 
+			baseMapper.deleteById(id);
+		});
+		return true;
 	}
 
 }

+ 49 - 1
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/ItemsServiceImpl.java

@@ -16,14 +16,23 @@
  */
 package org.springblade.finance.service.impl;
 
-
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import io.seata.spring.annotation.GlobalTransactional;
+import lombok.AllArgsConstructor;
+import org.springblade.core.tool.api.R;
 import org.springblade.finance.vojo.Items;
 import org.springblade.finance.mapper.ItemsMapper;
 import org.springblade.finance.service.IItemsService;
 import org.springblade.finance.vo.ItemsVO;
+import org.springblade.purchase.sales.entity.OrderFees;
+import org.springblade.purchase.sales.entity.OrderItems;
+import org.springblade.purchase.sales.feign.IOrderFeesClient;
+import org.springblade.purchase.sales.feign.IOrderItemsClient;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
 
 /**
  * 结算明细 服务实现类
@@ -32,11 +41,50 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
  * @since 2021-11-03
  */
 @Service
+@AllArgsConstructor
 public class ItemsServiceImpl extends ServiceImpl<ItemsMapper, Items> implements IItemsService {
 
+	private final IOrderItemsClient orderItemsClient;
+
+	private final IOrderFeesClient orderFeesClient;
+
 	@Override
 	public IPage<ItemsVO> selectItemsPage(IPage<ItemsVO> page, ItemsVO items) {
 		return page.setRecords(baseMapper.selectItemsPage(page, items));
 	}
 
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	@GlobalTransactional(rollbackFor = Exception.class)
+	public boolean removeItems(List<Long> idList) {
+		idList.forEach(id -> {
+			Items items = baseMapper.selectById(id);
+			if (items.getSrcType() == 1) {
+				OrderItems client = orderItemsClient.getById(items.getSrcFeesId());
+				if (client == null) {
+					throw new SecurityException("未查到原单据的商品明细,无法修改状态");
+				}
+				client.setSubmitPay(0);
+				R submit = orderItemsClient.submit(client);
+				if (!submit.isSuccess()) {
+					throw new SecurityException("修改原单据的商品明细错误");
+				}
+			} else if (items.getSrcType() == 2) {
+				OrderFees client = orderFeesClient.getById(items.getSrcFeesId());
+				if (client == null) {
+					throw new SecurityException("未查到原单据的费用明细,无法修改状态");
+				}
+				client.setIsCheck(0);
+				client.setSubmitPay(0);
+				R submit = orderFeesClient.submit(client);
+				if (!submit.isSuccess()) {
+					throw new SecurityException("修改原单据的费用明细错误");
+				}
+			}
+
+			baseMapper.deleteById(id);
+		});
+		return true;
+	}
+
 }

File diff suppressed because it is too large
+ 230 - 305
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java


Some files were not shown because too many files changed in this diff