瀏覽代碼

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

5 年之前
父節點
當前提交
87959fa8d8

+ 1 - 0
.idea/modules.xml

@@ -2,6 +2,7 @@
 <project version="4">
   <component name="ProjectModuleManager">
     <modules>
+      <module fileurl="file://$PROJECT_DIR$/cloud-model/cloud-model.iml" filepath="$PROJECT_DIR$/cloud-model/cloud-model.iml" />
       <module fileurl="file://$PROJECT_DIR$/cloud-model/cloud-model.iml" filepath="$PROJECT_DIR$/cloud-model/cloud-model.iml" />
       <module fileurl="file://$PROJECT_DIR$/.idea/yunsu.iml" filepath="$PROJECT_DIR$/.idea/yunsu.iml" />
     </modules>

+ 7 - 0
ys_vue/build/webpack.base.conf.js

@@ -2,6 +2,7 @@ var path = require('path')
 var utils = require('./utils')
 var config = require('../config')
 var vueLoaderConfig = require('./vue-loader.conf')
+var webpack = require("webpack")
 
 function resolve(dir) {
   return path.join(__dirname, '..', dir)
@@ -26,6 +27,12 @@ module.exports = {
       'scss_vars': '@/styles/vars.scss'
     }
   },
+  plugins: [
+    new webpack.ProvidePlugin({
+      jQuery: 'jquery',
+      $: 'jquery'
+    })
+  ],
   module: {
     rules: [
       {

+ 12 - 21
ys_vue/package-lock.json

@@ -3610,14 +3610,12 @@
         "balanced-match": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "brace-expansion": {
           "version": "1.1.11",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
@@ -3632,20 +3630,17 @@
         "code-point-at": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "console-control-strings": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "core-util-is": {
           "version": "1.0.2",
@@ -3762,8 +3757,7 @@
         "inherits": {
           "version": "2.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "ini": {
           "version": "1.3.5",
@@ -3775,7 +3769,6 @@
           "version": "1.0.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "number-is-nan": "^1.0.0"
           }
@@ -3790,7 +3783,6 @@
           "version": "3.0.4",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "brace-expansion": "^1.1.7"
           }
@@ -3798,14 +3790,12 @@
         "minimist": {
           "version": "0.0.8",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "minipass": {
           "version": "2.3.5",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "safe-buffer": "^5.1.2",
             "yallist": "^3.0.0"
@@ -3824,7 +3814,6 @@
           "version": "0.5.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "minimist": "0.0.8"
           }
@@ -3905,8 +3894,7 @@
         "number-is-nan": {
           "version": "1.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "object-assign": {
           "version": "4.1.1",
@@ -3918,7 +3906,6 @@
           "version": "1.4.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "wrappy": "1"
           }
@@ -4040,7 +4027,6 @@
           "version": "1.0.2",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "code-point-at": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",
@@ -4977,6 +4963,11 @@
       "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
       "dev": true
     },
+    "jquery": {
+      "version": "3.4.1",
+      "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.4.1.tgz",
+      "integrity": "sha512-36+AdBzCL+y6qjw5Tx7HgzeGCzC81MDDgaUP8ld2zhx58HdqXGoBd+tHdrBMiyjGQs0Hxs/MLZTu/eHNJJuWPw=="
+    },
     "js-base64": {
       "version": "2.5.1",
       "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz",

+ 1 - 0
ys_vue/package.json

@@ -14,6 +14,7 @@
     "echarts": "^3.3.2",
     "element-ui": "^2.10.1",
     "font-awesome": "^4.7.0",
+    "jquery": "^3.4.1",
     "nprogress": "^0.2.0",
     "vue": "^2.6.10",
     "vue-router": "^2.3.0",

+ 2 - 0
ys_vue/src/main.js

@@ -17,6 +17,8 @@ import routes from './routes'
 // import Mock from './mock'
 // Mock.bootstrap();
 
+import $ from 'jquery'
+
 import http from './http'
 Vue.prototype.http = http
 

+ 5 - 1
ys_vue/src/port.js

@@ -8,8 +8,12 @@ export default {
     },
     project: {
         userList: '/user/list',  //用户列表
-        addUser: '/user/add',  //添加用户
+        addUser: '/user/add',  //添加或修改用户
         delUser: '/user/delete',  //删除用户
+
+        projectList: '/project/list', //项目列表
+        addProject: '/project/add', //添加或修改项目
+        getUserList: '/project/getUserList', //获取人员列表
     },
     // 基础管理
     base: {

+ 4 - 54
ys_vue/src/routes.js

@@ -1,16 +1,7 @@
 import Login from './views/Login.vue'
 import NotFound from './views/404.vue'
 import Home from './views/Home.vue'
-import Main from './views/Main.vue'
 
-import Table from './views/nav1/Table.vue'
-import Form from './views/nav1/Form.vue'
-import user from './views/nav1/user.vue'
-import Page4 from './views/nav2/Page4.vue'
-import Page5 from './views/nav2/Page5.vue'
-import Page6 from './views/nav3/Page6.vue'
-import echarts from './views/charts/echarts.vue'
-//新页面
 import map from './views/map/map.vue'
 
 import detection from './views/detection/detection.vue'
@@ -22,8 +13,8 @@ import competence from './views/project/competence.vue'
 
 import moldList from './views/mold/moldList.vue'
 import moldFile from './views/mold/moldFile.vue'
-import moldDownload from './views/mold/moldDownload.vue'
 import moldDetail from './views/mold/moldDetail.vue'
+import moldDownload from './views/mold/moldDownload.vue'
 
 import role from './views/base/role.vue'
 import comp from './views/base/comp.vue'
@@ -36,47 +27,6 @@ let routes = [
         name: '',
         hidden: true
     },
-    // {
-    //     path: '/',
-    //     component: Home,
-    //     name: '导航一',
-    //     iconCls: 'el-icon-message',//图标样式class
-    //     children: [
-    //         { path: '/main', component: Main, name: '主页', hidden: true },
-    //         { path: '/table', component: Table, name: 'Table' },
-    //         { path: '/form', component: Form, name: 'Form' },
-    //         { path: '/user', component: user, name: '列表' },
-    //     ]
-    // },
-    // {
-    //     path: '/',
-    //     component: Home,
-    //     name: '导航二',
-    //     iconCls: 'fa fa-id-card-o',
-    //     children: [
-    //         { path: '/page4', component: Page4, name: '页面4' },
-    //         { path: '/page5', component: Page5, name: '页面5' }
-    //     ]
-    // },
-    // {
-    //     path: '/',
-    //     component: Home,
-    //     name: '',
-    //     iconCls: 'fa fa-address-card',
-    //     leaf: true,//只有一个节点
-    //     children: [
-    //         { path: '/page6', component: Page6, name: '导航三' }
-    //     ]
-    // },
-    // {
-    //     path: '/',
-    //     component: Home,
-    //     name: 'Charts',
-    //     iconCls: 'fa fa-bar-chart',
-    //     children: [
-    //         { path: '/echarts', component: echarts, name: 'echarts' }
-    //     ]
-    // },
     // 地图概览
     {
         path: '/',
@@ -121,8 +71,8 @@ let routes = [
         children: [
             { path: '/moldList', component: moldList, name: '模具列表' },
             { path: '/moldDetail/:id', component: moldDetail, name: '模具详情', hidden: true },
-            { path: '/moldFile', component: moldFile, name: '模具审批' },
-            { path: '/moldDownload', component: moldDownload, name: '模具下载' }
+            { path: '/moldFile', component: moldFile, name: '文档审批' },
+            { path: '/moldDownload', component: moldDownload, name: '文档下载' }
         ]
     },
     // 基础管理
@@ -132,7 +82,7 @@ let routes = [
         name: '基础管理',
         iconCls: 'iconfont icon-setting-fill',
         children: [
-            { path: '/role', component: role, name: '角色管理' },
+            // { path: '/role', component: role, name: '角色管理' },
             { path: '/comp', component: comp, name: '公司管理' },
             { path: '/factory', component: factory, name: '工厂管理' }
         ]

+ 10 - 15
ys_vue/src/views/Home.vue

@@ -17,6 +17,9 @@
 						<el-dropdown-item divided @click.native="logout">退出登录</el-dropdown-item>
 					</el-dropdown-menu>
 				</el-dropdown>
+                <el-badge is-dot class="itemNew">
+                    <i class="el-icon-message-solid" style="font-size:24px"></i>
+                </el-badge>
 			</el-col>
 		</el-col>
 		<el-col :span="24" class="main">
@@ -86,19 +89,11 @@
 	export default {
 		data() {
 			return {
+                user: sessionStorage.getItem('user'),
 				sysName:'云塑网后台管理系统',
 				collapsed:false,
 				sysUserName: '',
-				form: {
-					name: '',
-					region: '',
-					date1: '',
-					date2: '',
-					delivery: false,
-					type: [],
-					resource: '',
-					desc: ''
-                },
+				
                 editPassWord: false,
                 editLoading: false,
                 addForm: {
@@ -174,10 +169,10 @@
             }
         },
 		mounted() {
-			var user = sessionStorage.getItem('user');
-			if (user) {
-				user = JSON.parse(user);
-				this.sysUserName = user.username || '';
+			if (this.user) {
+                var user = JSON.parse(this.user);
+                this.user = user;
+                this.sysUserName = user.username || '';
             } else {
                 this.$router.push('/login');
             }
@@ -187,7 +182,7 @@
 </script>
 
 <style scoped lang="scss">
-	@import '~scss_vars';
+    @import '~scss_vars';
 	
     .el-menu-vertical-demo i {
         margin-right: 10px;

+ 1 - 1
ys_vue/src/views/Login.vue

@@ -9,7 +9,7 @@
                 <el-input type="text" v-model="ruleForm.account" autocomplete="off" placeholder="账号" clearable prefix-icon="el-icon-user-solid"></el-input>
             </el-form-item>
             <el-form-item class="login-input" prop="password">
-                <el-input type="password" v-model="ruleForm.password" autocomplete="off" placeholder="密码" show-password prefix-icon="el-icon-lock"></el-input>
+                <el-input type="password" v-model="ruleForm.password" @keyup.enter.native="handleSubmit" autocomplete="off" placeholder="密码" show-password prefix-icon="el-icon-lock"></el-input>
             </el-form-item>
             <!-- <el-checkbox v-model="checked" checked class="remember">记住密码</el-checkbox> -->
             <el-form-item class="login-button" style="width:100%;">

+ 71 - 39
ys_vue/src/views/base/role.vue

@@ -19,7 +19,8 @@
 		<el-table :data="list" highlight-current-row :height="tableHeight" v-loading="listLoading" style="width: 100%;">
             <el-table-column type="index" width="60"></el-table-column>
 			<el-table-column prop="roleName" label="角色名称" width="120" sortable></el-table-column>
-			<el-table-column prop="sex" label="权限">
+            <el-table-column prop="subordinate" label="角色类型" width="120" sortable></el-table-column>
+			<el-table-column label="权限">
                 <template slot-scope="scope">
                     <el-col :span="2" v-if="scope.row.uploadPower == 1">
                         <el-tag size="medium">上传</el-tag>
@@ -59,24 +60,34 @@
         <!--新增界面-->
 		<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">
-				<el-form-item label="角色名称" prop="roleName">
-					<el-input v-model="addForm.roleName" autocomplete="off" placeholder="请输入角色名称"></el-input>
-				</el-form-item>
-				<el-form-item label="权限配置">
-                    <el-row>
-                        <el-col :span="6" v-for="(item,index) in roleList" :key="item.val" style="text-align:center;">
-                            <el-checkbox v-model="addForm[item.label]">{{item.name}}</el-checkbox>
-                        </el-col>
-                    </el-row>
-					 <!-- <el-table :data="roleList" border :show-header="false" style="width: 100%">
-                        <el-table-column prop="name" label="名称" width="80"></el-table-column>
-                        <el-table-column prop="role" label="权限">
-                            <template slot-scope="scope">
-                                <div v-for="(item,index) in scope.row.role"></div>
-                            </template>
-                        </el-table-column>
-                    </el-table> -->
-				</el-form-item>
+                <el-col :span="12">
+                    <el-form-item label="角色名称" prop="roleName">
+                        <el-input v-model="addForm.roleName" autocomplete="off" placeholder="请输入角色名称"></el-input>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="角色类型" prop="subordinate">
+                        <el-select v-model="addForm.subordinate" clearable filterable placeholder="请选择角色类型" style="width:202px">
+                            <el-option v-for="item in team" :key="item.value" :label="item.label" :value="item.value">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="权限配置">
+                            <el-col :span="6" v-for="(item,index) in roleList" :key="item.val" style="text-align:center;">
+                                <el-checkbox v-model="addForm[item.label]">{{item.name}}</el-checkbox>
+                            </el-col>
+                        <!-- <el-table :data="roleList" border :show-header="false" style="width: 100%">
+                            <el-table-column prop="name" label="名称" width="80"></el-table-column>
+                            <el-table-column prop="role" label="权限">
+                                <template slot-scope="scope">
+                                    <div v-for="(item,index) in scope.row.role"></div>
+                                </template>
+                            </el-table-column>
+                        </el-table> -->
+                    </el-form-item>
+                </el-col>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
 				<el-button @click.native="addFormVisible = false">取消</el-button>
@@ -87,24 +98,36 @@
 		<!--编辑界面-->
 		<el-dialog title="编辑人员" v-if="editFormVisible" :visible.sync="editFormVisible" :close-on-click-modal="false" customClass='customWidth'>
 			<el-form :model="editForm" label-width="100px" :rules="formRules" ref="editForm">
-				<el-form-item label="角色名称" prop="roleName">
-					<el-input v-model="editForm.roleName" autocomplete="off" placeholder="请输入角色名称"></el-input>
-				</el-form-item>
-				<el-form-item label="权限配置">
-                    <el-row>
-                        <el-col :span="6" v-for="(item,index) in roleList" :key="item.val" style="text-align:center;">
-                            <el-checkbox v-model="editForm[item.label]" :checked="editForm[item.label]">{{item.name}}</el-checkbox>
-                        </el-col>
-                    </el-row>
-					 <!-- <el-table :data="roleList" border :show-header="false" style="width: 100%">
-                        <el-table-column prop="name" label="名称" width="80"></el-table-column>
-                        <el-table-column prop="role" label="权限">
-                            <template slot-scope="scope">
-                                <div v-for="(item,index) in scope.row.role"></div>
-                            </template>
-                        </el-table-column>
-                    </el-table> -->
-				</el-form-item>
+                <el-col :span="12">
+                    <el-form-item label="角色名称" prop="roleName">
+                        <el-input v-model="editForm.roleName" autocomplete="off" placeholder="请输入角色名称"></el-input>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="角色类型" prop="subordinate">
+                        <el-select v-model="editForm.subordinate" clearable filterable placeholder="请选择角色类型" style="width:202px">
+                            <el-option v-for="item in team" :key="item.value" :label="item.label" :value="item.value">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="权限配置">
+                        <el-row>
+                            <el-col :span="6" v-for="(item,index) in roleList" :key="item.val" style="text-align:center;">
+                                <el-checkbox v-model="editForm[item.label]" :checked="editForm[item.label]">{{item.name}}</el-checkbox>
+                            </el-col>
+                        </el-row>
+                        <!-- <el-table :data="roleList" border :show-header="false" style="width: 100%">
+                            <el-table-column prop="name" label="名称" width="80"></el-table-column>
+                            <el-table-column prop="role" label="权限">
+                                <template slot-scope="scope">
+                                    <div v-for="(item,index) in scope.row.role"></div>
+                                </template>
+                            </el-table-column>
+                        </el-table> -->
+                    </el-form-item>
+                </el-col>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
 				<el-button @click.native="editFormVisible = false">取消</el-button>
@@ -123,6 +146,7 @@
 				filters: {
                     keyName: ''
                 },
+                team: [{label:'供应商',value:'供应商'},{label:'客户',value:'客户'}],
                 // roleList: [{
                 //     name: '项目文档',
                 //     role: [{name:'上传',val:0},{name:'下载',val:1},{name:'浏览',val:2},{name:'审批',val:3}]
@@ -158,6 +182,9 @@
                 formRules: {
 					roleName: [
 						{ required: true, message: '请输入姓名', trigger: 'blur' }
+                    ],
+                    subordinate: [
+						{ required: true, message: '请选择角色类型', trigger: ['blur','change'] }
 					]
                 },
 
@@ -170,6 +197,7 @@
                     dowloadPower:false,
                     viewPower:false,
                     approvalPower:false,
+                    subordinate: '',
                     flag: 0
 				},
                 
@@ -182,7 +210,9 @@
                     uploadPower: false,
                     dowloadPower:false,
                     viewPower:false,
-                    approvalPower:false
+                    approvalPower:false,
+                    subordinate: '',
+                    flag: 1
 				}
 			}
 		},
@@ -233,7 +263,8 @@
 					uploadPower: false,
                     dowloadPower:false,
                     viewPower:false,
-                    approvalPower:false
+                    approvalPower:false,
+                    subordinate: ''
 				};
             },
             
@@ -248,6 +279,7 @@
                             dowloadPower: this.addForm.dowloadPower?1:0,
                             viewPower: this.addForm.viewPower?1:0,
                             approvalPower: this.addForm.approvalPower?1:0,
+                            subordinate: this.addForm.subordinate,
                             flag: 0
                         }, res => {
                             this.addLoading = false;

+ 122 - 34
ys_vue/src/views/mold/moldDownload.vue

@@ -1,4 +1,4 @@
-<template>
+<template slot-scope="scope">
   <section>
     <!--工具条-->
     <el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
@@ -35,40 +35,86 @@
       style="width: 100%;"
     >
       <el-table-column type="index" width="60"></el-table-column>
-      <el-table-column prop="name" label="模具名称" width="200" sortable></el-table-column>
-      <el-table-column label="模具3D图档" width="200" sortable>
+      <el-table-column width="200">
+        <template slot="header">
+          <el-checkbox>
+            <span>模具名称</span>
+          </el-checkbox>
+        </template>
         <template slot-scope="scope">
-          <span v-if="scope.row.mould3D == 0">未上传</span>
-          <span v-else-if="scope.row.mould3D == 1">审批中</span>
-          <span v-else>已通过</span>
+          <el-checkbox>
+            <span>{{scope.row.name}}</span>
+          </el-checkbox>
         </template>
       </el-table-column>
-      <el-table-column label="模具2D图档" width="200" sortable>
+      <el-table-column width="200">
+        <template slot="header">
+          <el-checkbox>
+            <span>模具3D图档</span>
+          </el-checkbox>
+        </template>
         <template slot-scope="scope">
-          <span v-if="scope.row.mould2D == 0">未上传</span>
-          <span v-else-if="scope.row.mould2D == 1">审批中</span>
-          <span v-else>已通过</span>
+          <span v-if="scope.row.states[0] == 0" style="padding-left: 24px;">未上传</span>
+          <span v-else-if="scope.row.states[0] == 1" style="padding-left: 24px;">审批中</span>
+          <span v-else>
+            <el-checkbox>已通过</el-checkbox>
+          </span>
         </template>
       </el-table-column>
-      <el-table-column label="零件3D图档" width="200" sortable>
+      <el-table-column width="200">
+        <template slot="header">
+          <el-checkbox>
+            <span>模具2D图档</span>
+          </el-checkbox>
+        </template>
         <template slot-scope="scope">
-          <span v-if="scope.row.part3D == 0">未上传</span>
-          <span v-else-if="scope.row.part3D == 1">审批中</span>
-          <span v-else>已通过</span>
+          <span v-if="scope.row.states[1] == 0" style="padding-left: 24px;">未上传</span>
+          <span v-else-if="scope.row.states[1] == 1" style="padding-left: 24px;">审批中</span>
+          <span v-else>
+            <el-checkbox>已通过</el-checkbox>
+          </span>
         </template>
       </el-table-column>
-      <el-table-column label="零件2D图档" width="200" sortable>
+      <el-table-column width="200">
+        <template slot="header">
+          <el-checkbox>
+            <span>零件3D图档</span>
+          </el-checkbox>
+        </template>
         <template slot-scope="scope">
-          <span v-if="scope.row.part2D == 0">未上传</span>
-          <span v-else-if="scope.row.part2D == 1">审批中</span>
-          <span v-else>已通过</span>
+          <span v-if="scope.row.states[2] == 0" style="padding-left: 24px;">未上传</span>
+          <span v-else-if="scope.row.states[2] == 1" style="padding-left: 24px;">审批中</span>
+          <span v-else>
+            <el-checkbox>已通过</el-checkbox>
+          </span>
         </template>
       </el-table-column>
-      <el-table-column label="保养方案" width="200" sortable>
+      <el-table-column width="200">
+        <template slot="header">
+          <el-checkbox>
+            <span>零件2D图档</span>
+          </el-checkbox>
+        </template>
+        <template slot-scope="scope">
+          <span v-if="scope.row.states[3] == 0" style="padding-left: 24px;">未上传</span>
+          <span v-else-if="scope.row.states[3] == 1" style="padding-left: 24px;">审批中</span>
+          <span v-else>
+            <el-checkbox>已通过</el-checkbox>
+          </span>
+        </template>
+      </el-table-column>
+      <el-table-column width="200">
+        <template slot="header">
+          <el-checkbox>
+            <span>保养方案</span>
+          </el-checkbox>
+        </template>
         <template slot-scope="scope">
-          <span v-if="scope.row.maintenance == 0">未上传</span>
-          <span v-else-if="scope.row.maintenance == 1">审批中</span>
-          <span v-else>已通过</span>
+          <span v-if="scope.row.states[4] == 0" style="padding-left: 24px;">未上传</span>
+          <span v-else-if="scope.row.states[4] == 1" style="padding-left: 24px;">审批中</span>
+          <span v-else>
+            <el-checkbox>已通过</el-checkbox>
+          </span>
         </template>
       </el-table-column>
     </el-table>
@@ -97,21 +143,39 @@ export default {
         //临时数据
         {
           name: "墨盒类型1",
-          mould3D: 0,
-          mould2D: 1,
-          part3D: 2,
-          part2D: 0,
-          maintenance: 1
+          states: [0, 1, 2, 0, 1]
         },
         {
-          name: "墨盒类型啦啦",
-          mould3D: 2,
-          mould2D: 0,
-          part3D: 1,
-          part2D: 2,
-          maintenance: 0
+          name: "墨盒类型2",
+          states: [2, 0, 1, 2, 0]
+        },
+        {
+          name: "墨盒类型3",
+          states: [1, 2, 0, 1, 2]
+        },
+        {
+          name: "墨盒类型4",
+          states: [0, 1, 2, 0, 1]
+        },
+        {
+          name: "墨盒类型5",
+          states: [2, 0, 1, 2, 0]
+        },
+        {
+          name: "墨盒类型6",
+          states: [2, 2, 2, 2, 2]
         }
       ],
+      // checkBoxArray: [],
+      // defaultItem: { value: false, able: true },
+      // defaultLine: [
+      //   { value: false, able: true },
+      //   { value: false, able: true },
+      //   { value: false, able: true },
+      //   { value: false, able: true },
+      //   { value: false, able: true },
+      //   { value: false, able: true }
+      // ],
       filters: {
         name: "",
         value: ""
@@ -131,13 +195,37 @@ export default {
       this.size = val;
       // this.getUsers();
     },
-    selsChange: function(sels) {
+    selsChange(sels) {
       this.sels = sels;
     }
+    // 点击复选框事件
+    // checkChanged(x, y) {
+    //   this.checkBoxArray[x][y].value = !this.checkBoxArray[x][y].value;
+    //   console.log(
+    //     "x=" + x + " y=" + y + " value=" + this.checkBoxArray[x][y].value
+    //   );
+    //   console.log(this.checkBoxArray[0]);
+    // }
   },
   created() {
     let height = window.innerHeight;
     this.tableHeight = height - 210;
+
+    //向checkBoxArray中push信息
+    // this.checkBoxArray = [];
+    // this.checkBoxArray.push(this.defaultLine);
+    // this.moulds.forEach(mould => {
+    //   var checkBoxLine = [];
+    //   checkBoxLine.push(this.defaultItem);
+    //   for (var i = 0; i < 6; i++) {}
+    //   mould.states.forEach(state => {
+    //     var value = false;
+    //     var able = state == 2;
+    //     var item = { value, able };
+    //     checkBoxLine.push(item);
+    //   });
+    //   this.checkBoxArray.push(checkBoxLine);
+    // });
   },
   mounted() {}
 };

+ 325 - 181
ys_vue/src/views/project/project.vue

@@ -4,101 +4,143 @@
 		<el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
 			<el-form :inline="true" :model="filters">
 				<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-button type="primary" v-on:click="getProject">查询</el-button>
 				</el-form-item>
-				<el-form-item>
+				<el-form-item style="float:right;" v-if="">
 					<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-column type="selection" width="55">
-			</el-table-column>
+		<el-table :data="list" highlight-current-row v-loading="listLoading" :height="tableHeight" style="width: 100%;">
 			<el-table-column type="index" width="60">
 			</el-table-column>
-			<el-table-column prop="name" label="姓名" width="120" sortable>
+			<el-table-column prop="projectName" label="项目名称" width="200" sortable>
 			</el-table-column>
-			<el-table-column prop="sex" label="性别" width="100" :formatter="formatSex" sortable>
+            <el-table-column prop="ownerCompanyName" label="生产方" min-width="200" sortable>
 			</el-table-column>
-			<el-table-column prop="age" label="年龄" width="100" sortable>
+            <el-table-column prop="charger" label="生产方负责人" min-width="150" sortable>
 			</el-table-column>
-			<el-table-column prop="birth" label="生日" width="120" sortable>
+			<el-table-column prop="creator" label="项目创建人" width="150" sortable>
 			</el-table-column>
-			<el-table-column prop="addr" label="地址" min-width="180" sortable>
+			<el-table-column prop="indate" label="创建时间" width="180" sortable>
 			</el-table-column>
-			<el-table-column label="操作" width="150">
+			<!-- <el-table-column label="操作" width="150">
 				<template slot-scope="scope">
 					<el-button size="small" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
 					<el-button type="danger" size="small" @click="handleDel(scope.$index, scope.row)">删除</el-button>
 				</template>
-			</el-table-column>
+			</el-table-column> -->
 		</el-table>
 
 		<!--工具条-->
 		<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>
 
-		<!--编辑界面-->
-		<el-dialog title="编辑" v-model="editFormVisible" :close-on-click-modal="false">
-			<el-form :model="editForm" label-width="80px" :rules="editFormRules" ref="editForm">
-				<el-form-item label="姓名" prop="name">
-					<el-input v-model="editForm.name" autocomplete="off"></el-input>
-				</el-form-item>
-				<el-form-item label="性别">
-					<el-radio-group v-model="editForm.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="editForm.age" :min="0" :max="200"></el-input-number>
-				</el-form-item>
-				<el-form-item label="生日">
-					<el-date-picker type="date" placeholder="选择日期" v-model="editForm.birth"></el-date-picker>
-				</el-form-item>
-				<el-form-item label="地址">
-					<el-input type="textarea" v-model="editForm.addr"></el-input>
-				</el-form-item>
+        <!--新增界面-->
+		<el-dialog title="新增项目" v-if="addFormVisible" :visible.sync="addFormVisible" :close-on-click-modal="false" customClass='customWidth'>
+			<el-form :model="addForm" label-width="120px" :rules="formRules" ref="addForm">
+                <el-col :span="24">
+                    <el-form-item label="项目名称" prop="projectName">
+                        <el-input v-model="addForm.projectName" autocomplete="off" placeholder="请输入项目名称" style="width:510px"></el-input>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="生产方公司" prop="customerCompany">
+                        <el-select v-model="addForm.customerCompany" clearable filterable placeholder="请选择生产方公司" value-key='id' @change="companyChange(0)" style="width:195px">
+                            <el-option v-for="item in company" :key="item.id" :label="item.companyName" :value="item">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="生产方负责人" prop="charger">
+                        <el-select v-model="addForm.charger" clearable filterable placeholder="请选择生产方负责人" value-key='id' style="width:195px">
+                            <el-option v-for="item in charger" :key="item.id" :label="item.username" :value="item">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="本方参与人">
+                        <el-select v-model="addForm.userA" clearable filterable multiple placeholder="请选择本方参与人" style="width:510px">
+                            <el-option v-for="item in userA" :key="item.id" :label="item.username" :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="生产方参与人">
+                        <el-select v-model="addForm.userB" clearable filterable multiple placeholder="请选择生产方参与人" style="width:510px">
+                            <el-option v-for="item in userB" :key="item.id" :label="item.username" :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
-				<el-button @click.native="editFormVisible = false">取消</el-button>
-				<el-button type="primary" @click.native="editSubmit" :loading="editLoading">提交</el-button>
+				<el-button @click.native="addFormVisible = false">取消</el-button>
+				<el-button type="primary" @click.native="addSubmit" :loading="addLoading">提交</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-dialog title="编辑" v-if="editFormVisible" :visible.sync="editFormVisible" :close-on-click-modal="false" customClass='customWidth'>
+			<el-form :model="editForm" label-width="120px" :rules="formRules" ref="editForm" class="demo-form-inline">
+				 <el-col :span="24">
+                    <el-form-item label="项目名称" prop="projectName">
+                        <el-input v-model="editForm.projectName" autocomplete="off" placeholder="请输入项目名称" style="width:510px"></el-input>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="生产方公司" prop="customerCompany">
+                        <el-select v-model="editForm.customerCompany" clearable filterable placeholder="请选择生产方公司" value-key='id' @change="companyChange(1)" style="width:195px">
+                            <el-option v-for="item in company" :key="item.id" :label="item.companyName" :value="item">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <el-form-item label="生产方负责人" prop="charger">
+                        <el-select v-model="editForm.charger" clearable filterable placeholder="请选择生产方负责人" value-key='id' style="width:195px">
+                            <el-option v-for="item in charger" :key="item.id" :label="item.username" :value="item">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="本方参与人">
+                        <el-select v-model="editForm.userA" clearable filterable multiple placeholder="请选择本方参与人" style="width:510px">
+                            <el-option v-for="item in userA" :key="item.id" :label="item.username" :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="24">
+                    <el-form-item label="生产方参与人">
+                        <el-select v-model="editForm.userB" clearable filterable multiple placeholder="请选择生产方参与人" style="width:510px">
+                            <el-option v-for="item in userB" :key="item.id" :label="item.username" :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
 			</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>
+				<el-button @click.native="editFormVisible = false">取消</el-button>
+				<el-button type="primary" @click.native="editSubmit" :loading="editLoading">提交</el-button>
 			</div>
 		</el-dialog>
 	</section>
@@ -106,117 +148,262 @@
 
 <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: ''
+                },
+                user: JSON.parse(sessionStorage.getItem('user')),
+                company:[],
+                charger: [],
+                userA: [],
+                userB: [],
+
+				list: [],
 				total: 0,
-				page: 1,
-				listLoading: false,
-				sels: [],//列表选中列
+                page: 1,
+                size: 20,
+                listLoading: false,
+                tableHeight: 0,
+
+                formRules: {
+					projectName: [
+						{ required: true, message: '请输入项目名称', trigger: 'blur' }
+                    ],
+                    customerCompany: [
+                        { required: true, message: '请选择客户公司', trigger: ['blur','change'] }
+                    ],
+                    charger: [
+                        { required: true, message: '请选择客户方负责人', trigger: ['blur','change'] }
+                    ]
+                },
+                
+                addFormVisible: false,//新增界面是否显示
+				addLoading: false,
+				//新增界面数据
+				addForm: {
+					projectName: '',
+                    customerCompany: '',
+                    charger: '',
+                    userA: [],
+                    userB: []
+				},
 
 				editFormVisible: false,//编辑界面是否显示
 				editLoading: false,
-				editFormRules: {
-					name: [
-						{ required: true, message: '请输入姓名', trigger: 'blur' }
-					]
-				},
 				//编辑界面数据
 				editForm: {
 					id: 0,
-					name: '',
-					sex: -1,
-					age: 0,
-					birth: '',
-					addr: ''
-				},
-
-				addFormVisible: false,//新增界面是否显示
-				addLoading: false,
-				addFormRules: {
-					name: [
-						{ required: true, message: '请输入姓名', trigger: 'blur' }
-					]
-				},
-				//新增界面数据
-				addForm: {
-					name: '',
-					sex: -1,
-					age: 0,
-					birth: '',
-					addr: ''
+					projectName: '',
+                    customerCompany: '',
+                    charger: '',
+                    userA: [],
+                    userB: []
 				}
 
 			}
 		},
 		methods: {
-			//性别显示转换
-			formatSex: function (row, column) {
-				return row.sex == 1 ? '男' : row.sex == 0 ? '女' : '未知';
-			},
+            // 获取基础数据
+            getMsg(){
+                this.http.post(this.port.base.companys, {}, res => {
+                    if (res.code == "ok") {
+                        var list = res.data , array = [];
+                        for(var i in list){
+                            if(list[i].id != this.user.companyId){
+                                array.push(list[i])
+                            }
+                        }
+                        this.company = array;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
+
+			//分页
 			handleCurrentChange(val) {
 				this.page = val;
-				this.getUsers();
-			},
-			//获取用户列表
-			getUsers() {
-				let para = {
-					page: this.page,
-					name: this.filters.name
-				};
+				this.getProject();
+            },
+
+            handleSizeChange(val) {
+                this.size = val;
+				this.getProject();
+            },
+            
+			//获取项目列表
+			getProject() {
 				this.listLoading = true;
-				//NProgress.start();
-				getUserListPage(para).then((res) => {
-					this.total = res.data.total;
-					this.users = res.data.users;
-					this.listLoading = false;
-					//NProgress.done();
+				this.http.post(this.port.project.projectList, {
+                    keyName: this.filters.keyName,
+                    currentPage: 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'
+                    });
+                })
+            },
+
+            //选择公司切换人员
+            companyChange: function(type){
+                var param = {};
+                if(type == 0){
+                    param.companyId = this.addForm.customerCompany.id;
+                } else if(type == 1) {
+                    param.companyId = this.editForm.customerCompany.id;
+                }
+                param.subordinateType = 1;
+                this.http.post(this.port.project.getUserList, param , res => {
+                    if (res.code == "ok") {
+                        this.charger = res.data;
+                        this.userB = res.data;
+                        if(type == 0){
+                            this.addForm.charger = '';
+                            this.addForm.userB = [];
+                        } else {
+                            this.editForm.charger = '';
+                            this.editForm.userB = [];
+                        }
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
+
+            //显示新增界面
+			handleAdd: function () {
+				this.addFormVisible = true;
+				this.addForm = {
+					projectName: '',
+                    customerCompany: '',
+                    charger: '',
+                    userA: [],
+                    userB: []
+				};
+            },
+
+            //新增
+			addSubmit: function () {
+				this.$refs.addForm.validate((valid) => {
+					if (valid) {
+                        console.log(this.addForm)
+                        var userIds = "";
+                        if(this.addForm.userA.length != 0){
+                            for(var i in this.addForm.userA){
+                                userIds += this.addForm.userA[i] + ","
+                            }
+                        }
+                        
+                        if(this.addForm.userB.length != 0){
+                            for(var i in this.addForm.userB){
+                                userIds += this.addForm.userB[i] + ","
+                            }
+                        }
+                        
+                        userIds = userIds.substring(0,userIds.length-1)
+                        this.addLoading = true;
+                        this.http.post(this.port.project.addProject, {
+                            projectName: this.addForm.projectName,
+                            customerCompany: this.addForm.customerCompany.id,
+                            customerCompanyName: this.addForm.customerCompany.companyName,
+                            chargerId: this.addForm.charger.id,
+                            charger: this.addForm.charger.username,
+                            userIds: userIds,
+                            flag: 0
+                        } , res => {
+                            this.addLoading = false;
+                            this.addFormVisible = false;
+                            if (res.code == "ok") {
+                                this.$message({
+                                    message: '创建成功',
+                                    type: 'success'
+                                });
+                                this.getProject();
+                            } else {
+                                this.$message({
+                                    message: res.msg,
+                                    type: 'error'
+                                });
+                            }
+                        }, error => {
+                            this.addLoading = false;
+                            this.addFormVisible = false;
+                            this.$message({
+                                message: error,
+                                type: 'error'
+                            });
+                        })
+					}
 				});
 			},
+
 			//删除
 			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();
+						this.getProject();
 					});
 				}).catch(() => {
 
 				});
-			},
+            },
+            
 			//显示编辑界面
 			handleEdit: function (index, row) {
 				this.editFormVisible = true;
-				this.editForm = Object.assign({}, row);
-			},
-			//显示新增界面
-			handleAdd: function () {
-				this.addFormVisible = true;
-				this.addForm = {
-					name: '',
-					sex: -1,
-					age: 0,
-					birth: '',
-					addr: ''
+                this.editForm = Object.assign({}, row);
+                this.editForm = {
+                    id: row.id,
+					projectName: row.projectName,
+                    customerCompany: row.customerCompanyName,
+                    charger: row.charger,
+                    userA: [],
+                    userB: []
 				};
 			},
+			
 			//编辑
 			editSubmit: function () {
 				this.$refs.editForm.validate((valid) => {
@@ -235,64 +422,21 @@
 								});
 								this.$refs['editForm'].resetFields();
 								this.editFormVisible = false;
-								this.getUsers();
+								this.getProject();
 							});
 						});
 					}
 				});
-			},
-			//新增
-			addSubmit: function () {
-				this.$refs.addForm.validate((valid) => {
-					if (valid) {
-						this.$confirm('确认提交吗?', '提示', {}).then(() => {
-							this.addLoading = true;
-							//NProgress.start();
-							let para = Object.assign({}, this.addForm);
-							para.birth = (!para.birth || para.birth == '') ? '' : util.formatDate.format(new Date(para.birth), 'yyyy-MM-dd');
-							addUser(para).then((res) => {
-								this.addLoading = false;
-								//NProgress.done();
-								this.$message({
-									message: '提交成功',
-									type: 'success'
-								});
-								this.$refs['addForm'].resetFields();
-								this.addFormVisible = false;
-								this.getUsers();
-							});
-						});
-					}
-				});
-			},
-			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;
+        },
 		mounted() {
-			this.getUsers();
+            this.getMsg();
+			this.getProject();
 		}
 	}
 

