guhongwei 3 years ago
parent
commit
56bd1d7544

+ 47 - 51
src/views/commonData/transaction/index.vue

@@ -3,46 +3,39 @@
     <admin-frame topType="2" :rightArrow="false" :leftArrow="false" :usePage="false" :useNav="false">
       <template v-slot:info>
         <van-col :span="24" class="one">
-          <van-form @submit="onSubmit" @reset="onReset">
-            <!-- <van-field v-model="form.user_id" name="user_id" label="用户id" readonly style="display: none" />
-          <van-field v-model="form.patent_id" name="patent_id" label="专利id" readonly style="display: none" /> -->
-            <van-field v-model="form.create_number" name="create_number" label="申请号" :rules="[{ required: true, message: '申请号' }]" />
-            <van-field v-model="form.patent_name" name="patent_name" label="专利名称" :rules="[{ required: true, message: '专利名称' }]" />
-            <van-field v-model="form.contact" name="contact" label="联系人" :rules="[{ required: true, message: '联系人' }]" />
-            <van-field v-model="form.phone" name="phone" label="联系电话" :rules="[{ required: true, message: '联系电话' }]" />
-            <van-field v-model="form.email" name="email" label="电子邮箱" :rules="[{ required: true, message: '电子邮箱' }]" />
-            <van-field v-model="form.budget" name="budget" type="digit" label="投资预算(万元)" :rules="[{ required: true, message: '投资预算' }]" />
-            <van-field name="type" label="交易类型">
-              <template #input>
-                <van-radio-group v-model="form.type" direction="horizontal">
-                  <van-radio name="转让">转让</van-radio>
-                  <van-radio name="合作">合作</van-radio>
-                  <van-radio name="招商">招商</van-radio>
-                  <van-radio name="质押">质押</van-radio>
-                </van-radio-group>
-              </template>
-            </van-field>
-            <van-field name="is_report" label="评估报告">
-              <template #input>
-                <van-radio-group v-model="form.is_report" direction="horizontal">
-                  <van-radio :name="true">有</van-radio>
-                  <van-radio :name="false">无</van-radio>
-                </van-radio-group>
-              </template>
-            </van-field>
-            <van-field name="report" label="评估报告" v-if="form.is_report == true">
-              <template #input>
-                <van-uploader
-                  :fileList="form.report"
-                  :max-count="1"
-                  :after-read="(file) => toUpload(file, 'report')"
-                  @delete="(file) => toDelete(file, 'report')"
-                />
-              </template>
-            </van-field>
-            <van-field v-model="form.requirementdesc" name="requirementdesc" label="技术说明" rows="2" autosize type="textarea" />
-            <van-field v-model="form.expect" name="expect" label="商业预期" rows="2" autosize type="textarea" />
-            <van-field v-model="form.condition" name="condition" label="合作条件及要求" rows="2" autosize type="textarea" />
+          <van-form @submit="onSubmit" @reset="onReset" label-width="7em">
+            <van-field v-model="form.create_number" name="create_number" label="申请号" placeholder="申请号" :rules="[{ required: true, message: '申请号' }]" />
+            <van-field
+              v-model="form.patent_name"
+              name="patent_name"
+              label="专利名称"
+              placeholder="专利名称"
+              :rules="[{ required: true, message: '专利名称' }]"
+            />
+            <van-field
+              v-model="form.on_obligee"
+              name="on_obligee"
+              label="变更前专利权人"
+              placeholder="变更前专利权人"
+              :rules="[{ required: true, message: '变更前专利权人' }]"
+            />
+            <van-field
+              v-model="form.on_afterobligee"
+              name="on_afterobligee"
+              label="变更后专利权人"
+              placeholder="变更后专利权人"
+              :rules="[{ required: true, message: '变更后专利权人' }]"
+            />
+            <van-field
+              name="transfer_date"
+              :value="form.transfer_date"
+              label="专利权转移日期"
+              placeholder="点击选择"
+              @click="selectDate('transfer_date')"
+              :rules="[{ required: true, message: '专利权转移日期' }]"
+            />
+            <!-- 选择日期公用弹框 -->
+            <van-calendar v-model="calendarShow" @confirm="calendarCon" :min-date="minDate" :max-date="maxDate" />
             <div class="btn">
               <van-button type="danger" size="small" native-type="reset">重置信息</van-button>
               <van-button type="info" size="small" native-type="submit">提交信息</van-button>
