hfxc226 hace 3 años
padre
commit
8a432aa35c

+ 82 - 0
platform-dao/src/main/java/com/platform/dao/dto/design/DesignFormDTO.java

@@ -0,0 +1,82 @@
+package com.platform.dao.dto.design;
+
+import com.platform.common.bean.BaseDTO;
+import com.platform.common.validation.group.UpdateGroup;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import javax.validation.constraints.*;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.time.LocalDate;
+
+/**
+ * @Description 表单设计DTO
+ * @Author xc
+ * @Date 2022-05-24 18:30:34
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = true)
+public class DesignFormDTO extends BaseDTO implements Serializable {
+
+      /**
+     * id
+     */
+        @NotNull(groups = {UpdateGroup.class}, message = "ID不能为空")
+    private String id;
+          /**
+     * 表单代号
+     */
+          private String code;
+          /**
+     * 表单名称
+     */
+          private String name;
+          /**
+     * 表单类型。0:简单表单;1:复杂表单;
+     */
+          private Integer type;
+          /**
+     * 表单主题。不配置默认为表单名称
+     */
+          private String theme;
+          /**
+     * 表单设计数据。
+     */
+          private String designData;
+          /**
+     * 表单js代码。仅当复杂表单才有
+     */
+          private String jsCode;
+          /**
+     * 创建时间
+     */
+        private LocalDateTime createTime;
+      /**
+       * 创建时间开始
+       */
+      private LocalDateTime createTimeStart;
+      /**
+       * 创建时间结束
+       */
+      private LocalDateTime createTimeEnd;
+          /**
+     * 更新时间
+     */
+        private LocalDateTime updateTime;
+      /**
+       * 更新时间开始
+       */
+      private LocalDateTime updateTimeStart;
+      /**
+       * 更新时间结束
+       */
+      private LocalDateTime updateTimeEnd;
+        /**
+     * 关键字
+     */
+  private String keyword;
+
+}

+ 69 - 0
platform-dao/src/main/java/com/platform/dao/entity/design/DesignForm.java

@@ -0,0 +1,69 @@
+package com.platform.dao.entity.design;
+
+import lombok.Data;
+
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.time.LocalDate;
+import lombok.experimental.Accessors;
+import com.platform.common.bean.DataScope;
+import javax.persistence.Transient;
+
+/**
+ * @Description 表单设计实体类
+ * @Author xc
+ * @Date 2022-05-24 18:30:34
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+@Table(name = "t_design_form")
+public class DesignForm implements Serializable{
+
+    /**
+     * id
+     */
+        @Id
+    private String id;
+    /**
+     * 表单代号
+     */
+    private String code;
+    /**
+     * 表单名称
+     */
+    private String name;
+    /**
+     * 表单类型。0:简单表单;1:复杂表单;
+     */
+    private Integer type;
+    /**
+     * 表单主题。不配置默认为表单名称
+     */
+    private String theme;
+    /**
+     * 表单设计数据。
+     */
+    private String designData;
+    /**
+     * 表单js代码。仅当复杂表单才有
+     */
+    private String jsCode;
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+
+   /**
+    * 数据权限
+    */
+    @Transient
+    private DataScope dataScope;
+
+}

+ 26 - 0
platform-dao/src/main/java/com/platform/dao/mapper/design/DesignFormMapper.java

@@ -0,0 +1,26 @@
+package com.platform.dao.mapper.design;
+
+import com.platform.dao.dto.design.DesignFormDTO;
+import com.platform.dao.config.MyMapper;
+import com.platform.dao.entity.design.DesignForm;
+import com.platform.dao.vo.query.design.DesignFormVO;
+import org.springframework.stereotype.Component;
+import java.util.List;
+
+
+/**
+ * @Description 表单设计 mapper
+ * @Author xc
+ * @Date 2022-05-24 18:30:34
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Component
+public interface DesignFormMapper extends MyMapper<DesignForm> {
+    /**
+     * 分页查询
+     * @param dto
+     * @return
+     */
+    List<DesignFormVO> selectList(DesignFormDTO dto);
+
+}

+ 75 - 0
platform-dao/src/main/java/com/platform/dao/vo/export/design/ExportDesignFormVO.java

