888
whywhyo
2023-05-21 2784496a8395930716ff4de285c2bce717abb907
888
7个文件已修改
406 ■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZHonorController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZSecretController.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhang-content/src/main/java/com/ruoyi/domain/ZSecret.java 150 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhang-content/src/main/java/com/ruoyi/service/ZHonorService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhang-content/src/main/java/com/ruoyi/service/ZSecretService.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhang-content/src/main/java/com/ruoyi/service/impl/ZHonorServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zhang-content/src/main/java/com/ruoyi/service/impl/ZSecretServiceImpl.java 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZHonorController.java
@@ -66,10 +66,10 @@
     */
//    @PreAuthorize("@ss.hasPermi('system:property:export')")
    @Log(title = "证件、荣誉、资质记录", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ZHonor zHonor)
    @PostMapping("/export/{ids}")
    public void export(HttpServletResponse response,@PathVariable Long[] ids)
    {
        List<ZHonor> list = zHonorService.selectCondition(zHonor);
        List<ZHonor> list = zHonorService.selectByIds(ids);
        log.info("导出记录为:{}",list);
        ExcelUtil<ZHonor> util = new ExcelUtil<>(ZHonor.class);
        util.exportExcel(response, list, "证件、荣誉、资质记录数据");
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZSecretController.java
@@ -1,9 +1,27 @@
package com.ruoyi.web.controller.zhang;
import org.springframework.web.bind.annotation.RequestMapping;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.text.Convert;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.domain.ZSecret;
import com.ruoyi.service.ZSecretService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import static com.ruoyi.common.core.page.TableSupport.PAGE_NUM;
import static com.ruoyi.common.core.page.TableSupport.PAGE_SIZE;
/**
 * <p>
@@ -15,7 +33,88 @@
 */
@RestController
@RequestMapping("/zSecret")
public class ZSecretController {
@Slf4j
public class ZSecretController extends BaseController {
    @Autowired
    private ZSecretService zSecretService;
    /**
     * 查询所有记录
     */
    @GetMapping("/all")
    public AjaxResult listAll(ZSecret zSecret){
        Integer pageNum = Convert.toInt(ServletUtils.getParameter(PAGE_NUM), 1);
        Integer pageSize = Convert.toInt(ServletUtils.getParameter(PAGE_SIZE), 10);
        return zSecretService.selectDataList(zSecret,pageNum,pageSize);
    }
    /**
     * 模板
     */
    @GetMapping("/model")
    public void getModel(HttpServletResponse response){
        ZSecret zSecret = new ZSecret();
        List<ZSecret> emptyList = Collections.singletonList(zSecret);
        ExcelUtil<ZSecret> util = new ExcelUtil<>(ZSecret.class);
        util.exportExcel(response, emptyList, "藏心密语记录数据");
    }
    /**
     * 导出藏心密语记录列表
     */
//    @PreAuthorize("@ss.hasPermi('system:property:export')")
    @Log(title = "藏心密语记录", businessType = BusinessType.EXPORT)
    @PostMapping("/export/{ids}")
    public void export(HttpServletResponse response,@PathVariable Long[] ids)
    {
        List<ZSecret> list = zSecretService.selectByIds(ids);
        log.info("导出记录为:{}",list);
        ExcelUtil<ZSecret> util = new ExcelUtil<>(ZSecret.class);
        util.exportExcel(response, list, "藏心密语记录数据");
    }
    /**
     * 导入藏心密语记录列表
     */
    @Log(title = "用户管理", businessType = BusinessType.IMPORT)
    @PostMapping("/importData")
    public AjaxResult importData(@RequestParam("excelImport") MultipartFile file) throws Exception
    {
        return zSecretService.importExcel(file);
    }
    /**
     * 新增藏心密语记录
     */
//    @PreAuthorize("@ss.hasPermi('system:property:add')")
    @Log(title = "藏心密语记录", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ZSecret zSecret)
    {
        return zSecretService.mySave(zSecret);
    }
    /**
     * 修改藏心密语记录
     */
//    @PreAuthorize("@ss.hasPermi('system:property:edit')")
    @Log(title = "藏心密语记录", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ZSecret zSecret)
    {
        return toAjax(zSecretService.updateById(zSecret));
    }
//
    /**
     * 批量删除藏心密语记录
     */
//    @PreAuthorize("@ss.hasPermi('system:property:remove')")
    @Log(title = "藏心密语记录", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids)
    {
        return toAjax(zSecretService.removeByIds(Arrays.asList(ids)));
    }
}
zhang-content/src/main/java/com/ruoyi/domain/ZSecret.java
@@ -1,10 +1,17 @@
package com.ruoyi.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import lombok.ToString;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
/**
 * <p>
@@ -15,166 +22,95 @@
 * @since 2023-03-14
 */
@TableName("z_secret")
@Data
@ToString
public class ZSecret implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    private Long id;
    private Long userId;
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;
    /**
     * 发生时间
     */
    @Excel(name = "发生时间",dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date happenTime;
    /**
     * 秘密信息类别
     */
    private Integer type;
    @Excel(name = "类别")
    private String type;
    /**
     * 账号(含理财收益)
     */
    @Excel(name = "账号")
    private String accNo;
    /**
     * 有效期
     */
    private LocalDateTime validityDate;
    @Excel(name = "有效期",dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date validityDate;
    /**
     * 密码(存折和卡用逗号隔开)
     */
    @Excel(name = "密码")
    private String password;
    /**
     * 是否开启指纹,0:否、1:是
     */
    @Excel(name = "是否开启指纹(是/否)",readConverterExp = "0=否,1=是")
    private Integer isFinger;
    /**
     * 是否开启人脸识别,0:否、1:是
     */
    @Excel(name = "是否开启人脸识别(是/否)",readConverterExp = "0=否,1=是")
    private Integer isFace;
    /**
     * 是否私有,0:否、1:是
     */
    @Excel(name = "是否私有(是/否)",readConverterExp = "0=否,1=是")
    private Integer isPrivate;
    /**
     * 存放位置
     */
    @Excel(name = "存放位置")
    private String location;
    /**
     * 备注信息
     */
    @Excel(name = "备注信息")
    private String remark;
    /**
     * 电子文件路径
     */
    private String url;
    public Integer getId() {
        return id;
    }
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date happenStartTime;
    public void setId(Integer id) {
        this.id = id;
    }
    public LocalDateTime getCreateTime() {
        return createTime;
    }
    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public String getAccNo() {
        return accNo;
    }
    public void setAccNo(String accNo) {
        this.accNo = accNo;
    }
    public LocalDateTime getValidityDate() {
        return validityDate;
    }
    public void setValidityDate(LocalDateTime validityDate) {
        this.validityDate = validityDate;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public Integer getIsFinger() {
        return isFinger;
    }
    public void setIsFinger(Integer isFinger) {
        this.isFinger = isFinger;
    }
    public Integer getIsFace() {
        return isFace;
    }
    public void setIsFace(Integer isFace) {
        this.isFace = isFace;
    }
    public Integer getIsPrivate() {
        return isPrivate;
    }
    public void setIsPrivate(Integer isPrivate) {
        this.isPrivate = isPrivate;
    }
    public String getLocation() {
        return location;
    }
    public void setLocation(String location) {
        this.location = location;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    @Override
    public String toString() {
        return "ZSecret{" +
        "id=" + id +
        ", createTime=" + createTime +
        ", type=" + type +
        ", accNo=" + accNo +
        ", validityDate=" + validityDate +
        ", password=" + password +
        ", isFinger=" + isFinger +
        ", isFace=" + isFace +
        ", isPrivate=" + isPrivate +
        ", location=" + location +
        ", remark=" + remark +
        "}";
    }
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date happenEndTime;
}
zhang-content/src/main/java/com/ruoyi/service/ZHonorService.java
@@ -25,4 +25,6 @@
    AjaxResult importExcel(MultipartFile file);
    List<ZHonor> selectCondition(ZHonor zHonor);
    List<ZHonor> selectByIds(Long[] ids);
}
zhang-content/src/main/java/com/ruoyi/service/ZSecretService.java
@@ -2,7 +2,11 @@
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.domain.ZSecret;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
 * <p>
@@ -14,4 +18,12 @@
 */
public interface ZSecretService extends IService<ZSecret> {
    AjaxResult selectDataList(ZSecret zSecret, Integer pageNum, Integer pageSize);
    List<ZSecret> selectByIds(Long[] ids);
    AjaxResult importExcel(MultipartFile file);
    AjaxResult mySave(ZSecret zSecret);
}
zhang-content/src/main/java/com/ruoyi/service/impl/ZHonorServiceImpl.java
@@ -13,6 +13,7 @@
import com.ruoyi.domain.ZAbroad;
import com.ruoyi.domain.ZHonor;
import com.ruoyi.domain.ZfCollection;
import com.ruoyi.domain.ZfProperty;
import com.ruoyi.mapper.ZHonorMapper;
import com.ruoyi.service.ZHonorService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -20,6 +21,8 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
@@ -93,6 +96,16 @@
    }
    @Override
    public List<ZHonor> selectByIds(Long[] ids) {
        List<ZHonor> list = new ArrayList<>();
        if(ids.length!=0)
            list = listByIds(Arrays.asList(ids));
        else
            list = list();
        return list;
    }
    @Override
    public AjaxResult mySave(ZHonor zHonor) {
        SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = user.getUserId();
zhang-content/src/main/java/com/ruoyi/service/impl/ZSecretServiceImpl.java
@@ -1,11 +1,29 @@
package com.ruoyi.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.MapUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.domain.ZSecret;
import com.ruoyi.domain.ZSecret;
import com.ruoyi.domain.ZfEvent;
import com.ruoyi.mapper.ZSecretMapper;
import com.ruoyi.service.ZSecretService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
/**
 * <p>
@@ -18,4 +36,104 @@
@Service
public class ZSecretServiceImpl extends ServiceImpl<ZSecretMapper, ZSecret> implements ZSecretService {
    @Autowired
    ZSecretServiceImpl zSecretService;
    private LambdaQueryWrapper<ZSecret> uniqueCondition(ZSecret zSecret) {
        LambdaQueryWrapper<ZSecret> lqw = new LambdaQueryWrapper<>();
        lqw.eq(StringUtils.isNotEmpty(zSecret.getType()), ZSecret::getType, zSecret.getType())
                .eq(StringUtils.isNotEmpty(zSecret.getAccNo()), ZSecret::getAccNo, zSecret.getAccNo())
                .eq(StringUtils.isNotEmpty(zSecret.getPassword()), ZSecret::getPassword, zSecret.getPassword())
                .eq(zSecret.getValidityDate() != null, ZSecret::getValidityDate, zSecret.getValidityDate())
                .eq(zSecret.getHappenTime() != null, ZSecret::getHappenTime, zSecret.getHappenTime())
                .eq(StringUtils.isNotEmpty(zSecret.getLocation()), ZSecret::getLocation, zSecret.getLocation())
                .eq(StringUtils.isNotEmpty(zSecret.getRemark()), ZSecret::getRemark, zSecret.getRemark())
                .eq(zSecret.getUserId() != null, ZSecret::getUserId, zSecret.getUserId());
        return lqw;
    }
    private LambdaQueryWrapper<ZSecret> buildCondition(ZSecret zSecret, Long userId) {
        LambdaQueryWrapper<ZSecret> lqw = new LambdaQueryWrapper<>();
        lqw.eq(userId != null, ZSecret::getUserId, userId)
                .like(StringUtils.isNotEmpty(zSecret.getType()), ZSecret::getType, zSecret.getType())
                .like(StringUtils.isNotEmpty(zSecret.getAccNo()), ZSecret::getAccNo, zSecret.getAccNo())
                .between(zSecret.getHappenStartTime() != null && zSecret.getHappenEndTime() != null, ZSecret::getHappenTime, zSecret.getHappenStartTime(), zSecret.getHappenEndTime())
                .orderByDesc(ZSecret::getCreateTime);
        return lqw;
    }
    /**
     * 分页查找
     */
    @Override
    public AjaxResult selectDataList(ZSecret zSecret, Integer pageNum, Integer pageSize) {
        SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = user.getUserId();
        LambdaQueryWrapper<ZSecret> lqw = buildCondition(zSecret, userId);
        Page<ZSecret> pageBean = new Page<>(pageNum, pageSize);
        Page<ZSecret> pageResult = page(pageBean, lqw);
        List<ZSecret> beanRecords = pageResult.getRecords();//得到查询出来的数据
        HashMap<String, Object> data = MapUtils.getResult(pageResult, beanRecords);
        return AjaxResult.success(data);
    }
    @Override
    public List<ZSecret> selectByIds(Long[] ids) {
        List<ZSecret> list = new ArrayList<>();
        if (ids.length != 0)
            list = listByIds(Arrays.asList(ids));
        else
            list = list();
        return list;
    }
    @Override
    public AjaxResult mySave(ZSecret zSecret) {
        SysUser user = SecurityUtils.getLoginUser().getUser();
        Long userId = user.getUserId();
        zSecret.setUserId(userId);
        //检查是否有重复数据插入
        LambdaQueryWrapper<ZSecret> lqw = uniqueCondition(zSecret);
        List<ZSecret> list = list(lqw);
        if (list.size() > 0) {
            throw new RuntimeException("请勿新增重复数据");
        }
        if (save(zSecret)) {
            return AjaxResult.success();
        } else {
            return AjaxResult.error();
        }
    }
    @Override
    @Transactional
    public AjaxResult importExcel(MultipartFile file) {
        ExcelUtil<ZSecret> util = new ExcelUtil<>(ZSecret.class);
        List<ZSecret> dataList = null;
        try {
            dataList = util.importExcel(file.getInputStream());
        } catch (Exception e) {
            throw new RuntimeException("没有按照规则导入数据");
        }
        assert dataList != null;
        for (ZSecret zSecret : dataList) {
            zSecretService.mySave(zSecret);
        }
        return AjaxResult.success();
    }
}