+ 38 - 53
ys_vue/src/views/project/staff.vue

@@ -3,14 +3,6 @@
 		<!--工具条-->
 		<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.roleType" clearable placeholder="请选择角色">
-                            <el-option v-for="item in role" :key="item.id" :label="item.roleName" :value="item.id">
-                            </el-option>
-                        </el-select>
-                    </el-form-item>
-                </el-col>
                 <el-col :span="3">
                     <el-form-item>
                         <el-select v-model="filters.companyId" clearable filterable placeholder="请选择公司">
@@ -50,8 +42,8 @@
             <el-table-column prop="roleName" label="角色" sortable></el-table-column>
 			<el-table-column label="操作" width="150">
 				<template slot-scope="scope">
-					<el-button size="small" @click="handleEdit(scope.$index, scope.row)" v-if="scope.row.roleType != -1">编辑</el-button>
-					<el-button type="danger" size="small" @click="handleDel(scope.$index, scope.row)" v-if="scope.row.roleType != -1">删除</el-button>
+					<el-button size="small" @click="handleEdit(scope.$index, scope.row)" v-if="scope.row.roleName != -1">编辑</el-button>
+					<el-button type="danger" size="small" @click="handleDel(scope.$index, scope.row)" v-if="scope.row.roleName != -1">删除</el-button>
 				</template>
 			</el-table-column>
 		</el-table>
