Browse Source

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

5 years ago
parent
commit
3309a79d3e

+ 14 - 10
cloud-model/src/main/java/com/hssx/cloudmodel/controller/ProjectController.java

@@ -13,6 +13,7 @@ import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.bind.annotation.ResponseBody;
+
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 
 
 
 
@@ -22,7 +23,7 @@ import javax.servlet.http.HttpServletRequest;
  */
  */
 @Controller
 @Controller
 @RequestMapping("/project")
 @RequestMapping("/project")
-public class ProjectController{
+public class ProjectController {
     @Autowired
     @Autowired
     private ProjectService projectService;
     private ProjectService projectService;
     @Autowired
     @Autowired
@@ -42,15 +43,15 @@ public class ProjectController{
     @ApiOperation("添加/修改项目")
     @ApiOperation("添加/修改项目")
     @RequestMapping("/add")
     @RequestMapping("/add")
     @ResponseBody
     @ResponseBody
-    public HttpRespMsg addAndUpdateProject(Project project, HttpServletRequest request, Integer flag,String customerCompanyIds,
-                                           @RequestParam(required = false)Integer customerApproverId,String customerCompanyNames,
-                                           @RequestParam(required = false)Integer ownerApproverId,String modelIds,
-                                            String token,@RequestParam(required = false) String userIds) {
+    public HttpRespMsg addAndUpdateProject(Project project, HttpServletRequest request, Integer flag, String customerCompanyIds,
+                                           @RequestParam(required = false) Integer customerApproverId, String customerCompanyNames,
+                                           @RequestParam(required = false) Integer ownerApproverId, String modelIds,
+                                           String token, @RequestParam(required = false) String userIds) {
         HttpRespMsg msg = new HttpRespMsg();
         HttpRespMsg msg = new HttpRespMsg();
         QueryWrapper<User> qw = new QueryWrapper<>();
         QueryWrapper<User> qw = new QueryWrapper<>();
-        qw.eq("head_imgurl",token);
+        qw.eq("head_imgurl", token);
         User user = userService.getOne(qw);
         User user = userService.getOne(qw);
-        msg = projectService.addAndUpdateProject(project, flag, user,userIds,customerCompanyIds,customerCompanyNames,modelIds,ownerApproverId,customerApproverId);
+        msg = projectService.addAndUpdateProject(project, flag, user, userIds, customerCompanyIds, customerCompanyNames, modelIds, ownerApproverId, customerApproverId);
         return msg;
         return msg;
     }
     }
 
 
@@ -65,32 +66,35 @@ public class ProjectController{
     @ResponseBody
     @ResponseBody
     public HttpRespMsg list(@RequestParam(required = false) String keyName, PageUtil page, String token) {
     public HttpRespMsg list(@RequestParam(required = false) String keyName, PageUtil page, String token) {
         User currentUser = userService.getOne(new QueryWrapper<User>().eq("head_imgurl", token));
         User currentUser = userService.getOne(new QueryWrapper<User>().eq("head_imgurl", token));
-        HttpRespMsg msg = projectService.getList(keyName,page,currentUser);
+        HttpRespMsg msg = projectService.getList(keyName, page, currentUser);
         return msg;
         return msg;
     }
     }
 
 
     /**
     /**
      * 项目详情
      * 项目详情
      * 参数: id 项目id
      * 参数: id 项目id
+     *
      * @return
      * @return
      */
      */
     @ApiOperation("项目详情")
     @ApiOperation("项目详情")
     @RequestMapping("/detail")
     @RequestMapping("/detail")
     @ResponseBody
     @ResponseBody
     public HttpRespMsg getUserByCompanyIdOrSubordinateType(Project project) {
     public HttpRespMsg getUserByCompanyIdOrSubordinateType(Project project) {
-        HttpRespMsg msg = projectService.getProjectDetail(project);
+        HttpRespMsg msg = new HttpRespMsg();
+        msg = projectService.getProjectDetail(project);
         return msg;
         return msg;
     }
     }
 
 
     /**
     /**
      * 筛选模具列表时作为筛选条件所加载的项目列表
      * 筛选模具列表时作为筛选条件所加载的项目列表
      * 参数: token 用户身份凭证
      * 参数: token 用户身份凭证
+     *
      * @return
      * @return
      */
      */
     @ApiOperation("筛选模具项目列表")
     @ApiOperation("筛选模具项目列表")
     @RequestMapping("/projectList")
     @RequestMapping("/projectList")
     @ResponseBody
     @ResponseBody
-    public HttpRespMsg getProjectList(String token){
+    public HttpRespMsg getProjectList(String token) {
         HttpRespMsg msg = new HttpRespMsg();
         HttpRespMsg msg = new HttpRespMsg();
         msg = projectService.getListByUser(token);
         msg = projectService.getListByUser(token);
         return msg;
         return msg;

+ 80 - 88
ys_vue/index.html

@@ -1,99 +1,91 @@
 <!DOCTYPE html>
 <!DOCTYPE html>
 <html>
 <html>
+    <head>
+        <meta charset="utf-8">
+        <title>云塑网后台管理系统</title>
+        <!-- 高德地图 -->
+        <script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=362cff852a3a37d328f9697352eebacd"></script>
+        <style>
+            /* 地图弹窗样式 */
+            .window {
+                background: #fff;
+                padding: 0px 0px 10px;
+                border:1px solid silver;
+                border-radius: 5px;
+            }
 
 
-<head>
-    <meta charset="utf-8">
-    <title>云塑网后台管理系统</title>
-    <!-- 高德地图 -->
-    <script type="text/javascript"
-        src="https://webapi.amap.com/maps?v=1.4.15&key=362cff852a3a37d328f9697352eebacd"></script>
-    <style>
-        /* 地图弹窗样式 */
-        .window {
-            background: #fff;
-            padding: 0px 0px 10px;
-            border: 1px solid silver;
-            border-radius: 5px;
-        }
+            .info-top {
+                position: relative;
+                background: none repeat scroll 0 0 #F9F9F9;
+                border-bottom: 1px solid #CCC;
+                border-radius: 5px 5px 0 0;
+            }
 
 
-        .info-top {
-            position: relative;
-            background: none repeat scroll 0 0 #F9F9F9;
-            border-bottom: 1px solid #CCC;
-            border-radius: 5px 5px 0 0;
-        }
+            div.info-top div {
+                display: inline-block;
+                color: #333333;
+                font-size: 14px;
+                font-weight: bold;
+                line-height: 31px;
+                padding: 0 10px;
+            }
 
 
-        div.info-top div {
-            display: inline-block;
-            color: #333333;
-            font-size: 14px;
-            font-weight: bold;
-            line-height: 31px;
-            padding: 0 10px;
-        }
+            div.info-top div span {
+                font-size:11px;
+                color:#F00;
+            }
 
 
-        div.info-top div span {
-            font-size: 11px;
-            color: #F00;
-        }
+            div.info-top i {
+                position: absolute;
+                top: 10px;
+                right: 10px;
+                transition-duration: 0.25s;
+                cursor: pointer;
+            }
 
 
-        div.info-top i {
-            position: absolute;
-            top: 10px;
-            right: 10px;
-            transition-duration: 0.25s;
-            cursor: pointer;
-        }
+            div.info-middle {
+                font-size: 12px;
+                padding: 10px 6px;
+                line-height: 20px;
+                background-color: #fff;
+            }
+            
+            .customWidth {
+                width: 675px!important;
+            }
 
 
-        div.info-middle {
-            font-size: 12px;
-            padding: 10px 6px;
-            line-height: 20px;
-            background-color: #fff;
-        }
+            /* 滚动条样式修改 */
+            /*滚动条凹槽的颜色,还可以设置边框属性 */
+            ::-webkit-scrollbar-track-piece {
+                background-color:#f8f8f8;
+                -webkit-border-radius: 2em;
+                -moz-border-radius: 2em;
+                border-radius: 2em;
+            }
+            /*滚动条的宽度*/
+            ::-webkit-scrollbar {
+                width:9px;
+            height: 9px;}
+            /*滚动条的设置*/
+            ::-webkit-scrollbar-thumb {
+                background-color:#dddddd;
+                background-clip:padding-box;
+                -webkit-border-radius: 2em;
+                -moz-border-radius: 2em;
+                border-radius: 2em;}
 
 
-        .customWidth {
-            width: 675px !important;
-        }
-
-        /* 滚动条样式修改 */
-        /*滚动条凹槽的颜色,还可以设置边框属性 */
-        ::-webkit-scrollbar-track-piece {
-            background-color: #f8f8f8;
-            -webkit-border-radius: 2em;
-            -moz-border-radius: 2em;
-            border-radius: 2em;
-        }
-
-        /*滚动条的宽度*/
-        ::-webkit-scrollbar {
-            width: 9px;
-        }
-
-        /*滚动条的设置*/
-        ::-webkit-scrollbar-thumb {
-            background-color: #dddddd;
-            background-clip: padding-box;
-            -webkit-border-radius: 2em;
-            -moz-border-radius: 2em;
-            border-radius: 2em;
-        }
-
-        /*滚动条鼠标移上去*/
-        ::-webkit-scrollbar-thumb:hover {
-            background-color: #bbb;
-        }
-
-        /*取消消息列表弹出框的内边距*/
-        .popover-self {
-            padding: 0 !important;
-        }
-    </style>
-</head>
-
-<body>
-    <div id="app"></div>
-    <!-- built files will be auto injected -->
-</body>
+            /*滚动条鼠标移上去*/
+            ::-webkit-scrollbar-thumb:hover {
+                background-color:#bbb;
+            }
 
 
+            /*取消消息列表弹出框的内边距*/
+            .popover-self {
+                padding: 0 !important;
+            }    </style>
+    </head>
+    <body>
+        <div id="app"></div>
+        <!-- built files will be auto injected -->
+    </body>
 </html>
 </html>

+ 3 - 7
ys_vue/src/main.js

@@ -1,4 +1,3 @@
-import babelpolyfill from 'babel-polyfill'
 import Vue from 'vue'
 import Vue from 'vue'
 import App from './App'
 import App from './App'
 
 
@@ -32,15 +31,12 @@ Vue.use(ElementUI)
 Vue.use(VueRouter)
 Vue.use(VueRouter)
 Vue.use(Vuex)
 Vue.use(Vuex)
 
 
-//NProgress.configure({ showSpinner: false });
-
 const router = new VueRouter({
 const router = new VueRouter({
     routes
     routes
 })
 })
 
 
 
 
 router.beforeEach((to, from, next) => {
 router.beforeEach((to, from, next) => {
-    //NProgress.start();
     if (to.path == '/login') {
     if (to.path == '/login') {
         sessionStorage.removeItem('user');
         sessionStorage.removeItem('user');
     }
     }
@@ -56,14 +52,14 @@ router.beforeEach((to, from, next) => {
                 } else if(routes[i].name == "基础管理"){
                 } else if(routes[i].name == "基础管理"){
                     routes[i].hidden = false
                     routes[i].hidden = false
                 }
                 }
-
+                
                 if(routes[i].name == "项目管理" && user.parentId > 1){
                 if(routes[i].name == "项目管理" && user.parentId > 1){
                     var children = routes[i].children;
                     var children = routes[i].children;
                     for(var j in children){
                     for(var j in children){
-                        if(children[j].name == "人员管理"){
+                        if(children[j].name == "人员管理" && user.isManager == 1){
                             children[j].hidden = true
                             children[j].hidden = true
                         }
                         }
-                        if(children[j].name == "权限管理"){
+                        if(children[j].name == "权限管理" && user.isManager == 1){
                             children[j].hidden = true
                             children[j].hidden = true
                         }
                         }
                     }
                     }

+ 3 - 0
ys_vue/src/port.js

@@ -13,6 +13,8 @@ export default {
 
 
         projectList: '/project/list', //项目列表
         projectList: '/project/list', //项目列表
         addProject: '/project/add', //添加或修改项目
         addProject: '/project/add', //添加或修改项目
+        projectDetail: '/project/detail', //项目详情
+        projects: '/project/projectList', //筛选模具列表时作为筛选条件所加载的项目列表
 
 
         getUserList: '/user/getUserList', //获取用户列表
         getUserList: '/user/getUserList', //获取用户列表
         getUserById: '/user/getUserListByCompanyIds', // 给项目分配参与人的时候根据公司id获取公司下的人员
         getUserById: '/user/getUserListByCompanyIds', // 给项目分配参与人的时候根据公司id获取公司下的人员
@@ -21,6 +23,7 @@ export default {
         addMold: '/mould/addOrUpdate', //添加/修改模具设备
         addMold: '/mould/addOrUpdate', //添加/修改模具设备
         molds: '/mould/list', //模具列表
         molds: '/mould/list', //模具列表
         modelList: '/mould/modelList', //给项目分配模具获取该公司下的模具列表
         modelList: '/mould/modelList', //给项目分配模具获取该公司下的模具列表
+        moldDetail: 'mould/detail', //模具详情
     },
     },
     // 基础管理
     // 基础管理
     base: {
     base: {

+ 2 - 2
ys_vue/src/routes.js

@@ -62,7 +62,7 @@ let routes = [
         iconCls: 'iconfont icon-ic_dashboard',
         iconCls: 'iconfont icon-ic_dashboard',
         children: [
         children: [
             { path: '/project', component: project, name: '项目列表' },
             { path: '/project', component: project, name: '项目列表' },
-            { path: '/project/:id', component: projectDetail, name: '项目详情', hidden: true },
+            { path: '/projectDetail', component: projectDetail, name: '项目详情', hidden: true },
             { path: '/staff', component: staff, name: '人员管理' },
             { path: '/staff', component: staff, name: '人员管理' },
             { path: '/competence', component: competence, name: '权限管理' }
             { path: '/competence', component: competence, name: '权限管理' }
         ]
         ]
@@ -75,7 +75,7 @@ let routes = [
         iconCls: 'iconfont icon-moxing',
         iconCls: 'iconfont icon-moxing',
         children: [
         children: [
             { path: '/moldList', component: moldList, name: '模具列表' },
             { path: '/moldList', component: moldList, name: '模具列表' },
-            { path: '/moldList/:id', component: moldDetail, name: '模具详情', hidden: true },
+            { path: '/moldDetail', component: moldDetail, name: '模具详情', hidden: true },
             { path: '/moldFile', component: moldFile, name: '文档审批' },
             { path: '/moldFile', component: moldFile, name: '文档审批' },
             { path: '/moldDownload', component: moldDownload, name: '文档下载' }
             { path: '/moldDownload', component: moldDownload, name: '文档下载' }
         ]
         ]

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

@@ -11,7 +11,7 @@
           <i class="fa fa-align-justify"></i>
           <i class="fa fa-align-justify"></i>
         </div>
         </div>
       </el-col>
       </el-col>
-      <el-col :span="4" class="userinfo">
+      <el-col :span="6" class="userinfo">
         <el-badge is-dot class="itemNew">
         <el-badge is-dot class="itemNew">
           <i class="el-icon-message-solid" style="font-size:24px" v-popover:popover1></i>
           <i class="el-icon-message-solid" style="font-size:24px" v-popover:popover1></i>
           <!-- 消息中心 -->
           <!-- 消息中心 -->

+ 11 - 11
ys_vue/src/views/base/allocation.vue

@@ -27,7 +27,7 @@
         <el-table :data="allocations" :height="tableHeight" highlight-current-row v-loading="listLoading" style="width: 100%;">
         <el-table :data="allocations" :height="tableHeight" highlight-current-row v-loading="listLoading" style="width: 100%;">
             <el-table-column type="index" width="60"></el-table-column>
             <el-table-column type="index" width="60"></el-table-column>
             <el-table-column prop="equipmentNo" label="云模盒编号" width="130" sortable></el-table-column>
             <el-table-column prop="equipmentNo" label="云模盒编号" width="130" sortable></el-table-column>
-            <el-table-column label="电量" width="100" sortable></el-table-column>
+            <el-table-column prop="hillNumber" label="电量" width="100" sortable></el-table-column>
             <el-table-column prop="useLife" label="倒计时" width="100" sortable>
             <el-table-column prop="useLife" label="倒计时" width="100" sortable>
                 <template slot-scope="scope">{{scope.row.useLife}}天</template>
                 <template slot-scope="scope">{{scope.row.useLife}}天</template>
             </el-table-column>
             </el-table-column>
@@ -228,17 +228,18 @@
             },
             },
 
 
             handleSizeChange(val) {
             handleSizeChange(val) {
-                    this.size = val;
-                    this.getMoulds();
+                this.size = val;
+                this.getMoulds();
             },
             },
 
 
             //读取云模盒信息
             //读取云模盒信息
             getMoulds() {
             getMoulds() {
                 this.listLoading = true;
                 this.listLoading = true;
-                this.http.post(
-                    this.port.base.mouldeList,
-                    {},
-                    res => {
+                this.http.post(this.port.base.mouldeList,{
+                    currentPage: this.page,
+                    pageSize: this.size
+                },
+                res => {
                     this.listLoading = false;
                     this.listLoading = false;
                     if (res.code == "ok") {
                     if (res.code == "ok") {
                         this.allocations = res.data.list;
                         this.allocations = res.data.list;
@@ -249,15 +250,14 @@
                         type: "error"
                         type: "error"
                         });
                         });
                     }
                     }
-                    },
-                    error => {
+                },
+                error => {
                     this.listLoading = false;
                     this.listLoading = false;
                     this.$message({
                     this.$message({
                         message: error,
                         message: error,
                         type: "error"
                         type: "error"
                     });
                     });
-                    }
-                );
+                });
             },
             },
             //添加界面
             //添加界面
             showAllocation() {
             showAllocation() {

+ 4 - 0
ys_vue/src/views/base/role.vue

@@ -394,6 +394,10 @@
         created() {
         created() {
             let height = window.innerHeight;
             let height = window.innerHeight;
             this.tableHeight = height - 210;
             this.tableHeight = height - 210;
+            const that = this;
+            window.onresize = function temp() {
+                that.tableHeight = window.innerHeight - 210;    
+            };
         },
         },
 
 
 		mounted() {
 		mounted() {

+ 4 - 1
ys_vue/src/views/detection/detection.vue

@@ -41,7 +41,10 @@
       <el-table-column prop="state" label="当前状态" width="100" sortable></el-table-column>
       <el-table-column prop="state" label="当前状态" width="100" sortable></el-table-column>
       <el-table-column label="模具保养" width="100">
       <el-table-column label="模具保养" width="100">
         <template slot-scope="scope">
         <template slot-scope="scope">
-          <a style="color: #409EFF; cursor: pointer" @click="toMaintenance(scope.row.id)">不需要</a>
+          <a style="color: #409EFF; cursor: pointer" @click="toMaintenance(scope.row.id)">
+            <span v-if="scope.row.runTimes > scope.row.initialModulus">需要</span>
+            <span v-else>不需要</span>
+          </a>
         </template>
         </template>
       </el-table-column>
       </el-table-column>
     </el-table>
     </el-table>

+ 69 - 55
ys_vue/src/views/mold/moldDetail.vue

@@ -9,7 +9,7 @@
                 <el-form-item class="divLine">
                 <el-form-item class="divLine">
                 </el-form-item>
                 </el-form-item>
                 <el-form-item>
                 <el-form-item>
-                    <span class="projectTitle">测试用模具001</span>
+                    <span class="projectTitle">{{moldDetail.modelName}}</span>
                 </el-form-item>
                 </el-form-item>
                 <el-form-item class="state">
                 <el-form-item class="state">
                       当前状态:
                       当前状态:
@@ -20,53 +20,53 @@
         </el-col>
         </el-col>
         <el-col :span="24" :style="allDetail">
         <el-col :span="24" :style="allDetail">
             <el-col :span="24" class="title">模具基本信息
             <el-col :span="24" class="title">模具基本信息
-                <i class="el-icon-edit editDetail" ></i>
+                <i class="el-icon-edit editDetail"></i>
             </el-col>
             </el-col>
             <el-col :span="24" class="main">
             <el-col :span="24" class="main">
                 <el-col :span="6" class="detail">
                 <el-col :span="6" class="detail">
-                    云模盒编号
-                    <span class="info">{{mould.typeNumber}}</span>
+                    模具名称
+                    <span class="info">{{moldDetail.modelName}}</span>
                 </el-col>
                 </el-col>
                 <el-col :span="6" class="detail">
                 <el-col :span="6" class="detail">
                     模具编号:
                     模具编号:
-                    <span class="info">{{mould.typeNumber}}</span>
-                  </el-col>
-                  <el-col :span="12" class="detail">
-                    模具名称
-                    <span class="info">{{mould.name}}</span>
-                  </el-col>
-                  <el-col :span="6" class="detail">
+                    <span class="info">{{moldDetail.modelNo}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
+                    云模盒编号
+                    <span class="info">{{moldDetail.equipmentNo}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
                     设备电量:
                     设备电量:
-                    <span class="info">{{mould.lifetime}}</span>
-                  </el-col>
-                  <el-col :span="6" class="detail">
+                    <span class="info">{{moldDetail.hillNumber}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
                     倒计时:
                     倒计时:
-                    <span class="info">{{mould.lifetime}}</span>
-                  </el-col>
-                  <el-col :span="6" class="detail">
+                    <span class="info">{{moldDetail.lifetime}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
                     初始模次:
                     初始模次:
-                    <span class="info">{{mould.initial}}</span>
-                  </el-col>
-                  <el-col :span="6" class="detail">
+                    <span class="info">{{moldDetail.initialModulus}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
                     对应RFID码:
                     对应RFID码:
-                    <span class="info">{{mould.RFIDcode}}</span>
-                  </el-col>
-                  <el-col :span="6" class="detail">
+                    <span class="info">{{moldDetail.rfid}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
                     穴数:
                     穴数:
-                    <span class="info">{{mould.mouldNumber}}</span>
-                  </el-col>
-                  <el-col :span="6" class="detail">
+                    <span class="info">{{moldDetail.mouldNumber}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
                     模次寿命:
                     模次寿命:
-                    <span class="info">{{mould.project}}</span>
-                  </el-col>
-                  <el-col :span="12" class="detail">
+                    <span class="info">{{moldDetail.settingLife}}</span>
+                </el-col>
+                <el-col :span="12" class="detail">
                     所属项目:
                     所属项目:
-                    <span class="info">{{mould.manufacturer}}</span>
-                  </el-col>
-                  <el-col :span="12" class="detail">
-                    制造方工厂
-                    <span class="info">{{mould.manufacturer}}</span>
-                  </el-col>
+                    <span class="info">{{moldDetail.manufacturer}}</span>
+                </el-col>
+                <el-col :span="12" class="detail">
+                    生产方
+                    <span class="info">{{moldDetail.companyName}}</span>
+                </el-col>
             </el-col>
             </el-col>
 
 
             <el-col :span="24" class="title">文档资料
             <el-col :span="24" class="title">文档资料
@@ -128,22 +128,9 @@
     export default {
     export default {
         data() {
         data() {
             return {
             return {
+                detailId: this.$route.query.id,
                 //临时数据
                 //临时数据
-                mould: {
-                    typeNumber: "MUJU002",
-                    name: "墨模具测试",
-                    project: "墨盒项目",
-                    client: "南京海市蜃楼有限公司",
-                    manufacturer: "南京江宁制造局",
-                    mouldNumber: "MOHE0023",
-                    lifetime: "1年",
-                    initial: "36",
-                    RFIDcode: "RFID1234",
-                    blueprint: true,
-                    BOMtable: true,
-                    partList: false,
-                    standard: false
-                },
+                moldDetail: {},
                 documents: [
                 documents: [
                     {
                     {
                     name: "墨盒产品验证文档.word",
                     name: "墨盒产品验证文档.word",
@@ -173,21 +160,48 @@
         },
         },
         methods: {
         methods: {
             backToList() {
             backToList() {
-                this.$router.push("/moldList");
+                //this.$router.push("/moldList");
+                this.$router.go(-1);
             },
             },
             toDetection(){
             toDetection(){
-              this.$router.push("/detection");
+                this.$router.push("/detection");
             },
             },
             handleClick(tab, event) {
             handleClick(tab, event) {
-                console.log(tab, event);
-            }
+            },
+            // 模具详情
+            getDetail() {
+                this.listLoading = true;
+                this.http.post(this.port.mold.moldDetail, {
+                    id: this.detailId
+                }, res => {
+                    if (res.code == "ok") {
+                        this.moldDetail = res.data;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
+            // 文件上传
+            uploadFile() {}
         },
         },
         created() {
         created() {
             let height = window.innerHeight;
             let height = window.innerHeight;
             this.allDetail.height = height - 170 + "px";
             this.allDetail.height = height - 170 + "px";
+            const that = this;
+            window.onresize = function temp() {
+                that.allDetail.height = window.innerHeight - 210;    
+            };
         },
         },
         mounted() {
         mounted() {
-            var mouldId = this.$route.params.id; //传到当前页面的模具编号
+            this.getDetail();
         }
         }
     };
     };
 </script>
 </script>

+ 81 - 69
ys_vue/src/views/mold/moldList.vue

@@ -3,19 +3,27 @@
     <!--工具条-->
     <!--工具条-->
     <el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
     <el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
         <el-form :inline="true" :model="filters">
         <el-form :inline="true" :model="filters">
-            <el-col :span="2">
+            <el-col :span="3">
                 <el-form-item>
                 <el-form-item>
-                    <el-select v-model="filters.value" clearable placeholder="请选择">
-                    <el-option label="编号" value="0"></el-option>
-                    <el-option label="名称" value="1"></el-option>
+                    <el-select v-model="filters.projectId" clearable placeholder="请选择项目">
+                         <el-option v-for="item in projects" :key="item.id" :label="item.projectName" :value="item.id">
+                        </el-option>
+                    </el-select>
+                </el-form-item>
+            </el-col>
+            <el-col :span="3">
+                <el-form-item>
+                    <el-select v-model="filters.serchType" placeholder="请选择查询条件">
+                        <el-option label="编号" value="0"></el-option>
+                        <el-option label="名称" value="1"></el-option>
                     </el-select>
                     </el-select>
                 </el-form-item>
                 </el-form-item>
             </el-col>
             </el-col>
             <el-form-item>
             <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-form-item>
             <el-form-item>
-                <el-button type="primary">查询</el-button>
+                <el-button type="primary" @click="getMoldList">查询</el-button>
             </el-form-item>
             </el-form-item>
             <el-form-item style="float: right" v-if="user.parentId == 1">
             <el-form-item style="float: right" v-if="user.parentId == 1">
                 <el-button type="primary" @click="showAdd">新建</el-button>
                 <el-button type="primary" @click="showAdd">新建</el-button>
@@ -26,43 +34,49 @@
     <!--列表-->
     <!--列表-->
     <el-table :data="molds" :height="tableHeight" highlight-current-row v-loading="listLoading" style="width: 100%;">
     <el-table :data="molds" :height="tableHeight" highlight-current-row v-loading="listLoading" style="width: 100%;">
         <el-table-column type="index" width="40"></el-table-column>
         <el-table-column type="index" width="40"></el-table-column>
-        <el-table-column prop="typeNumber" label="模具类型编号" width="130" sortable></el-table-column>
-        <el-table-column prop="name" label="模具名称" width="120" sortable></el-table-column>
-        <el-table-column prop="project" label="所属项目" width="100" sortable></el-table-column>
-        <el-table-column prop="client" label="所属客户" sortable></el-table-column>
-        <el-table-column prop="manufacturer" label="生产厂家" sortable></el-table-column>
-        <el-table-column prop="mouldNumber" label="云模盒编号" width="120" sortable></el-table-column>
-        <el-table-column prop="lifetime" label="模次寿命" width="100" sortable></el-table-column>
-        <el-table-column prop="initial" label="初始模次" width="100" sortable></el-table-column>
-        <el-table-column prop="RFIDcode" label="对应RFID码" width="120" sortable></el-table-column>
-        <el-table-column label="图纸资料" width="100" sortable>
+        <el-table-column prop="modelName" label="模具名称" width="180" sortable>
+            <template slot-scope="scope">
+                <el-link :underline="false" type="primary" @click="toDetail(scope.row)">{{scope.row.modelName}}</el-link>
+            </template>
+        </el-table-column>
+        <el-table-column prop="modelNo" label="模具编号" width="150" sortable></el-table-column>
+        <el-table-column prop="equipmentNo" label="云模盒编号" width="150" sortable></el-table-column>
+        <el-table-column prop="hillNumber" label="电量" align="center" width="100" sortable></el-table-column>
+        <el-table-column prop="projectName" label="所属项目" width="180" sortable></el-table-column>
+        <el-table-column label="所属资产方" width="200" sortable></el-table-column>
+        <el-table-column label="所属生产方" width="200" sortable></el-table-column>
+        <el-table-column prop="settingLife" label="模次寿命" width="100" align="center" sortable></el-table-column>
+        <el-table-column prop="initialModulus" label="初始模次" width="100" align="center" sortable></el-table-column>
+        <el-table-column prop="initial" label="穴数" width="100" align="center" sortable></el-table-column>
+        <el-table-column prop="rfid" label="对应RFID码" width="120" align="center" sortable></el-table-column>
+        <el-table-column label="模具文档" width="100" align="center" sortable>
             <template slot-scope="scope">
             <template slot-scope="scope">
-            <span v-if="scope.row.blueprint">需要</span>
-            <span v-else>不需要</span>
+                <span v-if="scope.row.mouldFile == 1">已上传</span>
+                <span v-else>未上传</span>
             </template>
             </template>
         </el-table-column>
         </el-table-column>
-        <el-table-column label="Bom表" width="100" sortable>
+        <el-table-column label="零件文档" width="100" align="center" sortable>
             <template slot-scope="scope">
             <template slot-scope="scope">
-            <span v-if="scope.row.BOMtable">需要</span>
-            <span v-else>不需要</span>
+            <span v-if="scope.row.compFile == 1">已上传</span>
+            <span v-else>未上传</span>
             </template>
             </template>
         </el-table-column>
         </el-table-column>
-        <el-table-column label="零件清单" width="100" sortable>
+        <el-table-column label="保养方案" width="100" align="center" sortable>
             <template slot-scope="scope">
             <template slot-scope="scope">
-            <span v-if="scope.row.partList">需要</span>
-            <span v-else>不需要</span>
+            <span v-if="scope.row.maintianPlan == 1">已上传</span>
+            <span v-else>未上传</span>
             </template>
             </template>
         </el-table-column>
         </el-table-column>
-        <el-table-column label="保养标准" width="100" sortable>
+         <el-table-column label="状态" width="100" align="center" sortable>
             <template slot-scope="scope">
             <template slot-scope="scope">
-            <span v-if="scope.row.standard">需要</span>
-            <span v-else>不需要</span>
+                <span v-if="scope.row.state == 1" style="color:#00CD66;">运行</span>
+                <span v-else style="color:#CD2626;">禁止</span>
             </template>
             </template>
         </el-table-column>
         </el-table-column>
-        <el-table-column label="操作" width="150" sortable>
+        <el-table-column label="操作" width="150" align="center" fixed="right" sortable v-if="user.parentId == 1">
             <template slot-scope="scope">
             <template slot-scope="scope">
-                <el-button size="small" type="primary" @click="toDetail(scope.row.typeNumber)">详情</el-button>
-                <el-button size="small" type="danger" v-if="user.parentId == 1">删除</el-button>
+                <!-- <el-button size="small" type="primary" @click="toDetail(scope.row)">详情</el-button> -->
+                <el-button size="small" type="danger">删除</el-button>
             </template>
             </template>
         </el-table-column>
         </el-table-column>
     </el-table>
     </el-table>
@@ -110,42 +124,10 @@
         data() {
         data() {
             return {
             return {
                 user: JSON.parse(sessionStorage.getItem('user')),
                 user: JSON.parse(sessionStorage.getItem('user')),
-                molds: [
-                    //临时数据
-                    {
-                    typeNumber: "MUJU002",
-                    name: "墨模具测试",
-                    project: "墨盒项目",
-                    client: "南京海市蜃楼有限公司",
-                    manufacturer: "南京江宁制造局",
-                    mouldNumber: "MOHE0023",
-                    lifetime: "1年",
-                    initial: "36",
-                    RFIDcode: "RFID1234",
-                    blueprint: true,
-                    BOMtable: true,
-                    partList: false,
-                    standard: false
-                    },
-                    {
-                    typeNumber: "MUJU003",
-                    name: "啦啦啦测试",
-                    project: "啦啦项目",
-                    client: "南京啦啦啦有限公司",
-                    manufacturer: "南京啦啦制造局",
-                    mouldNumber: "MOHE0045",
-                    lifetime: "1秒",
-                    initial: "47",
-                    RFIDcode: "RFID5678",
-                    blueprint: false,
-                    BOMtable: false,
-                    partList: true,
-                    standard: true
-                    }
-                ],
+                molds: [],
                 filters: {
                 filters: {
                     keyName: "",
                     keyName: "",
-                    serchType: -1,
+                    serchType: "编号",
                     projectId: ""
                     projectId: ""
                 },
                 },
                 
                 
@@ -164,6 +146,7 @@
                 total: 0,
                 total: 0,
                 tableHeight: 0,
                 tableHeight: 0,
                 boxes: [],
                 boxes: [],
+                projects: [],
 
 
                 addLoading: false,
                 addLoading: false,
                 addFormVisible: false,
                 addFormVisible: false,
@@ -194,15 +177,32 @@
                         type: 'error'
                         type: 'error'
                     });
                     });
                 })
                 })
+
+                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.listLoading = false;
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
             },
             },
             //分页
             //分页
             handleCurrentChange(val) {
             handleCurrentChange(val) {
                 this.page = val;
                 this.page = val;
-                // this.getUsers();
+                this.getMoldList();
             },
             },
             handleSizeChange(val) {
             handleSizeChange(val) {
                 this.size = val;
                 this.size = val;
-                // this.getUsers();
+                this.getMoldList();
             },
             },
 
 
             //获取模具列表
             //获取模具列表
@@ -211,7 +211,9 @@
                 this.http.post(this.port.mold.molds, {
                 this.http.post(this.port.mold.molds, {
                     keyName: this.filters.keyName,
                     keyName: this.filters.keyName,
                     currentPage: this.page,
                     currentPage: this.page,
-                    pageSize: this.size
+                    pageSize: this.size,
+                    projectId: this.filters.projectId == ""?-1:this.filters.projectId,
+                    serchType: this.filters.serchType
                 }, res => {
                 }, res => {
                     this.listLoading = false;
                     this.listLoading = false;
                     if (res.code == "ok") {
                     if (res.code == "ok") {
@@ -232,8 +234,13 @@
                 })
                 })
             },
             },
             //详情
             //详情
-            toDetail(id) {
-                this.$router.push("/moldList/" + id);
+            toDetail(row) {
+                this.$router.push({
+                    path: '/moldDetail',
+                    query: {
+                        id: row.id
+                    }
+                });
             },
             },
 
 
             //添加界面
             //添加界面
@@ -279,10 +286,15 @@
         created() {
         created() {
             let height = window.innerHeight;
             let height = window.innerHeight;
             this.tableHeight = height - 210;
             this.tableHeight = height - 210;
+            const that = this;
+            window.onresize = function temp() {
+                that.tableHeight = window.innerHeight - 210;    
+            };
         },
         },
         mounted() {
         mounted() {
             this.getMsg();
             this.getMsg();
             this.getMoldList();
             this.getMoldList();
+            
         }
         }
     };
     };
 </script>
 </script>

+ 24 - 46
ys_vue/src/views/project/project.vue

@@ -20,22 +20,25 @@
 			<el-table-column type="index" width="60">
 			<el-table-column type="index" width="60">
 			</el-table-column>
 			</el-table-column>
 			<el-table-column prop="projectName" label="项目名称" width="200" sortable>
 			<el-table-column prop="projectName" label="项目名称" width="200" sortable>
+                <template slot-scope="scope">
+                    <el-link :underline="false" type="primary" @click="toDetail(scope.row)">{{scope.row.projectName}}</el-link>
+				</template>
 			</el-table-column>
 			</el-table-column>
-            <el-table-column prop="ownerCompanyName" label="生产方" min-width="200" sortable>
+            <el-table-column prop="ownerCompanyName" label="生产方" width="250" sortable>
 			</el-table-column>
 			</el-table-column>
-            <el-table-column prop="charger" label="生产方负责人" sortable>
+            <el-table-column prop="charger" label="生产方负责人" width="200" align="center" sortable>
 			</el-table-column>
 			</el-table-column>
-			<el-table-column prop="creator" label="项目创建人" sortable>
+			<el-table-column prop="creator" label="项目创建人" width="180" align="center"  sortable>
 			</el-table-column>
 			</el-table-column>
-			<el-table-column prop="indate" label="创建时间" width="180" sortable>
+			<el-table-column prop="indate" label="创建时间" width="200" align="center" sortable>
 			</el-table-column>
 			</el-table-column>
-			<el-table-column label="操作" width="250">
+			<!-- <el-table-column label="操作" width="250" align="center">
 				<template slot-scope="scope">
 				<template slot-scope="scope">
                     <el-button size="small" type="primary" @click="toDetail(scope.row.id)">详情</el-button>
                     <el-button size="small" type="primary" @click="toDetail(scope.row.id)">详情</el-button>
 					<el-button size="small" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
 					<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>
 					<el-button type="danger" size="small" @click="handleDel(scope.$index, scope.row)">删除</el-button>
 				</template>
 				</template>
-			</el-table-column>
+			</el-table-column> -->
 		</el-table>
 		</el-table>
 
 
 		<!--工具条-->
 		<!--工具条-->
@@ -152,7 +155,8 @@
             // 获取基础数据
             // 获取基础数据
             getMsg(){
             getMsg(){
                 this.http.post(this.port.project.getUserById, {
                 this.http.post(this.port.project.getUserById, {
-                    companyIds: this.user.companyId
+                    companyIds: this.user.companyId,
+                    id: this.user.id
                 } , res => {
                 } , res => {
                     if (res.code == "ok") {
                     if (res.code == "ok") {
                         this.charger = res.data;
                         this.charger = res.data;
@@ -234,8 +238,13 @@
             },
             },
 
 
             //详情
             //详情
-            toDetail(id) {
-                this.$router.push("/project/" + id);
+            toDetail(row) {
+                this.$router.push({
+                    path: '/projectDetail',
+                    query: {
+                        id: row.id
+                    }
+                });
             },
             },
 
 
             //选择公司切换人员
             //选择公司切换人员
@@ -246,6 +255,7 @@
                     str += "," + this.addForm.customerCompany[i].id;
                     str += "," + this.addForm.customerCompany[i].id;
                 }
                 }
                 param.companyIds = str;
                 param.companyIds = str;
+                param.id = this.user.id
                 this.http.post(this.port.project.getUserById, param , res => {
                 this.http.post(this.port.project.getUserById, param , res => {
                     if (res.code == "ok") {
                     if (res.code == "ok") {
                         this.charger = res.data;
                         this.charger = res.data;
@@ -279,21 +289,6 @@
 			addSubmit() {
 			addSubmit() {
 				this.$refs.addForm.validate((valid) => {
 				this.$refs.addForm.validate((valid) => {
 					if (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)
                         var cId = "",
                         var cId = "",
                             cName = "";
                             cName = "";
                         for(var i in this.addForm.customerCompany){
                         for(var i in this.addForm.customerCompany){
@@ -308,9 +303,8 @@
                             projectName: this.addForm.projectName,
                             projectName: this.addForm.projectName,
                             customerCompanyIds: cId,
                             customerCompanyIds: cId,
                             customerCompanyNames: cName,
                             customerCompanyNames: cName,
-                            managerName: this.addForm.managerId.username,
+                            manager: this.addForm.managerId.username,
                             managerId: this.addForm.managerId.id,
                             managerId: this.addForm.managerId.id,
-                            // userIds: userIds,
                             flag: 0
                             flag: 0
                         } , res => {
                         } , res => {
                             this.addLoading = false;
                             this.addLoading = false;
@@ -338,30 +332,14 @@
 					}
 					}
 				});
 				});
 			},
 			},
-
-			//删除
-			// handleDel: function (index, row) {
-			// 	this.$confirm('确认删除该记录吗?', '提示', {
-			// 		type: 'warning'
-			// 	}).then(() => {
-			// 		this.listLoading = true;
-			// 		let para = { id: row.id };
-			// 		removeUser(para).then((res) => {
-			// 			this.listLoading = false;
-			// 			this.$message({
-			// 				message: '删除成功',
-			// 				type: 'success'
-			// 			});
-			// 			this.getProject();
-			// 		});
-			// 	}).catch(() => {
-
-			// 	});
-            // }
         },
         },
         created() {
         created() {
             let height = window.innerHeight;
             let height = window.innerHeight;
             this.tableHeight = height - 210;
             this.tableHeight = height - 210;
+            const that = this;
+            window.onresize = function temp() {
+                that.tableHeight = window.innerHeight - 210;    
+            };
         },
         },
 		mounted() {
 		mounted() {
             this.getMsg();
             this.getMsg();

+ 255 - 73
ys_vue/src/views/project/projectDetail.vue

@@ -9,69 +9,147 @@
                 <el-form-item class="divLine">
                 <el-form-item class="divLine">
                 </el-form-item>
                 </el-form-item>
                 <el-form-item>
                 <el-form-item>
-                    <span class="projectTitle">测试用项目001</span>
+                    <span class="projectTitle">{{proDetail.projectName}}</span>
                 </el-form-item>
                 </el-form-item>
             </el-form>
             </el-form>
         </el-col>
         </el-col>
         <el-col :span="24" :style="allDetail">
         <el-col :span="24" :style="allDetail">
-            <el-col :span="24" class="title">项目基本信息</el-col>
-                <el-col :span="24" class="main">
-                    <el-col :span="6" class="detail">
-                        项目名称:
-                        <span class="info">{{mould.typeNumber}}</span>
-                    </el-col>
-                    <el-col :span="6" class="detail">
-                        项目经理:
-                        <span class="info">{{mould.name}}</span>
-                    </el-col>
-                    <el-col :span="6" class="detail">
-                        生产方公司:
-                        <span class="info">{{mould.lifetime}}</span>
-                    </el-col>
-                    <el-col :span="6" class="detail">
-                        生产方负责人:
-                        <span class="info">{{mould.initial}}</span>
-                    </el-col>
-                    <el-col :span="24" class="detail">
-                        项目模具:
-                        <span class="info">{{mould.RFIDcode}}</span>
-                    </el-col>
-                    <el-col :span="24" class="detail">
-                        资产方人员:
-                        <span class="info">{{mould.mouldNumber}}</span>
-                    </el-col>
-                    <el-col :span="24" class="detail">
-                        生产方人员:
-                        <span class="info">{{mould.project}}</span>
-                    </el-col>
-                </el-col>
-
-                <el-col :span="24" class="title">项目文档
-                    <el-upload class="upload-demo" action="customize" :http-request="uploadFile" :show-file-list="false" multiple :limit="5" style="float:right;">
-                        <el-button size="small" type="primary">点击上传</el-button>
-                    </el-upload>
+            <el-col :span="24" class="title">项目基本信息
+                <i class="el-icon-edit editDetail" v-if="user.parentId == 1 || user.isManager == 1" @click="edit"></i>
+            </el-col>
+            <el-col :span="24" class="main">
+                <el-col :span="6" class="detail">
+                    项目编号:
+                    <span class="info">{{proDetail.projectNo}}</span>
                 </el-col>
                 </el-col>
-                <el-col :span="24">
-                    <el-table :data="documents" highlight-current-row v-loading="listLoading" style="width: 100%;height:800px;">
-                        <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 label="操作" width="220" sortable>
-                        <el-button size="small">浏览</el-button>
-                        <el-button size="small">下载</el-button>
-                        <el-button size="small" type="danger">删除</el-button>
-                        </el-table-column>
-                    </el-table>
+                <el-col :span="6" class="detail">
+                    项目经理:
+                    <span class="info">{{proDetail.name}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
+                    资产方审批人:
+                    <span class="info">{{proDetail.initial}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
+                    生产方审批人:
+                    <span class="info">{{proDetail.initial}}</span>
+                </el-col>
+                <el-col :span="6" class="detail">
+                    生产方公司:
+                    <span class="info">{{proDetail.lifetime}}</span>
+                </el-col>
+                <el-col :span="24" class="detail">
+                    项目模具:
+                    <span class="info">{{proDetail.RFIDcode}}</span>
                 </el-col>
                 </el-col>
+                <el-col :span="24" class="detail">
+                    资产方人员:
+                    <span class="info">{{proDetail.mouldNumber}}</span>
+                </el-col>
+                <el-col :span="24" class="detail">
+                    生产方人员:
+                    <span class="info">{{proDetail.project}}</span>
+                </el-col>
+            </el-col>
+
+            <el-col :span="24" class="title">项目文档
+                <el-upload class="upload-demo" action="customize" :http-request="uploadFile" :show-file-list="false" multiple :limit="5" style="float:right;">
+                    <el-button size="small" type="primary">点击上传</el-button>
+                </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-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 label="操作" width="220" sortable>
+                    <el-button size="small">浏览</el-button>
+                    <el-button size="small">下载</el-button>
+                    <el-button size="small" type="danger">删除</el-button>
+                    </el-table-column>
+                </el-table>
+            </el-col>
         </el-col>
         </el-col>
+
+        <!--编辑界面-->
+		<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">
+                <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="24">
+                    <el-form-item label="生产方公司" prop="customerCompany">
+                        <el-select v-model="editForm.customerCompany" clearable filterable multiple placeholder="请选择生产方公司" @change="companyChange" value-key='id' style="width:510px">
+                            <!-- @change="companyChange(0)"  -->
+                            <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="24">
+                    <el-form-item label="项目经理" prop="managerId">
+                        <el-select v-model="editForm.managerId" clearable filterable placeholder="请选择项目经理" value-key='id' style="width:510px">
+                            <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="12">
+                    <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 charger" :key="item.id" :label="item.username" :value="item">
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                    <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 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.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="editFormVisible = false">取消</el-button>
+				<el-button type="primary" @click.native="addSubmit" :loading="addLoading">提交</el-button>
+			</div>
+		</el-dialog>
     </section>
     </section>
 </template>
 </template>
 
 
@@ -80,22 +158,10 @@
     export default {
     export default {
         data() {
         data() {
             return {
             return {
+                detailId: this.$route.query.id,
+                user: JSON.parse(sessionStorage.getItem('user')),
                 //临时数据
                 //临时数据
-                mould: {
-                    typeNumber: "MUJU002",
-                    name: "墨模具测试",
-                    project: "墨盒项目",
-                    client: "南京海市蜃楼有限公司",
-                    manufacturer: "南京江宁制造局",
-                    mouldNumber: "MOHE0023",
-                    lifetime: "1年",
-                    initial: "36",
-                    RFIDcode: "RFID1234",
-                    blueprint: true,
-                    BOMtable: true,
-                    partList: false,
-                    standard: false
-                },
+                proDetail: {},
                 documents: [
                 documents: [
                     {
                     {
                     name: "墨盒产品验证文档.word",
                     name: "墨盒产品验证文档.word",
@@ -120,7 +186,31 @@
                     height: 0
                     height: 0
                 },
                 },
                 listLoading: false,
                 listLoading: false,
-                activePage: 0
+                activePage: 0,
+
+                company:[],
+                owner: [],
+                charger: [],
+                formRules: {
+					projectName: [
+						{ required: true, message: '请输入项目名称', trigger: 'blur' }
+                    ],
+                    customerCompany: [
+                        { required: true, message: '请选择客户公司', trigger: 'blur' }
+                    ],
+                    managerId: [
+                        { required: true, message: '请选择项目经理', trigger: ['blur','change'] }
+                    ]
+                },
+                
+                editFormVisible: false,//新增界面是否显示
+				addLoading: false,
+				//新增界面数据
+				editForm: {
+					projectName: '',
+                    customerCompany: [],
+                    managerId: ''
+				}
             };
             };
         },
         },
         methods: {
         methods: {
@@ -131,7 +221,89 @@
             handleClick(tab, event) {
             handleClick(tab, event) {
                 console.log(tab, event);
                 console.log(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;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
+            //获取信息
+            getMsg() {
+                this.http.post(this.port.project.getUserById, {
+                    companyIds: this.user.companyId,
+                    id: this.user.id
+                } , res => {
+                    if (res.code == "ok") {
+                        var list = res.data , array = [] , owner = [];
+                        for(var i in list) {
+                            if(list[i].companyId == this.user.companyId){
+                                owner.push(list[i])
+                            } else {
+                                array.push(list[i])
+                            }
+                        }
+                        this.charger = res.data;
+                        this.owner = owner;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
 
 
+                this.http.post(this.port.base.companys, {
+                    parentId: this.user.parentId,
+                    id: this.user.id
+                }, 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'
+                    });
+                })
+            },
+            edit() {
+                this.editFormVisible = true;
+                this.editForm = {
+                    id: this.proDetail.id,
+                    projectName: this.proDetail.projectName
+                }
+            },
             //上传
             //上传
             uploadFile(params) {
             uploadFile(params) {
                 console.log(params)
                 console.log(params)
@@ -140,9 +312,13 @@
         created() {
         created() {
             let height = window.innerHeight;
             let height = window.innerHeight;
             this.allDetail.height = height - 170 + "px";
             this.allDetail.height = height - 170 + "px";
+            const that = this;
+            window.onresize = function temp() {
+                that.allDetail.height = window.innerHeight - 210;    
+            };
         },
         },
         mounted() {
         mounted() {
-            var mouldId = this.$route.params.id; //传到当前页面的模具编号
+            this.getDetail();
         }
         }
     };
     };
 </script>
 </script>
@@ -188,6 +364,12 @@
         top: -5px;
         top: -5px;
     }
     }
 
 
+    .editDetail {
+        margin-left: 10px;
+        color:#20a0ff;
+        cursor: pointer;
+    }
+
     .info {
     .info {
         color: grey;
         color: grey;
     }
     }

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

@@ -410,6 +410,10 @@
         created() {
         created() {
             let height = window.innerHeight;
             let height = window.innerHeight;
             this.tableHeight = height - 210;
             this.tableHeight = height - 210;
+            const that = this;
+            window.onresize = function temp() {
+                that.tableHeight = window.innerHeight - 210;    
+            };
         },
         },
 		mounted() {
 		mounted() {
             this.getMsg();
             this.getMsg();