Browse Source

评星定级修改

licailing 5 years ago
parent
commit
8b24fb9f90

+ 3 - 0
src/main/java/com/izouma/wenlvju/domain/Organization.java

@@ -26,6 +26,9 @@ public class Organization extends BaseEntity {
     @ApiModelProperty(value = "承办单位名称")
     private String name;
 
+    @ApiModelProperty(value = "考级机构名称")
+    private String examinationAgency;
+
     @ApiModelProperty(value = "统一社会信用代码")
     private String uscc;
 

+ 0 - 1
src/main/java/com/izouma/wenlvju/domain/Record.java

@@ -1,6 +1,5 @@
 package com.izouma.wenlvju.domain;
 
-import com.alibaba.excel.annotation.ExcelProperty;
 import com.izouma.wenlvju.annotations.Searchable;
 import com.izouma.wenlvju.enums.RecordStatus;
 import com.izouma.wenlvju.enums.RegulatoryStatus;

+ 2 - 0
src/main/java/com/izouma/wenlvju/dto/OrganizationRegDTO.java

@@ -28,6 +28,8 @@ public class OrganizationRegDTO {
     private String businessLicense;
 
     private String district;
+
+    private String examinationAgency;
 //    private List<String> district1;
 
 }

+ 1 - 0
src/main/java/com/izouma/wenlvju/service/UserService.java

@@ -239,6 +239,7 @@ public class UserService {
                         .name(dto.getOrganizationName())
 //                        .district1(dto.getDistrict1())
                         .district(dto.getDistrict())
+                        .examinationAgency(dto.getExaminationAgency())
                         .build());
 
         return user;

+ 42 - 10
src/main/vue/src/views/Login.vue

@@ -14,27 +14,58 @@
                     <el-form-item prop="password" :rules="{ required: true, message: '请输入密码', trigger: 'blur' }">
                         <el-input v-model="registerInfo.password" placeholder="密码" type="password"></el-input>
                     </el-form-item>
-                    <!-- <el-form-item prop="nickname" :rules="{ required: true, message: '请输入昵称', trigger: 'blur' }">
-                        <el-input v-model="registerInfo.nickname" placeholder="昵称"> </el-input>
-                    </el-form-item> -->
-                    <el-form-item prop="phone" :rules="{ required: true, message: '请输入手机号', trigger: 'blur' }">
+                    <el-form-item
+                        prop="organizationName"
+                        :rules="{ required: true, message: '请输入承办单位名称', trigger: 'blur' }"
+                    >
+                        <el-input v-model="registerInfo.organizationName" placeholder="承办单位名称"> </el-input>
+                    </el-form-item>
+                    <el-form-item
+                        prop="phone"
+                        :rules="{
+                            required: true,
+                            message: '请输入正确的手机号',
+                            pattern: /^1[3-9]\d{9}$/,
+                            trigger: 'blur'
+                        }"
+                    >
                         <el-input v-model="registerInfo.phone" placeholder="手机号"> </el-input>
                     </el-form-item>
-                    <el-form-item prop="email" :rules="{ required: true, message: '请输入电子邮箱', trigger: 'blur' }">
+                    <el-form-item
+                        prop="email"
+                        :rules="{
+                            required: true,
+                            message: '请输入正确的电子邮箱',
+                            pattern: /^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/,
+                            trigger: 'blur'
+                        }"
+                    >
                         <el-input v-model="registerInfo.email" placeholder="电子邮箱"> </el-input>
                     </el-form-item>
                     <el-form-item
-                        prop="organizationName"
-                        :rules="{ required: true, message: '请输入机构名称', trigger: 'blur' }"
+                        prop="examinationAgency"
+                        :rules="{ required: true, message: '请选择发证机构', trigger: 'blur' }"
                     >
-                        <el-input v-model="registerInfo.organizationName" placeholder="机构名称"> </el-input>
+                        <el-select
+                            v-model="registerInfo.examinationAgency"
+                            placeholder="请选择发证机构"
+                            style="width: 350px"
+                        >
+                            <el-option
+                                v-for="(item, index) in examination"
+                                :key="index"
+                                :value="item"
+                                :label="item"
+                            ></el-option>
+                        </el-select>
+                        <!-- <el-input v-model="registerInfo.organizationName" placeholder="发证机构"> </el-input> -->
                     </el-form-item>
                     <el-form-item
                         prop="district"
                         :rules="{ required: true, message: '请选择注册地址', trigger: 'blur' }"
                     >
                         <!-- <district-choose v-model="registerInfo.district"></district-choose> -->