@@ -0,0 +1,75 @@
+package com.platform.dao.vo.export.design;
+
+import com.platform.office.annotation.Excel;
+import lombok.Data;
+import lombok.experimental.Accessors;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.time.LocalDate;
+
+/**
+ * @Description 表单设计导出VO
+ * @Author xc
+ * @Date 2022-05-24 18:30:34
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+public class ExportDesignFormVO implements Serializable {
+
+    /**
+   * id
+   */
+          @Excel(name = "id", orderNum = "1")
+      private String id;
+    
+    /**
+   * 表单代号
+   */
+          @Excel(name = "表单代号", orderNum = "2")
+      private String code;
+    
+    /**
+   * 表单名称
+   */
+          @Excel(name = "表单名称", orderNum = "3")
+      private String name;
+    
+    /**
+   * 表单类型。0:简单表单;1:复杂表单;
+   */
+          @Excel(name = "表单类型。0:简单表单;1:复杂表单;", orderNum = "4")
+      private Integer type;
+    
+    /**
+   * 表单主题。不配置默认为表单名称
+   */
+          @Excel(name = "表单主题。不配置默认为表单名称", orderNum = "5")
+      private String theme;
+    
+    /**
+   * 表单设计数据。
+   */
+          @Excel(name = "表单设计数据。", orderNum = "6")
+      private String designData;
+    
+    /**
+   * 表单js代码。仅当复杂表单才有
+   */
+          @Excel(name = "表单js代码。仅当复杂表单才有", orderNum = "7")
+      private String jsCode;
+    
+    /**
+   * 创建时间
+   */
+          @Excel(name = "创建时间", orderNum = "8")
+      private LocalDateTime createTime;
+    
+    /**
+   * 更新时间
+   */
+          @Excel(name = "更新时间", orderNum = "9")
+      private LocalDateTime updateTime;
+    
+  
+}

+ 64 - 0
platform-dao/src/main/java/com/platform/dao/vo/query/design/DesignFormVO.java

@@ -0,0 +1,64 @@
+package com.platform.dao.vo.query.design;
+
+import lombok.Data;
+import com.platform.common.bean.BaseVO;
+import com.platform.common.bean.BaseDTO;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import javax.validation.constraints.*;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.time.LocalDate;
+
+/**
+ * @Description 表单设计VO结果类
+ * @Author xc
+ * @Date 2022-05-24 18:30:34
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = true)
+public class DesignFormVO extends BaseVO implements Serializable{
+
+    /**
+     * id
+     */
+        private String id;
+        /**
+     * 表单代号
+     */
+        private String code;
+        /**
+     * 表单名称
+     */
+        private String name;
+        /**
+     * 表单类型。0:简单表单;1:复杂表单;
+     */
+        private Integer type;
+        /**
+     * 表单主题。不配置默认为表单名称
+     */
+        private String theme;
+        /**
+     * 表单设计数据。
+     */
+        private String designData;
+        /**
+     * 表单js代码。仅当复杂表单才有
+     */
+        private String jsCode;
+        /**
+     * 创建时间
+     */
+        private LocalDateTime createTime;
+        /**
+     * 更新时间
+     */
+        private LocalDateTime updateTime;
+    
+
+
+}

+ 5 - 5
platform-dao/src/main/resources/application-daoDev.yml

@@ -3,12 +3,12 @@ spring:
     druid:
       master:
         driver-class-name: com.mysql.cj.jdbc.Driver
-        #url: jdbc:mysql://123.60.19.203:5006/hitch-sb?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&allowMultiQueries=true
-        #username: root
-        #password: mysql?MYSQLmoniu123
-        url: jdbc:mysql://localhost:3306/hitch-sb?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&allowMultiQueries=true
+        url: jdbc:mysql://123.60.19.203:5006/hitch-sb?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&allowMultiQueries=true
         username: root
-        password: 123456
+        password: mysql?MYSQLmoniu123
+        #url: jdbc:mysql://localhost:3306/hitch-sb?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&allowMultiQueries=true
+        #username: root
+        #password: 123456
         filters: wall,stat
         filter:
           stat:

+ 75 - 0
platform-dao/src/main/resources/mapper/design/DesignFormMapper.xml

