Ver código fonte

fix: 结算管理配置

lixuesong 3 anos atrás
pai
commit
3b6f84cbdc

+ 9 - 8
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/SysDeptSubController.java

@@ -1,9 +1,12 @@
 package com.qunzhixinxi.hnqz.admin.controller;
 
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ArrayUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.qunzhixinxi.hnqz.admin.entity.dto.SettleConfigDTO;
 import com.qunzhixinxi.hnqz.admin.entity.input.DeptSubLimitAmountInput;
 import com.qunzhixinxi.hnqz.admin.enums.SubjectTypeEnum;
 import com.qunzhixinxi.hnqz.common.core.util.R;
@@ -18,6 +21,7 @@ import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
 import org.springframework.web.bind.annotation.*;
 
+import javax.validation.Valid;
 import java.util.List;
 
 
@@ -78,21 +82,18 @@ public class SysDeptSubController {
 	/**
 	 * 结算管理配置
 	 *
-	 * @param input
+	 * @param settleConfigDTO
 	 * @return
 	 */
 	@PostMapping("/save-settle-config")
-	public R<?> saveSettleConfig(@RequestBody DeptSubLimitAmountInput input) {
-		if (input.getDeptId() == null || CollUtil.isEmpty(input.getSubList())) {
-			return R.failed("必填参数为空");
-		}
-		for (SysDeptSub deptSub : input.getSubList()) {
+	public R<?> saveSettleConfig(@Valid @RequestBody SettleConfigDTO settleConfigDTO) {
+		for (SettleConfigDTO.DeptSub deptSub : settleConfigDTO.getSubList()) {
 			if (StrUtil.isBlank(deptSub.getSubjectType()) || deptSub.getLimitAmount() == null
-					|| StrUtil.isBlank(deptSub.getSubjectInvoiceCategory())) {
+					|| ArrayUtil.isEmpty(deptSub.getSubjectInvoiceCategory())) {
 				return R.failed("必填参数为空");
 			}
 		}
-		sysDeptSubService.saveSettleConfig(input);
+		sysDeptSubService.saveSettleConfig(BeanUtil.copyProperties(settleConfigDTO, DeptSubLimitAmountInput.class));
 
 		return R.ok();
 	}

+ 69 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/entity/dto/SettleConfigDTO.java

@@ -0,0 +1,69 @@
+package com.qunzhixinxi.hnqz.admin.entity.dto;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 结算管理配置参数
+ *
+ * @author lixuesong
+ */
+@Data
+public class SettleConfigDTO implements Serializable {
+
+	private static final long serialVersionUID = 6592319640299289406L;
+
+	/**
+	 * 部门id
+	 */
+	@NotNull(message = "deptId必填")
+	private Integer deptId;
+
+	/**
+	 * 各渠道配置
+	 */
+	@NotEmpty(message = "subList必填")
+	private List<DeptSub> subList;
+
+	/**
+	 * 渠道配置
+	 */
+	@Data
+	public static class DeptSub {
+
+		/**
+		 * 认证方式
+		 */
+		private String subjectType;
+
+		/**
+		 * 结算通道
+		 */
+		private Integer subjectChannel;
+
+		/**
+		 * 限额
+		 */
+		private BigDecimal limitAmount;
+
+		/**
+		 * 是否有效:0-无效 1-生效
+		 */
+		private String enableFlag;
+
+		/**
+		 * 税邦云用户类型id
+		 */
+		private String subjectUserType;
+
+		/**
+		 * 税邦云用户类型对应的发票类目
+		 */
+		private String[] subjectInvoiceCategory;
+	}
+}