leon 5 lat temu
rodzic
commit
9da4f13334

+ 2 - 0
src/main/java/com/mokamrp/privates/constant/RedisKey.java

@@ -11,6 +11,8 @@ public class RedisKey {
     public static final String PanCustServiceIdView = "pan_custservice_id_view:";
     //.盘古客服列表 ZSET 全天打点数记录
     public static final String PanCustServiceIdDayView = "pan_custservice_id_day_view:";
+    //.盘古活码内客服列表信息 HASH
+    public static final String PanPromoteCodePool = "pan_promote_code_pool:";
     //.盘古客服信息 HASH
     public static final String PanCustServiceInfo = "pan_custservice_info";
     //.盘古活码二级域名列表 SET

+ 2 - 2
src/main/java/com/mokamrp/privates/controller/pangu/CustserviceController.java

@@ -115,8 +115,8 @@ public class CustserviceController extends BaseController<Custservice> {
      * @return
      */
     public Boolean sync(){
-        List<Custservice> res = custserviceService.list(new QueryWrapper<Custservice>());
-        for (Custservice custservice : res) {
+        List<CustserviceVo> res = custserviceService.getAlllist();
+        for (CustserviceVo custservice : res) {
             stringRedisTemplate.opsForHash().put(RedisKey.PanCustServiceInfo,Integer.toString(custservice.getId()),JSON.toJSONString(custservice));
         }
         return true;

+ 13 - 0
src/main/java/com/mokamrp/privates/controller/pangu/PromoteQrcodePoolController.java

@@ -1,5 +1,6 @@
 package com.mokamrp.privates.controller.pangu;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.mokamrp.privates.constant.Constants;
 import com.mokamrp.privates.constant.HttpStatus;
@@ -135,6 +136,7 @@ public class PromoteQrcodePoolController extends BaseController<PromoteQrcodePoo
         if (res) {
             //.同步到redis
             this.addRedis(addHandle.getRaw().getPromoteId(), addHandle.getRaw().getCustserviceId(), addHandle.getRaw().getWeight());
+            this.sync();
             return AjaxResult.success(Constants.SUCCESS, res);
         } else {
             return AjaxResult.error("新增失败", res);
@@ -181,6 +183,7 @@ public class PromoteQrcodePoolController extends BaseController<PromoteQrcodePoo
             if (res) {
                 //.同步到redis
                 this.addRedis(raw.getPromoteId(), raw.getCustserviceId(), raw.getWeight());
+                this.sync();
                 successList.add(raw.getCustserviceId());
                 continue;
             } else {
@@ -201,9 +204,19 @@ public class PromoteQrcodePoolController extends BaseController<PromoteQrcodePoo
         }
         onUpdate(editHandle);
         promoteQrcodePoolService.update(editHandle.getRaw(), new QueryWrapper<PromoteQrcodePool>().in("id", editHandle.getIds()));
+        this.sync();
         return AjaxResult.success(Constants.SUCCESS, true);
     }
 
+
+    private Boolean sync(){
+        List<PromoteQrcodePoolVo> list = promoteQrcodePoolService.getAlllist();
+        for (PromoteQrcodePoolVo poolVo : list) {
+            stringRedisTemplate.opsForHash().put(RedisKey.PanPromoteCodePool+poolVo.getPromoteId(), Integer.toString(poolVo.getCustserviceId()), JSON.toJSONString(poolVo));
+        }
+        return true;
+    }
+
     private Boolean addRedis(Integer promoteId, Integer custserviceId, Integer weight) {
         String scoreStr = BigDecimal.valueOf(weight.doubleValue() / 1000).setScale(4, RoundingMode.HALF_EVEN).stripTrailingZeros().toPlainString();
         float score = Float.parseFloat(scoreStr);

+ 4 - 1
src/main/java/com/mokamrp/privates/mapper/pangu/CustserviceMapper.xml

@@ -18,7 +18,10 @@
     </sql>
     <!-- 盘古客服二维码库-->
     <select id="getlist" resultType="com.mokamrp.privates.mapper.pangu.pojo.CustserviceVo">
-        SELECT A.*,B.group_name FROM pan_custservice AS A
+        SELECT
+        A.*,
+        B.group_name
+        FROM pan_custservice AS A
         LEFT JOIN pan_custservice_group B ON A.group_id = B.id
         <where>
             <if test="custserviceListHandle.id != null">and A.id = #{custserviceListHandle.id}  </if>

+ 4 - 0
src/main/java/com/mokamrp/privates/mapper/pangu/PromoteCodeMapper.xml

@@ -26,12 +26,16 @@
         C.playbill,
         C.qrcode_x,
         C.qrcode_y,
+        D.playbill AS custservice_playbill,
+        D.qrcode_x AS custservice_qrcode_x,
+        D.qrcode_y AS custservice_qrcode_y,
         B1.domain,
         CONCAT(B1.domain,'/#/dispatch?promoteId=',A.id) AS qrcode
         FROM pan_promote_code AS A
         LEFT JOIN pan_domain_first AS B1 ON A.domain_id = B1.id
         LEFT JOIN pan_domain_second AS B2 ON A.second_domain_id = B2.id
         LEFT JOIN pan_playbill AS C ON A.playbill_id = C.id
+        LEFT JOIN pan_playbill as D ON A.custservice_playbill_id = D.id
         <where>
             <if test="promoteCodeListHandle.name != null">and A.name like CONCAT('%',#{promoteCodeListHandle.name},'%')</if>
         </where>

+ 0 - 16
src/main/java/com/mokamrp/privates/mapper/pangu/pojo/CustserviceVo.java

@@ -45,22 +45,6 @@ public class CustserviceVo extends Model<CustserviceVo> {
      */
     private String groupName;
 
-//    /**
-//     * 海报名称
-//     */
-//    private String playbillName;
-//    /**
-//     * 海报地址
-//     */
-//    private String playbill;
-//    /**
-//     * 海报二维码坐标左上角
-//     */
-//    private String qrcodeX;
-//    /**
-//     * 海报二维码坐标右下角
-//     */
-//    private String qrcodeY;
     private LocalDateTime createAt;
 
     private LocalDateTime updateAt;

+ 2 - 0
src/main/java/com/mokamrp/privates/mapper/pangu/pojo/PromoteCode.java

@@ -71,6 +71,8 @@ public class PromoteCode extends Model<PromoteCode> {
 
     private Integer playbillId;
 
+    private Integer custservicePlaybillId;
+
     private LocalDateTime createAt;
 
     private LocalDateTime updateAt;

+ 20 - 12
src/main/java/com/mokamrp/privates/mapper/pangu/pojo/PromoteCodeVo.java

@@ -26,7 +26,7 @@ public class PromoteCodeVo extends Model<PromoteCodeVo> {
     /**
      * id
      */
-      @TableId(value = "id", type = IdType.AUTO)
+    @TableId(value = "id", type = IdType.AUTO)
     private Integer id;
 
     private String name;
@@ -87,6 +87,14 @@ public class PromoteCodeVo extends Model<PromoteCodeVo> {
 
     private String qrcodeY;
 
+    private Integer custservicePlaybillId;
+
+    private String custservicePlaybill;
+
+    private String custserviceQrcodeX;
+
+    private String custserviceQrcodeY;
+
     private LocalDateTime createAt;
 
     private LocalDateTime updateAt;
@@ -181,16 +189,16 @@ public class PromoteCodeVo extends Model<PromoteCodeVo> {
     @Override
     public String toString() {
         return "PromoteCode{" +
-        "id=" + id +
-        ", name=" + name +
-        ", status=" + status +
-        ", domainId=" + domainId +
-        ", takeQrcodePv=" + takeQrcodePv +
-        ", longTouchPv=" + longTouchPv +
-        ", dayUvMax=" + dayUvMax +
-        ", hourUvMax=" + hourUvMax +
-        ", createAt=" + createAt +
-        ", updateAt=" + updateAt +
-        "}";
+                "id=" + id +
+                ", name=" + name +
+                ", status=" + status +
+                ", domainId=" + domainId +
+                ", takeQrcodePv=" + takeQrcodePv +
+                ", longTouchPv=" + longTouchPv +
+                ", dayUvMax=" + dayUvMax +
+                ", hourUvMax=" + hourUvMax +
+                ", createAt=" + createAt +
+                ", updateAt=" + updateAt +
+                "}";
     }
 }

+ 4 - 0
src/main/java/com/mokamrp/privates/service/pangu/CustserviceService.java

@@ -3,7 +3,9 @@ package com.mokamrp.privates.service.pangu;
 import com.mokamrp.privates.entity.pangu.CustserviceListHandle;
 import com.mokamrp.privates.mapper.pangu.pojo.Custservice;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.mokamrp.privates.mapper.pangu.pojo.CustserviceVo;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -17,6 +19,8 @@ import java.util.Map;
 public interface CustserviceService extends IService<Custservice> {
     //.盘古客服库列表
     public Object getlist(CustserviceListHandle custserviceListHandle);
+    //.盘古所有客服库列表
+    public List<CustserviceVo> getAlllist();
     //.按阈值大小获取客服码
     public Map<String,Object> getRandCustservice(String promotePoolKey);
 }

+ 5 - 0
src/main/java/com/mokamrp/privates/service/pangu/PromoteQrcodePoolService.java

@@ -8,6 +8,8 @@ import com.mokamrp.privates.mapper.pangu.pojo.PromoteQrcodePool;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.mokamrp.privates.mapper.pangu.pojo.PromoteQrcodePoolVo;
 
+import java.util.List;
+
 /**
  * <p>
  * 盘古活码内 个微二维码池 服务类
@@ -20,6 +22,9 @@ public interface PromoteQrcodePoolService extends IService<PromoteQrcodePool> {
     //.活码内个微海报码列表
     public Object getlist(GetPromoteQrcodePoolHandle pageHandle);
 
+    //.活码所有微海报码列表
+    public List<PromoteQrcodePoolVo> getAlllist();
+
     //.通过ID获取信息
     public PromoteQrcodePoolVo getInfoById(String id);
 

+ 13 - 0
src/main/java/com/mokamrp/privates/service/pangu/impl/CustserviceServiceImpl.java

@@ -52,6 +52,19 @@ public class CustserviceServiceImpl extends ServiceImpl<CustserviceMapper, Custs
     }
 
     /**
+     * 获取所有客服库信息
+     * @return
+     */
+    public List<CustserviceVo> getAlllist() {
+        CustserviceListHandle custserviceListHandle = new CustserviceListHandle();
+        custserviceListHandle.setPage(1);
+        custserviceListHandle.setPagesize(99999);
+        Page<CustserviceVo> page = new Page<CustserviceVo>(custserviceListHandle.getPage(), custserviceListHandle.getPagesize());
+        List<CustserviceVo> custservices = custserviceMapper.getlist(page, custserviceListHandle);
+        return custservices;
+    }
+
+    /**
      * (API)按阈值大小获取客服码
      *
      * @param promoteId

+ 9 - 0
src/main/java/com/mokamrp/privates/service/pangu/impl/PromoteQrcodePoolServiceImpl.java

@@ -55,6 +55,15 @@ public class PromoteQrcodePoolServiceImpl extends ServiceImpl<PromoteQrcodePoolM
         return res;
     }
 
+    public List<PromoteQrcodePoolVo> getAlllist(){
+        GetPromoteQrcodePoolHandle pageHandle = new GetPromoteQrcodePoolHandle();
+        pageHandle.setPage(1);
+        pageHandle.setPagesize(99999);
+        Page<PromoteQrcodePoolVo> page = new Page<PromoteQrcodePoolVo>(pageHandle.getPage(),pageHandle.getPagesize());
+        List<PromoteQrcodePoolVo> list = promoteQrcodePoolMapper.getlist(page,pageHandle);
+        return list;
+    }
+
     /**
      * 设置活码内的客服和海报列表
      * @param setPromoteQrcodeHandle