Sfoglia il codice sorgente

Merge branch 'master' of http://47.100.37.243:10080/ZHOU/yunsu

# Conflicts:
#	cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/MouldFileServiceImpl.java
sunyadv 5 anni fa
parent
commit
4386e05e1f
2 ha cambiato i file con 179 aggiunte e 35 eliminazioni
  1. 92 1
      ys_vue/src/views/base/comp.vue
  2. 87 34
      ys_vue/src/views/project/projectDetail.vue

+ 92 - 1
ys_vue/src/views/base/comp.vue

@@ -49,6 +49,7 @@
         <!--新增界面-->
 		<el-dialog title="新增资产方" v-if="addFormVisible" :visible.sync="addFormVisible" :close-on-click-modal="false" customClass='customWidth'>
 			<el-form :model="addForm" label-width="100px" :rules="formRules" ref="addForm">
+                <h3>资产方信息:</h3>
 				<el-form-item label="资产方名称" prop="companyName">
 					<el-input v-model="addForm.companyName" autocomplete="off" placeholder="请输入资产方地址"></el-input>
 				</el-form-item>
@@ -61,8 +62,22 @@
                 <el-form-item label="资产方地址" prop="companyAddress">
 					<el-input v-model="addForm.companyAddress" autocomplete="off" placeholder="请输入资产方地址"></el-input>
 				</el-form-item>
+                <h3>资产方管理员:</h3>
+                <el-form-item label="姓名" prop="username">
+					<el-input v-model="addForm.username" autocomplete="off" placeholder="请输入姓名"></el-input>
+				</el-form-item>
+				<el-form-item label="用户名" prop="account">
+					<el-input v-model="addForm.account" autocomplete="off" placeholder="请输入用户名(登录账号)"></el-input>
+				</el-form-item>
+				<el-form-item label="联系方式" prop="mobile">
+					<el-input v-model="addForm.mobile" autocomplete="off" placeholder="请输入联系方式"></el-input>
+				</el-form-item>
+                <el-form-item label="角色">
+                    <el-input v-model="addForm.roleName" autocomplete="off" placeholder="请输入角色名称"></el-input>
+				</el-form-item>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
+                <span style="color:#f00;float:left;margin-left:60px;">初始密码:000000</span>
 				<el-button @click.native="addFormVisible = false">取消</el-button>
 				<el-button type="primary" @click.native="addSubmit" :loading="addLoading">提交</el-button>
 			</div>
@@ -97,6 +112,18 @@
 
 	export default {
 		data() {
+            var checkPhone = (rule, value, callback) => {
+                if (!value) {
+                    return callback(new Error('请输入联系方式'));
+                } else {
+                    const reg = /^1[0-9]\d{9}$/
+                    if (reg.test(value)) {
+                        callback();
+                    } else {
+                        return callback(new Error('请输入正确的联系方式'));
+                    }
+                }
+            };
 			return {
 				filters: {
                     keyName: ''
@@ -117,6 +144,15 @@
                     ],
                     companyAddress: [
                         { required: true, message: '请输入资产方地址', trigger: 'blur' }
+                    ],
+                    username: [
+						{ required: true, message: '请输入姓名', trigger: 'blur' }
+                    ],
+                    account: [
+						{ required: true, message: '请输入用户名', trigger: 'blur' }
+                    ],
+                    mobile: [
+                        { required: true, validator: checkPhone, trigger: 'blur'}
                     ]
                 },
 
@@ -128,6 +164,11 @@
                     companyName: '',
                     companyType: 0,
                     companyAddress: '',
+                    username: '',
+                    account: '',
+                    mobile: '',
+					companyId: '',
+                    roleName: "系统管理员",
                     flag: 0
 				},
                 
@@ -190,6 +231,11 @@
                     companyName: '',
                     companyType: 0,
                     companyAddress: '',
+                    username: '',
+                    account: '',
+                    mobile: '',
+					companyId: '',
+                    roleName: "系统管理员",
                     flag: 0
 				};
             },
