Browse Source

政策文件基础

master
ma-zhongxu 10 months ago
parent
commit
a0227a1955
  1. 105
      chai-admin/src/main/java/com/chai/web/controller/bs/BsPolicyFilesController.java
  2. 2
      chai-admin/src/main/resources/application-druid.yml
  3. 11
      chai-common/src/main/java/com/chai/common/core/domain/entity/SysMenu.java
  4. 165
      chai-system/src/main/java/com/chai/bs/domain/BsPolicyFiles.java
  5. 62
      chai-system/src/main/java/com/chai/bs/mapper/BsPolicyFilesMapper.java
  6. 62
      chai-system/src/main/java/com/chai/bs/service/IBsPolicyFilesService.java
  7. 97
      chai-system/src/main/java/com/chai/bs/service/impl/BsPolicyFilesServiceImpl.java
  8. 119
      chai-system/src/main/resources/mapper/bs/BsPolicyFilesMapper.xml
  9. 12
      chai-system/src/main/resources/mapper/system/SysMenuMapper.xml
  10. 44
      chai-ui/src/api/bs/policyFiles.js
  11. 309
      chai-ui/src/views/bs/policyFiles/index.vue

105
chai-admin/src/main/java/com/chai/web/controller/bs/BsPolicyFilesController.java

@ -0,0 +1,105 @@
package com.chai.web.controller.bs;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.chai.bs.domain.BsPolicyFiles;
import com.chai.bs.service.IBsPolicyFilesService;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.chai.common.annotation.Log;
import com.chai.common.core.controller.BaseController;
import com.chai.common.core.domain.AjaxResult;
import com.chai.common.enums.BusinessType;
import com.chai.common.utils.poi.ExcelUtil;
import com.chai.common.core.page.TableDataInfo;
/**
* 政策文件Controller
*
* @author mazhongxu
* @date 2025-03-07
*/
@RestController
@RequestMapping("/bs/policyFiles")
public class BsPolicyFilesController extends BaseController
{
@Autowired
private IBsPolicyFilesService bsPolicyFilesService;
/**
* 查询政策文件列表
*/
@PreAuthorize("@ss.hasPermi('bs:policyFiles:list')")
@GetMapping("/list")
public TableDataInfo list(BsPolicyFiles bsPolicyFiles)
{
startPage();
List<BsPolicyFiles> list = bsPolicyFilesService.selectBsPolicyFilesList(bsPolicyFiles);
return getDataTable(list);
}
/**
* 导出政策文件列表
*/
@PreAuthorize("@ss.hasPermi('bs:policyFiles:export')")
@Log(title = "政策文件", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, BsPolicyFiles bsPolicyFiles)
{
List<BsPolicyFiles> list = bsPolicyFilesService.selectBsPolicyFilesList(bsPolicyFiles);
ExcelUtil<BsPolicyFiles> util = new ExcelUtil<BsPolicyFiles>(BsPolicyFiles.class);
util.exportExcel(response, list, "政策文件数据");
}
/**
* 获取政策文件详细信息
*/
@PreAuthorize("@ss.hasPermi('bs:policyFiles:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") String id)
{
return success(bsPolicyFilesService.selectBsPolicyFilesById(id));
}
/**
* 新增政策文件
*/
@PreAuthorize("@ss.hasPermi('bs:policyFiles:add')")
@Log(title = "政策文件", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody BsPolicyFiles bsPolicyFiles)
{
return toAjax(bsPolicyFilesService.insertBsPolicyFiles(bsPolicyFiles));
}
/**
* 修改政策文件
*/
@PreAuthorize("@ss.hasPermi('bs:policyFiles:edit')")
@Log(title = "政策文件", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody BsPolicyFiles bsPolicyFiles)
{
return toAjax(bsPolicyFilesService.updateBsPolicyFiles(bsPolicyFiles));
}
/**
* 删除政策文件
*/
@PreAuthorize("@ss.hasPermi('bs:policyFiles:remove')")
@Log(title = "政策文件", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable String[] ids)
{
return toAjax(bsPolicyFilesService.deleteBsPolicyFilesByIds(ids));
}
}

2
chai-admin/src/main/resources/application-druid.yml