@@ -78,7 +70,7 @@
 				<el-form-item label="用户名" prop="account">
 					<el-input v-model="addForm.account" autocomplete="off" placeholder="请输入用户名(登录账号)"></el-input>
 				</el-form-item>
-				<el-form-item label="联系方式">
+				<el-form-item label="联系方式" prop="mobile">
 					<el-input v-model="addForm.mobile" autocomplete="off" placeholder="请输入联系方式"></el-input>
 				</el-form-item>
                 <el-form-item label="类型" prop="teamName">
@@ -87,17 +79,14 @@
                         </el-option>
                     </el-select>
 				</el-form-item>
-                <el-form-item label="公司" prop="companyId">
+                <el-form-item label="公司" prop="companyId" v-if="addForm.teamName=='生产方'">
 					<el-select v-model="addForm.companyId" clearable filterable placeholder="请选择所属公司" style="width:202px">
                         <el-option v-for="item in company" :key="item.id" :label="item.companyName" :value="item.id">
                         </el-option>
                     </el-select>
 				</el-form-item>
-				<el-form-item label="角色" prop="roleType">
-					<el-select v-model="addForm.roleType" clearable filterable placeholder="请选择角色" style="width:202px">
-                        <el-option v-for="item in role" :key="item.id" :label="item.roleName" :value="item.id">
-                        </el-option>
-                    </el-select>
+				<el-form-item label="角色" prop="roleName">
+                    <el-input v-model="addForm.roleName" autocomplete="off" placeholder="请输入角色名称"></el-input>
 				</el-form-item>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
