Explorar el Código

Merge branch 'dev' of http://git.izouma.com/xiongzhu/raex_back into dev

panhui hace 3 años
padre
commit
d614cc535f

+ 9 - 0
src/main/java/com/izouma/nineth/config/RiceScheduledTasksConfig.java

@@ -49,4 +49,13 @@ public class RiceScheduledTasksConfig {
         riceRepo.saveAll(riceList);
     }
 
+    @Scheduled(cron = "0 0 0 * * ?")
+    public void resetEarnPointsEveryDay() {
+        List<Rice> riceList = riceRepo.findAll();
+        for (Rice rice : riceList) {
+            rice.setEarnPointsEveryDay(0L);
+        }
+        riceRepo.saveAll(riceList);
+    }
+
 }

+ 22 - 4
src/main/java/com/izouma/nineth/domain/Asset.java

@@ -7,10 +7,7 @@ import com.izouma.nineth.converter.FileObjectConverter;
 import com.izouma.nineth.converter.FileObjectListConverter;
 import com.izouma.nineth.converter.PrivilegeListConverter;
 import com.izouma.nineth.converter.PropertyListConverter;
-import com.izouma.nineth.enums.AssetSource;
-import com.izouma.nineth.enums.AssetStatus;
-import com.izouma.nineth.enums.CollectionType;
-import com.izouma.nineth.enums.MetaSize;
+import com.izouma.nineth.enums.*;
 import com.izouma.nineth.utils.CollectionTagSerializer;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -244,6 +241,27 @@ public class Asset extends CollectionBaseEntity {
     @Transient
     private LocalDateTime endTime;
 
+
+
+    @Transient
+    @ApiModelProperty("是否打开超链")
+    private boolean openHyperLink = false;
+
+    @Transient
+    @ApiModelProperty("超链类型")
+    @Enumerated(EnumType.STRING)
+    private HyperLinkType hyperLinkType;
+
+    @Transient
+    @ApiModelProperty("超链地址")
+    private String address;
+
+    @Transient
+    @ApiModelProperty("当前使用nft域名的人的id")
+    private Long CurrentOwnerId;
+
+
+
     @Transient
     @ApiModelProperty("元宇宙展厅是否上架")
     private boolean metaPutOn;

+ 7 - 0
src/main/java/com/izouma/nineth/domain/Rice.java

@@ -81,10 +81,17 @@ public class Rice extends BaseEntity {
     private Long numberOfActivity= 0L;
 
 
+    @ApiModelProperty("今日用户获得积分")
+    private Long earnPointsEveryDay= 0L;
 
 
 
 
+
+
+    public Long getEarnPointsEveryDay() {
+        return earnPointsEveryDay == null ? 0L : earnPointsEveryDay;
+    }
     public Long getNumberOfSingnIn() {
         return numberOfSingnIn == null ? 0L : numberOfSingnIn;
     }

+ 1 - 0
src/main/java/com/izouma/nineth/domain/Showroom.java

@@ -38,6 +38,7 @@ public class Showroom extends BaseEntity {
 
     private Long assetId;
 
+    @Searchable
     private String name;
 
     private String pic;

+ 2 - 0
src/main/java/com/izouma/nineth/domain/netease/NeteaseMessage.java

@@ -7,6 +7,7 @@ import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
+import javax.persistence.Column;
 import javax.persistence.Entity;
 
 @Entity
@@ -28,6 +29,7 @@ public class NeteaseMessage extends BaseEntity {
     //type: 0 文本消息, 1 图片消息,3 视频消息
     private Integer type;
     @Searchable
+    @Column(columnDefinition = "TEXT")
     private String  body;
     private String  msgInfo;
     private Long    timetag;

+ 5 - 4
src/main/java/com/izouma/nineth/dto/excel/GlobalSearchDTO.java

@@ -1,9 +1,6 @@
 package com.izouma.nineth.dto.excel;
 
-import com.izouma.nineth.domain.Collection;
-import com.izouma.nineth.domain.MintActivity;
-import com.izouma.nineth.domain.News;
-import com.izouma.nineth.domain.User;
+import com.izouma.nineth.domain.*;
 import com.izouma.nineth.service.LikeService;
 import lombok.AllArgsConstructor;
 import lombok.Data;
@@ -42,4 +39,8 @@ public class GlobalSearchDTO {
     List<User> users;
 
     boolean usersAll;
+
+    List<Showroom> showrooms;
+
+    boolean showroomAll;
 }

+ 10 - 6
src/main/java/com/izouma/nineth/service/OrderService.java

@@ -844,12 +844,16 @@ public class OrderService {
 
                                 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
                                 String localDateTimeNowStr = order.getPayTime().format(formatter);
-                                String info = "元域名:\"" + collection.getName().substring(9)
-                                                                   .replace(".nft", "") + "\"\n" +
-                                        "持有人:\"" + collection.getOwner() + "\"\n" +
-                                        "购买人:\"" + user.getNickname() + "\"\n" +
-                                        "时间:\"" + localDateTimeNowStr + "\"\n" +
-                                        "成交价:\"" + order.getTotalPrice() + "\"\n";
+                                String info = "<div style=\"line-height: 40px;background: #06c04f;border-radius: 4px;padding: 0 20px;margin-bottom: 12px;\">RAEX绿洲:RID元域名称交易监控</div><div style=\"display: flex\"><img style=\"width: 18px; height: 18px; margin: 5px 10px 0 0\"src=\"https://cdn.raex.vip/image/2023-04-06-14-32-07vINcTaZP.png\"alt=\"\"/><span> RID:" + collection
+                                        .getName()
+                                        .substring(9) + "【已出售】</span></div><div style=\"display: flex\"><img style=\"width: 18px; height: 18px; margin: 5px 10px 0 0\"src=\"https://cdn.raex.vip/image/2023-04-06-14-28-32HcaKTDYb.png\"alt=\"\"/><span>分类:【RID元域名】</span></div><div style=\"display: flex\"><img style=\"width: 18px; height: 18px; margin: 5px 10px 0 0\"src=\"https://cdn.raex.vip/image/2023-04-06-14-31-49lldhGaqC.png\"alt=\"\"/><span>销售价格:【" + order
+                                        .getTotalPrice() + "】</span></div><div style=\"display: flex\"><img style=\"width: 18px; height: 18px; margin: 5px 10px 0 0\"src=\"https://cdn.raex.vip/image/2023-04-06-14-32-21ciilInpO.png\"alt=\"\"/><span>交易时间:<br/>【" + localDateTimeNowStr + "】</span></div>";
+//                                String info = "元域名:\"" + collection.getName().substring(9)
+//                                                                   .replace(".nft", "") + "\"\n" +
+//                                        "持有人:\"" + collection.getOwner() + "\"\n" +
+//                                        "购买人:\"" + user.getNickname() + "\"\n" +
+//                                        "时间:\"" + localDateTimeNowStr + "\"\n" +
+//                                        "成交价:\"" + order.getTotalPrice() + "\"\n";
                                 object.put("msg", info);
                                 String news = JSONObject.toJSONString(object);
                                 neteaseMessage.setBody(news);

+ 7 - 7
src/main/java/com/izouma/nineth/service/RiceService.java

@@ -663,8 +663,8 @@ public class RiceService {
             createRiceOperationRecord(authenticatedUser.getId(), RiceOperationType.WATER_DROP, (long) exchangeCount, beforeNumberOfScoreExchanged, rice
                     .getNumberOfScoreExchanged());
 
-            createRiceOperationRecord(authenticatedUser.getId(), RiceOperationType.SELF_SCORE, (long) totalScore, beforeSelfScore, rice
-                    .getSelfScore());
+//            createRiceOperationRecord(authenticatedUser.getId(), RiceOperationType.SELF_SCORE, (long) totalScore, beforeSelfScore, rice
+//                    .getSelfScore());
             return R.success("兑换成功").add("exchangeCount", exchangeCount)
                     .add("numberOfScoreExchanged", rice.getNumberOfScoreExchanged());
         } else if (exchangeCount == 0) {
@@ -741,8 +741,7 @@ public class RiceService {
             LocalDateTime todayStartTime = LocalDateTime.of(now.toLocalDate(), LocalTime.MIN).withNano(0);
             LocalDateTime todayEndTime = LocalDateTime.of(now.toLocalDate(), LocalTime.MAX).withNano(0);
 
-            int totalTodayScore = riceOperationRecordRepo.sumTodayRiceOperationType(rice.getUserId(), RiceOperationType.SELF_SCORE, todayStartTime, todayEndTime);
-            if (totalTodayScore <= 80) {
+            if (rice.getEarnPointsEveryDay() <= 80) {
                 int counts = riceOperationRecordRepo.countTodayRiceOperationType(rice.getUserId(), RiceOperationType.SELF_SCORE, todayStartTime, todayEndTime);
                 counts = counts + 1;
                 int defaultScore = 0;
@@ -759,12 +758,13 @@ public class RiceService {
                         break;
                     }
                 }
-                // 如果 counts 不在任何范围内,则默认的 score 值是最后一个对象中的 score 值
-                if (!(defaultScore == 0 && jsonArray.size() > 0)) {
+
+
                     rice.setSelfScore(rice.getSelfScore() + defaultScore);
+                    rice.setEarnPointsEveryDay(rice.getEarnPointsEveryDay()+defaultScore);
                     riceRepo.save(rice);
                     createRiceOperationRecord(userId, RiceOperationType.SELF_SCORE, (long) defaultScore, beforeSelfScore, rice.getSelfScore());
-                }
+
             }
 
 

+ 28 - 19
src/main/java/com/izouma/nineth/service/StatisticService.java

@@ -39,21 +39,17 @@ import java.util.stream.Collectors;
 @AllArgsConstructor
 public class StatisticService {
 
-    private UserRepo                      userRepo;
-    private OrderRepo                     orderRepo;
-    private TokenHistoryRepo              tokenHistoryRepo;
-    private BalanceRecordRepo             balanceRecordRepo;
-    private PhotoAssetRepo                photoAssetRepo;
-    private DomainOrderRepo               domainOrderRepo;
-    private CollectionService             collectionService;
-    private NewsRepo                      newsRepo;
-    private MintActivityService           mintActivityService;
-    private UserService                   userService;
-    private CollectionPrivilegeRepo       collectionPrivilegeRepo;
-    private RedisTemplate<String, Object> redisTemplate;
-    private RocketMQTemplate              rocketMQTemplate;
-    private GeneralProperties             generalProperties;
-    private Environment                   env;
+    private UserRepo            userRepo;
+    private OrderRepo           orderRepo;
+    private TokenHistoryRepo    tokenHistoryRepo;
+    private BalanceRecordRepo   balanceRecordRepo;
+    private PhotoAssetRepo      photoAssetRepo;
+    private DomainOrderRepo     domainOrderRepo;
+    private CollectionService   collectionService;
+    private NewsRepo            newsRepo;
+    private MintActivityService mintActivityService;
+    private UserService         userService;
+    private ShowroomService     showroomService;
 
     public Map<String, Object> total(Long userId, Long companyId) {
         User user1 = userRepo.findByIdAndDelFalse(userId).orElseThrow(new BusinessException("无用户"));
@@ -492,18 +488,22 @@ public class StatisticService {
         map.put("notLike", "星星的孩子,测试");
         pageQuery.setQuery(map);
         Page<Collection> collections1 = collectionService.all(pageQuery).toPage();
+        //default
         globalSearchDTO.setCollections(collections1.getContent());
         globalSearchDTO.setCollectionsAll(collections1.getTotalElements() <= 6);
         map.put("type", "PICTURE");
         Page<Collection> collections2 = collectionService.all(pageQuery).toPage();
+        //picture
         globalSearchDTO.setPictures(collections2.getContent());
         globalSearchDTO.setPicturesAll(collections2.getTotalElements() <= 6);
         map.put("type", "DOMAIN");
         Page<Collection> collections3 = collectionService.all(pageQuery).toPage();
+        //domain
         globalSearchDTO.setDomains(collections3.getContent());
         globalSearchDTO.setDomainsAll(collections3.getTotalElements() <= 6);
         PageRequest pageRequest = PageRequest.of(0, 6);
         Page<News> news = newsRepo.findByTitleLike("%" + search + "%", pageRequest);
+        //news
         globalSearchDTO.setNews(news.getContent());
         globalSearchDTO.setNewsAll(news.getTotalElements() <= 6);
         Map<String, Object> mintMap = new HashMap<>();
@@ -511,6 +511,7 @@ public class StatisticService {
         mintMap.put("del", false);
         pageQuery.setQuery(mintMap);
         Page<MintActivity> mints = mintActivityService.all(pageQuery);
+        //mint
         globalSearchDTO.setMintActivities(mints.getContent());
         globalSearchDTO.setMintActivitiesAll(mints.getTotalElements() <= 6);
         Map<String, Object> minterMap = new HashMap<>();
@@ -519,14 +520,22 @@ public class StatisticService {
         minterMap.put("minter", true);
         pageQuery.setQuery(minterMap);
         Page<User> minters = userService.all(pageQuery).toPage();
+        //minter
         globalSearchDTO.setMinters(minters.getContent());
         globalSearchDTO.setMintersAll(minters.getTotalElements() <= 6);
         Page<User> userPage = userRepo
                 .findByNicknameLikeOrIntroLike("%" + search + "%", "%" + search + "%", pageRequest);
-        globalSearchDTO.setMinters(userPage.getContent());
-        globalSearchDTO.setMintersAll(userPage.getTotalElements() <= 6);
+        //user
+        globalSearchDTO.setUsers(userPage.getContent());
+        globalSearchDTO.setUsersAll(userPage.getTotalElements() <= 6);
+        Map<String, Object> showRoomMap = new HashMap<>();
+        showRoomMap.put("del", false);
+        showRoomMap.put("status", "SUCCESS");
+        pageQuery.setQuery(showRoomMap);
+        Page<Showroom> showrooms = showroomService.all(pageQuery);
+        //showroom
+        globalSearchDTO.setShowrooms(showrooms.getContent());
+        globalSearchDTO.setShowroomAll(showrooms.getTotalElements() <= 6);
         return globalSearchDTO;
-
-
     }
 }

+ 2 - 2
src/main/java/com/izouma/nineth/service/netease/NeteaseMessageService.java

@@ -40,9 +40,9 @@ public class NeteaseMessageService {
                     });
             String msgContent = map.get("msg");
             if (msgContent
-                    .contains("cdn.raex.vip")) {
+                    .contains("cdn.raex.vip") & !msgContent.contains("<div")) {
                 result1 = contentAuditService.auditImage(msgContent);
-            } else if (msgContent.contains("raex-meta.oss-cn-shenzhen.aliyuncs.com")) {
+            } else if (msgContent.contains("raex-meta.oss-cn-shenzhen.aliyuncs.com") || msgContent.contains("<div")) {
                 result1 = true;
             } else {
                 result1 = contentAuditService.auditText(msgContent);

+ 4 - 0
src/main/java/com/izouma/nineth/web/AssetController.java

@@ -113,6 +113,10 @@ public class AssetController extends BaseController {
             DomainOrder domainOrder = domainOrderRepo
                     .findFirstByDomainNameAndOrderStatus(domainName, OrderStatus.FINISH);
             asset.setEndTime(domainOrder.getEndTime());
+            asset.setOpenHyperLink(domainOrder.isOpenHyperLink());
+            asset.setHyperLinkType(domainOrder.getHyperLinkType());
+            asset.setAddress(domainOrder.getAddress());
+            asset.setCurrentOwnerId(domainOrder.getCurrentOwnerId());
         }
 //        orderRepo.findByIdAndDelFalse(asset.getOrderId()).ifPresent(order -> asset.setOpened(order.isOpened()));
         return asset;

+ 1 - 1
src/test/java/com/izouma/nineth/service/OrderServiceTest.java

@@ -328,7 +328,7 @@ public class OrderServiceTest {
     @Test
     public void test11() {
 
-        orderService.notifyOrder(1088891845578072064L,PayMethod.BALANCE,"565615");
+        orderService.notifyOrder(1093891755176108032L,PayMethod.BALANCE,"565615");
     }
 
     @Test