@ -6,7 +6,7 @@ spring:
druid: druid:
# 主库数据源 # 主库数据源
master: master:
url: jdbc:mysql://localhost:3306/ch_ai?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
url: jdbc:mysql://localhost:4000/ch_ai?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root username: root
password: root password: root
# 从库数据源 # 从库数据源

11
chai-common/src/main/java/com/chai/common/core/domain/entity/SysMenu.java

@ -66,6 +66,9 @@ public class SysMenu extends BaseEntity
/** 菜单图标 */ /** 菜单图标 */
private String icon; private String icon;
/** 简介 */
private String intro;
/** 子菜单 */ /** 子菜单 */
private List<SysMenu> children = new ArrayList<SysMenu>(); private List<SysMenu> children = new ArrayList<SysMenu>();
@ -236,6 +239,14 @@ public class SysMenu extends BaseEntity
this.icon = icon; this.icon = icon;
} }
public String getIntro() {
return intro;
}
public void setIntro(String intro) {
this.intro = intro;
}
public List<SysMenu> getChildren() public List<SysMenu> getChildren()
{ {
return children; return children;

165
chai-system/src/main/java/com/chai/bs/domain/BsPolicyFiles.java

@ -0,0 +1,165 @@
package com.chai.bs.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.chai.common.annotation.Excel;
import com.chai.common.core.domain.BaseEntity;
/**
* 政策文件对象 bs_policy_files
*
* @author mazhongxu
* @date 2025-03-07
*/
public class BsPolicyFiles extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 文件ID */
private String id;
/** 部门ID */
private Long deptId;
/** 文件真实名称 */
@Excel(name = "文件真实名称")
private String realName;
/** 文件别名 */
@Excel(name = "文件别名")
private String aliasName;
/** 存储路径 */
@Excel(name = "存储路径")
private String storagePath;
/** 状态(0临时,1公开,2私有) */
@Excel(name = "状态(0临时,1公开,2私有)")
private String status;
/** 文件标签 */
@Excel(name = "文件标签")
private String tags;
/** 文件大小(字节) */
@Excel(name = "文件大小", readConverterExp = "字=节")
private Long fileSize;
/** 文件类型 */
@Excel(name = "文件类型")
private String fileType;
/** 删除标志(0代表存在 2代表删除) */
private String delFlag;
public void setId(String id)
{
this.id = id;
}
public String getId()
{
return id;
}
public Long getDeptId() {
return deptId;
}
public void setDeptId(Long deptId) {
this.deptId = deptId;
}
public void setRealName(String realName)
{
this.realName = realName;
}
public String getRealName()
{
return realName;
}
public void setAliasName(String aliasName)
{
this.aliasName = aliasName;
}
public String getAliasName()
{
return aliasName;
}
public void setStoragePath(String storagePath)
{
this.storagePath = storagePath;
}
public String getStoragePath()
{
return storagePath;
}
public void setStatus(String status)
{
this.status = status;
}
public String getStatus()
{
return status;
}
public void setTags(String tags)
{
this.tags = tags;
}
public String getTags()
{
return tags;
}
public void setFileSize(Long fileSize)
{
this.fileSize = fileSize;
}
public Long getFileSize()
{
return fileSize;
}
public void setFileType(String fileType)
{
this.fileType = fileType;
}
public String getFileType()
{
return fileType;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public String getDelFlag()
{
return delFlag;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("realName", getRealName())
.append("aliasName", getAliasName())
.append("storagePath", getStoragePath())
.append("status", getStatus())
.append("tags", getTags())
.append("fileSize", getFileSize())
.append("fileType", getFileType())
.append("delFlag", getDelFlag())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

62
chai-system/src/main/java/com/chai/bs/mapper/BsPolicyFilesMapper.java

@ -0,0 +1,62 @@
package com.chai.bs.mapper;
import com.chai.bs.domain.BsPolicyFiles;
import java.util.List;
/**
* 政策文件Mapper接口
*
* @author mazhongxu
* @date 2025-03-07
*/
public interface BsPolicyFilesMapper
{
/**
* 查询政策文件
*
* @param id 政策文件主键
* @return 政策文件
*/
public BsPolicyFiles selectBsPolicyFilesById(String id);
/**
* 查询政策文件列表
*
* @param bsPolicyFiles 政策文件
* @return 政策文件集合
*/
public List<BsPolicyFiles> selectBsPolicyFilesList(BsPolicyFiles bsPolicyFiles);
/**
* 新增政策文件
*
* @param bsPolicyFiles 政策文件
* @return 结果
*/
public int insertBsPolicyFiles(BsPolicyFiles bsPolicyFiles);
/**
* 修改政策文件
*
* @param bsPolicyFiles 政策文件
* @return 结果
*/
public int updateBsPolicyFiles(BsPolicyFiles bsPolicyFiles);
/**
* 删除政策文件
*
* @param id 政策文件主键
* @return 结果
*/
public int deleteBsPolicyFilesById(String id);
/**
* 批量删除政策文件
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteBsPolicyFilesByIds(String[] ids);
}

62
chai-system/src/main/java/com/chai/bs/service/IBsPolicyFilesService.java

@ -0,0 +1,62 @@
package com.chai.bs.service;
import com.chai.bs.domain.BsPolicyFiles;
import java.util.List;
/**
* 政策文件Service接口
*
* @author mazhongxu
* @date 2025-03-07
*/
public interface IBsPolicyFilesService
{
/**
* 查询政策文件
*
* @param id 政策文件主键
* @return 政策文件
*/
public BsPolicyFiles selectBsPolicyFilesById(String id);
/**
* 查询政策文件列表
*
* @param bsPolicyFiles 政策文件
* @return 政策文件集合
*/
public List<BsPolicyFiles> selectBsPolicyFilesList(BsPolicyFiles bsPolicyFiles);
/**
* 新增政策文件
*
* @param bsPolicyFiles 政策文件
* @return 结果
*/
public int insertBsPolicyFiles(BsPolicyFiles bsPolicyFiles);
/**
* 修改政策文件
*
* @param bsPolicyFiles 政策文件
* @return 结果
*/
public int updateBsPolicyFiles(BsPolicyFiles bsPolicyFiles);
/**
* 批量删除政策文件
*
* @param ids 需要删除的政策文件主键集合
* @return 结果
*/
public int deleteBsPolicyFilesByIds(String[] ids);
/**
* 删除政策文件信息
*
* @param id 政策文件主键
* @return 结果
*/
public int deleteBsPolicyFilesById(String id);
}

97
chai-system/src/main/java/com/chai/bs/service/impl/BsPolicyFilesServiceImpl.java

@ -0,0 +1,97 @@
package com.chai.bs.service.impl;
import java.util.List;
import com.chai.bs.domain.BsPolicyFiles;
import com.chai.bs.mapper.BsPolicyFilesMapper;
import com.chai.bs.service.IBsPolicyFilesService;
import com.chai.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* 政策文件Service业务层处理
*
* @author mazhongxu
* @date 2025-03-07
*/
@Service
public class BsPolicyFilesServiceImpl implements IBsPolicyFilesService
{
@Autowired
private BsPolicyFilesMapper bsPolicyFilesMapper;
/**
* 查询政策文件
*
* @param id 政策文件主键
* @return 政策文件
*/
@Override
public BsPolicyFiles selectBsPolicyFilesById(String id)
{
return bsPolicyFilesMapper.selectBsPolicyFilesById(id);
}
/**
* 查询政策文件列表
*
* @param bsPolicyFiles 政策文件
* @return 政策文件
*/
@Override
public List<BsPolicyFiles> selectBsPolicyFilesList(BsPolicyFiles bsPolicyFiles)
{
return bsPolicyFilesMapper.selectBsPolicyFilesList(bsPolicyFiles);
}
/**
* 新增政策文件
*
* @param bsPolicyFiles 政策文件
* @return 结果
*/
@Override
public int insertBsPolicyFiles(BsPolicyFiles bsPolicyFiles)
{
bsPolicyFiles.setCreateTime(DateUtils.getNowDate());
return bsPolicyFilesMapper.insertBsPolicyFiles(bsPolicyFiles);
}
/**
* 修改政策文件
*
* @param bsPolicyFiles 政策文件
* @return 结果
*/
@Override
public int updateBsPolicyFiles(BsPolicyFiles bsPolicyFiles)
{
bsPolicyFiles.setUpdateTime(DateUtils.getNowDate());
return bsPolicyFilesMapper.updateBsPolicyFiles(bsPolicyFiles);
}
/**
* 批量删除政策文件
*
* @param ids 需要删除的政策文件主键
* @return 结果
*/
@Override
public int deleteBsPolicyFilesByIds(String[] ids)
{
return bsPolicyFilesMapper.deleteBsPolicyFilesByIds(ids);
}
/**
* 删除政策文件信息
*
* @param id 政策文件主键
* @return 结果
*/
@Override
public int deleteBsPolicyFilesById(String id)
{
return bsPolicyFilesMapper.deleteBsPolicyFilesById(id);
}
}

119
chai-system/src/main/resources/mapper/bs/BsPolicyFilesMapper.xml

@ -0,0 +1,119 @@
<?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.chai.bs.mapper.BsPolicyFilesMapper">
<resultMap type="BsPolicyFiles" id="BsPolicyFilesResult">
<result property="id" column="id" />
<result property="deptId" column="deptId"/>
<result property="realName" column="real_name" />
<result property="aliasName" column="alias_name" />
<result property="storagePath" column="storage_path" />
<result property="status" column="status" />
<result property="tags" column="tags" />
<result property="fileSize" column="file_size" />
<result property="fileType" column="file_type" />
<result property="delFlag" column="del_flag" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
</resultMap>
<sql id="selectBsPolicyFilesVo">
select id, deptId, real_name, alias_name, storage_path, status, tags, file_size, file_type, del_flag, create_by, create_time, update_by, update_time, remark from bs_policy_files
</sql>
<select id="selectBsPolicyFilesList" parameterType="BsPolicyFiles" resultMap="BsPolicyFilesResult">
<include refid="selectBsPolicyFilesVo"/>
<where>
<if test="realName != null and realName != ''"> and real_name like concat('%', #{realName}, '%')</if>
<if test="aliasName != null and aliasName != ''"> and alias_name = #{aliasName}</if>
<if test="storagePath != null and storagePath != ''"> and storage_path = #{storagePath}</if>
<if test="status != null and status != ''"> and status = #{status}</if>
<if test="tags != null and tags != ''"> and tags = #{tags}</if>
<if test="fileSize != null "> and file_size = #{fileSize}</if>
<if test="fileType != null and fileType != ''"> and file_type = #{fileType}</if>
</where>
</select>
<select id="selectBsPolicyFilesById" parameterType="String" resultMap="BsPolicyFilesResult">
<include refid="selectBsPolicyFilesVo"/>
where id = #{id}
</select>
<insert id="insertBsPolicyFiles" parameterType="BsPolicyFiles">
<selectKey keyProperty="id" resultType="string" order="BEFORE">
SELECT REPLACE(UUID(),'-','') FROM DUAL
</selectKey>
insert into bs_policy_files
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="deptId != null">deptId,</if>
<if test="realName != null">real_name,</if>
<if test="aliasName != null">alias_name,</if>
<if test="storagePath != null">storage_path,</if>
<if test="status != null">status,</if>
<if test="tags != null">tags,</if>
<if test="fileSize != null">file_size,</if>
<if test="fileType != null">file_type,</if>
<if test="delFlag != null">del_flag,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
<if test="remark != null">remark,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="deptId != null">#{deptId},</if>
<if test="realName != null">#{realName},</if>
<if test="aliasName != null">#{aliasName},</if>
<if test="storagePath != null">#{storagePath},</if>
<if test="status != null">#{status},</if>
<if test="tags != null">#{tags},</if>
<if test="fileSize != null">#{fileSize},</if>
<if test="fileType != null">#{fileType},</if>
<if test="delFlag != null">#{delFlag},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
<if test="remark != null">#{remark},</if>
</trim>
</insert>
<update id="updateBsPolicyFiles" parameterType="BsPolicyFiles">
update bs_policy_files
<trim prefix="SET" suffixOverrides=",">
<if test="deptId != null">deptId = #{deptId},</if>
<if test="realName != null">real_name = #{realName},</if>
<if test="aliasName != null">alias_name = #{aliasName},</if>
<if test="storagePath != null">storage_path = #{storagePath},</if>
<if test="status != null">status = #{status},</if>
<if test="tags != null">tags = #{tags},</if>
<if test="fileSize != null">file_size = #{fileSize},</if>
<if test="fileType != null">file_type = #{fileType},</if>
<if test="delFlag != null">del_flag = #{delFlag},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteBsPolicyFilesById" parameterType="String">
delete from bs_policy_files where id = #{id}
</delete>
<delete id="deleteBsPolicyFilesByIds" parameterType="String">
delete from bs_policy_files where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

12
chai-system/src/main/resources/mapper/system/SysMenuMapper.xml

@ -21,6 +21,7 @@
<result property="status" column="status" /> <result property="status" column="status" />
<result property="perms" column="perms" /> <result property="perms" column="perms" />
<result property="icon" column="icon" /> <result property="icon" column="icon" />
<result property="intro" column="intro" />
<result property="createBy" column="create_by" /> <result property="createBy" column="create_by" />
<result property="createTime" column="create_time" /> <result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" /> <result property="updateTime" column="update_time" />
@ -29,7 +30,7 @@
</resultMap> </resultMap>
<sql id="selectMenuVo"> <sql id="selectMenuVo">
select menu_id, menu_name, parent_id, order_num, path, component, `query`, route_name, is_frame, is_cache, menu_type, visible, status, ifnull(perms,'') as perms, icon, create_time
select menu_id, menu_name, parent_id, order_num, path, component, `query`, route_name, is_frame, is_cache, menu_type, visible, status, ifnull(perms,'') as perms, icon, intro, create_time
from sys_menu from sys_menu
</sql> </sql>
@ -50,13 +51,13 @@
</select> </select>
<select id="selectMenuTreeAll" resultMap="SysMenuResult"> <select id="selectMenuTreeAll" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.intro, m.create_time
from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0 from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0
order by m.parent_id, m.order_num order by m.parent_id, m.order_num
</select> </select>
<select id="selectMenuListByUserId" parameterType="SysMenu" resultMap="SysMenuResult"> <select id="selectMenuListByUserId" parameterType="SysMenu" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.intro, m.create_time
from sys_menu m from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id left join sys_role_menu rm on m.menu_id = rm.menu_id
left join sys_user_role ur on rm.role_id = ur.role_id left join sys_user_role ur on rm.role_id = ur.role_id
@ -75,7 +76,7 @@
</select> </select>
<select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult"> <select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.intro, m.create_time
from sys_menu m from sys_menu m
left join sys_role_menu rm on m.menu_id = rm.menu_id left join sys_role_menu rm on m.menu_id = rm.menu_id
left join sys_user_role ur on rm.role_id = ur.role_id left join sys_user_role ur on rm.role_id = ur.role_id
@ -150,6 +151,7 @@
<if test="status != null">status = #{status},</if> <if test="status != null">status = #{status},</if>
<if test="perms !=null">perms = #{perms},</if> <if test="perms !=null">perms = #{perms},</if>
<if test="icon !=null and icon != ''">icon = #{icon},</if> <if test="icon !=null and icon != ''">icon = #{icon},</if>
<if test="intro !=null and intro != ''">intro = #{intro},</if>
<if test="remark != null and remark != ''">remark = #{remark},</if> <if test="remark != null and remark != ''">remark = #{remark},</if>
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if> <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
update_time = sysdate() update_time = sysdate()
@ -174,6 +176,7 @@
<if test="status != null">status,</if> <if test="status != null">status,</if>
<if test="perms !=null and perms != ''">perms,</if> <if test="perms !=null and perms != ''">perms,</if>
<if test="icon != null and icon != ''">icon,</if> <if test="icon != null and icon != ''">icon,</if>
<if test="intro != null and intro != ''">intro,</if>
<if test="remark != null and remark != ''">remark,</if> <if test="remark != null and remark != ''">remark,</if>
<if test="createBy != null and createBy != ''">create_by,</if> <if test="createBy != null and createBy != ''">create_by,</if>
create_time create_time
@ -193,6 +196,7 @@
<if test="status != null">#{status},</if> <if test="status != null">#{status},</if>
<if test="perms !=null and perms != ''">#{perms},</if> <if test="perms !=null and perms != ''">#{perms},</if>
<if test="icon != null and icon != ''">#{icon},</if> <if test="icon != null and icon != ''">#{icon},</if>
<if test="intro != null and intro != ''">#{intro},</if>
<if test="remark != null and remark != ''">#{remark},</if> <if test="remark != null and remark != ''">#{remark},</if>
<if test="createBy != null and createBy != ''">#{createBy},</if> <if test="createBy != null and createBy != ''">#{createBy},</if>
sysdate() sysdate()

44
chai-ui/src/api/bs/policyFiles.js

@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询政策文件列表
export function listPolicyFiles(query) {
return request({
url: '/bs/policyFiles/list',
method: 'get',
params: query
})
}
// 查询政策文件详细
export function getPolicyFiles(id) {
return request({
url: '/bs/policyFiles/' + id,
method: 'get'
})
}
// 新增政策文件
export function addPolicyFiles(data) {
return request({
url: '/bs/policyFiles',
method: 'post',
data: data
})
}
// 修改政策文件
export function updatePolicyFiles(data) {
return request({
url: '/bs/policyFiles',
method: 'put',
data: data
})
}
// 删除政策文件
export function delPolicyFiles(id) {
return request({
url: '/bs/policyFiles/' + id,
method: 'delete'
})
}

309
chai-ui/src/views/bs/policyFiles/index.vue

@ -0,0 +1,309 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="文件真实名称" prop="realName">
<el-input
v-model="queryParams.realName"
placeholder="请输入文件真实名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="文件别名" prop="aliasName">
<el-input
v-model="queryParams.aliasName"
placeholder="请输入文件别名"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="存储路径" prop="storagePath">
<el-input
v-model="queryParams.storagePath"
placeholder="请输入存储路径"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="文件大小" prop="fileSize">
<el-input
v-model="queryParams.fileSize"
placeholder="请输入文件大小"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['system:policyFiles:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['system:policyFiles:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['system:policyFiles:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['system:policyFiles:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="policyFilesList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="文件ID" align="center" prop="id" />
<el-table-column label="文件真实名称" align="center" prop="realName" />
<el-table-column label="文件别名" align="center" prop="aliasName" />
<el-table-column label="存储路径" align="center" prop="storagePath" />
<el-table-column label="状态(0临时,1公开,2私有)" align="center" prop="status" />
<el-table-column label="文件标签" align="center" prop="tags" />
<el-table-column label="文件大小" align="center" prop="fileSize" />
<el-table-column label="文件类型" align="center" prop="fileType" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['system:policyFiles:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['system:policyFiles:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改政策文件对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="文件真实名称" prop="realName">
<el-input v-model="form.realName" placeholder="请输入文件真实名称" />
</el-form-item>
<el-form-item label="文件别名" prop="aliasName">
<el-input v-model="form.aliasName" placeholder="请输入文件别名" />
</el-form-item>
<el-form-item label="存储路径" prop="storagePath">
<el-input v-model="form.storagePath" placeholder="请输入存储路径" />
</el-form-item>
<el-form-item label="文件大小" prop="fileSize">
<el-input v-model="form.fileSize" placeholder="请输入文件大小" />
</el-form-item>
<el-form-item label="删除标志" prop="delFlag">
<el-input v-model="form.delFlag" placeholder="请输入删除标志" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listPolicyFiles, getPolicyFiles, delPolicyFiles, addPolicyFiles, updatePolicyFiles } from "@/api/bs/policyFiles";
export default {
name: "PolicyFiles",
data() {
return {
//
loading: true,
//
ids: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
//
policyFilesList: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
realName: null,
aliasName: null,
storagePath: null,
status: null,
tags: null,
fileSize: null,
fileType: null,
},
//
form: {},
//
rules: {
}
};
},
created() {
this.getList();
},
methods: {
/** 查询政策文件列表 */
getList() {
this.loading = true;
listPolicyFiles(this.queryParams).then(response => {
this.policyFilesList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
realName: null,
aliasName: null,
storagePath: null,
status: null,
tags: null,
fileSize: null,
fileType: null,
delFlag: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
remark: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加政策文件";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids
getPolicyFiles(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改政策文件";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
updatePolicyFiles(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addPolicyFiles(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除政策文件编号为"' + ids + '"的数据项?').then(function() {
return delPolicyFiles(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('system/policyFiles/export', {
...this.queryParams
}, `policyFiles_${new Date().getTime()}.xlsx`)
}
}
};
</script>
Loading…
Cancel
Save