@@ -116,7 +105,7 @@
 				<el-form-item label="用户名" prop="account">
 					<el-input v-model="editForm.account" autocomplete="off" placeholder="请输入用户名(登录账号)"></el-input>
 				</el-form-item>
-				<el-form-item label="联系方式">
+				<el-form-item label="联系方式" prop="mobile">
 					<el-input v-model="editForm.mobile" autocomplete="off" placeholder="请输入联系方式"></el-input>
 				</el-form-item>
                 <el-form-item label="类型" prop="teamName">
@@ -125,17 +114,14 @@
                         </el-option>
                     </el-select>
 				</el-form-item>
-                <el-form-item label="公司" prop="companyId">
+                <el-form-item label="公司" prop="companyId" v-if="addForm.teamName=='生产方'">
 					<el-select v-model="editForm.companyId" clearable filterable placeholder="请选择所属公司" style="width:202px">
                         <el-option v-for="item in company" :key="item.id" :label="item.companyName" :value="item.id">
                         </el-option>
                     </el-select>
 				</el-form-item>
-				<el-form-item label="角色" prop="roleType">
-					<el-select v-model="editForm.roleType" clearable filterable placeholder="请选择角色" style="width:202px">
-                        <el-option v-for="item in role" :key="item.id" :label="item.roleName" :value="item.id">
-                        </el-option>
-                    </el-select>
+				<el-form-item label="角色" prop="roleName">
+                    <el-input v-model="editForm.roleName" autocomplete="off" placeholder="请输入角色名称"></el-input>
 				</el-form-item>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
