Bläddra i källkod

Merge branch 'master' of http://git.izouma.com/xubinhui/yzzscq

“xubinhui 2 år sedan
förälder
incheckning
c700cb5e75
55 ändrade filer med 912 tillägg och 756 borttagningar
  1. BIN
      src/main/zhi-rong-web/src/assets/banner@3x.png
  2. BIN
      src/main/zhi-rong-web/src/assets/weixuanzhongfazhan@3x.png
  3. BIN
      src/main/zhi-rong-web/src/assets/yixuanzhongfazhan@3x.png
  4. 1 1
      src/main/zhi-rong-web/src/components/Banner.vue
  5. 2 2
      src/main/zhi-rong-web/src/components/BannerNav.vue
  6. 3 3
      src/main/zhi-rong-web/src/components/DividerTitle.vue
  7. 1 1
      src/main/zhi-rong-web/src/components/home/ServiceBox.vue
  8. 3 2
      src/main/zhi-rong-web/src/components/list/ExpertGride.vue
  9. 3 3
      src/main/zhi-rong-web/src/components/list/ManageGride.vue
  10. 1 1
      src/main/zhi-rong-web/src/components/list/SuccessPatentRow.vue
  11. 1 0
      src/main/zhi-rong-web/src/components/newsField.vue
  12. 3 2
      src/main/zhi-rong-web/src/components/page/FilterList.vue
  13. 11 4
      src/main/zhi-rong-web/src/components/page/SortList.vue
  14. 34 34
      src/main/zhi-rong-web/src/components/popup/CopyrightAdd.vue
  15. 24 24
      src/main/zhi-rong-web/src/components/popup/CopyrightDemandAdd.vue
  16. 15 15
      src/main/zhi-rong-web/src/components/popup/LogoAdd.vue
  17. 11 11
      src/main/zhi-rong-web/src/components/popup/LogoDemandAdd.vue
  18. 20 20
      src/main/zhi-rong-web/src/components/popup/PatentAdd.vue
  19. 32 32
      src/main/zhi-rong-web/src/components/popup/PatentDemandAdd.vue
  20. 33 33
      src/main/zhi-rong-web/src/components/popup/TechProductDemandAdd.vue
  21. 44 44
      src/main/zhi-rong-web/src/components/popup/TechnologyProductAdd.vue
  22. 2 2
      src/main/zhi-rong-web/src/router/index.js
  23. 1 1
      src/main/zhi-rong-web/src/styles/theme/aside.css
  24. 2 2
      src/main/zhi-rong-web/src/styles/theme/index.css
  25. 1 1
      src/main/zhi-rong-web/src/styles/theme/main.css
  26. 227 153
      src/main/zhi-rong-web/src/views/About.vue
  27. 36 10
      src/main/zhi-rong-web/src/views/Home.vue
  28. 8 3
      src/main/zhi-rong-web/src/views/agent/Index.vue
  29. 3 2
      src/main/zhi-rong-web/src/views/detail/Copyright.vue
  30. 51 44
      src/main/zhi-rong-web/src/views/detail/ExpertDetail.vue
  31. 4 2
      src/main/zhi-rong-web/src/views/legal/Index.vue
  32. 1 1
      src/main/zhi-rong-web/src/views/legal/IntellectualProperty.vue
  33. 5 3
      src/main/zhi-rong-web/src/views/market/Index.vue
  34. 18 3
      src/main/zhi-rong-web/src/views/news/List.vue
  35. 15 14
      src/main/zhi-rong-web/src/views/user/Security.vue
  36. 18 19
      src/main/zhi-rong-web/src/views/user/UserEdit.vue
  37. 6 2
      src/main/zhi-rong-web/src/views/user/UserMain.vue
  38. 1 0
      src/main/zhi-rong-web/src/views/user/publish/Copyright.vue
  39. 31 31
      src/main/zhi-rong-web/src/views/user/publish/CopyrightDemandEdit.vue
  40. 38 38
      src/main/zhi-rong-web/src/views/user/publish/CopyrightEdit.vue
  41. 1 0
      src/main/zhi-rong-web/src/views/user/publish/Logo.vue
  42. 16 16
      src/main/zhi-rong-web/src/views/user/publish/LogoEdit.vue
  43. 1 0
      src/main/zhi-rong-web/src/views/user/publish/Patent.vue
  44. 22 21
      src/main/zhi-rong-web/src/views/user/publish/PatentEdit.vue
  45. 1 0
      src/main/zhi-rong-web/src/views/user/publish/TechProductDemand.vue
  46. 34 34
      src/main/zhi-rong-web/src/views/user/publish/TechProductDemandEdit.vue
  47. 1 0
      src/main/zhi-rong-web/src/views/user/publish/TechnicalManager.vue
  48. 1 0
      src/main/zhi-rong-web/src/views/user/publish/TechnologyProduct.vue
  49. 64 64
      src/main/zhi-rong-web/src/views/user/publish/TechnologyProductEdit.vue
  50. 1 0
      src/main/zhi-rong-web/src/views/user/publish/copyrightDemand.vue
  51. 1 0
      src/main/zhi-rong-web/src/views/user/publish/logoDemand.vue
  52. 12 12
      src/main/zhi-rong-web/src/views/user/publish/logoDemandEdit.vue
  53. 1 0
      src/main/zhi-rong-web/src/views/user/publish/patentDemand.vue
  54. 34 34
      src/main/zhi-rong-web/src/views/user/publish/patentDemandEdit.vue
  55. 12 12
      src/main/zhi-rong-web/src/views/user/publish/technicalEdit.vue

BIN
src/main/zhi-rong-web/src/assets/banner@3x.png


BIN
src/main/zhi-rong-web/src/assets/weixuanzhongfazhan@3x.png


BIN
src/main/zhi-rong-web/src/assets/yixuanzhongfazhan@3x.png


+ 1 - 1
src/main/zhi-rong-web/src/components/Banner.vue

@@ -383,7 +383,7 @@ export default {
         }
         .banner_top_title_con_content:hover {
             background: #ffe54f;
-            font-size: 20px;
+            font-size: 18px;
             font-weight: bold;
             color: #000000;
         }

+ 2 - 2
src/main/zhi-rong-web/src/components/BannerNav.vue

@@ -1,13 +1,13 @@
 <template>
     <div class="banner_navigation">
-        <div class="banner_navigation_con">
+        <!-- <div class="banner_navigation_con">
             <div class="banner_navigation_con_one">特色知识产权运营公共服务</div>
             <div class="banner_navigation_con_two">打造知识产权融合全链条生态服务</div>
             <div class="banner_navigation_con_three">
                 <div>了解更多</div>
                 <img src="../assets/iconarrowright@3x.png" alt="" class="banner_navigation_con_three_img" />
             </div>
-        </div>
+        </div> -->
     </div>
 </template>
 <script>

+ 3 - 3
src/main/zhi-rong-web/src/components/DividerTitle.vue

