Browse Source

add:增加图床列表 V1

lvzhiqiang 2 years ago
parent
commit
27c3725778

+ 9 - 0
src/main/java/top/lvzhiqiang/mapper/CoinMapper.java

@@ -113,4 +113,13 @@ public interface CoinMapper {
     @Insert("INSERT INTO file_image(old_name, new_name, size, path, remark, create_time, modify_time) " +
     @Insert("INSERT INTO file_image(old_name, new_name, size, path, remark, create_time, modify_time) " +
             "VALUES (#{oldName}, #{newName}, #{size}, #{path}, #{remark}, now(), now())")
             "VALUES (#{oldName}, #{newName}, #{size}, #{path}, #{remark}, now(), now())")
     int insertFileImage(FileImage fileImage);
     int insertFileImage(FileImage fileImage);
+
+    @Select({"<script>" +
+            "select * from file_image WHERE delete_flag = 1" +
+            "<if test=\"keyword != null and keyword != ''\">" +
+            "   and (old_name like concat('%',#{keyword},'%') or remark like concat('%',#{keyword},'%'))" +
+            "</if>" +
+            " order by ${sortField} ${sort}" +
+            "</script>"})
+    List<FileImage> findImageList(Map<String, Object> params);
 }
 }

+ 16 - 4
src/main/java/top/lvzhiqiang/service/impl/CoinServiceImpl.java

@@ -22,10 +22,7 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StopWatch;
 import org.springframework.util.StopWatch;
 import top.lvzhiqiang.config.InitRunner;
 import top.lvzhiqiang.config.InitRunner;
 import top.lvzhiqiang.config.WorkWeixinProperties;
 import top.lvzhiqiang.config.WorkWeixinProperties;
-import top.lvzhiqiang.entity.CoinHistoryOrder;
-import top.lvzhiqiang.entity.CoinMonitorCurrency;
-import top.lvzhiqiang.entity.CoinTrader;
-import top.lvzhiqiang.entity.CoinWatchlist;
+import top.lvzhiqiang.entity.*;
 import top.lvzhiqiang.exception.BusinessException;
 import top.lvzhiqiang.exception.BusinessException;
 import top.lvzhiqiang.mapper.CoinMapper;
 import top.lvzhiqiang.mapper.CoinMapper;
 import top.lvzhiqiang.service.CoinService;
 import top.lvzhiqiang.service.CoinService;
@@ -1095,6 +1092,14 @@ public class CoinServiceImpl implements CoinService {
 
 
             renderMainSearch4Watchlist(watchlistList);
             renderMainSearch4Watchlist(watchlistList);
             return watchlistPageInfo;
             return watchlistPageInfo;
+        } else if (params.getString("nameEn").equals("image")) {
+            PageHelper.startPage(params.getInteger("pageNo"), params.getInteger("pageSize"), true);
+            List<FileImage> fileImageList = coinMapper.findImageList(params.toJavaObject(Map.class));
+
+            PageInfo<FileImage> imagePageInfo = new PageInfo<>(fileImageList);
+
+            renderMainSearch4Image(fileImageList);
+            return imagePageInfo;
         } else if (params.getString("nameEn").equals("monitorCurrency")) {
         } else if (params.getString("nameEn").equals("monitorCurrency")) {
             List<CoinMonitorCurrency> monitorCurrencyList = coinMapper.findMonitorCurrencyList();
             List<CoinMonitorCurrency> monitorCurrencyList = coinMapper.findMonitorCurrencyList();
 
 
@@ -1128,6 +1133,13 @@ public class CoinServiceImpl implements CoinService {
         return result;
         return result;
     }
     }
 
 
