yangyuxuan 2 månader sedan
förälder
incheckning
8f6cd6b78c

+ 1 - 1
src/components/DictTag/index.vue

@@ -3,7 +3,7 @@
     <template v-for="(item, index) in options">
       <template v-if="values.includes(item.value)">
         <span
-          v-if="(item.elTagType === 'default' || item.elTagType === '')"
+          v-if="(item.elTagType === 'default' || !item.elTagType)"
           :key="item.value"
           :index="index"
           :class="item.elTagClass"

+ 6 - 0
src/types/components.d.ts

@@ -27,6 +27,7 @@ declare module 'vue' {
     ElAutocomplete: typeof import('element-plus/es')['ElAutocomplete']
     ElBadge: typeof import('element-plus/es')['ElBadge']
     ElButton: typeof import('element-plus/es')['ElButton']
+    ElCard: typeof import('element-plus/es')['ElCard']
     ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
     ElCheckboxGroup: typeof import('element-plus/es')['ElCheckboxGroup']
     ElCol: typeof import('element-plus/es')['ElCol']
@@ -50,14 +51,19 @@ declare module 'vue' {
     ElOption: typeof import('element-plus/es')['ElOption']
     ElPagination: typeof import('element-plus/es')['ElPagination']
     ElPopover: typeof import('element-plus/es')['ElPopover']
+    ElRadio: typeof import('element-plus/es')['ElRadio']
+    ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
     ElRow: typeof import('element-plus/es')['ElRow']
     ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
+    ElSegmented: typeof import('element-plus/es')['ElSegmented']
     ElSelect: typeof import('element-plus/es')['ElSelect']
     ElSkeleton: typeof import('element-plus/es')['ElSkeleton']
     ElSkeletonItem: typeof import('element-plus/es')['ElSkeletonItem']
     ElSlider: typeof import('element-plus/es')['ElSlider']
     ElSubMenu: typeof import('element-plus/es')['ElSubMenu']
     ElSwitch: typeof import('element-plus/es')['ElSwitch']
+    ElTable: typeof import('element-plus/es')['ElTable']
+    ElTableColumn: typeof import('element-plus/es')['ElTableColumn']
     ElTag: typeof import('element-plus/es')['ElTag']
     ElText: typeof import('element-plus/es')['ElText']
     ElTimeline: typeof import('element-plus/es')['ElTimeline']

+ 61 - 15
src/views/informationissue/informationList.vue

@@ -167,24 +167,29 @@ const disposeStatusOptions = reactive([
 ]);
 
 const getStatusClass = (value) => {
-  if (['发布中', '已发布'].includes(value)) {
-    return 'dot-green';
-  } else if (value === '未提交') {
-    return 'dot-orange';
-  } else if (value === '审批中') {
-    return 'dot-red';
+  debugger
+  if (value === 3) {
+    return 'color3';
+  } else if (value === 1) {
+    return 'color1';
+  } else if (value === 2) {
+    return 'color2';
+  } else if (value ===9 ) {
+    return 'color9';
+  } else if (value === 4) {
+    return 'color4'
   }
 };
 
 const getStatusClass2 = (value) => {
-  if (['审批通过'].includes(value)) {
-    return 'dot-green';
-  } else if (value === '待审批') {
-    return 'dot-blue';
-  } else if (['审批中'].includes(value)) {
-    return 'dot-red';
-  } else if (['未提交'].includes(value)) {
-    return 'dot-grey';
+  if (value === 1) {
+    return 'color1';
+  } else if (value === 2) {
+    return 'color2';
+  } else if (value === 3) {
+    return 'color4';
+  } else if (value === 9) {
+    return 'color9';
   }
 };
 
@@ -294,4 +299,45 @@ onMounted(() => {
 });
 </script>
 
-<style scoped></style>
+<style scoped>
+.color1 {
+  width: 6px;
+  height: 6px;
+  border-radius: 50%;
+  background: #bfbfbf;
+  display: inline-block;
+  margin-right: 5px;
+}
+.color2 {
+  width: 6px;
+  height: 6px;
+  border-radius: 50%;
+  background:  #2c81ff;
+  display: inline-block;
+  margin-right: 5px;
+}
+.color3 {
+   width: 6px;
+   height: 6px;
+   border-radius: 50%;
+   background:  #ffa148;
+   display: inline-block;
+   margin-right: 5px;
+ }
+.color4 {
+  width: 6px;
+  height: 6px;
+  border-radius: 50%;
+  background:  #62dea3;
+  display: inline-block;
+  margin-right: 5px;
+}
+.color9 {
+  width: 6px;
+  height: 6px;
+  border-radius: 50%;
+  background:  #fa0000;
+  display: inline-block;
+  margin-right: 5px;
+}
+</style>

+ 5 - 5
src/views/informationissue/informationView.vue

@@ -22,17 +22,17 @@
                         <div class="statistic-info">{{ formData.user_count }}</div>
                       </div>
                       <div style="display: flex;margin-right: 100px">
-                        <p>成功&nbsp</p>
+                        <p style="color: #62dea3">成功&nbsp</p>
                         <div class="statistic-info">{{ formData.user_ok_count }}</div>
-                        <p>&nbsp&nbsp|&nbsp&nbsp失败&nbsp</p>
+                        <p style="color: #fa0000">&nbsp&nbsp|&nbsp&nbsp失败&nbsp</p>
                         <div class="statistic-info">{{ formData.user_err_count }}</div>
-                        <p>&nbsp&nbsp|&nbsp&nbsp发送中&nbsp</p>
+                        <p style="color: #2c81ff">&nbsp&nbsp|&nbsp&nbsp发送中&nbsp</p>
                         <div class="statistic-info">{{ formData.user_sending_count }}</div>
                       </div>
                       <div style="display: flex;margin-right: 100px">
-                        <p>反馈&nbsp</p>
+                        <p style="color: #62dea3">反馈&nbsp</p>
                         <div class="statistic-info">{{ formData.feedback_count }}</div>
-                        <p>&nbsp&nbsp|&nbsp&nbsp未反馈&nbsp</p>
+                        <p style="color: #fa0000">&nbsp&nbsp|&nbsp&nbsp未反馈&nbsp</p>
                         <div class="statistic-info">{{ formData.unresponsive_count }}</div>
                       </div>
                     </el-row>

+ 13 - 10
src/views/informationissue/sendDetail.vue

@@ -8,21 +8,21 @@
               <el-row :gutter="20">
                 <el-col :span="4">
                   <el-form-item label="渠道:">
-                    <el-select v-model="queryParams.channel" placeholder="全部">
+                    <el-select v-model="queryParams.channel" placeholder="全部" clearable>
                       <el-option v-for="(option, index) in channelOptions" :key="index" :label="option.label" :value="option.value"></el-option>
                     </el-select>
                   </el-form-item>
                 </el-col>
                 <el-col :span="4">
                   <el-form-item label="发布状态:">
-                    <el-select v-model="queryParams.publishStatus" placeholder="请选择">
+                    <el-select v-model="queryParams.publishStatus" placeholder="请选择" clearable>
                       <el-option v-for="(option, index) in publishStatusOptions" :key="index" :label="option.label" :value="option.value"></el-option>
                     </el-select>
                   </el-form-item>
                 </el-col>
                 <el-col :span="4">
                   <el-form-item label="反馈状态:">
-                    <el-select v-model="queryParams.feedbackStatus" placeholder="请选择">
+                    <el-select v-model="queryParams.feedbackStatus" placeholder="请选择" clearable>
                       <el-option
                         v-for="(option, index) in feedbackStatusOptions"
                         :key="index"
@@ -34,13 +34,16 @@
                 </el-col>
                 <el-col :span="5">
                   <el-form-item label="搜索:">
-                    <el-input v-model="queryParams.searchInput" placeholder="请输入内容"></el-input>
+                    <el-input v-model="queryParams.searchInput" placeholder="请输入内容" clearable></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="5">
                   <el-form-item>
-                    <el-button type="primary" @click="handleSearch">搜索</el-button>
-                    <el-button icon="Refresh" @click="resetSearch">重置</el-button>
+                    <div style="display: flex">
+                      <el-button type="primary" @click="handleSearch">搜索</el-button>
+                      <el-button icon="Refresh" @click="resetSearch">重置</el-button>
+                    </div>
+
                   </el-form-item>
                 </el-col>
               </el-row>
@@ -63,7 +66,6 @@
               <el-tag
                 :key="row.id"
                 :type="getTagType(row.yuezhengyiPublishStatus)"
-                closable
                 :disable-transitions="false"
                 @close="handleTagClose(row)"
               >
@@ -73,7 +75,7 @@
           </el-table-column>
           <el-table-column prop="haixinetStatus" label="好心网格" width="180">
             <template #default="{ row }">
-              <el-tag :key="row.id" :type="getTagType(row.haixinetPublishStatus)" closable :disable-transitions="false" @close="handleTagClose(row)">
+              <el-tag :key="row.id" :type="getTagType(row.haixinetPublishStatus)" :disable-transitions="false" @close="handleTagClose(row)">
                 {{ row.haixinetFeedbackStatus }}
               </el-tag>
             </template>
@@ -133,6 +135,7 @@ const { queryParams, form, tableData, loading, total, showSearch, channelOptions
 
 // 获取表格数据
 const fetchTableData = () => {
+  debugger
   getSentList(queryParams.value).then((res) => {
     console.log(res.data);
     tableData.value = res.data;
@@ -182,8 +185,8 @@ const initOptions = () => {
     { value: '好心网格', label: '好心网格' }
   ];
   data.publishStatusOptions = [
-    { value: 'published', label: '已发布' },
-    { value: 'pending', label: '待发布' }
+    { value: '1', label: '已发布' },
+    { value: '0', label: '待发布' }
   ];
   data.feedbackStatusOptions = [
     { value: '0', label: '仅需阅读' },

+ 1 - 1
src/views/system/dict/data.vue

@@ -109,7 +109,7 @@
               <el-input-number v-model="form.dictSort" controls-position="right" :min="0" style="width: 468px !important" />
             </el-form-item>
             <el-form-item label="回显样式:" prop="listClass">
-              <el-select v-model="form.listClass">
+              <el-select v-model="form.listClass" clearable>
                 <el-option
                   v-for="item in listClassOptions"
                   :key="item.value"