sunyadv 5 năm trước cách đây
mục cha
commit
b71d89c56b

+ 1 - 0
ys_vue/src/http.js

@@ -128,6 +128,7 @@ export default {
         var user = sessionStorage.getItem('user') , token = "";
         if(user != null){
             token = JSON.parse(user).headImgurl
+            data.append("token", token);
         }
         axios({
             method: 'post',

+ 5 - 0
ys_vue/src/port.js

@@ -15,9 +15,14 @@ export default {
         addProject: '/project/add', //添加或修改项目
         projectDetail: '/project/detail', //项目详情
         projects: '/project/projectList', //筛选模具列表时作为筛选条件所加载的项目列表
+        uploadFile: '/projectfile/uploadFile', //项目文档的上传
+        dowloadFile: '/projectfile/dowloadFile', //项目文档的下载
+        fileList: '/projectfile/list', //项目文档列表
 
         getUserList: '/user/getUserList', //获取用户列表
         getUserById: '/user/getUserListByCompanyIds', // 给项目分配参与人的时候根据公司id获取公司下的人员
+
+        powerList: '/power/list', // 权限列表
     },
     mold: {
         addMold: '/mould/addOrUpdate', //添加/修改模具设备

+ 5 - 1
ys_vue/src/views/base/allocation.vue

@@ -236,7 +236,7 @@
             getMoulds() {
                 this.listLoading = true;
                 this.http.post(this.port.base.mouldeList,{
-                    currentPage: this.page,
+                    pageNum: this.page,
                     pageSize: this.size
                 },
                 res => {
@@ -394,6 +394,10 @@
         created() {
             let height = window.innerHeight;
             this.tableHeight = height - 210;
+            const that = this;
+            window.onresize = function temp() {
+                that.tableHeight = window.innerHeight - 210;    
+            };
         },
         mounted() {
             this.getMsg();

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

@@ -160,7 +160,7 @@
 				this.listLoading = true;
                 this.http.post(this.port.base.companyList, {
                     keyName: this.filters.keyName,
-                    currentPage: this.page,
+                    pageNum: this.page,
                     pageSize: this.size
                 }, res => {
                     this.listLoading = false;
@@ -302,6 +302,10 @@
         created() {
             let height = window.innerHeight;
             this.tableHeight = height - 210;
+            const that = this;
+            window.onresize = function temp() {
+                that.tableHeight = window.innerHeight - 210;    
+            };
         },
 
 		mounted() {

+ 5 - 1
ys_vue/src/views/base/factory.vue

@@ -144,7 +144,7 @@
 				this.listLoading = true;
                 this.http.post(this.port.base.factoryList, {
                     keyName: this.filters.keyName,
-                    currentPage: this.page,
+                    pageNum: this.page,
                     pageSize: this.size
                 }, res => {
                     this.listLoading = false;
@@ -355,6 +355,10 @@
         created() {
             let height = window.innerHeight;
             this.tableHeight = height - 210;
+            const that = this;
+            window.onresize = function temp() {
+                that.tableHeight = window.innerHeight - 210;    
+            };
         },
 
 		mounted() {

+ 1 - 1
ys_vue/src/views/base/role.vue

@@ -233,7 +233,7 @@
 				this.listLoading = true;
                 this.http.post(this.port.base.roleList, {
                     keyName: this.filters.keyName,
-                    currentPage: this.page,
+                    pageNum: this.page,
                     pageSize: this.size
                 }, res => {
                     this.listLoading = false;

+ 1 - 1
ys_vue/src/views/mold/moldDetail.vue

@@ -241,7 +241,7 @@
         margin: 20px 0;
         font-size: 16px;
         line-height: 24px;
-        border-left: 1px blue solid;
+        border-left: 1px #20a0ff solid;
     }
 
     .editDetail {

+ 1 - 1
ys_vue/src/views/mold/moldList.vue

@@ -210,7 +210,7 @@
                 this.listLoading = true;
                 this.http.post(this.port.mold.molds, {
                     keyName: this.filters.keyName,
-                    currentPage: this.page,
+                    pageNum: this.page,
                     pageSize: this.size,
                     projectId: this.filters.projectId == ""?-1:this.filters.projectId,
                     serchType: this.filters.serchType

+ 89 - 130
ys_vue/src/views/project/competence.vue

@@ -3,28 +3,31 @@
 		<!--工具条-->
 		<el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
 			<el-form :inline="true" :model="filters">
+                <el-col :span="3">
+                    <el-form-item>
+                        <el-select v-model="filters.companyId" clearable filterable placeholder="请选择项目">
+                            <el-option v-for="item in projects" :key="item.id" :label="item.companyName" :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
 				<el-form-item>
-					<el-input v-model="filters.name" placeholder="姓名"></el-input>
+					<el-input v-model="filters.keyName" placeholder="请输入姓名进行搜索"></el-input>
 				</el-form-item>
 				<el-form-item>
 					<el-button type="primary" v-on:click="getUsers">查询</el-button>
 				</el-form-item>
-				<el-form-item>
-					<el-button type="primary" @click="handleAdd">新增</el-button>
-				</el-form-item>
 			</el-form>
 		</el-col>
 
 		<!--列表-->
-		<el-table :data="users" highlight-current-row v-loading="listLoading" @selection-change="selsChange" style="width: 100%;">
+		<el-table :data="list" highlight-current-row v-loading="listLoading" style="width: 100%;">
 			<el-table-column type="selection" width="55">
 			</el-table-column>
 			<el-table-column type="index" width="60">
 			</el-table-column>
 			<el-table-column prop="name" label="姓名" width="120" sortable>
 			</el-table-column>
-			<el-table-column prop="sex" label="性别" width="100" :formatter="formatSex" sortable>
-			</el-table-column>
 			<el-table-column prop="age" label="年龄" width="100" sortable>
 			</el-table-column>
 			<el-table-column prop="birth" label="生日" width="120" sortable>
@@ -41,9 +44,15 @@
 
 		<!--工具条-->
 		<el-col :span="24" class="toolbar">
-			<el-button type="danger" @click="batchRemove" :disabled="this.sels.length===0">批量删除</el-button>
-			<el-pagination layout="prev, pager, next" @current-change="handleCurrentChange" :page-size="20" :total="total" style="float:right;">
-			</el-pagination>
+            <el-pagination
+                @size-change="handleSizeChange"
+                @current-change="handleCurrentChange"
+                :page-sizes="[20 , 50 , 80 , 100]"
+                :page-size="20"
+                layout="total, sizes, prev, pager, next"
+                :total="total"
+                style="float:right;">
+            </el-pagination>
 		</el-col>
 
 		<!--编辑界面-->
@@ -73,53 +82,26 @@
 				<el-button type="primary" @click.native="editSubmit" :loading="editLoading">提交</el-button>
 			</div>
 		</el-dialog>
-
-		<!--新增界面-->
-		<el-dialog title="新增" v-model="addFormVisible" :close-on-click-modal="false">
-			<el-form :model="addForm" label-width="80px" :rules="addFormRules" ref="addForm">
-				<el-form-item label="姓名" prop="name">
-					<el-input v-model="addForm.name" autocomplete="off"></el-input>
-				</el-form-item>
-				<el-form-item label="性别">
-					<el-radio-group v-model="addForm.sex">
-						<el-radio class="radio" :label="1">男</el-radio>
-						<el-radio class="radio" :label="0">女</el-radio>
-					</el-radio-group>
-				</el-form-item>
-				<el-form-item label="年龄">
-					<el-input-number v-model="addForm.age" :min="0" :max="200"></el-input-number>
-				</el-form-item>
-				<el-form-item label="生日">
-					<el-date-picker type="date" placeholder="选择日期" v-model="addForm.birth"></el-date-picker>
-				</el-form-item>
-				<el-form-item label="地址">
-					<el-input type="textarea" v-model="addForm.addr"></el-input>
-				</el-form-item>
-			</el-form>
-			<div slot="footer" class="dialog-footer">
-				<el-button @click.native="addFormVisible = false">取消</el-button>
-				<el-button type="primary" @click.native="addSubmit" :loading="addLoading">提交</el-button>
-			</div>
-		</el-dialog>
 	</section>
 </template>
 
 <script>
 	import util from '../../common/js/util'
-	//import NProgress from 'nprogress'
-	import { getUserListPage, removeUser, batchRemoveUser, editUser, addUser } from '../../api/api';
-
 	export default {
 		data() {
 			return {
 				filters: {
-					name: ''
-				},
-				users: [],
+					keyName: ''
+                },
+                
+                projects: [],
+
+				list: [],
 				total: 0,
-				page: 1,
-				listLoading: false,
-				sels: [],//列表选中列
+                page: 1,
+                size: 20,
+                listLoading: false,
+                tableHeight: 0,
 
 				editFormVisible: false,//编辑界面是否显示
 				editLoading: false,
@@ -136,70 +118,63 @@
 					age: 0,
 					birth: '',
 					addr: ''
-				},
-
-				addFormVisible: false,//新增界面是否显示
-				addLoading: false,
-				addFormRules: {
-					name: [
-						{ required: true, message: '请输入姓名', trigger: 'blur' }
-					]
-				},
-				//新增界面数据
-				addForm: {
-					name: '',
-					sex: -1,
-					age: 0,
-					birth: '',
-					addr: ''
 				}
-
 			}
 		},
 		methods: {
-			//性别显示转换
-			formatSex: function (row, column) {
-				return row.sex == 1 ? '男' : row.sex == 0 ? '女' : '未知';
-			},
+            getMsg() {
+                this.http.post(this.port.project.projects, {}, res => {
+                    if (res.code == "ok") {
+                        this.projects = res.data;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
+
+            //分页
 			handleCurrentChange(val) {
 				this.page = val;
-				this.getUsers();
-			},
+				this.getPowerList();
+            },
+
+            handleSizeChange(val) {
+                this.size = val;
+				this.getPowerList();
+            },
 			//获取用户列表
-			getUsers() {
-				let para = {
-					page: this.page,
-					name: this.filters.name
-				};
+			getPowerList() {
 				this.listLoading = true;
-				//NProgress.start();
-				getUserListPage(para).then((res) => {
-					this.total = res.data.total;
-					this.users = res.data.users;
-					this.listLoading = false;
-					//NProgress.done();
-				});
-			},
-			//删除
-			handleDel: function (index, row) {
-				this.$confirm('确认删除该记录吗?', '提示', {
-					type: 'warning'
-				}).then(() => {
-					this.listLoading = true;
-					//NProgress.start();
-					let para = { id: row.id };
-					removeUser(para).then((res) => {
-						this.listLoading = false;
-						//NProgress.done();
-						this.$message({
-							message: '删除成功',
-							type: 'success'
-						});
-						this.getUsers();
-					});
-				}).catch(() => {
-
-				});
+                this.http.post(this.port.project.powerList, {
+                    keyName: this.filters.keyName,
+                    pageNum: this.page,
+                    pageSize: this.size
+                }, res => {
+                    this.listLoading = false;
+                    if (res.code == "ok") {
+                        this.list = res.data.list;
+                        this.total = res.data.total;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.listLoading = false;
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
 			},
 			//显示编辑界面
 			handleEdit: function (index, row) {
@@ -265,34 +240,18 @@
 					}
 				});
 			},
-			selsChange: function (sels) {
-				this.sels = sels;
-			},
-			//批量删除
-			batchRemove: function () {
-				var ids = this.sels.map(item => item.id).toString();
-				this.$confirm('确认删除选中记录吗?', '提示', {
-					type: 'warning'
-				}).then(() => {
-					this.listLoading = true;
-					//NProgress.start();
-					let para = { ids: ids };
-					batchRemoveUser(para).then((res) => {
-						this.listLoading = false;
-						//NProgress.done();
-						this.$message({
-							message: '删除成功',
-							type: 'success'
-						});
-						this.getUsers();
-					});
-				}).catch(() => {
-
-				});
-			}
-		},
+        },
+        created() {
+            let height = window.innerHeight;
+            this.tableHeight = height - 210;
+            const that = this;
+            window.onresize = function temp() {
+                that.tableHeight = window.innerHeight - 210;    
+            };
+        },
 		mounted() {
-			this.getUsers();
+            this.getMsg();
+			this.getPowerList();
 		}
 	}
 

+ 4 - 4
ys_vue/src/views/project/project.vue

@@ -24,12 +24,12 @@
                     <el-link :underline="false" type="primary" @click="toDetail(scope.row)">{{scope.row.projectName}}</el-link>
 				</template>
 			</el-table-column>
-            <el-table-column prop="customCompaniesStr" label="生产方公司" width="600" sortable>
+            <el-table-column prop="customCompaniesStr" label="生产方公司" width="550">
 			</el-table-column>
             <el-table-column prop="manager" label="项目经理" align="center" sortable>
 			</el-table-column>
-			<el-table-column prop="creator" label="项目创建人" align="center"  sortable>
-			</el-table-column>
+			<!-- <el-table-column prop="creator" label="项目创建人" align="center"  sortable>
+			</el-table-column> -->
 			<el-table-column prop="indate" label="创建时间" width="250" align="center" sortable>
 			</el-table-column>
 			<!-- <el-table-column label="操作" width="250" align="center">
@@ -199,7 +199,7 @@
 				this.listLoading = true;
 				this.http.post(this.port.project.projectList, {
                     keyName: this.filters.keyName,
-                    currentPage: this.page,
+                    pageNum: this.page,
                     pageSize: this.size,
                 }, res => {
                     this.listLoading = false;

+ 146 - 56
ys_vue/src/views/project/projectDetail.vue

@@ -28,27 +28,39 @@
                 </el-col>
                 <el-col :span="6" class="detail">
                     资产方审批人:
-                    <span class="info">{{proDetail.initial}}</span>
+                    <span class="info">{{proDetail.ownerApprover}}</span>
                 </el-col>
                 <el-col :span="6" class="detail">
                     生产方审批人:
-                    <span class="info">{{proDetail.initial}}</span>
+                    <span class="info">{{proDetail.customerApprover}}</span>
                 </el-col>
-                <el-col :span="6" class="detail">
+                <el-col :span="24" class="detail">
                     生产方公司:
-                    <span class="info">{{proDetail.lifetime}}</span>
+                    <span class="info" v-for="(item, index) in proDetail.customCompanies">
+                        {{item.companyName}}
+                        <span v-if="index != proDetail.customCompanies.length-1">、</span>
+                    </span>
                 </el-col>
                 <el-col :span="24" class="detail">
                     项目模具:
-                    <span class="info">{{proDetail.RFIDcode}}</span>
+                    <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 :span="24" class="detail">
                     资产方人员:
-                    <span class="info">{{proDetail.mouldNumber}}</span>
+                    <span class="info" v-for="(item, index) in proDetail.ownerUsers">
+                        {{item.username}}
+                        <span v-if="index != proDetail.ownerUsers.length-1">、</span>
+                    </span>
                 </el-col>
                 <el-col :span="24" class="detail">
                     生产方人员:
-                    <span class="info">{{proDetail.project}}</span>
+                    <span class="info" v-for="(item, index) in proDetail.customUsers">
+                        {{item.username}}
+                        <span v-if="index != proDetail.customUsers.length-1">、</span>
+                    </span>
                 </el-col>
             </el-col>
 
@@ -58,25 +70,36 @@
                 </el-upload>
             </el-col>
             <el-col :span="24">
-                <el-table :data="documents" highlight-current-row v-loading="listLoading" style="width: 100%;height:800px;">
+                <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="name" label="名称" sortable></el-table-column>
-                    <el-table-column prop="size" label="大小" width="200" sortable></el-table-column>
-                    <el-table-column prop="uploader" label="上传者" width="200" sortable></el-table-column>
-                    <el-table-column prop="uploadTime" label="上传时间" width="200" sortable></el-table-column>
-                    <el-table-column label="状态" width="200" sortable>
-                    <template slot-scope="scope">
-                        <span v-if="scope.row.state == 0">需要</span>
-                        <span v-else>不需要</span>
-                    </template>
-                    </el-table-column>
+                    <el-table-column prop="fileName" label="名称" sortable></el-table-column>
+                    <el-table-column prop="fileSize" label="大小" width="150" sortable></el-table-column>
+                    <el-table-column prop="uploader" label="上传者" width="120" sortable></el-table-column>
+                    <el-table-column prop="indate" label="上传时间" width="200" sortable></el-table-column>
                     <el-table-column label="操作" width="220" sortable>
-                    <el-button size="small">浏览</el-button>
-                    <el-button size="small">下载</el-button>
-                    <el-button size="small" type="danger">删除</el-button>
+                        <template slot-scope="scope">
+                            <el-button size="small">
+                                <a :href="scope.row.url" :download="scope.row.fileName">下载</a></el-button>
+                            <el-button size="small" type="danger" v-if="scope.row.uploaderId == user.id">删除</el-button>
+                        </template>
                     </el-table-column>
                 </el-table>
             </el-col>
+
+            <el-col :span="24" class="title">操作记录</el-col>
+            <el-table :data="operations" 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="name" label="姓名" width="400" sortable></el-table-column>
+                <el-table-column prop="document" label="文档名称" sortable></el-table-column>
+                <el-table-column label="操作" width="400" sortable>
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.operations == 0">浏览</span>
+                        <span v-else-if="scope.row.operations == 1">下载</span>
+                        <span v-else>删除</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="time" label="时间" width="400" sortable></el-table-column>
+            </el-table>
         </el-col>
 
         <!--编辑界面-->
@@ -104,7 +127,7 @@
                     </el-form-item>
                 </el-col>
                 <el-col :span="12">
-                    <el-form-item label="资产方审批人">
+                    <el-form-item label="资产方审批人" prop="ownerApproverId">
                         <el-select v-model="editForm.ownerApproverId" clearable filterable placeholder="请选择资产方审批人" value-key='id' style="width:190px">
                             <el-option v-for="item in assets" :key="item.id" :label="item.username" :value="item.id">
                             </el-option>
@@ -112,7 +135,7 @@
                     </el-form-item>
                 </el-col>
                 <el-col :span="12">
-                    <el-form-item label="生产方审批人">
+                    <el-form-item label="生产方审批人" prop="customerApproverId">
                         <el-select v-model="editForm.customerApproverId" clearable filterable placeholder="请选择生产方审批人" value-key='id' style="width:190px">
                             <el-option v-for="item in produce" :key="item.id" :label="item.username" :value="item.id">
                             </el-option>
@@ -161,29 +184,14 @@
                 user: JSON.parse(sessionStorage.getItem('user')),
                 //临时数据
                 proDetail: {},
-                documents: [
-                    {
-                    name: "墨盒产品验证文档.word",
-                    size: "100KB",
-                    uploader: "张富贵",
-                    uploadTime: "2019-07-24",
-                    state: 0
-                    }
-                ],
-                operations: [
-                    {
-                    name: "王多银",
-                    document: "墨盒产品验证文档.word",
-                    operation: 0,
-                    time: "时间"
-                    }
-                ],
+                files: [],
 
                 allDetail: {
                     overflow: 'auto',
                     padding: '0px 5px',
                     height: 0
                 },
+
                 listLoading: false,
                 activePage: 0,
 
@@ -200,6 +208,12 @@
                     ],
                     managerId: [
                         { required: true, message: '请选择项目经理', trigger: ['blur','change'] }
+                    ],
+                    ownerApproverId: [
+                        { required: true, message: '请选择资产方审批人', trigger: ['blur','change'] }
+                    ],
+                    customerApproverId: [
+                        { required: true, message: '请选择生产方审批人', trigger: ['blur','change'] }
                     ]
                 },
                 
@@ -223,16 +237,29 @@
             backToList() {
                 this.$router.push("/project");
             },
+            toMold(id) {
+                this.$router.push('/moldList/' + id);
+            },
             handleClick(tab, event) {
             },
             //获取详情
             getDetail() {
-                this.listLoading = true;
                 this.http.post(this.port.project.projectDetail, {
                     id: this.detailId
                 }, res => {
                     if (res.code == "ok") {
-                        this.proDetail = res.data;
+                        var list = res.data;
+                        var approves = res.data.approves;
+
+                        for(var i in approves){
+                            if(approves[i].subordinateType == 0){
+                                list.ownerApprover = approves[i].approverName;
+                            } else {
+                                list.customerApprover = approves[i].approverName;
+                            }
+                        }
+
+                        this.proDetail = list;
                         this.getMsg();
                     } else {
                         this.$message({
@@ -247,6 +274,29 @@
                     });
                 })
             },
+            getFileList() {
+                this.listLoading = true;
+                // 获取文档列表
+                this.http.post(this.port.project.fileList, {
+                    projectId: this.detailId
+                }, res => {
+                    this.listLoading = false;
+                    if (res.code == "ok") {
+                        this.files = res.data;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.listLoading = false;
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
             //获取信息
             getMsg() {
                 // 获取公司
@@ -364,13 +414,16 @@
                     });
                 })
             },
+            //打开编辑页面
             edit() {
                 this.editFormVisible = true;
                 var compArr = [] ,
                     manager = {} ,
                     ownerApproverId = '' ,
                     customerApproverId = '' ,
-                    moldArr = [];
+                    moldArr = [] ,
+                    assets = [] ,
+                    produce = [];
                 for(var i in this.proDetail.customCompanies){
                     for(var j in this.company){
                         if(this.company[j].id == this.proDetail.customCompanies[i].companyId){
@@ -387,20 +440,28 @@
 
                 for(var i in this.proDetail.approves) {
                     if(this.proDetail.approves[i].subordinateType == 0){
-                        ownerApproverId = this.proDetail.approves[i].approverName;
+                        ownerApproverId = this.proDetail.approves[i].approverId;
                     } else {
-                        customerApproverId = this.proDetail.approves[i].approverName;
+                        customerApproverId = this.proDetail.approves[i].approverId;
                     }
                 }
 
                 for(var i in this.molds){
                     for(var j in this.proDetail.models){
                         if(this.molds[i].id == this.proDetail.models[j].id){
-                            moldArr.push(this.molds[i])
+                            moldArr.push(this.molds[i].id)
                         }
                     }
                 }
 
+                for(var i in this.proDetail.ownerUsers){
+                    assets.push(this.proDetail.ownerUsers[i].id)
+                }
+
+                for(var i in this.proDetail.customUsers){
+                    produce.push(this.proDetail.customUsers[i].id)
+                }
+
                 this.editForm = {
                     id: this.proDetail.id,
                     projectName: this.proDetail.projectName,
@@ -409,14 +470,11 @@
                     ownerApproverId: ownerApproverId,
                     customerApproverId: customerApproverId,
                     modelIds: moldArr,
-                    assets: [],
-                    produce: []
+                    assets: assets,
+                    produce: produce
                 }
             },
-            //上传
-            uploadFile(params) {
-                console.log(params)
-            },
+            //提交
             addSubmit() {
                 this.$refs.editForm.validate((valid) => {
 					if (valid) {
@@ -444,7 +502,7 @@
                             }
                         }
                         
-                        if(userIds != ""){
+                        if(userIds != "" && this.editForm.produce.length != 0){
                             userIds += ","
                         }
 
@@ -477,7 +535,7 @@
                                     message: '修改成功',
                                     type: 'success'
                                 });
-                                this.getUsers();
+                                this.getDetail();
                             } else {
                                 this.$message({
                                     message: res.msg,
@@ -494,7 +552,33 @@
                         })
 					}
 				});
-            }
+            },
+            //上传
+            uploadFile(params) {
+                var fileObj = params.file;
+                var form = new FormData();
+                form.append("projectId", this.proDetail.id);
+                form.append("file", fileObj);
+                this.http.uploadFile(this.port.project.uploadFile, form , res => {
+                    if (res.code == "ok") {
+                        this.$message({
+                            message: '上传成功',
+                            type: 'success'
+                        });
+                        this.getFileList();
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
         },
         created() {
             let height = window.innerHeight;
@@ -506,6 +590,7 @@
         },
         mounted() {
             this.getDetail();
+            this.getFileList();
         }
     };
 </script>
@@ -541,7 +626,7 @@
         margin: 20px 0;
         font-size: 16px;
         line-height: 24px;
-        border-left: 1px blue solid;
+        border-left: 1px #20a0ff solid;
         position: relative;
     }
 
@@ -561,6 +646,11 @@
         color: grey;
     }
 
+    .model {
+        cursor: pointer;
+        color:#20a0ff;
+    }
+
     .main {
         padding-left: 10px;
     }

+ 1 - 1
ys_vue/src/views/project/staff.vue

@@ -53,7 +53,7 @@
             <el-pagination
                 @size-change="handleSizeChange"
                 @current-change="handleCurrentChange"
-                :page-sizes="[20 , 50 , 80 , 100 , 200]"
+                :page-sizes="[20 , 50 , 80 , 100]"
                 :page-size="20"
                 layout="total, sizes, prev, pager, next"
                 :total="total"