Browse Source

2022年12月6 18:13

wangzhuo 3 years ago
parent
commit
fbce19275e

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

@@ -196,6 +196,12 @@ public class Biding implements Serializable {
 	private String remark;
 
 	/**
+	 * 航线
+	 */
+	@ApiModelProperty(value = "航线")
+	private String line;
+
+	/**
 	 * 明细信息
 	 */
 	@TableField(exist = false)

+ 6 - 0
blade-service-api/trade-finance-api/src/main/java/org/springblade/finance/vojo/Acc.java

@@ -436,4 +436,10 @@ public class Acc implements Serializable {
 	@TableField(exist = false)
 	private BigDecimal balance;
 
+	/**
+	 * 溢付款余额
+	 */
+	@TableField(exist = false)
+	private BigDecimal inOverpayment;
+
 }

+ 7 - 5
blade-service/blade-mocha-item/src/main/java/org/springblade/mocha/controller/BusinessOverpaymentItemController.java

@@ -38,6 +38,8 @@ import org.springblade.mocha.vo.BusinessOverpaymentItemVO;
 import org.springblade.mocha.service.IBusinessOverpaymentItemService;
 import org.springblade.core.boot.ctrl.BladeController;
 
+import java.util.List;
+
 /**
  * 溢付款明细表 控制器
  *
@@ -70,18 +72,18 @@ public class BusinessOverpaymentItemController extends BladeController {
 	@GetMapping("/list")
 	@ApiOperationSupport(order = 2)
 	@ApiOperation(value = "分页", notes = "传入businessOverpaymentItem")
-	public R<IPage<BusinessOverpaymentItem>> list(BusinessOverpaymentItem businessOverpaymentItem, Query query) {
+	public R<List<BusinessOverpaymentItem>> list(BusinessOverpaymentItem businessOverpaymentItem) {
 		businessOverpaymentItem.setTenantId(SecureUtil.getTenantId());
-		IPage<BusinessOverpaymentItem> pages = businessOverpaymentItemService.page(Condition.getPage(query), Condition.getQueryWrapper(businessOverpaymentItem));
-		if (CollectionUtils.isNotEmpty(pages.getRecords())){
-			pages.getRecords().stream().forEach(item ->{
+		List<BusinessOverpaymentItem> list = businessOverpaymentItemService.list(Condition.getQueryWrapper(businessOverpaymentItem));
+		if (CollectionUtils.isNotEmpty(list)){
+			list.forEach(item ->{
 				R<User> user = userClient.userInfoById(item.getCreateUser());
 				if (user.isSuccess() && user.getData() != null){
 					item.setCreateUserName(user.getData().getName());
 				}
 			});
 		}
-		return R.data(pages);
+		return R.data(list);
 	}
 
 	/**

+ 30 - 0
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/BidingServiceImpl.java

@@ -32,6 +32,8 @@ import org.springblade.purchase.sales.entity.BidingAgent;
 import org.springblade.purchase.sales.entity.BidingItems;
 import org.springblade.purchase.sales.mapper.BidingMapper;
 import org.springblade.purchase.sales.service.IBidingService;
+import org.springblade.system.feign.IDictBizClient;
+import org.springblade.system.feign.ISysClient;
 import org.springblade.system.user.entity.User;
 import org.springblade.system.user.feign.IUserClient;
 import org.springframework.stereotype.Service;
@@ -61,6 +63,8 @@ public class BidingServiceImpl extends ServiceImpl<BidingMapper, Biding> impleme
 	private final IUserClient userClient;//获得用户信息
 	private ICorpsAttnClient corpsAttnClient;//客户联系人
 	private final IWechatClient wechatClient;//微信
+	private final IDictBizClient dictBizClient;//业务字典
+	private final ISysClient sysClient;//获得岗位信息
 
 	/**
 	 * 获得标书详情
@@ -218,6 +222,7 @@ public class BidingServiceImpl extends ServiceImpl<BidingMapper, Biding> impleme
 			biding.setTenantId(SecureUtil.getTenantId());
 			biding.setCreateUser(AuthUtil.getUserId());
 			biding.setCreateTime(new Date());
+			biding.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
 			baseMapper.insert(biding);
 		}else {//id不为空修改单据
 			biding.setTenantId(SecureUtil.getTenantId());
@@ -341,6 +346,31 @@ public class BidingServiceImpl extends ServiceImpl<BidingMapper, Biding> impleme
 			if (com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isEmpty(auditPathsLevels)) {
 				throw new SecurityException("开启审批失败:未查询到审批信息");
 			}
+
+			if (ObjectUtil.isNotEmpty(salesBiding.getLine())){
+				//根据航线编号获得航线名称
+				R<String> lineName = dictBizClient.getValue("dominant_route", salesBiding.getLine());
+				if (lineName.isSuccess() && lineName.getData() != null){
+					//根据航线名称获得岗位
+					R<String> postIds = sysClient.getPostIds(AuthUtil.getTenantId(), lineName.getData());
+					if (postIds.isSuccess() && postIds.getData() != null){
+						//获得当前请核人的岗位
+						R<User> user = userClient.userInfoById(AuthUtil.getUserId());
+						if (user.isSuccess() && user.getData() != null){
+							if (!user.getData().getPostId().contains(postIds.getData())){
+								throw new SecurityException("当前请核人岗位没有该航线,无法请核");
+							}
+						}else {
+							throw new SecurityException("用户信息异常,请联系管理员");
+						}
+					}else {
+						throw new SecurityException("岗位信息异常,请联系管理员");
+					}
+				}else {
+					throw new SecurityException("航线异常,请维护航线");
+				}
+			}
+
 			//修改订单信息
 			AuditProecessDTO auditProecessDTO = new AuditProecessDTO();
 			// 绑定审核类型

+ 2 - 2
blade-service/blade-purchase-sales/src/main/java/org/springblade/purchase/sales/service/impl/OrderServiceImpl.java

@@ -211,7 +211,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 						if (order.getBillType().equals(OrderTypeEnum.ENQUIRY.getType())) {
 							substring = substring + "Q";
 						}
-						if (corpMessage.getData().getCode().length() > 3) {
+						if (corpMessage.getData().getCode().length() > 10) {
 							substring = substring + corpMessage.getData().getCode().substring(corpMessage.getData().getCode().length() - 3, corpMessage.getData().getCode().length());
 						} else {
 							substring = substring + corpMessage.getData().getCode();
@@ -274,7 +274,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
 							if (order.getBillType().equals(OrderTypeEnum.ENQUIRY.getType())) {
 								substring = substring + "Q";
 							}
-							if (corpMessage.getData().getCode().length() > 3) {
+							if (corpMessage.getData().getCode().length() > 10) {
 								substring = substring + corpMessage.getData().getCode().substring(corpMessage.getData().getCode().length() - 3, corpMessage.getData().getCode().length());
 							} else {
 								substring = substring + corpMessage.getData().getCode();

+ 3 - 1
blade-service/trade-finance/src/main/java/org/springblade/finance/mapper/AccMapper.xml

@@ -61,9 +61,11 @@
             BCD.cname AS corpName,
             IFNULL( BC.amount, 0 ) AS amount,
             IFNULL( BC.settlementAmount, 0 ) AS settlementAmount,
-            IFNULL( (SUM( FC.Amount ) - SUM( FC.Settlement_Amount )), 0 )AS balance
+            IFNULL( (SUM( FC.Amount ) - SUM( FC.Settlement_Amount )), 0 )AS balance,
+            IFNULL( BO.in_overpayment, 0 ) AS inOverpayment
         FROM finance_acc FC
         LEFT JOIN basic_corps_desc BCD ON BCD.id = FC.Corpid
+        LEFT JOIN business_overpayment BO ON BO.corp_id = FC.Corpid
         LEFT JOIN (
             SELECT
                 FC.Corpid AS corpId,