lzm 3 anos atrás
pai
commit
d0b6e6c737

+ 13 - 1
sp-server/src/main/java/com/pj/project/tb_invoice_info/TbInvoiceInfoService.java

@@ -10,6 +10,8 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.RandomUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.pj.api.wx.bo.MsgDataBO;
@@ -25,6 +27,7 @@ import com.pj.project.tb_invoice_order.TbInvoiceOrderService;
 import com.pj.project4sp.admin.SpAdmin;
 import com.pj.project4sp.admin.SpAdminService;
 import com.pj.project4sp.global.BusinessException;
+import com.pj.utils.cache.RedisUtil;
 import com.pj.utils.so.SoMap;
 import org.springframework.stereotype.Service;
 
@@ -168,6 +171,12 @@ public class TbInvoiceInfoService extends ServiceImpl<TbInvoiceInfoMapper, TbInv
     }
 
     public List<FeeDeatilsGroup> getDetailsById(String id){
+        String jsonStr = RedisUtil.get("invoicedetails:" + id );
+        if(StrUtil.isNotEmpty(jsonStr)){
+            JSONArray objects = JSONUtil.parseArray(jsonStr);
+            List<FeeDeatilsGroup> grouping = JSONUtil.toList(objects, FeeDeatilsGroup.class);
+            return grouping;
+        }
         List<TbInvoiceOrder> invoiceOrderList = tbInvoiceOrderService.findByInfoId(id);
         List<TbFeeDetails> allDetailsList = new ArrayList<>();
         for (TbInvoiceOrder invoiceOrder : invoiceOrderList) {
@@ -182,7 +191,10 @@ public class TbInvoiceInfoService extends ServiceImpl<TbInvoiceInfoMapper, TbInv
             group.setGroupHash(hash);
             groups.add(group);
         }
-        return grouping(groups);
+        List<FeeDeatilsGroup> grouping = grouping(groups);
+        String groupingJson = JSONUtil.toJsonStr(grouping);
+        RedisUtil.set("invoicedetails:" + id, groupingJson);
+        return grouping;
     }
 
     private List<FeeDeatilsGroup> grouping(List<FeeDeatilsGroup> list){