From 2784496a8395930716ff4de285c2bce717abb907 Mon Sep 17 00:00:00 2001
From: whywhyo <1511349576@qq.com>
Date: 星期日, 21 五月 2023 16:56:06 +0800
Subject: [PATCH] 888

---
 zhang-content/src/main/java/com/ruoyi/service/impl/ZSecretServiceImpl.java      |  118 ++++++++++++++++
 zhang-content/src/main/java/com/ruoyi/service/impl/ZHonorServiceImpl.java       |   13 +
 zhang-content/src/main/java/com/ruoyi/service/ZHonorService.java                |    2 
 zhang-content/src/main/java/com/ruoyi/service/ZSecretService.java               |   12 +
 zhang-content/src/main/java/com/ruoyi/domain/ZSecret.java                       |  150 ++++++---------------
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZHonorController.java  |    6 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZSecretController.java |  105 ++++++++++++++
 7 files changed, 293 insertions(+), 113 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZHonorController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZHonorController.java
index 5c7b625..d20ca2b 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZHonorController.java
+++ b/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, "璇佷欢銆佽崳瑾夈�佽祫璐ㄨ褰曟暟鎹�");
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZSecretController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZSecretController.java
index 32404c5..51afe5e 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhang/ZSecretController.java
+++ b/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)));
+    }
 
 }
 
diff --git a/zhang-content/src/main/java/com/ruoyi/domain/ZSecret.java b/zhang-content/src/main/java/com/ruoyi/domain/ZSecret.java
index 3093917..8bb6aba 100644
--- a/zhang-content/src/main/java/com/ruoyi/domain/ZSecret.java
+++ b/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;
 }
diff --git a/zhang-content/src/main/java/com/ruoyi/service/ZHonorService.java b/zhang-content/src/main/java/com/ruoyi/service/ZHonorService.java
index 68b5a4b..a9e863d 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/ZHonorService.java
+++ b/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);
 }
diff --git a/zhang-content/src/main/java/com/ruoyi/service/ZSecretService.java b/zhang-content/src/main/java/com/ruoyi/service/ZSecretService.java
index 4e9ff65..b523695 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/ZSecretService.java
+++ b/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);
+
 }
diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZHonorServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZHonorServiceImpl.java
index f2b1e65..9c6d40f 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZHonorServiceImpl.java
+++ b/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();
diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZSecretServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZSecretServiceImpl.java
index c326b91..f91987a 100644
--- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZSecretServiceImpl.java
+++ b/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();
+
+    }
+
+
 }

--
Gitblit v1.9.1