@@ -0,0 +1,75 @@
+<?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.platform.dao.mapper.design.DesignFormMapper">
+    <sql id="Base_Column_List">
+                             designForm.id,
+                                     designForm.code,
+                                     designForm.name,
+                                     designForm.type,
+                                     designForm.theme,
+                                     designForm.design_data,
+                                     designForm.js_code,
+                                     designForm.create_time,
+                                     designForm.update_time
+                        </sql>
+    <sql id="Ref_Column_List">
+                                                                         designForm.code,
+                                     designForm.name,
+                                     designForm.type,
+                                     designForm.theme,
+                                     designForm.design_data,
+                                     designForm.js_code,
+                                     designForm.create_time,
+                                                                    </sql>
+    <sql id="List_Condition">
+                                    <if test="id != null and id != ''">
+                    and designForm.id = #{id}
+                </if>
+                                                <if test="code != null and code != ''">
+                    and designForm.code = #{code}
+                </if>
+                                                <if test="name != null and name != ''">
+                    and designForm.name = #{name}
+                </if>
+                                                <if test="type != null">
+                    and designForm.type = #{type}
+                </if>
+                                                <if test="theme != null and theme != ''">
+                    and designForm.theme = #{theme}
+                </if>
+                                                <if test="designData != null">
+                    and designForm.design_data = #{designData}
+                </if>
+                                                <if test="jsCode != null">
+                    and designForm.js_code = #{jsCode}
+                </if>
+                                                <if test="createTimeStart != null">
+                    and designForm.create_time <![CDATA[>=]]>; #{createTimeStart}
+                </if>
+                <if test="createTimeEnd != null">
+                    and designForm.create_time <![CDATA[<=]]> #{createTimeEnd}
+                </if>
+                <if test="createTime != null">
+                    and designForm.create_time = #{createTime}
+                </if>
+                                                <if test="updateTimeStart != null">
+                    and designForm.update_time <![CDATA[>=]]>; #{updateTimeStart}
+                </if>
+                <if test="updateTimeEnd != null">
+                    and designForm.update_time <![CDATA[<=]]> #{updateTimeEnd}
+                </if>
+                <if test="updateTime != null">
+                    and designForm.update_time = #{updateTime}
+                </if>
+                            <if test="keyword != null and keyword != ''">
+            and designForm.id like concat(concat('%',#{keyword}),'%')
+        </if>
+    </sql>
+    <select id="selectList" parameterType="com.platform.dao.dto.design.DesignFormDTO" resultType="com.platform.dao.vo.query.design.DesignFormVO">
+        select designForm.*
+                                                                                                                                                                                                    from t_design_form as designForm
+                                                                                                                                                                                                    <where>
+            <include refid="List_Condition" />
+        </where>
+    </select>
+</mapper>

+ 141 - 0
platform-rest/src/main/java/com/platform/rest/controller/design/DesignFormController.java

@@ -0,0 +1,141 @@
+package com.platform.rest.controller.design;
+
+import com.platform.common.util.R;
+import com.platform.dao.dto.design.DesignFormDTO;
+import com.platform.dao.entity.design.DesignForm;
+import com.platform.service.design.DesignFormService;
+import com.platform.dao.util.ExcelUtil;
+import com.platform.dao.vo.export.design.ExportDesignFormVO;
+import com.platform.dao.vo.query.design.DesignFormVO;
+import com.platform.common.util.BeanConverterUtil;
+import com.platform.common.validation.group.AddGroup;
+import com.platform.common.validation.group.UpdateGroup;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+import lombok.AllArgsConstructor;
+import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.rest.log.annotation.SysLog;
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * @Description 表单设计 控制器
+ * @Author xc
+ * @Date 2022-05-24 18:30:34
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/design/design-forms")
+public class DesignFormController {
+
+  private final  DesignFormService designFormService;
+
+  /**
+   * 通过id查询单条记录
+   *
+   * @param id 主键
+   * @return R
+   */
+  @GetMapping("/{id}")
+  public R<DesignForm> getById(@PathVariable("id") String id){
+      return new R<>(designFormService.getModelById(id));
+  }
+
+  /**
+   * 新增记录
+   *
+   * @param designFormDTO 表单设计DTO
+   * @return R
+   */
+  @SysLog("新增表单设计")
+  @PostMapping
+  @PreAuthorize("@pms.hasPermission('design-design-forms-add')")
+  public R save(@Validated({AddGroup.class}) @RequestBody DesignFormDTO designFormDTO) {
+      return new R<>(designFormService.saveModelByDTO(designFormDTO));
+  }
+
+  /**
+   * 修改记录
+   *
+   * @param designFormDTO 表单设计DTO
+   * @return R
+   */
+  @SysLog("修改表单设计")
+  @PutMapping("/{id}")
+  @PreAuthorize("@pms.hasPermission('design-design-forms-edit')")
+  public R update(@PathVariable("id") String id, @Validated({UpdateGroup.class}) @RequestBody DesignFormDTO designFormDTO) {
+      designFormService.modModelByDTO(designFormDTO);
+      return new R<>();
+  }
+
+
+                                                        
+  /**
+   * 通过id删除一条记录
+   *
+   * @param id 主键
+   * @return R
+   */
+  @SysLog("删除表单设计")
+  @DeleteMapping("/{id}")
+  @PreAuthorize("@pms.hasPermission('design-design-forms-del')")
+  public R removeById(@PathVariable String id){
+    designFormService.deleteByPrimaryKey(id);
+    return new R<>();
+  }
+
+    /**
+     * 批量记录
+     *
+     * @param ids 主键
+     * @return R
+     */
+    @SysLog("批量删除表单设计")
+    @DeleteMapping("")
+    @PreAuthorize("@pms.hasPermission('design-design-forms-del')")
+    public R removeIds(@RequestBody List<String> ids){
+        designFormService.batchDelete(ids);
+        return new R<>();
+    }
+
+  /**
+   * 获取分页
+   *
+   * @param pageNum 当前页码
+   * @param pageSize 每页条数
+   * @param designFormDTO 表单设计DTO
+   * @return R
+   */
+  @GetMapping("/page")
+  public R<AbstractPageResultBean<DesignFormVO>> query(DesignFormDTO designFormDTO, @RequestParam(defaultValue = "1") int pageNum, @RequestParam(defaultValue = "20") int pageSize) {
+      return new R<>(designFormService.selectPageList(designFormDTO, pageNum, pageSize));
+  }
+
+  /**
+   * 获取列表
+   *
+   * @param designFormDTO 表单设计DTO
+   * @return R
+   */
+  @GetMapping("")
+  public R query(DesignFormDTO designFormDTO) {
+      return new R<>(designFormService.getModelListByDTO(designFormDTO));
+  }
+
+  /**
+     * 表单设计导出
+     *
+     * @param designFormDTO 表单设计DTO
+     * @return R
+     */
+  @GetMapping("/export")
+  @SysLog("表单设计导出")
+  @PreAuthorize("@pms.hasPermission('design-design-forms-export')")
+  public void export(HttpServletResponse response, DesignFormDTO designFormDTO) {
+    List<DesignForm> list = designFormService.getModelListByDTO(designFormDTO);
+    ExcelUtil.exportResponseDict(response, ExportDesignFormVO.class, BeanConverterUtil.copyListProperties(list, ExportDesignFormVO.class), "表单设计");
+  }
+
+}

+ 0 - 60
platform-service/src/main/java/com/platform/service/activiti/business/ActivitiBusinessAbstract.java

@@ -1,60 +0,0 @@
-package com.platform.service.activiti.business;
-
-import com.platform.common.bean.BaseDTO;
-import com.platform.common.enums.ResultCode;
-import com.platform.common.exception.BusinessException;
-import com.platform.common.model.UserInfo;
-import com.platform.common.util.SecurityUtils;
-import com.platform.service.base.IBaseService;
-import com.platform.service.upms.SysUserService;
-import lombok.extern.slf4j.Slf4j;
-import org.activiti.engine.HistoryService;
-import org.activiti.engine.RuntimeService;
-import org.activiti.engine.TaskService;
-import org.activiti.engine.runtime.ProcessInstance;
-import org.apache.poi.ss.formula.functions.T;
-import org.springframework.beans.factory.annotation.Autowired;
-
-/**
- * 审批业务抽象类,其他的业务可以
- */
-@Slf4j
-public abstract class ActivitiBusinessAbstract<M extends IBaseService<T, K>, K extends BaseDTO> {
-
-    @Autowired
-    protected M service;
-    @Autowired
-    private RuntimeService runtimeService;
-    @Autowired
-    private HistoryService historyService;
-    @Autowired
-    private TaskService taskService;
-    @Autowired
-    private SysUserService sysUserService;
-
-    private String key;
-
-    /**
-     * 启动执行步骤
-     */
-    public final void start(K k) {
-        this.before();
-        this.after(doing(), k);
-    }
-
-    public abstract void before();
-    public ProcessInstance doing(){
-        UserInfo user = SecurityUtils.getUserInfo();
-        ProcessInstance instance = runtimeService.startProcessInstanceByKey(key);
-        if (instance == null) {
-            throw new BusinessException(ResultCode.ACTIVITI_PROCESS_NOT_EXIST.getDescription());
-        }
-        log.info("流程实例ID:" + instance.getId());
-        log.info("流程定义ID:" + instance.getProcessDefinitionId());
-        return instance;
-    }
-    public void after(ProcessInstance instance, K k){
-        k.setProcessInstanceId(instance.getId());
-        service.modModelByDTO(k);
-    }
-}

+ 35 - 0
platform-service/src/main/java/com/platform/service/design/DesignFormService.java

@@ -0,0 +1,35 @@
+package com.platform.service.design;
+
+import com.platform.dao.vo.query.design.DesignFormVO;
+import com.platform.dao.dto.design.DesignFormDTO;
+import com.platform.dao.entity.design.DesignForm;
+import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.service.base.IBaseService;
+import java.util.List;
+
+/**
+ * @Description 表单设计 service
+ * @Author xc
+ * @Date 2022-05-24 18:30:34
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+public interface DesignFormService extends IBaseService<DesignForm, DesignFormDTO> {
+
+   /**
+    * 批量删除
+    *
+    * @param ids :
+    * @return :
+    */
+    int batchDelete(List<String> ids);
+
+    /**
+     * 分页查询
+     * @param record
+     * @param pageNum
+     * @param pageSize
+     * @return
+     */
+    AbstractPageResultBean<DesignFormVO> selectPageList(DesignFormDTO record, int pageNum, int pageSize);
+
+                                                                                                                }

+ 50 - 0
platform-service/src/main/java/com/platform/service/design/impl/DesignFormServiceImpl.java

@@ -0,0 +1,50 @@
+package com.platform.service.design.impl;
+import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.dao.bean.MyPage;
+import com.github.pagehelper.PageHelper;
+import com.platform.dao.vo.query.design.DesignFormVO;
+import com.platform.dao.dto.design.DesignFormDTO;
+import com.platform.dao.entity.design.DesignForm;
+import com.platform.dao.mapper.design.DesignFormMapper;
+import com.platform.service.design.DesignFormService;
+import org.springframework.stereotype.Service;
+import com.platform.service.base.impl.BaseServiceImpl;
+import org.springframework.transaction.annotation.Transactional;
+import tk.mybatis.mapper.weekend.Weekend;
+import tk.mybatis.mapper.weekend.WeekendCriteria;
+import lombok.AllArgsConstructor;
+
+import java.util.List;
+
+/**
+ * @Description 表单设计 service 实现类
+ * @Author xc
+ * @Date 2022-05-24 18:30:34
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@AllArgsConstructor
+@Service("designFormService")
+public class DesignFormServiceImpl extends BaseServiceImpl<DesignFormMapper, DesignForm, DesignFormDTO> implements DesignFormService {
+
+    @Override
+    public int batchDelete(List<String> ids) {
+        Weekend<DesignForm> weekend = new Weekend<>(DesignForm.class);
+        WeekendCriteria<DesignForm, Object> weekendCriteria = weekend.weekendCriteria();
+        weekendCriteria.andIn(DesignForm::getId, ids);
+        mapper.deleteByExample(weekend);
+        return 1;
+    }
+
+    @Override
+    public AbstractPageResultBean<DesignFormVO> selectPageList(DesignFormDTO record, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        return new MyPage(mapper.selectList(record));
+    }
+
+    @Override
+    public AbstractPageResultBean<DesignForm> selectPageInfo(DesignFormDTO record, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        return new MyPage(mapper.selectList(record));
+    }
+
+                                                                                                                }