Переглянути джерело

Merge branch '03/03Lebao'

lex-xin 4 роки тому
батько
коміт
3206354a1f

+ 12 - 0
src/views/reaplceMusicPlayer/api.js

@@ -16,6 +16,18 @@ export function addReplacement (data) {
   })
 }
 
+// 生成链接
+export function updateReplacement (data) {
+  return request2({
+    url: api + `/replacementInstrumentCooperation/update`,
+    method: 'post',
+    params:{},
+    requestType: 'form',
+    data,
+
+  })
+}
+
 // 查询活动列表
 export function getReplacementList (data) {
   return request2({

+ 29 - 17
src/views/reaplceMusicPlayer/index.vue

@@ -10,7 +10,7 @@
         <!--      v-permission="'export/practiceGroup'" -->
         <div
           class="newBand"
-          @click="makeUrl"
+          @click="makeUrl('create')"
           style="max-width: 150px; margin-right: 10px"
           v-if="permission('replacementInstrumentCooperation/add')"
         >
@@ -145,16 +145,7 @@
               <div>
                 <el-button type="text" @click="lookDetail(scope.row)" v-if="permission('replacementInstrumentActivity/queryPage')">问卷详情</el-button>
                 <el-button type="text" @click="lookDetail(scope.row, 'answer')" v-if="permission('/reaplceMusicPlayer/answer')">问答详情</el-button>
-                <el-button
-                  type="text"
-                  @click="onCreateQRCode(scope.row, '调查链接')"
-                  >调查链接</el-button
-                >
-                <el-button
-                  type="text"
-                  @click="onCreateQRCode(scope.row, '统计链接')"
-                  >统计链接</el-button
-                >
+                <el-button type="text" @click="makeUrl('update', scope.row)" v-if="permission('replacementInstrumentCooperation/update')">修改活动主题</el-button>
                 <el-button
                   type="text"
                   @click="openPay(scope.row)"
@@ -163,7 +154,22 @@
                     permission('replacementInstrumentCooperation/openPay')
                   "
                   >开启缴费</el-button>
-                <el-button type="text" @click="onCreateQRCode(scope.row, '缴费链接')">缴费链接</el-button>
+                <el-dropdown>
+                  <span class="el-dropdown-link" style="color: #14928A">
+                    更多操作<i class="el-icon-arrow-down el-icon--right"></i>
+                  </span>
+                  <el-dropdown-menu slot="dropdown" style="margin-left: 10px;">
+                    <el-dropdown-item>
+                      <el-button type="text" @click="onCreateQRCode(scope.row, '调查链接')" >调查链接</el-button>
+                    </el-dropdown-item>
+                    <el-dropdown-item>
+                      <el-button type="text" @click="onCreateQRCode(scope.row, '统计链接')">统计链接</el-button>
+                    </el-dropdown-item>
+                    <el-dropdown-item>
+                      <el-button type="text" @click="onCreateQRCode(scope.row, '缴费链接')">缴费链接</el-button>
+                    </el-dropdown-item>
+                  </el-dropdown-menu>
+                </el-dropdown>
               </div>
             </template>
           </el-table-column>
@@ -179,15 +185,15 @@
       </div>
     </div>
     <el-dialog
-      title="生成链接"
+      :title="makeType == 'create' ? '生成链接' : '修改链接'"
       :visible.sync="makeUrlVisible"
       width="500px"
       v-if="makeUrlVisible"
     >
-      <addUrl ref="addUrl" @close="close" @getList="getList" />
+      <addUrl ref="addUrl" @close="close" :makeType="makeType" :makeDetail="makeDetail" @getList="getList" />
       <div slot="footer">
         <el-button @click="makeUrlVisible = false">取 消</el-button>
-        <el-button type="primary" @click="addurl">生成链接</el-button>
+        <el-button type="primary" @click="addurl">{{ makeType == 'create' ? '生成链接' : '修改链接' }}</el-button>
       </div>
     </el-dialog>
 
@@ -227,7 +233,7 @@ import { vaildStudentUrl, vaildTeachingUrl } from "@/utils/validate";
 import pagination from "@/components/Pagination/index";
 import addUrl from "./modals/addUrl";
 import detail from "./modals/detail";
-import { getReplacementList, openPayReplacement } from "./api";
+import { getReplacementList, openPayReplacement, updateReplacement } from "./api";
 import { Export } from '@/utils/downLoadFile'
 import cleanDeep from 'clean-deep'
 import qs from 'qs';
@@ -252,7 +258,9 @@ export default {
         page_size: [10, 20, 40, 50], // 选择限制显示条数
       },
       makeUrlVisible: false,
+      makeType: 'create',
       detailVisible: false,
+      makeDetail: null,
       codeUrl: "",
       qrcodes: true,
       qrcodeStatus: false,
@@ -297,8 +305,12 @@ export default {
       this.$refs.searchForm.resetFields();
       this.search();
     },
-    makeUrl() {
+    makeUrl(type, row) {
       this.makeUrlVisible = true;
+      this.makeType = type
+      if(type == 'update') {
+        this.makeDetail = row
+      }
     },
     addurl() {
       this.$refs.addUrl.submit();

+ 33 - 10
src/views/reaplceMusicPlayer/modals/addUrl.vue

@@ -10,6 +10,7 @@
           v-model.trim="form.organId"
           filterable
           clearable
+          :disabled="makeType == 'update'"
           placeholder="请选择分部"
           @change="changeSection"
         >
@@ -29,7 +30,7 @@
       >
         <el-select
           v-model.trim="form.school"
-          :disabled="!form.organId"
+          :disabled="!form.organId || makeType == 'update'"
           filterable
           clearable
         >
@@ -59,6 +60,7 @@
         <el-select
           v-model.trim="form.topicId"
           filterable
+          :disabled="makeType == 'update'"
           clearable
         >
           <el-option v-for="item in topicList" :key="item.id" :label="item.title" :value="item.id"></el-option>
@@ -88,9 +90,10 @@
 </template>
 <script>
 import { queryByOrganId } from "@/api/systemManage";
-import { addReplacement } from "../api"
+import { addReplacement, updateReplacement } from "../api"
 import { questionnaireTopicQueryPage } from '../../setQuestions/api'
 export default {
+  props: [ 'makeType', 'makeDetail' ],
   data() {
     return {
       form: {
@@ -110,11 +113,24 @@ export default {
     } catch {
       //
     }
+
+    if(this.makeType == 'update') {
+      let makeDetail = this.makeDetail
+      if(makeDetail.organId) {
+        await this.changeSection(makeDetail.organId)
+      }
+      this.form = {
+        organId: makeDetail.organId,
+        school: makeDetail.cooperationOrganId,
+        title: makeDetail.title,
+        topicId: makeDetail.topicId,
+      }
+    }
   },
   methods: {
-    changeSection(val) {
+    async changeSection(val) {
       this.form.school = "";
-      queryByOrganId({ organId: val }).then((res) => {
+      await queryByOrganId({ organId: val }).then((res) => {
         if (res.code == 200) {
           this.cooperationList = res.data;
         }
@@ -125,12 +141,19 @@ export default {
         if (res) {
           try{
             let form = this.form
-            const res = await addReplacement({
-              cooperationOrganId: form.school,
-              organId: form.organId,
-              topicId: form.topicId,
-              title: form.title})
-            this.$message.success('生成链接成功')
+            if(this.makeType == 'create') {
+              const res = await addReplacement({
+                cooperationOrganId: form.school,
+                organId: form.organId,
+                topicId: form.topicId,
+                title: form.title})
+              this.$message.success('生成链接成功')
+            } else if(this.makeType == 'update') {
+              const res = await updateReplacement({
+                id: this.makeDetail.id,
+                title: form.title})
+              this.$message.success('修改链接成功')
+            }
             this.$emit('getList')
             this.$emit('close')
           }catch(e){