@@ -153,17 +139,30 @@
 
 	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: '',
-                    roleType: '',
+                    roleName: '',
                     flag: '姓名',
                     companyId: ''
                 },
                 
-                team: [{label:'供应商',value:'供应商'},{label:'客户',value:'客户'}],
+                team: [{label:'资产方',value:'资产方'},{label:'生产方',value:'生产方'}],
                 company: [],
-                role: [],
+                // role: [],
+                // roles:[],
 
 				list: [],
 				total: 0,
@@ -171,7 +170,7 @@
                 size: 20,
                 listLoading: false,
                 tableHeight: 0,
-                
+
                 formRules: {
                     username: [
 						{ required: true, message: '请输入姓名', trigger: 'blur' }
@@ -179,14 +178,18 @@
                     account: [
 						{ required: true, message: '请输入用户名', trigger: 'blur' }
                     ],
+                    mobile: [
+                        // { required: true, message: '请输入联系方式', trigger: 'blur' },
+                        { required: true, validator: checkPhone, trigger: 'blur'}
+                    ],
                     teamName: [
 						{ required: true, message: '请选择人员类型', trigger: ["blur",'change'] }
 					],
                     companyId: [
 						{ required: true, message: '请选择所属公司', trigger: ["blur",'change'] }
 					],
-                    roleType: [
-						{ required: true, message: '请选择角色', trigger: ["blur",'change'] }
+                    roleName: [
+						{ required: true, message: '请输入角色名称', trigger: ["blur",'change'] }
 					]
                 },
 
@@ -200,7 +203,7 @@
                     mobile: '',
                     teamName: '',
 					companyId: '',
-                    roleType: '',
+                    roleName: '',
                     flag: 0
 				},
 
@@ -215,7 +218,7 @@
                     mobile: '',
                     teamName: '',
 					companyId: '',
-                    roleType: '',
+                    roleName: '',
                     flag: 1
 				}
 			}
