Browse Source

Merge branch 'master' of http://git.zthymaoyi.com/wangchao/businessCard

高敬炎 2 năm trước cách đây
mục cha
commit
ed884c08ad

+ 15 - 1
unimall-admin/src/api/card/commonUserInfo.js

@@ -1,5 +1,5 @@
 import request from '@/utils/request'
-
+import Qs from 'qs'
 // 查询用户管理列表
 export function listCommonUserInfo(query) {
   return request({
@@ -36,6 +36,20 @@ export function addCommonUserInfo(data) {
   })
 }
 
+// 发送消息
+export function userSendMsg(query) {
+  return request({
+    method: 'post',
+    data: Qs.stringify({
+      _gp: 'admin.unimall.cardNewsInfo',
+      _mt: 'add',
+      cardNewsInfo: JSON.stringify(query)
+    })
+  })
+}
+
+
+
 // 修改用户管理
 export function updateCommonUserInfo(data) {
   return request({

+ 1 - 1
unimall-admin/src/api/card/info.js

@@ -5,7 +5,7 @@ export function listInfo(query) {
   return request({
     method: 'get',
     params: {
-      _gp: 'admin.unimall.cardExchangeInfo',
+      _gp: 'admin.unimall.cardNewsInfo',
       _mt: 'list',
       ...query
     }

+ 109 - 86
unimall-admin/src/views/commonUserInfo/index.vue

@@ -2,13 +2,8 @@
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
       <el-form-item label="昵称" prop="nickname">
-        <el-input
-          v-model="queryParams.nickname"
-          placeholder="请输入昵称"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
+        <el-input v-model="queryParams.nickname" placeholder="请输入昵称" clearable size="small"
+          @keyup.enter.native="handleQuery" />
       </el-form-item>
       <!-- <el-form-item label="密码" prop="password">
         <el-input
@@ -20,13 +15,8 @@
         />
       </el-form-item> -->
       <el-form-item label="手机号" prop="phone">
-        <el-input
-          v-model="queryParams.phone"
-          placeholder="请输入手机号"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
+        <el-input v-model="queryParams.phone" placeholder="请输入手机号" clearable size="small"
+          @keyup.enter.native="handleQuery" />
       </el-form-item>
       <!-- <el-form-item label="真实姓名" prop="realname">
         <el-input
@@ -102,33 +92,18 @@
 
     <el-row :gutter="10" class="mb8">
       <el-col :span="1.5">
-        <el-button
-          type="primary"
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-permission="['unimall:commonUserInfo:add']"
-        >新增</el-button>
+        <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd"
+          v-permission="['unimall:commonUserInfo:add']">新增</el-button>
       </el-col>
       <el-col :span="1.5">
-        <el-button
-          type="success"
-          icon="el-icon-edit"
-          size="mini"
-          :disabled="single"
-          @click="handleUpdate"
-          v-permission="['unimall:commonUserInfo:edit']"
-        >修改</el-button>
+        <el-button type="success" icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
+          v-permission="['unimall:commonUserInfo:edit']">修改</el-button>
       </el-col>
       <el-col :span="1.5">
-        <el-button
-          type="danger"
-          icon="el-icon-delete"
-          size="mini"
-          :disabled="multiple"
-          @click="handleDelete"
-          v-permission="['unimall:commonUserInfo:remove']"
-        >删除</el-button>
+        <el-button type="danger" icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
+          v-permission="['unimall:commonUserInfo:remove']">删除</el-button>
+        <el-button type="default" size="mini" @click="sendMsg"
+          v-permission="['unimall:commonUserInfo:remove']">发送消息</el-button>
       </el-col>
       <!-- <el-col :span="1.5">
         <el-button
@@ -165,32 +140,37 @@
       <el-table-column label="删除标识" align="center" prop="deleteFlag" /> -->
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
-            v-permission="['unimall:commonUserInfo:edit']"
-          >修改</el-button>
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-delete"
-            @click="handleDelete(scope.row)"
-            v-permission="['unimall:commonUserInfo:remove']"
-          >删除</el-button>
+          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
+            v-permission="['unimall:commonUserInfo:edit']">修改</el-button>
+          <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
+            v-permission="['unimall:commonUserInfo:remove']">删除</el-button>
         </template>
       </el-table-column>
     </el-table>
-    
-    <pagination
-      v-show="total>0"
-      :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
-      @pagination="getList"
-    />
 
+    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
+      @pagination="getList" />
+    <el-dialog title="发送消息" :visible.sync="isShowMsg">
+      <div class="row" style="display:flex;align-items:center">
+        <div class="left" style="width:80px">接收群体</div>
+        <div v-if="multiple">全局发送</div>
+        <div v-else>批量发送 {{ selectList.length }}人</div>
+        <!-- <el-input v-model="msgObj.newsTitle" placeholder="请输入标题" disabled/> -->
+      </div>
+      <div class="row" style="display:flex;align-items:center;margin-top:20px">
+        <div class="left" style="width:80px">标题</div>
+        <el-input v-model="msgObj.newsTitle" placeholder="请输入标题" />
+      </div>
+      <div class="row" style="display:flex;align-items:center;margin-top:20px">
+        <div class="left" style="width:80px">内容</div>
+        <el-input type="textarea" placeholder="请输入内容" v-model="msgObj.newsContent">
+        </el-input>
+      </div>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitMsg">确 定</el-button>
+        <el-button @click="cancelMsg">取 消</el-button>
+      </div>
+    </el-dialog>
     <!-- 添加或修改用户管理对话框 -->
     <el-dialog :title="title" :visible.sync="open" width="500px">
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
@@ -249,11 +229,19 @@
 </template>
 
 <script>
-import { listCommonUserInfo, getCommonUserInfo, delCommonUserInfo, addCommonUserInfo, updateCommonUserInfo, exportCommonUserInfo } from "@/api/card/commonUserInfo";
+import { userSendMsg, listCommonUserInfo, getCommonUserInfo, delCommonUserInfo, addCommonUserInfo, updateCommonUserInfo, exportCommonUserInfo } from "@/api/card/commonUserInfo";
 
 export default {
   data() {
     return {
+      selectList: [],
+      msgObj: {
+        newsTitle: '',
+        newsContent: '',
+        // allFlag: '',
+        // cardNewsInfoList: []
+      },
+      isShowMsg: false,
       // 遮罩层
       loading: true,
       // 选中数组
@@ -292,25 +280,30 @@ export default {
       rules: {
         shareCard: [
           { required: true, message: "允许他人分享名片(1允许)不能为空", trigger: "blur" }
-        ],        lookPage: [
+        ], lookPage: [
           { required: true, message: "允许圈子成员查看主页(1允许)不能为空", trigger: "blur" }
-        ],        autoAccept: [
+        ], autoAccept: [
           { required: true, message: "自动接受邀请(1是)不能为空", trigger: "blur" }
-        ],        status: [
+        ], status: [
           { required: true, message: "0.冻结 1.激活不能为空", trigger: "blur" }
-        ],        gmtCreate: [
+        ], gmtCreate: [
           { required: true, message: "不能为空", trigger: "blur" }
-        ],        gmtUpdate: [
+        ], gmtUpdate: [
           { required: true, message: "不能为空", trigger: "blur" }
-        ],        deleteFlag: [
+        ], deleteFlag: [
           { required: true, message: "删除标识不能为空", trigger: "blur" }
-        ]      }
+        ]
+      }
     };
   },
   created() {
     this.getList();
   },
   methods: {
+    sendMsg() {
+
+      this.isShowMsg = true
+    },
     /** 查询用户管理列表 */
     getList() {
       this.loading = true;
@@ -320,6 +313,35 @@ export default {
         this.loading = false;
       });
     },
+    submitMsg() {
+      let _array = []
+      if (this.selectList.length == 0) {
+        this.msgObj.allFlag = 1
+      } else {
+        this.msgObj.cardNewsInfoList = []
+        for (let i = 0; i < this.selectList.length; i++) {
+          _array.push({ receiveId: this.selectList[i].id })
+        }
+        this.msgObj.cardNewsInfoList = _array
+      }
+      userSendMsg(this.msgObj).then(response => {
+        console.log("response", response)
+        if (response.data) {
+          this.msgSuccess("发送成功");
+          this.isShowMsg = false;
+        } else {
+          this.msgError(response.msg);
+        }
+
+      });
+    },
+    cancelMsg() {
+      this.isShowMsg = false;
+      this.msgObj = {
+        newsTitle: '',
+        newsContent: ''
+      }
+    },
     // 取消按钮
     cancel() {
       this.open = false;
@@ -356,8 +378,9 @@ export default {
     // 多选框选中数据
     handleSelectionChange(selection) {
       this.ids = selection.map(item => item.id)
-      this.single = selection.length!=1
+      this.single = selection.length != 1
       this.multiple = !selection.length
+      this.selectList = selection
     },
     /** 新增按钮操作 */
     handleAdd() {
@@ -376,7 +399,7 @@ export default {
       });
     },
     /** 提交按钮 */
-    submitForm: function() {
+    submitForm: function () {
       this.$refs["form"].validate(valid => {
         if (valid) {
           if (this.form.id != undefined) {
@@ -407,28 +430,28 @@ export default {
     handleDelete(row) {
       const ids = row.id || this.ids.join(',')
       this.$confirm('是否确认删除用户管理编号为"' + ids + '"的数据项?', "警告", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(function() {
-          return delCommonUserInfo(ids);
-        }).then(() => {
-          this.getList();
-          this.msgSuccess("删除成功");
-        }).catch(function() {});
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function () {
+        return delCommonUserInfo(ids);
+      }).then(() => {
+        this.getList();
+        this.msgSuccess("删除成功");
+      }).catch(function () { });
     },
     /** 导出按钮操作 */
     handleExport() {
       const queryParams = this.queryParams;
       this.$confirm('是否确认导出所有用户管理数据项?', "警告", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(function() {
-          return exportCommonUserInfo(queryParams);
-        }).then(response => {
-          this.download(response.data.data);
-        }).catch(function() {});
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function () {
+        return exportCommonUserInfo(queryParams);
+      }).then(response => {
+        this.download(response.data.data);
+      }).catch(function () { });
     }
   }
 };

+ 22 - 18
unimall-admin/src/views/info/index.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
+   <!--  <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
       <el-form-item label="发起人id" prop="sendId">
         <el-input
           v-model="queryParams.sendId"
@@ -80,9 +80,9 @@
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
       </el-form-item>
-    </el-form>
+    </el-form> -->
 
-    <el-row :gutter="10" class="mb8">
+    <!-- <el-row :gutter="10" class="mb8">
       <el-col :span="1.5">
         <el-button
           type="primary"
@@ -121,17 +121,21 @@
           v-permission="['unimall:info:export']"
         >导出</el-button>
       </el-col>
-    </el-row>
+    </el-row> -->
 
     <el-table v-loading="loading" :data="infoList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="" align="center" prop="id" />
-      <el-table-column label="发起人id" align="center" prop="sendId" />
+      <!-- <el-table-column label="" align="center" prop="id" /> -->
+      <!-- <el-table-column label="发起人id" align="center" prop="sendId" /> -->
       <el-table-column label="接收人id" align="center" prop="receiveId" />
-      <el-table-column label="发起人名片id" align="center" prop="sendCarId" />
-      <el-table-column label="接收人名片id" align="center" prop="receiveCarId" />
-      <el-table-column label="圈子名称" align="center" prop="circleName" />
-      <el-table-column label="状态(1已接受3已拒绝5已过期)" align="center" prop="status" />
+      <el-table-column label="接收人昵称" align="center" prop="receiveName" />
+      
+      <el-table-column label="标题" align="center" prop="newsTitle" />
+      <el-table-column label="内容" align="center" prop="newsContent" />
+      <!-- <el-table-column label="发起人名片id" align="center" prop="sendCarId" />
+      <el-table-column label="接收人名片id" align="center" prop="receiveCarId" /> -->
+      <!-- <el-table-column label="圈子名称" align="center" prop="circleName" /> -->
+      <!-- <el-table-column label="状态(1已接受3已拒绝5已过期)" align="center" prop="status" />
       <el-table-column label="" align="center" prop="gmtCreate" width="180">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.gmtCreate) }}</span>
@@ -142,8 +146,8 @@
           <span>{{ parseTime(scope.row.gmtUpdate) }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="删除标识" align="center" prop="deleteFlag" />
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+      <el-table-column label="删除标识" align="center" prop="deleteFlag" /> -->
+      <!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button
             size="mini"
@@ -160,14 +164,14 @@
             v-permission="['unimall:info:remove']"
           >删除</el-button>
         </template>
-      </el-table-column>
+      </el-table-column> -->
     </el-table>
     
     <pagination
       v-show="total>0"
       :total="total"
-      :page.sync="queryParams.pageNum"
-      :limit.sync="queryParams.pageSize"
+      :page.sync="queryParams.page"
+      :limit.sync="queryParams.limit"
       @pagination="getList"
     />
 
@@ -246,8 +250,8 @@ export default {
       open: false,
       // 查询参数
       queryParams: {
-        pageNum: 1,
-        pageSize: 10,
+        page: 1,
+        limit: 10,
         sendId: undefined,
         receiveId: undefined,
         sendCarId: undefined,
@@ -307,7 +311,7 @@ export default {
     },
     /** 搜索按钮操作 */
     handleQuery() {
-      this.queryParams.pageNum = 1;
+      this.queryParams.page = 1;
       this.getList();
     },
     /** 重置按钮操作 */

+ 13 - 1
xiaochengxu/pages.json

@@ -190,7 +190,19 @@
 				"navigationBarTitleText": "添加名片",
 				"enablePullDownRefresh": false
 			}
-
+		},
+		{
+			"path": "pages/cardHolder/popup/coupon",
+			"style": {
+				"navigationStyle": "custom",
+				"navigationBarTextStyle": "white",
+				"app-plus": {
+					"animationType": "fade-in",
+					"background": "transparent",
+					"backgroundColor": "transparent",
+					"popGesture": "none" // 关闭IOS屏幕左边滑动关闭当前页面的功能
+				}
+			}
 		}
 	],
 	"tabBar": {

+ 1 - 0
xiaochengxu/pages/cardHolder/cardHolder.vue

@@ -285,6 +285,7 @@
 				</view>
 				<button class="confirm" open-type="getPhoneNumber" @getphonenumber="getPhoneNumber">授权手机号</button>
 			</view>
+			<!-- <navigator hover-class="none" url="/pages/cardHolder/popup/coupon">领券</navigator> -->
 		</u-popup>
 		<!-- #endif -->
 		<u-toast ref="uToast"></u-toast>

+ 0 - 2
xiaochengxu/pages/cardHolder/scanCodeAddCard.vue

@@ -110,7 +110,6 @@
 			}
 		},
 		onLoad(options) {
-			debugger
 			this.id = options.id.indexOf(",") ? options.id.split(",")[0] : options.id
 			this.getList()
 		},
@@ -167,7 +166,6 @@
 				this.show = false
 			},
 			getList() {
-				debugger
 				this.$request.baseRequest('admin.unimall.cardManagementInfo', 'list', {
 					commonId: uni.getStorageSync("userInfo").id
 				}, failres => {

+ 0 - 1
xiaochengxu/pages/mySet/cardType.vue

@@ -68,7 +68,6 @@
 				}).then(res => {
 					// this.cardTypeList = res.data.items
 					uni.hideLoading()
-					debugger
 					if (res.data.items.length > 0) {
 						for (var i = 0; i < res.data.items.length; i++) {
 							res.data.items[i].name = res.data.items[i].circleName[0]