@@ -58,7 +51,7 @@
 import adminFrame from '@frame/src/components/mobile-frame/mobile-main.vue';
 import { mapState, createNamespacedHelpers } from 'vuex';
 const { mapActions: patenttrans } = createNamespacedHelpers('patenttrans');
-const { mapActions: upload } = createNamespacedHelpers('upload');
+var moment = require('moment');
 export default {
   name: 'index',
   props: {},
@@ -68,11 +61,15 @@ export default {
   data: function () {
     return {
       form: {},
+      // 选择日期
+      minDate: new Date(2000, 10, 1),
+      maxDate: new Date(2050, 10, 1),
+      calendarShow: false,
+      calendar_type: '',
     };
   },
   created() {},
   methods: {
-    ...upload(['upload']),
     ...patenttrans(['create']),
     async onSubmit(value) {
       value.status = '4';
@@ -82,16 +79,15 @@ export default {
       }
     },
     onReset() {},
-    async toUpload({ file }, model) {
-      // 上传,赋值
-      const res = await this.upload({ file, dir: 'file' });
-      if (this.$checkRes(res)) {
-        this.$set(this.form, model, [{ name: res.name, url: res.uri }]);
-      }
+    // 打开选择日期弹框
+    selectDate(type) {
+      this.$set(this, `calendar_type`, type);
+      this.calendarShow = true;
     },
-    toDelete(file, model) {
-      const index = this.form[model].findIndex((f) => _.isEqual(f, file));
-      this.form[model].splice(index, 1);
+    // 选中日期
+    calendarCon(date) {
+      this.$set(this.form, this.calendar_type, moment(date).format('YYYY-MM-DD'));
+      this.calendarShow = false;
     },
   },
   computed: {

+ 3 - 1
src/views/market/transfer/index.vue

@@ -59,7 +59,9 @@ export default {
     },
     // 详情
     detail(data) {
-      this.$router.push({ path: '/market/transfer/detail', query: { id: data.id } });
+      if (this.active == '1') {
+        this.$router.push({ path: '/market/transfer/detail', query: { id: data.id } });
+      }
     },
     // 选择类型
     changeActive(value) {

+ 4 - 1
src/views/market/transfer/parts/info-1.vue

@@ -3,7 +3,7 @@
     <van-row>
       <van-col span="24" class="main">
         <van-col :span="24" class="one">
-          <van-form label-width="5em">
+          <van-form label-width="7em">
             <van-field v-model="info.create_number" name="create_number" label="申请号" readonly />
             <van-field v-model="info.patent_name" name="patent_name" label="专利名称" readonly />
             <van-field v-model="info.contact" name="contact" label="联系人" readonly />
@@ -11,6 +11,9 @@
             <van-field v-model="info.email" name="email" label="电子邮箱" readonly />
             <van-field v-model="info.budget" name="budget" type="digit" label="投资预算" readonly />
             <van-field v-model="info.type" name="type" label="交易类型" readonly />
+            <van-field v-model="info.on_obligee" name="on_obligee" label="变更前权利人" readonly />
+            <van-field v-model="info.on_afterobligee" name="on_afterobligee" label="变更后权利人" readonly />
+            <van-field v-model="info.transfer_date" name="on_obligee" label="专利权转移日期" readonly />
             <van-field name="is_report" label="评估报告">
               <template #input>
                 <van-radio-group v-model="info.is_report" direction="horizontal" disabled>

+ 7 - 4
src/views/market/transfer/parts/list-1.vue

@@ -7,14 +7,17 @@
             {{ item.patent_name }}
           </van-col>
           <van-col span="24" class="other">
-            <van-col span="24" class="otherInfo">
+            <van-col span="12" class="otherInfo">
               申请号:<span>{{ item.create_number || '暂无' }}</span>
             </van-col>
             <van-col span="12" class="otherInfo">
-              交易类型:<span>{{ item.type || '暂无' }}</span>
+              转移日期:<span>{{ item.transfer_date || '暂无' }}</span>
             </van-col>
-            <van-col span="12" class="otherInfo">
-              投资预算:<span>{{ item.budget || '暂无' }}万元</span>
+            <van-col span="24" class="otherInfo">
+              变更前权利人:<span>{{ item.on_obligee || '暂无' }}</span>
+            </van-col>
+            <van-col span="24" class="otherInfo">
+              变更后权利人:<span>{{ item.on_afterobligee || '暂无' }}</span>
             </van-col>
           </van-col>
         </van-col>

+ 4 - 1
src/views/patent/admin/patent/trans/info-1.vue

@@ -3,7 +3,7 @@
     <van-row>
       <van-col span="24" class="main">
         <van-col span="24" class="one">
-          <van-form label-width="5em">
+          <van-form label-width="7em">
             <van-field v-model="form.create_number" name="create_number" label="申请号" readonly />
             <van-field v-model="form.patent_name" name="patent_name" label="专利名称" readonly />
             <van-field v-model="form.contact" name="contact" label="联系人" readonly />
@@ -11,6 +11,9 @@
             <van-field v-model="form.email" name="email" label="电子邮箱" readonly />
             <van-field v-model="form.budget" name="budget" type="digit" label="投资预算" readonly />
             <van-field v-model="form.type" name="type" label="交易类型" readonly />
+            <van-field v-model="form.on_obligee" name="on_obligee" label="变更前权利人" readonly />
+            <van-field v-model="form.on_afterobligee" name="on_afterobligee" label="变更后权利人" readonly />
+            <van-field v-model="form.transfer_date" name="on_obligee" label="专利权转移日期" readonly />
             <van-field name="is_report" label="评估报告">
               <template #input>
                 <van-radio-group v-model="form.is_report" direction="horizontal" disabled>

+ 4 - 1
src/views/patent/mech/examine/contract/info-1.vue

@@ -2,7 +2,7 @@
   <div id="info-1">
     <van-row>
       <van-col span="24" class="main">
-        <van-form label-width="5em">
+        <van-form label-width="7em">
           <van-field v-model="info.create_number" name="create_number" label="申请号" readonly />
           <van-field v-model="info.patent_name" name="patent_name" label="专利名称" readonly />
           <van-field v-model="info.contact" name="contact" label="联系人" readonly />
@@ -10,6 +10,9 @@
           <van-field v-model="info.email" name="email" label="电子邮箱" readonly />
           <van-field v-model="info.budget" name="budget" type="digit" label="投资预算" readonly />
           <van-field v-model="info.type" name="type" label="交易类型" readonly />
+          <van-field v-model="info.on_obligee" name="on_obligee" label="变更前权利人" readonly />
+          <van-field v-model="info.on_afterobligee" name="on_afterobligee" label="变更后权利人" readonly />
+          <van-field v-model="info.transfer_date" name="on_obligee" label="专利权转移日期" readonly />
           <van-field name="is_report" label="评估报告">
             <template #input>
               <van-radio-group v-model="info.is_report" direction="horizontal" disabled>

+ 4 - 1
src/views/patent/mech/transaction/parts/info-1.vue

@@ -3,7 +3,7 @@
     <van-row>
       <van-col span="24" class="main">
         <van-col span="24" class="one">
-          <van-form label-width="5em">
+          <van-form label-width="7em">
             <van-field v-model="form.create_number" name="create_number" label="申请号" readonly />
             <van-field v-model="form.patent_name" name="patent_name" label="专利名称" readonly />
             <van-field v-model="form.contact" name="contact" label="联系人" readonly />
@@ -11,6 +11,9 @@
             <van-field v-model="form.email" name="email" label="电子邮箱" readonly />
             <van-field v-model="form.budget" name="budget" type="digit" label="投资预算" readonly />
             <van-field v-model="form.type" name="type" label="交易类型" readonly />
+            <van-field v-model="form.on_obligee" name="on_obligee" label="变更前权利人" readonly />
+            <van-field v-model="form.on_afterobligee" name="on_afterobligee" label="变更后权利人" readonly />
+            <van-field v-model="form.transfer_date" name="on_obligee" label="专利权转移日期" readonly />
             <van-field name="is_report" label="评估报告">
               <template #input>
                 <van-radio-group v-model="form.is_report" direction="horizontal" disabled>

+ 1 - 0
src/views/patent/user/patent/information/parts/trans-1.vue

@@ -7,6 +7,7 @@
           <van-field v-model="form.patent_id" name="patent_id" label="专利id" readonly style="display: none" />
           <van-field v-model="form.create_number" name="create_number" label="申请号" readonly />
           <van-field v-model="form.patent_name" name="patent_name" label="专利名称" readonly />
+          <van-field v-model="form.on_obligee" name="on_obligee" label="当前权利人" :rules="[{ required: true, message: '当前权利人' }]" />
           <van-field v-model="form.contact" name="contact" label="联系人" :rules="[{ required: true, message: '联系人' }]" />
           <van-field v-model="form.phone" name="phone" label="联系电话" :rules="[{ required: true, message: '联系电话' }]" />
           <van-field v-model="form.email" name="email" label="电子邮箱" :rules="[{ required: true, message: '电子邮箱' }]" />

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

@@ -52,6 +52,7 @@ export default {
           create_number: this.info.create_number,
           patent_name: this.info.name,
           contact: this.user.name,
+          on_obligee: this.info.on_obligee,
         };
         let arr = await this.assessQuery({ patent_id: this.info._id, user_id: this.user._id });
         if (this.$checkRes(arr)) {

+ 1 - 0
src/views/patent/user/transaction/contract.vue

@@ -67,6 +67,7 @@ export default {
       data.is_contract = '1';
       data.contract = contract;
       data.status = '1';
+      data.on_afterobligee = data.contract.transferee;
       let res = await this.update(data);
       if (this.$checkRes(res)) {
         this.$toast({ type: `success`, message: `填写合同成功` });

+ 15 - 8
src/views/patent/user/transaction/info.vue

@@ -7,7 +7,9 @@
     </admin-frame>
     <van-dialog class="dialog" v-model="show" title="上传合同" :show-confirm-button="false" :show-cancel-button="false">
       <van-form>
-        <van-field v-model="contartForm.patent_name" name="专利名称" label="专利名称" row="1" type="textarea" />
+        <van-field v-model="contartForm.patent_name" name="专利名称" label="专利名称" autosize rows="1" type="textarea" />
+        <van-field v-model="contartForm.on_obligee" name="当前权利人" label="当前权利人" readonly />
+        <van-field v-model="contartForm.on_afterobligee" name="变更后权利人" label="变更后权利人" />
         <van-field name="offine_contract" label="合同">
           <template #input>
             <van-uploader
@@ -83,13 +85,17 @@ export default {
     // 确认
     async confirm() {
       let data = this.form;
-      data.status = '3';
-      let res = await this.check(data);
-      if (this.$checkRes(res)) {
-        this.$toast({ type: `success`, message: `用户确认成功,待机构审核通过,交易结束` });
-        this.back();
+      if (data.transfer_date) {
+        data.status = '3';
+        let res = await this.check(data);
+        if (this.$checkRes(res)) {
+          this.$toast({ type: `success`, message: `用户确认成功,待机构审核通过,交易结束` });
+          this.back();
+        } else {
+          this.$toast({ type: `success`, message: `${res.errmsg}` });
+        }
       } else {
-        this.$toast({ type: `success`, message: `${res.errmsg}` });
+        this.$toast({ type: `success`, message: `缺少必要信息` });
       }
     },
     // 结束交易
@@ -102,6 +108,7 @@ export default {
       let data = this.contartForm;
       data.is_contract = '0';
       data.status = '4';
+      data.transfer_date = moment(new Date()).format('YYYY-DD-MM');
       let res = await this.update(data);
       if (this.$checkRes(res)) {
         let arr = await this.infoUpdate({ id: data.patent_id, trans_status: '1' });
@@ -159,7 +166,7 @@ export default {
 <style lang="less" scoped>
 .dialog {
   /deep/.van-dialog__content {
-    height: 250px;
+    height: 350px;
     overflow-y: auto;
   }
   .btn {

+ 32 - 2
src/views/patent/user/transaction/parts/info-1.vue

@@ -3,7 +3,7 @@
     <van-row>
       <van-col span="24" class="main">
         <van-col span="24" class="one">
-          <van-form label-width="5em">
+          <van-form label-width="7em">
             <van-field v-model="form.create_number" name="create_number" label="申请号" readonly />
             <van-field v-model="form.patent_name" name="patent_name" label="专利名称" readonly />
             <van-field v-model="form.contact" name="contact" label="联系人" readonly />
@@ -11,6 +11,17 @@
             <van-field v-model="form.email" name="email" label="电子邮箱" readonly />
             <van-field v-model="form.budget" name="budget" type="digit" label="投资预算" readonly />
             <van-field v-model="form.type" name="type" label="交易类型" readonly />
+            <van-field v-model="form.on_obligee" name=" on_obligee" label="变更前权利人" readonly />
+            <van-field v-model="form.on_afterobligee" name=" on_afterobligee" label="变更后权利人" readonly />
+            <van-field
+              name="transfer_date"
+              :value="form.transfer_date"
+              label="专利权转移日期"
+              placeholder="点击选择"
+              @click="selectDate('transfer_date')"
+              :rules="[{ required: true, message: '专利权转移日期' }]"
+            />
+
             <van-field name="is_report" label="评估报告">
               <template #input>
                 <van-radio-group v-model="form.is_report" direction="horizontal" disabled>
@@ -36,6 +47,8 @@
                 </van-radio-group>
               </template>
             </van-field> -->
+            <!-- 选择日期公用弹框 -->
+            <van-calendar v-model="calendarShow" @confirm="calendarCon" :min-date="minDate" :max-date="maxDate" />
           </van-form>
         </van-col>
         <van-col span="24" class="two" v-if="useBtn == true">
@@ -51,6 +64,7 @@
 
 <script>
 import { mapState, createNamespacedHelpers } from 'vuex';
+var moment = require('moment');
 export default {
   name: 'info-1',
   props: {
@@ -59,7 +73,13 @@ export default {
   },
   components: {},
   data: function () {
-    return {};
+    return {
+      // 选择日期
+      minDate: new Date(2000, 10, 1),
+      maxDate: new Date(2050, 10, 1),
+      calendarShow: false,
+      calendar_type: '',
+    };
   },
   created() {},
   methods: {
@@ -82,6 +102,16 @@ export default {
     download(data) {
       window.location.href = `${process.env.VUE_APP_HOST}/${data[0].url}`;
     },
+    // 打开选择日期弹框
+    selectDate(type) {
+      this.$set(this, `calendar_type`, type);
+      this.calendarShow = true;
+    },
+    // 选中日期
+    calendarCon(date) {
+      this.$set(this.form, this.calendar_type, moment(date).format('YYYY-MM-DD'));
+      this.calendarShow = false;
+    },
   },
   computed: {
     ...mapState(['user']),