Эх сурвалжийг харах

feat:群发消息-消息类型接口联调,数据处理

zhangsiya 2 жил өмнө
parent
commit
587bc15569

+ 36 - 0
src/store/message.js

@@ -0,0 +1,36 @@
+import { request } from '@/plugins/request'
+import { actionUrl } from "@/helper";
+export default {
+  state: {
+    messageTypeObj:{},
+    // 消息分类
+    messageTypeList: []
+  },
+  mutations: {
+    setMessageType (state, data) {
+      state.messageTypeList = data || []
+    }
+  },
+  actions: {
+    getMessageType({ commit }, data) {
+      request({
+        type: 'post',
+        url: actionUrl('/message/getMsgType'),
+        success: (res) => {
+          if(res.status === 'success') {
+            const resData = res.data || []
+            commit('setMessageType', resData)
+          }
+        },
+        error: (err) => {
+          console.log(err)
+        },
+      })
+    }
+  },
+  getters: {
+    messageTypeList (state) {
+      return state.messageTypeList
+    }
+  }
+}

+ 15 - 26
src/views/msgManage/sendingMsg.vue

@@ -37,7 +37,7 @@
       </FormItem>
       <FormItem label="消息类型:" prop="msgType" style="width:300px">
           <Select v-model="send.msgType" placeholder="请选择消息类型">
-              <Option v-for="item in msgPro" :value="item.v" :key="item.v">{{ item.n }}</Option>
+              <Option v-for="item in messageTypeList" :value="item.msg_type" :key="item.msg_type">{{ item.name }}</Option>
           </Select>
       </FormItem>
       <FormItem label="消息标题:" prop="title">
@@ -132,12 +132,19 @@
 
 <script>
 import dateSigle from '@/components/dateSigle'
+import { mapGetters } from 'vuex'
 export default {
   components: {
     dateSigle
   },
+  computed: {
+    ...mapGetters(['messageTypeList'])
+  },
   created() {
     this.refreshed()
+    if(this.messageTypeList.length === 0) {
+      this.$store.dispatch('getMessageType')
+    }
   },
   methods: {
     msgBack() {
@@ -162,15 +169,15 @@ export default {
           //   this.send.userGroupId = res.data.send_usergroup_id?res.data.send_usergroup_id.split(','):[]
           //   this.send.userGroupName = res.data.send_usergroup_name?res.data.send_usergroup_name.split(','):[]
           // }
-          if(res.data.send_usergroup_id === 'all_user'){ 
+          if(res.data.send_usergroup_id === 'all_user'){
             this.send.sendway = '1'
           } else {
             this.send.sendway = '2'
             this.send.userGroupId = res.data.send_usergroup_id?res.data.send_usergroup_id.split(','):[]
             this.send.userGroupName = res.data.send_usergroup_name?res.data.send_usergroup_name.split(','):[]
           }
-          console.log(this.send.userGroupId,this.send.userGroupName)
-          this.send.msgType = this.msgPro1[res.data.msg_type - 1].v
+          console.log(res.data.msg_type)
+          this.send.msgType = res.data?.msg_type?.toString()
           this.send.sendMode = String(res.data.send_mode)
           this.send.sendTime = res.data.send_time
           this.$refs.sigleRef3.dataVals = res.data.send_time
@@ -221,7 +228,7 @@ export default {
           this.send.userGroupName = []
         }
         this.$refs.send.validateField('userGroupName')
-        
+
     },
     checkGroup(data) {
       const arrs = []
@@ -243,7 +250,7 @@ export default {
           this.indeterminate = false
           this.checkAll = false
       }
-     
+
     },
     sendDate(val) {
       this.send.sendTime = val
@@ -283,7 +290,7 @@ export default {
           setTimeout(() => {
             this.isDis = false
           }, 1000)
-          
+
           this.$request('/message/messageSave').data(obj).success((res) => {
             if (res.status === 'success') {
               this.inited()
@@ -311,28 +318,10 @@ export default {
     return {
       isDis: false,
       // msgRadio: 1,
-      msgPro: [
-        {v: '1', n: '活动优惠'},
-        {v: '2', n: '服务通知'},
-        // {v: '3', n: '订阅消息'},
-        // {v: '4', n: '项目动态'},
-        // {v: '5', n: '企业动态'},
-        // {v: '6', n: '分析报告'},
-        {v: '7', n: '系统通知'}
-      ],
       showSelect: [
         {v: 1, n: '是'},
         {v: 0, n: '否'}
       ],
-      msgPro1: [
-        {v: '1', n: '活动优惠'},
-        {v: '2', n: '服务通知'},
-        {v: '3', n: '订阅消息'},
-        {v: '4', n: '项目动态'},
-        {v: '5', n: '企业动态'},
-        {v: '6', n: '分析报告'},
-        {v: '7', n: '系统通知'}
-      ],
       indeterminate: false, //半选
       checkAll: false, // 全选
       groupData: [],
@@ -462,4 +451,4 @@ export default {
       pointer-events: none;
     }
   }
-</style>
+</style>