xjc преди 4 години
родител
ревизия
a65399b308
променени са 6 файла, в които са добавени 83 реда и са изтрити 37 реда
  1. BIN
      src/assets/survey_logo.png
  2. 13 13
      src/views/Home.vue
  3. 47 12
      src/views/message/InnerSurvey.vue
  4. 1 1
      src/views/message/MessageAnalyse.vue
  5. 4 3
      src/views/message/Notice.vue
  6. 18 8
      src/views/message/OutSurvey.vue

BIN
src/assets/survey_logo.png


+ 13 - 13
src/views/Home.vue

@@ -6,7 +6,7 @@
 	<el-container>
 		<el-header>
 			<div class="header">
-				<img class="logo" src="../assets/logo.png" alt="">
+				<!-- <img class="logo" src="../assets/logo.png" alt=""> -->
 				期刊微信公众号管理系统
 			</div>	
 			<div class="nav">
@@ -111,18 +111,18 @@ export default {
 				this.$router.push({path:'/'})
 			})
 		},
-		permission(name){
-			let permissions=this.info.permissions||[];
-			let list=[];
-			for(let i=0;i<permissions.length;i++){
-				list.push(permissions[i].name)
-			}
-			if(list.indexOf(name)<0){
-				return false;
-			}else{
-				return true;
-			}	
-		},
+		// permission(name){
+		// 	let permissions=this.info.permissions||[];
+		// 	let list=[];
+		// 	for(let i=0;i<permissions.length;i++){
+		// 		list.push(permissions[i].name)
+		// 	}
+		// 	if(list.indexOf(name)<0){
+		// 		return false;
+		// 	}else{
+		// 		return true;
+		// 	}	
+		// },
 		getData(){
 			this.$api.getAccountInfo().then(res=>{
 				if(!res.code){

+ 47 - 12
src/views/message/InnerSurvey.vue

@@ -60,6 +60,7 @@ a {
   }
 }
 .survey_logo {
+  width: 143px;
   position: relative;
   top: 15px;
   left: 20px;
@@ -74,6 +75,14 @@ a {
         font-weight: 600;
     }
 }
+.qrcode_dialog{
+  .el-dialog{
+    width: 30%;
+  }
+  img{
+    width: 100%;
+  }
+}
 </style>
 <template>
   <section>
@@ -91,6 +100,7 @@ a {
               clearable
               placeholder="请输入标题"
               v-model="form.name"
+              @clear="getData"
             ></el-input>
           </el-form-item>
           <el-form-item>
@@ -112,13 +122,13 @@ a {
         style="width: 100%"
       >
         <el-table-column prop="name" label="标题"> </el-table-column>
-        <el-table-column prop="name" label="附件">
+        <!-- <el-table-column prop="name" label="附件">
           <template slot-scope="scope">
             <a :href="scope.row.fileurl" target="_blank"
               ><span>{{ scope.row.filename }}</span></a
             >
           </template>
-        </el-table-column>
+        </el-table-column> -->
         <el-table-column prop="cname" label="问卷预览">
           <template slot-scope="scope">
             <a @click="showSurvey(scope.row)" target="_blank"
@@ -126,8 +136,7 @@ a {
             >
             <a
               v-if="scope.row.template_qrcode"
-              :href="scope.row.template_qrcode"
-              target="_blank"
+              @click="showQrcode(scope.row)"
               ><span> | 生成二维码</span></a
             >
           </template>
@@ -156,15 +165,15 @@ a {
             /></span>
           </template>
         </el-table-column>
-        <el-table-column prop="cname" label="问卷统计">
+        <el-table-column prop="cname" label="问卷统计" width="80px">
           <template slot-scope="scope">
             <a @click="showMessageAnalyse(scope.row)">查看</a>
           </template>
         </el-table-column>
-        <el-table-column prop="cname" label="发送者"> </el-table-column>
+        <el-table-column prop="cname" label="发送者" width="80px"> </el-table-column>
         <!-- <el-table-column prop="receiver_names" label="接收者"> -->
         </el-table-column>
-        <el-table-column prop="ctime" label="发送时间"> </el-table-column>
+        <el-table-column prop="ctime" label="发送时间" width="180px"> </el-table-column>
         <el-table-column prop="zip" width="150" label="操作">
           <template slot-scope="scope">
             <el-button class="edit" type="text" @click="edit(scope.row)"
@@ -189,6 +198,7 @@ a {
       :title="dialogTitle"
       :close-on-click-modal="false"
       :visible.sync="dialogVisible"
+      @close="getData"
     >
       <el-form
         size="small"
@@ -200,7 +210,7 @@ a {
         :rules="rules"
       >
         <el-form-item label="标题" prop="name">
-          <el-input v-model="form1.name" placeholder="请输入标题"></el-input>
+          <el-input v-model="form1.name" placeholder="请输入标题" maxlength="50" show-word-limit></el-input>
         </el-form-item>
         <el-form-item label="接收人" prop="receiver_id">
           <el-cascader
@@ -347,11 +357,12 @@ a {
               <el-input
                 clearable
                 placeholder="请输入标题"
-                v-model="form.name"
+                v-model="form1.name"
+                @clear="search1"
               ></el-input>
             </el-form-item>
             <el-form-item>
-              <el-button type="primary" @click="search">搜索</el-button>
+              <el-button type="primary" @click="search1">搜索</el-button>
             </el-form-item>
             <el-form-item style="float: right">
               <el-button type="primary" @click="downloadExcel">导出Excel</el-button>
@@ -408,6 +419,17 @@ a {
         <div v-if="Object.keys(postResult).length==0">暂无数据</div>
     </div>
     </el-dialog>
+    <!-- 展示二维码 -->
+    <el-dialog
+    :title="dialogTitle4"
+    :close-on-click-modal="false"
+    :visible.sync="dialogVisible4"
+    class="qrcode_dialog"
+    >
+    <div class="content">
+        <img :src="qrcodeUrl" alt="">
+    </div>
+    </el-dialog>
   </section>
 </template>
 <script>
@@ -419,6 +441,7 @@ export default {
   data() {
     return {
     //   checked: [],
+      qrcodeUrl:"",
       cur_message_id:null,
       cur_post_type:null,
       postResult:{},
@@ -437,9 +460,11 @@ export default {
       dialogVisible1: false,
       dialogVisible2: false,
       dialogVisible3:false,
+      dialogVisible4:false,
       dialogTitle: "",
       dialogTitle2:"",
       dialogTitle3:"",
+      dialogTitle4:"",
       defaultProps: {},
       data: [],
       templateList: [],
@@ -510,8 +535,12 @@ export default {
       ],
     };
   },
-  computed() {},
   methods: {
+    showQrcode(row){
+      this.dialogTitle4="生成二维码"
+      this.dialogVisible4=true
+      this.qrcodeUrl=row.template_qrcode
+    },
     showMessageAnalyse(row){
           this.$router.push({path:'/message/innerSurvey/analyse',query:{id:row.id,type:row.type}})
     },
@@ -537,9 +566,12 @@ export default {
         this.dialogVisible3 = true
     },
     analyseData(type,message_id) {
+      let parm = this.form1
+      parm.type = type
+      parm.message_id = message_id
       this.dialogTitle2 = "统计结果"
       this.dialogVisible2 = true;
-      this.$api.getMessageSurveyAnalyse({type:type,message_id:message_id}).then((res)=>{
+      this.$api.getMessageSurveyAnalyse(parm).then((res)=>{
           this.analyseDataList = res.data.data.list
           this.cur_message_id = message_id
           this.cur_post_type = type
@@ -594,6 +626,9 @@ export default {
       let parm = this.form;
       this.getData();
     },
+    search1() {
+      this.analyseData("total",this.cur_message_id)
+    },
     openDiag() {
       this.form1 = {};
       this.dialogVisible = true;

+ 1 - 1
src/views/message/MessageAnalyse.vue

@@ -271,7 +271,7 @@ export default {
           series: [{
               name: '访问来源',
               type: 'pie',
-              radius: '75%',
+              radius: '55%',
               center: ['50%', '50%'],
               data:dataPie.sort(function (a, b) { return a.value - b.value; }),
               roseType: 'radius',

+ 4 - 3
src/views/message/Notice.vue

@@ -91,6 +91,7 @@ a {
               clearable
               placeholder="请输入标题"
               v-model="form.name"
+              @clear="getData"
             ></el-input>
           </el-form-item>
           <el-form-item>
@@ -167,6 +168,7 @@ a {
       :title="dialogTitle"
       :close-on-click-modal="false"
       :visible.sync="dialogVisible"
+      @close="getData"
     >
       <el-form
         size="small"
@@ -335,7 +337,6 @@ export default {
       options: [],
     };
   },
-  computed() {},
   methods: {
     changeEditor(val) {
       this.form1.content = val;
@@ -464,8 +465,8 @@ export default {
     },
     edit(row) {
       this.form1 = row;
+      this.dialogTitle = "编辑消息"
       let receiver_ids = this.form1.receiver_id;
-      console.log(receiver_ids, 33333333333333);
       if (typeof receiver_ids == "string") {
         receiver_ids = JSON.parse(receiver_ids);
       }
@@ -501,7 +502,7 @@ export default {
           let id = this.form1.id;
           parm.receiver_id = JSON.stringify(parm.receiver_id);
           if (id) {
-            this.$api.editEdit(parm).then((res) => {
+            this.$api.editNotice(parm).then((res) => {
               if (res.data.code == 0) {
                 this.$message({
                   type: "success",

+ 18 - 8
src/views/message/OutSurvey.vue

@@ -91,6 +91,7 @@ a {
               clearable
               placeholder="请输入标题"
               v-model="form.name"
+              @clear="getData"
             ></el-input>
           </el-form-item>
           <el-form-item>
@@ -112,13 +113,13 @@ a {
         style="width: 100%"
       >
         <el-table-column prop="name" label="标题"> </el-table-column>
-        <el-table-column prop="name" label="附件">
+        <!-- <el-table-column prop="name" label="附件">
           <template slot-scope="scope">
             <a :href="scope.row.fileurl" target="_blank"
               ><span>{{ scope.row.filename }}</span></a
             >
           </template>
-        </el-table-column>
+        </el-table-column> -->
         <el-table-column prop="cname" label="问卷预览">
           <template slot-scope="scope">
             <a @click="showSurvey(scope.row)" target="_blank"
@@ -141,15 +142,15 @@ a {
             </span>
           </template>
         </el-table-column>
-        <el-table-column prop="cname" label="问卷统计">
+        <el-table-column prop="cname" label="问卷统计" width="80px">
           <template slot-scope="scope">
             <a @click="showMessageAnalyse(scope.row)">查看</a>
           </template>
         </el-table-column>
-        <el-table-column prop="cname" label="发送者"> </el-table-column>
+        <el-table-column prop="cname" label="发送者" width="80px"> </el-table-column>
         <!-- <el-table-column prop="receiver_names" label="接收者"> -->
         </el-table-column>
-        <el-table-column prop="ctime" label="发送时间"> </el-table-column>
+        <el-table-column prop="ctime" label="发送时间" width="180px"> </el-table-column>
         <el-table-column prop="zip" width="150" label="操作">
           <template slot-scope="scope">
             <el-button class="edit" type="text" @click="edit(scope.row)"
@@ -174,6 +175,7 @@ a {
       :title="dialogTitle"
       :close-on-click-modal="false"
       :visible.sync="dialogVisible"
+      @close="getData"
     >
       <el-form
         size="small"
@@ -318,11 +320,12 @@ a {
               <el-input
                 clearable
                 placeholder="请输入标题"
-                v-model="form.name"
+                v-model="form1.name"
+                @clear="search1"
               ></el-input>
             </el-form-item>
             <el-form-item>
-              <el-button type="primary" @click="search">搜索</el-button>
+              <el-button type="primary" @click="search1">搜索</el-button>
             </el-form-item>
             <el-form-item style="float: right">
               <el-button type="primary" @click="downloadExcel">导出Excel</el-button>
@@ -511,9 +514,12 @@ export default {
         this.dialogVisible3 = true
     },
     analyseData(type,message_id) {
+      let parm = this.form1
+      parm.type = type
+      parm.message_id = message_id
       this.dialogTitle2 = "统计结果"
       this.dialogVisible2 = true;
-      this.$api.getMessageSurveyAnalyseOut({type:type,message_id:message_id}).then((res)=>{
+      this.$api.getMessageSurveyAnalyseOut(parm).then((res)=>{
           this.analyseDataList = res.data.data.list
           this.analyseHeadList = res.data.data.headers
           this.cur_message_id = message_id
@@ -569,6 +575,10 @@ export default {
       let parm = this.form;
       this.getData();
     },
+    search1() {
+      let parm = this.form;
+      this.analyseData("total",this.cur_message_id);
+    },
     openDiag() {
       this.form1 = {};
       this.dialogVisible = true;