Browse Source

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

quyueting 5 years ago
parent
commit
af4266f6c0
43 changed files with 1218 additions and 830 deletions
  1. 36 5
      cloud-model/src/main/java/com/hssx/cloudmodel/controller/MouldController.java
  2. 3 4
      cloud-model/src/main/java/com/hssx/cloudmodel/controller/MouldEquipmentController.java
  3. 17 2
      cloud-model/src/main/java/com/hssx/cloudmodel/entity/Mould.java
  4. 21 0
      cloud-model/src/main/java/com/hssx/cloudmodel/entity/vo/MouldEquipmentVO.java
  5. 24 0
      cloud-model/src/main/java/com/hssx/cloudmodel/entity/vo/MouldVO.java
  6. 27 0
      cloud-model/src/main/java/com/hssx/cloudmodel/entity/vo/UserVO.java
  7. 9 1
      cloud-model/src/main/java/com/hssx/cloudmodel/mapper/MouldEquipmentMapper.java
  8. 10 0
      cloud-model/src/main/java/com/hssx/cloudmodel/mapper/MouldMapper.java
  9. 3 0
      cloud-model/src/main/java/com/hssx/cloudmodel/service/MouldEquipmentService.java
  10. 3 0
      cloud-model/src/main/java/com/hssx/cloudmodel/service/MouldService.java
  11. 3 0
      cloud-model/src/main/java/com/hssx/cloudmodel/service/ProjectService.java
  12. 34 9
      cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/MouldEquipmentServiceImpl.java
  13. 26 4
      cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/MouldServiceImpl.java
  14. 49 3
      cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/ProjectServiceImpl.java
  15. 1 1
      cloud-model/src/main/java/com/hssx/cloudmodel/util/PageUtil.java
  16. 5 0
      cloud-model/src/main/resources/application.properties
  17. 44 0
      cloud-model/src/main/resources/mapper/MouldEquipmentMapper.xml
  18. 111 1
      cloud-model/src/main/resources/mapper/MouldMapper.xml
  19. 0 43
      target/classes/main/resources/application.properties
  20. 0 30
      target/classes/main/resources/application.yml
  21. 0 31
      target/classes/main/resources/mapper/CompanyMapper.xml
  22. 0 19
      target/classes/main/resources/mapper/CustomCompanyMapper.xml
  23. 0 20
      target/classes/main/resources/mapper/DictionaryDataMapper.xml
  24. 0 20
      target/classes/main/resources/mapper/FactoryMapper.xml
  25. 0 23
      target/classes/main/resources/mapper/MouldEquipmentMapper.xml
  26. 0 38
      target/classes/main/resources/mapper/MouldMapper.xml
  27. 0 23
      target/classes/main/resources/mapper/ProjectFileMapper.xml
  28. 0 99
      target/classes/main/resources/mapper/ProjectMapper.xml
  29. 0 20
      target/classes/main/resources/mapper/ProjectUserMapper.xml
  30. 0 19
      target/classes/main/resources/mapper/UserCompanyMapper.xml
  31. 0 77
      target/classes/main/resources/mapper/UserMapper.xml
  32. 25 0
      ys_vue/index.html
  33. 3 1
      ys_vue/src/routes.js
  34. 1 0
      ys_vue/src/views/Home.vue
  35. 157 65
      ys_vue/src/views/base/allocation.vue
  36. 5 5
      ys_vue/src/views/base/comp.vue
  37. 4 4
      ys_vue/src/views/base/factory.vue
  38. 5 5
      ys_vue/src/views/base/role.vue
  39. 0 6
      ys_vue/src/views/detection/detection.vue
  40. 231 163
      ys_vue/src/views/mold/moldDetail.vue
  41. 146 82
      ys_vue/src/views/mold/moldList.vue
  42. 13 7
      ys_vue/src/views/project/project.vue
  43. 202 0
      ys_vue/src/views/project/projectDetail.vue

+ 36 - 5
cloud-model/src/main/java/com/hssx/cloudmodel/controller/MouldController.java

@@ -6,10 +6,15 @@ import com.hssx.cloudmodel.entity.Company;
 import com.hssx.cloudmodel.entity.Mould;
 import com.hssx.cloudmodel.entity.MouldEquipment;
 import com.hssx.cloudmodel.entity.User;
+import com.hssx.cloudmodel.entity.vo.MouldVO;
+import com.hssx.cloudmodel.entity.vo.UserVO;
 import com.hssx.cloudmodel.service.*;
 import com.hssx.cloudmodel.util.HttpRespMsg;
+import com.hssx.cloudmodel.util.PageUtil;
 import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
@@ -28,10 +33,6 @@ public class MouldController {
     @Autowired
     private UserService userService;
     @Autowired
-    private CompanyService companyService;
-    @Autowired
-    private MouldEquipmentService mouldEquipmentService;
-    @Autowired
     private ProjectService projectService;
     /**
      * 添加/修改模具设备
@@ -55,7 +56,7 @@ public class MouldController {
 
     /**
      * 给项目分配模具获取该公司下的模具列表
-     * parentId 当前人parentId
+     * parentId 当前人parentId ,id当前人id
      * @return
      */
     @ApiOperation("获取该公司下的模具列表")
@@ -66,5 +67,35 @@ public class MouldController {
         msg = projectService.getModelListByCompanyId(user);
         return msg;
     }
+
+    /**
+     * 给项目分配模具获取该公司下的模具列表
+     * token 当前人唯一权限 pageNum 当前页码,pageSize 每页条数  projectId 项目id筛选(默认传-1)
+     * serchType 搜索类型0-模具编号,1-模具名称(默认传-1) keyName 关键字查询
+     * @return
+     */
+    @ApiOperation("模具列表")
+    @RequestMapping("/list")
+    @ResponseBody
+    public HttpRespMsg list(UserVO userVO, PageUtil page,String token) {
+        HttpRespMsg msg = new HttpRespMsg();
+        User user = userService.getOne(new QueryWrapper<User>().eq("head_imgurl", token));
+        BeanUtils.copyProperties(user,userVO);
+        msg = projectService.getModelListByUser(userVO,page);
+        return msg;
+    }
+
+    /**
+     * 模具详情
+     * 参数 id 模具id
+     * @return
+     */
+    @ApiOperation("模具详情")
+    @RequestMapping("/detail")
+    @ResponseBody
+    public HttpRespMsg detail(MouldVO mouldVO){
+        HttpRespMsg msg = mouldService.getMoildDetail(mouldVO);
+        return msg;
+    }
 }
 

+ 3 - 4
cloud-model/src/main/java/com/hssx/cloudmodel/controller/MouldEquipmentController.java

@@ -4,6 +4,7 @@ package com.hssx.cloudmodel.controller;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.hssx.cloudmodel.entity.MouldEquipment;
 import com.hssx.cloudmodel.entity.User;
+import com.hssx.cloudmodel.entity.vo.MouldEquipmentVO;
 import com.hssx.cloudmodel.service.MouldEquipmentService;
 import com.hssx.cloudmodel.service.UserService;
 import com.hssx.cloudmodel.util.HttpRespMsg;
