guhongwei преди 1 година
родител
ревизия
df5f2bdc81
променени са 1 файла, в които са добавени 39 реда и са изтрити 5 реда
  1. 39 5
      src/views/pmessage/cpc/index.vue

+ 39 - 5
src/views/pmessage/cpc/index.vue

@@ -10,10 +10,17 @@
           </cSearch>
         </el-col>
         <el-col :span="24" class="thr">
-          <cTable :fields="fields" :opera="opera" :list="list" @query="search" :total="total" @read="toRead"> </cTable>
+          <cTable :fields="fields" :opera="opera" :list="list" @query="search" :total="total" @view="toView" @read="toRead"> </cTable>
         </el-col>
       </el-col>
     </el-row>
+    <cDialog :dialog="dialog" @toClose="toClose">
+      <template v-slot:info>
+        <el-col :span="24" class="dialog_one" v-if="dialog.type == '1'">
+          <cTable :fields="filefields" :opera="fileopera" :list="form.warn_file" :usePage="false" @down="toDown"> </cTable>
+        </el-col>
+      </template>
+    </cDialog>
   </div>
 </template>
 <script lang="ts" setup>
@@ -37,15 +44,28 @@ let total: Ref<number> = ref(0);
 let skip = 0;
 let limit: number = proxy.$limit;
 let fields: Ref<any[]> = ref([
+  { label: '申请号', model: 'create_number' },
+  { label: '专利名称', model: 'patent_name' },
   { label: '发送时间', model: 'send_date' },
-  { label: '信息内容', model: 'content' },
   { label: '是否已读', model: 'is_read', format: (i) => getDict(i, 'is_read'), isSearch: true, type: 'select' }
 ]);
 // 操作
-let opera: Ref<any[]> = ref([{ label: '已读', method: 'read', confirm: true, display: (i) => i.is_read == '0' }]);
+let opera: Ref<any[]> = ref([
+  { label: '文件', method: 'view' },
+  { label: '已读', method: 'read', confirm: true, display: (i) => i.is_read == '0' }
+]);
 
 // 查询数据
 let searchForm: Ref<any> = ref({});
+// 弹框
+const dialog: Ref<any> = ref({ title: '反馈文件', show: false, type: '1' });
+const form: Ref<any> = ref({});
+let filefields: Ref<any[]> = ref([
+  { label: '文件名称', model: 'name' },
+  { label: '文件路径', model: 'uri' }
+]);
+// 操作
+let fileopera: Ref<any[]> = ref([{ label: '下载', method: 'down' }]);
 
 // 字典表是否
 const isnoList: Ref<any> = ref([
@@ -64,7 +84,7 @@ const search = async (e: { skip: number; limit: number }) => {
   const { skip, limit } = e;
   const condition = _.cloneDeep(searchForm.value);
   let info = { limit: limit, skip: skip, ...condition, receive_id: user._id };
-  let res: IQueryResult = await enoticeAxios.query(info);
+  let res: IQueryResult = await cpcmessAxios.query(info);
   if (res.errcode == 0) {
     list.value = res.data;
     total.value = res.total;
@@ -82,12 +102,26 @@ const getDict = (value, model) => {
 };
 const toRead = async (data) => {
   data.is_read = '1';
-  let res: IQueryResult = await enoticeAxios.update(data);
+  let res: IQueryResult = await cpcmessAxios.update(data);
   if (res.errcode == '0') {
     ElMessage({ message: '信息维护成功', type: 'success' });
     search({ skip, limit });
   }
 };
+// 查看
+const toView = (data) => {
+  form.value = data;
+  dialog.value = { title: '反馈文件', show: true, type: '1' };
+};
+const toDown = (data) => {
+  window.open(`${import.meta.env.VITE_BASE_URL}${data.uri}`);
+};
+// 关闭弹框
+const toClose = () => {
+  form.value = {};
+  dialog.value = { show: false };
+  search({ skip, limit });
+};
 </script>
 <style lang="scss" scoped>
 .main {