@@ -223,22 +226,6 @@
 		methods: {
             // 获取基础数据
             getMsg(){
-                this.http.post(this.port.base.roles, {}, res => {
-                    if (res.code == "ok") {
-                        this.role = res.data;
-                    } else {
-                        this.$message({
-                            message: res.msg,
-                            type: 'error'
-                        });
-                    }
-                }, error => {
-                    this.$message({
-                        message: error,
-                        type: 'error'
-                    });
-                })
-
                 this.http.post(this.port.base.companys, {}, res => {
                     if (res.code == "ok") {
                         this.company = res.data;
@@ -274,10 +261,8 @@
                     keyName: this.filters.keyName,
                     currentPage: this.page,
                     pageSize: this.size,
-                    roleType: this.filters.roleType==''?-2:this.filters.roleType,
                     companyId: this.filters.companyId==''?-1:this.filters.companyId,
                     flag: this.filters.flag=='姓名'?0:this.filters.flag
-
                 }, res => {
                     this.listLoading = false;
                     if (res.code == "ok") {
@@ -308,7 +293,7 @@
                     mobile: '',
                     teamName: '',
 					companyId: '',
-                    roleType: '',
+                    roleName: '',
                     flag: 0
 				};
             },
@@ -376,7 +361,7 @@
             
 			//显示编辑界面
 			handleEdit: function (index, row) {
-				this.editFormVisible = true;
+                this.editFormVisible = true;
 				this.editForm = {
                     id: row.id,
                     parentId: JSON.parse(sessionStorage.getItem('user')).id,
@@ -385,7 +370,7 @@
                     mobile: row.mobile,
                     teamName: row.teamName,
 					companyId: row.companyId,
-                    roleType: row.roleType,
+                    roleName: row.roleName,
                     flag: 1
 				};
             },