瀏覽代碼

Merge remote-tracking branch 'origin/master'

lizhenhao 2 年之前
父節點
當前提交
25e0fd2345

+ 86 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/proofread/controller/ProofreadTypeController.java

@@ -0,0 +1,86 @@
+package com.jeeplus.test.proofread.controller;
+
+import com.jeeplus.core.service.TreeService;
+import com.jeeplus.test.proofread.domain.ProofreadType;
+import com.jeeplus.test.proofread.mapper.ProofreadTypeMapper;
+import com.jeeplus.test.proofread.service.ProofreadTypeService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@RestController
+@Api(tags ="项目登记校对")
+@RequestMapping(value = "/proofread/type")
+public class ProofreadTypeController {
+
+    @Resource
+    private ProofreadTypeService service;
+
+    @Resource
+    private ProofreadTypeMapper mapper;
+
+    /**
+     * 列表查询
+     * @param type
+     * @return
+     */
+    @ApiOperation(value = "列表查询")
+    @GetMapping("/list")
+    public ResponseEntity<List<ProofreadType>> list(ProofreadType type) {
+        List<ProofreadType> list = service.list(type);
+        return ResponseEntity.ok(list);
+    }
+
+    /**
+     * 新增/修改
+     * @param info
+     * @return
+     */
+    @ApiOperation(value = "新增/修改")
+    @PostMapping("/save")
+    public ResponseEntity<String> save(@RequestBody ProofreadType info) {
+        String s = service.saveType(info);
+        return ResponseEntity.ok(s);
+    }
+
+    /**
+     * 根据id查询
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "根据id查询")
+    @GetMapping("/findById")
+    public ResponseEntity<ProofreadType> findById(String id) {
+        ProofreadType info = mapper.selectById(id);
+        return ResponseEntity.ok(info);
+    }
+
+    /**
+     * 根据id删除
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "根据id删除")
+    @GetMapping("/deleteById")
+    public ResponseEntity<String> deleteById(String id) {
+        mapper.deleteById(id);
+        return ResponseEntity.ok("操作完成");
+    }
+
+    /**
+     * 查询树形
+     * @param extId 排除的ID
+     * @return
+     */
+    @ApiOperation(value = "查询树形")
+    @GetMapping("/treeData")
+    public ResponseEntity<List<ProofreadType>> treeData(@RequestParam(required = false) String extId) throws Exception{
+        List<ProofreadType> infos = service.treeData(extId);
+        return ResponseEntity.ok(infos);
+    }
+
+}

+ 26 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/proofread/domain/ProofreadDetail.java

@@ -0,0 +1,26 @@
+package com.jeeplus.test.proofread.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import lombok.Data;
+
+@Data
+@TableName(value = "proofread_detail")
+public class ProofreadDetail extends BaseEntity {
+
+    /**
+     * 类型id
+     */
+    private String typeId;
+
+    /**
+     * 审核意见
+     */
+    private String reviewComments;
+
+    /**
+     * 回复意见
+     */
+    private String replyComments;
+
+}

+ 36 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/proofread/domain/ProofreadInfo.java

@@ -0,0 +1,36 @@
+package com.jeeplus.test.proofread.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import lombok.Data;
+
+@Data
+@TableName(value = "proofread_info")
+public class ProofreadInfo extends BaseEntity {
+
+    /**
+     * 项目id
+     */
+    private String projectId;
+
+    /**
+     * 项目审批人
+     */
+    private String processUserId;
+
+    /**
+     * 审核日期
+     */
+    private String processDate;
+
+    /**
+     * 保留意见
+     */
+    private String reservations;
+
+    /**
+     * 未修改意见
+     */
+    private String unmodifiedComments;
+    
+}

+ 37 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/proofread/domain/ProofreadType.java

@@ -0,0 +1,37 @@
+package com.jeeplus.test.proofread.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import com.jeeplus.core.domain.TreeEntity;
+import lombok.Data;
+
+@Data
+@TableName(value = "proofread_type")
+public class ProofreadType extends TreeEntity<ProofreadType> {
+
+    /**
+     * 父节点id
+     */
+    private String parentId;
+
+    /**
+     * 父节点id集合
+     */
+    private String parentIds;
+
+    /**
+     * 层级
+     */
+    private String level;
+
+    /**
+     * 名称
+     */
+    private String name;
+
+    /**
+     * 排序
+     */
+    private Integer sort;
+
+}

+ 15 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/proofread/mapper/ProofreadTypeMapper.java

@@ -0,0 +1,15 @@
+package com.jeeplus.test.proofread.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jeeplus.core.domain.TreeMapper;
+import com.jeeplus.test.proofread.domain.ProofreadType;
+import org.apache.ibatis.annotations.Param;
+
+public interface ProofreadTypeMapper extends BaseMapper<ProofreadType>, TreeMapper<ProofreadType> {
+
+    Integer checkNameIsExist(@Param("name") String name);
+
+    Integer getNo(@Param("parentId") String parentId);
+
+    Integer getLevel(@Param("parentId") String parentId);
+}

+ 34 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/proofread/mapper/xml/ProofreadTypeMapper.xml