-                        <el-select v-model="registerInfo.district">
+                        <el-select v-model="registerInfo.district" placeholder="请选择注册地址" style="width: 350px">
                             <el-option
                                 v-for="(item, index) in districtOptions"
                                 :key="index"
@@ -162,7 +193,8 @@ export default {
             activeName: 'first',
             time: 0,
             sending: false,
-            districtOptions: []
+            districtOptions: [],
+            examination: ['中国音乐学院', '中国艺术科技研究所', '北京舞蹈学院']
         };
     },
     created() {

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

@@ -6,14 +6,14 @@
             label-width="50px"
             label-position="right"
             size="small"
-            style="max-width: 600px;"
+            style="max-width: 620px;"
         >
             <div class="info-content">
                 <div class="tag" v-if="grade">{{ grade }}</div>
                 <div class="info-item">
-                    <div class="name">机构名称</div>
+                    <div class="name">承办单位名称</div>
                     <div class="val">
-                        <el-input v-model="formData.name" placeholder="请输入机构名称" readonly></el-input>
+                        <el-input v-model="formData.name" placeholder="请输入承办单位名称" readonly></el-input>
                     </div>
                 </div>
                 <div class="info-item">
@@ -286,7 +286,7 @@ export default {
             font-weight: 400;
             color: #565b66;
             line-height: 22px;
-            min-width: 65px;
+            min-width: 76px;
             margin-right: 10px;
             text-align: right;
         }

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

@@ -32,7 +32,7 @@
             <el-table-column prop="score" label="分数">
                 <template slot-scope="{ row }">
                     <span v-if="row.score">{{ row.score }}</span>
-                    <span v-else>审核中</span>
+                    <span v-else>暂无</span>
                 </template>
             </el-table-column>
             <el-table-column prop="grade" label="等级">
@@ -40,7 +40,7 @@
                     <span v-if="row.grade == 'EXCELLENT'"><el-tag type="success">优秀</el-tag></span>
                     <span v-else-if="row.grade == 'ELIGIBLE'"><el-tag type="warning">合格</el-tag></span>
                     <span v-else-if="row.grade == 'NOT_ELIGIBLE'"><el-tag type="danger">不合格</el-tag></span>
-                    <span v-else><el-tag type="info">审核中</el-tag></span>
+                    <span v-else><el-tag type="info">暂无</el-tag></span>
                 </template>
             </el-table-column>
             <el-table-column label="操作" align="right" fixed="right" min-width="200">

+ 18 - 2
src/main/vue/src/views/UserList.vue

@@ -74,16 +74,22 @@ export default {
         };
     },
     computed: {
-        ...mapState([]),
+        ...mapState(['userInfo']),
         selection() {
             return this.$refs.table.selection.map(i => i.id);
         }
     },
     methods: {
         beforeGetData() {
+            let data = { sort: 'createdAt,desc', query: {} };
             if (this.search) {
-                return { search: this.search };
+                data.search = this.search;
             }
+            console.log(this.getAdmin());
+            if (!this.getAdmin()) {
+                data.query.id = this.userInfo.id;
+            }
+            return data;
         },
         toggleMultipleMode(multipleMode) {
             this.multipleMode = multipleMode;
@@ -167,6 +173,16 @@ export default {
                         this.$message.error(e.error);
                     });
             }
+        },
+        getAdmin() {
+            let data = this.userInfo.authorities;
+            let flag = false;
+            data.forEach(element => {
+                if (element.name === 'ROLE_ADMIN') {
+                    flag = true;
+                }
+            });
+            return flag;
         }
     }
 };

+ 18 - 7
src/main/vue/src/views/organization/OrganizationInfo.vue

@@ -7,7 +7,7 @@
             label-width="50px"
             label-position="right"
             size="small"
-            style="max-width: 600px;"
+            style="max-width: 620px;"
         >
             <div class="info-content">
                 <div class="info-item">
@@ -17,9 +17,16 @@
                     </div>
                 </div>
                 <div class="info-item">
-                    <div class="name">昵称</div>
+                    <div class="name">发证机构</div>
                     <div class="val">