@@ -71,9 +72,9 @@ public class MouldEquipmentController {
     @ApiOperation("获取资产方公司的设备列表")
     @RequestMapping("/getMouldEquipmentList")
     @ResponseBody
-    public HttpRespMsg getMouldEquipmentList(MouldEquipment mouldEquipment){
+    public HttpRespMsg getMouldEquipmentList(MouldEquipmentVO mouldEquipmentVO){
         HttpRespMsg msg = new HttpRespMsg();
-        msg.data = mouldEquipmentService.list(new QueryWrapper<MouldEquipment>().eq("belong_company_id", mouldEquipment.getBelongCompanyId()));
+        msg = mouldEquipmentService.getListByCompanyId(mouldEquipmentVO);
         return msg;
     }
 
@@ -93,7 +94,5 @@ public class MouldEquipmentController {
         msg = mouldEquipmentService.getList(user,page);
         return msg;
     }
-
-
 }
 

+ 17 - 2
cloud-model/src/main/java/com/hssx/cloudmodel/entity/Mould.java

@@ -14,7 +14,7 @@ import java.io.Serializable;
  * </p>
  *
  * @author 吴涛涛
- * @since 2019-08-02
+ * @since 2019-08-05
  */
 @TableName("tb_mould")
 public class Mould extends Model<Mould> {
@@ -76,7 +76,7 @@ public class Mould extends Model<Mould> {
     private Integer currentVersionId;
 
     /**
-     * 状态 0-禁止 1-运行
+     * 状态0-静止 1-运动
      */
     @TableField("state")
     private String state;
@@ -153,6 +153,12 @@ public class Mould extends Model<Mould> {
     @TableField("produce_company_id")
     private Integer produceCompanyId;
 
+    /**
+     * 运行次数
+     */
+    @TableField("run_times")
+    private Integer runTimes;
+
 
     public Integer getId() {
         return id;
@@ -330,6 +336,14 @@ public class Mould extends Model<Mould> {
         this.produceCompanyId = produceCompanyId;
     }
 
+    public Integer getRunTimes() {
+        return runTimes;
+    }
+
+    public void setRunTimes(Integer runTimes) {
+        this.runTimes = runTimes;
+    }
+
     @Override
     protected Serializable pkVal() {
         return this.id;
@@ -360,6 +374,7 @@ public class Mould extends Model<Mould> {
         ", equipmentId=" + equipmentId +
         ", belongProjectGrade=" + belongProjectGrade +
         ", produceCompanyId=" + produceCompanyId +
+        ", runTimes=" + runTimes +
         "}";
     }
 }

+ 21 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/entity/vo/MouldEquipmentVO.java

@@ -0,0 +1,21 @@
+package com.hssx.cloudmodel.entity.vo;
+
+import com.hssx.cloudmodel.entity.MouldEquipment;
+
+/**
+ * Author: 吴涛涛 cuiyi@itany.com
+ * Date : 2019 - 08 - 05 14:00
+ * Description:<描述>
+ * Version: 1.0
+ */
+public class MouldEquipmentVO extends MouldEquipment {
+    private String companyName;
+
+    public String getCompanyName() {
+        return companyName;
+    }
+
+    public void setCompanyName(String companyName) {
+        this.companyName = companyName;
+    }
+}

+ 24 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/entity/vo/MouldVO.java

@@ -0,0 +1,24 @@
+package com.hssx.cloudmodel.entity.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.hssx.cloudmodel.entity.Mould;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ * Author: 吴涛涛 cuiyi@itany.com
+ * Date : 2019 - 08 - 05 13:49
+ * Description:<描述>
+ * Version: 1.0
+ */
+@Data
+public class MouldVO extends Mould {
+    private String mouldEquipmentNo;
+    private String projectName;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private LocalDateTime endTime;
+    private String mangerName;
+    private String equipmentNo;
+    private String hillNumber;
+}

+ 27 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/entity/vo/UserVO.java

@@ -11,6 +11,33 @@ import com.hssx.cloudmodel.entity.User;
 public class UserVO extends User {
     private String companyName;
     private String roleName;
+    private String keyName;//项目名称
+    private Integer serchType;//搜索类型0-模具编号,1-模具名称
+    private Integer projectId;
+
+    public Integer getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(Integer projectId) {
+        this.projectId = projectId;
+    }
+
+    public String getKeyName() {
+        return keyName;
+    }
+
+    public void setKeyName(String keyName) {
+        this.keyName = keyName;
+    }
+
+    public Integer getSerchType() {
+        return serchType;
+    }
+
+    public void setSerchType(Integer serchType) {
+        this.serchType = serchType;
+    }
 
     public String getCompanyName() {
         return companyName;

+ 9 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/mapper/MouldEquipmentMapper.java

@@ -2,10 +2,15 @@ package com.hssx.cloudmodel.mapper;
 
 import com.hssx.cloudmodel.entity.MouldEquipment;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.hssx.cloudmodel.entity.vo.MouldEquipmentVO;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
 
 /**
  * <p>
- *  Mapper 接口
+ * Mapper 接口
  * </p>
  *
  * @author 吴涛涛
@@ -13,4 +18,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface MouldEquipmentMapper extends BaseMapper<MouldEquipment> {
 
+    List<MouldEquipmentVO> getListByCompanyId(@Param("belongCompanyId") Integer belongCompanyId,@Param("list") List<Integer> ides);
+
+    List<MouldEquipment> getList();
 }

+ 10 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/mapper/MouldMapper.java

@@ -3,8 +3,12 @@ package com.hssx.cloudmodel.mapper;
 import com.hssx.cloudmodel.entity.Mould;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.hssx.cloudmodel.entity.Project;
+import com.hssx.cloudmodel.entity.vo.MouldVO;
+import com.hssx.cloudmodel.entity.vo.UserVO;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * <p>
  *  Mapper 接口
@@ -16,4 +20,10 @@ import org.apache.ibatis.annotations.Param;
 public interface MouldMapper extends BaseMapper<Mould> {
 
     void updateMouldByProjectId(@Param("project") Project project);
+
+    List<MouldVO> selectListByCondition(@Param("userVO")UserVO userVO);
+
+    List<MouldVO> selectListByConditionByProject(@Param("userVO")UserVO userVO, @Param("list")List<Integer> set);
+
+    MouldVO getDetailById(@Param("mouldVO")MouldVO mouldVO);
 }

+ 3 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/service/MouldEquipmentService.java

@@ -3,6 +3,7 @@ package com.hssx.cloudmodel.service;
 import com.hssx.cloudmodel.entity.MouldEquipment;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.hssx.cloudmodel.entity.User;
+import com.hssx.cloudmodel.entity.vo.MouldEquipmentVO;
 import com.hssx.cloudmodel.util.HttpRespMsg;
 import com.hssx.cloudmodel.util.PageUtil;
 
@@ -21,4 +22,6 @@ public interface MouldEquipmentService extends IService<MouldEquipment> {
     HttpRespMsg isUse(MouldEquipment mouldEquipment, User user);
 
     HttpRespMsg getList(User user,PageUtil page);
+
+    HttpRespMsg getListByCompanyId(MouldEquipmentVO mouldEquipmentVO);
 }

+ 3 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/service/MouldService.java

@@ -3,6 +3,7 @@ package com.hssx.cloudmodel.service;
 import com.hssx.cloudmodel.entity.Mould;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.hssx.cloudmodel.entity.User;
+import com.hssx.cloudmodel.entity.vo.MouldVO;
 import com.hssx.cloudmodel.util.HttpRespMsg;
 
 /**
@@ -16,4 +17,6 @@ import com.hssx.cloudmodel.util.HttpRespMsg;
 public interface MouldService extends IService<Mould> {
 
     HttpRespMsg addAndUpdateMould(Mould mould, User user);
+
+    HttpRespMsg getMoildDetail(MouldVO mould);
 }

+ 3 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/service/ProjectService.java

@@ -4,6 +4,7 @@ import com.hssx.cloudmodel.entity.Factory;
 import com.hssx.cloudmodel.entity.Project;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.hssx.cloudmodel.entity.User;
+import com.hssx.cloudmodel.entity.vo.UserVO;
 import com.hssx.cloudmodel.util.HttpRespMsg;
 import com.hssx.cloudmodel.util.PageUtil;
 
@@ -30,4 +31,6 @@ public interface ProjectService extends IService<Project> {
     HttpRespMsg getUserListByCompanyIds(String companyIds,Integer adminId);
 
     HttpRespMsg getModelListByCompanyId(User user);
+
+    HttpRespMsg getModelListByUser(UserVO user, PageUtil page);
 }

+ 34 - 9
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/MouldEquipmentServiceImpl.java

@@ -4,18 +4,23 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.hssx.cloudmodel.constant.Constant;
+import com.hssx.cloudmodel.entity.Mould;
 import com.hssx.cloudmodel.entity.MouldEquipment;
 import com.hssx.cloudmodel.entity.User;
+import com.hssx.cloudmodel.entity.vo.MouldEquipmentVO;
 import com.hssx.cloudmodel.mapper.MouldEquipmentMapper;
+import com.hssx.cloudmodel.mapper.MouldMapper;
 import com.hssx.cloudmodel.service.MouldEquipmentService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.hssx.cloudmodel.util.HttpRespMsg;
 import com.hssx.cloudmodel.util.PageUtil;
 import org.springframework.stereotype.Service;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
 import java.time.LocalTime;
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -30,6 +35,8 @@ import java.util.List;
 public class MouldEquipmentServiceImpl extends ServiceImpl<MouldEquipmentMapper, MouldEquipment> implements MouldEquipmentService {
     @Resource
     MouldEquipmentMapper mouldEquipmentMapper;
+    @Resource
+    MouldMapper mouldMapper;
 
     @Override
     public HttpRespMsg addAndUpdateMouldEquipment(MouldEquipment mouldEquipment, User user) {
@@ -54,10 +61,12 @@ public class MouldEquipmentServiceImpl extends ServiceImpl<MouldEquipmentMapper,
         //判断是不是超级管理员,是才可操作
         if (user.getParentId() == 0) {
             //修改设备
+            MouldEquipment newMouldEquipment = mouldEquipmentMapper.selectById(mouldEquipment.getId());
+            newMouldEquipment.setIsUse(mouldEquipment.getIsUse());
             LocalDateTime now = LocalDateTime.now();
-            mouldEquipment.setStartTime(now);
-            mouldEquipment.setEndTime(now.plusYears(mouldEquipment.getUseLife()));
-            mouldEquipmentMapper.updateById(mouldEquipment);
+            newMouldEquipment.setStartTime(now);
+            newMouldEquipment.setEndTime(now.plusYears(newMouldEquipment.getUseLife()));
+            mouldEquipmentMapper.updateById(newMouldEquipment);
         } else {
             msg.setError("对不起,您不是管理员,不具备启用设备的权限");
         }
@@ -65,18 +74,34 @@ public class MouldEquipmentServiceImpl extends ServiceImpl<MouldEquipmentMapper,
     }
 
     @Override
-    public HttpRespMsg getList(User user,PageUtil page) {
+    public HttpRespMsg getList(User user, PageUtil page) {
         HttpRespMsg msg = new HttpRespMsg();
-        if(user != null){
-            if(Constant.SYS_PARENT_ID == user.getParentId()){
-                PageHelper.startPage(page.getPageNum(),page.getPageSize());
-                List<MouldEquipment> mouldEquipments = mouldEquipmentMapper.selectList(new QueryWrapper<MouldEquipment>());
+        if (user != null) {
+            if (Constant.SYS_PARENT_ID == user.getParentId()) {
+                PageHelper.startPage(page.getPageNum(), page.getPageSize());
+                List<MouldEquipment> mouldEquipments = mouldEquipmentMapper.getList();
                 PageInfo<MouldEquipment> pageInfo = new PageInfo<>(mouldEquipments);
                 msg.data = pageInfo;
-            }else{
+            } else {
                 msg.setError("对不起!您不含有查看该列表的权利。");
             }
         }
         return msg;
     }
+
+    @Override
+    public HttpRespMsg getListByCompanyId(MouldEquipmentVO mouldEquipmentVO) {
+        HttpRespMsg msg = new HttpRespMsg();
+        List<Integer> ides = new ArrayList<>();
+        List<Mould> moulds = mouldMapper.selectList(new QueryWrapper<Mould>().eq("company_id", mouldEquipmentVO.getBelongCompanyId()));
+        for (Mould mould : moulds) {
+            ides.add(mould.getEquipmentId());
+        }
+        if(ides.size()==0){
+            ides.add(-1);
+        }
+        List<MouldEquipmentVO> list = mouldEquipmentMapper.getListByCompanyId(mouldEquipmentVO.getBelongCompanyId(),ides);
+        msg.data = list;
+        return msg;
+    }
 }

+ 26 - 4
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/MouldServiceImpl.java

@@ -1,7 +1,9 @@
 package com.hssx.cloudmodel.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.hssx.cloudmodel.entity.Mould;
 import com.hssx.cloudmodel.entity.User;
+import com.hssx.cloudmodel.entity.vo.MouldVO;
 import com.hssx.cloudmodel.mapper.MouldMapper;
 import com.hssx.cloudmodel.service.MouldService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -10,6 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.List;
 
 /**
  * <p>
@@ -25,13 +28,32 @@ public class MouldServiceImpl extends ServiceImpl<MouldMapper, Mould> implements
     MouldMapper mouldMapper;
     @Override
     public HttpRespMsg addAndUpdateMould(Mould mould, User user) {
+        HttpRespMsg msg = new HttpRespMsg();
         if(mould.getId() != null){
             //修改
-            mouldMapper.updateById(mould);
+            Mould m = mouldMapper.selectOne(new QueryWrapper<Mould>().eq("model_no", mould.getModelNo()));
+            if((m != null && m.getId()==mould.getId()) || m == null){
+                mouldMapper.updateById(mould);
+            }else{
+                msg.setError("当前模具编号已存在,请重新输入其他模具编号");
+            }
         }else{
-            mould.setCreatorId(user.getId());
-            mouldMapper.insert(mould);
+            //查询当前模具编号的模具是否存在
+            Integer count = mouldMapper.selectCount(new QueryWrapper<Mould>().eq("model_no", mould.getModelNo()));
+            if(count>0){
+                msg.setError("当前模具编号已存在,请重新输入其他模具编号");
+            }else{
+                mould.setCreatorId(user.getId());
+                mouldMapper.insert(mould);
+            }
         }
-        return null;
+        return msg;
+    }
+
+    @Override
+    public HttpRespMsg getMoildDetail(MouldVO mouldVO) {
+        HttpRespMsg msg = new HttpRespMsg();
+        msg.data = mouldMapper.getDetailById(mouldVO);
+        return msg;
     }
 }

+ 49 - 3
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/ProjectServiceImpl.java

@@ -5,7 +5,9 @@ import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.hssx.cloudmodel.constant.Constant;
 import com.hssx.cloudmodel.entity.*;
+import com.hssx.cloudmodel.entity.vo.MouldVO;
 import com.hssx.cloudmodel.entity.vo.ProjectVO;
+import com.hssx.cloudmodel.entity.vo.UserVO;
 import com.hssx.cloudmodel.mapper.*;
 import com.hssx.cloudmodel.service.ProjectService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -18,9 +20,7 @@ import org.springframework.stereotype.Service;
 import javax.annotation.Resource;
 import javax.jws.soap.SOAPBinding;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Spliterator;
+import java.util.*;
 
 /**
  * <p>
@@ -224,4 +224,50 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         msg.data =  mouldMapper.selectList(qw);
         return msg;
     }
+
+    @Override
+    public HttpRespMsg getModelListByUser(UserVO userVO, PageUtil page) {
+        HttpRespMsg msg = new HttpRespMsg();
+        List<Integer> set = new ArrayList<>();
+        set.add(-1);
+        List<MouldVO> moulds = new ArrayList<>();
+        if(userVO.getId() != null){
+            //资产方管理员,获取他公司下的所有模具
+            PageHelper.startPage(page.getPageNum(),page.getPageSize());
+            if(Constant.SYS_PARENT_ID == userVO.getParentId()){
+                moulds = mouldMapper.selectListByCondition(userVO);
+            }else if(Constant.SYS_ID == userVO.getParentId()){
+                moulds = mouldMapper.selectListByCondition(userVO);
+            }else{
+                //普通用户或者项目经理
+                //充当项目经理参与的项目
+                if(userVO.getProjectId() != -1){
+                    set.add(userVO.getProjectId());
+                    moulds = mouldMapper.selectListByConditionByProject(userVO,set);
+                }else{
+                    QueryWrapper<Project> qw = new QueryWrapper<>();
+                    qw.eq("manager_id", userVO.getId());
+                    List<Project> projects = projectMapper.selectList(qw);
+                    if(projects.size()>0){
+                        for (Project project : projects) {
+                            set.add(project.getId());
+                        }
+                    }
+//                //充当普通人员参与的项目
+                    List<ProjectUser> projectUsers = projectUserMapper.selectList(new QueryWrapper<ProjectUser>().eq("user_id", userVO.getId()));
+                    if(projectUsers.size()>0){
+                        for (ProjectUser projectUser : projectUsers) {
+                            set.add(projectUser.getProjectId());
+                        }
+                    }
+                    moulds = mouldMapper.selectListByConditionByProject(userVO,set);
+                }
+            }
+            PageInfo<MouldVO> pageInfo = new PageInfo<>(moulds);
+            msg.data = pageInfo;
+        }else{
+            msg.setError("用户不存在,或者未登录!");
+        }
+        return msg;
+    }
 }

+ 1 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/util/PageUtil.java

@@ -6,7 +6,7 @@ import java.util.List;
 /**
  * Author: 吴涛涛 cuiyi@itany.com
  * Date : 2019 - 07 - 27 9:25
- * Description:<描述>
+ * Description:<描述> 模仿pagehelper参数的分页封装类
  * Version: 1.0
  */
 public class PageUtil<T> {

+ 5 - 0
cloud-model/src/main/resources/application.properties

@@ -40,4 +40,9 @@ upload.path=D:/cloud/upload/
 # Single file max size  即单个文件大小
 spring.servlet.multipart.max-file-size=10MB
 spring.servlet.multipart.max-request-size=100MB
+##################SpringBoot连接池配置########
+spring.datasource.hikari.minimum-idle=3
+spring.datasource.hikari.maximum-pool-size=10
+spring.datasource.hikari.max-lifetime =30000
+spring.datasource.hikari.connection-test-query=SELECT 1
 

+ 44 - 0
cloud-model/src/main/resources/mapper/MouldEquipmentMapper.xml

@@ -14,10 +14,54 @@
         <result column="is_use" property="isUse" />
         <result column="hill_number" property="hillNumber" />
     </resultMap>
+    <resultMap id="BaseResultMapVO" type="com.hssx.cloudmodel.entity.vo.MouldEquipmentVO">
+        <id column="id" property="id" />
+        <result column="equipment_name" property="equipmentName" />
+        <result column="start_time" property="startTime" />
+        <result column="end_time" property="endTime" />
+        <result column="use_life" property="useLife" />
+        <result column="belong_company_id" property="belongCompanyId" />
+        <result column="companyName" property="companyName" />
+        <result column="equipment_no" property="equipmentNo" />
+        <result column="is_use" property="isUse" />
+        <result column="hill_number" property="hillNumber" />
+    </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
         id, equipment_name, start_time, end_time, use_life, belong_company_id, equipment_no, is_use, hill_number
     </sql>
 
+    <select id="getListByCompanyId" resultMap="BaseResultMapVO">
+        select
+          tbme.id id, tbme.equipment_name equipment_name, tbme.start_time start_time, tbme.end_time end_time,
+          tbme.use_life use_life, tbme.belong_company_id belong_company_id, tbme.equipment_no equipment_no,
+          tbme.is_use, tbme.hill_number,tbc.company_name companyName
+        from
+          tb_mould_equipment tbme
+        left join
+          tb_company tbc
+        on
+          tbme.belong_company_id = tbc.id
+        where
+          tbme.belong_company_id = #{belongCompanyId}
+        and
+        tbme.id not in
+        <foreach item="item" index="index" collection="list"
+                 open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </select>
+    <select id="getList" resultMap="BaseResultMapVO">
+        select
+          tbme.id id, tbme.equipment_name equipment_name, tbme.start_time start_time, tbme.end_time end_time,
+          tbme.use_life use_life, tbme.belong_company_id belong_company_id, tbme.equipment_no equipment_no,
+          tbme.is_use, tbme.hill_number,tbc.company_name companyName
+        from
+          tb_mould_equipment tbme
+        left join
+          tb_company tbc
+        on
+          tbme.belong_company_id = tbc.id
+    </select>
 </mapper>

+ 111 - 1
cloud-model/src/main/resources/mapper/MouldMapper.xml

@@ -26,13 +26,123 @@
         <result column="equipment_id" property="equipmentId" />
         <result column="belong_project_grade" property="belongProjectGrade" />
         <result column="produce_company_id" property="produceCompanyId" />
+        <result column="run_times" property="runTimes" />
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, model_no, model_name, water_gap, tonnage, oc_cycle, daily_output, company_id, current_version_id, state, is_delete, creator_id, project_id, rfid, setting_life, area, factory_id, factory_name, initial_modulus, equipment_id, belong_project_grade, produce_company_id
+        id, model_no, model_name, water_gap, tonnage, oc_cycle, daily_output, company_id, current_version_id, state, is_delete, creator_id, project_id, rfid, setting_life, area, factory_id, factory_name, initial_modulus, equipment_id, belong_project_grade, produce_company_id, run_times
     </sql>
+
+
+    <resultMap id="BaseResultMapVO" type="com.hssx.cloudmodel.entity.vo.MouldVO">
+        <id column="id" property="id"/>
+        <result column="model_no" property="modelNo"/>
+        <result column="model_name" property="modelName"/>
+        <result column="oc_cycle" property="ocCycle"/>
+        <result column="daily_output" property="dailyOutput"/>
+        <result column="company_id" property="companyId"/>
+        <result column="current_version_id" property="currentVersionId"/>
+        <result column="state" property="state"/>
+        <result column="is_delete" property="isDelete"/>
+        <result column="creator_id" property="creatorId"/>
+        <result column="project_id" property="projectId"/>
+        <result column="projectName" property="projectName"/>
+        <result column="rfid" property="rfid"/>
+        <result column="setting_life" property="settingLife"/>
+        <result column="area" property="area"/>
+        <result column="factory_id" property="factoryId"/>
+        <result column="factory_name" property="factoryName"/>
+        <result column="initial_modulus" property="initialModulus"/>
+        <result column="equipment_id" property="equipmentId"/>
+        <result column="belong_project_grade" property="belongProjectGrade"/>
+        <result column="produce_company_id" property="produceCompanyId"/>
+        <result column="projectName" property="projectName"/>
+        <result column="mangerName" property="mangerName"/>
+        <result column="equipmentNo" property="equipmentNo"/>
+        <result column="endTime" property="endTime"/>
+        <result column="hillNumber" property="hillNumber"/>
+    </resultMap>
+
     <update id="updateMouldByProjectId">
         update tb_mould set project_id = null where project_id = #{project.id}
     </update>
+
+    <select id="selectListByCondition" resultMap="BaseResultMapVO">
+        select
+        tbm.id id,tbm.model_no model_no, tbm.model_name,
+        tbmp.end_time endTime,tbm.state state,tbp.project_name projectName,
+        tbp.manager mangerName,tbm.factory_name factory_name,tbm.area area,
+        tbmp.equipment_no equipmentNo,tbm.setting_life setting_life
+        from
+        tb_mould tbm
+        left join
+        tb_mould_equipment tbmp
+        on
+        tbm.equipment_id = tbmp.id
+        left join
+        tb_project tbp
+        on tbp.id = tbm.project_id
+        <where>
+            <if test="userVO.parentId != 0">
+                tbm.company_id = #{userVO.companyId}
+            </if>
+            <if test="userVO.serchType == 0">
+                AND tbp.model_no like concat('%',#{userVO.keyName},'%')
+            </if>
+            <if test="userVO.serchType == 1">
+                AND tbm.model_name like concat('%',#{userVO.keyName},'%')
+            </if>
+            <if test="userVO.projectId != -1">
+                AND tbm.project_id = #{userVO.projectId}
+            </if>
+        </where>
+    </select>
+    <select id="selectListByConditionByProject" resultMap="BaseResultMapVO">
+        select
+        tbm.id id,tbm.model_no model_no, tbm.model_name, tbmp.end_time endTime,tbm.state state,tbp.project_name
+        projectName,
+        tbp.manager mangerName,tbm.factory_name factory_name,tbm.area area,tbmp.equipment_no
+        equipmentNo,tbm.setting_life setting_life
+        from
+        tb_mould tbm
+        left join
+        tb_mould_equipment tbmp
+        on
+        tbm.equipment_id = tbmp.id
+        left join
+        tb_project tbp
+        on tbp.id = tbm.project_id
+        <where>
+            <if test="userVO.serchType == 0">
+                AND tbp.model_no like concat('%',#{userVO.keyName},'%')
+            </if>
+            <if test="userVO.serchType == 1">
+                AND tbm.model_name like concat('%',#{userVO.keyName},'%')
+            </if>
+            AND tbm.project_id in
+            <foreach item="item" index="index" collection="list"
+                     open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </where>
+    </select>
+
+    <select id="getDetailById" resultMap="BaseResultMapVO">
+    select
+        tbm.id id,tbm.model_no model_no, tbm.model_name,tbm.initial_modulus initial_modulus, tbmp.end_time endTime,tbm.state state,tbp.project_name projectName,
+        tbp.manager mangerName,tbm.factory_name factory_name,tbm.area area,tbm.rfid rfid,
+        tbmp.equipment_no equipmentNo,tbmp.hill_number hillNumber,tbm.setting_life setting_life
+        from
+        tb_mould tbm
+        left join
+        tb_mould_equipment tbmp
+        on
+        tbm.equipment_id = tbmp.id
+        left join
+        tb_project  tbp
+        on tbp.id = tbm.project_id
+        where
+        tbm.id = #{mouldVO.id}
+    </select>
 </mapper>

+ 0 - 43
target/classes/main/resources/application.properties

@@ -1,43 +0,0 @@
-# ####################################################################################################
-# 服务端配置
-server.port=8099
-server.servlet.context-path=/
-server.tomcat.uri-encoding=UTF-8
-# ####################################################################################################
-# thymeleaf 配置
-spring.thymeleaf.cache=false
-spring.thymeleaf.jackson.time-zone=GMT+8
-spring.thymeleaf.jackson.date-format=yyyy-MM-dd HH:mm:ss
-# ####################################################################################################
-# 数据源配置
-spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
-spring.datasource.url=jdbc:mysql://118.190.47.230:3306/cloud_model?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
-spring.datasource.username=root
-spring.datasource.password=p011430seya10
-#spring.datasource.druid.test-on-borrow=true
-#spring.datasource.druid.test-while-idle=true
-# ####################################################################################################
-# MyBatis 配置
-mybatis.mapper-locations=mappers/*Mapper.xml
-mybatis.type-aliases-package=com.hssx.cloudmodel.entity/*
-# 控制台输出SQL语句
-logging.level.com.hssx.cloudmodel.mapper = debug
-# ####################################################################################################
-#配置Session
-spring.session.store-type=none
-# ####################################################################################################
-#成功页面跳转
-spring.thymeleaf.prefix=classpath:/static/
-######################################################################################################
-## redis 配置
-#spring.redis.host=localhost
-#spring.redis.port=6379
-######################################################################################################
-# 文件上传路径
-upload.path=D:/cloud/upload/
-#######################################################################################################
-# 配置上传文件的大小设置
-# Single file max size  即单个文件大小
-spring.servlet.multipart.max-file-size=10MB
-spring.servlet.multipart.max-request-size=100MB
-

+ 0 - 30
target/classes/main/resources/application.yml

@@ -1,30 +0,0 @@
-
-##########
-logging:
-  level:
-    root: info
-    org.mybatis: debug
-    java.sql: debug
-    org.springframework.web: trace
-    #打印sql语句
-    com.example.plus.mapper: debug
-##########
-mybatis-plus:
-#  mapper-locations: classpath:mapper/*/*.xml
-#  #实体扫描,多个package用逗号或者分号分隔
-#  typeAliasesPackage: com.hssx.cloudmodel
-  global-config:
-    #主键类型  0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";
-    id-type: 0
-    #字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"
-    field-strategy: 2
-    db-column-underline: true
-    refresh-mapper:
-#################插入和更新非null判断
-    db-config:
-      insert-strategy: not_null
-      update-strategy: not_null
-  configuration:
-    map-underscore-to-camel-case: true
-    cache-enabled: false
-

+ 0 - 31
target/classes/main/resources/mapper/CompanyMapper.xml

@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.CompanyMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.Company">
-        <id column="id" property="id" />
-        <result column="company_name" property="companyName" />
-        <result column="company_address" property="companyAddress" />
-        <result column="company_type" property="companyType" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, company_name, company_address, company_type
-    </sql>
-
-    <select id="getListByKeyName" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from
-        tb_company
-        <where>
-            <if test="keyName != null and keyName != ''">
-                company_name like concat('%',#{keyName},'%')
-            </if>
-        </where>
-        Limit #{start},#{pageSize}
-    </select>
-
-</mapper>

+ 0 - 19
target/classes/main/resources/mapper/CustomCompanyMapper.xml

@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.CustomCompanyMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.CustomCompany">
-        <id column="id" property="id" />
-        <result column="company_id" property="companyId" />
-        <result column="company_name" property="companyName" />
-        <result column="project_id" property="projectId" />
-        <result column="indate" property="indate" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, company_id, company_name, project_id, indate
-    </sql>
-
-</mapper>

+ 0 - 20
target/classes/main/resources/mapper/DictionaryDataMapper.xml

@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.DictionaryDataMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.DictionaryData">
-        <id column="id" property="id" />
-        <result column="dict_code" property="dictCode" />
-        <result column="data_name" property="dataName" />
-        <result column="dict_value" property="dictValue" />
-        <result column="dict_order" property="dictOrder" />
-        <result column="disabled" property="disabled" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, dict_code, data_name, dict_value, dict_order, disabled
-    </sql>
-
-</mapper>

+ 0 - 20
target/classes/main/resources/mapper/FactoryMapper.xml

@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.FactoryMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.Factory">
-        <id column="id" property="id" />
-        <result column="factory_name" property="factoryName" />
-        <result column="factory_area" property="factoryArea" />
-        <result column="y_lng" property="yLng" />
-        <result column="x_lat" property="xLat" />
-        <result column="indate" property="indate" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, factory_name, factory_area, y_lng, x_lat, indate
-    </sql>
-
-</mapper>

+ 0 - 23
target/classes/main/resources/mapper/MouldEquipmentMapper.xml

@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.MouldEquipmentMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.MouldEquipment">
-        <id column="id" property="id" />
-        <result column="equipment_name" property="equipmentName" />
-        <result column="start_time" property="startTime" />
-        <result column="end_time" property="endTime" />
-        <result column="use_life" property="useLife" />
-        <result column="belong_company_id" property="belongCompanyId" />
-        <result column="equipment_no" property="equipmentNo" />
-        <result column="is_use" property="isUse" />
-        <result column="hill_number" property="hillNumber" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, equipment_name, start_time, end_time, use_life, belong_company_id, equipment_no, is_use, hill_number
-    </sql>
-
-</mapper>

+ 0 - 38
target/classes/main/resources/mapper/MouldMapper.xml

@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.MouldMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.Mould">
-        <id column="id" property="id" />
-        <result column="model_no" property="modelNo" />
-        <result column="model_name" property="modelName" />
-        <result column="water_gap" property="waterGap" />
-        <result column="tonnage" property="tonnage" />
-        <result column="oc_cycle" property="ocCycle" />
-        <result column="daily_output" property="dailyOutput" />
-        <result column="company_id" property="companyId" />
-        <result column="current_version_id" property="currentVersionId" />
-        <result column="state" property="state" />
-        <result column="is_delete" property="isDelete" />
-        <result column="creator_id" property="creatorId" />
-        <result column="project_id" property="projectId" />
-        <result column="rfid" property="rfid" />
-        <result column="setting_life" property="settingLife" />
-        <result column="area" property="area" />
-        <result column="factory_id" property="factoryId" />
-        <result column="factory_name" property="factoryName" />
-        <result column="initial_modulus" property="initialModulus" />
-        <result column="equipment_id" property="equipmentId" />
-        <result column="belong_project_grade" property="belongProjectGrade" />
-        <result column="produce_company_id" property="produceCompanyId" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, model_no, model_name, water_gap, tonnage, oc_cycle, daily_output, company_id, current_version_id, state, is_delete, creator_id, project_id, rfid, setting_life, area, factory_id, factory_name, initial_modulus, equipment_id, belong_project_grade, produce_company_id
-    </sql>
-    <update id="updateMouldByProjectId">
-        update tb_mould set project_id = null where project_id = #{project.id}
-    </update>
-</mapper>

+ 0 - 23
target/classes/main/resources/mapper/ProjectFileMapper.xml

@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.ProjectFileMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.ProjectFile">
-        <id column="id" property="id" />
-        <result column="project_id" property="projectId" />
-        <result column="uploader_id" property="uploaderId" />
-        <result column="uploader" property="uploader" />
-        <result column="file_name" property="fileName" />
-        <result column="url" property="url" />
-        <result column="file_type" property="fileType" />
-        <result column="file_size" property="fileSize" />
-        <result column="indate" property="indate" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, project_id, uploader_id, uploader, file_name, url, file_type, file_size, indate
-    </sql>
-
-</mapper>

+ 0 - 99
target/classes/main/resources/mapper/ProjectMapper.xml

@@ -1,99 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.ProjectMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.Project">
-        <id column="id" property="id" />
-        <result column="project_name" property="projectName" />
-        <result column="project_no" property="projectNo" />
-        <result column="start_time" property="startTime" />
-        <result column="end_time" property="endTime" />
-        <result column="content" property="content" />
-        <result column="creator_id" property="creatorId" />
-        <result column="creator" property="creator" />
-        <result column="is_delete" property="isDelete" />
-        <result column="owner_company" property="ownerCompany" />
-        <result column="owner_company_name" property="ownerCompanyName" />
-        <result column="indate" property="indate" />
-        <result column="manager_id" property="managerId" />
-        <result column="manager" property="manager" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, project_name, project_no, start_time, end_time, content, creator_id, creator, is_delete, owner_company, owner_company_name, indate, manager_id, manager
-    </sql>
-
-    <resultMap id="BaseResultMapVO" type="com.hssx.cloudmodel.entity.vo.ProjectVO">
-        <id column="id" property="id" />
-        <result column="project_name" property="projectName" />
-        <result column="project_no" property="projectNo" />
-        <result column="creator_id" property="creatorId" />
-        <result column="creator" property="creator" />
-        <result column="is_delete" property="isDelete" />
-        <result column="indate" property="indate" />
-        <result column="manager_id" property="managerId" />
-        <result column="manager" property="manager" />
-        <collection property="models" ofType="com.hssx.cloudmodel.entity.Mould">
-            <id column="id" property="id" />
-            <result column="model_no" property="modelNo" />
-            <result column="model_name" property="modelName" />
-        </collection>
-    </resultMap>
-
-    <select id="getProjectListByUid" resultMap="BaseResultMap">
-        select
-        p.id id,p.project_name project_name, p.creator creator,p.owner_company owner_company,
-        p.owner_company_name owner_company_name,
-        p.indate indate
-        from
-        tb_project p
-        left join tb_project_user pu
-        on p.id = pu.project_id
-        <where>
-            <if test="currentUser.id != 1">
-                pu.user_id = #{currentUser.id}
-            </if>
-            <if test="keyName != null and keyName != ''">
-                p.project_name like concat('%',#{keyName},'%')
-            </if>
-        </where>
-    </select>
-
-    <select id="getProjectById" resultMap="BaseResultMapVO">
-    select
-        p.id id, p.project_name project_name, p.project_no project_no, p.creator_id creator_id, p.creator creator, p.owner_company owner_company,
-        p.owner_company_name owner_company_name,p.indate indate,
-        m.model_no model_no,m.model_name model_name
-    from
-        tb_project p
-    left join tb_mould m
-    on p.id = m.project_id
-    where
-      p.id = #{id}
-    </select>
-
-    <resultMap id="UserResultMap" type="com.hssx.cloudmodel.entity.User">
-        <id column="id" property="id" />
-        <result column="username" property="username" />
-        <result column="role_type" property="roleType" />
-        <result column="company_id" property="companyId" />
-        <result column="head_imgurl" property="headImgurl" />
-        <result column="subordinate_type" property="subordinateType" />
-    </resultMap>
-
-    <select id="getProjectUserById" resultMap="UserResultMap">
-        select
-          u.id id, u.username username, u.indate indate, u.head_imgurl head_imgurl, u.subordinate_type subordinate_type
-        from
-          tb_project_user pu
-        left join
-          tb_user u
-        on
-          pu.user_id = u.id
-        where
-          pu.project_id = #{id}
-    </select>
-
-</mapper>

+ 0 - 20
target/classes/main/resources/mapper/ProjectUserMapper.xml

@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.ProjectUserMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.ProjectUser">
-        <id column="id" property="id" />
-        <result column="project_id" property="projectId" />
-        <result column="user_id" property="userId" />
-        <result column="subordinate" property="subordinate" />
-        <result column="role_type" property="roleType" />
-        <result column="subordinate_type" property="subordinateType" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, project_id, user_id, subordinate, role_type, subordinate_type
-    </sql>
-
-</mapper>

+ 0 - 19
target/classes/main/resources/mapper/UserCompanyMapper.xml

@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.UserCompanyMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.UserCompany">
-        <id column="id" property="id" />
-        <result column="user_id" property="userId" />
-        <result column="belong_company_id" property="belongCompanyId" />
-        <result column="cooperation_company_id" property="cooperationCompanyId" />
-        <result column="indate" property="indate" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, user_id, belong_company_id, cooperation_company_id, indate
-    </sql>
-
-</mapper>

+ 0 - 77
target/classes/main/resources/mapper/UserMapper.xml

@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.hssx.cloudmodel.mapper.UserMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.hssx.cloudmodel.entity.User">
-        <id column="id" property="id" />
-        <result column="account" property="account" />
-        <result column="username" property="username" />
-        <result column="password" property="password" />
-        <result column="mobile" property="mobile" />
-        <result column="role_type" property="roleType" />
-        <result column="company_id" property="companyId" />
-        <result column="parent_id" property="parentId" />
-        <result column="sex" property="sex" />
-        <result column="role_name" property="roleName" />
-        <result column="work_state" property="workState" />
-        <result column="is_disable" property="isDisable" />
-        <result column="indate" property="indate" />
-        <result column="head_imgurl" property="headImgurl" />
-        <result column="team_name" property="teamName" />
-        <result column="subordinate_type" property="subordinateType" />
-    </resultMap>
-
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-        id, account, username, password, mobile, role_type, company_id, parent_id, sex, role_name, work_state, is_disable, indate, head_imgurl, team_name, subordinate_type
-    </sql>
-
-    <resultMap id="BaseResultMapVO" type="com.hssx.cloudmodel.entity.vo.UserVO">
-        <id column="id" property="id" />
-        <result column="account" property="account" />
-        <result column="username" property="username" />
-        <result column="password" property="password" />
-        <result column="mobile" property="mobile" />
-        <result column="role_type" property="roleType" />
-        <result column="role_name" property="roleName" />
-        <result column="company_id" property="companyId" />
-        <result column="company_name" property="companyName"/>
-        <result column="parent_id" property="parentId" />
-        <result column="sex" property="sex" />
-        <result column="work_state" property="workState" />
-        <result column="is_disable" property="isDisable" />
-        <result column="indate" property="indate" />
-        <result column="head_imgurl" property="headImgurl" />
-        <result column="team_name" property="teamName" />
-        <result column="subordinate_type" property="subordinateType" />
-    </resultMap>
-
-    <select id="selectListByCondition" resultMap="BaseResultMapVO">
-        SELECT
-        u.id id, u.account account, u.username username, u.password password, u.mobile mobile, u.role_type role_type, u.company_id company_id, c.`company_name` company_name,
-        u.role_name role_name,u.parent_id parent_id, u.sex sex, u.work_state work_state, u.is_disable is_disable,
-        u.indate indate, u.head_imgurl head_imgurl, u.team_name team_name, u.subordinate_type subordinate_type
-        FROM
-        tb_user AS u
-        LEFT JOIN tb_company c
-        ON u.company_id = c.`id`
-        <where>
-            u.id != #{user.id}
-            <if test="user.id != 1">
-                AND u.parent_id = #{user.id}
-            </if>
-            <if test="flag==0 and keyName != '' and keyName !=null">
-                AND u.username like concat('%',#{keyName},'%')
-            </if>
-            <if test="flag==1 and keyName != '' and keyName !=null">
-                AND u.account like concat('%',#{keyName},'%')
-            </if>
-            <if test="companyId != -1">
-                AND  u.company_id = #{companyId}
-            </if>
-        </where>
-        Order by u.id desc
-    </select>
-
-</mapper>

+ 25 - 0
ys_vue/index.html

@@ -53,6 +53,31 @@
             .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;
+            }
         </style>
     </head>
     <body>

+ 3 - 1
ys_vue/src/routes.js

@@ -8,6 +8,7 @@ import detection from './views/detection/detection.vue'
 import maintenance from './views/detection/maintenance.vue'
 
 import project from './views/project/project.vue'
+import projectDetail from './views/project/projectDetail.vue'
 import staff from './views/project/staff.vue'
 import competence from './views/project/competence.vue'
 
@@ -59,6 +60,7 @@ let routes = [
         iconCls: 'iconfont icon-ic_dashboard',
         children: [
             { path: '/project', component: project, name: '项目列表' },
+            { path: '/project/:id', component: projectDetail, name: '项目详情', hidden: true },
             { path: '/staff', component: staff, name: '人员管理' },
             { path: '/competence', component: competence, name: '权限管理' }
         ]
@@ -71,7 +73,7 @@ let routes = [
         iconCls: 'iconfont icon-moxing',
         children: [
             { path: '/moldList', component: moldList, name: '模具列表' },
-            { path: '/moldDetail/:id', component: moldDetail, name: '模具详情', hidden: true },
+            { path: '/moldList/:id', component: moldDetail, name: '模具详情', hidden: true },
             { path: '/moldFile', component: moldFile, name: '文档审批' },
             { path: '/moldDownload', component: moldDownload, name: '文档下载' }
         ]

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

@@ -299,6 +299,7 @@
 				// background: #f8f8f8;
                 //f1f2f7
 				flex:1;
+                width: 80%;
 				// position: absolute;
 				// right: 0px;
 				// top: 0px;

+ 157 - 65
ys_vue/src/views/base/allocation.vue

@@ -18,7 +18,7 @@
           <el-button type="primary">查询</el-button>
         </el-form-item>
         <el-form-item style="float: right;">
-          <el-button type="primary" @click="showAllocation">分配云模</el-button>
+          <el-button type="primary" @click="showAllocation">新建</el-button>
         </el-form-item>
       </el-form>
     </el-col>
@@ -32,15 +32,17 @@
       style="width: 100%;"
     >
       <el-table-column type="index" width="60"></el-table-column>
-      <el-table-column prop="id" label="云模盒编号" width="120" sortable></el-table-column>
-      <el-table-column prop="power" label="电量" width="80" sortable></el-table-column>
-      <el-table-column prop="useLife" label="倒计时" width="100" sortable></el-table-column>
-      <el-table-column prop="equipmentName" label="模具名称" width="100" sortable></el-table-column>
-      <el-table-column prop="equipmentNo" label="模具编号" width="120" sortable></el-table-column>
-      <el-table-column prop="belongCompanyId" label="资产方" width="120" sortable></el-table-column>
-      <el-table-column prop="state" label="模具状态" width="100" sortable>
+      <el-table-column prop="equipmentNo" label="云模盒编号" width="130" sortable></el-table-column>
+      <el-table-column label="电量" width="80" sortable></el-table-column>
+      <el-table-column prop="useLife" label="倒计时" width="100" sortable>
+        <template slot-scope="scope">{{scope.row.useLife}}天</template>
+      </el-table-column>
+      <el-table-column prop="equipmentName" label="模具名称" sortable></el-table-column>
+      <el-table-column label="模具编号" sortable></el-table-column>
+      <el-table-column prop="companyName" label="资产方" sortable></el-table-column>
+      <el-table-column label="模具状态" width="100" sortable>
         <template slot-scope="scope">
-          <span v-if="scope.row.state == false">未启用</span>
+          <span v-if="scope.row.isUse == 0">未启用</span>
           <span v-else>已启用</span>
         </template>
       </el-table-column>
@@ -50,9 +52,9 @@
             size="small"
             type="primary"
             @click="enable(scope.$index)"
-            :disabled="scope.row.state == true"
+            :disabled="scope.row.isUse == 1"
           >启用</el-button>
-          <el-button size="small" @click="showEdit(5)">修改</el-button>
+          <el-button size="small" @click="showEdit(scope.row.id)">修改</el-button>
           <el-button type="danger" size="small">删除</el-button>
         </template>
       </el-table-column>
@@ -87,11 +89,32 @@
         :inline="true"
         class="demo-form-inline"
       >
-        <el-form-item label="设备号">
+        <el-form-item label="云模盒编号" prop="equipmentNo">
           <el-input v-model="newAllocation.equipmentNo" autocomplete="off" placeholder="请填写"></el-input>
         </el-form-item>
-        <el-form-item label="所属公司">
-          <el-input v-model="newAllocation.belongCompanyId" autocomplete="off" placeholder="请填写"></el-input>
+        <el-form-item label="所属公司" prop="belongCompanyId">
+          <el-select
+            v-model="newAllocation.belongCompanyId"
+            filterable
+            clearable
+            placeholder="请选择"
+            style="width: 202px"
+          >
+            <el-option
+              v-for="item in companies"
+              :key="item.id"
+              :label="item.companyName"
+              :value="item.id"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="使用年限" prop="useLife">
+          <el-input
+            v-model="newAllocation.useLife"
+            type="number"
+            autocomplete="off"
+            placeholder="请填写"
+          ></el-input>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -116,22 +139,40 @@
         :inline="true"
         class="demo-form-inline"
       >
-        <el-form-item label="设备号">
+        <el-form-item label="云模盒编号" prop="equipmentNo">
           <el-input v-model="newAllocation.equipmentNo" autocomplete="off" placeholder="请填写"></el-input>
         </el-form-item>
-        <el-form-item label="所属公司">
-          <el-input v-model="newAllocation.belongCompanyId" autocomplete="off" placeholder="请填写"></el-input>
+        <el-form-item label="所属公司" prop="belongCompanyId">
+          <el-select
+            v-model="newAllocation.belongCompanyId"
+            filterable
+            clearable
+            placeholder="请选择"
+            style="width: 202px"
+          >
+            <el-option
+              v-for="item in companies"
+              :key="item.id"
+              :label="item.companyName"
+              :value="item.id"
+            ></el-option>
+          </el-select>
         </el-form-item>
-        <el-form-item label="设备名称">
+        <el-form-item label="设备名称" prop="equipmentName">
           <el-input v-model="newAllocation.equipmentName" autocomplete="off" placeholder="请填写"></el-input>
         </el-form-item>
-        <el-form-item label="使用年限">
-          <el-input v-model="newAllocation.useLife" autocomplete="off" placeholder="请填写"></el-input>
+        <el-form-item label="使用年限" prop="useLife">
+          <el-input
+            v-model="newAllocation.useLife"
+            type="number"
+            autocomplete="off"
+            placeholder="请填写"
+          ></el-input>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button @click.native="editFormVisible = false">取消</el-button>
-        <el-button type="primary" @click="editMould">提交</el-button>
+        <el-button type="primary" @click="editMould(newAllocation.id)">提交</el-button>
       </div>
     </el-dialog>
   </section>
@@ -142,36 +183,10 @@ import util from "../../common/js/util";
 export default {
   data() {
     return {
-      allocations: [
-        //临时数据
-        {
-          id: "1234567",
-          power: "N/A",
-          useLife: "400天",
-          equipmentName: "墨盒",
-          equipmentNo: "MUJU123456",
-          belongCompanyId: "南京火石闪信",
-          state: true
-        },
-        {
-          id: "7891011",
-          power: "N/A",
-          useLife: "100天",
-          equipmentName: "墨盒2",
-          equipmentNo: "MUJU654321",
-          belongCompanyId: "南京火石闪信",
-          state: false
-        }
-      ],
-      /**
-       * 添加/修改模具设备
-       * 添加参数:equipmentName 设备名称,useLife 使用年限, equipmentNo 设备编号 ,
-       * belongCompanyId 所属公司id ,equipmentName 设备名称
-       * 修改时需多传的参数 id 设备id
-       */
+      allocations: [],
+      companies: {},
       newAllocation: {
         equipmentNo: "", //设备编号
-        // power: "",
         useLife: "", //使用年限
         equipmentName: "", //设备名称
         id: "", //设备id
@@ -181,9 +196,34 @@ export default {
         name: "",
         value: ""
       },
-      formRules: {},
+      formRules: {
+        equipmentNo: [
+          { required: true, message: "请输入云模盒编号", trigger: "blur" }
+        ],
+        useLife: [
+          {
+            required: true,
+            message: "请输入使用年限",
+            trigger: "blur"
+          }
+        ],
+        equipmentName: [
+          { required: true, message: "请输入设备名称", trigger: "blur" }
+        ],
+        belongCompanyId: [
+          {
+            required: true,
+            message: "请选择所属公司",
+            trigger: ["blur", "change"]
+          }
+        ]
+      },
       listLoading: false,
+      addLoading: false,
+      editLoading: false,
       total: 0,
+      page: 1,
+      size: 20,
       tableHeight: 0,
       addFormVisible: false,
       editFormVisible: false
@@ -193,11 +233,38 @@ export default {
     //分页
     handleCurrentChange(val) {
       this.page = val;
-      // this.getMoulds();
+      this.getMoulds();
     },
     handleSizeChange(val) {
       this.size = val;
-      // this.getMoulds();
+      this.getMoulds();
+    },
+    //读取云模盒信息
+    getMoulds() {
+      this.listLoading = true;
+      this.http.post(
+        this.port.base.mouldeList,
+        {},
+        res => {
+          this.listLoading = false;
+          if (res.code == "ok") {
+            this.allocations = 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"
+          });
+        }
+      );
     },
     //添加界面
     showAllocation() {
@@ -225,21 +292,23 @@ export default {
     addMould() {
       this.$refs.newAllocation.validate(valid => {
         if (valid) {
-          this.editLoading = true;
+          this.addLoading = true;
           this.http.post(
             this.port.base.editMould,
             {
               equipmentNo: this.newAllocation.equipmentNo,
-              belongCompanyId: this.newAllocation.belongCompanyId
+              belongCompanyId: this.newAllocation.belongCompanyId,
+              useLife: this.newAllocation.useLife
             },
             res => {
-              this.editLoading = false;
-              this.editFormVisible = false;
+              this.addLoading = false;
+              this.addFormVisible = false;
               if (res.code == "ok") {
                 this.$message({
                   message: "添加成功",
                   type: "success"
                 });
+                this.getMoulds();
               } else {
                 this.$message({
                   message: res.msg,
@@ -248,8 +317,8 @@ export default {
               }
             },
             error => {
-              this.editLoading = false;
-              this.editFormVisible = false;
+              this.addLoading = false;
+              this.addFormVisible = false;
               this.$message({
                 message: error,
                 type: "error"
@@ -267,13 +336,13 @@ export default {
           this.http.post(
             this.port.base.editMould,
             {
+              id: this.newAllocation.id,
               equipmentNo: this.newAllocation.equipmentNo,
               equipmentName: this.newAllocation.equipmentName,
               belongCompanyId: this.newAllocation.belongCompanyId,
               useLife: this.newAllocation.useLife
             },
             res => {
-              console.log(res);
               this.editLoading = false;
               this.editFormVisible = false;
               if (res.code == "ok") {
@@ -281,6 +350,7 @@ export default {
                   message: "添加成功",
                   type: "success"
                 });
+                this.getMoulds();
               } else {
                 this.$message({
                   message: res.msg,
@@ -302,13 +372,11 @@ export default {
     },
     //启用设备
     enable(index) {
-      this.allocations[index].state = true;
-      //启用设备调用
+      this.allocations[index].isUse = 1;
       this.http.post(
         this.port.base.enableMould,
         {
-          //数是瞎写的
-          id: 1,
+          id: this.allocations[index].id,
           isUse: 1
         },
         res => {
@@ -317,7 +385,7 @@ export default {
               message: "修改成功",
               type: "success"
             });
-            this.getRoles();
+            this.getMoulds();
           } else {
             this.$message({
               message: res.msg,
@@ -338,7 +406,31 @@ export default {
     let height = window.innerHeight;
     this.tableHeight = height - 210;
   },
-  mounted() {}
+  mounted() {
+    //获取模具列表
+    this.getMoulds();
+    //获取公司下拉列表
+    this.http.post(
+      this.port.base.comps,
+      {},
+      res => {
+        if (res.code == "ok") {
+          this.companies = res.data;
+        } else {
+          this.$message({
+            message: res.msg,
+            type: "error"
+          });
+        }
+      },
+      error => {
+        this.$message({
+          message: error,
+          type: "error"
+        });
+      }
+    );
+  }
 };
 </script>
 

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

@@ -183,7 +183,7 @@
             },
 
             //显示新增界面
-			handleAdd: function () {
+			handleAdd() {
                 this.addFormVisible = true;
 				this.addForm = {
                     companyName: '',
@@ -194,7 +194,7 @@
             },
             
             //新增
-			addSubmit: function () {
+			addSubmit() {
 				this.$refs.addForm.validate((valid) => {
 					if (valid) {
                         this.addLoading = true;
@@ -226,7 +226,7 @@
             },
             
 			//删除
-			handleDel: function (index, row) {
+			handleDel(index, row) {
 				this.$confirm('确认删除该公司吗?', '提示', {
 					type: 'warning'
 				}).then(() => {
@@ -255,7 +255,7 @@
             },
             
 			//显示编辑界面
-			handleEdit: function (index, row) {
+			handleEdit(index, row) {
                 this.editFormVisible = true;
                 this.editForm = {
                     id: row.id,
@@ -267,7 +267,7 @@
             },
             
 			//编辑
-			editSubmit: function () {
+			editSubmit() {
 				this.$refs.editForm.validate((valid) => {
 					if (valid) {
 						this.editLoading = true;

+ 4 - 4
ys_vue/src/views/base/factory.vue

@@ -167,7 +167,7 @@
             },
             
             //地址输入切换
-            changeFactoryArea: function (mapId) {
+            changeFactoryArea(mapId) {
                 if(mapId == "addContainer"){
                     this.markLocation(this.addForm.factoryArea, mapId);
                 } else {
@@ -177,7 +177,7 @@
             },
 
             //显示新增界面
-			handleAdd: function () {
+			handleAdd() {
                 this.addFormVisible = true;
                 this.noSub = false;
 				this.addForm = {
@@ -190,7 +190,7 @@
             },
 
             //新增
-			addSubmit: function () {
+			addSubmit() {
 				this.$refs.addForm.validate((valid) => {
 					if (valid) {
                         if(this.noSub){
@@ -229,7 +229,7 @@
             },
             
 			//删除
-			handleDel: function (index, row) {
+			handleDel(index, row) {
 				this.$confirm('确认删除该工厂吗?', '提示', {
 					type: 'warning'
 				}).then(() => {

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

@@ -256,7 +256,7 @@
             },
 
             //显示新增界面
-			handleAdd: function () {
+			handleAdd() {
                 this.addFormVisible = true;
 				this.addForm = {
 					roleName: '',
@@ -269,7 +269,7 @@
             },
             
             //新增
-			addSubmit: function () {
+			addSubmit() {
 				this.$refs.addForm.validate((valid) => {
 					if (valid) {
                         this.addLoading = true;
@@ -309,7 +309,7 @@
             },
             
 			//删除
-			handleDel: function (index, row) {
+			handleDel(index, row) {
 				this.$confirm('确认删除该角色吗?', '提示', {
 					type: 'warning'
 				}).then(() => {
@@ -338,7 +338,7 @@
             },
             
 			//显示编辑界面
-			handleEdit: function (index, row) {
+			handleEdit(index, row) {
                 this.editFormVisible = true;
                 this.editForm = {
                     id: row.id,
@@ -351,7 +351,7 @@
             },
             
 			//编辑
-			editSubmit: function () {
+			editSubmit() {
 				this.$refs.editForm.validate((valid) => {
 					if (valid) {
 						this.editLoading = true;

+ 0 - 6
ys_vue/src/views/detection/detection.vue

@@ -43,12 +43,6 @@
           <a style="color: #409EFF; cursor: pointer" @click="toMaintenance(scope.row.number)">不需要</a>
         </template>
       </el-table-column>
-      <el-table-column label="模具更新" width="100" sortable>
-        <el-button size="small">请求</el-button>
-      </el-table-column>
-      <el-table-column label="模具报废" width="100" sortable>
-        <el-button size="small">请求</el-button>
-      </el-table-column>
     </el-table>
 
     <!--工具条-->

+ 231 - 163
ys_vue/src/views/mold/moldDetail.vue

@@ -1,175 +1,243 @@
 <template>
-  <section>
-    <!--工具条-->
-    <el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
-      <el-form :inline="true">
-        <el-form-item>
-          <el-button type="primary" @click="backToList">返回</el-button>
-        </el-form-item>
-      </el-form>
-    </el-col>
-    <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="6" class="detail">
-        对应RFID码:
-        <span class="info">{{mould.RFIDcode}}</span>
-      </el-col>
-      <el-col :span="6" class="detail">
-        云模盒编号:
-        <span class="info">{{mould.mouldNumber}}</span>
-      </el-col>
-      <el-col :span="12" class="detail">
-        所属项目:
-        <span class="info">{{mould.project}}</span>
-      </el-col>
-      <el-col :span="12" class="detail">
-        生产厂家:
-        <span class="info">{{mould.manufacturer}}</span>
-      </el-col>
-    </el-col>
+    <section>
+        <!--工具条-->
+        <el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
+            <!-- <el-form :inline="true">
+                <el-form-item>
+                    <el-button type="primary" @click="backToList">返回</el-button>
+                </el-form-item>
+            </el-form> -->
+            <el-form :inline="true">
+                <el-form-item>
+                    <el-button type="text" @click="backToList" icon="el-icon-back" class="back">返回</el-button>
+                </el-form-item>
+                <el-form-item class="divLine">
+                </el-form-item>
+                <el-form-item>
+                    <span class="projectTitle">测试用模具001</span>
+                </el-form-item>
+                <el-form-item class="state">
+                      当前状态:
+                      <a style="color: #409EFF; cursor: pointer" @click="toDetection">运行</a>
+                      <span class="tips">(点击查看运行状态)</span>
+                </el-form-item>
+            </el-form>
+        </el-col>
+        <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.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">{{mould.lifetime}}</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="6" class="detail">
+                    对应RFID码:
+                    <span class="info">{{mould.RFIDcode}}</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">{{mould.project}}</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>
+            </el-col>
 
-    <el-col :span="24" class="title">文档资料</el-col>
-    <el-col :span="24">
-      <el-tabs v-model="activePage" @tab-click="handleClick">
-        <el-tab-pane label="模具文档" name="0">
-          <el-table
-            :data="documents"
-            highlight-current-row
-            v-loading="listLoading"
-            style="width: 100%;"
-          >
-            <el-table-column type="index" width="40"></el-table-column>
-            <el-table-column prop="name" label="名称" width="400" sortable></el-table-column>
-            <el-table-column prop="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-tab-pane>
-        <el-tab-pane label="零件文档" name="1">零件文档</el-tab-pane>
-        <el-tab-pane label="试模及验收" name="2">试模及验收</el-tab-pane>
-        <el-tab-pane label="保养方案" name="3">保养方案</el-tab-pane>
-        <el-tab-pane label="模具更新" name="4">模具更新</el-tab-pane>
-        <el-tab-pane label="模具报废" name="5">模具报废</el-tab-pane>
-      </el-tabs>
-    </el-col>
+            <el-col :span="24" class="title">文档资料</el-col>
+            <el-col :span="24">
+                <el-tabs v-model="activePage" @tab-click="handleClick">
+                    <el-tab-pane label="模具文档" name="0">
+                    <el-table :data="documents" highlight-current-row v-loading="listLoading" style="width: 100%;height:300px;">
+                        <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="120" 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="300" sortable>
+                            <el-button size="small">审批</el-button>
+                            <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-tab-pane>
+                    <el-tab-pane label="零件文档" name="1">零件文档</el-tab-pane>
+                    <el-tab-pane label="试模及验收" name="2">试模及验收</el-tab-pane>
+                    <el-tab-pane label="保养方案" name="3">保养方案</el-tab-pane>
+                    <el-tab-pane label="模具更新" name="4">模具更新</el-tab-pane>
+                    <el-tab-pane label="模具报废" name="5">模具报废</el-tab-pane>
+                </el-tabs>
+            </el-col>
 
-    <el-col :span="24" class="title">操作记录</el-col>
-    <el-table :data="operations" highlight-current-row v-loading="listLoading" style="width: 100%;">
-      <el-table-column type="index" width="40"></el-table-column>
-      <el-table-column prop="name" label="姓名" width="400" sortable></el-table-column>
-      <el-table-column prop="document" label="文档名称" width="400" sortable></el-table-column>
-      <el-table-column label="操作" width="400" sortable>
-        <template slot-scope="scope">
-          <span v-if="scope.row.operations == 0">浏览</span>
-          <span v-else-if="scope.row.operations == 1">下载</span>
-          <span v-else>删除</span>
-        </template>
-      </el-table-column>
-      <el-table-column prop="time" label="时间" width="400" sortable></el-table-column>
-    </el-table>
-  </section>
+            <el-col :span="24" class="title">操作记录</el-col>
+            <el-table :data="operations" highlight-current-row v-loading="listLoading" style="width: 100%;height:300px;">
+                <el-table-column type="index" width="40"></el-table-column>
+                <el-table-column prop="name" label="姓名" width="400" sortable></el-table-column>
+                <el-table-column prop="document" label="文档名称" sortable></el-table-column>
+                <el-table-column label="操作" width="400" sortable>
+                    <template slot-scope="scope">
+                        <span v-if="scope.row.operations == 0">浏览</span>
+                        <span v-else-if="scope.row.operations == 1">下载</span>
+                        <span v-else>删除</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="time" label="时间" width="400" sortable></el-table-column>
+            </el-table>
+        </el-col>
+    </section>
 </template>
 
 <script>
-import util from "../../common/js/util";
-export default {
-  data() {
-    return {
-      //临时数据
-      mould: {
-        typeNumber: "MUJU002",
-        name: "墨模具测试",
-        project: "墨盒项目",
-        client: "南京海市蜃楼有限公司",
-        manufacturer: "南京江宁制造局",
-        mouldNumber: "MOHE0023",
-        lifetime: "1年",
-        initial: "36",
-        RFIDcode: "RFID1234",
-        blueprint: true,
-        BOMtable: true,
-        partList: false,
-        standard: false
-      },
-      documents: [
-        {
-          name: "墨盒产品验证文档.word",
-          size: "100KB",
-          uploader: "张富贵",
-          uploadTime: "2019-07-24",
-          state: 0
-        }
-      ],
-      operations: [
-        {
-          name: "王多银",
-          document: "墨盒产品验证文档.word",
-          operation: 0,
-          time: "时间"
+    import util from "../../common/js/util";
+    export default {
+        data() {
+            return {
+                //临时数据
+                mould: {
+                    typeNumber: "MUJU002",
+                    name: "墨模具测试",
+                    project: "墨盒项目",
+                    client: "南京海市蜃楼有限公司",
+                    manufacturer: "南京江宁制造局",
+                    mouldNumber: "MOHE0023",
+                    lifetime: "1年",
+                    initial: "36",
+                    RFIDcode: "RFID1234",
+                    blueprint: true,
+                    BOMtable: true,
+                    partList: false,
+                    standard: false
+                },
+                documents: [
+                    {
+                    name: "墨盒产品验证文档.word",
+                    size: "100KB",
+                    uploader: "张富贵",
+                    uploadTime: "2019-07-24",
+                    state: 0
+                    }
+                ],
+                operations: [
+                    {
+                    name: "王多银",
+                    document: "墨盒产品验证文档.word",
+                    operation: 0,
+                    time: "时间"
+                    }
+                ],
+
+                allDetail: {
+                    overflow: 'auto',
+                    padding: '0px 5px',
+                    height: 0
+                },
+                listLoading: false,
+                activePage: 0
+            };
+        },
+        methods: {
+            backToList() {
+                this.$router.push("/moldList");
+            },
+            toDetection(){
+              this.$router.push("/detection");
+            },
+            handleClick(tab, event) {
+                console.log(tab, event);
+            }
+        },
+        created() {
+            let height = window.innerHeight;
+            this.allDetail.height = height - 170 + "px";
+        },
+        mounted() {
+            var mouldId = this.$route.params.id; //传到当前页面的模具编号
         }
-      ],
-      listLoading: false,
-      activePage: 0
     };
-  },
-  methods: {
-    backToList() {
-      this.$router.push("/moldList");
-    },
-    handleClick(tab, event) {
-      console.log(tab, event);
-    }
-  },
-  created() {},
-  mounted() {
-    var mouldId = this.$route.params.id; //传到当前页面的模具编号
-  }
-};
 </script>
 
 <style scoped>
-.title {
-  padding-left: 10px;
-  padding-bottom: 0px;
-  margin: 20px 0;
-  font-size: 16px;
-  line-height: 16px;
-  border-left: 1px blue solid;
-}
-.info {
-  color: grey;
-}
-.main {
-  padding-left: 10px;
-}
-.detail {
-  margin-bottom: 20px;
-}
+    .toolbar .el-form-item {
+        font-size: 14px;
+        vertical-align: middle;
+    }
+
+    .back {
+       font-size:16px;
+    }
+
+    .divLine {
+        width: 2px;
+        background: #c3c3c3;
+        height: 100%;
+    }
+
+    .projectTitle {
+        font-size: 18px;
+        color: #333;
+    }
+
+    .state {
+        float: right;
+    }
+
+    .tips {
+        color:#bbb;
+    }
+
+    .title {
+        padding-left: 10px;
+        padding-bottom: 0px;
+        margin: 20px 0;
+        font-size: 16px;
+        line-height: 24px;
+        border-left: 1px blue solid;
+    }
+
+    .info {
+        color: grey;
+    }
+
+    .main {
+        padding-left: 10px;
+    }
+
+    .detail {
+        margin-bottom: 20px;
+    }
 </style>

+ 146 - 82
ys_vue/src/views/mold/moldList.vue

@@ -24,71 +24,64 @@
     </el-col>
 
     <!--列表-->
-    <el-table
-      :data="moulds"
-      :height="tableHeight"
-      highlight-current-row
-      v-loading="listLoading"
-      style="width: 100%;"
-    >
-      <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="100" 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="生产厂家" width="100" 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>
-        <template slot-scope="scope">
-          <span v-if="scope.row.blueprint">需要</span>
-          <span v-else>不需要</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="Bom表" width="90" sortable>
-        <template slot-scope="scope">
-          <span v-if="scope.row.BOMtable">需要</span>
-          <span v-else>不需要</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="零件清单" width="100" sortable>
-        <template slot-scope="scope">
-          <span v-if="scope.row.partList">需要</span>
-          <span v-else>不需要</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="保养标准" width="100" sortable>
-        <template slot-scope="scope">
-          <span v-if="scope.row.standard">需要</span>
-          <span v-else>不需要</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="操作" width="220" sortable>
-        <template slot-scope="scope">
-          <el-button size="small" @click="toDetail(scope.row.typeNumber)">详情</el-button>
-          <el-button size="small">修改</el-button>
-          <el-button size="small" type="danger">删除</el-button>
-        </template>
-      </el-table-column>
+    <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 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>
+            <template slot-scope="scope">
+            <span v-if="scope.row.blueprint">需要</span>
+            <span v-else>不需要</span>
+            </template>
+        </el-table-column>
+        <el-table-column label="Bom表" width="100" sortable>
+            <template slot-scope="scope">
+            <span v-if="scope.row.BOMtable">需要</span>
+            <span v-else>不需要</span>
+            </template>
+        </el-table-column>
+        <el-table-column label="零件清单" width="100" sortable>
+            <template slot-scope="scope">
+            <span v-if="scope.row.partList">需要</span>
+            <span v-else>不需要</span>
+            </template>
+        </el-table-column>
+        <el-table-column label="保养标准" width="100" sortable>
+            <template slot-scope="scope">
+            <span v-if="scope.row.standard">需要</span>
+            <span v-else>不需要</span>
+            </template>
+        </el-table-column>
+        <el-table-column label="操作" width="150" sortable>
+            <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>
+            </template>
+        </el-table-column>
     </el-table>
 
     <!--工具条-->
     <el-col :span="24" class="toolbar">
-      <el-pagination
-        @size-change="handleSizeChange"
-        @current-change="handleCurrentChange"
-        :page-sizes="[20 , 50 , 80 , 100 , 200]"
-        :page-size="20"
-        layout="total, sizes, prev, pager, next"
-        :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-if="addFormVisible" :visible.sync="addFormVisible" :close-on-click-modal="false" customClass="customWidth">
+    <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="modelNo">
                 <el-input v-model="addForm.modelNo" autocomplete="off" placeholder="请输入模具编号"></el-input>
@@ -96,12 +89,11 @@
             <el-form-item label="模具名称" prop="modelName">
                 <el-input v-model="addForm.modelName" autocomplete="off" placeholder="请输入模具名称"></el-input>
             </el-form-item>
-            <el-form-item label="云模盒编号" prop="mouldNumber">
-                <el-select v-model="addForm.companyType" clearable filterable placeholder="请选择公司类型" style="width:533px">
-                    <el-option v-for="item in team" :key="item.value" :label="item.label" :value="item.value">
+            <el-form-item label="云模盒编号" prop="equipmentId">
+                <el-select v-model="addForm.equipmentId" clearable filterable placeholder="请选择云模盒编号" style="width:533px">
+                    <el-option v-for="item in boxes" :key="item.id" :label="item.equipmentNo" :value="item.id">
                     </el-option>
                 </el-select>
-                <el-input v-model="addForm.mouldNumber" autocomplete="off" placeholder="请输入云模盒编号"></el-input>
             </el-form-item>
         </el-form>
         <div slot="footer" class="dialog-footer">
@@ -118,7 +110,7 @@
         data() {
             return {
                 user: JSON.parse(sessionStorage.getItem('user')),
-                moulds: [
+                molds: [
                     //临时数据
                     {
                     typeNumber: "MUJU002",
@@ -163,22 +155,45 @@
                     modelName: [
                         { required: true, message: '请输入模具名称', trigger: 'blur' }
                     ],
-                    managerId: [
+                    equipmentId: [
                         { required: true, message: '请选择云模盒编号', trigger: ['blur','change'] }
                     ]
                 },
                 listLoading: false,
                 total: 0,
                 tableHeight: 0,
+                boxes: [],
+
+                addLoading: false,
                 addFormVisible: false,
                 addForm: {
                     modelNo: "",
                     modelName: "",
-                    managerId: ""       
+                    equipmentId: ""       
                 }
             };
         },
         methods: {
+            getMsg() {
+                this.http.post(this.port.base.moulds, {
+                    belongCompanyId: this.user.companyId
+                }, res => {
+                    if (res.code == "ok") {
+                        this.boxes = res.data;
+                    } else {
+                        this.$message({
+                            message: res.msg,
+                            type: 'error'
+                        });
+                    }
+                }, error => {
+                    this.listLoading = false;
+                    this.$message({
+                        message: error,
+                        type: 'error'
+                    });
+                })
+            },
             //分页
             handleCurrentChange(val) {
                 this.page = val;
@@ -188,30 +203,78 @@
                 this.size = val;
                 // this.getUsers();
             },
-            selsChange: function(sels) {
-                this.sels = sels;
+
+            //获取模具列表
+            getMoldList() {
+                // this.listLoading = true;
+                // this.http.post(this.port.mold.modelList, {
+                //     keyName: this.filters.keyName,
+                //     currentPage: this.page,
+                //     pageSize: this.size,
+                //     companyId: this.filters.companyId==''?-1:this.filters.companyId,
+                //     flag: this.filters.flag=='姓名'?0:this.filters.flag
+                // }, 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'
+                //     });
+                // })
             },
+            //详情
             toDetail(id) {
-                this.$router.push("/moldDetail/" + id);
+                this.$router.push("/moldList/" + id);
             },
+
             //添加界面
             showAdd() {
                 this.addFormVisible = true;
                 this.addForm = {
-                    typeNumber: "",
-                    name: "",
-                    project: "",
-                    client: "",
-                    manufacturer: "",
-                    mouldNumber: "",
-                    lifetime: "",
-                    initial: "",
-                    RFIDcode: "",
-                    blueprint: false,
-                    BOMtable: false,
-                    partList: false,
-                    standard: false
+                    modelNo: "",
+                    modelName: "",
+                    equipmentId: ""       
                 };
+            },
+            addSubmit() {
+                this.$refs.addForm.validate((valid) => {
+					if (valid) {
+                        this.addLoading = true;
+                        this.http.post(this.port.mold.addMold, this.addForm , res => {
+                            this.addLoading = false;
+                            this.addFormVisible = false;
+                            if (res.code == "ok") {
+                                this.$message({
+                                    message: '创建成功',
+                                    type: 'success'
+                                });
+                                this.getMoldList();
+                            } else {
+                                this.$message({
+                                    message: res.msg,
+                                    type: 'error'
+                                });
+                            }
+                        }, error => {
+                            this.addLoading = false;
+                            this.addFormVisible = false;
+                            this.$message({
+                                message: error,
+                                type: 'error'
+                            });
+                        })
+					}
+				});
             }
         },
         created() {
@@ -219,7 +282,8 @@
             this.tableHeight = height - 210;
         },
         mounted() {
-
+            this.getMsg();
+            this.getMoldList();
         }
     };
 </script>

+ 13 - 7
ys_vue/src/views/project/project.vue

@@ -23,18 +23,19 @@
 			</el-table-column>
             <el-table-column prop="ownerCompanyName" label="生产方" min-width="200" sortable>
 			</el-table-column>
-            <el-table-column prop="charger" label="生产方负责人" min-width="150" sortable>
+            <el-table-column prop="charger" label="生产方负责人" sortable>
 			</el-table-column>
-			<el-table-column prop="creator" label="项目创建人" width="150" sortable>
+			<el-table-column prop="creator" label="项目创建人" sortable>
 			</el-table-column>
 			<el-table-column prop="indate" label="创建时间" width="180" sortable>
 			</el-table-column>
-			<!-- <el-table-column label="操作" width="150">
+			<el-table-column label="操作" width="250">
 				<template slot-scope="scope">
+                    <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 type="danger" size="small" @click="handleDel(scope.$index, scope.row)">删除</el-button>
 				</template>
-			</el-table-column> -->
+			</el-table-column>
 		</el-table>
 
 		<!--工具条-->
@@ -232,8 +233,13 @@
                 })
             },
 
+            //详情
+            toDetail(id) {
+                this.$router.push("/project/" + id);
+            },
+
             //选择公司切换人员
-            companyChange: function(){
+            companyChange() {
                 var param = {} ,
                     str = this.user.companyId;
                 for(var i in this.addForm.customerCompany){
@@ -258,7 +264,7 @@
             },
 
             //显示新增界面
-			handleAdd: function () {
+			handleAdd() {
 				this.addFormVisible = true;
 				this.addForm = {
 					projectName: '',
@@ -270,7 +276,7 @@
             },
 
             //新增
-			addSubmit: function () {
+			addSubmit() {
 				this.$refs.addForm.validate((valid) => {
 					if (valid) {
                         // console.log(this.addForm)

+ 202 - 0
ys_vue/src/views/project/projectDetail.vue

@@ -0,0 +1,202 @@
+<template>
+    <section>
+        <!--工具条-->
+        <el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
+            <el-form :inline="true">
+                <el-form-item>
+                    <el-button type="text" @click="backToList" icon="el-icon-back" class="back">返回</el-button>
+                </el-form-item>
+                <el-form-item class="divLine">
+                </el-form-item>
+                <el-form-item>
+                    <span class="projectTitle">测试用项目001</span>
+                </el-form-item>
+            </el-form>
+        </el-col>
+        <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>
+                <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>
+    </section>
+</template>
+
+<script>
+    import util from "../../common/js/util";
+    export default {
+        data() {
+            return {
+                //临时数据
+                mould: {
+                    typeNumber: "MUJU002",
+                    name: "墨模具测试",
+                    project: "墨盒项目",
+                    client: "南京海市蜃楼有限公司",
+                    manufacturer: "南京江宁制造局",
+                    mouldNumber: "MOHE0023",
+                    lifetime: "1年",
+                    initial: "36",
+                    RFIDcode: "RFID1234",
+                    blueprint: true,
+                    BOMtable: true,
+                    partList: false,
+                    standard: false
+                },
+                documents: [
+                    {
+                    name: "墨盒产品验证文档.word",
+                    size: "100KB",
+                    uploader: "张富贵",
+                    uploadTime: "2019-07-24",
+                    state: 0
+                    }
+                ],
+                operations: [
+                    {
+                    name: "王多银",
+                    document: "墨盒产品验证文档.word",
+                    operation: 0,
+                    time: "时间"
+                    }
+                ],
+
+                allDetail: {
+                    overflow: 'auto',
+                    padding: '0px 5px',
+                    height: 0
+                },
+                listLoading: false,
+                activePage: 0
+            };
+        },
+        methods: {
+            //返回
+            backToList() {
+                this.$router.push("/project");
+            },
+            handleClick(tab, event) {
+                console.log(tab, event);
+            },
+
+            //上传
+            uploadFile(params) {
+                console.log(params)
+            }
+        },
+        created() {
+            let height = window.innerHeight;
+            this.allDetail.height = height - 170 + "px";
+        },
+        mounted() {
+            var mouldId = this.$route.params.id; //传到当前页面的模具编号
+        }
+    };
+</script>
+
+<style scoped>
+    .allDetail {
+        overflow-y: auto;
+    }
+
+    .toolbar .el-form-item {
+        font-size: 14px;
+        vertical-align: middle;
+    }
+
+    .back {
+       font-size:16px; 
+    }
+
+    .divLine {
+        width: 2px;
+        background: #c3c3c3;
+        height: 100%;
+    }
+
+    .projectTitle {
+        font-size: 18px;
+        color: #333;
+    }
+
+    .title {
+        padding-left: 10px;
+        padding-bottom: 0px;
+        margin: 20px 0;
+        font-size: 16px;
+        line-height: 24px;
+        border-left: 1px blue solid;
+        position: relative;
+    }
+
+    .upload-demo {
+        position: absolute;
+        right: 0;
+        top: -5px;
+    }
+
+    .info {
+        color: grey;
+    }
+
+    .main {
+        padding-left: 10px;
+    }
+
+    .detail {
+        margin-bottom: 20px;
+    }
+</style>