ioioio 4 лет назад
Родитель
Сommit
e0f11a7e89

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

@@ -690,4 +690,8 @@ public class Order implements Serializable {
 	@ApiModelProperty(value = "本次溢付款")
 	private BigDecimal caseOverPayment;
 
+	private BigDecimal refundSettlmentAmount;
+
+	private BigDecimal refundForeignSettlmentAmount;
+
 }

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

@@ -178,5 +178,7 @@ public class OrderFees implements Serializable {
 	@ApiModelProperty(value = "1.应收 2.应付")
 	private int feesType;
 
+	private BigDecimal refundSettlmentAmount;
+
 
 }

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

@@ -613,4 +613,8 @@ public class Order extends OrderBase {
 	@ApiModelProperty(value = "本次溢付款")
 	private BigDecimal caseOverPayment;
 
+	private BigDecimal refundSettlmentAmount;
+
+	private BigDecimal refundForeignSettlmentAmount;
+
 }

+ 35 - 0
blade-service/pom.xml

@@ -36,6 +36,41 @@
 
     <dependencies>
         <dependency>
+            <groupId>com.jdy.v7sdk</groupId>
+            <artifactId>kernel</artifactId>
+            <version>0.0.1</version>
+        </dependency>
+        <dependency>
+            <groupId>com.jdy.v7sdk</groupId>
+            <artifactId>sdkauth</artifactId>
+            <version>0.0.1</version>
+        </dependency>
+        <dependency>
+            <groupId>com.aliyun</groupId>
+            <artifactId>tea-util</artifactId>
+            <version>0.2.13</version>
+        </dependency>
+        <dependency>
+            <groupId>com.jdy.v7sdk.business</groupId>
+            <artifactId>fi</artifactId>
+            <version>0.0.1</version>
+        </dependency>
+        <dependency>
+            <groupId>com.jdy.v7sdk.business</groupId>
+            <artifactId>basedata</artifactId>
+            <version>0.0.1</version>
+        </dependency>
+        <dependency>
+            <groupId>com.jdy.v7sdk.business</groupId>
+            <artifactId>scm</artifactId>
+            <version>0.0.1</version>
+        </dependency>
+        <dependency>
+            <groupId>com.aliyun</groupId>
+            <artifactId>tea</artifactId>
+            <version>1.1.14</version>
+        </dependency>
+        <dependency>
             <groupId>org.springblade</groupId>
             <artifactId>blade-common</artifactId>
         </dependency>

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

@@ -38,6 +38,8 @@
             <artifactId>blade-starter-swagger</artifactId>
         </dependency>
 
+
+
         <dependency>
             <groupId>org.springblade</groupId>
             <artifactId>trade-finance-api</artifactId>

+ 65 - 0
blade-service/trade-finance/src/main/java/org/springblade/finance/TokenRequestQuery.java

@@ -0,0 +1,65 @@
+// This file is auto-generated, don't edit it. Thanks.
+package org.springblade.finance;
+
+import com.aliyun.tea.NameInMap;
+import com.aliyun.tea.TeaModel;
+import com.aliyun.tea.Validation;
+
+/**
+* 登录query
+**/
+public class TokenRequestQuery extends TeaModel {
+    @NameInMap("client_id")
+    @Validation(required = true)
+    public String clientId;
+
+    @NameInMap("client_secret")
+    @Validation(required = true)
+    public String clientSecret;
+
+    @NameInMap("username")
+    @Validation(required = true)
+    public String username;
+
+    @NameInMap("password")
+    @Validation(required = true)
+    public String password;
+
+    public static TokenRequestQuery build(java.util.Map<String, ?> map) throws Exception {
+        TokenRequestQuery self = new TokenRequestQuery();
+        return TeaModel.build(map, self);
+    }
+
+    public TokenRequestQuery setClientId(String clientId) {
+        this.clientId = clientId;
+        return this;
+    }
+    public String getClientId() {
+        return this.clientId;
+    }
+
+    public TokenRequestQuery setClientSecret(String clientSecret) {
+        this.clientSecret = clientSecret;
+        return this;
+    }
+    public String getClientSecret() {
+        return this.clientSecret;
+    }
+
+    public TokenRequestQuery setUsername(String username) {
+        this.username = username;
+        return this;
+    }
+    public String getUsername() {
+        return this.username;
+    }
+
+    public TokenRequestQuery setPassword(String password) {
+        this.password = password;
+        return this;
+    }
+    public String getPassword() {
+        return this.password;
+    }
+
+}