-                        <el-input v-model="userInfo.nickname" placeholder="请输入昵称"></el-input>
+                        <el-select v-model="examinationAgency" placeholder="请选择发证机构">
+                            <el-option
+                                v-for="(item, index) in examination"
+                                :key="index"
+                                :value="item"
+                                :label="item"
+                            ></el-option>
+                        </el-select>
                     </div>
                 </div>
 
@@ -39,9 +46,9 @@
 
             <div class="info-content">
                 <div class="info-item">
-                    <div class="name">机构名称</div>
+                    <div class="name">承办单位名称</div>
                     <div class="val">
-                        <el-input v-model="formData.name" placeholder="请输入机构名称"></el-input>
+                        <el-input v-model="formData.name" placeholder="请输入承办单位名称"></el-input>
                     </div>
                 </div>
                 <div class="info-item">
@@ -135,6 +142,7 @@ export default {
         //         this.$message.error(e.error);
         //     });
         this.formData = this.organization;
+        this.examinationAgency = this.organization.examinationAgency;
         this.$http
             .get('/district/NJ', { size: 1000, query: { del: false } })
             .then(res => {
@@ -159,7 +167,9 @@ export default {
             rules: {},
             districtOptions: [],
             readonly: true,
-            district: []
+            district: [],
+            examination: ['中国音乐学院', '中国艺术科技研究所', '北京舞蹈学院'],
+            examinationAgency: ''
         };
     },
     methods: {
@@ -175,6 +185,7 @@ export default {
         },
         submit() {
             let data = { ...this.formData };
+            data.examinationAgency = this.examinationAgency;
             this.saving = true;
             this.$http
                 .post('/organization/save', data, { body: 'json' })
@@ -261,7 +272,7 @@ export default {
             font-weight: 400;
             color: #565b66;
             line-height: 22px;
-            min-width: 65px;
+            min-width: 75px;
             margin-right: 10px;
             text-align: right;
         }

+ 104 - 64
src/main/vue/src/views/organization/RateEdit.vue

@@ -4,83 +4,101 @@
             :model="formData"
             :rules="rules"
             ref="form"
-            label-width="0"
+            label-width="110px"
             label-position="right"
             size="small"
-            style="max-width: 600px;"
+            style="max-width: 620px;"
         >
             <div class="info-content">
                 <!-- <div class="tag" v-if="grade">{{ grade }}</div> -->
                 <div class="info-item">
-                    <div class="name">机构名称</div>
+                    <!-- <div class="name">机构名称</div> -->
                     <div class="val">
-                        <!-- <el-form-item prop="name"> -->
-                        <el-input v-model="formData.name" placeholder="请输入机构名称" :readonly="readonly"></el-input>
-                        <!-- </el-form-item> -->
+                        <el-form-item prop="name" label="承办单位名称">
+                            <el-input
+                                v-model="formData.name"
+                                placeholder="请输入承办单位名称"
+                                :readonly="readonly"
+                            ></el-input>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item">
-                    <div class="name">负责人邮箱</div>
+                    <!-- <div class="name">负责人邮箱</div> -->
                     <div class="val">
-                        <!-- <el-form-item prop="name"> -->
-                        <el-input
-                            v-model="formData.ownerEmail"
-                            placeholder="请输入负责人邮箱"
-                            :readonly="readonly"
-                        ></el-input>
-                        <!-- </el-form-item> -->
+                        <el-form-item prop="name" label="负责人邮箱">
+                            <el-input
+                                v-model="formData.ownerEmail"
+                                placeholder="请输入负责人邮箱"
+                                :readonly="readonly"
+                            ></el-input>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item">
-                    <div class="name">负责人</div>
+                    <!-- <div class="name">负责人</div> -->
                     <div class="val">
-                        <el-input v-model="formData.owner" placeholder="请输入负责人" :readonly="readonly"></el-input>
+                        <el-form-item prop="owner" label="负责人">
+                            <el-input
+                                v-model="formData.owner"
+                                placeholder="请输入负责人"
+                                :readonly="readonly"
+                            ></el-input>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item">
-                    <div class="name">负责人电话</div>
+                    <!-- <div class="name">负责人电话</div> -->
                     <div class="val">
-                        <el-input
-                            v-model="formData.ownerPhone"
-                            placeholder="请输入负责人电话"
-                            :readonly="readonly"
-                        ></el-input>
+                        <el-form-item prop="ownerPhone" label="负责人电话">
+                            <el-input
+                                v-model="formData.ownerPhone"
+                                placeholder="请输入负责人电话"
+                                :readonly="readonly"
+                            ></el-input>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item">
-                    <div class="name">地址</div>
+                    <!-- <div class="name">地址</div> -->
                     <div class="val">
-                        <el-select v-model="formData.district" style="width:100%">
-                            <el-option
-                                v-for="item in districts"
-                                :key="item.id"
-                                :value="item.name"
-                                :label="item.name"
-                                :disabled="readonly"
-                            ></el-option>
-                        </el-select>
+                        <el-form-item prop="district" label="地址">
+                            <el-select v-model="formData.district" style="width:100%">
+                                <el-option
+                                    v-for="item in districts"
+                                    :key="item.id"
+                                    :value="item.name"
+                                    :label="item.name"
+                                    :disabled="readonly"
+                                ></el-option>
+                            </el-select>
+                        </el-form-item>
                     </div>
                 </div>
 
                 <div class="info-item address">
-                    <div class="name">单位概况</div>
+                    <!-- <div class="name">单位概况</div> -->
                     <div class="val">
-                        <el-input
-                            :readonly="readonly"
-                            type="textarea"
-                            :autosize="{ minRows: 4, maxRows: 6 }"
-                            placeholder="请输入单位概况"
-                            v-model="formData.introduction"
-                        ></el-input>
+                        <el-form-item prop="introduction" label="单位概况">
+                            <el-input
+                                :readonly="readonly"
+                                type="textarea"
+                                :autosize="{ minRows: 4, maxRows: 6 }"
+                                placeholder="请输入单位概况"
+                                v-model="formData.introduction"
+                            ></el-input>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item address">
-                    <div class="name">考级活动</div>
+                    <!-- <div class="name">考级活动</div> -->
                     <div class="val">
-                        <el-radio-group v-model="formData.undertakeExamination" size="small" :disabled="readonly">
-                            <el-radio class="name" :label="true">承办过</el-radio>
-                            <el-radio class="name" :label="false">未承办过</el-radio>
-                        </el-radio-group>
+                        <el-form-item prop="undertakeExamination" label="考级活动">
+                            <el-radio-group v-model="formData.undertakeExamination" size="small" :disabled="readonly">
+                                <el-radio class="name" :label="true">承办过</el-radio>
+                                <el-radio class="name" :label="false">未承办过</el-radio>
+                            </el-radio-group>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item address" v-if="formData.undertakeExamination">
@@ -121,42 +139,54 @@
             </div>
             <div class="info-content">
                 <div class="info-item address">
-                    <div class="name">法人资格</div>
+                    <!-- <div class="name">法人资格</div> -->
                     <div class="val">
-                        <file-upload v-model="formData.privacyPolicy" :readonly="readonly"></file-upload>
-                        <!-- <single-upload v-model="formData.privacyPolicy"></single-upload> -->
+                        <el-form-item prop="privacyPolicy" label="法人资格">
+                            <file-upload v-model="formData.privacyPolicy" :readonly="readonly"></file-upload>
+                            <!-- <single-upload v-model="formData.privacyPolicy"></single-upload> -->
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item address">
-                    <div class="name">业务内容</div>
+                    <!-- <div class="name">业务内容</div> -->
                     <div class="val">
-                        <file-upload v-model="formData.business" :readonly="readonly"></file-upload>
+                        <el-form-item prop="business" label="业务内容">
+                            <file-upload v-model="formData.business" :readonly="readonly"></file-upload>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item address">
-                    <div class="name">社会信誉</div>
+                    <!-- <div class="name">社会信誉</div> -->
                     <div class="val">
-                        <file-upload v-model="formData.credits" :readonly="readonly"></file-upload>
+                        <el-form-item prop="credits" label="社会信誉">
+                            <file-upload v-model="formData.credits" :readonly="readonly"></file-upload>
+                        </el-form-item>
                     </div>
                 </div>
             </div>
             <div class="info-content">
                 <div class="info-item address">
-                    <div class="name">消防卫生</div>
+                    <!-- <div class="name">消防卫生</div> -->
                     <div class="val">
-                        <file-upload v-model="formData.fire" :readonly="readonly"></file-upload>
+                        <el-form-item prop="fire" label="消防卫生">
+                            <file-upload v-model="formData.fire" :readonly="readonly"></file-upload>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item address">
-                    <div class="name">财务报表</div>
+                    <!-- <div class="name">财务报表</div> -->
                     <div class="val">
-                        <file-upload v-model="formData.finance" :readonly="readonly"></file-upload>
+                        <el-form-item prop="finance" label="财务报表">
+                            <file-upload v-model="formData.finance" :readonly="readonly"></file-upload>
+                        </el-form-item>
                     </div>
                 </div>
                 <div class="info-item address">
-                    <div class="name">房产证明</div>
+                    <!-- <div class="name">房产证明</div> -->
                     <div class="val">
-                        <file-upload v-model="formData.property" :readonly="readonly"></file-upload>
+                        <el-form-item prop="property" label="房产证明">
+                            <file-upload v-model="formData.property" :readonly="readonly"></file-upload>
+                        </el-form-item>
                     </div>
                 </div>
             </div>
@@ -292,7 +322,14 @@ export default {
             rules: {
                 name: [{ required: true, message: '请输入机构名称', trigger: 'blur' }],
                 owner: [{ required: true, message: '请输入负责人', trigger: 'blur' }],
-                ownerEmail: [{ required: true, message: '请输入邮箱', trigger: 'blur' }],
+                ownerEmail: [
+                    {
+                        required: true,
+                        pattern: /^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/,
+                        message: '请输入邮箱',
+                        trigger: 'blur'
+                    }
+                ],
                 ownerPhone: [
                     {
                         required: true,
@@ -301,6 +338,7 @@ export default {
                         trigger: 'blur'
                     }
                 ],
+                district: [{ required: true, message: '请选择注册地址', trigger: 'blur' }],
                 introduction: [{ required: true, message: '请输入单位概况', trigger: 'blur' }],
                 undertakeExamination: [{ required: true, message: '请选择是否承办过考级活动', trigger: 'blur' }],
                 privacyPolicy: [
@@ -427,7 +465,7 @@ export default {
 <style lang="less" scoped>
 .info-content {
     background: #f5f7fa;
-    padding: 30px 25px 25px;
+    padding: 30px 10px 25px;
     margin: 2px auto;
     display: flex;
     flex-wrap: wrap;
@@ -437,13 +475,13 @@ export default {
         width: 50%;
         display: flex;
         align-items: center;
-        margin-bottom: 10px;
+        // margin-bottom: 10px;
 
         &.address {
             width: 100%;
             align-items: flex-start;
             .val {
-                width: 465px;
+                width: 580px;
             }
         }
 
@@ -459,7 +497,8 @@ export default {
         }
 
         .val {
-            width: 190px;
+            // width: 190px;
+            width: 280px;
         }
 
         .input {
@@ -481,13 +520,14 @@ export default {
     }
 }
 .el-tag + .el-tag {
-    margin-left: 10px;
+    margin-left: 30px;
     // margin-bottom: 10px;
 }
 .el-tag-height {
     line-height: 30px;
     height: 32px !important;
     margin-bottom: 10px;
+    margin-left: 30px;
 }
 .button-new-tag {
     // margin-left: 10px;

+ 3 - 3
src/main/vue/src/views/organization/RateOrganizerList.vue

@@ -30,13 +30,13 @@
             <el-table-column prop="submit" label="提交">
                 <template slot-scope="{ row }">
                     <span v-if="row.submit">已提交</span>
-                    <span v-else>未提交</span>
+                    <span v-else>草稿</span>
                 </template>
             </el-table-column>
             <el-table-column prop="score" label="分数">
                 <template slot-scope="{ row }">
                     <span v-if="row.score">{{ row.score }}</span>
-                    <span v-else>审核中</span>
+                    <span v-else>暂无</span>
                 </template>
             </el-table-column>
             <el-table-column prop="grade" label="等级">
@@ -44,7 +44,7 @@
                     <span v-if="row.grade == 'EXCELLENT'"><el-tag type="success">优秀</el-tag></span>
                     <span v-else-if="row.grade == 'ELIGIBLE'"><el-tag type="warning">合格</el-tag></span>
                     <span v-else-if="row.grade == 'NOT_ELIGIBLE'"><el-tag type="danger">不合格</el-tag></span>
-                    <span v-else><el-tag type="info">审核中</el-tag></span>
+                    <span v-else><el-tag type="info">暂无</el-tag></span>
                 </template>
             </el-table-column>
             <el-table-column label="操作" align="center" fixed="right" min-width="150">