@@ -0,0 +1,34 @@
+<?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="com.jeeplus.test.proofread.mapper.ProofreadTypeMapper">
+
+	<select id="checkNameIsExist" resultType="java.lang.Integer">
+		SELECT
+			COUNT( 0 )
+		FROM
+			proofread_type
+		WHERE
+			del_flag = 0
+			AND `name` = #{name}
+	</select>
+
+	<select id="getNo" resultType="java.lang.Integer">
+		SELECT
+			(MAX(`sort`) + 1) AS `sort`
+		FROM
+			proofread_type
+		WHERE
+			del_flag = 0
+			AND parent_id = #{parentId}
+	</select>
+
+	<select id="getLevel" resultType="java.lang.Integer">
+		SELECT
+			(MAX(level) + 1) AS `level`
+		FROM
+			proofread_type
+		WHERE
+			del_flag = 0
+			AND id = #{parentId}
+	</select>
+</mapper>

+ 131 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/proofread/service/ProofreadTypeService.java

@@ -0,0 +1,131 @@
+package com.jeeplus.test.proofread.service;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.jeeplus.core.domain.BaseEntity;
+import com.jeeplus.core.service.TreeService;
+import com.jeeplus.sys.service.dto.UserDTO;
+import com.jeeplus.sys.utils.StringUtils;
+import com.jeeplus.sys.utils.UserUtils;
+import com.jeeplus.test.proofread.domain.ProofreadType;
+import com.jeeplus.test.proofread.mapper.ProofreadTypeMapper;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
+import java.util.UUID;
+
+@Service
+public class ProofreadTypeService extends TreeService<ProofreadTypeMapper, ProofreadType> {
+
+    @Resource
+    private ProofreadTypeMapper mapper;
+
+    public List<ProofreadType> list(ProofreadType type) {
+        LambdaQueryWrapper<ProofreadType> wrapper = new LambdaQueryWrapper<>();
+        if (StringUtils.isNotEmpty(type.getName())) {
+            wrapper.like(ProofreadType::getName, type.getName());
+        }
+        wrapper.eq(BaseEntity::getDelFlag, 0);
+        wrapper.orderByAsc(ProofreadType::getSort);
+        return mapper.selectList(wrapper);
+    }
+
+    public String saveType(ProofreadType type) {
+        // parentId未传值,则表示一级菜单
+        if(StringUtils.isEmpty(type.getParentId())) {
+            type.setParentId("0");
+        }
+        // 判断名称是否已存在
+        Integer isExist = mapper.checkNameIsExist(type.getName());
+        if (isExist > 0) {
+            return "false";
+        }
+        // 保存数据
+        if (StringUtils.isNotEmpty(type.getId())) {
+            return update(type);
+        }
+        return add(type);
+    }
+
+    /**
+     * 新增
+     * @param type
+     * @return
+     */
+    public String add(ProofreadType type) {
+        // 获取当前登录人信息
+        UserDTO userDto = UserUtils.getCurrentUserDTO();
+        // 生成id值
+        String id = UUID.randomUUID().toString().replace("-", "");
+        type.setId(id);
+        type.setCreateBy(userDto.getId());
+        type.setCreateDate(new Date());
+        type.setUpdateBy(userDto.getId());
+        type.setUpdateDate(new Date());
+        type.setDelFlag(0);
+        // 生成序号/层级
+        getNo(type);
+        mapper.insert(type);
+        return "操作完成";
+    }
+
+    /**
+     * 修改
+     * @param info
+     * @return
+     */
+    public String update(ProofreadType info) {
+        // 获取当前登录人信息
+        UserDTO userDto = UserUtils.getCurrentUserDTO();
+        info.setUpdateBy(userDto.getId());
+        info.setUpdateDate(new Date());
+        mapper.updateById(info);
+        return "操作完成";
+    }
+
+    /**
+     * 生成序号/层级
+     * @param type
+     * @return
+     */
+    public ProofreadType getNo(ProofreadType type) {
+        ProofreadType parentInfo = null;
+        if (!"0".equals(type.getParentId())) {
+            //根据parentId查询父节点信息
+            LambdaQueryWrapper<ProofreadType> wrapper = new LambdaQueryWrapper<>();
+            wrapper.eq(BaseEntity::getDelFlag, 0);
+            wrapper.eq(BaseEntity::getId, type.getParentId());
+            parentInfo = mapper.selectOne(wrapper);
+        }
+        //查询序号
+        Integer no = mapper.getNo(type.getParentId());
+        // 该层级下有数据,正常返回序号值
+        if (no != null) {
+            type.setSort(no);
+        } else {
+            // 父节点存在,根据父节点序号生成;不存在,则表示无上级层级,从1开始
+            if (parentInfo != null) {
+                String s = parentInfo.getSort() + "01";
+                type.setSort(Integer.parseInt(s));
+            } else {
+                type.setSort(1);
+            }
+        }
+        // 生成层级
+        //查询层级
+        Integer level = mapper.getLevel(type.getParentId());
+        if (level != null) {
+            type.setLevel(level.toString());
+        } else {
+            // 父节点存在,根据父节点level生成,不存在,则表示无上级层级,从1开始
+            if (parentInfo != null) {
+                Integer i = Integer.parseInt(parentInfo.getLevel())+1;
+                type.setLevel(i.toString());
+            } else {
+                type.setLevel("1");
+            }
+        }
+        return type;
+    }
+}