فهرست منبع

Merge remote-tracking branch 'origin/master'

liuyc 2 سال پیش
والد
کامیت
0614496936
51فایلهای تغییر یافته به همراه801 افزوده شده و 497 حذف شده
  1. 3 0
      blade-ops/blade-swagger/src/main/resources/application-dev.yml
  2. 22 0
      blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/feign/ArchiveInspectionInfoClient.java
  3. 6 0
      blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/ArchivesAutoVO.java
  4. 6 1
      blade-service-api/blade-business-api/src/main/java/org/springblade/business/vo/ArchiveFileVO.java
  5. 0 11
      blade-service-api/blade-control-api/pom.xml
  6. 20 0
      blade-service-api/blade-control-api/src/main/java/org/springblade/control/dto/ContractReturnedInfoDTO.java
  7. 21 0
      blade-service-api/blade-control-api/src/main/java/org/springblade/control/dto/ControlContractInfoDTO.java
  8. 1 0
      blade-service-api/blade-control-api/src/main/java/org/springblade/control/dto/ControlProjectInfoDTO.java
  9. 59 0
      blade-service-api/blade-control-api/src/main/java/org/springblade/control/entity/ContractReturnedInfo.java
  10. 22 3
      blade-service-api/blade-control-api/src/main/java/org/springblade/control/entity/DictInfo.java
  11. 29 0
      blade-service-api/blade-control-api/src/main/java/org/springblade/control/vo/ContractReturnedInfoVO.java
  12. 12 2
      blade-service-api/blade-control-api/src/main/java/org/springblade/control/vo/ControlContractInfoVO.java
  13. 3 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveInspectionInfoController.java
  14. 14 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchivesAutoController.java
  15. 25 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/feign/ArchiveInspectionInfoClientImpl.java
  16. 17 3
      blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.xml
  17. 5 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/service/IArchiveInspectionService.java
  18. 2 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/service/IArchivesAutoService.java
  19. 44 0
      blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchiveInspectionServiceImpl.java
  20. 47 1
      blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java
  21. 20 1
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/ArchiveFileServiceImpl.java
  22. 6 3
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/MetadataClassificationServiceImpl.java
  23. 2 1
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TaskServiceImpl.java
  24. 38 0
      blade-service/blade-control/pom.xml
  25. 78 0
      blade-service/blade-control/src/main/java/org/springblade/control/controller/CSysController.java
  26. 11 0
      blade-service/blade-control/src/main/java/org/springblade/control/controller/ContractInfoController.java
  27. 50 0
      blade-service/blade-control/src/main/java/org/springblade/control/controller/ContractReturnedInfoController.java
  28. 15 15
      blade-service/blade-control/src/main/java/org/springblade/control/controller/DictInfoController.java
  29. 3 0
      blade-service/blade-control/src/main/java/org/springblade/control/mapper/ContractInfoMapper.java
  30. 8 0
      blade-service/blade-control/src/main/java/org/springblade/control/mapper/ContractInfoMapper.xml
  31. 24 0
      blade-service/blade-control/src/main/java/org/springblade/control/mapper/ContractReturnedInfoMapper.java
  32. 16 0
      blade-service/blade-control/src/main/java/org/springblade/control/mapper/ContractReturnedInfoMapper.xml
  33. 4 2
      blade-service/blade-control/src/main/java/org/springblade/control/mapper/DictInfoMapper.java
  34. 11 0
      blade-service/blade-control/src/main/java/org/springblade/control/mapper/DictInfoMapper.xml
  35. 3 0
      blade-service/blade-control/src/main/java/org/springblade/control/service/IContractInfoService.java
  36. 30 0
      blade-service/blade-control/src/main/java/org/springblade/control/service/IContractReturnedInfoService.java
  37. 14 5
      blade-service/blade-control/src/main/java/org/springblade/control/service/IDictInfoService.java
  38. 21 1
      blade-service/blade-control/src/main/java/org/springblade/control/service/impl/ContractInfoServiceImpl.java
  39. 72 0
      blade-service/blade-control/src/main/java/org/springblade/control/service/impl/ContractReturnedInfoServiceImpl.java
  40. 12 7
      blade-service/blade-control/src/main/java/org/springblade/control/service/impl/DictInfoServiceImpl.java
  41. 5 5
      blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java
  42. 0 1
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java
  43. 0 127
      src/main/java/org/springblade/control/controller/DictInfoController.java
  44. 0 34
      src/main/java/org/springblade/control/dto/DictInfoDTO.java
  45. 0 64
      src/main/java/org/springblade/control/entity/DictInfo.java
  46. 0 42
      src/main/java/org/springblade/control/mapper/DictInfoMapper.java
  47. 0 32
      src/main/java/org/springblade/control/mapper/DictInfoMapper.xml
  48. 0 41
      src/main/java/org/springblade/control/service/IDictInfoService.java
  49. 0 41
      src/main/java/org/springblade/control/service/impl/DictInfoServiceImpl.java
  50. 0 34
      src/main/java/org/springblade/control/vo/DictInfoVO.java
  51. 0 20
      src/main/java/sql/dictinfo.menu.sql

+ 3 - 0
blade-ops/blade-swagger/src/main/resources/application-dev.yml

@@ -22,3 +22,6 @@ knife4j:
       - name: 档案接口
         uri: 127.0.0.1:8090
         location: /blade-archive/v2/api-docs
+      - name: 内控系统
+        uri: 127.0.0.1:8090
+        location: /blade-control/v2/api-docs

+ 22 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/feign/ArchiveInspectionInfoClient.java

@@ -0,0 +1,22 @@
+package org.springblade.archive.feign;
+
+import org.springblade.archive.dto.ArchiveInspectionDTO;
+import org.springblade.archive.entity.ArchivesAuto;
+import org.springblade.common.constant.ArchiveConstant;
+import org.springblade.core.tool.api.R;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
+import java.util.Map;
+
+@FeignClient(value = ArchiveConstant.APPLICATION_WEATHER_NAME)
+public interface ArchiveInspectionInfoClient {
+    String API_PREFIX = "/api/archive/archiveInspectionInfo";
+
+    @PostMapping(API_PREFIX + "/getAllopinion")
+    Map<String, Map<String,Object>> getAllopinion(@RequestParam String fileIds);
+}

+ 6 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/vo/ArchivesAutoVO.java

@@ -148,6 +148,11 @@ public class ArchivesAutoVO extends ArchivesAuto {
 	 */
 	private Integer isSelect;
 
+	/**
+	 * 去除四要素后的文件
+	 */
+	private Integer pageNumber;
+
 	/**
 	 * 柜子内部搜索
 	 */
@@ -221,5 +226,6 @@ public class ArchivesAutoVO extends ArchivesAuto {
 
 		private Long id;
 		private Long fileSize;
+		private Integer isElement;
 	}
 }

+ 6 - 1
blade-service-api/blade-business-api/src/main/java/org/springblade/business/vo/ArchiveFileVO.java

@@ -89,5 +89,10 @@ public class ArchiveFileVO extends ArchiveFile {
      * 是否更改文件地址 0 未更改,1已更改
      */
     private Integer isUpdateUrl;
-
+    //所有的意见
+    private String allOpinion;
+    /**
+     * 案卷题名
+     */
+    private String archiveName;
 }

+ 0 - 11
blade-service-api/blade-control-api/pom.xml

@@ -11,17 +11,6 @@
     <artifactId>blade-control-api</artifactId>
     <version>${bladex.project.version}</version>
 
-    <dependencies>
-        <dependency>
-            <groupId>org.springblade</groupId>
-            <artifactId>blade-common</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.springblade</groupId>
-            <artifactId>blade-user-api</artifactId>
-            <version>2.9.1.RELEASE</version>
-        </dependency>
-    </dependencies>
     <packaging>jar</packaging>
 
 

+ 20 - 0
blade-service-api/blade-control-api/src/main/java/org/springblade/control/dto/ContractReturnedInfoDTO.java

@@ -0,0 +1,20 @@
+package org.springblade.control.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.control.entity.ContractReturnedInfo;
+
+import java.util.List;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2023/6/6 16:53
+ **/
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ContractReturnedInfoDTO extends ContractReturnedInfo{
+    @ApiModelProperty(value = "项目进程集合")
+    private List<ContractReturnedInfo> list;
+}

+ 21 - 0
blade-service-api/blade-control-api/src/main/java/org/springblade/control/dto/ControlContractInfoDTO.java

@@ -0,0 +1,21 @@
+package org.springblade.control.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.control.entity.ContractReturnedInfo;
+import org.springblade.control.entity.ControlContractInfo;
+
+import java.util.List;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2023/6/6 16:53
+ **/
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ControlContractInfoDTO extends ControlContractInfo {
+    @ApiModelProperty(value = "搜索值")
+    private String queryValue;
+}

+ 1 - 0
blade-service-api/blade-control-api/src/main/java/org/springblade/control/dto/ControlProjectInfoDTO.java

