Bladeren bron

Merge branch 'dev' of licailing/uwip into master

panhui 4 jaren geleden
bovenliggende
commit
de446aaff2

+ 2 - 0
src/main/java/com/izouma/uwip/domain/Partner.java

@@ -8,6 +8,7 @@ import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
+import org.hibernate.annotations.Where;
 
 import javax.persistence.Entity;
 import javax.persistence.EnumType;
@@ -18,6 +19,7 @@ import javax.persistence.Enumerated;
 @Builder
 @NoArgsConstructor
 @Entity
+@Where(clause = "del = 0")
 @ApiModel(value = "客户/供应商管理")
 public class Partner extends BaseEntity {
     /**

+ 2 - 1
src/main/java/com/izouma/uwip/web/LogoPatentController.java

@@ -40,7 +40,8 @@ public class LogoPatentController extends BaseController {
     @PostMapping("/all")
     public Page<LogoPatent> all(@RequestBody PageQuery pageQuery) {
         pageQuery.setSort("createdAt,desc");
-        Map<Long, String> partnerMap = partnerRepo.findAll()
+        List<Partner> partners = partnerRepo.findAll();
+        Map<Long, String> partnerMap = partners
                 .stream()
                 .collect(Collectors.toMap(Partner::getId, Partner::getName));
         return logoPatentService.all(pageQuery).map(logoPatent -> {

+ 6 - 1
src/main/java/com/izouma/uwip/web/PartnerController.java

@@ -1,4 +1,6 @@
 package com.izouma.uwip.web;
+
+import cn.hutool.core.util.StrUtil;
 import com.izouma.uwip.domain.Partner;
 import com.izouma.uwip.service.PartnerService;
 import com.izouma.uwip.dto.PageQuery;
@@ -20,11 +22,14 @@ import java.util.List;
 @AllArgsConstructor
 public class PartnerController extends BaseController {
     private PartnerService partnerService;
-    private PartnerRepo partnerRepo;
+    private PartnerRepo    partnerRepo;
 
     //@PreAuthorize("hasRole('ADMIN')")
     @PostMapping("/save")
     public Partner save(@RequestBody Partner record) {
+        if (StrUtil.isBlank(record.getName())) {
+            throw new BusinessException("名称不能为空");
+        }
         if (record.getId() != null) {
             Partner orig = partnerRepo.findById(record.getId()).orElseThrow(new BusinessException("无记录"));
             ObjUtils.merge(orig, record);

+ 2 - 2
src/main/vue/src/components/PageTitle.vue

@@ -36,8 +36,8 @@ export default {
 </script>
 <style lang="less" scoped>
 .page-title {
-    height: 70px;
-    min-height: 70px;
+    height: 86px;
+    min-height: 86px;
     background: white;
     &:before {
         content: '';

+ 46 - 7
src/main/vue/src/components/fee/FeeAdd.vue

@@ -33,7 +33,13 @@
                 </el-select>
             </el-form-item>
             <el-form-item prop="patentPartnerId" label="专利权人">
-                <el-select v-model="form.patentPartnerId" clearable filterable placeholder="请选择">
+                <el-select
+                    v-model="form.patentPartnerId"
+                    :disabled="isLogoPatent"
+                    clearable
+                    filterable
+                    placeholder="请选择"
+                >
                     <el-option
                         v-for="item in patentPartnerIdOptions"
                         :key="item.value"
@@ -55,7 +61,21 @@
                 </el-select>
             </el-form-item>
             <el-form-item prop="amount" label="金额">
-                <el-input-number type="number" v-model="form.amount"></el-input-number>
+                <el-input-number style="width: 170px;" type="number" v-model="form.amount"></el-input-number>
+                <el-select
+                    style="width: 100px; margin-left: 10px;"
+                    v-model="form.currencyMaintenanceId"
+                    filterable
+                    placeholder="请选择"
+                >
+                    <el-option
+                        v-for="item in currencyMaintenanceIdOptions"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                    >
+                    </el-option>
+                </el-select>
             </el-form-item>
             <el-form-item prop="paymentDeadline" label="支付期限">
                 <el-date-picker
@@ -68,7 +88,7 @@
                 </el-date-picker>
             </el-form-item>
             <el-form-item prop="remark" label="账单">
-                <el-input type="textarea" v-model="form.remark"></el-input>
+                <el-input v-model="form.remark"></el-input>
             </el-form-item>
             <el-form-item label="账单图片" prop="bill">
                 <attachment-upload v-model="form.bill"></attachment-upload>
@@ -90,6 +110,10 @@ export default {
             default: () => {
                 return {};
             }
+        },
+        isLogoPatent: {
+            type: Boolean,
+            default: false
         }
     },
     created() {
@@ -114,7 +138,7 @@ export default {
         this.$http
             .post('/partner/all', { size: 1000, query: { del: false } }, { body: 'json' })
             .then(res => {
-                this.patentPartnerIdOptions = res.map(item => {
+                this.patentPartnerIdOptions = res.content.map(item => {
                     return {
                         label: item.name,
                         value: item.id
@@ -126,10 +150,10 @@ export default {
                 this.$message.error(e.error);
             });
         this.$http
-            .post('/maintenance/getTree')
+            .post('/maintenance/byDesc', { description: 'Currency' })
             .then(res => {
                 if (res.length > 0) {
-                    res.content.forEach(item => {
+                    res[0].children.forEach(item => {
                         this.currencyMaintenanceIdOptions.push({
                             label: item.name,
                             value: item.id
@@ -147,7 +171,10 @@ export default {
             show: false,
             saving: false,
             form: {
-                bill: { fileName: '', url: '', remark: '', size: '' }
+                bill: { fileName: '', url: '', remark: '', size: '' },
+                currencyMaintenanceId: '人民币',
+                patentPartnerId: '',
+                payPartnerId: ''
             },
             rules: {},
             feeMaintenanceIdOptions: [],
@@ -180,6 +207,15 @@ export default {
         }
     },
     methods: {
+        init() {
+            if (this.isLogoPatent) {
+                this.$nextTick(() => {
+                    this.form.patentPartnerId = this.logoPatentInfo.clientPartnerId;
+                    this.form.payPartnerId = this.logoPatentInfo.supplierPartnerId;
+                    this.show = true;
+                });
+            }
+        },
         onSave() {
             this.$refs.form.validate(valid => {
                 if (valid) {
@@ -191,6 +227,9 @@ export default {
         },
         submit() {
             let data = { ...this.form };
+            delete data.bill;
+            data.billImg = this.form.bill.url;
+            data.billRemark = this.form.bill.remark;
 
             this.saving = true;
             this.$http

+ 39 - 16
src/main/vue/src/components/fee/FeeList.vue

@@ -13,25 +13,48 @@
             <el-table-column v-if="multipleMode" align="center" type="selection" width="50"> </el-table-column>
             <!-- <el-table-column prop="id" label="ID" width="100"> </el-table-column> -->
             <!-- <el-table-column prop="patentId" label="专利id"> </el-table-column> -->
-            <el-table-column prop="feeMaintenanceId" label="官费类型名称id"> </el-table-column>
-            <el-table-column prop="status" label="支付状态" :formatter="statusFormatter"> </el-table-column>
-            <el-table-column prop="patentPartnerId" label="专利权人"> </el-table-column>
-            <el-table-column prop="payPartnerId" label="支付对象"> </el-table-column>
-            <el-table-column prop="amount" label="金额"> </el-table-column>
-            <el-table-column prop="currencyMaintenanceId" label="币种"> </el-table-column>
-            <el-table-column prop="paymentDeadline" label="支付期限"> </el-table-column>
-            <el-table-column prop="paymentDate" label="支付日期"> </el-table-column>
-            <el-table-column prop="remark" label="备注"> </el-table-column>
-            <el-table-column prop="invoiceReturn" label="是否发票回传">
+            <el-table-column prop="feeType" label="费用种别" min-width="80px"> </el-table-column>
+            <el-table-column prop="feeName" label="费用种别" min-width="80px"> </el-table-column>
+            <el-table-column prop="status" label="支付状态" min-width="80px">
+                <template slot-scope="{ row }">
+                    <el-tag :type="row.status === 'UNPAID' ? 'warning' : ''">{{ statusFormatter(row.status) }}</el-tag>
+                </template>
+            </el-table-column>
+            <el-table-column prop="patentPartnerId" label="专利权人" min-width="120px"> </el-table-column>
+            <el-table-column prop="payPartnerId" label="支付对象" min-width="120px"> </el-table-column>
+            <el-table-column prop="amount" label="金额" min-width="120px"> </el-table-column>
+            <el-table-column prop="currencyMaintenanceId" label="币种" min-width="100px"> </el-table-column>
+            <el-table-column prop="paymentDeadline" label="支付期限" min-width="80px"> </el-table-column>
+            <el-table-column prop="remark" label="账单"> </el-table-column>
+            <el-table-column prop="billImg" label="账单图片">
                 <template slot-scope="{ row }">
-                    <el-tag :type="row.invoiceReturn ? '' : 'info'">{{ row.invoiceReturn }}</el-tag>
+                    <el-image
+                        style="width: 36px; height: 36px;"
+                        :src="row.billImg"
+                        fit="cover"
+                        :preview-src-list="[row.billImg]"
+                    ></el-image>
                 </template>
             </el-table-column>
-            <el-table-column prop="userId" label="userId"> </el-table-column>
-            <el-table-column label="操作" align="center" fixed="right" min-width="150">
+            <el-table-column prop="paymentDate" label="支付日期" min-width="80px">
                 <template slot-scope="{ row }">
-                    <el-button @click="editRow(row)" type="primary" size="mini" plain>编辑</el-button>
-                    <el-button @click="deleteRow(row)" type="danger" size="mini" plain>删除</el-button>
+                    <span v-if="row.status === 'UNPAID'" class="warning">未支付</span>
+
+                    <span v-else>{{ row.paymentDate }}</span>
+                </template>
+            </el-table-column>
+            <el-table-column prop="invoiceReturn" label="是否发票回传">
+                <template slot-scope="{ row }">
+                    <el-tag v-if="row.invoiceReturn" :type="row.invoiceReturn ? '' : 'info'">{{
+                        row.invoiceReturn
+                    }}</el-tag>
+                </template>
+            </el-table-column>
+            <!-- <el-table-column prop="userId" label="userId"> </el-table-column> -->
+            <el-table-column label="操作" align="center" fixed="right" min-width="150px">
+                <template>
+                    <el-button class="" type="primary" size="mini" plain>支付费用</el-button>
+                    <el-button type="danger" size="mini" plain>编辑</el-button>
                 </template>
             </el-table-column>
         </el-table>
@@ -79,7 +102,7 @@ export default {
                 }, 100);
             });
         },
-        statusFormatter(row, column, cellValue, index) {
+        statusFormatter(cellValue) {
             let selectedOption = this.statusOptions.find(i => i.value === cellValue);
             if (selectedOption) {
                 return selectedOption.label;

+ 1 - 0
src/main/vue/src/components/logoPatent/AttachmentAdd.vue

@@ -82,6 +82,7 @@ export default {
                     this.saving = false;
                     this.$message.success('成功');
                     this.show = false;
+                    this.$emit('refreash');
                 })
                 .catch(e => {
                     console.log(e);

+ 25 - 23
src/main/vue/src/components/logoPatent/BaseInfo.vue

@@ -13,7 +13,7 @@
                 inline
             >
                 <el-form-item prop="name" label="商标logo">
-                    <el-input v-model="formData.name" style="width: calc(400px + 10vw);"></el-input>
+                    <el-input v-model="formData.name" style="width: calc(400px + 10vw);" @change="submit"></el-input>
                 </el-form-item>
 
                 <el-form-item prop="applyStatus" label="案件状态">
@@ -29,7 +29,7 @@
                 </el-form-item>
 
                 <el-form-item prop="supplierPartnerId" label="供应商">
-                    <el-select v-model="formData.supplierPartnerId" filterable placeholder="请选择">
+                    <el-select v-model="formData.supplierPartnerId" filterable placeholder="请选择" @change="submit">
                         <el-option
                             v-for="item in supplierPartnerIdOptions"
                             :key="item.value"
@@ -43,7 +43,7 @@
                     <el-input disabled v-model="formData.uwNo"></el-input>
                 </el-form-item>
                 <el-form-item prop="clientPartnerId" label="客户">
-                    <el-select readonly v-model="formData.clientPartnerId" filterable placeholder="请选择">
+                    <el-select v-model="formData.clientPartnerId" filterable placeholder="请选择" @change="submit">
                         <el-option
                             v-for="item in clientPartnerIdOptions"
                             :key="item.value"
@@ -53,21 +53,20 @@
                         </el-option>
                     </el-select>
                 </el-form-item>
-                <el-form-item prop="id" label="商标申请号">
-                    <el-input v-model="formData.id" readonly></el-input>
+                <el-form-item prop="applyNo" label="商标申请号">
+                    <el-input v-model="formData.applyNo" @change="submit"></el-input>
                 </el-form-item>
-                <el-form-item prop="createdAt" label="商标申请日">
+                <el-form-item prop="applyDate" label="商标申请日" @change="submit">
                     <el-date-picker
-                        v-model="formData.createdAt"
+                        v-model="formData.applyDate"
                         type="date"
                         value-format="yyyy-MM-dd"
                         placeholder="选择日期"
-                        readonly
                     >
                     </el-date-picker>
                 </el-form-item>
                 <el-form-item prop="payRatio" label="支付比例">
-                    <el-select readonly v-model="formData.payRatio" placeholder="请选择">
+                    <el-select v-model="formData.payRatio" placeholder="请选择" @change="submit">
                         <el-option
                             v-for="item in payRatioOptions"
                             :key="item.value"
@@ -156,21 +155,24 @@ export default {
             });
         },
         submit() {
-            let data = { ...this.formData };
+            this.$emit('submit', this.formData);
+            // let data = { ...this.formData };
 
-            this.saving = true;
-            this.$http
-                .post('/logoPatent/save', data, { body: 'json' })
-                .then(res => {
-                    this.saving = false;
-                    this.$message.success('成功');
-                    this.$router.go(-1);
-                })
-                .catch(e => {
-                    console.log(e);
-                    this.saving = false;
-                    this.$message.error(e.error);
-                });
+            // this.saving = true;
+            // this.$http
+            //     .post('/logoPatent/save', data, { body: 'json' })
+            //     .then(res => {
+            //         this.saving = false;
+            //         this.$message.success('成功');
+            //         // this.$router.go(-1);
+
+            //         this.$emit('getInfo')
+            //     })
+            //     .catch(e => {
+            //         console.log(e);
+            //         this.saving = false;
+            //         this.$message.error(e.error);
+            //     });
         },
         onDelete() {
             this.$alert('删除将无法恢复,确认要删除么?', '警告', { type: 'error' })

+ 42 - 2
src/main/vue/src/components/logoPatent/Maintenance.vue

@@ -26,7 +26,7 @@
                     :fileSize.sync="form.attachment1.size"
                 ></attachment-upload>
             </el-form-item>
-            <el-form-item label="商标申请委托书" prop="urattachment2l">
+            <el-form-item label="商标申请委托书" prop="attachment2">
                 <attachment-upload
                     v-model="form.attachment2"
                     :fileSize.sync="form.attachment2.size"
@@ -99,7 +99,47 @@ export default {
             show: false,
             rules: {
                 supplierPartnerId: { required: true, message: '请选择供应商', trigger: 'change' },
-                url: { required: true, message: '请上传商标LOGO', trigger: 'change' }
+                url: { required: true, message: '请上传商标LOGO', trigger: 'change' },
+                attachment1: {
+                    validator: (rule, value, callback) => {
+                        if (!value.url) {
+                            callback(new Error('请上传商标LOGO'));
+                        } else {
+                            callback();
+                        }
+                    },
+                    trigger: 'change'
+                },
+                attachment2: {
+                    validator: (rule, value, callback) => {
+                        if (!value.url) {
+                            callback(new Error('请上传商标申请委托书'));
+                        } else {
+                            callback();
+                        }
+                    },
+                    trigger: 'change'
+                },
+                attachment3: {
+                    validator: (rule, value, callback) => {
+                        if (!value.url) {
+                            callback(new Error('请上传商标注册确认书'));
+                        } else {
+                            callback();
+                        }
+                    },
+                    trigger: 'change'
+                },
+                attachment4: {
+                    validator: (rule, value, callback) => {
+                        if (!value.url) {
+                            callback(new Error('请上传营业执照复印件'));
+                        } else {
+                            callback();
+                        }
+                    },
+                    trigger: 'change'
+                }
             },
             supplierPartnerIdOptions: []
         };

+ 23 - 3
src/main/vue/src/components/logoPatent/Signed.vue

@@ -21,11 +21,11 @@
                 </el-radio-group>
             </el-form-item>
             <template v-if="form.check">
-                <el-form-item label="江苏省商标委托代理合同(双方盖章)">
+                <el-form-item label="江苏省商标委托代理合同(双方盖章)" prop="attachment1">
                     <attachment-upload v-model="form.attachment1" :fileSize.sync="form.attachment1.size">
                     </attachment-upload>
                 </el-form-item>
-                <el-form-item label="收款回执">
+                <el-form-item label="收款回执" prop="attachment2">
                     <attachment-upload v-model="form.attachment2" :fileSize.sync="form.attachment2.size">
                     </attachment-upload>
                 </el-form-item>
@@ -86,7 +86,27 @@ export default {
                 { label: '首付50%', value: 'DOWN_PAYMENT_50' }
             ],
             rules: {
-                payRatio: { required: true, message: '请选择支付比例', trigger: 'change' }
+                payRatio: { required: true, message: '请选择支付比例', trigger: 'change' },
+                attachment1: {
+                    validator: (rule, value, callback) => {
+                        if (!value.url) {
+                            callback(new Error('请上传江苏省商标委托代理合同'));
+                        } else {
+                            callback();
+                        }
+                    },
+                    trigger: 'change'
+                },
+                attachment2: {
+                    validator: (rule, value, callback) => {
+                        if (!value.url) {
+                            callback(new Error('请上传收款回执'));
+                        } else {
+                            callback();
+                        }
+                    },
+                    trigger: 'change'
+                }
             }
         };
     },

+ 71 - 4
src/main/vue/src/styles/app.less

@@ -103,6 +103,35 @@ li {
         float: right;
         margin-right: 0;
     }
+
+    .el-input {
+        position: relative;
+        &.el-input--small .el-input__inner {
+            height: 32px;
+            line-height: 32px;
+        }
+
+        &.search {
+            .el-input-group__append {
+                position: absolute;
+                right: 0;
+                background-color: transparent;
+                top: 0;
+                bottom: 0;
+                line-height: 36px;
+                padding: 0 20px 0 10px;
+                border-width: 0;
+                cursor: pointer;
+            }
+            .el-input__inner {
+                padding-right: 5px;
+                width: 200px;
+            }
+            .el-input__suffix {
+                line-height: 28px;
+            }
+        }
+    }
 }
 
 .table-column-filter {
@@ -192,7 +221,19 @@ li {
         flex-grow: 1;
         flex-basis: 0;
         margin: 0 20px 0 20px;
+        padding-left: 20px;
         width: auto;
+        position: relative;
+        &::after {
+            content: '';
+            position: absolute;
+            top: 39px;
+            height: 1px;
+            left: 0;
+            right: 0;
+            background-color: #f2f3f5;
+            z-index: 20;
+        }
     }
 }
 .edit-view {
@@ -426,10 +467,36 @@ li {
 .el-dialog--center {
     .el-dialog__header {
         background: #f5f7fa;
-        font-size: 14px;
-        font-weight: bold;
-        color: #000000;
-        line-height: 50px;
         padding: 0;
+        .el-dialog__title {
+            font-size: 14px;
+            font-weight: bold;
+            color: #000000;
+            line-height: 50px;
+        }
+    }
+}
+
+// .el-table {
+//     padding: 0 20px;
+// }
+
+.table-box {
+    flex-grow: 1;
+    display: flex;
+    flex-direction: column;
+    background-color: #fff;
+    padding-left: 20px;
+    margin: 0 20px;
+    position: relative;
+    &::before {
+        content: '';
+        position: absolute;
+        top: 39px;
+        height: 1px;
+        left: 0;
+        right: 0;
+        background-color: #f2f3f5;
+        z-index: 20;
     }
 }

+ 10 - 10
src/main/vue/src/styles/element_theme/index.css

@@ -3924,7 +3924,7 @@
     }
 }
 .el-breadcrumb {
-    font-size: 14px;
+    font-size: 12px;
     line-height: 1;
 }
 .el-breadcrumb::after,
@@ -3937,8 +3937,8 @@
 }
 .el-breadcrumb__separator {
     margin: 0 9px;
-    font-weight: 700;
-    color: #c0c4cc;
+    font-weight: 400;
+    color: #C8C9CC;
 }
 .el-breadcrumb__separator[class*='icon'] {
     margin: 0 6px;
@@ -3948,15 +3948,15 @@
     float: left;
 }
 .el-breadcrumb__inner {
-    color: #606266;
+    color: #C8C9CC;
 }
 .el-breadcrumb__inner a,
 .el-breadcrumb__inner.is-link {
-    font-weight: 700;
+    font-weight: 400;
     text-decoration: none;
     -webkit-transition: color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
     transition: color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
-    color: #000000;
+    color: #494a4d;
 }
 .el-breadcrumb__inner a:hover,
 .el-breadcrumb__inner.is-link:hover {
@@ -3968,7 +3968,7 @@
 .el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover,
 .el-breadcrumb__item:last-child .el-breadcrumb__inner:hover {
     font-weight: 400;
-    color: #606266;
+    color: #C8C9CC;
     cursor: text;
 }
 .el-breadcrumb__item:last-child .el-breadcrumb__separator {
@@ -7864,7 +7864,7 @@
 }
 .el-upload__tip {
     font-size: 12px;
-    color: #C8C9CC;
+    color: #c8c9cc;
     margin-top: 8px;
     line-height: 22px;
 }
@@ -11789,8 +11789,8 @@
 }
 .el-button--mini,
 .el-button--mini.is-round {
-    padding: 7px 15px;
-    min-width: 80px;
+    padding: 6px 5px;
+    min-width: 60px;
 }
 .el-button--mini.is-circle {
     padding: 7px;

+ 2 - 2
src/main/vue/src/styles/element_theme/time-picker.css

@@ -1752,7 +1752,7 @@
     right: 5px;
     top: 0;
     text-align: center;
-    color: #C0C4CC;
+    color: #494A4D;
     -webkit-transition: all .3s;
     transition: all .3s;
     pointer-events: none; }
@@ -1841,7 +1841,7 @@
     display: table-cell; }
   .el-input-group__append, .el-input-group__prepend {
     background-color: #F5F7FA;
-    color: #909399;
+    color: #494A4D;
     vertical-align: middle;
     display: table-cell;
     position: relative;

+ 28 - 7
src/main/vue/src/views/LogoPatentAdd.vue

@@ -17,7 +17,8 @@
                     label-width="180px"
                     label-position="right"
                     size="small"
-                    style="max-width: 480px;"
+                    style="width: 480px;"
+                    hide-required-asterisk
                 >
                     <el-form-item prop="name" label="商标logo">
                         <el-input v-model="formData.name" placeholder="请输入注册的商标名"></el-input>
@@ -33,9 +34,8 @@
                             </el-option>
                         </el-select>
                     </el-form-item>
-                    <el-form-item label="商标查询报告书">
-                        <attachment-upload v-model="attachment">
-                            格式要求jpg/png/pdf/word,文件大小不超过5M
+                    <el-form-item label="商标查询报告书" prop="attachment1">
+                        <attachment-upload v-model="formData.attachment1" :fileSize.sync="formData.attachment1.size">
                         </attachment-upload>
                     </el-form-item>
                     <el-form-item class="form-submit">
@@ -82,7 +82,16 @@ export default {
     data() {
         return {
             saving: false,
-            formData: {},
+            formData: {
+                attachment1: {
+                    attachmentName: '商标查询报告书',
+                    fileName: '',
+                    url: '',
+                    remark: '',
+                    size: '',
+                    version: '1'
+                }
+            },
             attachment: {
                 attachmentName: '商标查询报告书',
                 fileName: '',
@@ -90,7 +99,18 @@ export default {
                 remark: ''
             },
             rules: {
-                name: { required: true, message: '请输入注册的商标名', trigger: 'blur' }
+                name: { required: true, message: '请输入注册的商标名', trigger: 'blur' },
+                clientPartnerId: { required: true, message: '请输入注册的商标名', trigger: 'blur' },
+                attachment1: {
+                    validator: (rule, value, callback) => {
+                        if (!value.url) {
+                            callback(new Error('请上传商标查询报告书'));
+                        } else {
+                            callback();
+                        }
+                    },
+                    trigger: 'change'
+                }
             },
             clientPartnerIdOptions: [],
             applyStatusOptions: [
@@ -133,7 +153,8 @@ export default {
 
             data.userId = this.$store.state.userInfo.id;
             data.applyStatus = 'APPLY_STAGE';
-            data.attachments = [{ ...this.attachment }];
+            delete data.attachment1;
+            data.attachments = [{ ...this.formData.attachment1 }];
 
             this.saving = true;
             this.$http

+ 4 - 4
src/main/vue/src/views/LogoPatentEdit.vue

@@ -4,7 +4,7 @@
         <el-tabs class="edit-tabs" v-model="activeName" @tab-click="tabClick">
             <div class="right-btns">
                 <!-- <el-button type="primary" size="small">新增答复</el-button> -->
-                <el-button type="primary" size="small">新增费用</el-button>
+                <el-button type="primary" size="small" @click="$refs.feeAdd.init()">新增费用</el-button>
                 <el-button type="primary" size="small" @click="$refs.attachmentAdd.show = true">新增附件</el-button>
                 <!-- <el-button type="primary" size="small">分案/接续流程</el-button> -->
             </div>
@@ -27,7 +27,7 @@
                 <el-button @click="action" type="text" size="small">立即处理</el-button>
             </div>
             <el-tab-pane label="基本信息" name="first">
-                <base-info ref="base" :info.sync="formData"></base-info>
+                <base-info ref="base" :info.sync="formData" @submit="submit"></base-info>
             </el-tab-pane>
             <el-tab-pane label="附件列表" name="second">
                 <attachment-list ref="attachmentList" :logoPatentInfo="formData"></attachment-list>
@@ -40,7 +40,7 @@
 
         <signed ref="sign" :info="formData" @submit="submit" @uploadAttement="uploadAttement"></signed>
 
-        <attachment-add ref="attachmentAdd" :info="formData"></attachment-add>
+        <attachment-add ref="attachmentAdd" :info="formData" @refreash="init"></attachment-add>
 
         <maintenance ref="maintenance" :info="formData" @submit="submit" @uploadAttement="uploadAttement"></maintenance>
         <accept ref="accept" :info="formData" @submit="submit" @uploadAttement="uploadAttement"></accept>
@@ -66,7 +66,7 @@
         <review-se-s ref="reviewSeS" :info="formData" @submit="submit" @uploadAttement="uploadAttement"></review-se-s>
 
         <review-se-t ref="reviewSeT" :info="formData" @submit="submit" @uploadAttement="uploadAttement"></review-se-t>
-        <fee-add ref="feeAdd" :logoPatentInfo="formData"></fee-add>
+        <fee-add ref="feeAdd" isLogoPatent :logoPatentInfo="formData" @refreash="init"></fee-add>
     </div>
 </template>
 <script>

+ 2 - 2
src/main/vue/src/views/LogoPatentList.vue

@@ -38,8 +38,8 @@
             <el-table-column prop="createdAt" label="商标申请日"> </el-table-column>
             <el-table-column prop="clientPartner" label="客户"> </el-table-column>
             <el-table-column prop="supplierPartner" label="供应商"> </el-table-column>
-            <el-table-column prop="id" label="商标申请号"> </el-table-column>
-            <el-table-column label="操作" align="center" fixed="right" min-width="150">
+            <el-table-column prop="applyNo" label="商标申请号"> </el-table-column>
+            <el-table-column label="操作" align="center" fixed="right" min-width="80">
                 <template slot-scope="{ row }">
                     <el-button @click="editRow(row)" type="primary" size="mini" plain>查看详情</el-button>
                     <!-- <el-button @click="deleteRow(row)" type="danger" size="mini" plain>删除</el-button> -->

+ 1 - 1
src/main/vue/src/views/PartnerEdit.vue

@@ -11,7 +11,7 @@
                     label-width="110px"
                     label-position="right"
                     size="small"
-                    style="max-width: 100%;"
+                    style="width: 900px;"
                     class="line"
                 >
                     <el-form-item prop="type" label="type" v-if="!formData.type">

+ 1 - 1
src/main/vue/src/views/PartnerList.vue

@@ -46,7 +46,7 @@
             <el-table-column prop="billingPhone" label="开票电话"> </el-table-column>
             <el-table-column prop="accountBank" label="开户行"> </el-table-column>
             <el-table-column prop="account" label="账号"> </el-table-column>
-            <el-table-column label="操作" align="center" fixed="right" min-width="150">
+            <el-table-column label="操作" align="center" fixed="right" min-width="200">
                 <template slot-scope="{ row }">
                     <el-button @click="editRow(row)" type="primary" size="mini" plain>编辑</el-button>
                     <el-button @click="deleteRow(row)" type="danger" size="mini" plain>删除</el-button>

+ 18 - 0
src/test/java/com/izouma/uwip/web/LogoPatentControllerTest.java

@@ -0,0 +1,18 @@
+package com.izouma.uwip.web;
+
+import com.izouma.uwip.ApplicationTests;
+import com.izouma.uwip.dto.PageQuery;
+import org.junit.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+
+
+public class LogoPatentControllerTest extends ApplicationTests {
+
+    @Autowired
+    private LogoPatentController logoPatentController;
+
+    @Test
+    public void all() {
+        logoPatentController.all(new PageQuery());
+    }
+}