+    private void renderMainSearch4Image(List<FileImage> fileImageList) {
+        for (FileImage fileImage : fileImageList) {
+            String newPath = "<a target=\"_blank\" href=\" " + fileImage.getPath() + "\">" + fileImage.getPath() + "</a>";
+            fileImage.setPath(newPath);
+        }
+    }
+
     private void renderMainSearch4Watchlist(List<CoinWatchlist> watchlistList) {
     private void renderMainSearch4Watchlist(List<CoinWatchlist> watchlistList) {
         BigDecimal bigDecimal10000 = new BigDecimal("10000");
         BigDecimal bigDecimal10000 = new BigDecimal("10000");
         for (CoinWatchlist coinWatchlist : watchlistList) {
         for (CoinWatchlist coinWatchlist : watchlistList) {

+ 6 - 1
src/main/java/top/lvzhiqiang/util/DateUtils.java

@@ -390,6 +390,11 @@ public class DateUtils {
     }
     }
 
 
     public static void main(String[] args) {
     public static void main(String[] args) {
-        System.out.println(getFewDateStrsByMonth(getToday(), 7));
+        //System.out.println(getFewDateStrsByMonth(getToday(), 7));
+        String sss = "2023-12-18T16:30:00+09:00";
+        LocalDateTime parse = LocalDateTime.parse(sss, DateUtils.dateTimeFormatter2);
+        System.out.println(parse);
+
+        System.out.println(getUTCTimeStr());
     }
     }
 }
 }

+ 16 - 0
src/main/resources/static/coin.html

@@ -208,6 +208,22 @@
                 <option value="asc">asc</option>
                 <option value="asc">asc</option>
             </select>
             </select>
         </div>
         </div>
+        <div id="apis-quiet-div-image" style="display: none;">
+            <button class="apis-quiet-div-button3" slideDiv="apis-quiet-content" pageO="prev">上一页</button>
+            <button class="apis-quiet-div-button3" slideDiv="apis-quiet-content" pageO="next">下一页</button>
+            <input type="text" style="width: 100px;padding-top: 3px;" id="apis-quiet-div-image-pageNo" value="1">
+            <input type="text" style="width: 100px;padding-top: 3px;" id="apis-quiet-div-image-pageSize" disabled="disabled" value="30">
+            <input type="text" style="width: 100px;padding-top: 3px;" id="apis-quiet-div-image-pages" disabled="disabled" value="999999">
+            <input type="text" style="width: 100px;padding-top: 3px;" id="apis-quiet-div-image-keyword" placeholder="关键词">
+            <select id="apis-quiet-div-image-sortField" style="height: 24px;">
+                <option value="create_time">创建时间</option>
+                <option value="size">图片大小</option>
+            </select>
+            <select id="apis-quiet-div-image-sort" style="height: 24px;">
+                <option value="desc">desc</option>
+                <option value="asc">asc</option>
+            </select>
+        </div>
         <div id="apis-quiet-div-traderList" style="display: none;">
         <div id="apis-quiet-div-traderList" style="display: none;">
             <button class="apis-quiet-div-button3" slideDiv="apis-quiet-content" pageO="prev">上一页</button>
             <button class="apis-quiet-div-button3" slideDiv="apis-quiet-content" pageO="prev">上一页</button>
             <button class="apis-quiet-div-button3" slideDiv="apis-quiet-content" pageO="next">下一页</button>
             <button class="apis-quiet-div-button3" slideDiv="apis-quiet-content" pageO="next">下一页</button>

+ 7 - 1
src/main/resources/static/js/my-coin.js

@@ -312,6 +312,12 @@ function mainSearch(url, nameEn, slideDiv, needCustomFlag) {
         jsonData.sort = $("#apis-quiet-div-watchlist-sort").val();
         jsonData.sort = $("#apis-quiet-div-watchlist-sort").val();
         jsonData.filterField = $("#apis-quiet-div-watchlist-filterField").val();
         jsonData.filterField = $("#apis-quiet-div-watchlist-filterField").val();
         jsonData.trackCategoryField = $("#apis-quiet-div-watchlist-trackCategoryField").val();
         jsonData.trackCategoryField = $("#apis-quiet-div-watchlist-trackCategoryField").val();
+    } else if (nameEn === 'image') {
+        jsonData.pageNo = $("#apis-quiet-div-image-pageNo").val();
+        jsonData.pageSize = $("#apis-quiet-div-image-pageSize").val();
+        jsonData.keyword = $("#apis-quiet-div-image-keyword").val();
+        jsonData.sortField = $("#apis-quiet-div-image-sortField").val();
+        jsonData.sort = $("#apis-quiet-div-image-sort").val();
     }
     }
 
 
     $.ajax({
     $.ajax({
@@ -328,7 +334,7 @@ function mainSearch(url, nameEn, slideDiv, needCustomFlag) {
                     return;
                     return;
                 }
                 }
 
 
-                if (nameEn === 'orderHistoryProductType' || nameEn === 'traderList' || nameEn === 'watchlist') {
+                if (nameEn === 'orderHistoryProductType' || nameEn === 'traderList' || nameEn === 'watchlist' || nameEn === 'image') {
                     $("#apis-quiet-div-" + nameEn).find("input[id$=pages]").val(data.data.pages);
                     $("#apis-quiet-div-" + nameEn).find("input[id$=pages]").val(data.data.pages);
                     $('#' + slideDiv).find("span.contentSPAN").html(data.data.total);
                     $('#' + slideDiv).find("span.contentSPAN").html(data.data.total);
                     data = data.data.list;
                     data = data.data.list;