@@ -17,6 +17,7 @@ import java.util.List;
 @EqualsAndHashCode(callSuper = true)
 public class ControlProjectInfoDTO extends ControlProjectInfo {
     //项目进程集合
+    @ApiModelProperty(value = "项目进程集合")
     private List<ProjectProcess> projectProcessList;
 
     //模糊查询

+ 59 - 0
blade-service-api/blade-control-api/src/main/java/org/springblade/control/entity/ContractReturnedInfo.java

@@ -0,0 +1,59 @@
+package org.springblade.control.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.mp.base.BaseEntity;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2023/6/6 9:21
+ **/
+@Data
+@TableName("c_contract_returned_info")
+@EqualsAndHashCode(callSuper = true)
+@ApiModel(value = "合同回款信息表", description = "合同回款信息表")
+public class ContractReturnedInfo extends BaseEntity {
+
+    @ApiModelProperty(value = "合同id")
+    private Long contractId;
+
+    @ApiModelProperty(value = "回款条件")
+    private String returnedCondition;
+
+    @DateTimeFormat(
+            pattern = "yyyy-MM-dd"
+    )
+    @JsonFormat(
+            pattern = "yyyy-MM-dd"
+    )
+    @ApiModelProperty(value = "应回款时间")
+    private LocalDate shouldReturnedTime;
+
+    @ApiModelProperty(value = "应回款金额")
+    private BigDecimal shouldReturnedMoney;
+
+    @DateTimeFormat(
+            pattern = "yyyy-MM-dd"
+    )
+    @JsonFormat(
+            pattern = "yyyy-MM-dd"
+    )
+    @ApiModelProperty(value = "实际回款时间")
+    private LocalDate practicalReturnedTime;
+
+    @ApiModelProperty(value = "实际回款金额")
+    private BigDecimal practicalReturnedMoney;
+
+    @ApiModelProperty(value = "催款执行人")
+    private Long reminderUser;
+
+}

+ 22 - 3
blade-service-api/blade-control-api/src/main/java/org/springblade/control/entity/DictInfo.java

@@ -16,10 +16,16 @@
  */
 package org.springblade.control.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 
 import java.io.Serializable;
 
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModelProperty;
 import org.springblade.core.mp.base.BaseEntity;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
@@ -32,15 +38,23 @@ import lombok.EqualsAndHashCode;
  */
 @Data
 @TableName("c_dict_info")
-@EqualsAndHashCode(callSuper = true)
-public class DictInfo extends BaseEntity {
+public class DictInfo implements Serializable {
 
     private static final long serialVersionUID = 1L;
 
+    /**
+     * 主键
+     */
+    @JsonSerialize(using = ToStringSerializer.class)
+    @ApiModelProperty(value = "主键")
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+
     /**
      * 父主键
      */
     private Long parentId;
+
     /**
      * 字典名称
      */
@@ -62,5 +76,10 @@ public class DictInfo extends BaseEntity {
      */
     private String code;
 
-
+    /**
+     * 是否已删除
+     */
+    @TableLogic
+    @ApiModelProperty(value = "是否已删除")
+    private Integer isDeleted;
 }

+ 29 - 0
blade-service-api/blade-control-api/src/main/java/org/springblade/control/vo/ContractReturnedInfoVO.java

@@ -0,0 +1,29 @@
+package org.springblade.control.vo;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.control.entity.ContractReturnedInfo;
+import org.springblade.core.mp.base.BaseEntity;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2023/6/6 9:21
+ **/
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ContractReturnedInfoVO extends ContractReturnedInfo {
+
+    @ApiModelProperty(value = "催款执行人名称")
+    private String reminderUserName;
+
+
+}

+ 12 - 2
blade-service-api/blade-control-api/src/main/java/org/springblade/control/vo/ControlContractInfoVO.java

@@ -1,9 +1,12 @@
 package org.springblade.control.vo;
 
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import org.springblade.control.entity.ControlContractInfo;
 
+import java.math.BigDecimal;
+
 /**
  * @Param
  * @Author wangwl
@@ -12,8 +15,15 @@ import org.springblade.control.entity.ControlContractInfo;
 @Data
 @EqualsAndHashCode(callSuper = true)
 public class ControlContractInfoVO extends ControlContractInfo {
-    //合同类型值
+    @ApiModelProperty(value = "合同类型值")
     private String contractTypeValue;
-    //项目名称
+
+    @ApiModelProperty(value = "项目名称")
     private String projectName;
+
+    @ApiModelProperty(value = "合同已回款")
+    private BigDecimal returnedMoney;
+
+    @ApiModelProperty(value = "合同未回款")
+    private BigDecimal unreturnedMoney;
 }

+ 3 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveInspectionInfoController.java

@@ -71,6 +71,9 @@ public class ArchiveInspectionInfoController {
         ArchiveInspection archiveInspectionMod = archiveInspectionService.getById(archiveInspection.getId());
         if (archiveInspectionMod!= null ) {
             archiveInspectionMod.setOpinion(archiveInspection.getOpinion());
+        }else{
+            archiveInspection.setId(null);
+            return this.addArchiveInspection(archiveInspection);
         }
         return R.status(archiveInspectionService.saveOrUpdate(archiveInspectionMod));
     }

+ 14 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchivesAutoController.java

@@ -157,6 +157,20 @@ public class ArchivesAutoController extends BladeController {
 		}
 	}
 
+	/**
+	 * 档案统计-档案柜切换档案查看权限
+	 */
+	@GetMapping("/getArchivesAuthByUser")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "档案统计-档案柜切换档案查看权限")
+	@ApiImplicitParams({
+			@ApiImplicitParam(name = "archiveType", value = "1业主2施工3监理", required = true),
+	})
+	public R getArchivesAuthByUser(Long projectId,Long contractId,Integer archiveType) {
+		archivesAutoService.getArchivesAuthByUser(projectId,contractId,archiveType);
+		return R.success("切换成功");
+	}
+
 	/**
 	 * 档案统计-已组案卷
 	 */

+ 25 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/feign/ArchiveInspectionInfoClientImpl.java

@@ -0,0 +1,25 @@
+package org.springblade.archive.feign;
+
+import lombok.AllArgsConstructor;
+import org.springblade.archive.dto.ArchiveInspectionDTO;
+import org.springblade.archive.entity.ArchivesAuto;
+import org.springblade.archive.service.IArchiveInspectionService;
+import org.springblade.archive.service.IArchivesAutoService;
+import org.springblade.core.tool.api.R;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+@RestController
+@AllArgsConstructor
+public class ArchiveInspectionInfoClientImpl implements ArchiveInspectionInfoClient {
+
+    private IArchiveInspectionService iArchiveInspectionService;
+
+    @Override
+    public Map<String, Map<String,Object>> getAllopinion(String fileIds) {
+        return iArchiveInspectionService.getAllopinion(fileIds);
+    }
+}

+ 17 - 3
blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.xml

@@ -375,7 +375,8 @@
         where project_id = #{projectId};
     </select>
     <select id="pageByArchivesAuto" resultMap="archivesAutoResultMap">
-        select uaa.* from m_archive_tree_contract matc left join u_archives_auto uaa on matc.id = uaa.node_id left join
+        select uaa.*,(select COUNT(1) from u_archive_file af WHERE af.archive_id = uaa.id AND af.is_element = 0 and af.is_deleted = 0) as pageNumber
+        from m_archive_tree_contract matc left join u_archives_auto uaa on matc.id = uaa.node_id left join
         u_archive_file uaf on uaa.id = uaf.archive_id
         where uaa.is_deleted = 0 and uaa.is_archive = 1
         <if test="vo.projectId != null and vo.projectId != ''">
@@ -425,7 +426,7 @@
     </select>
 
     <select id="pageByArchivesAuto2" resultMap="archivesAutoResultMap">
-        select uaa.* from
+        select uaa.*,(select COUNT(1) from u_archive_file af WHERE af.archive_id = uaa.id AND af.is_element = 0 and af.is_deleted = 0) as pageNumber from
         (SELECT id FROM m_archive_tree_contract WHERE project_id =#{vo.projectId}
         and 1=2
         <foreach collection="vo.nodeIdArray" item="nodeId">
@@ -478,12 +479,16 @@
     </select>
 
     <select id="pageByArchivesAuto3" resultMap="archivesAutoResultMap">
-        select uaa.* from
+        select uaa.*,(select COUNT(1) from u_archive_file af WHERE af.archive_id = uaa.id AND af.is_element = 0 and af.is_deleted = 0) as pageNumber
+        from
         (SELECT id FROM m_archive_tree_contract WHERE project_id =#{vo.projectId}
         and  ancestors like concat('%',#{vo.nodeId},'%')
         ) matc left join u_archives_auto uaa on matc.id = uaa.node_id left join u_archive_file uaf on uaa.id =
         uaf.archive_id
         where uaa.is_deleted = 0 and uaa.is_archive = 1
+        <if test="vo.contractId != null and vo.contractId != ''">
+            and uaa.contract_id = #{vo.contractId}
+        </if>
         GROUP BY uaa.id
         order by uaa.tree_sort,uaa.auto_file_sort,uaa.file_number asc
     </select>
@@ -495,6 +500,9 @@
         ) matc left join u_archives_auto uaa on matc.id = uaa.node_id left join u_archive_file uaf on uaa.id =
         uaf.archive_id
         where uaa.is_deleted = 0 and uaa.is_archive = 1
+        <if test="vo.contractId != null and vo.contractId != ''">
+            and uaa.contract_id = #{vo.contractId}
+        </if>
         <if test="vo.searchType == 1 and vo.queryValue != null and vo.queryValue != ''">
             and uaa.name like concat('%',#{vo.queryValue},'%')
         </if>
@@ -542,6 +550,9 @@
         ) matc left join u_archives_auto uaa on matc.id = uaa.node_id left join u_archive_file uaf on uaa.id =
         uaf.archive_id
         where uaa.is_deleted = 0 and uaa.is_archive = 1
+        <if test="vo.contractId != null and vo.contractId != ''">
+            and uaa.contract_id = #{vo.contractId}
+        </if>
         GROUP BY uaa.id
         order by uaa.tree_sort,uaa.auto_file_sort,uaa.file_number asc
 --         order by uaa.id
@@ -554,6 +565,9 @@
         ) matc left join u_archives_auto uaa on matc.id = uaa.node_id left join u_archive_file uaf on uaa.id =
         uaf.archive_id
         where uaa.is_deleted = 0 and uaa.is_archive = 1
+        <if test="vo.contractId != null and vo.contractId != ''">
+            and uaa.contract_id = #{vo.contractId}
+        </if>
         <if test="vo.searchType == 1 and vo.queryValue != null and vo.queryValue != ''">
             and uaa.name like concat('%',#{vo.queryValue},'%')
         </if>

+ 5 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/service/IArchiveInspectionService.java

@@ -4,6 +4,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.archive.dto.ArchiveInspectionDTO;
 import org.springblade.archive.entity.ArchiveInspection;
 
+import java.util.List;
+import java.util.Map;
+
 public interface IArchiveInspectionService extends IService<ArchiveInspection> {
     ArchiveInspectionDTO getbyFileId(Long fileId, Long userId);
+
+    Map<String,Map<String,Object>> getAllopinion(String fileIds);
 }

+ 2 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/service/IArchivesAutoService.java

@@ -88,4 +88,6 @@ public interface IArchivesAutoService extends BaseService<ArchivesAuto> {
 	List<Map<String,List<Map<String,String>>>> getArchivesCabinet(ArchivesAutoVO archivesAuto);
 
 	R pageByArchivesAuto2(ArchivesAutoVO archivesAuto);
+
+    void getArchivesAuthByUser(Long projectId,Long contractId,Integer archiveType);
 }

+ 44 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchiveInspectionServiceImpl.java

@@ -11,7 +11,10 @@ import org.springblade.core.mp.base.BaseServiceImpl;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 @Service
 @AllArgsConstructor
@@ -44,4 +47,45 @@ public class ArchiveInspectionServiceImpl extends BaseServiceImpl<ArchiveInspect
         archiveInspectionDTO.setAllOpinion(allOpinion);
         return archiveInspectionDTO;
     }
+
+    @Override
+    public Map<String,Map<String,Object>> getAllopinion(String fileIds) {
+
+        LambdaQueryWrapper<ArchiveInspection> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.in(ArchiveInspection::getFileId, fileIds.split(","))
+                .eq(ArchiveInspection::getIsDeleted, 0);
+        List<ArchiveInspection> archiveInspectionList = archiveInspectionMapper.selectList(queryWrapper);
+        if(archiveInspectionList == null || archiveInspectionList.isEmpty()) {
+            return null;
+        }
+        Map<String,List<ArchiveInspection>> listMap = new HashMap<>();
+        for(ArchiveInspection archiveInspection : archiveInspectionList){
+            List<ArchiveInspection> list = null;
+            if(listMap.get(archiveInspection.getFileId().toString()) != null){
+                list = listMap.get(archiveInspection.getFileId().toString());
+            }else{
+                list = new ArrayList<>();
+            }
+            list.add(archiveInspection);
+            listMap.put(archiveInspection.getFileId().toString(),list);
+        }
+        Map<String,Map<String,Object>> map = new HashMap<>();
+        String allOpinion = "";
+        for(String key : listMap.keySet()) {
+            List<ArchiveInspection> inspections = listMap.get(key);
+            int count = 1;
+            for (ArchiveInspection archiveInspection : inspections) {
+                String opinion = archiveInspection.getOpinion();
+                if (opinion != null && !opinion.trim().isEmpty()) {
+                    allOpinion += count + ". " + opinion.trim() + " ; ";
+                    count++;
+                }
+            }
+            Map<String,Object> map1 = new HashMap<>();
+            map1.put("allOpinion",allOpinion);
+            map1.put("ArchiveName",inspections.get(0).getArchiveName());
+            map.put(key,map1);
+        }
+        return map;
+    }
 }

+ 47 - 1
blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java

@@ -183,10 +183,19 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		//获取单位首节点
 		ArchiveTreeContract	contract = archiveTreeContractClient.getFirstNodeByTreeCode(vo.getProjectId(),vo.getArchiveType());
 		vo.setNodeId(contract.getId());
+		//获取合同段类型
+		ContractInfo contractInfo = contractClient.getContractById(vo.getContractId());
+		Integer contractType = contractInfo.getContractType();
+		//根据用户在当前合同段的权限,判断返回
+		BladeUser user = AuthUtil.getUser();
+		String name = baseMapper.getUserRoleName(vo.getProjectId(),vo.getContractId(),user.getUserId());
+		if (name.contains("超级管理员") || contractType == 3) {
+			vo.setContractId(null);
+		}
 		//根据单位查询出当前箱子所有档案,最大为160条
 		List<ArchivesAutoVO> archivesAutos = baseMapper.pageByArchivesAuto3(page, vo);
 		//根据条件筛选
-		if (vo.getInnerSearch() != null){
+		if (StringUtils.isNotBlank(vo.getInnerSearch())){
 			vo.setQueryValue(vo.getInnerSearch());
 			vo.setSearchType(1);
 			vo.setStorageTimes(null);
@@ -204,11 +213,17 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		}
 		if (archivesAutos != null && archivesAutos.size() >0) {
 			for (ArchivesAutoVO aa : archivesAutos) {
+				//是否选中
 				if (ids.contains(aa.getId())){
 					aa.setIsSelect(1);
 				}else {
 					aa.setIsSelect(0);
 				}
+				//柜子里面侧面编号
+				if (aa.getFileNumber() != null && aa.getFileNumber() != "") {
+					String[] split = aa.getFileNumber().split("_");
+					aa.setFileNumber(split[split.length - 1]);
+				}
 				if (StringUtils.isNotBlank(aa.getStorageTime())) {
 					aa.setStorageTimeValue("3".equals(aa.getStorageTime()) ? "永久" : ("2".equals(aa.getStorageTime()) ? "30年" : "10年"));
 				}
@@ -235,6 +250,28 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		}
 	}
 
+	@Override
+	public void getArchivesAuthByUser(Long projectId,Long contractId,Integer archiveType) {
+		//获取合同段类型
+		ContractInfo contractInfo = contractClient.getContractById(contractId);
+		Integer contractType = contractInfo.getContractType();
+		//根据用户在当前合同段的权限,判断返回
+		BladeUser user = AuthUtil.getUser();
+		String name = baseMapper.getUserRoleName(projectId,contractId,user.getUserId());
+		if (!(name.contains("超级管理员") || (contractType == 3))) {
+			if (contractType == 1){
+				contractType = 2;
+			}else if (contractType == 2){
+				contractType = 3;
+			}else {
+				contractType = 1;
+			}
+			if (contractType != archiveType){
+				throw new ServiceException("无权限查看");
+			}
+		}
+	}
+
 	/**
 	 * 根据搜索获取档案柜
 	 * @param archivesAuto
@@ -247,6 +284,15 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		if (contract == null){
 			throw new ServiceException("归档树节点错误");
 		}
+		//获取合同段类型
+		ContractInfo contractInfo = contractClient.getContractById(archivesAuto.getContractId());
+		Integer contractType = contractInfo.getContractType();
+		//根据用户在当前合同段的权限,判断返回
+		BladeUser user = AuthUtil.getUser();
+		String name = baseMapper.getUserRoleName(archivesAuto.getProjectId(),archivesAuto.getContractId(),user.getUserId());
+		if (name.contains("超级管理员") || contractType == 3) {
+			archivesAuto.setContractId(null);
+		}
 		//如果没有获取到对应单位,则提示
 		archivesAuto.setNodeId(contract.getId());
 		//根据单位查询所有档案

+ 20 - 1
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/ArchiveFileServiceImpl.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import lombok.AllArgsConstructor;
 import org.apache.commons.lang.StringUtils;
+import org.springblade.archive.feign.ArchiveInspectionInfoClient;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.business.vo.ArchiveFileVO;
 import org.springblade.business.mapper.ArchiveFileMapper;
@@ -36,6 +37,7 @@ public class ArchiveFileServiceImpl extends BaseServiceImpl<ArchiveFileMapper, A
     private final NewIOSSClient iossClient;
 
     private ExecutorService executorService;
+    private final ArchiveInspectionInfoClient archiveInspectionInfoClient;
 
     @Override
     public IPage<ArchiveFileVO> selectArchiveFilePage(ArchiveFileVO vo) {
@@ -60,7 +62,7 @@ public class ArchiveFileServiceImpl extends BaseServiceImpl<ArchiveFileMapper, A
 
         //获取业务字典
         List<DictBiz> sheetSourceList = this.dictBizClient.getList("sheet_source", "notRoot").getData();
-
+        StringBuffer fileIds = new StringBuffer();
         pageVoList.forEach(vos -> {
             vos.setIsApprovalValue(new Integer("0").equals(vos.getStatus()) ? "未上报" : new Integer("1").equals(vos.getStatus()) ? "待审批" : new Integer("2").equals(vos.getStatus()) ? "已审批" : "已废除");
             vos.setIsCertificationValue(new Integer("1").equals(vos.getIsCertification()) ? "已认证" : "未认证");
@@ -71,8 +73,25 @@ public class ArchiveFileServiceImpl extends BaseServiceImpl<ArchiveFileMapper, A
                     }
                 });
             }
+            fileIds.append(vos.getId()+",");
         });
+        if(vo.getRectification() != null &&(vo.getRectification() == 1 || vo.getRectification() == 2)) {
+            Map<String, Map<String, Object>> allopinion = archiveInspectionInfoClient.getAllopinion(fileIds.toString());
+            if (allopinion != null) {
+                pageVoList.forEach(vos -> {
+                    Map<String, Object> map = allopinion.get(vos.getId().toString());
+                    if (map != null) {
+                        if (map.get("ArchiveName") != null) {
+                            vos.setArchiveName(map.get("ArchiveName").toString());
+                        }
+                        if (map.get("allOpinion") != null) {
+                            vos.setAllOpinion(map.get("allOpinion").toString());
+                        }
+                    }
 
+                });
+            }
+        }
         return iPage.setRecords(pageVoList);
     }
 

+ 6 - 3
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/MetadataClassificationServiceImpl.java

@@ -235,7 +235,10 @@ public class MetadataClassificationServiceImpl
 
             /**聚合层次**/
             ArchiveTreeContract archiveTreeContractById = archiveTreeContractClient.getArchiveTreeContractById(Long.parseLong(byId.getNodeId()));
-            List<ArchiveTreeContract> list = archiveTreeContractClient.getArchiveTreeContractListByIds(archiveTreeContractById.getAncestors());
+            String ancestors = archiveTreeContractById.getAncestors();
+            ancestors = ancestors.substring(ancestors.indexOf(","));
+            ancestors = ancestors + "," + archiveTreeContractById.getId();
+            List<ArchiveTreeContract> list = archiveTreeContractClient.getArchiveTreeContractListByIds(ancestors);
             StringBuffer nameStr = new StringBuffer();
             for (ArchiveTreeContract treeContract : list) {
                 nameStr.append(treeContract.getNodeName());
@@ -269,10 +272,10 @@ public class MetadataClassificationServiceImpl
             keyValue.put("题名", byId.getFileName());
             /**关键词**/
             String keyWords = "";
-            if (byId.getFileName().length() < 8) {
+            if (byId.getFileName().length() < 9) {
                 keyWords = byId.getFileName();
             } else {
-                keyWords = byId.getFileName().substring(0, 7);
+                keyWords = byId.getFileName().substring(0, 8);
             }
             keyValue.put("关键词", keyWords);
             /**摘要**/

+ 2 - 1
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TaskServiceImpl.java

@@ -511,12 +511,13 @@ public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, Task> implement
     }
 
 
-    @Scheduled(cron = "0 */2 * * * ?")
+    @Scheduled(cron = "0 */5 * * * ?")
     public void SignInfo() {
         //执行代码
         logger.debug("扫描开始");
         List<TaskBatch> maps = taskBatchService.getBaseMapper().selectList(Wrappers.<TaskBatch>lambdaQuery().eq(TaskBatch::getIsDeleted, 0));
         if (maps != null && maps.size() >= 1) {
+
             for (TaskBatch dataInfo : maps) {
                 String jsonData = dataInfo.getJsonData();
                 List<TaskApprovalVO> list = JSONArray.parseArray(jsonData, TaskApprovalVO.class);

+ 38 - 0
blade-service/blade-control/pom.xml

@@ -30,5 +30,43 @@
             <artifactId>blade-control-api</artifactId>
             <version>${bladex.project.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.springblade</groupId>
+            <artifactId>blade-user-api</artifactId>
+            <version>2.9.1.RELEASE</version>
+            <scope>compile</scope>
+        </dependency>
     </dependencies>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>com.spotify</groupId>
+                <artifactId>dockerfile-maven-plugin</artifactId>
+                <configuration>
+                    <username>${docker.username}</username>
+                    <password>${docker.password}</password>
+                    <repository>${docker.registry.url}/${docker.namespace}/${project.artifactId}</repository>
+                    <tag>${project.version}</tag>
+                    <useMavenSettingsForAuth>true</useMavenSettingsForAuth>
+                    <buildArgs>
+                        <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
+                    </buildArgs>
+                    <skip>false</skip>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <source>${java.version}</source>
+                    <target>${java.version}</target>
+                    <encoding>${project.build.sourceEncoding}</encoding>
+                    <compilerArguments>
+                        <bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar:${java.home}/lib/jsse.jar
+                        </bootclasspath>
+                    </compilerArguments>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
 </project>

+ 78 - 0
blade-service/blade-control/src/main/java/org/springblade/control/controller/CSysController.java

@@ -0,0 +1,78 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.control.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.*;
+import lombok.AllArgsConstructor;
+
+import org.springblade.control.service.IDictInfoService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.manager.entity.ExctabCell;
+import org.springblade.system.user.entity.User;
+import org.springblade.system.user.feign.IUserClient;
+import org.springblade.system.user.vo.UserVO;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+/**
+ * 参数信息表 控制器
+ *
+ * @author BladeX
+ * @since 2023-06-05
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/sysinfo")
+@Api(value = "系统信息", tags = "系统信息接口")
+public class CSysController extends BladeController {
+
+  // 用户fen
+  private final IUserClient userClient;
+
+  //参数信息表
+  private final IDictInfoService dictInfoService;
+
+  /**
+   * 新增或修改 参数信息表
+   */
+  @PostMapping("/saveUser")
+  @ApiOperationSupport(order = 1)
+  @ApiOperation(value = "新增或修改", notes = "传入dictInfo")
+  public R submit(@Valid @RequestBody User user) {
+    return userClient.saveUser(user);
+  }
+
+
+  /**
+   * 分页 用户查询
+   */
+  @GetMapping("/selectUserlist")
+  @ApiOperationSupport(order = 2)
+  @ApiOperation(value = "用户分页查询", notes = "传入user")
+  public R<IPage<UserVO>> selectUserlist(UserVO user, Query query) {
+    IPage<UserVO> pages = dictInfoService.selectUserTabPage(Condition.getPage(query), user);
+    return R.data(pages);
+  }
+
+
+}

+ 11 - 0
blade-service/blade-control/src/main/java/org/springblade/control/controller/ContractInfoController.java

@@ -4,6 +4,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
+import org.springblade.control.dto.ControlContractInfoDTO;
 import org.springblade.control.dto.ControlProjectInfoDTO;
 import org.springblade.control.entity.ControlContractInfo;
 import org.springblade.control.service.IContractInfoService;
@@ -67,6 +68,16 @@ public class ContractInfoController {
         return R.data(contractInfoService.getContractInfoById(id));
     }
 
+    /**
+     * 合同列表,分页查询
+     */
+    @GetMapping("/getPage")
+    @ApiOperationSupport(order = 3)
+    @ApiOperation(value = "合同列表,分页查询")
+    public R getPage(ControlContractInfoDTO dto,Query query) {
+        return R.data(contractInfoService.getPage(dto,query));
+    }
+
     /**
      * 获取合同类型字典
      */

+ 50 - 0
blade-service/blade-control/src/main/java/org/springblade/control/controller/ContractReturnedInfoController.java

@@ -0,0 +1,50 @@
+package org.springblade.control.controller;
+
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.control.dto.ContractReturnedInfoDTO;
+import org.springblade.control.entity.ContractReturnedInfo;
+import org.springblade.control.entity.ControlContractInfo;
+import org.springblade.control.service.IContractInfoService;
+import org.springblade.control.service.IContractReturnedInfoService;
+import org.springblade.core.tool.api.R;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2023/6/6 16:03
+ **/
+@RestController
+@AllArgsConstructor
+@RequestMapping("/contractReturnedInfo")
+@Api(value = "合同回款接口", tags = "合同回款接口")
+public class ContractReturnedInfoController {
+
+    private final IContractReturnedInfoService contractReturnedInfoService;
+
+    /**
+     * 批量新增或修改回款信息
+     */
+    @PostMapping("/saveOrUpdateBatchReturned")
+    @ApiOperationSupport(order = 1)
+    @ApiOperation(value = "批量新增或修改回款信息")
+    public R saveOrUpdateBatchReturned(@RequestBody ContractReturnedInfoDTO dto) {
+        contractReturnedInfoService.saveOrUpdateBatchReturned(dto);
+        return R.success("保存成功");
+    }
+
+    /**
+     * 获取合同回款列表
+     */
+    @GetMapping("/getContractReturnList")
+    @ApiOperationSupport(order = 2)
+    @ApiOperation(value = "获取合同回款列表")
+    public R getContractReturnList(Long contractId){
+        return R.data(contractReturnedInfoService.getContractReturnList(contractId));
+    }
+}

+ 15 - 15
blade-service/blade-control/src/main/java/org/springblade/control/controller/DictInfoController.java

@@ -58,7 +58,7 @@ public class DictInfoController extends BladeController {
      * 新增或修改 参数信息表
      */
     @PostMapping("/submit")
-    @ApiOperationSupport(order = 6)
+    @ApiOperationSupport(order = 1)
     @ApiOperation(value = "新增或修改", notes = "传入dictInfo")
     public R submit(@Valid @RequestBody DictInfo dictInfo) {
         return R.status(dictInfoService.saveOrUpdate(dictInfo));
@@ -69,21 +69,21 @@ public class DictInfoController extends BladeController {
      * 删除 参数信息表
      */
     @PostMapping("/remove")
-    @ApiOperationSupport(order = 7)
+    @ApiOperationSupport(order = 2)
     @ApiOperation(value = "逻辑删除", notes = "传入ids")
     public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
-        return R.status(dictInfoService.deleteLogic(Func.toLongList(ids)));
+        return R.status(dictInfoService.removeBatchByIds(Func.toLongList(ids)));
     }
 
 
     /**
      * 获取字典
      */
-    @GetMapping("/dictionary")
-    @ApiOperationSupport(order = 8)
-    @ApiOperation(value = "获取字典", notes = "获取字典")
-    public R<List<DictBiz>> dictionary(String code) {
-        List<DictBiz> tree = dictInfoService.getList(code, "notRoot");
+    @GetMapping("/get-dict-info")
+    @ApiOperationSupport(order = 3)
+    @ApiOperation(value = "参数信息列表", notes = "参数信息列表")
+    public R<List<DictInfo>> getDictInfo(String code) {
+        List<DictInfo> tree = dictInfoService.getDictInfo(code, "notRoot");
         return R.data(tree);
     }
 
@@ -93,10 +93,10 @@ public class DictInfoController extends BladeController {
     @GetMapping("/parent-list")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "code", value = "字典编号", paramType = "query", dataType = "string"),
-            @ApiImplicitParam(name = "dictValue", value = "字典名称", paramType = "query", dataType = "string")
+            @ApiImplicitParam(name = "type", value = "类型", paramType = "query", dataType = "Integer")
     })
-    @ApiOperationSupport(order = 3)
-    @ApiOperation(value = "列表", notes = "传入dict")
+    @ApiOperationSupport(order = 4)
+    @ApiOperation(value = "顶级列表", notes = "顶级列表")
     public R<IPage<DictInfoVO>> parentList(@ApiIgnore @RequestParam Map<String, Object> dict, Query query) {
         return R.data(dictInfoService.parentList(dict, query));
     }
@@ -107,11 +107,11 @@ public class DictInfoController extends BladeController {
     @GetMapping("/child-list")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "code", value = "字典编号", paramType = "query", dataType = "string"),
-            @ApiImplicitParam(name = "dictValue", value = "字典名称", paramType = "query", dataType = "string"),
-            @ApiImplicitParam(name = "parentId", value = "字典名称", paramType = "query", dataType = "string")
+            @ApiImplicitParam(name = "parentId", value = "字典名称", paramType = "query", dataType = "string"),
+            @ApiImplicitParam(name = "type", value = "类型", paramType = "query", dataType = "Integer")
     })
-    @ApiOperationSupport(order = 4)
-    @ApiOperation(value = "列表", notes = "传入dict")
+    @ApiOperationSupport(order = 5)
+    @ApiOperation(value = "子列表", notes = "子列表")
     public R<List<DictInfoVO>> childList(@ApiIgnore @RequestParam Map<String, Object> dict, @RequestParam(required = false, defaultValue = "-1") Long parentId) {
         return R.data(dictInfoService.childList(dict, parentId));
     }

+ 3 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ContractInfoMapper.java

@@ -3,6 +3,7 @@ package org.springblade.control.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
+import org.springblade.control.dto.ControlContractInfoDTO;
 import org.springblade.control.dto.ControlProjectInfoDTO;
 import org.springblade.control.entity.ControlContractInfo;
 import org.springblade.control.entity.ControlProjectInfo;
@@ -25,4 +26,6 @@ public interface ContractInfoMapper extends BaseMapper<ControlContractInfo> {
     List<ControlProjectInfo> getNoConnectionProject();
 
     ControlContractInfoVO getContractInfoById(@Param("id") Long id);
+
+    List<ControlContractInfoVO> getPage(IPage page,@Param("dto") ControlContractInfoDTO dto);
 }

+ 8 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ContractInfoMapper.xml

@@ -18,4 +18,12 @@
             (select name  from c_control_project_info WHERE id = ci.project_id) as projectName
         FROM c_control_contract_info ci WHERE ci.id = #{id}
     </select>
+    <select id="getPage" resultType="org.springblade.control.vo.ControlContractInfoVO">
+        SELECT
+            ci.*,
+            (select dict_name  from c_dict_info WHERE code = 'contract_type' AND dict_value= ci.contract_type) as contractTypeValue,
+            IFNULL((select SUM(practical_returned_money) from c_contract_returned_info WHERE contract_id = ci.id),0)  as returnedMoney,
+            (ci.contract_money - IFNULL((select SUM(practical_returned_money) from c_contract_returned_info WHERE contract_id = ci.id),0)) as unreturnedMoney
+        FROM c_control_contract_info ci
+    </select>
 </mapper>

+ 24 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ContractReturnedInfoMapper.java

@@ -0,0 +1,24 @@
+package org.springblade.control.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.control.entity.ContractReturnedInfo;
+import org.springblade.control.entity.ControlContractInfo;
+import org.springblade.control.entity.ControlProjectInfo;
+import org.springblade.control.entity.DictInfo;
+import org.springblade.control.vo.ContractReturnedInfoVO;
+import org.springblade.control.vo.ControlContractInfoVO;
+
+import java.util.List;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2023/5/12 9:38
+ **/
+public interface ContractReturnedInfoMapper extends BaseMapper<ContractReturnedInfo> {
+
+    void deleteOldInfo(@Param("contractId") Long contractId);
+
+    List<ContractReturnedInfoVO> getContractReturnList(@Param("contractId") Long contractId);
+}

+ 16 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/ContractReturnedInfoMapper.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.control.mapper.ContractReturnedInfoMapper">
+
+
+    <delete id="deleteOldInfo">
+        delete from c_contract_returned_info
+        where contract_id = #{contractId} and  practical_returned_time is null and practical_returned_money is null
+    </delete>
+    <select id="getContractReturnList" resultType="org.springblade.control.vo.ContractReturnedInfoVO">
+        select
+            ri.*,
+            (select name from blade_user WHERE id = ri.reminder_user) as reminderUserName
+        from c_contract_returned_info ri where ri.contract_id = #{contractId}
+    </select>
+</mapper>

+ 4 - 2
blade-service/blade-control/src/main/java/org/springblade/control/mapper/DictInfoMapper.java

@@ -21,7 +21,7 @@ import org.springblade.control.entity.DictInfo;
 import org.springblade.control.vo.DictInfoVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.system.entity.DictBiz;
+import org.springblade.system.user.vo.UserVO;
 
 import java.util.List;
 
@@ -48,5 +48,7 @@ public interface DictInfoMapper extends BaseMapper<DictInfo> {
      * @param code 字典编号
      * @return
      */
-    List<DictBiz> getList(@Param("code") String code, @Param("notRoot") String notRoot);
+    List<DictInfo> getDictInfo(@Param("code") String code, @Param("notRoot") String notRoot);
+
+    List<UserVO> selectUserTabPage(IPage page, @Param("excelTab") UserVO userinfo);
 }

+ 11 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/DictInfoMapper.xml

@@ -21,4 +21,15 @@
         where is_deleted = 0
     </select>
 
+    <select id="getDictInfo" resultMap="dictInfoResultMap">
+        select *
+        from c_dict_info
+        where is_deleted = 0
+    </select>
+
+    <select id="selectUserTabPage" resultMap="dictInfoResultMap">
+        select *
+        from blade_user
+        where is_deleted = 0
+    </select>
 </mapper>

+ 3 - 0
blade-service/blade-control/src/main/java/org/springblade/control/service/IContractInfoService.java

@@ -1,6 +1,7 @@
 package org.springblade.control.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.control.dto.ControlContractInfoDTO;
 import org.springblade.control.dto.ControlProjectInfoDTO;
 import org.springblade.control.entity.ControlContractInfo;
 import org.springblade.control.entity.ControlProjectInfo;
@@ -32,4 +33,6 @@ public interface IContractInfoService extends BaseService<ControlContractInfo> {
     void updateContractInfo(ControlContractInfo contractInfo);
 
     ControlContractInfoVO getContractInfoById(Long id);
+
+    List<ControlContractInfoVO> getPage(ControlContractInfoDTO dto,Query query);
 }

+ 30 - 0
blade-service/blade-control/src/main/java/org/springblade/control/service/IContractReturnedInfoService.java

@@ -0,0 +1,30 @@
+package org.springblade.control.service;
+
+import org.springblade.control.dto.ContractReturnedInfoDTO;
+import org.springblade.control.entity.ContractReturnedInfo;
+import org.springblade.control.entity.ControlContractInfo;
+import org.springblade.control.entity.ControlProjectInfo;
+import org.springblade.control.entity.DictInfo;
+import org.springblade.control.vo.ContractReturnedInfoVO;
+import org.springblade.control.vo.ControlContractInfoVO;
+import org.springblade.core.mp.base.BaseService;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2023/5/12 9:41
+ **/
+public interface IContractReturnedInfoService extends BaseService<ContractReturnedInfo> {
+
+    void saveOrUpdateBatchReturned(ContractReturnedInfoDTO dto);
+
+    /**
+     * 根据合同id获取合同已回款金额
+     */
+    BigDecimal getContractReturnedMoney(Long contractId);
+
+    List<ContractReturnedInfoVO> getContractReturnList(Long contractId);
+}

+ 14 - 5
blade-service/blade-control/src/main/java/org/springblade/control/service/IDictInfoService.java

@@ -16,13 +16,12 @@
  */
 package org.springblade.control.service;
 
+import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.control.entity.DictInfo;
 import org.springblade.control.vo.DictInfoVO;
-import org.springblade.core.mp.base.BaseService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.core.mp.support.Query;
-import org.springblade.system.entity.DictBiz;
-import org.springblade.system.vo.DictBizVO;
+import org.springblade.system.user.vo.UserVO;
 
 import java.util.List;
 import java.util.Map;
@@ -33,7 +32,7 @@ import java.util.Map;
  * @author BladeX
  * @since 2023-06-05
  */
-public interface IDictInfoService extends BaseService<DictInfo> {
+public interface IDictInfoService extends IService<DictInfo> {
 
     /**
      * 自定义分页
@@ -51,7 +50,7 @@ public interface IDictInfoService extends BaseService<DictInfo> {
      * @param code 字典编号
      * @return
      */
-    List<DictBiz> getList(String code, String notRoot);
+    List<DictInfo> getDictInfo(String code, String notRoot);
 
 
     /**
@@ -71,4 +70,14 @@ public interface IDictInfoService extends BaseService<DictInfo> {
      * @return
      */
     List<DictInfoVO> childList(Map<String, Object> dict, Long parentId);
+
+
+    /**
+     * 自定义分页
+     *
+     * @param page
+     * @param userVO
+     * @return
+     */
+    IPage<UserVO> selectUserTabPage(IPage<UserVO> page, UserVO userVO);
 }

+ 21 - 1
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/ContractInfoServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.AllArgsConstructor;
 import org.springblade.common.utils.SnowFlakeUtil;
+import org.springblade.control.dto.ControlContractInfoDTO;
 import org.springblade.control.dto.ControlProjectInfoDTO;
 import org.springblade.control.entity.ControlContractInfo;
 import org.springblade.control.entity.ControlProjectInfo;
@@ -12,6 +13,7 @@ import org.springblade.control.entity.DictInfo;
 import org.springblade.control.mapper.ContractInfoMapper;
 import org.springblade.control.mapper.ProjectInfoMapper;
 import org.springblade.control.service.IContractInfoService;
+import org.springblade.control.service.IContractReturnedInfoService;
 import org.springblade.control.service.IProjectInfoService;
 import org.springblade.control.service.IProjectProcessService;
 import org.springblade.control.vo.ControlContractInfoVO;
@@ -23,6 +25,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.math.BigDecimal;
 import java.util.List;
 
 /**
@@ -34,6 +37,8 @@ import java.util.List;
 @AllArgsConstructor
 public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper, ControlContractInfo> implements IContractInfoService {
 
+    private final IContractReturnedInfoService returnedInfoService;
+
     /**
      * 添加合同信息
      * @param contractInfo
@@ -88,6 +93,21 @@ public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper,
      */
     @Override
     public ControlContractInfoVO getContractInfoById(Long id) {
-        return baseMapper.getContractInfoById(id);
+        ControlContractInfoVO contractInfo = baseMapper.getContractInfoById(id);
+        BigDecimal returnedMoney = returnedInfoService.getContractReturnedMoney(id);
+        contractInfo.setReturnedMoney(returnedMoney);
+        contractInfo.setUnreturnedMoney(contractInfo.getContractMoney().subtract(returnedMoney));
+        return contractInfo;
+    }
+
+    /**
+     * 获取合同列表
+     * @param dto
+     * @return
+     */
+    @Override
+    public List<ControlContractInfoVO> getPage(ControlContractInfoDTO dto,Query query) {
+        IPage<ControlContractInfoVO> page = new Page<>(query.getCurrent(),query.getSize());
+        return baseMapper.getPage(page,dto);
     }
 }

+ 72 - 0
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/ContractReturnedInfoServiceImpl.java

@@ -0,0 +1,72 @@
+package org.springblade.control.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import lombok.AllArgsConstructor;
+import org.springblade.control.dto.ContractReturnedInfoDTO;
+import org.springblade.control.entity.ContractReturnedInfo;
+import org.springblade.control.entity.ControlContractInfo;
+import org.springblade.control.entity.ControlProjectInfo;
+import org.springblade.control.entity.DictInfo;
+import org.springblade.control.mapper.ContractInfoMapper;
+import org.springblade.control.mapper.ContractReturnedInfoMapper;
+import org.springblade.control.service.IContractInfoService;
+import org.springblade.control.service.IContractReturnedInfoService;
+import org.springblade.control.vo.ContractReturnedInfoVO;
+import org.springblade.control.vo.ControlContractInfoVO;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2023/5/12 9:43
+ **/
+@Service
+@AllArgsConstructor
+public class ContractReturnedInfoServiceImpl extends BaseServiceImpl<ContractReturnedInfoMapper, ContractReturnedInfo> implements IContractReturnedInfoService {
+
+
+    /**
+     * 批量新增或保存合同回款信息
+     * @param dto
+     */
+    @Override
+    @Transactional
+    public void saveOrUpdateBatchReturned(ContractReturnedInfoDTO dto) {
+        baseMapper.deleteOldInfo(dto.getContractId());
+        this.saveOrUpdateBatch(dto.getList());
+    }
+
+    /**
+     * 根据合同id获取合同已回款
+     * @param contractId
+     * @return
+     */
+    @Override
+    public BigDecimal getContractReturnedMoney(Long contractId) {
+        BigDecimal money = new BigDecimal(0);
+        List<ContractReturnedInfo> list = this.list(new LambdaQueryWrapper<ContractReturnedInfo>().eq(ContractReturnedInfo::getContractId, contractId));
+        if (list != null && list.size() >0){
+            for (ContractReturnedInfo info : list) {
+                if (info.getPracticalReturnedMoney() != null){
+                    money = money.add(info.getPracticalReturnedMoney());
+                }
+            }
+        }
+        return money;
+    }
+
+    /**
+     * 获取合同回款列表
+     * @param contractId
+     * @return
+     */
+    @Override
+    public List<ContractReturnedInfoVO> getContractReturnList(Long contractId) {
+        return baseMapper.getContractReturnList(contractId);
+    }
+}

+ 12 - 7
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/DictInfoServiceImpl.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.control.service.impl;
 
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springblade.common.constant.CommonConstant;
 import org.springblade.control.entity.DictInfo;
 import org.springblade.control.vo.DictInfoVO;
@@ -27,6 +28,7 @@ import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.system.cache.DictBizCache;
 import org.springblade.system.entity.DictBiz;
+import org.springblade.system.user.vo.UserVO;
 import org.springblade.system.vo.DictBizVO;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -42,7 +44,7 @@ import java.util.Map;
  * @since 2023-06-05
  */
 @Service
-public class DictInfoServiceImpl extends BaseServiceImpl<DictInfoMapper, DictInfo> implements IDictInfoService {
+public class DictInfoServiceImpl extends ServiceImpl<DictInfoMapper, DictInfo> implements IDictInfoService {
 
     @Override
     public IPage<DictInfoVO> selectDictInfoPage(IPage<DictInfoVO> page, DictInfoVO dictInfo) {
@@ -50,13 +52,13 @@ public class DictInfoServiceImpl extends BaseServiceImpl<DictInfoMapper, DictInf
     }
 
     @Override
-    public List<DictBiz> getList(String code, String notRoot) {
-        return baseMapper.getList(code, notRoot);
+    public List<DictInfo> getDictInfo(String code, String notRoot) {
+        return baseMapper.getDictInfo(code, notRoot);
     }
 
     @Override
     public IPage<DictInfoVO> parentList(Map<String, Object> dict, Query query) {
-        IPage<DictInfo> page = this.page(Condition.getPage(query), Condition.getQueryWrapper(dict, DictInfo.class).lambda().eq(DictInfo::getParentId, CommonConstant.TOP_PARENT_ID).orderByAsc(DictInfo::getSort));
+        IPage<DictInfo> page = this.page(Condition.getPage(query), Condition.getQueryWrapper(dict, DictInfo.class).lambda().eq(DictInfo::getParentId, CommonConstant.TOP_PARENT_ID).eq(DictInfo::getType, Integer.parseInt(dict.get("type") + "")).orderByAsc(DictInfo::getSort));
         return DictInfoWrapper.build().pageVO(page);
     }
 
@@ -65,9 +67,12 @@ public class DictInfoServiceImpl extends BaseServiceImpl<DictInfoMapper, DictInf
         if (parentId < 0) {
             return new ArrayList<>();
         }
-        dict.remove("parentId");
-        DictBiz parentDict = DictBizCache.getById(parentId);
-        List<DictInfo> list = this.list(Condition.getQueryWrapper(dict, DictInfo.class).lambda().ne(DictInfo::getId, parentId).eq(DictInfo::getCode, parentDict.getCode()).orderByAsc(DictInfo::getSort));
+        List<DictInfo> list = this.list(Condition.getQueryWrapper(dict, DictInfo.class).lambda().ne(DictInfo::getId, parentId).eq(DictInfo::getType, Integer.parseInt(dict.get("type") + "")).orderByAsc(DictInfo::getSort));
         return DictInfoWrapper.build().listNodeVO(list);
     }
+
+    @Override
+    public IPage<UserVO> selectUserTabPage(IPage<UserVO> page, UserVO userVO) {
+        return page.setRecords(baseMapper.selectUserTabPage(page, userVO));
+    }
 }

+ 5 - 5
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java

@@ -1587,19 +1587,19 @@ public class ExcelTabController extends BladeController {
         List<Map<String, Object>> maps = jdbcTemplate.queryForList(sql);
         if (maps.size() >= 1) {
             Map<String, Object> stringObjectMap = maps.get(0);
-            Object pdfUrl = stringObjectMap.get("pdf_url");
+            String pdfUrl = stringObjectMap.get("pdf_url") + "";
             if (stringObjectMap.get("e_visa_pdf_url") != null) {
                 //优先使用电签的pdf
-                pdfUrl = stringObjectMap.get("e_visa_pdf_url");
+                pdfUrl = stringObjectMap.get("e_visa_pdf_url") + "";
             }
 
             if (stringObjectMap.get("pdf_trial_url") != null || stringObjectMap.get("pdf_trial_url_position") != null) {
                 //合并试验关联文件、试验工程部位信息的pdf
-                pdfUrl = this.mergePdfShow(pdfUrl, stringObjectMap);
+                pdfUrl = this.mergePdfShow(pdfUrl, stringObjectMap) + "";
             }
 
-            if (StringUtils.isEmpty(pdfUrl + "")) {
-                return R.fail(300, "无数据");
+            if (StringUtils.isEmpty(pdfUrl) || pdfUrl.equals("null")) {
+                return R.fail("获取PDF失败");
             } else {
                 return R.data(pdfUrl);
             }

+ 0 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -1599,7 +1599,6 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
     @Override
     public void getBussPdfs(String nodeId, String classify, String contractId, String projectId) throws Exception {
         String file_path = ParamCache.getValue(CommonConstant.SYS_LOCAL_URL);
-        //String file_path = "/Users/hongchuangyanfa/Desktop/";
         // 获取有权限的节点信息
         List<AppWbsTreeContractVO> wbsTreeContractList = wbsTreeContractService.searchNodeAllTable(nodeId, classify, contractId, projectId);
         List<String> data = new ArrayList<>();

+ 0 - 127
src/main/java/org/springblade/control/controller/DictInfoController.java

@@ -1,127 +0,0 @@
-/*
- *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
- *
- *  Redistribution and use in source and binary forms, with or without
- *  modification, are permitted provided that the following conditions are met:
- *
- *  Redistributions of source code must retain the above copyright notice,
- *  this list of conditions and the following disclaimer.
- *  Redistributions in binary form must reproduce the above copyright
- *  notice, this list of conditions and the following disclaimer in the
- *  documentation and/or other materials provided with the distribution.
- *  Neither the name of the dreamlu.net developer nor the names of its
- *  contributors may be used to endorse or promote products derived from
- *  this software without specific prior written permission.
- *  Author: Chill 庄骞 (smallchill@163.com)
- */
-package org.springblade.control.controller;
-
-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.validation.Valid;
-
-import org.springblade.core.mp.support.Condition;
-import org.springblade.core.mp.support.Query;
-import org.springblade.core.tool.api.R;
-import org.springblade.core.tool.utils.Func;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.bind.annotation.RequestParam;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.control.entity.DictInfo;
-import org.springblade.control.vo.DictInfoVO;
-import org.springblade.control.service.IDictInfoService;
-import org.springblade.core.boot.ctrl.BladeController;
-
-/**
- * 参数信息表 控制器
- *
- * @author BladeX
- * @since 2023-06-05
- */
-@RestController
-@AllArgsConstructor
-@RequestMapping("/dictinfo")
-@Api(value = "参数信息表", tags = "参数信息表接口")
-public class DictInfoController extends BladeController {
-
-	private final IDictInfoService dictInfoService;
-
-	/**
-	 * 详情
-	 */
-	@GetMapping("/detail")
-	@ApiOperationSupport(order = 1)
-	@ApiOperation(value = "详情", notes = "传入dictInfo")
-	public R<DictInfo> detail(DictInfo dictInfo) {
-		DictInfo detail = dictInfoService.getOne(Condition.getQueryWrapper(dictInfo));
-		return R.data(detail);
-	}
-
-	/**
-	 * 分页 参数信息表
-	 */
-	@GetMapping("/list")
-	@ApiOperationSupport(order = 2)
-	@ApiOperation(value = "分页", notes = "传入dictInfo")
-	public R<IPage<DictInfo>> list(DictInfo dictInfo, Query query) {
-		IPage<DictInfo> pages = dictInfoService.page(Condition.getPage(query), Condition.getQueryWrapper(dictInfo));
-		return R.data(pages);
-	}
-
-	/**
-	 * 自定义分页 参数信息表
-	 */
-	@GetMapping("/page")
-	@ApiOperationSupport(order = 3)
-	@ApiOperation(value = "分页", notes = "传入dictInfo")
-	public R<IPage<DictInfoVO>> page(DictInfoVO dictInfo, Query query) {
-		IPage<DictInfoVO> pages = dictInfoService.selectDictInfoPage(Condition.getPage(query), dictInfo);
-		return R.data(pages);
-	}
-
-	/**
-	 * 新增 参数信息表
-	 */
-	@PostMapping("/save")
-	@ApiOperationSupport(order = 4)
-	@ApiOperation(value = "新增", notes = "传入dictInfo")
-	public R save(@Valid @RequestBody DictInfo dictInfo) {
-		return R.status(dictInfoService.save(dictInfo));
-	}
-
-	/**
-	 * 修改 参数信息表
-	 */
-	@PostMapping("/update")
-	@ApiOperationSupport(order = 5)
-	@ApiOperation(value = "修改", notes = "传入dictInfo")
-	public R update(@Valid @RequestBody DictInfo dictInfo) {
-		return R.status(dictInfoService.updateById(dictInfo));
-	}
-
-	/**
-	 * 新增或修改 参数信息表
-	 */
-	@PostMapping("/submit")
-	@ApiOperationSupport(order = 6)
-	@ApiOperation(value = "新增或修改", notes = "传入dictInfo")
-	public R submit(@Valid @RequestBody DictInfo dictInfo) {
-		return R.status(dictInfoService.saveOrUpdate(dictInfo));
-	}
-
-	
-	/**
-	 * 删除 参数信息表
-	 */
-	@PostMapping("/remove")
-	@ApiOperationSupport(order = 7)
-	@ApiOperation(value = "逻辑删除", notes = "传入ids")
-	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
-		return R.status(dictInfoService.deleteLogic(Func.toLongList(ids)));
-	}
-
-	
-}

+ 0 - 34
src/main/java/org/springblade/control/dto/DictInfoDTO.java

@@ -1,34 +0,0 @@
-/*
- *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
- *
- *  Redistribution and use in source and binary forms, with or without
- *  modification, are permitted provided that the following conditions are met:
- *
- *  Redistributions of source code must retain the above copyright notice,
- *  this list of conditions and the following disclaimer.
- *  Redistributions in binary form must reproduce the above copyright
- *  notice, this list of conditions and the following disclaimer in the
- *  documentation and/or other materials provided with the distribution.
- *  Neither the name of the dreamlu.net developer nor the names of its
- *  contributors may be used to endorse or promote products derived from
- *  this software without specific prior written permission.
- *  Author: Chill 庄骞 (smallchill@163.com)
- */
-package org.springblade.control.dto;
-
-import org.springblade.control.entity.DictInfo;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-/**
- * 参数信息表数据传输对象实体类
- *
- * @author BladeX
- * @since 2023-06-05
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class DictInfoDTO extends DictInfo {
-	private static final long serialVersionUID = 1L;
-
-}

+ 0 - 64
src/main/java/org/springblade/control/entity/DictInfo.java

@@ -1,64 +0,0 @@
-/*
- *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
- *
- *  Redistribution and use in source and binary forms, with or without
- *  modification, are permitted provided that the following conditions are met:
- *
- *  Redistributions of source code must retain the above copyright notice,
- *  this list of conditions and the following disclaimer.
- *  Redistributions in binary form must reproduce the above copyright
- *  notice, this list of conditions and the following disclaimer in the
- *  documentation and/or other materials provided with the distribution.
- *  Neither the name of the dreamlu.net developer nor the names of its
- *  contributors may be used to endorse or promote products derived from
- *  this software without specific prior written permission.
- *  Author: Chill 庄骞 (smallchill@163.com)
- */
-package org.springblade.control.entity;
-
-import com.baomidou.mybatisplus.annotation.TableName;
-import java.io.Serializable;
-import org.springblade.core.mp.base.BaseEntity;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-/**
- * 参数信息表实体类
- *
- * @author BladeX
- * @since 2023-06-05
- */
-@Data
-@TableName("c_dict_info")
-@EqualsAndHashCode(callSuper = true)
-public class DictInfo extends BaseEntity {
-
-	private static final long serialVersionUID = 1L;
-
-	/**
-	* 父主键
-	*/
-		private Long parentId;
-	/**
-	* 字典名称
-	*/
-		private String dictName;
-	/**
-	* 字典值
-	*/
-		private String dictValue;
-	/**
-	* 排序
-	*/
-		private Integer sort;
-	/**
-	* 参数类型
-	*/
-		private Integer type;
-	/**
-	* 自定义码
-	*/
-		private String code;
-
-
-}

+ 0 - 42
src/main/java/org/springblade/control/mapper/DictInfoMapper.java

@@ -1,42 +0,0 @@
-/*
- *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
- *
- *  Redistribution and use in source and binary forms, with or without
- *  modification, are permitted provided that the following conditions are met:
- *
- *  Redistributions of source code must retain the above copyright notice,
- *  this list of conditions and the following disclaimer.
- *  Redistributions in binary form must reproduce the above copyright
- *  notice, this list of conditions and the following disclaimer in the
- *  documentation and/or other materials provided with the distribution.
- *  Neither the name of the dreamlu.net developer nor the names of its
- *  contributors may be used to endorse or promote products derived from
- *  this software without specific prior written permission.
- *  Author: Chill 庄骞 (smallchill@163.com)
- */
-package org.springblade.control.mapper;
-
-import org.springblade.control.entity.DictInfo;
-import org.springblade.control.vo.DictInfoVO;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import java.util.List;
-
-/**
- * 参数信息表 Mapper 接口
- *
- * @author BladeX
- * @since 2023-06-05
- */
-public interface DictInfoMapper extends BaseMapper<DictInfo> {
-
-	/**
-	 * 自定义分页
-	 *
-	 * @param page
-	 * @param dictInfo
-	 * @return
-	 */
-	List<DictInfoVO> selectDictInfoPage(IPage page, DictInfoVO dictInfo);
-
-}

+ 0 - 32
src/main/java/org/springblade/control/mapper/DictInfoMapper.xml

@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="org.springblade.control.mapper.DictInfoMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="dictInfoResultMap" type="org.springblade.control.entity.DictInfo">
-        <result column="id" property="id"/>
-        <result column="is_deleted" property="isDeleted"/>
-        <result column="parent_id" property="parentId"/>
-        <result column="dict_name" property="dictName"/>
-        <result column="dict_value" property="dictValue"/>
-        <result column="sort" property="sort"/>
-        <result column="type" property="type"/>
-        <result column="code" property="code"/>
-    </resultMap>
-
-
-    <select id="selectDictInfoPage" resultMap="dictInfoResultMap">
-        select *
-        from c_dict_info
-        where is_deleted = 0
-    </select>
-
-    <select id="getList" resultMap="dictInfoResultMap">
-        select * from c_dict_info where code = #{code}
-        <if test="notRoot != null and notRoot != ''">
-            and parent_id > 0
-        </if>
-        and is_deleted = 0
-        order by sort
-    </select>
-</mapper>

+ 0 - 41
src/main/java/org/springblade/control/service/IDictInfoService.java

@@ -1,41 +0,0 @@
-/*
- *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
- *
- *  Redistribution and use in source and binary forms, with or without
- *  modification, are permitted provided that the following conditions are met:
- *
- *  Redistributions of source code must retain the above copyright notice,
- *  this list of conditions and the following disclaimer.
- *  Redistributions in binary form must reproduce the above copyright
- *  notice, this list of conditions and the following disclaimer in the
- *  documentation and/or other materials provided with the distribution.
- *  Neither the name of the dreamlu.net developer nor the names of its
- *  contributors may be used to endorse or promote products derived from
- *  this software without specific prior written permission.
- *  Author: Chill 庄骞 (smallchill@163.com)
- */
-package org.springblade.control.service;
-
-import org.springblade.control.entity.DictInfo;
-import org.springblade.control.vo.DictInfoVO;
-import org.springblade.core.mp.base.BaseService;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-
-/**
- * 参数信息表 服务类
- *
- * @author BladeX
- * @since 2023-06-05
- */
-public interface IDictInfoService extends BaseService<DictInfo> {
-
-	/**
-	 * 自定义分页
-	 *
-	 * @param page
-	 * @param dictInfo
-	 * @return
-	 */
-	IPage<DictInfoVO> selectDictInfoPage(IPage<DictInfoVO> page, DictInfoVO dictInfo);
-
-}

+ 0 - 41
src/main/java/org/springblade/control/service/impl/DictInfoServiceImpl.java

@@ -1,41 +0,0 @@
-/*
- *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
- *
- *  Redistribution and use in source and binary forms, with or without
- *  modification, are permitted provided that the following conditions are met:
- *
- *  Redistributions of source code must retain the above copyright notice,
- *  this list of conditions and the following disclaimer.
- *  Redistributions in binary form must reproduce the above copyright
- *  notice, this list of conditions and the following disclaimer in the
- *  documentation and/or other materials provided with the distribution.
- *  Neither the name of the dreamlu.net developer nor the names of its
- *  contributors may be used to endorse or promote products derived from
- *  this software without specific prior written permission.
- *  Author: Chill 庄骞 (smallchill@163.com)
- */
-package org.springblade.control.service.impl;
-
-import org.springblade.control.entity.DictInfo;
-import org.springblade.control.vo.DictInfoVO;
-import org.springblade.control.mapper.DictInfoMapper;
-import org.springblade.control.service.IDictInfoService;
-import org.springblade.core.mp.base.BaseServiceImpl;
-import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-
-/**
- * 参数信息表 服务实现类
- *
- * @author BladeX
- * @since 2023-06-05
- */
-@Service
-public class DictInfoServiceImpl extends BaseServiceImpl<DictInfoMapper, DictInfo> implements IDictInfoService {
-
-	@Override
-	public IPage<DictInfoVO> selectDictInfoPage(IPage<DictInfoVO> page, DictInfoVO dictInfo) {
-		return page.setRecords(baseMapper.selectDictInfoPage(page, dictInfo));
-	}
-
-}

+ 0 - 34
src/main/java/org/springblade/control/vo/DictInfoVO.java

@@ -1,34 +0,0 @@
-/*
- *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
- *
- *  Redistribution and use in source and binary forms, with or without
- *  modification, are permitted provided that the following conditions are met:
- *
- *  Redistributions of source code must retain the above copyright notice,
- *  this list of conditions and the following disclaimer.
- *  Redistributions in binary form must reproduce the above copyright
- *  notice, this list of conditions and the following disclaimer in the
- *  documentation and/or other materials provided with the distribution.
- *  Neither the name of the dreamlu.net developer nor the names of its
- *  contributors may be used to endorse or promote products derived from
- *  this software without specific prior written permission.
- *  Author: Chill 庄骞 (smallchill@163.com)
- */
-package org.springblade.control.vo;
-
-import org.springblade.control.entity.DictInfo;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-
-/**
- * 参数信息表视图实体类
- *
- * @author BladeX
- * @since 2023-06-05
- */
-@Data
-@EqualsAndHashCode(callSuper = true)
-public class DictInfoVO extends DictInfo {
-	private static final long serialVersionUID = 1L;
-
-}

+ 0 - 20
src/main/java/sql/dictinfo.menu.sql

@@ -1,20 +0,0 @@
-INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`,
-                         `is_open`, `remark`, `is_deleted`)
-VALUES ('1665658060720152578', 1123598815738675201, 'dictinfo', '参数信息表', 'menu', '/control/dictinfo', NULL, 1, 1, 0, 1,
-        NULL, 0);
-INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`,
-                         `is_open`, `remark`, `is_deleted`)
-VALUES ('1665658060720152579', '1665658060720152578', 'dictinfo_add', '新增', 'add', '/control/dictinfo/add', 'plus', 1,
-        2, 1, 1, NULL, 0);
-INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`,
-                         `is_open`, `remark`, `is_deleted`)
-VALUES ('1665658060720152580', '1665658060720152578', 'dictinfo_edit', '修改', 'edit', '/control/dictinfo/edit', 'form',
-        2, 2, 2, 1, NULL, 0);
-INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`,
-                         `is_open`, `remark`, `is_deleted`)
-VALUES ('1665658060720152581', '1665658060720152578', 'dictinfo_delete', '删除', 'delete',
-        '/api/blade-control/dictinfo/remove', 'delete', 3, 2, 3, 1, NULL, 0);
-INSERT INTO `blade_menu`(`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`,
-                         `is_open`, `remark`, `is_deleted`)
-VALUES ('1665658060720152582', '1665658060720152578', 'dictinfo_view', '查看', 'view', '/control/dictinfo/view',
-        'file-text', 4, 2, 2, 1, NULL, 0);