@@ -199,7 +245,52 @@
 				this.$refs.addForm.validate((valid) => {
 					if (valid) {
                         this.addLoading = true;
-                        this.http.post(this.port.base.addCompany, this.addForm , res => {
+                        this.http.post(this.port.base.addCompany, {
+                            companyName: this.addForm.companyName,
+                            companyType: 0,
+                            companyAddress: this.addForm.companyAddress,
+                            flag: 0
+                        } , res => {
+                            //this.addLoading = false;
+                            if (res.code == "ok") {
+                                //this.addFormVisible = false;
+
+                                // this.$message({
+                                //     message: '创建成功',
+                                //     type: 'success'
+                                // });
+                                // this.getComp();
+                                this.addPeo(res.data.id);
+                            } else {
+                                this.$message({
+                                    message: res.msg,
+                                    type: 'error'
+                                });
+                            }
+                        }, error => {
+                            this.addLoading = false;
+                            this.addFormVisible = false;
+                            this.$message({
+                                message: error,
+                                type: 'error'
+                            });
+                        })
+					}
+				});
+            },
+
+            //添加人员
+            addPeo(companyId) {
+                this.$refs.addForm.validate((valid) => {
+					if (valid) {
+                        this.http.post(this.port.project.addUser, {
+                            username: this.addForm.username,
+                            account: this.addForm.account,
+                            mobile: this.addForm.mobile,
+                            companyId: companyId,
+                            roleName: "系统管理员",
+                            flag: 0
+                        } , res => {
                             this.addLoading = false;
                             if (res.code == "ok") {
                                 this.addFormVisible = false;

+ 87 - 34
ys_vue/src/views/project/projectDetail.vue

@@ -13,6 +13,8 @@
                 </el-form-item>
             </el-form>
         </el-col>
+
+
         <el-col :span="24" :style="allDetail">
             <el-col :span="24" class="title">项目基本信息
                 <i class="el-icon-edit editDetail" v-if="user.id == proDetail.managerId || user.id == proDetail.creatorId" @click="edit"></i>
@@ -41,13 +43,13 @@
                         <span v-if="index != proDetail.customCompanies.length-1">、</span>
                     </span>
                 </el-col>
-                <el-col :span="24" class="detail">
+                <!-- <el-col :span="24" class="detail">
                     项目模具:
                     <span class="info model" v-for="(item, index) in proDetail.models">
                         <span @click="toMold(item.id)">{{item.modelName}}({{item.modelNo}})</span>
                         <span v-if="index != proDetail.models.length-1">、</span>
                     </span>
-                </el-col>
+                </el-col> -->
                 <el-col :span="24" class="detail">
                     资产方人员:
                     <span class="info" v-for="(item, index) in proDetail.ownerUsers">
@@ -63,42 +65,75 @@
                     </span>
                 </el-col>
             </el-col>
-
-            <el-col :span="24" class="title">项目文档
-                <!-- update == 1 -->
-                <el-upload v-if="user.id == proDetail.managerId" class="upload-demo" action="customize" :http-request="uploadFile" :show-file-list="false" multiple :limit="5" style="float:right;">
-                    <el-button size="small" type="primary" :loading="upLoading">点击上传</el-button>
-                </el-upload>
-            </el-col>
+             
             <el-col :span="24">
-                <el-table :data="files" highlight-current-row v-loading="listLoading" height="400" style="width: 100%;">
-                    <el-table-column type="index" width="40"></el-table-column>
-                    <el-table-column prop="fileName" label="名称" sortable></el-table-column>
-                    <el-table-column prop="fileSize" label="大小" width="150" align="center" sortable></el-table-column>
-                    <el-table-column prop="uploader" label="上传者" width="120" align="center" sortable></el-table-column>
-                    <el-table-column prop="indate" label="上传时间" width="200" align="center" sortable></el-table-column>
-                    <el-table-column label="操作" width="220" align="center" sortable>
-                        <template slot-scope="scope" v-if="download == 1">
-                            <el-button size="small" @click="dowloadFile(scope.row.id)">
-                                <a :href="scope.row.url" :download="scope.row.fileName">下载</a>
-                            </el-button>
-                            <el-button size="small" type="danger" @click="fileDel(scope.row.id)" v-if="scope.row.uploaderId == user.id">删除</el-button>
+                <el-collapse>
+                    <el-collapse-item>
+                        <template slot="title">
+                            <el-col :span="24" class="title">项目模具</el-col>
                         </template>
-                        <template slot-scope="scope" v-else>
-                            -
+                        <el-col :span="24" class="detail">
+                            <el-table :data="proDetail.models" highlight-current-row v-loading="modelsLoading" style="width: 100%;">
+                                <el-table-column type="index" width="40"></el-table-column>
+                                <el-table-column prop="modelNo" label="模具编号" width="200" sortable>
+                                    <template slot-scope="scope">
+                                        <span class="model" @click="toMold(scope.row.id)">{{scope.row.modelNo}}</span>
+                                    </template>
+                                </el-table-column>
+                                <el-table-column prop="modelName" label="模具名称" width="500" sortable></el-table-column>
+                                <el-table-column prop="factoryName" label="所属生产商" sortable></el-table-column>
+                            </el-table>
+                        </el-col>
+                    </el-collapse-item>
+
+                    <el-collapse-item>
+                        <template slot="title">
+                            <el-col :span="24" class="title">项目文档
+                                <!-- update == 1 -->
+                                <el-upload v-if="user.id == proDetail.managerId" action="customize" :http-request="uploadFile" :show-file-list="false" multiple :limit="5" style="float:right;margin-right:20px;">
+                                    <el-button size="small" type="primary" :loading="upLoading">点击上传</el-button>
+                                </el-upload>
+                            </el-col>
                         </template>
-                    </el-table-column>
-                </el-table>
+                        <el-col :span="24" class="detail">
+                            <el-table :data="files" highlight-current-row v-loading="listLoading" style="width: 100%;">
+                                <el-table-column type="index" width="40"></el-table-column>
+                                <el-table-column prop="fileName" label="名称" sortable></el-table-column>
+                                <el-table-column prop="fileSize" label="大小" width="150" align="center" sortable></el-table-column>
+                                <el-table-column prop="uploader" label="上传者" width="120" align="center" sortable></el-table-column>
+                                <el-table-column prop="indate" label="上传时间" width="200" align="center" sortable></el-table-column>
+                                <el-table-column label="操作" width="220" align="center" sortable>
+                                    <template slot-scope="scope" v-if="download == 1">
+                                        <el-button size="small" @click="dowloadFile(scope.row.id)">
+                                            <a :href="scope.row.url" :download="scope.row.fileName">下载</a>
+                                        </el-button>
+                                        <el-button size="small" type="danger" @click="fileDel(scope.row.id)" v-if="scope.row.uploaderId == user.id">删除</el-button>
+                                    </template>
+                                    <template slot-scope="scope" v-else>
+                                        -
+                                    </template>
+                                </el-table-column>
+                            </el-table>
+                        </el-col>
+                    </el-collapse-item>
+
+                    <el-collapse-item>
+                        <template slot="title">
+                            <el-col :span="24" class="title">操作记录</el-col>
+                        </template>
+                        <el-col :span="24" class="detail">
+                            <el-table :data="opers" highlight-current-row v-loading="oplistLoading" style="width: 100%;">
+                                <el-table-column type="index" width="40"></el-table-column>
+                                <el-table-column prop="content" label="操作" width="120" sortable></el-table-column>
+                                <el-table-column prop="fileName" label="操作文档名称" sortable></el-table-column>
+                                <el-table-column prop="operator" label="操作人" width="120" align="center" sortable></el-table-column>
+                                <el-table-column prop="indate" label="操作时间" width="200" align="center" sortable></el-table-column>
+                            </el-table>
+                        </el-col>
+                    </el-collapse-item>
+                </el-collapse>
             </el-col>
-
-            <el-col :span="24" class="title">操作记录</el-col>
-            <el-table :data="opers" highlight-current-row v-loading="oplistLoading" height="400" style="width: 100%;">
-                <el-table-column type="index" width="40"></el-table-column>
-                <el-table-column prop="content" label="操作" width="120" sortable></el-table-column>
-                <el-table-column prop="fileName" label="操作文档名称" sortable></el-table-column>
-                <el-table-column prop="operator" label="操作人" width="120" align="center" sortable></el-table-column>
-                <el-table-column prop="indate" label="操作时间" width="200" align="center" sortable></el-table-column>
-            </el-table>
+            
         </el-col>
 
         <!--编辑界面-->
@@ -193,6 +228,7 @@
                 },
 
                 listLoading: false,
+                modelsLoading: false,
                 upLoading: false,
                 oplistLoading: false,
                 activePage: 0,
@@ -245,16 +281,21 @@
                 this.$router.go(-1);
                 // this.$router.push("/project");
             },
+
             toMold(id) {
                 this.$router.push('/moldList/' + id);
             },
+            
             handleClick(tab, event) {
             },
+
             //获取详情
             getDetail() {
+                this.modelsLoading = true;
                 this.http.post(this.port.project.projectDetail, {
                     id: this.detailId
                 }, res => {
+                    this.modelsLoading = false;
                     if (res.code == "ok") {
                         this.update = res.data.update;
                         this.download = res.data.download;
@@ -282,12 +323,14 @@
                         });
                     }
                 }, error => {
+                    this.modelsLoading = false;
                     this.$message({
                         message: error,
                         type: 'error'
                     });
                 })
             },
+
             getFileList() {
                 this.listLoading = true;
                 // 获取文档列表
@@ -311,6 +354,7 @@
                     });
                 })
             },