+ 70 - 44
blade-service/trade-finance/src/main/java/org/springblade/finance/service/impl/SettlementServiceImpl.java

@@ -274,7 +274,28 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 				{
 					throw new SecurityException("撤销账单失败,原业务表已收金额为空");
 				}
-				client.setSettlmentAmount(client.getSettlmentAmount()!=null?client.getSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
+				//撤回已收人民币金额
+				if
+				(
+					   (settlementDTO.getBillType().equals("付费")&&items.getItemType().equals("采购"))
+						||
+						(settlementDTO.getBillType().equals("收费")&&items.getItemType().equals("销售"))
+				)
+				{
+					client.setSettlmentAmount(client.getSettlmentAmount()!=null?client.getSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").subtract(items.getThisAmount()));
+				}
+				//撤回已退人民币金额
+				else if
+				(
+					    (settlementDTO.getBillType().equals("付费")&&items.getItemType().equals("销售"))
+						||
+						(settlementDTO.getBillType().equals("收费")&&items.getItemType().equals("采购"))
+				)
+				{
+					client.setRefundSettlmentAmount(client.getRefundSettlmentAmount()!=null?client.getRefundSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").subtract(items.getThisAmount()));
+				}
+
+
 			}
 			//如果是外币
 			else
@@ -283,7 +304,28 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 				{
 					throw new SecurityException("撤销账单失败,原业务表已收金额为空");
 				}
-				client.setForeignSettlmentAmount(client.getForeignSettlmentAmount()!=null?client.getForeignSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
+				//撤回已收外币金额
+				if
+				(
+					(settlementDTO.getBillType().equals("付费")&&items.getItemType().equals("采购"))
+						||
+						(settlementDTO.getBillType().equals("收费")&&items.getItemType().equals("销售"))
+				)
+				{
+					client.setForeignSettlmentAmount(client.getForeignSettlmentAmount()!=null?client.getForeignSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
+				}
+				//撤回已退外币金额
+				else if
+				(
+					(settlementDTO.getBillType().equals("付费")&&items.getItemType().equals("销售"))
+						||
+						(settlementDTO.getBillType().equals("收费")&&items.getItemType().equals("采购"))
+				)
+				{
+					client.setRefundForeignSettlmentAmount(client.getRefundForeignSettlmentAmount()!=null?client.getRefundForeignSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
+				}
+
+
 			}
 			orderDescClient.updateOrder(client);
 		}
@@ -343,7 +385,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 		}*/
 
 		//修改原业务表和账单明细的数据
-		if(type==1)
+		if(type==1 )
 		{   Long srcParentId = acc.getSrcParentId();
 			if(srcParentId==null)
 			{
@@ -356,8 +398,8 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			}
 
 			/**
-			 *  金币增加操作: (billType=申请,itemType=采购) 或者 (billType=收费,itemType=销售)
-			 *  金币减少操作: (billType=申请,itemType=销售) 或者 (billType=收费,itemType=采购)
+			 *  金币增加操作: (billType=付费,itemType=采购) 或者 (billType=收费,itemType=销售)
+			 *  金币减少操作: (billType=付费,itemType=销售) 或者 (billType=收费,itemType=采购)
 			 * */
 
 			//如果是人民币,修改人民结算字段
@@ -366,9 +408,9 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 				//人民币-增加金额的操作
 				if
 				(
-					    (settlementDTO.getBillType().equals("申请")&&settlementDTO.getItemType().equals("采购"))
+					    (settlementDTO.getBillType().equals("付费")&&items.getItemType().equals("采购"))
 				        ||
-						(settlementDTO.getBillType().equals("收费")&&settlementDTO.getItemType().equals("销售"))
+						(settlementDTO.getBillType().equals("收费")&&items.getItemType().equals("销售"))
 				)
 				{
 					//账单明细增加
@@ -381,15 +423,15 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 				//人民币-减少金额的操作
 				else if
 				(
-					    (settlementDTO.getBillType().equals("申请")&&settlementDTO.getItemType().equals("销售"))
+					    (settlementDTO.getBillType().equals("付费")&&items.getItemType().equals("销售"))
 						||
-						(settlementDTO.getBillType().equals("收费")&&settlementDTO.getItemType().equals("采购"))
+						(settlementDTO.getBillType().equals("收费")&&items.getItemType().equals("采购"))
 				)
 				{
-					//账单明细减少
-					acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().subtract(items.getThisAmount()):new BigDecimal("0").subtract(items.getThisAmount()));
-					//原业务表减少
-					client.setSettlmentAmount(client.getSettlmentAmount()!=null?client.getSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").subtract(items.getThisAmount()));
+					//账单明细增加
+					acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
+					//原业务表退费增加
+					client.setRefundSettlmentAmount(client.getRefundSettlmentAmount()!=null?client.getRefundSettlmentAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
 				}
 
 			}
@@ -399,29 +441,29 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 				//外币-增加金额的操作
 				if
 				(
-					    (settlementDTO.getBillType().equals("申请")&&settlementDTO.getItemType().equals("采购"))
+					    (settlementDTO.getBillType().equals("付费")&&items.getItemType().equals("采购"))
 						||
-						(settlementDTO.getBillType().equals("收费")&&settlementDTO.getItemType().equals("销售"))
+						(settlementDTO.getBillType().equals("收费")&&items.getItemType().equals("销售"))
 				)
 				{
 					//账单明细增加
 					acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
 					//原业务表增加
-					client.setSettlmentAmount(client.getSettlmentAmount()!=null?client.getSettlmentAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
+					client.setForeignSettlmentAmount(client.getForeignSettlmentAmount()!=null?client.getForeignSettlmentAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
 				}
 
 				//外币-减少金额的操作
 				else if
 				(
-					    (settlementDTO.getBillType().equals("申请")&&settlementDTO.getItemType().equals("销售"))
+					    (settlementDTO.getBillType().equals("付费")&&items.getItemType().equals("销售"))
 						||
-						(settlementDTO.getBillType().equals("收费")&&settlementDTO.getItemType().equals("采购"))
+						(settlementDTO.getBillType().equals("收费")&&items.getItemType().equals("采购"))
 				)
 				{
 					//账单明细减少
-					acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().subtract(items.getThisAmount()):new BigDecimal("0").subtract(items.getThisAmount()));
-					//原业务表减少
-					client.setSettlmentAmount(client.getSettlmentAmount()!=null?client.getSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").subtract(items.getThisAmount()));
+					acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
+					//原业务退费增加
+					client.setRefundForeignSettlmentAmount(client.getRefundForeignSettlmentAmount()!=null?client.getRefundForeignSettlmentAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
 				}
 				//client.setForeignSettlmentAmount(client.getForeignSettlmentAmount()!=null?client.getForeignSettlmentAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
 			}
@@ -431,7 +473,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			orderDescClient.updateOrder(client);
 
 		}
-		//修改费用明细数据
+		//修改费用明细数据(费用明细不需要区分币)
 		else if(type==2)
 		{
 			Long srcFeesId = acc.getSrcFeesId();
@@ -445,28 +487,8 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 			{
 				throw new SecurityException("修改原单据失败");
 			}
-			//增加操作
-			if
-			(
-				(settlementDTO.getBillType().equals("申请")&&settlementDTO.getItemType().equals("采购"))
-					||
-					(settlementDTO.getBillType().equals("收费")&&settlementDTO.getItemType().equals("销售"))
-			)
-			{
-				acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
-				orderFees.setSettlmentAmount(orderFees.getSettlmentAmount()!=null?orderFees.getSettlmentAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
-			}
-			//减少操作
-			else if
-			(
-				    (settlementDTO.getBillType().equals("申请")&&settlementDTO.getItemType().equals("销售"))
-					||
-					(settlementDTO.getBillType().equals("收费")&&settlementDTO.getItemType().equals("采购"))
-			)
-			{
-				acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().subtract(items.getThisAmount()):new BigDecimal("0").subtract(items.getThisAmount()));
-				orderFees.setSettlmentAmount(orderFees.getSettlmentAmount()!=null?orderFees.getSettlmentAmount().subtract(items.getThisAmount()):new BigDecimal("0").subtract(items.getThisAmount()));
-			}
+			acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
+			orderFees.setSettlmentAmount(orderFees.getSettlmentAmount()!=null?orderFees.getSettlmentAmount().add(items.getThisAmount()):new BigDecimal("0").add(items.getThisAmount()));
 			accMapper.updateById(acc);
 			orderFeesClient.submit(orderFees);
 		}
@@ -793,5 +815,9 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
 		baseMapper.deleteById(settlementId);*/
 	}
 
+	public void toJinDie()
+	{
+
+	}
 
 }

+ 46 - 0
blade-service/trade-finance/src/main/java/org/springblade/finance/tool/JdyTool.java

@@ -0,0 +1,46 @@
+package org.springblade.finance.tool;
+import com.aliyun.tea.*;
+import com.jdy.v7sdk.models.*;
+import com.jdy.v7sdk.business.models.*;
+import org.springblade.finance.TokenRequestQuery;
+
+public class JdyTool
+{
+
+	public static void main(String[] args_) throws Exception {
+
+		java.util.List<String> args = java.util.Arrays.asList(args_);
+		com.jdy.v7sdk.auth auth = new com.jdy.v7sdk.auth();
+		//登录参数
+		TokenRequestQuery tokenRequestQuery = TokenRequestQuery.build(TeaConverter.buildMap(
+			new TeaPair("clientId", "205022"),
+			new TeaPair("clientSecret", "1b16d77089b1e60b3f7c907aa3cc612e"),
+			new TeaPair("username", "17220202021"),
+			new TeaPair("password", "Jdy202101")
+		));
+		//获取token
+		AccountGroupRequest accessTokenObject = auth.getToken(tokenRequestQuery);
+		//获取账套
+		java.util.List<?> accountGroups = auth.getAccount(accessTokenObject);
+		//账套可能有多条,这里示例默认取第一条。
+		java.util.Map<String, Object> accountService = com.aliyun.teautil.Common.assertAsMap(accountGroups.get(0));
+		java.util.List<Object> groups = com.aliyun.teautil.Common.assertAsArray(accountService.get("accountGroups"));
+		java.util.Map<String, String> group = com.aliyun.teautil.Common.stringifyMapValue(com.aliyun.teautil.Common.assertAsMap(groups.get(1)));
+		String accountId = group.get("accountId");
+		String groupName = group.get("groupName");
+		String accessToken = accessTokenObject.accessToken;
+		com.jdy.v7sdk.kernel kernel = new com.jdy.v7sdk.kernel(accessToken, accountId, groupName);
+		com.jdy.v7sdk.business.basedata bd = new com.jdy.v7sdk.business.basedata(kernel);
+		//获取商品列表示例
+		MaterialListRequest materialListRequest = MaterialListRequest.build(TeaConverter.buildMap(
+		));
+		java.util.Map<String, ?> response = bd.getMaterialList(materialListRequest);
+		System.out.println("请求商品列表成功 response = " + response);
+	}
+	public void test()
+	{
+
+	}
+
+}
+