From d8a08a295c63ee471d368ade1492a8ec71ff836e Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 11 Nov 2022 16:21:34 +0800
Subject: [PATCH] 20221021
---
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java | 2
src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java | 10 +++
src/main/resources/mapper/dapp/DappMemberDao.xml | 13 ++++
src/main/resources/templates/febs/views/dapp/message-list.html | 111 +++++++++++++++++++++++++++++++++++++
src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java | 3 +
src/main/java/cc/mrbird/febs/dapp/entity/DappMessageEntity.java | 10 +++
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java | 10 +++
src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java | 10 +++
8 files changed, 169 insertions(+), 0 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java b/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
index d34febc..f56cb52 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
@@ -8,6 +8,7 @@
import cc.mrbird.febs.dapp.chain.ChainService;
import cc.mrbird.febs.dapp.dto.PriceSettingDto;
import cc.mrbird.febs.dapp.entity.*;
+import cc.mrbird.febs.dapp.mapper.DappMessageDao;
import cc.mrbird.febs.dapp.service.DappMemberService;
import cc.mrbird.febs.dapp.service.DappSystemService;
import cc.mrbird.febs.dapp.vo.AdminMemberIdentityVo;
@@ -230,4 +231,13 @@
public FebsResponse amountFlowBack(@PathVariable("id") Long id) {
return dappMemberService.amountFlowBack(id);
}
+
+ /**
+ * 客服消息-列表
+ */
+ @GetMapping("messageList")
+ public FebsResponse messageList(DappMessageEntity dappMessageEntity, QueryRequest request) {
+ Map<String, Object> data = getDataTable(dappMemberService.getMessageListInPage(dappMessageEntity, request));
+ return new FebsResponse().success().data(data);
+ }
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java b/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
index 3f97dff..a168847 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
@@ -217,4 +217,14 @@
return FebsUtil.view("dapp/identitySet");
}
+ /**
+ * 客服消息-列表
+ * @return
+ */
+ @GetMapping("messageList")
+ @RequiresPermissions("messageList:view")
+ public String messageList() {
+ return FebsUtil.view("dapp/message-list");
+ }
+
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/entity/DappMessageEntity.java b/src/main/java/cc/mrbird/febs/dapp/entity/DappMessageEntity.java
index c9cee18..90c5a30 100644
--- a/src/main/java/cc/mrbird/febs/dapp/entity/DappMessageEntity.java
+++ b/src/main/java/cc/mrbird/febs/dapp/entity/DappMessageEntity.java
@@ -1,6 +1,7 @@
package cc.mrbird.febs.dapp.entity;
import cc.mrbird.febs.common.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@@ -12,4 +13,13 @@
private String message;
+ @TableField(exist = false)
+ private String username;
+
+ /**
+ * 后台操作用户的标识
+ */
+ @TableField(exist = false)
+ private String description;
+
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java
index 1c4e3ce..7a5fa6e 100644
--- a/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java
@@ -5,6 +5,7 @@
import cc.mrbird.febs.dapp.dto.TeamListDto;
import cc.mrbird.febs.dapp.entity.AppVersion;
import cc.mrbird.febs.dapp.entity.DappMemberEntity;
+import cc.mrbird.febs.dapp.entity.DappMessageEntity;
import cc.mrbird.febs.dapp.entity.MemberCoinChargeEntity;
import cc.mrbird.febs.dapp.vo.ApiMyTeammateInfoListVo;
import cc.mrbird.febs.dapp.vo.TeamListVo;
@@ -73,4 +74,6 @@
IPage<MemberCoinChargeEntity> getChargeListInPage(Page<MemberCoinChargeEntity> page, @Param("record")MemberCoinChargeEntity memberCoinChargeEntity);
List<DappMemberEntity> selectTotalMemberByRefererIdAndIdentity(@Param("inviteId")String inviteId);
+
+ IPage<DappMessageEntity> selectMessageListInPage(@Param("record")DappMessageEntity dappMessageEntity, Page<DappMemberEntity> page);
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
index c1a6e82..d874661 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
@@ -106,4 +106,6 @@
FebsResponse amountFlowBack(Long id);
FebsResponse addMessage(AddMessageDto addMessageDto);
+
+ IPage<DappMessageEntity> getMessageListInPage(DappMessageEntity dappMessageEntity, QueryRequest request);
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
index 762c2ce..56e38e0 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -1068,6 +1068,16 @@
return new FebsResponse().success();
}
+ @Override
+ public IPage<DappMessageEntity> getMessageListInPage(DappMessageEntity dappMessageEntity, QueryRequest request) {
+ Page<DappMemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+ User currentUser = FebsUtil.getCurrentUser();
+ if(StrUtil.isNotEmpty(currentUser.getDescription())){
+ dappMessageEntity.setDescription(currentUser.getDescription());
+ }
+ return dappMemberDao.selectMessageListInPage(dappMessageEntity, page);
+ }
+
public String generateAsaToken(String token) {
RSA rsa = new RSA(null, AppContants.PUBLIC_KEY);
return rsa.encryptBase64(token + "_" + System.currentTimeMillis(), KeyType.PublicKey);
diff --git a/src/main/resources/mapper/dapp/DappMemberDao.xml b/src/main/resources/mapper/dapp/DappMemberDao.xml
index d39829f..e49b10a 100644
--- a/src/main/resources/mapper/dapp/DappMemberDao.xml
+++ b/src/main/resources/mapper/dapp/DappMemberDao.xml
@@ -276,4 +276,17 @@
and b.referer_id = #{inviteId}
</select>
+
+ <select id="selectMessageListInPage" resultType="cc.mrbird.febs.dapp.entity.DappMessageEntity">
+ select
+ a.*,b.username username
+ from dapp_message a
+ left join dapp_member b on b.id = a.member_id
+ <where>
+ <if test="record.username !='' and record.username != null">
+ and b.username = #{record.username}
+ </if>
+ </where>
+ order by create_time desc
+ </select>
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/dapp/message-list.html b/src/main/resources/templates/febs/views/dapp/message-list.html
new file mode 100644
index 0000000..278d599
--- /dev/null
+++ b/src/main/resources/templates/febs/views/dapp/message-list.html
@@ -0,0 +1,111 @@
+<div class="layui-fluid layui-anim febs-anim" id="febs-member-message" lay-title="客服消息">
+ <div class="layui-row febs-container">
+ <div class="layui-col-md12">
+ <div class="layui-card">
+ <div class="layui-card-body febs-table-full">
+ <form class="layui-form layui-table-form" lay-filter="member-message-table-form">
+ <div class="layui-row">
+ <div class="layui-col-md10">
+ <div class="layui-form-item">
+ <div class="layui-inline">
+ <label class="layui-form-label layui-form-label-sm">用户名</label>
+ <div class="layui-input-inline">
+ <input type="text" name="username" autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="layui-col-md2 layui-col-sm12 layui-col-xs12 table-action-area">
+ <div class="layui-btn layui-btn-sm layui-btn-primary febs-button-blue-plain table-action" id="query">
+ <i class="layui-icon"></i>
+ </div>
+ <div class="layui-btn layui-btn-sm layui-btn-primary febs-button-green-plain table-action" id="reset">
+ <i class="layui-icon"></i>
+ </div>
+ </div>
+ </div>
+ </form>
+ <table lay-filter="memberMessageTable" lay-data="{id: 'memberMessageTable'}"></table>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+<style>
+ .layui-table-cell {
+ height: auto !important;
+ }
+</style>
+<script data-th-inline="none" type="text/javascript">
+ layui.use(['dropdown', 'jquery', 'laydate', 'form', 'table', 'febs', 'treeSelect'], function () {
+ var $ = layui.jquery,
+ laydate = layui.laydate,
+ febs = layui.febs,
+ form = layui.form,
+ table = layui.table,
+ dropdown = layui.dropdown,
+ $view = $('#febs-member-message'),
+ $query = $view.find('#query'),
+ $reset = $view.find('#reset'),
+ $searchForm = $view.find('form'),
+ sortObject = {field: 'createTime', type: null},
+ tableIns;
+
+ form.render();
+
+ initTable();
+
+ table.on('tool(memberMessageTable)', function (obj) {
+ var data = obj.data,
+ layEvent = obj.event;
+ });
+
+ table.on('sort(memberMessageTable)', function (obj) {
+ sortObject = obj;
+ tableIns.reload({
+ initSort: obj,
+ where: $.extend(getQueryParams(), {
+ field: obj.field,
+ order: obj.type
+ })
+ });
+ });
+
+ $query.on('click', function () {
+ var params = $.extend(getQueryParams(), {field: sortObject.field, order: sortObject.type});
+ tableIns.reload({where: params, page: {curr: 1}});
+ });
+
+ $reset.on('click', function () {
+ $searchForm[0].reset();
+ tableIns.reload({where: getQueryParams(), page: {curr: 1}, initSort: sortObject});
+ });
+
+ function initTable() {
+ tableIns = febs.table.init({
+ elem: $view.find('table'),
+ id: 'memberMessageTable',
+ url: ctx + 'member/messageList',
+ cols: [[
+ {field: 'username', title: '用户名',
+ templet: function (d) {
+ if (d.username === null || d.username === '') {
+ return '<span>游客</span>'
+ }else{
+ return d.username
+ }
+ }, minWidth: 150, align: 'center'},
+ {field: 'message', title: '内容', minWidth: 130},
+ {field: 'createTime', title: '创建时间', minWidth: 180}
+ ]]
+ });
+ }
+
+ function getQueryParams() {
+ return {
+ username: $searchForm.find('input[name="username"]').val().trim()
+ };
+ }
+
+ })
+</script>
--
Gitblit v1.9.1