guhongwei 3 年之前
父節點
當前提交
393f5b7aa1

+ 1 - 1
src/views/service/patent/admin/examine/hairmess.vue

@@ -3,7 +3,7 @@
     <admin-frame @search="search" :limit="limit" :total="total" topType="2" @back="back" :rightArrow="false" :useNav="false">
       <template v-slot:info>
         <van-col span="24" class="btn">
-          <van-button type="info" size="small" @click="add">手动分发</van-button>
+          <!-- <van-button type="info" size="small" @click="add">手动分发</van-button> -->
           <van-button type="info" size="small" @click="twoAdd">自动分发</van-button>
         </van-col>
         <van-col span="24">

+ 3 - 1
src/views/service/patent/admin/examine/hairmess_autoCreate.vue

@@ -51,7 +51,9 @@ export default {
       let data = { uri: this.uri };
       let res = await this.import(data);
       if (this.$checkRes(res)) {
-        console.log(res);
+        this.$toast({ type: `success`, message: `操作成功` });
+      } else {
+        this.$toast({ type: `success`, message: `${res.errmsg}` });
       }
     },
     async toUpload({ file }, model) {

+ 1 - 27
src/views/service/patent/admin/examine/patent.vue

@@ -2,7 +2,7 @@
   <div id="patent">
     <admin-frame @search="search" :limit="limit" :total="total" topType="2" @back="back" :rightArrow="false" :useNav="false">
       <template v-slot:info>
-        <list-1 :list="list" @view="view" @relation="relation" @examine="toExamine"></list-1>
+        <list-1 :list="list" @view="view" @examine="toExamine"></list-1>
       </template>
     </admin-frame>
     <van-dialog class="dialog" v-model="show" title="详细信息" :show-confirm-button="false" show-cancel-button>
@@ -11,13 +11,6 @@
     <van-dialog class="twoDialog" v-model="twoShow" title="审核信息" :show-confirm-button="false" :show-cancel-button="false" :closeOnClickOverlay="true">
       <check-form :form="form" @onSubmit="onSubmit"></check-form>
     </van-dialog>
-    <van-dialog class="thrDialog" v-model="thrShow" title="关联申请号" :show-confirm-button="false" :show-cancel-button="false">
-      <van-field v-model="relationForm.create_number" label="专利申请号" placeholder="请输入申请号" />
-      <van-col span="24" class="btn">
-        <van-button type="danger" size="small" @click="thrShow = false">取消关联</van-button>
-        <van-button type="info" size="small" @click="relationSubmit">确认关联</van-button>
-      </van-col>
-    </van-dialog>
   </div>
 </template>
 
@@ -48,9 +41,6 @@ export default {
       // 专利申请审核信息
       twoShow: false,
       form: {},
-      // 关联申请号
-      thrShow: false,
-      relationForm: {},
     };
   },
   async created() {
@@ -72,22 +62,6 @@ export default {
       this.$set(this, `info`, data);
       this.show = true;
     },
-    // 关联申请号
-    relation(data) {
-      this.$set(this, `relationForm`, data);
-      this.thrShow = true;
-    },
-    // 确认关联
-    async relationSubmit() {
-      let data = this.relationForm;
-      let res = await this.update(data);
-      if (this.$checkRes(res)) {
-        this.$toast({ type: `success`, message: `关联申请号成功` });
-        this.thrShow = false;
-      } else {
-        this.$toast({ type: `success`, message: `${res.errmsg}` });
-      }
-    },
     // 审核
     toExamine(data) {
       this.$set(this, `form`, data);

+ 0 - 5
src/views/service/patent/admin/examine/patent/list-1.vue

@@ -26,7 +26,6 @@
           <van-col span="24" class="btn">
             <van-button size="small" type="info" @click="view(item)">查看信息</van-button>
             <van-button size="small" type="info" @click="download(item)">审查文件下载</van-button>
-            <van-button size="small" type="info" @click="relation(item)" v-if="item.create_number == undefined">关联申请号</van-button>
             <van-button size="small" type="info" @click="examine(item)" v-if="item.status == '1'">审核申请</van-button>
           </van-col>
         </van-col>
@@ -52,10 +51,6 @@ export default {
     view(data) {
       this.$emit('view', data);
     },
-    // 关联申请号
-    relation(data) {
-      this.$emit('relation', data);
-    },
     // 审核专利
     examine(data) {
       this.$emit('examine', data);

+ 1 - 0
src/views/service/patent/admin/patent/assessment.vue

@@ -81,6 +81,7 @@ export default {
     async toView(id) {
       let res = await this.fetch(id);
       if (this.$checkRes(res)) {
+        res.data.inventor = JSON.stringify(res.data.inventor.map((i) => i.name));
         this.$set(this, `info`, res.data);
         this.show = true;
       }

+ 0 - 1
src/views/service/patent/admin/patent/assessment/examine-1.vue

@@ -19,7 +19,6 @@
           <van-field name="status" label="状态">
             <template #input>
               <van-radio-group v-model="form.status" direction="horizontal">
-                <van-radio name="0">待审核</van-radio>
                 <van-radio name="1">通过</van-radio>
                 <van-radio name="-1">拒绝</van-radio>
               </van-radio-group>

+ 0 - 11
src/views/service/patent/mech/examine/patent/checkForm.vue

@@ -4,17 +4,6 @@
       <van-col span="24" class="main">
         <van-form @submit="onSubmit">
           <van-field v-model="form.name" name="name" label="发明名称" readonly />
-          <van-field name="check_url" label="审查文件">
-            <template #input>
-              <van-uploader
-                :fileList="form.check_url"
-                :max-count="1"
-                :after-read="(file) => toUpload(file, 'check_url')"
-                @delete="(file) => toDelete(file, 'check_url')"
-                accept="file"
-              />
-            </template>
-          </van-field>
           <van-field name="status" label="审核状态">
             <template #input>
               <van-radio-group v-model="form.status" direction="horizontal">

+ 10 - 4
src/views/service/patent/user/apply/apply/gzjDetail.vue

@@ -33,7 +33,9 @@ export default {
   methods: {
     ...patentwarning(['query']),
     async search({ skip = 0, limit = this.limit, ...info } = {}) {
-      info.patent_id = this.id;
+      info.name = this.name;
+      info.create_number = this.create_number;
+      info.to_id = this.user._id;
       let res = await this.query({ skip, limit, ...info });
       if (this.$checkRes(res)) {
         this.$set(this, `list`, res.data);
@@ -41,13 +43,17 @@ export default {
     },
     // 返回
     back() {
-      this.$router.push({ path: '/service/patent/user/apply/apply' });
+      // this.$router.push({ path: '/service/patent/user/apply/apply' });
+      window.history.back();
     },
   },
   computed: {
     ...mapState(['user']),
-    id() {
-      return this.$route.query.id;
+    name() {
+      return this.$route.query.name;
+    },
+    create_number() {
+      return this.$route.query.create_number;
     },
   },
   metaInfo() {

+ 1 - 1
src/views/service/patent/user/apply/apply/index.vue

@@ -50,7 +50,7 @@ export default {
     },
     // 查看国知局反馈信息
     gzjBtn(data) {
-      this.$router.push({ path: '/service/patent/user/apply/apply/gzjDetail', query: { id: data.id } });
+      this.$router.push({ path: '/service/patent/user/apply/apply/gzjDetail', query: { name: data.name, create_number: data.create_number } });
     },
     // 返回
     back() {

+ 45 - 10
src/views/service/patent/user/apply/apply/parts/list-2.vue

@@ -10,19 +10,29 @@
             <van-col span="24" class="otherInfo">
               专利名称:<span>{{ item.patent_name || '暂无' }}</span>
             </van-col>
-            <!-- <van-col span="24" class="otherInfo">
+            <van-col span="24" class="otherInfo">
               接收人:<span>{{ item.to_name || '暂无' }}</span>
-            </van-col> -->
+            </van-col>
             <van-col span="24" class="otherInfo">
               发送时间:<span>{{ getDate(item.meta) }}</span>
             </van-col>
           </van-col>
           <van-col span="24" class="btn">
-            <van-button size="small" type="info" @click="download(item)">下载文件</van-button>
+            <van-button size="small" type="info" @click="toView(item.file_url)">查看文件</van-button>
           </van-col>
         </van-col>
       </van-col>
     </van-row>
+    <van-dialog class="dialog" v-model="show" title="文件下载" :show-confirm-button="false" :show-cancel-button="true">
+      <van-col span="24" class="list" v-for="(item, index) in fileList" :key="index">
+        <van-col span="24" class="name"
+          >文件路径:<span>{{ item }}</span></van-col
+        >
+        <van-col span="24" class="btn">
+          <van-button type="info" size="small" @click="download(item)">下载文件</van-button>
+        </van-col>
+      </van-col>
+    </van-dialog>
   </div>
 </template>
 
@@ -36,17 +46,21 @@ export default {
   },
   components: {},
   data: function () {
-    return {};
+    return {
+      // 文件下载
+      show: false,
+      fileList: [],
+    };
   },
   created() {},
   methods: {
+    // 查看文件
+    toView(data) {
+      this.$set(this, `fileList`, data);
+      this.show = true;
+    },
     download(data) {
-      if (data.file_url.length > 0) {
-        let url = data.file_url.map((i) => i.url);
-        window.location.href = `${process.env.VUE_APP_HOST}/${url[0]}`;
-      } else {
-        this.$toast({ type: `fail`, message: `未上传文件` });
-      }
+      console.log(data);
     },
     getDate(val) {
       let newDate = moment(val.createdAt).format('YYYY-MM-DD hh:mm:ss');
@@ -101,4 +115,25 @@ export default {
     }
   }
 }
+.dialog {
+  padding: 0 8px;
+  /deep/.van-dialog__content {
+    height: 350px;
+    overflow-y: auto;
+  }
+  .list {
+    .name {
+      font-size: 14px;
+      word-break: break-all;
+      color: #666;
+      margin: 0 0 5px 0;
+      span {
+        color: #000;
+      }
+    }
+    .btn {
+      text-align: center;
+    }
+  }
+}
 </style>

+ 1 - 0
src/views/service/patent/user/apply/assessment/index.vue

@@ -62,6 +62,7 @@ export default {
     async toView(id) {
       let res = await this.fetch(id);
       if (this.$checkRes(res)) {
+        res.data.inventor = JSON.stringify(res.data.inventor.map((i) => i.name));
         this.$set(this, `info`, res.data);
         this.show = true;
       }

+ 2 - 2
src/views/service/patent/user/apply/assessment/parts/result-3.vue

@@ -5,9 +5,9 @@
         <van-col span="24" class="one">
           <van-form>
             <van-field v-model="form.patent_name" name="patent_name" label="专利名称" center clearable readonly>
-              <template #button>
+              <!-- <template #button>
                 <van-button size="small" type="info" @click="view(form.patent_id)">专利信息</van-button>
-              </template>
+              </template> -->
             </van-field>
             <van-field name="is_money" label="是否缴费">
               <template #input>

+ 1 - 0
src/views/service/patent/user/patent/information/detail.vue

@@ -40,6 +40,7 @@ export default {
     async search() {
       let res = await this.fetch(this.id);
       if (this.$checkRes(res)) {
+        res.data.inventor = JSON.stringify(res.data.inventor.map((i) => i.name));
         this.$set(this, `form`, res.data);
       }
     },

+ 8 - 4
src/views/service/patent/user/patent/information/index.vue

@@ -4,13 +4,13 @@
       <template v-slot:info>
         <van-tabs v-model="active" @change="change" color="#409eff">
           <van-tab :title="`已授权【${oneTotal}】`" name="有效">
-            <list-1 :list="list" @detail="detail"></list-1>
+            <list-1 :list="list" @detail="detail" @gzjBtn="gzjBtn"></list-1>
           </van-tab>
           <van-tab :title="`已受理【${twoTotal}】`" name="审中">
-            <list-1 :list="list" @detail="detail"></list-1>
+            <list-1 :list="list" @detail="detail" @gzjBtn="gzjBtn"></list-1>
           </van-tab>
           <van-tab :title="`已失效专利【${thrTotal}】`" name="失效">
-            <list-1 :list="list" @detail="detail"></list-1>
+            <list-1 :list="list" @detail="detail" @gzjBtn="gzjBtn"></list-1>
           </van-tab>
         </van-tabs>
       </template>
@@ -19,7 +19,7 @@
 </template>
 
 <script>
-import list1 from '../../../../../company/parts/list_2.vue';
+import list1 from './parts/list-1.vue';
 import adminFrame from '@frame/src/components/mobile-frame/mobile-main.vue';
 import { mapState, createNamespacedHelpers } from 'vuex';
 const { mapActions: patentinfo } = createNamespacedHelpers('patentinfo');
@@ -91,6 +91,10 @@ export default {
     detail(data) {
       this.$router.push({ path: '/service/patent/user/patent/information/detail', query: { id: data.id } });
     },
+    // 查看国知局反馈信息
+    gzjBtn(data) {
+      this.$router.push({ path: '/service/patent/user/apply/apply/gzjDetail', query: { name: data.name, create_number: data.create_number } });
+    },
     // 选择类型
     change(name) {
       this.$set(this, `active`, name);

+ 98 - 0
src/views/service/patent/user/patent/information/parts/list-1.vue

@@ -0,0 +1,98 @@
+<template>
+  <div id="list-1">
+    <van-row>
+      <van-col span="24" class="main">
+        <van-col span="24" class="list" v-for="(item, index) in list" :key="index">
+          <van-col span="24" class="title textOver">
+            {{ item.name }}
+          </van-col>
+          <van-col span="24" class="other">
+            <van-col span="24" class="otherInfo">
+              专利有效性:<span>{{ item.term || '暂无' }}</span>
+            </van-col>
+            <van-col span="24" class="otherInfo">
+              颁发时间:<span>{{ getDate(item.success_date) }}</span>
+            </van-col>
+          </van-col>
+          <van-col span="24" class="btn">
+            <van-button type="info" size="small" @click="detail(item)">查看信息</van-button>
+            <van-button type="info" size="small" @click="gzjBtn(item)">国知局反馈信息</van-button>
+          </van-col>
+        </van-col>
+      </van-col>
+    </van-row>
+  </div>
+</template>
+
+<script>
+import { mapState, createNamespacedHelpers } from 'vuex';
+const moment = require('moment');
+export default {
+  name: 'list-1',
+  props: { list: { type: Array } },
+  components: {},
+  data: function () {
+    return {};
+  },
+  created() {},
+  methods: {
+    detail(data) {
+      this.$emit('detail', data);
+    },
+    gzjBtn(data) {
+      this.$emit('gzjBtn', data);
+    },
+    // 过滤时间
+    getDate(val) {
+      let newDate = moment(val).format('YYYY-MM-DD');
+      if (newDate) return newDate;
+    },
+  },
+  computed: {
+    ...mapState(['user']),
+  },
+  metaInfo() {
+    return { title: this.$route.meta.title };
+  },
+  watch: {
+    test: {
+      deep: true,
+      immediate: true,
+      handler(val) {},
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped>
+.main {
+  margin: 8px 0 0 0;
+  .list {
+    background-color: #fff;
+    margin: 0 0 10px 0;
+    box-shadow: 0 0 5px #f1f1f1;
+    padding: 8px;
+    .title {
+      font-size: 16px;
+      font-weight: bold;
+      margin: 0 0 5px 0;
+    }
+    .other {
+      .otherInfo {
+        font-size: 14px;
+        color: #666;
+        margin: 0 0 5px 0;
+        span {
+          color: #000;
+        }
+      }
+    }
+    .btn {
+      text-align: center;
+      .van-button {
+        margin: 0 10px;
+      }
+    }
+  }
+}
+</style>