5 éve
szülő
commit
a3c3b03976

+ 1 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/controller/CompanyController.java

@@ -60,7 +60,7 @@ public class CompanyController {
     public HttpRespMsg delete(Company company, HttpServletRequest request,
                               HttpServletResponse response) {
         HttpRespMsg msg = new HttpRespMsg();
-        msg.data = companyService.removeById(company.getId());
+        msg.data = companyService.deleteById(company.getId());
         return msg;
     }
 

+ 32 - 6
cloud-model/src/main/java/com/hssx/cloudmodel/controller/ProjectController.java

@@ -1,9 +1,14 @@
 package com.hssx.cloudmodel.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.hssx.cloudmodel.entity.Factory;
 import com.hssx.cloudmodel.entity.Project;
+import com.hssx.cloudmodel.entity.User;
 import com.hssx.cloudmodel.service.ProjectService;
+import com.hssx.cloudmodel.service.UserService;
 import com.hssx.cloudmodel.util.HttpRespMsg;
+import com.hssx.cloudmodel.util.PageUtil;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -15,30 +20,36 @@ import javax.servlet.http.HttpServletResponse;
 
 
 /**
- *
  * @author 吴涛涛
  * @since 2019-07-27
  */
 @Controller
 @RequestMapping("/project")
-public class ProjectController {
+public class ProjectController{
     @Autowired
     private ProjectService projectService;
+    @Autowired
+    private UserService userService;
+
     /**
      * 添加/修改项目
      * 参数:projectName 项目名 ,creatorId 创建人id ,creator 创建人名字
      * ownerCompany 本项目公司id, ownerCompanyName 本公司名字,customerCompany 客户方公司id
      * customerCompanyName 客户放公司名称
      * flag 0-添加,1-修改
+     *
      * @return
      */
     @ApiOperation("添加/修改项目")
     @RequestMapping("/add")
     @ResponseBody
     public HttpRespMsg addAndUpdateProject(Project project, HttpServletRequest request, Integer flag,
-                                        HttpServletResponse response) {
+                                           HttpServletResponse response, String token) {
         HttpRespMsg msg = new HttpRespMsg();
-        msg = projectService.addAndUpdateProject(project, flag);
+        QueryWrapper<User> qw = new QueryWrapper<>();
+        qw.eq("head_imgurl",token);
+        User user = userService.getOne(qw);
+        msg = projectService.addAndUpdateProject(project, flag, user);
         return msg;
     }
 
@@ -51,9 +62,24 @@ public class ProjectController {
     @ApiOperation("分配项目")
     @RequestMapping("/ handOutProject")
     @ResponseBody
-    public HttpRespMsg handOutProject(Project project,String userIds){
-        HttpRespMsg msg = projectService.handOutProject(project,userIds);
+    public HttpRespMsg handOutProject(Project project, String userIds) {
+        HttpRespMsg msg = projectService.handOutProject(project, userIds);
+        return msg;
+    }
+
+    /**
+     * 分配项目
+     * 参数:id 项目id ,userIds 参与项目的用户id 如:“1,2,3”(多个或者一个)
+     *
+     * @return
+     */
+    @ApiOperation("项目列表")
+    @RequestMapping("/list")
+    @ResponseBody
+    public HttpRespMsg handOutProject(String keyName, PageUtil page, String token) {
+        HttpRespMsg msg = projectService.getList(keyName,page);
         return msg;
     }
+
 }
 

+ 31 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/entity/Project.java

@@ -14,7 +14,7 @@ import java.io.Serializable;
  * </p>
  *
  * @author 吴涛涛
- * @since 2019-07-27
+ * @since 2019-07-29
  */
 @TableName("tb_project")
 public class Project extends Model<Project> {
@@ -105,6 +105,18 @@ public class Project extends Model<Project> {
     @TableField("indate")
     private LocalDateTime indate;
 
+    /**
+     * 负责人id
+     */
+    @TableField("charger_id")
+    private Integer chargerId;
+
+    /**
+     * 负责人名字
+     */
+    @TableField("charger")
+    private String charger;
+
 
     public Integer getId() {
         return id;
@@ -218,6 +230,22 @@ public class Project extends Model<Project> {
         this.indate = indate;
     }
 
+    public Integer getChargerId() {
+        return chargerId;
+    }
+
+    public void setChargerId(Integer chargerId) {
+        this.chargerId = chargerId;
+    }
+
+    public String getCharger() {
+        return charger;
+    }
+
+    public void setCharger(String charger) {
+        this.charger = charger;
+    }
+
     @Override
     protected Serializable pkVal() {
         return this.id;
@@ -240,6 +268,8 @@ public class Project extends Model<Project> {
         ", customerCompany=" + customerCompany +
         ", customerCompanyName=" + customerCompanyName +
         ", indate=" + indate +
+        ", chargerId=" + chargerId +
+        ", charger=" + charger +
         "}";
     }
 }

+ 16 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/entity/Role.java

@@ -14,7 +14,7 @@ import java.io.Serializable;
  * </p>
  *
  * @author 吴涛涛
- * @since 2019-07-26
+ * @since 2019-07-29
  */
 @TableName("tb_role")
 public class Role extends Model<Role> {
@@ -63,6 +63,12 @@ public class Role extends Model<Role> {
     @TableField("indate")
     private LocalDateTime indate;
 
+    /**
+     * 所属方
+     */
+    @TableField("subordinate")
+    private String subordinate;
+
 
     public Integer getId() {
         return id;
@@ -120,6 +126,14 @@ public class Role extends Model<Role> {
         this.indate = indate;
     }
 
+    public String getSubordinate() {
+        return subordinate;
+    }
+
+    public void setSubordinate(String subordinate) {
+        this.subordinate = subordinate;
+    }
+
     @Override
     protected Serializable pkVal() {
         return this.id;
@@ -135,6 +149,7 @@ public class Role extends Model<Role> {
         ", viewPower=" + viewPower +
         ", approvalPower=" + approvalPower +
         ", indate=" + indate +
+        ", subordinate=" + subordinate +
         "}";
     }
 }

+ 2 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/service/CompanyService.java

@@ -22,4 +22,6 @@ public interface CompanyService extends IService<Company> {
     HttpRespMsg pageList(PageUtil page, String keyName);
 
     List<Company> getIdAndNamelist();
+
+    HttpRespMsg deleteById(Integer id);
 }

+ 2 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/service/FactoryService.java

@@ -18,4 +18,6 @@ public interface FactoryService extends IService<Factory> {
     HttpRespMsg addAndUpdateFactory(Factory factory, Integer flag);
 
     HttpRespMsg pageList(PageUtil page, String keyName);
+
+    HttpRespMsg deleteById(Integer id);
 }

+ 5 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/service/ProjectService.java

@@ -3,7 +3,9 @@ package com.hssx.cloudmodel.service;
 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.util.HttpRespMsg;
+import com.hssx.cloudmodel.util.PageUtil;
 
 /**
  * <p>
@@ -15,7 +17,9 @@ import com.hssx.cloudmodel.util.HttpRespMsg;
  */
 public interface ProjectService extends IService<Project> {
 
-    HttpRespMsg addAndUpdateProject(Project project, Integer flag);
+    HttpRespMsg addAndUpdateProject(Project project, Integer flag, User user);
 
     HttpRespMsg handOutProject(Project project, String userIds);
+
+    HttpRespMsg getList(String keyName,PageUtil page);
 }

+ 16 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/CompanyServiceImpl.java

@@ -3,7 +3,9 @@ package com.hssx.cloudmodel.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.hssx.cloudmodel.entity.Company;
 import com.hssx.cloudmodel.entity.Role;
+import com.hssx.cloudmodel.entity.User;
 import com.hssx.cloudmodel.mapper.CompanyMapper;
+import com.hssx.cloudmodel.mapper.UserMapper;
 import com.hssx.cloudmodel.service.CompanyService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.hssx.cloudmodel.util.HttpRespMsg;
@@ -25,6 +27,8 @@ import java.util.List;
 public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> implements CompanyService {
     @Autowired
     CompanyMapper companyMapper;
+    @Autowired
+    UserMapper userMapper;
 
     @Override
     public HttpRespMsg addAndUpdateRole(Company company, Integer flag) {
@@ -67,4 +71,16 @@ public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> impl
     public List<Company> getIdAndNamelist() {
         return companyMapper.selectIdAndNamelist();
     }
+
+    @Override
+    public HttpRespMsg deleteById(Integer id) {
+        HttpRespMsg msg = new HttpRespMsg();
+        Integer count = userMapper.selectCount(new QueryWrapper<User>().eq("company_id", id));
+        if (count > 0) {
+            msg.setError("该公司已被应用到用户中,暂不提供删除操作");
+        } else {
+            companyMapper.deleteById(id);
+        }
+        return msg;
+    }
 }

+ 5 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/FactoryServiceImpl.java

@@ -61,4 +61,9 @@ public class FactoryServiceImpl extends ServiceImpl<FactoryMapper, Factory> impl
         msg.data = pageInfos;
         return msg;
     }
+    //后续模具天机时需要重写该方法
+    @Override
+    public HttpRespMsg deleteById(Integer id) {
+        return null;
+    }
 }

+ 45 - 19
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/ProjectServiceImpl.java

@@ -1,16 +1,21 @@
 package com.hssx.cloudmodel.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import com.hssx.cloudmodel.entity.Project;
 import com.hssx.cloudmodel.entity.ProjectUser;
+import com.hssx.cloudmodel.entity.User;
 import com.hssx.cloudmodel.mapper.ProjectMapper;
 import com.hssx.cloudmodel.service.ProjectService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.hssx.cloudmodel.util.HttpRespMsg;
 import com.hssx.cloudmodel.util.ListUtil;
+import com.hssx.cloudmodel.util.PageUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.jws.soap.SOAPBinding;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.List;
@@ -32,28 +37,34 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
     ProjectUser projectUser;
 
     @Override
-    public HttpRespMsg addAndUpdateProject(Project project, Integer flag) {
+    public HttpRespMsg addAndUpdateProject(Project project, Integer flag, User user) {
         HttpRespMsg msg = new HttpRespMsg();
-        QueryWrapper<Project> qw = new QueryWrapper<>();
-        qw.orderByDesc("id").last("limit 1");
-        Project lastProject = projectMapper.selectOne(qw);
-        if (flag == 0) {
-            synchronized (this) {
-                int count = 1;
-                if (lastProject != null) {
-                    //YMXM201903220001
-                    String numStr = lastProject.getProjectNo().substring(13);
-                    int num = Integer.valueOf(numStr).intValue();
-                    count += num;
+        if(user != null){
+            QueryWrapper<Project> qw = new QueryWrapper<>();
+            qw.orderByDesc("id").last("limit 1");
+            Project lastProject = projectMapper.selectOne(qw);
+            if (flag == 0) {
+                synchronized (this) {
+                    int count = 1;
+                    if (lastProject != null) {
+                        //YMXM201903220001
+                        String numStr = lastProject.getProjectNo().substring(13);
+                        int num = Integer.valueOf(numStr).intValue();
+                        count += num;
+                    }
+                    long time = System.currentTimeMillis();
+                    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
+                    String seq = sdf.format(time) + String.format("%04d", count);
+                    project.setProjectNo("YMXM"+seq);
+                    project.setCreatorId(user.getId());
+                    project.setCreator(user.getUsername());
+                    projectMapper.insert(project);
                 }
-                long time = System.currentTimeMillis();
-                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
-                String seq = sdf.format(time) + String.format("%04d", count);
-                project.setProjectNo("YMXM"+seq);
-                projectMapper.insert(project);
+            }else if(flag == 1){
+                projectMapper.updateById(project);
             }
-        }else if(flag == 1){
-            projectMapper.updateById(project);
+        }else{
+            msg.setError("当前角色涉及权限问题,请重新登录");
         }
         return msg;
     }
@@ -77,4 +88,19 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         }
         return msg;
     }
+
+    @Override
+    public HttpRespMsg getList(String keyName,PageUtil page) {
+        HttpRespMsg msg = new HttpRespMsg();
+        QueryWrapper<Project> qw = new QueryWrapper<>();
+        qw.select("project_name", "creator","charger","indate");
+        if(keyName != null){
+            qw.like("project_name",keyName);
+        }
+        PageHelper.startPage(page.getPageNum(),page.getPageSize());
+        List<Project> projects = projectMapper.selectList(qw);
+        PageInfo<Project> pageInfos = new PageInfo<>(projects);
+        msg.data = pageInfos;
+        return msg;
+    }
 }

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

@@ -204,7 +204,7 @@ public class CodeGenerator {
         //若想要生成的实体类继承某个Controller,则可打开下面注释。写上需要继承的Controller的位置即可
 //        strategy.setSuperControllerClass("com.baomidou.ant.common.BaseController");
         //此处user是表名,多个英文逗号分割
-        strategy.setInclude("tb_project_user");
+        strategy.setInclude("tb_role");
 //        strategy.setExclude();//数据库表全生成
 //        strategy.setInclude(scanner("user").split(","));//表名,多个英文逗号分割
         strategy.setControllerMappingHyphenStyle(true);

+ 3 - 1
cloud-model/src/main/resources/mapper/ProjectMapper.xml

@@ -18,11 +18,13 @@
         <result column="customer_company" property="customerCompany" />
         <result column="customer_company_name" property="customerCompanyName" />
         <result column="indate" property="indate" />
+        <result column="charger_id" property="chargerId" />
+        <result column="charger" property="charger" />
     </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, customer_company, customer_company_name, indate
+        id, project_name, project_no, start_time, end_time, content, creator_id, creator, is_delete, owner_company, owner_company_name, customer_company, customer_company_name, indate, charger_id, charger
     </sql>
 
 </mapper>

+ 2 - 21
cloud-model/src/main/resources/mapper/RoleMapper.xml

@@ -11,31 +11,12 @@
         <result column="view_power" property="viewPower" />
         <result column="approval_power" property="approvalPower" />
         <result column="indate" property="indate" />
+        <result column="subordinate" property="subordinate" />
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, role_name, dowload_power, upload_power, view_power, approval_power, indate
+        id, role_name, dowload_power, upload_power, view_power, approval_power, indate, subordinate
     </sql>
-    <select id="getListByKeyName" resultMap="BaseResultMap">
-        select
-        <include refid="Base_Column_List"/>
-        from
-          tb_role
-        <where>
-        <if test="keyName != null and keyName != ''">
-            role_name like concat('%',#{keyName},'%')
-        </if>
-        </where>
-        Limit #{start},#{pageSize}
-    </select>
-    <select id="selectIdAndNamelist" resultMap="BaseResultMap">
-        select
-          id, role_name
-        from
-          tb_role
-    </select>
-
-
 
 </mapper>