@@ -74,11 +74,11 @@ export default {
         vertical-align: middle;
         line-height: 32px;
         &:last-child {
-            font-size: 22px;
+            font-size: 24px;
             font-family: MicrosoftYaHei-Bold, MicrosoftYaHei;
             font-weight: bold;
             color: #313233;
-            margin-bottom: 10px;
+            margin-bottom: 5px;
         }
 
         img {
@@ -123,7 +123,7 @@ export default {
         content: '';
         width: 30px;
         height: 1px;
-        background: @info;
+        background: #BCC1CC;
         margin: 0 10px;
         transition: width ease-in-out 0.3s;
     }

+ 1 - 1
src/main/zhi-rong-web/src/components/home/ServiceBox.vue

@@ -82,7 +82,7 @@ export default {
     width: 190px;
     height: 160px;
     background: #f2f3f7;
-    box-shadow: 0px 0px 6px 0px #d2dbf0;
+    // box-shadow: 0px 0px 6px 0px #d2dbf0;
     display: flex;
     align-items: center;
     justify-content: flex-end;

+ 3 - 2
src/main/zhi-rong-web/src/components/list/ExpertGride.vue

@@ -1,6 +1,6 @@
 <template>
     <div class="list_con">
-        <div class="manage" :class="{ 'manage-mini': size === 'mini' }">
+        <div class="manage" :class="{ 'manage-mini': size === 'mini' }" @click="edit">
             <!-- <router-link class="manage" :class="{ 'manage-mini': size === 'mini' }"> -->
             <div class="manage_top">
                 <el-image :src="getImg(info.avatar)" fit="fill"></el-image>
@@ -73,7 +73,7 @@ export default {
     methods: {
         edit() {
             this.$router.push({
-                path: '/technicalEdit',
+                path: '/expertDetail',
                 query: {
                     id: this.info.id
                 }
@@ -242,3 +242,4 @@ export default {
     }
 }
 </style>
+

+ 3 - 3
src/main/zhi-rong-web/src/components/list/ManageGride.vue

@@ -13,8 +13,7 @@
                 </div>
             </div>
             <div class="bottom">
-                <div style="margin-bottom: 10px">联系方式:{{ info.phone }}</div>
-                <div>任职单位:{{ info.work }}</div>
+                <div>发布时间:{{ formatTime(info.createdAt, 'YYYY-MM-DD') }}</div>
             </div>
             <!-- <div class="content"> -->
             <!-- <div class="tags">
@@ -124,7 +123,7 @@ export default {
 }
 .manage {
     // width: 460px;
-    height: 210px;
+    height: 185px;
     background: #ffffff;
     border: 1px solid rgba(56, 85, 142, 0.04);
     padding: 24px 20px 0;
@@ -258,3 +257,4 @@ export default {
     }
 }
 </style>
+

+ 1 - 1
src/main/zhi-rong-web/src/components/list/SuccessPatentRow.vue

@@ -26,7 +26,7 @@
                 <!-- <span class="text2" v-html="info.manual"></span> -->
                 <!-- </div> -->
             </div>
-            <div class="content_con" v-html="info.manual"></div>
+            <!-- <div class="content_con" v-html="info.manual"></div> -->
         </div>
 
         <div class="btn">

+ 1 - 0
src/main/zhi-rong-web/src/components/newsField.vue

@@ -124,6 +124,7 @@ export default {
 }
 .science_list {
     padding: 20px;
+    padding-top: 10px;
     .science_list_con {
         margin-bottom: 20px;
         .patent {

+ 3 - 2
src/main/zhi-rong-web/src/components/page/FilterList.vue

@@ -364,8 +364,8 @@ export default {
 
 .main {
     background: #FFFFFF;
+    box-shadow: 0px 0px 6px 0px #D2DBF0;
     flex-grow: 1;
-    padding-top: 20px;
     .flex-col();
 }
 .list {
@@ -508,7 +508,8 @@ export default {
 .filter {
     background-color: #fff;
     padding: 20px 20px 9px 20px;
-    // box-shadow: 0px 0px 6px 0px #D2DBF0;
+    box-shadow: 0px 0px 6px 0px #D2DBF0;
+    margin-bottom: 20px;
     .filter-item {
         .flex();
         align-items: flex-start;

+ 11 - 4
src/main/zhi-rong-web/src/components/page/SortList.vue

@@ -122,6 +122,7 @@ import DatePicker from '../DatePicker';
 import pageableTable from '../../mixins/pageableTable';
 import areaList from '../../utils/area';
 import dayjs from 'dayjs';
+import menu from '../../mixins/menu';
 export default {
     name: 'List',
     props: {
@@ -188,7 +189,7 @@ export default {
             }
         }
     },
-    mixins: [pageableTable],
+    mixins: [pageableTable, menu],
     data() {
         return {
             search: '',
@@ -201,6 +202,7 @@ export default {
     watch: {
         $route() {
             this.$emit('init');
+            this.scrollTo();
         }
     },
     mounted() {
@@ -267,7 +269,7 @@ export default {
             return _class;
         },
         clickSort(key) {
-            // console.log(key);
+            this.scrollTo(true);
             let index = -1;
             if (this.sort[key]) {
                 index = this.sortList.indexOf(this.sort[key]);
@@ -292,8 +294,11 @@ export default {
 }
 .filter-top {
     background-color: #fff;
+    padding: 20px;
+    padding-bottom: 10px;
+    box-shadow: 0px 0px 6px 0px #d2dbf0;
+    margin-bottom: 20px;
     .flex();
-    padding: 0px 10px 0 20px;
 
     /deep/.el-input-group__prepend {
         background-color: transparent;
@@ -331,13 +336,14 @@ export default {
 .main {
     // background-color: #fff;
     flex-grow: 1;
+    background: #ffffff;
+    box-shadow: 0px 0px 6px 0px #d2dbf0;
     .flex-col();
 }
 .list {
     background-color: #fff;
     flex-grow: 1;
     min-height: 740px;
-    margin-top: 15px;
 }
 .footer {
     align-self: center;
@@ -466,3 +472,4 @@ export default {
     width: 100%;
 }
 </style>
+

+ 34 - 34
src/main/zhi-rong-web/src/components/popup/CopyrightAdd.vue

@@ -223,40 +223,40 @@ export default {
                         required: true,
                         message: `请输入${this.types === 'COPY' ? '版本' : '软著'}登记号`
                     }
-                ]
-                // workType: [{ required: true, message: `请选择${this.types === 'COPY' ? '作品' : '软著'}类型` }],
-                // author: [{ required: true, message: '请输入作者,按回车分割' }],
-                // owner: [{ required: true, message: '请输入著作权人' }],
-                // img: [
-                //     {
-                //         required: true,
-                //         message: `请上传${this.types === 'COPY' ? '作品' : '软著'}附图`
-                //     }
-                // ],
-                // tradingMethodId: [{ required: true, message: '请选择交易方式' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择期望价方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
-                // contact: [{ required: true, message: '请输入联系人' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // commissionType: [{ required: true, message: '请选择佣金类型' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区' }]
+                ],
+                workType: [{ required: true, message: `请选择${this.types === 'COPY' ? '作品' : '软著'}类型` }],
+                author: [{ required: true, message: '请输入作者,按回车分割' }],
+                owner: [{ required: true, message: '请输入著作权人' }],
+                img: [
+                    {
+                        required: true,
+                        message: `请上传${this.types === 'COPY' ? '作品' : '软著'}附图`
+                    }
+                ],
+                tradingMethodId: [{ required: true, message: '请选择交易方式' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择期望价方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
+                contact: [{ required: true, message: '请输入联系人' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                commissionType: [{ required: true, message: '请选择佣金类型' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区' }]
             };
         }
     },

+ 24 - 24
src/main/zhi-rong-web/src/components/popup/CopyrightDemandAdd.vue

@@ -116,30 +116,30 @@ export default {
                         required: true,
                         message: `请输入需求${this.type === 'COPY' ? '作品' : '软著'}名称`
                     }
-                ]
-                // workType: [{ required: true, message: `请选择需求${this.type === 'COPY' ? '作品' : '软著'}类型` }],
-                // description: [{ required: true, message: '请填写需求描述' }],
-                // modeId: [{ required: true, message: '请选择交易方式' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择预算方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区' }]
+                ],
+                workType: [{ required: true, message: `请选择需求${this.type === 'COPY' ? '作品' : '软著'}类型` }],
+                description: [{ required: true, message: '请填写需求描述' }],
+                modeId: [{ required: true, message: '请选择交易方式' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择预算方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区' }]
             };
         }
     },

+ 15 - 15
src/main/zhi-rong-web/src/components/popup/LogoAdd.vue

@@ -223,21 +223,21 @@ export default {
             },
             rules: {
                 name: [{ required: true, message: '请输入商标名称' }],
-                code: [{ required: true, message: '请输入商标申请号' }]
-                // logoType: [{ required: true, message: '请选择商标类型' }],
-                // category: [{ required: true, message: '请选择所属分类' }],
-                // servicesItem: [{ required: true, message: '请输入使用商品/服务项目' }],
-                // owner: [{ required: true, message: '请输入商标注册人' }],
-                // img: [{ required: true, message: '请上传商标图样' }],
-                // tradingMethodId: [{ required: true, message: '请选择交易方式' }],
-                // expectedPrice: [{ required: true, validator: validatePrice, message: '请选择期望价方式' }],
-                // basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
-                // contact: [{ required: true, message: '请输入联系人' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // commissionType: [{ required: true, message: '请选择佣金类型' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区' }]
+                code: [{ required: true, message: '请输入商标申请号' }],
+                logoType: [{ required: true, message: '请选择商标类型' }],
+                category: [{ required: true, message: '请选择所属分类' }],
+                servicesItem: [{ required: true, message: '请输入使用商品/服务项目' }],
+                owner: [{ required: true, message: '请输入商标注册人' }],
+                img: [{ required: true, message: '请上传商标图样' }],
+                tradingMethodId: [{ required: true, message: '请选择交易方式' }],
+                expectedPrice: [{ required: true, validator: validatePrice, message: '请选择期望价方式' }],
+                basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
+                contact: [{ required: true, message: '请输入联系人' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                commissionType: [{ required: true, message: '请选择佣金类型' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区' }]
             },
             logoTypeOptions,
             categoryOptions: [],

+ 11 - 11
src/main/zhi-rong-web/src/components/popup/LogoDemandAdd.vue

@@ -125,17 +125,17 @@ export default {
             saving: false,
             formData: {},
             rules: {
-                containText: [{ required: true, message: '请输入需求商标包含文字' }]
-                // containLetter: [{ required: true, message: '请输入需求商标包含字母' }],
-                // containGraphic: [{ required: true, message: '请输入需求商标包含图形元素' }],
-                // category: [{ required: true, message: '请选择商标所属分类' }],
-                // description: [{ required: true, message: '请填写需求描述' }],
-                // modeId: [{ required: true, message: '请选择交易方式' }],
-                // expectedPrice: [{ required: true, validator: validatePrice, message: '请选择预算方式' }],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区' }]
+                containText: [{ required: true, message: '请输入需求商标包含文字' }],
+                containLetter: [{ required: true, message: '请输入需求商标包含字母' }],
+                containGraphic: [{ required: true, message: '请输入需求商标包含图形元素' }],
+                category: [{ required: true, message: '请选择商标所属分类' }],
+                description: [{ required: true, message: '请填写需求描述' }],
+                modeId: [{ required: true, message: '请选择交易方式' }],
+                expectedPrice: [{ required: true, validator: validatePrice, message: '请选择预算方式' }],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区' }]
             },
             categoryOptions: [],
             tradingMethodOption

+ 20 - 20
src/main/zhi-rong-web/src/components/popup/PatentAdd.vue

@@ -391,26 +391,26 @@ export default {
             },
             rules: {
                 name: [{ required: true, message: '请输入专利名称' }],
-                code: [{ required: true, message: '请输入专利申请号' }]
-                // patentTypeId: [{ required: true, message: '请选择专利类型' }],
-                // ownerType: [{ required: true, message: '请输入专利权人类型', trigger: 'blur' }],
-                // industryClass: [{ required: true, message: '请选择所属领域' }],
-                // lawStatusId: [{ required: true, message: '请选择法律状态' }],
-                // applicant: [{ required: true, message: '请输入申请人', trigger: 'blur' }],
-                // owner: [{ required: true, message: '请输入专利权人' }],
-                // inventor: [{ required: true, message: '请输入发明人' }],
-                // img: [{ required: true, message: '请上传专利附图' }],
-                // digest: [{ required: true, message: '请填写专利摘要' }],
-                // manual: [{ required: true, message: '请输入权利要求书' }],
-                // expectedPrice: [{ required: true, validator: validatePrice, message: '请选择期望价方式' }],
-                // tradingMethodId: [{ required: true, message: '请选择交易方式' }],
-                // contact: [{ required: true, message: '请输入联系人' }],
-                // basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // commissionType: [{ required: true, message: '请选择佣金类型' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区' }]
+                code: [{ required: true, message: '请输入专利申请号' }],
+                patentTypeId: [{ required: true, message: '请选择专利类型' }],
+                ownerType: [{ required: true, message: '请输入专利权人类型', trigger: 'blur' }],
+                industryClass: [{ required: true, message: '请选择行业分类' }],
+                lawStatusId: [{ required: true, message: '请选择法律状态' }],
+                applicant: [{ required: true, message: '请输入申请人', trigger: 'blur' }],
+                owner: [{ required: true, message: '请输入专利权人' }],
+                inventor: [{ required: true, message: '请输入发明人' }],
+                img: [{ required: true, message: '请上传专利附图' }],
+                digest: [{ required: true, message: '请填写专利摘要' }],
+                manual: [{ required: true, message: '请输入权利要求书' }],
+                expectedPrice: [{ required: true, validator: validatePrice, message: '请选择期望价方式' }],
+                tradingMethodId: [{ required: true, message: '请选择交易方式' }],
+                contact: [{ required: true, message: '请输入联系人' }],
+                basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                commissionType: [{ required: true, message: '请选择佣金类型' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区' }]
             },
             industryOptions: [],
             industryOption: [],

+ 32 - 32
src/main/zhi-rong-web/src/components/popup/PatentDemandAdd.vue

@@ -212,38 +212,38 @@ export default {
                         required: true,
                         message: `请输入需求${this.types === 'DECLASSIFICATION' ? '脱密专利' : '专利'}名称`
                     }
-                ]
-                // keyword: [
-                //     {
-                //         required: true,
-                //         message: `请输入需求${this.types === 'DECLASSIFICATION' ? '脱密专利' : '专利'}包含关键字`
-                //     }
-                // ],
-                // patentTypeId: [{ required: true, message: '请选择专利类型' }],
-                // patentStatusId: [{ required: true, message: '请选择法律状态' }],
-                // industryClass: [{ required: true, message: '请选择所属领域' }],
-                // description: [{ required: true, message: '请填写需求描述' }],
-                // modeId: [{ required: true, message: '请选择交易方式' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择预算方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区' }]
+                ],
+                keyword: [
+                    {
+                        required: true,
+                        message: `请输入需求${this.types === 'DECLASSIFICATION' ? '脱密专利' : '专利'}包含关键字`
+                    }
+                ],
+                patentTypeId: [{ required: true, message: '请选择专利类型' }],
+                patentStatusId: [{ required: true, message: '请选择法律状态' }],
+                industryClass: [{ required: true, message: '请选择所属领域' }],
+                description: [{ required: true, message: '请填写需求描述' }],
+                modeId: [{ required: true, message: '请选择交易方式' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择预算方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区' }]
             };
         }
     },

+ 33 - 33
src/main/zhi-rong-web/src/components/popup/TechProductDemandAdd.vue

@@ -182,39 +182,39 @@ export default {
                         required: true,
                         message: `请输入需求${this.types === 'TECHNOLOGY' ? '技术成果' : '产品'}名称`
                     }
-                ]
-                // industry: [{ required: true, message: '请选择所属领域' }],
-                // stage: [{ required: true, message: '请选择所处阶段' }],
-                // patentType: [{ required: true, message: '请选择专利类型', trigger: 'blur' }],
-                // description: [{ required: true, message: '请填写需求描述' }],
-                // isPatented: [
-                //     {
-                //         required: true,
-                //         message: `请选择是否需要专利${this.types === 'TECHNOLOGY' ? '技术' : '产品'}`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // modeId: [{ required: true, message: '请选择交易方式' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择预算方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区' }]
+                ],
+                industry: [{ required: true, message: '请选择所属领域' }],
+                stage: [{ required: true, message: '请选择所处阶段' }],
+                patentType: [{ required: true, message: '请选择专利类型', trigger: 'blur' }],
+                description: [{ required: true, message: '请填写需求描述' }],
+                isPatented: [
+                    {
+                        required: true,
+                        message: `请选择是否需要专利${this.types === 'TECHNOLOGY' ? '技术' : '产品'}`,
+                        trigger: 'blur'
+                    }
+                ],
+                modeId: [{ required: true, message: '请选择交易方式' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择预算方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区' }]
             };
         }
     },

+ 44 - 44
src/main/zhi-rong-web/src/components/popup/TechnologyProductAdd.vue

@@ -242,50 +242,50 @@ export default {
         },
         rules() {
             return {
-                name: [{ required: true, message: `请输入${this.types === 'TECHNOLOGY' ? '成果' : '产品'}名称` }]
-                // field: [{ required: true, message: '请选择所属领域' }],
-                // owner: [
-                //     {
-                //         required: true,
-                //         message: `请输入${this.types === 'TECHNOLOGY' ? '成果所属人' : '产品持有人'}`
-                //     }
-                // ],
-                // stage: [{ required: true, message: '请选择所处阶段' }],
-                // img: [{ required: true, message: `请上传${this.types === 'TECHNOLOGY' ? '技术' : '产品'}附图` }],
-                // digest: [{ required: true, message: `请填写${this.types === 'TECHNOLOGY' ? '摘要' : '产品概述'}` }],
-                // manual: [{ required: true, message: `请输入${this.types === 'TECHNOLOGY' ? '成果' : '产品'}说明` }],
-                // patented: [
-                //     {
-                //         required: true,
-                //         message: `请选择是否专利${this.types === 'TECHNOLOGY' ? '技术' : '产品'}`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // patentNo: [{ required: true, message: '请输入包含专利号' }],
-                // tradingMethodId: [{ required: true, message: '请选择交易方式' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择期望价方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
-                // contact: [{ required: true, message: '请输入联系人' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // commissionType: [{ required: true, message: '请选择佣金类型' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区' }]
+                name: [{ required: true, message: `请输入${this.types === 'TECHNOLOGY' ? '成果' : '产品'}名称` }],
+                field: [{ required: true, message: '请选择所属领域' }],
+                owner: [
+                    {
+                        required: true,
+                        message: `请输入${this.types === 'TECHNOLOGY' ? '成果所属人' : '产品持有人'}`
+                    }
+                ],
+                stage: [{ required: true, message: '请选择所处阶段' }],
+                img: [{ required: true, message: `请上传${this.types === 'TECHNOLOGY' ? '技术' : '产品'}附图` }],
+                digest: [{ required: true, message: `请填写${this.types === 'TECHNOLOGY' ? '摘要' : '产品概述'}` }],
+                manual: [{ required: true, message: `请输入${this.types === 'TECHNOLOGY' ? '成果' : '产品'}说明` }],
+                patented: [
+                    {
+                        required: true,
+                        message: `请选择是否专利${this.types === 'TECHNOLOGY' ? '技术' : '产品'}`,
+                        trigger: 'blur'
+                    }
+                ],
+                patentNo: [{ required: true, message: '请输入包含专利号' }],
+                tradingMethodId: [{ required: true, message: '请选择交易方式' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择期望价方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
+                contact: [{ required: true, message: '请输入联系人' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                commissionType: [{ required: true, message: '请选择佣金类型' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区' }]
             };
         }
     },

+ 2 - 2
src/main/zhi-rong-web/src/router/index.js

@@ -793,7 +793,7 @@ const routes = [{
                                 meta: {
                                     title: '我发布的',
                                     checkLogin: true,
-                                    prePath: '/publish/patent?caseType=DECLASSIFICATION'
+                                    prePath: '/publish/patent?caseType=GENERAL'
                                 }
                             },
                             {
@@ -803,7 +803,7 @@ const routes = [{
                                 meta: {
                                     title: '我发布的',
                                     checkLogin: true,
-                                    prePath: '/publish/patent?caseType=DECLASSIFICATION'
+                                    prePath: '/publish/patent?caseType=GENERAL'
                                 }
                             },
                             {

+ 1 - 1
src/main/zhi-rong-web/src/styles/theme/aside.css

@@ -139,7 +139,7 @@
 /* BEM
  -------------------------- */
 .el-aside {
-  overflow: auto;
+  overflow-x: visible;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   -ms-flex-negative: 0;

+ 2 - 2
src/main/zhi-rong-web/src/styles/theme/index.css

@@ -52945,7 +52945,7 @@
 /* BEM
  -------------------------- */
 .el-aside {
-  overflow: auto;
+  overflow-x: visible;
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   -ms-flex-negative: 0;
@@ -53228,7 +53228,7 @@
   flex: 1;
   -ms-flex-preferred-size: auto;
   flex-basis: auto;
-  overflow: auto;
+  /* overflow: auto; */
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   padding: 20px; }

+ 1 - 1
src/main/zhi-rong-web/src/styles/theme/main.css

@@ -275,7 +275,7 @@
   flex: 1;
   -ms-flex-preferred-size: auto;
   flex-basis: auto;
-  overflow: auto;
+  /* overflow: auto; */
   -webkit-box-sizing: border-box;
   box-sizing: border-box;
   padding: 20px; }

+ 227 - 153
src/main/zhi-rong-web/src/views/About.vue

@@ -33,11 +33,11 @@
         <div class="history" ref="history" id="history">
             <div class="history_con">
                 <divider-title>
-                    <template>发展</template>
-                    <template #prim>历程</template>
+                    <!-- <template></template> -->
+                    <template #prim>发展历程</template>
                     <template #sub>Development process</template>
                 </divider-title>
-                <swiper ref="imgSwiper" class="content" :options="imgOptions">
+                <!-- <swiper ref="imgSwiper" class="content" :options="imgOptions">
                     <swiper-slide v-for="(item, index) in historys" :key="index" class="content_con">
                         <img :src="item.img" alt="" class="content_con_img" />
                         <div class="content_con_title">
@@ -61,8 +61,8 @@
                         </div>
                         <img :src="index === actives ? select : unchecked" alt="" class="content_subscript_con_img" />
                     </div>
-                </div>
-                <!-- <div class="history_con_content">
+                </div> -->
+                <div class="history_con_content">
                     <swiper ref="imgSwiper" class="history_con_content_left" :options="imgOptions">
                         <swiper-slide
                             v-for="(item, index) in historys"
@@ -72,21 +72,35 @@
                             <img :src="item.img" alt="" class="history_con_content_left_img" />
                         </swiper-slide>
                     </swiper>
-                    <swiper class="timeLine" ref="timeSwiper" :options="boxOptions">
-                        <swiper-slide v-for="(item, index) in historys" :key="index">
-                            <div class="time-item">
-                                <div class="text1">
-                                    <span>{{ formatTime(item.time, 'YYYY') }}</span>
-                                    <span>年</span>
-                                    <span>{{ formatTime(item.time, 'MM月') }}</span>
+                    <div class="history_con_content_right" @mouseenter="mousemoveEve" @mouseout="mouseoutEve">
+                        <swiper class="timeLine" ref="timeSwiper" :options="boxOptions">
+                            <swiper-slide v-for="(item, index) in historys" :key="index">
+                                <div class="time-item">
+                                    <div :class="index == actives ? 'textxuanzhong' : 'text1'">
+                                        <img
+                                            src="../assets/yixuanzhongfazhan@3x.png"
+                                            alt=""
+                                            class="text1_img"
+                                            v-if="index == actives"
+                                        />
+                                        <img
+                                            src="../assets/weixuanzhongfazhan@3x.png"
+                                            alt=""
+                                            class="text1_img"
+                                            v-else
+                                        />
+                                        <span>{{ formatTime(item.time, 'YYYY') }}</span>
+                                        <span>年</span>
+                                        <span>{{ formatTime(item.time, 'MM月') }}</span>
+                                    </div>
+                                    <div class="text2" v-html="item.title"></div>
                                 </div>
-                                <div class="text2" v-html="item.title"></div>
-                            </div>
-                        </swiper-slide>
-                        <div class="time-pagination" slot="pagination"></div>
-                    </swiper>
-                    <div class="history_con_content_right">
-                        <swiper class="history_con_content_right_con" ref="timeSwiper" :options="honorOption">
+                            </swiper-slide>
+                            <div class="time-pagination" slot="pagination"></div>
+                        </swiper>
+                    </div>
+                    <!-- <div class="history_con_content_right">
+                        <swiper class="history_con_content_right_con" ref="timeSwiper" :options="boxOptions">
                             <swiper-slide v-for="(item, index) in historys" :key="index">
                                 <div class="history_con_content_right_con_top">
                                     <img
@@ -104,8 +118,8 @@
                             </swiper-slide>
                             <div class="time-pagination" slot="pagination"></div>
                         </swiper>
-                    </div>
-                </div> -->
+                    </div> -->
+                </div>
                 <!-- <div class="content_subscript">
                     <div class="content_subscript_con" v-for="(item, index) in historys" :key="index">
                         <div
@@ -226,19 +240,10 @@ export default {
             boxOptions: {
                 direction: 'vertical',
                 slidesPerView: 'auto',
-                centeredSlides: true,
+                slidesOffsetAfter: 220,
                 pagination: {
                     type: 'progressbar',
                     el: '.time-pagination'
-                },
-                mousewheel: true,
-                releaseOnEdges: true,
-                autoplay: {
-                    autoplay: false,
-                    delay: 5000,
-                    stopOnLastSlide: false,
-                    disableOnInteraction: false,
-                    pauseOnMouseEnter: true
                 }
             },
             imgOptions: {
@@ -253,7 +258,7 @@ export default {
                     disableOnInteraction: false
                 },
                 on: {
-                    transitionEnd: swiper => {
+                    slideChange: swiper => {
                         this.actives = this.imgSwiper.activeIndex;
                     }
                 }
@@ -300,9 +305,6 @@ export default {
         };
     },
     computed: {
-        page() {
-            return this.$refs['imgSwiper'].swiper;
-        },
         imgSwiper() {
             return this.$refs.imgSwiper.$swiper;
         },
@@ -335,13 +337,13 @@ export default {
             .then(res => {
                 this.historys = JSON.parse(res.value);
                 this.$nextTick(() => {
-                    this.imgSwiper.init();
+                    this.imgSwiper.update();
                     this.timeSwiper.update();
                     this.imgSwiper.controller.control = this.timeSwiper;
-                    this.timeSwiper.controller.control = this.imgSwiper;
-                    if (!this.timeSwiper.autoplay.running) {
-                        this.timeSwiper.autoplay.start();
-                    }
+                    // this.timeSwiper.controller.control = this.imgSwiper;
+                    // if (!this.timeSwiper.autoplay.running) {
+                    //     this.timeSwiper.autoplay.start();
+                    // }
                     // setTimeout(() => {
                     //     this.imgSwiper.updateSize();
                     // }, 500);
@@ -405,16 +407,6 @@ export default {
                 });
             }
         },
-        touchStart() {
-            if (this.timeSwiper.autoplay.running) {
-                this.timeSwiper.autoplay.stop();
-            }
-        },
-        touchEnd() {
-            if (!this.timeSwiper.autoplay.running) {
-                this.timeSwiper.autoplay.start();
-            }
-        },
         slideChange() {
             this.$nextTick(() => {
                 this.active = this.imgSwiper.activeIndex;
@@ -434,6 +426,12 @@ export default {
                     ''
                 );
             }, 2000);
+        },
+        mousemoveEve() {
+            this.imgSwiper.autoplay.stop();
+        },
+        mouseoutEve() {
+            this.imgSwiper.autoplay.start();
         }
     }
 };
@@ -510,7 +508,7 @@ export default {
             .intro_con_right_one {
                 width: 189px;
                 height: 20px;
-                background: #405CFF;
+                background: #405cff;
                 opacity: 0.6;
                 position: absolute;
                 right: -20px;
@@ -519,7 +517,7 @@ export default {
             .intro_con_right_two {
                 width: 20px;
                 height: 169px;
-                background: #405CFF;
+                background: #405cff;
                 opacity: 0.6;
                 position: absolute;
                 right: -20px;
@@ -565,8 +563,12 @@ export default {
             .content_con_title {
                 flex-grow: 1;
                 background: #ffffff;
-                box-shadow: 0px 3px 20px 0px rgba(0, 0, 0, 0.06);
+                box-shadow: 0px 0px 6px 0px #d2dbf0;
                 padding: 60px 40px 0px;
+                box-sizing: border-box;
+                margin-left: 4px;
+                margin-top: 1px;
+                margin-right: 1px;
                 .content_con_title_one {
                     font-size: 18px;
                     font-family: PingFangSC-Medium, PingFang SC;
@@ -600,6 +602,8 @@ export default {
             background: #ffffff;
             box-shadow: 0px 0px 6px 0px #d2dbf0;
             overflow-y: auto;
+            padding: 40px 8px 15px 30px;
+            box-sizing: border-box;
             .history_con_content_right_con {
                 width: 100%;
                 padding: 40px 60px 22px 40px;
@@ -624,6 +628,170 @@ export default {
                     }
                 }
             }
+            .timeLine {
+                width: 100%;
+                height: 100%;
+                padding-left: 10px;
+                box-sizing: border-box;
+                // background-color: fade(@warn, 70%);
+                // position: absolute;
+                // right: calc(50% - 100px);
+                // bottom: 90px;
+
+                /deep/ .swiper-slide {
+                    height: auto;
+                    padding: 10px 0 20px;
+                }
+
+                .time-item {
+                    font-size: 14px;
+                    color: #ffffff;
+                    line-height: 24px;
+                    padding-left: 30px;
+                    position: relative;
+                    .text1 {
+                        position: relative;
+                        margin-bottom: 10px;
+                        span {
+                            vertical-align: middle;
+                            font-size: 18px;
+                            color: #939599;
+                            line-height: 24px;
+                            font-weight: bold;
+                            // &:first-child {
+                            //     font-family: Impact;
+                            //     color: #ffffff;
+                            //     line-height: 30px;
+                            // }
+
+                            // &:nth-child(2) {
+                            //     font-size: 18px;
+                            //     font-weight: bold;
+                            //     color: #ffffff;
+                            //     line-height: 30px;
+                            //     margin-right: 6px;
+                            // }
+                        }
+                        .text1_img {
+                            width: 22px;
+                            height: 22px;
+                            position: absolute;
+                            left: -35px;
+                            top: 1px;
+                        }
+                        // &::before {
+                        //     content: '';
+                        //     width: 11px;
+                        //     height: 11px;
+                        //     background: #ffffff;
+                        //     position: absolute;
+
+                        //     position: absolute;
+                        //     left: -29px;
+                        //     top: 11px;
+                        //     border-radius: 100%;
+                        // }
+                    }
+                    .textxuanzhong {
+                        position: relative;
+                        margin-bottom: 10px;
+                        span {
+                            vertical-align: middle;
+                            font-size: 18px;
+                            color: #405cff;
+                            line-height: 24px;
+                            font-weight: bold;
+                            // &:first-child {
+                            //     font-family: Impact;
+                            //     color: #ffffff;
+                            //     line-height: 30px;
+                            // }
+
+                            // &:nth-child(2) {
+                            //     font-size: 18px;
+                            //     font-weight: bold;
+                            //     color: #ffffff;
+                            //     line-height: 30px;
+                            //     margin-right: 6px;
+                            // }
+                        }
+                        .text1_img {
+                            width: 22px;
+                            height: 22px;
+                            position: absolute;
+                            left: -35px;
+                            top: 1px;
+                        }
+                        // &::before {
+                        //     content: '';
+                        //     width: 11px;
+                        //     height: 11px;
+                        //     background: #ffffff;
+                        //     position: absolute;
+
+                        //     position: absolute;
+                        //     left: -29px;
+                        //     top: 11px;
+                        //     border-radius: 100%;
+                        // }
+                    }
+                    .text2 {
+                        font-size: 14px;
+                        color: #313233;
+                        line-height: 24px;
+                    }
+                    // &::before {
+                    //     content: '';
+                    //     width: 15px;
+                    //     height: 15px;
+                    //     border: 1px solid #ffffff;
+                    //     position: absolute;
+                    //     left: -2px;
+                    //     top: 8px;
+                    //     border-radius: 100%;
+                    // }
+
+                    &::after {
+                        content: '';
+                        width: 0px;
+                        height: 110%;
+                        border-left: 1px solid #ececed;
+                        position: absolute;
+                        left: 6px;
+                        top: 28px;
+                    }
+                }
+
+                /deep/ .swiper-slide {
+                    &:last-child {
+                        .time-item {
+                            &::after {
+                                content: none;
+                            }
+                        }
+                    }
+                }
+
+                /deep/ .swiper-pagination-progressbar {
+                    left: auto;
+                    right: 0px;
+                    height: calc(100% + 15px);
+                    top: -15px;
+                    width: 4px;
+                    background: #ececed;
+                    .swiper-pagination-progressbar-fill {
+                        background: #d4d4d5;
+                    }
+                }
+            }
+        }
+    }
+    /deep/ .swiper-slide-active {
+        .text1 {
+            font-size: 18px;
+            font-weight: bold;
+            color: #405cff !important;
+            line-height: 24px;
         }
     }
     // .content {
@@ -935,13 +1103,17 @@ export default {
     width: 940px;
     // padding-bottom: 40px;
     .honor_con {
-        width: 290px;
+        width: 282px;
         height: 250px;
         background: #ffffff;
         box-shadow: 0px 0px 6px 0px #d2dbf0;
         padding: 10px;
         padding-bottom: 0px;
         box-sizing: border-box;
+        margin-top: 3px;
+        margin-right: 1px;
+        margin-bottom: 3px;
+        margin-left: 3px;
     }
     img {
         width: 100%;
@@ -1109,105 +1281,6 @@ export default {
 //             }
 //         }
 //     }
-
-//     .timeLine {
-//         width: 340px;
-//         height: 50%;
-//         padding: 20px;
-//         box-sizing: border-box;
-//         background-color: fade(@warn, 70%);
-//         position: absolute;
-//         right: calc(50% - 100px);
-//         bottom: 90px;
-
-//         /deep/ .swiper-slide {
-//             height: auto;
-//             padding: 10px 0 20px;
-//         }
-
-//         .time-item {
-//             font-size: 14px;
-//             color: #ffffff;
-//             line-height: 24px;
-//             padding-left: 30px;
-//             position: relative;
-//             .text1 {
-//                 position: relative;
-//                 span {
-//                     vertical-align: middle;
-//                     &:first-child {
-//                         font-family: Impact;
-//                         color: #ffffff;
-//                         line-height: 30px;
-//                     }
-
-//                     &:nth-child(2) {
-//                         font-size: 18px;
-//                         font-weight: bold;
-//                         color: #ffffff;
-//                         line-height: 30px;
-//                         margin-right: 6px;
-//                     }
-//                 }
-
-//                 &::before {
-//                     content: '';
-//                     width: 11px;
-//                     height: 11px;
-//                     background: #ffffff;
-//                     position: absolute;
-
-//                     position: absolute;
-//                     left: -29px;
-//                     top: 11px;
-//                     border-radius: 100%;
-//                 }
-//             }
-
-//             &::before {
-//                 content: '';
-//                 width: 15px;
-//                 height: 15px;
-//                 border: 1px solid #ffffff;
-//                 position: absolute;
-//                 left: -2px;
-//                 top: 8px;
-//                 border-radius: 100%;
-//             }
-
-//             &::after {
-//                 content: '';
-//                 width: 0px;
-//                 height: 110%;
-//                 border-left: 1px dashed #fff;
-//                 position: absolute;
-//                 left: 6px;
-//                 top: 28px;
-//             }
-//         }
-
-//         /deep/ .swiper-slide {
-//             &:last-child {
-//                 .time-item {
-//                     &::after {
-//                         content: none;
-//                     }
-//                 }
-//             }
-//         }
-
-//         /deep/ .swiper-pagination-progressbar {
-//             left: auto;
-//             right: 20px;
-//             height: calc(100% - 60px);
-//             top: 30px;
-//             width: 2px;
-//             .swiper-pagination-progressbar-fill {
-//                 background-color: #fff;
-//             }
-//         }
-//     }
-// }
 .center-content_five {
     width: 100%;
     background: #ffffff;
@@ -1260,3 +1333,4 @@ export default {
     }
 }
 </style>
+

+ 36 - 10
src/main/zhi-rong-web/src/views/Home.vue

@@ -151,14 +151,19 @@
                     <div class="banner_con_titleOne_con banner_con_titleOne_con_one" @click="supplySide">
                         <img src="../assets/png-gongjice-bg@3x.png" alt="" class="banner_con_titleOne_img" />
                         <div class="supply_side_supply supply_side">
-                            <div class="supply_side_supply_one supply_side_one">供给侧</div>
-                            <div class="supply_side_supply_two supply_side_two">丰富的行业交流、政企交流活动</div>
-                            <div class="supply_side_supply_three">
+                            <div class="supply_side_demand_one supply_side_one">供给侧</div>
+                            <div class="supply_side_demand_two supply_side_two">丰富的行业交流、政企交流活动</div>
+                            <div class="supply_side_demand_three">
                                 去发布
+                                <img
+                                    src="../assets/nav_icon_bianjirigth@3x.png"
+                                    alt=""
+                                    class="supply_side_demand_three_img supply_side_demand_three_img_one"
+                                />
                                 <img
                                     src="../assets/nav_icon_bianji@3x.png"
                                     alt=""
-                                    class="supply_side_supply_three_img"
+                                    class="supply_side_demand_three_img supply_side_demand_three_img_two"
                                 />
                             </div>
                         </div>
@@ -275,10 +280,10 @@
                                                     申请日:&nbsp;{{ formatTime(i.createdAt, 'YYYY-MM-DD') }}
                                                 </div>
                                                 <div class="intellectual_property_one_left_content_con">
-                                                    专利权人:&nbsp;{{ i.owner }}
+                                                    专利权人:&nbsp;{{ i.owner  }}
                                                 </div>
                                             </div>
-                                            <div class="intellectual_property_one_left_own">
+                                            <div class="intellectual_property_one_left_own" v-if="i.inventor">
                                                 发明人:&nbsp;{{ i.inventor.join(';') }}
                                             </div>
                                         </div>
@@ -833,7 +838,7 @@ export default {
             } else if (this.actives === '企业') {
                 this.$router.push({ name: 'digitalDetails', query: { id: id } });
             } else if (this.actives === '专家') {
-                // this.$router.push({ name: 'expertDetail', query: { id: id } });
+                this.$router.push({ name: 'expertDetail', query: { id: id } });
             }
         },
         Onsave() {
@@ -1172,7 +1177,7 @@ export default {
 .tab {
     height: 360px;
     background: #ffffff;
-    box-shadow: 0px 2px 10px 0px #f5f7fa;
+    box-shadow: 0px 0px 6px 0px #d2dbf0;
     padding: 16px 16px 10px;
     box-sizing: border-box;
     position: relative;
@@ -1445,7 +1450,7 @@ export default {
     }
 }
 .banner_con_titleOne_con_one {
-    background: #2167eb;
+    background: #e0eeff;
     border-radius: 2px 0px 2px 2px;
     border: 1px solid rgba(56, 85, 142, 0.04);
 }
@@ -1482,7 +1487,7 @@ export default {
         width: 52px;
         height: 28px;
         font-size: 16px;
-        font-weight: bold;
+        // font-weight: bold;
         color: #818999;
         line-height: 28px;
         text-align: center;
@@ -1742,6 +1747,27 @@ export default {
                 }
             }
         }
+        .banner_con_titleOne_con_one:hover {
+            background: #2167eb;
+            border-radius: 2px 0px 2px 2px;
+            border: 1px solid rgba(56, 85, 142, 0.04);
+            .supply_side_demand_one {
+                color: #ffffff;
+            }
+            .supply_side_demand_two {
+                color: #ffffff;
+            }
+            .supply_side_demand_three {
+                background: #ffe54f;
+                color: #000000;
+                .supply_side_demand_three_img_one {
+                    display: none;
+                }
+                .supply_side_demand_three_img_two {
+                    display: block;
+                }
+            }
+        }
     }
     .banner_con_titleTwo {
         width: 1200px;

+ 8 - 3
src/main/zhi-rong-web/src/views/agent/Index.vue

@@ -117,11 +117,11 @@ export default {
     methods: {
         scrollTo(isFirst = false) {
             this.$nextTick(() => {
-                let top = window.innerWidth * 0.2625 > 341 ? window.innerWidth * 0.2625 : 341;
+                let top = window.innerHeight * 0.2625 > 341 ? window.innerHeight * 0.2625 : 341;
                 setTimeout(
                     () => {
                         window.scrollTo({
-                            top: top + 60
+                            top: top + 180
                         });
                     },
                     isFirst ? 500 : 0
@@ -179,6 +179,7 @@ export default {
     color: #ffffff;
     .menu-left-con_title {
         font-size: 16px;
+        font-weight: bold;
     }
     img {
         width: 24px;
@@ -189,11 +190,13 @@ export default {
 .main {
     min-height: 980px;
     flex-grow: 1;
+    background: #ffffff;
+    box-shadow: 0px 0px 6px 0px #d2dbf0;
     .flex-col();
 }
 
 .menu-content {
-    min-height: 420px;
+    height: 370px;
     background-color: #fff;
     box-shadow: 0px 0px 6px 0px #d2dbf0;
 }
@@ -278,6 +281,7 @@ export default {
     &.is-active {
         background: linear-gradient(90deg, rgba(64, 92, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%);
         color: #405cff;
+        font-weight: bold;
     }
 }
 &.is-active::after {
@@ -290,3 +294,4 @@ export default {
     background-color: #405cff;
 }
 </style>
+

+ 3 - 2
src/main/zhi-rong-web/src/views/detail/Copyright.vue

@@ -22,11 +22,11 @@
                         </div>
                         <div class="info-item" v-if="info.type == 'COPY'">
                             <span class="text1">作者:</span>
-                            <span class="text2">{{ info.author }}</span>
+                            <span class="text2">{{ info.author.join(';') }}</span>
                         </div>
                         <div class="info-item">
                             <span class="text1">著作权人:</span>
-                            <span class="text2">{{ info.owner }}</span>
+                            <span class="text2">{{ info.owner.join(';') }}</span>
                         </div>
                         <!-- <div class="info-item" v-else>
                         <span class="text1">著作权人:</span>
@@ -271,3 +271,4 @@ export default {
     line-height: 20px;
 }
 </style>
+

+ 51 - 44
src/main/zhi-rong-web/src/views/detail/ExpertDetail.vue

@@ -1,47 +1,51 @@
 <template>
-    <bread-pages>
-        <div class="main" v-loading="loading">
-            <div class="top">
-                <div class="img">
-                    <el-carousel height="360px">
-                        <el-carousel-item>
-                            <el-image
-                                :src="getImg(info.avatar)"
-                                fit="cover"
-                                style="width: 100%; height: 100%; border-radius: 100%"
-                            ></el-image>
-                        </el-carousel-item>
-                    </el-carousel>
-                </div>
-
-                <div class="info">
-                    <div class="title">{{ info.name }}</div>
-                    <div class="info-item">
-                        <span class="text1">研究方向:</span>
-                        <span class="text2" v-if="info.affiliationName">{{ info.affiliationName }}</span>
+    <div>
+        <Banner></Banner>
+        <bread-pages>
+            <div class="main" v-loading="loading">
+                <div class="top">
+                    <div class="img">
+                        <el-carousel height="360px">
+                            <el-carousel-item>
+                                <el-image
+                                    :src="getImg(info.avatar)"
+                                    fit="cover"
+                                    style="width: 100%; height: 100%; border-radius: 100%"
+                                ></el-image>
+                            </el-carousel-item>
+                        </el-carousel>
                     </div>
-                    <!-- <div class="info-item" v-for="(item, index) in info.fieldName" :key="index">
+
+                    <div class="info">
+                        <div class="title">{{ info.name }}</div>
+                        <div class="info-item">
+                            <span class="text1">研究方向:</span>
+                            <span class="text2" v-if="info.affiliationName">{{ info.affiliationName }}</span>
+                        </div>
+                        <!-- <div class="info-item" v-for="(item, index) in info.fieldName" :key="index">
                         <span class="text1">专业领域:</span>
                         <span class="text3" v-if="info.field">{{ item }}</span>
                     </div> -->
-                    <div class="info-item">
-                        <div class="top">
-                            <span class="text1">专业领域:</span>
-                            <!-- <span class="text3" v-if="info.field">{{ info.fieldName.join('') }}</span> -->
-                            <div>
-                                <div class="text3" v-for="(item, index) in info.fieldName" :key="index">{{ item }}</div>
+                        <div class="info-item">
+                            <div class="top">
+                                <span class="text1">专业领域:</span>
+                                <!-- <span class="text3" v-if="info.field">{{ info.fieldName.join('') }}</span> -->
+                                <div>
+                                    <div class="text3" v-for="(item, index) in info.fieldName" :key="index">
+                                        {{ item }}
+                                    </div>
+                                </div>
                             </div>
                         </div>
-                    </div>
-                    <div class="info-item" v-if="info.keyAchievement">
-                        <span class="text1">主要成果:</span>
-                        <span class="text2">{{ info.keyAchievement }}</span>
-                    </div>
-                    <div class="info-item">
-                        <span class="text1">个人介绍:</span>
-                        <span class="text2" v-html="info.selfIntroduction"></span>
-                    </div>
-                    <!-- <div class="info-item">
+                        <div class="info-item" v-if="info.keyAchievement">
+                            <span class="text1">主要成果:</span>
+                            <span class="text2">{{ info.keyAchievement }}</span>
+                        </div>
+                        <div class="info-item">
+                            <span class="text1">个人介绍:</span>
+                            <span class="text2" v-html="info.selfIntroduction"></span>
+                        </div>
+                        <!-- <div class="info-item">
                         <span class="text1">电话:</span>
                         <span class="text2">{{ info.phone }}</span>
                     </div>
@@ -50,9 +54,9 @@
                         <span class="text2">{{ info.email }}</span>
                     </div> -->
 
-                    <div class="flex1"></div>
+                        <div class="flex1"></div>
 
-                    <!-- <div class="btn">
+                        <!-- <div class="btn">
                         <el-button type="primary" class="icon-button" @click.prevent="connectKefu" size="small">
                             <i class="iconfont iconfont-nav_icon_xiaoxi1"></i>
                             咨询客服
@@ -61,10 +65,10 @@
                             <i class="iconfont iconfont-nav_icon_xiaoxi"></i>提交留言
                         </el-button>
                     </div> -->
+                    </div>
                 </div>
-            </div>
 
-            <!-- <div class="content">
+                <!-- <div class="content">
                <div class="recommends">
                     <div class="recommends-title">为你推荐</div>
                     <router-link
@@ -97,17 +101,19 @@
                     <div class="detail-content" v-html="info.selfIntroduction"></div>
                 </div>
             </div> -->
-        </div>
-    </bread-pages>
+            </div>
+        </bread-pages>
+    </div>
 </template>
 
 <script>
 import BreadPage from '../../components/page/BreadPage.vue';
+import Banner from '../../components/Banner.vue';
 import { stageOptions, tradingMethodOptions, affiliationOptions } from '../../utils/variables';
 import comEvent from '../../mixins/comEvent';
 import BreadPages from '../../components/page/BreadPages.vue';
 export default {
-    components: { BreadPages },
+    components: { BreadPages, Banner },
     mixins: [comEvent],
     data() {
         return {
@@ -336,3 +342,4 @@ export default {
     }
 }
 </style>
+

+ 4 - 2
src/main/zhi-rong-web/src/views/legal/Index.vue

@@ -84,6 +84,7 @@ export default {
     color: #ffffff;
     .menu-left-con_title {
         font-size: 16px;
+        font-weight: bold;
     }
     img {
         width: 24px;
@@ -92,9 +93,9 @@ export default {
     }
 }
 .menu-content {
-    min-height: 800px;
+    min-height: 370px;
     background-color: #fff;
-    // box-shadow: 0px 0px 6px 0px #D2DBF0;
+    box-shadow: 0px 0px 6px 0px #D2DBF0;
 }
 
 .menu-center {
@@ -106,6 +107,7 @@ export default {
 }
 /deep/ .el-menu > .el-menu-item {
     &.is-active {
+        font-weight: bold;
         background: linear-gradient(90deg, rgba(64, 92, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%);
         color: #405cff;
     }

+ 1 - 1
src/main/zhi-rong-web/src/views/legal/IntellectualProperty.vue

@@ -28,7 +28,7 @@ export default {
             industryClassOptions: [],
             list: [],
             defaultQuery: {
-                category: 'IntellectualProperty'
+                // category: 'IntellectualProperty'
             },
             defaultSort: {
                 sort: 'id,desc'

+ 5 - 3
src/main/zhi-rong-web/src/views/market/Index.vue

@@ -96,6 +96,7 @@ export default {
     color: #ffffff;
     .menu-left-con_title {
         font-size: 16px;
+        font-weight: bold;
     }
     img {
         width: 24px;
@@ -119,14 +120,15 @@ export default {
     margin-top: 10px;
 }
 .menu-content {
-    min-height: 800px;
+    min-height: 720px;
     background-color: #fff;
-    // box-shadow: 0px 0px 6px 0px #D2DBF0;
+    box-shadow: 0px 0px 6px 0px #D2DBF0;
 }
 /deep/ .el-menu > .el-menu-item {
     &.is-active {
-        background: linear-gradient(90deg, #405cff 0%, #ffffff 100%);
+        background: linear-gradient(90deg, rgba(64, 92, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%);
         color: #405cff;
+        font-weight: bold;
     }
     // &.is-active::after {
     //     content: '';

+ 18 - 3
src/main/zhi-rong-web/src/views/news/List.vue

@@ -41,8 +41,10 @@ import BannerNav from '../../components/BannerNav.vue';
 import newsDynamic from '../../components/newsDynamic.vue';
 import newsField from '../../components/newsField.vue';
 import newsDynamics from '../../components/newsDynamics.vue';
+import menu from '../../mixins/menu';
 export default {
     components: { MenuPage, newsField, newsDynamic, newsDynamics, Banner, BannerNav },
+    mixins: [menu],
     data() {
         return {
             flag: 1
@@ -59,10 +61,16 @@ export default {
                 }
             },
             immediate: true
+        },
+        watch: {
+            $route() {
+                this.scrollTo();
+            }
         }
     },
     methods: {
         handleSelect(key) {
+            this.scrollTo(true);
             this.flag = key;
             this.$router.push('/newsList?flag=' + key);
         }
@@ -71,6 +79,7 @@ export default {
         if (this.$route.query.flag) {
             this.handleSelect(this.$route.query.flag);
         }
+        this.scrollTo(true);
     }
 };
 </script>
@@ -90,14 +99,17 @@ export default {
     background-repeat: no-repeat;
 }
 .appContainer {
-    background: #FFFFFF;
+    background: #ffffff;
 }
 .menu-left {
     // min-height: 600px;
-    background-color: #fff;
+    width: 200px;
+    height: 280px;
+    background: #ffffff;
+    box-shadow: 0px 0px 6px 0px #d2dbf0;
     .menu-left-con {
         height: 60px;
-        background: #405CFF;
+        background: #405cff;
         display: flex;
         padding-left: 34px;
         align-items: center;
@@ -107,6 +119,7 @@ export default {
         color: #ffffff;
         .menu-left-con-title {
             font-size: 16px;
+            font-weight: bold;
         }
         img {
             width: 24px;
@@ -131,6 +144,7 @@ export default {
         background: linear-gradient(90deg, rgba(64, 92, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%);
         color: #405cff;
         position: relative;
+        font-weight: bold;
     }
     &.is-active::after {
         content: '';
@@ -143,3 +157,4 @@ export default {
     }
 }
 </style>
+

+ 15 - 14
src/main/zhi-rong-web/src/views/user/Security.vue

@@ -38,12 +38,9 @@
                         </el-form-item>
                         <el-form-item label="验证码" prop="code">
                             <el-input style="width: 300px" v-model="ruleForm.code" placeholder="请输入4位验证码">
-                                <span
-                                    @click="send"
-                                    style="cursor: pointer; font-size: 13px"
-                                    slot="suffix"
-                                    >{{ time === 0 ? '发送验证码' : `重新发送${time}s` }}</span
-                                >
+                                <span @click="send" style="cursor: pointer; font-size: 13px" slot="suffix">{{
+                                    time === 0 ? '发送验证码' : `重新发送${time}s`
+                                }}</span>
                             </el-input>
                         </el-form-item>
                     </el-form>
@@ -208,7 +205,7 @@ export default {
 <style lang="less" scoped>
 /deep/.el-step:nth-child(1) {
     .el-step__icon {
-        background: #405CFF;
+        background: #405cff;
         color: #ffffff;
         border: 0;
     }
@@ -221,7 +218,7 @@ export default {
     }
 }
 /deep/ .el-step__title.is-finish {
-    color: #405CFF;
+    color: #405cff;
 }
 /deep/.el-step:nth-child(3) {
     .el-step__icon {
@@ -231,7 +228,7 @@ export default {
     }
 }
 /deep/ .el-input__suffix-inner {
-    color: #405CFF !important;
+    color: #405cff !important;
 }
 /deep/ .el-input__inner {
     height: 36px;
@@ -248,6 +245,9 @@ export default {
     color: #939599;
 }
 .container {
+    min-height: 560px;
+    background: #ffffff;
+    // box-shadow: 0px 0px 6px 0px #d2dbf0;
     .btn {
         text-align: center;
     }
@@ -280,9 +280,9 @@ export default {
         margin: 17px 20px 0;
     }
     /deep/ .el-button--primary {
-        background: #405CFF;
+        background: #405cff;
         border-radius: 4px;
-        border-color: #405CFF;
+        border-color: #405cff;
         box-sizing: border-box;
     }
     .box {
@@ -310,7 +310,7 @@ export default {
             .text3 {
                 font-size: 13px;
                 font-weight: 400;
-                color: #405CFF;
+                color: #405cff;
                 line-height: 18px;
                 cursor: pointer;
             }
@@ -318,7 +318,8 @@ export default {
     }
 }
 /deep/ .is-finish {
-    border-color: #405CFF !important;
-    color: #405CFF !important;
+    border-color: #405cff !important;
+    color: #405cff !important;
 }
 </style>
+

+ 18 - 19
src/main/zhi-rong-web/src/views/user/UserEdit.vue

@@ -3,8 +3,7 @@
         <div class="main_con" v-if="personalData === 1">
             <div class="title">个人资料</div>
             <div class="top">
-                <single-upload class="img" v-model="sizeForm.avatar" :modifyAvatar = true>
-                </single-upload>
+                <single-upload class="img" v-model="sizeForm.avatar" :modifyAvatar="true"> </single-upload>
                 <!-- <input id="uploadFile" @change="upload" type="file" accept="jpg,png,gif,jpeg" v-show="false" /> -->
                 <el-form :model="form" ref="form" label-width="0">
                     <el-form-item style="margin-left: -60px; margin-top: 80px; width: 400px" class="form_con">
@@ -60,11 +59,7 @@
             <mechanism-info @change-type="onChangeType"></mechanism-info>
         </div>
         <el-dialog center :visible.sync="authentications" width="610px">
-            <img
-            src="../../assets/icon_renzheng@3x.png"
-                alt=""
-                class="authentication_img"
-            />
+            <img src="../../assets/icon_renzheng@3x.png" alt="" class="authentication_img" />
             <div class="authentication_tip">当前为普通用户,请进行用户认证!</div>
             <div class="authentication_btn">
                 <div class="authentication_btn_one" @click="personalCertificationButton">个人认证</div>
@@ -257,9 +252,12 @@ export default {
 
 <style lang="less" scoped>
 .main {
-    background-color: #fff;
-    margin: 17px 20px 0;
-    margin-bottom: 40px;
+    min-height: 681px !important;
+    background: #ffffff;
+    .main_con {
+        margin: 17px 20px 0;
+        margin-bottom: 40px;
+    }
     .title {
         font-size: 16px;
         font-weight: bold;
@@ -272,7 +270,7 @@ export default {
         margin-left: 300px;
         margin-top: 30px;
         .img {
-            /deep/ .el-upload{
+            /deep/ .el-upload {
                 width: 148px;
                 height: 148px;
                 display: block;
@@ -333,17 +331,17 @@ export default {
     .authentication_btn_one {
         width: 110px;
         height: 36px;
-        background: rgba(64,92,255,0.1);
+        background: rgba(64, 92, 255, 0.1);
         border-radius: 4px;
-        border: 1px solid #405CFF;
+        border: 1px solid #405cff;
         margin-right: 20px;
-        color: #405CFF;
+        color: #405cff;
         line-height: 36px;
     }
     .authentication_btn_two {
         width: 110px;
         height: 36px;
-        background: #405CFF;
+        background: #405cff;
         border-radius: 4px;
         color: #ffffff;
         line-height: 36px;
@@ -370,7 +368,7 @@ export default {
 .real_name_con {
     display: flex;
 }
-.form_con{
+.form_con {
     border-bottom: 1px solid @bg;
 }
 .real_name {
@@ -420,7 +418,7 @@ export default {
         cursor: pointer;
         font-size: 13px;
         font-weight: 400;
-        color: #405CFF;
+        color: #405cff;
         line-height: 24px;
     }
     .real_name_three_con {
@@ -434,7 +432,7 @@ export default {
 .modify_account_number {
     font-size: 13px;
     font-weight: 400;
-    color: #405CFF;
+    color: #405cff;
     line-height: 24px;
     cursor: pointer;
     margin-left: 10px;
@@ -451,7 +449,7 @@ export default {
     margin-left: 15px;
     width: 221px;
     height: 36px;
-    background: #405CFF;
+    background: #405cff;
     border-radius: 4px;
     font-size: 13px;
     font-weight: bold;
@@ -460,3 +458,4 @@ export default {
     text-align: center;
 }
 </style>
+

+ 6 - 2
src/main/zhi-rong-web/src/views/user/UserMain.vue

@@ -89,7 +89,7 @@ export default {
     background: #ffffff;
 }
 .menu-left {
-    min-height: 600px;
+    min-height: 350px;
     background-color: #fff;
     box-shadow: 0px 0px 6px 0px #d2dbf0;
 }
@@ -106,6 +106,7 @@ export default {
 }
 .menu-left-con_title {
     font-size: 16px;
+    font-weight: bold;
 }
 .menu-left-con_img {
     width: 24px;
@@ -115,8 +116,9 @@ export default {
 .main {
     .flex-col();
     background-color: #fff;
+    box-shadow: 0px 0px 6px 0px #D2DBF0;
     flex-grow: 1;
-    min-height: 1100px;
+    // min-height: 1100px;
 }
 /deep/ .el-menu-item {
     // text-align: center;
@@ -127,6 +129,8 @@ export default {
     &.is-active {
         background: linear-gradient(90deg, rgba(64, 92, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%);
         color: #405cff;
+        position: relative;
+        font-weight: bold;
     }
 }
 &.is-active::after {

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/Copyright.vue

@@ -76,6 +76,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 .list {

+ 31 - 31
src/main/zhi-rong-web/src/views/user/publish/CopyrightDemandEdit.vue

@@ -158,36 +158,36 @@ export default {
                         message: `请输入需求${this.type === 'COPY' ? '作品' : '软著'}名称`,
                         trigger: 'blur'
                     }
-                ]
-                // workType: [
-                //     {
-                //         required: true,
-                //         message: `请选择需求${this.type === 'COPY' ? '作品' : '软著'}类型`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // description: [{ required: true, message: '请填写需求描述', trigger: 'blur' }],
-                // modeId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择预算方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
+                ],
+                workType: [
+                    {
+                        required: true,
+                        message: `请选择需求${this.type === 'COPY' ? '作品' : '软著'}类型`,
+                        trigger: 'blur'
+                    }
+                ],
+                description: [{ required: true, message: '请填写需求描述', trigger: 'blur' }],
+                modeId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择预算方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
             };
         }
     },
@@ -320,7 +320,7 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;

+ 38 - 38
src/main/zhi-rong-web/src/views/user/publish/CopyrightEdit.vue

@@ -188,43 +188,43 @@ export default {
                         message: `请输入${this.type === 'COPY' ? '版本' : '软著'}登记号`,
                         trigger: 'blur'
                     }
-                ]
-                // workType: [
-                //     { required: true, message: `请选择${this.type === 'COPY' ? '作品' : '软著'}类型`, trigger: 'blur' }
-                // ],
-                // author: [{ required: true, message: '请输入作者,按回车分割', trigger: 'blur' }],
-                // owner: [{ required: true, message: '请输入著作权人', trigger: 'blur' }],
-                // img: [
-                //     {
-                //         required: true,
-                //         message: `请上传${this.type === 'COPY' ? '作品' : '软著'}附图`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // tradingMethod: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择期望价方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
-                // contact: [{ required: true, message: '请输入联系人' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // commissionType: [{ required: true, message: '请选择佣金类型', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
+                ],
+                workType: [
+                    { required: true, message: `请选择${this.type === 'COPY' ? '作品' : '软著'}类型`, trigger: 'blur' }
+                ],
+                author: [{ required: true, message: '请输入作者,按回车分割', trigger: 'blur' }],
+                owner: [{ required: true, message: '请输入著作权人', trigger: 'blur' }],
+                img: [
+                    {
+                        required: true,
+                        message: `请上传${this.type === 'COPY' ? '作品' : '软著'}附图`,
+                        trigger: 'blur'
+                    }
+                ],
+                tradingMethod: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择期望价方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
+                contact: [{ required: true, message: '请输入联系人' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                commissionType: [{ required: true, message: '请选择佣金类型', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
             };
         }
     },
@@ -411,7 +411,7 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/Logo.vue

@@ -76,6 +76,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 .list {

+ 16 - 16
src/main/zhi-rong-web/src/views/user/publish/LogoEdit.vue

@@ -211,21 +211,21 @@ export default {
             },
             rules: {
                 name: [{ required: true, message: '请输入商标名称', trigger: 'blur' }],
-                code: [{ required: true, message: '请输入商标申请号', trigger: 'blur' }]
-                // logoType: [{ required: true, message: '请选择商标类型', trigger: 'blur' }],
-                // category: [{ required: true, message: '请选择所属分类', trigger: 'blur' }],
-                // servicesItem: [{ required: true, message: '请输入使用商品/服务项目', trigger: 'blur' }],
-                // owner: [{ required: true, message: '请输入商标注册人', trigger: 'blur' }],
-                // img: [{ required: true, message: '请上传商标附图', trigger: 'blur' }],
-                // tradingMethod: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
-                // expectedPrice: [{ required: true, validator: validatePrice, message: '请选择期望价方式' }],
-                // basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // commissionType: [{ required: true, message: '请选择佣金类型', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
+                code: [{ required: true, message: '请输入商标申请号', trigger: 'blur' }],
+                logoType: [{ required: true, message: '请选择商标类型', trigger: 'blur' }],
+                category: [{ required: true, message: '请选择所属分类', trigger: 'blur' }],
+                servicesItem: [{ required: true, message: '请输入使用商品/服务项目', trigger: 'blur' }],
+                owner: [{ required: true, message: '请输入商标注册人', trigger: 'blur' }],
+                img: [{ required: true, message: '请上传商标附图', trigger: 'blur' }],
+                tradingMethod: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
+                expectedPrice: [{ required: true, validator: validatePrice, message: '请选择期望价方式' }],
+                basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                commissionType: [{ required: true, message: '请选择佣金类型', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
             },
             logoTypeOptions: [
                 { label: '普通商标', value: 'GENERAL' },
@@ -406,7 +406,7 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/Patent.vue

@@ -77,6 +77,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 .list {

+ 22 - 21
src/main/zhi-rong-web/src/views/user/publish/PatentEdit.vue

@@ -292,26 +292,26 @@ export default {
             },
             rules: {
                 name: [{ required: true, message: '请输入专利名称', trigger: 'blur' }],
-                code: [{ required: true, message: '请输入专利申请号', trigger: 'blur' }]
-                // patentTypeId: [{ required: true, message: '请选择专利类型', trigger: 'blur' }],
-                // industryClass: [{ required: true, message: '请选择所属领域', trigger: 'blur' }],
-                // lawStatusId: [{ required: true, message: '请选择法律状态', trigger: 'blur' }],
-                // ownerType: [{ required: true, message: '请输入专利权人类型', trigger: 'blur' }],
-                // owner: [{ required: true, message: '请输入专利权人', trigger: 'blur' }],
-                // inventor: [{ required: true, message: '请输入发明人', trigger: 'blur' }],
-                // img: [{ required: true, message: '请上传专利附图', trigger: 'blur' }],
-                // applicant: [{ required: true, message: '请输入申请人', trigger: 'blur' }],
-                // digest: [{ required: true, message: '请填写专利摘要', trigger: 'blur' }],
-                // manual: [{ required: true, message: '请输入专利说明', trigger: 'blur' }],
-                // tradingMethodId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
-                // expectedPrice: [{ required: true, validator: validatePrice, message: '请选择期望价方式' }],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // commissionType: [{ required: true, message: '请选择佣金类型', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
+                code: [{ required: true, message: '请输入专利申请号', trigger: 'blur' }],
+                patentTypeId: [{ required: true, message: '请选择专利类型', trigger: 'blur' }],
+                industryClass: [{ required: true, message: '请选择所属领域', trigger: 'blur' }],
+                lawStatusId: [{ required: true, message: '请选择法律状态', trigger: 'blur' }],
+                ownerType: [{ required: true, message: '请输入专利权人类型', trigger: 'blur' }],
+                owner: [{ required: true, message: '请输入专利权人', trigger: 'blur' }],
+                inventor: [{ required: true, message: '请输入发明人', trigger: 'blur' }],
+                img: [{ required: true, message: '请上传专利附图', trigger: 'blur' }],
+                applicant: [{ required: true, message: '请输入申请人', trigger: 'blur' }],
+                digest: [{ required: true, message: '请填写专利摘要', trigger: 'blur' }],
+                manual: [{ required: true, message: '请输入专利说明', trigger: 'blur' }],
+                tradingMethodId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
+                expectedPrice: [{ required: true, validator: validatePrice, message: '请选择期望价方式' }],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                commissionType: [{ required: true, message: '请选择佣金类型', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
             },
             industryOptions: [],
             industryOption: [],
@@ -535,7 +535,8 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    // margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/TechProductDemand.vue

@@ -81,6 +81,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 .list {

+ 34 - 34
src/main/zhi-rong-web/src/views/user/publish/TechProductDemandEdit.vue

@@ -210,39 +210,39 @@ export default {
                         message: `请输入需求${this.tpType === 'TECHNOLOGY' ? '技术成果' : '产品'}名称`,
                         trigger: 'blur'
                     }
-                ]
-                // industry: [{ required: true, message: '请选择所属领域', trigger: 'blur' }],
-                // stage: [{ required: true, message: '请选择所处阶段', trigger: 'blur' }],
-                // patentType: [{ required: true, message: '请选择专利类型', trigger: 'blur' }],
-                // description: [{ required: true, message: '请填写需求描述', trigger: 'blur' }],
-                // isPatented: [
-                //     {
-                //         required: true,
-                //         message: `请选择是否需要专利${this.tpType === 'TECHNOLOGY' ? '技术' : '产品'}`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // modeId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择预算方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
+                ],
+                industry: [{ required: true, message: '请选择所属领域', trigger: 'blur' }],
+                stage: [{ required: true, message: '请选择所处阶段', trigger: 'blur' }],
+                patentType: [{ required: true, message: '请选择专利类型', trigger: 'blur' }],
+                description: [{ required: true, message: '请填写需求描述', trigger: 'blur' }],
+                isPatented: [
+                    {
+                        required: true,
+                        message: `请选择是否需要专利${this.tpType === 'TECHNOLOGY' ? '技术' : '产品'}`,
+                        trigger: 'blur'
+                    }
+                ],
+                modeId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择预算方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
             };
         },
         title() {
@@ -382,7 +382,7 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/TechnicalManager.vue

@@ -77,6 +77,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 .list {

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/TechnologyProduct.vue

@@ -77,6 +77,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 .list {

+ 64 - 64
src/main/zhi-rong-web/src/views/user/publish/TechnologyProductEdit.vue

@@ -240,69 +240,69 @@ export default {
                         message: `请输入${this.tpType === 'TECHNOLOGY' ? '成果' : '产品'}名称`,
                         trigger: 'blur'
                     }
-                ]
-                // field: [{ required: true, message: '请选择所属领域', trigger: 'blur' }],
-                // owner: [
-                //     {
-                //         required: true,
-                //         message: `请输入${this.tpType === 'TECHNOLOGY' ? '成果所属人' : '产品持有人'}`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // stage: [{ required: true, message: '请选择所处阶段', trigger: 'blur' }],
-                // img: [
-                //     {
-                //         required: true,
-                //         message: `请上传${this.tpType === 'TECHNOLOGY' ? '技术' : '产品'}附图`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // digest: [
-                //     {
-                //         required: true,
-                //         message: `请填写${this.tpType === 'TECHNOLOGY' ? '摘要' : '产品概述'}`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // manual: [
-                //     {
-                //         required: true,
-                //         message: `请输入${this.tpType === 'TECHNOLOGY' ? '成果' : '产品'}说明`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // patented: [
-                //     {
-                //         required: true,
-                //         message: `请选择是否专利${this.tpType === 'TECHNOLOGY' ? '技术' : '产品'}`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // patentNo: [{ required: true, message: '请输入包含专利号', trigger: 'blur' }],
-                // tradingMethod: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择期望价方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // commissionType: [{ required: true, message: '请选择佣金类型', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
+                ],
+                field: [{ required: true, message: '请选择所属领域', trigger: 'blur' }],
+                owner: [
+                    {
+                        required: true,
+                        message: `请输入${this.tpType === 'TECHNOLOGY' ? '成果所属人' : '产品持有人'}`,
+                        trigger: 'blur'
+                    }
+                ],
+                stage: [{ required: true, message: '请选择所处阶段', trigger: 'blur' }],
+                img: [
+                    {
+                        required: true,
+                        message: `请上传${this.tpType === 'TECHNOLOGY' ? '技术' : '产品'}附图`,
+                        trigger: 'blur'
+                    }
+                ],
+                digest: [
+                    {
+                        required: true,
+                        message: `请填写${this.tpType === 'TECHNOLOGY' ? '摘要' : '产品概述'}`,
+                        trigger: 'blur'
+                    }
+                ],
+                manual: [
+                    {
+                        required: true,
+                        message: `请输入${this.tpType === 'TECHNOLOGY' ? '成果' : '产品'}说明`,
+                        trigger: 'blur'
+                    }
+                ],
+                patented: [
+                    {
+                        required: true,
+                        message: `请选择是否专利${this.tpType === 'TECHNOLOGY' ? '技术' : '产品'}`,
+                        trigger: 'blur'
+                    }
+                ],
+                patentNo: [{ required: true, message: '请输入包含专利号', trigger: 'blur' }],
+                tradingMethod: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择期望价方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                basePrice: [{ required: true, message: '请输入底价', trigger: 'blur' }],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                commissionType: [{ required: true, message: '请选择佣金类型', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
             };
         }
     },
@@ -471,7 +471,7 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/copyrightDemand.vue

@@ -76,6 +76,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 .list {

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/logoDemand.vue

@@ -76,6 +76,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 /deep/ .el-pager li.active {

+ 12 - 12
src/main/zhi-rong-web/src/views/user/publish/logoDemandEdit.vue

@@ -145,17 +145,17 @@ export default {
             needChange: true,
             formData: {},
             rules: {
-                containText: [{ required: true, message: '请输入需求商标包含文字', trigger: 'blur' }]
-                // containLetter: [{ required: true, message: '请输入需求商标包含字母', trigger: 'blur' }],
-                // containGraphic: [{ required: true, message: '请输入需求商标包含图形元素', trigger: 'blur' }],
-                // category: [{ required: true, message: '请选择商标所属分类', trigger: 'blur' }],
-                // description: [{ required: true, message: '请填写需求描述', trigger: 'blur' }],
-                // modeId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
-                // expectedPrice: [{ required: true, validator: validatePrice, message: '请选择预算方式' }],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
+                containText: [{ required: true, message: '请输入需求商标包含文字', trigger: 'blur' }],
+                containLetter: [{ required: true, message: '请输入需求商标包含字母', trigger: 'blur' }],
+                containGraphic: [{ required: true, message: '请输入需求商标包含图形元素', trigger: 'blur' }],
+                category: [{ required: true, message: '请选择商标所属分类', trigger: 'blur' }],
+                description: [{ required: true, message: '请填写需求描述', trigger: 'blur' }],
+                modeId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
+                expectedPrice: [{ required: true, validator: validatePrice, message: '请选择预算方式' }],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
             },
             categoryOptions: [],
             tradingMethodOption
@@ -286,7 +286,7 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;

+ 1 - 0
src/main/zhi-rong-web/src/views/user/publish/patentDemand.vue

@@ -77,6 +77,7 @@ export default {
 
 <style lang="less" scoped>
 .contaniner {
+    min-height: 1100px;
     .flex-col();
 }
 .list {

+ 34 - 34
src/main/zhi-rong-web/src/views/user/publish/patentDemandEdit.vue

@@ -224,39 +224,39 @@ export default {
                         message: `请输入需求${this.caseType === 'DECLASSIFICATION' ? '脱密专利' : '专利'}名称`,
                         trigger: 'blur'
                     }
-                ]
-                // keyword: [
-                //     {
-                //         required: true,
-                //         message: `请输入需求${this.caseType === 'DECLASSIFICATION' ? '脱密专利' : '专利'}包含关键字`,
-                //         trigger: 'blur'
-                //     }
-                // ],
-                // patentTypeId: [{ required: true, message: '请选择专利类型', trigger: 'blur' }],
-                // patentStatusId: [{ required: true, message: '请选择法律状态', trigger: 'blur' }],
-                // industryClass: [{ required: true, message: '请选择所属领域', trigger: 'blur' }],
-                // description: [{ required: true, message: '请填写需求描述', trigger: 'blur' }],
-                // modeId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
-                // expectedPrice: [
-                //     {
-                //         required: true,
-                //         validator: (rule, value, callback) => {
-                //             if (!this.formData.negotiateDirectly) {
-                //                 if (!this.formData.expectedPrice) {
-                //                     callback(new Error('请选择预算方式'));
-                //                 } else {
-                //                     callback();
-                //                 }
-                //             } else {
-                //                 callback();
-                //             }
-                //         }
-                //     }
-                // ],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
+                ],
+                keyword: [
+                    {
+                        required: true,
+                        message: `请输入需求${this.caseType === 'DECLASSIFICATION' ? '脱密专利' : '专利'}包含关键字`,
+                        trigger: 'blur'
+                    }
+                ],
+                patentTypeId: [{ required: true, message: '请选择专利类型', trigger: 'blur' }],
+                patentStatusId: [{ required: true, message: '请选择法律状态', trigger: 'blur' }],
+                industryClass: [{ required: true, message: '请选择所属领域', trigger: 'blur' }],
+                description: [{ required: true, message: '请填写需求描述', trigger: 'blur' }],
+                modeId: [{ required: true, message: '请选择交易方式', trigger: 'blur' }],
+                expectedPrice: [
+                    {
+                        required: true,
+                        validator: (rule, value, callback) => {
+                            if (!this.formData.negotiateDirectly) {
+                                if (!this.formData.expectedPrice) {
+                                    callback(new Error('请选择预算方式'));
+                                } else {
+                                    callback();
+                                }
+                            } else {
+                                callback();
+                            }
+                        }
+                    }
+                ],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: [{ required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                address: [{ required: true, message: '请输入所在地区', trigger: 'blur' }]
             };
         }
     },
@@ -391,7 +391,7 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;

+ 12 - 12
src/main/zhi-rong-web/src/views/user/publish/technicalEdit.vue

@@ -125,17 +125,17 @@ export default {
             saving: false,
             formData: {},
             rules: {
-                name: [{ required: true, message: '请输入姓名', trigger: 'blur' }]
-                // sex: [{ required: true, message: '请选择性别', trigger: 'blur' }],
-                // qualification: [{ required: true, message: '请添加资质图片', trigger: 'blur' }],
-                // content: [{ required: true, message: '服务内容列表', trigger: 'blur' }],
-                // field: [{ required: true, message: '请选择专业领域', trigger: 'blur' }],
-                // contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-                // phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
-                // selfIntroduction: [{ required: true, message: '请填写主要业绩', trigger: 'blur' }],
-                // email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
-                // commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
-                // work: [{ required: true, message: '请输入所在单位', trigger: 'blur' }]
+                name: [{ required: true, message: '请输入姓名', trigger: 'blur' }],
+                sex: [{ required: true, message: '请选择性别', trigger: 'blur' }],
+                qualification: [{ required: true, message: '请添加资质图片', trigger: 'blur' }],
+                content: [{ required: true, message: '服务内容列表', trigger: 'blur' }],
+                field: [{ required: true, message: '请选择专业领域', trigger: 'blur' }],
+                contact: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
+                phone: { required: true, pattern: phonePattern, message: '请输入联系电话', trigger: 'blur' },
+                selfIntroduction: [{ required: true, message: '请填写主要业绩', trigger: 'blur' }],
+                email: [{ type: 'email', required: true, message: '请输入邮箱', trigger: 'blur' }],
+                commission: [{ required: true, message: '请输入佣金', trigger: 'blur' }],
+                work: [{ required: true, message: '请输入所在单位', trigger: 'blur' }]
             },
             fieldOptions: [],
             sexOptions: [
@@ -225,7 +225,7 @@ export default {
 }
 .main {
     background-color: #fff;
-    margin: 17px 20px 0;
+    padding: 17px 20px 0;
     padding-bottom: 60px;
     .btn {
         text-align: right;