+
             getOperList() {
                 this.oplistLoading = true;
                 // 获取文档列表
@@ -334,6 +378,7 @@
                     });
                 })
             },
+
             //获取信息
             getMsg() {
                 // 获取人员
@@ -421,6 +466,7 @@
                     });
                 })
             },
+
             //选择公司切换人员
             companyChange() {
                 var param = {} ,
@@ -456,6 +502,7 @@
                     });
                 })
             },
+
             //打开编辑页面
             edit() {
                 this.editFormVisible = true;
@@ -516,6 +563,7 @@
                     produce: produce
                 }
             },
+
             //提交
             addSubmit() {
                 this.$refs.editForm.validate((valid) => {
@@ -595,6 +643,7 @@
 					}
 				});
             },
+
             //上传
             uploadFile(params) {
                 this.upLoading = true;
@@ -625,6 +674,7 @@
                     });
                 })
             },
+
             //下载
             dowloadFile(id) {
                 this.http.post(this.port.project.dowloadFile, {
@@ -634,6 +684,7 @@
                 }, error => {
                 })
             },
+
             //删除上传文件
 			fileDel(id) {
                 this.$confirm('确认删除该文档吗?', '提示', {
@@ -664,6 +715,7 @@
 				});
             },
         },
+
         created() {
             let height = window.innerHeight;
             this.allDetail.height = height - 170 + "px";
@@ -672,6 +724,7 @@
                 that.allDetail.height = window.innerHeight - 170;    
             };
         },
+
         mounted() {
             this.getDetail();
             this.getFileList();