Przeglądaj źródła

用户创建的修改

5 lat temu
rodzic
commit
d66bd8cefd

+ 82 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/constant/Constant.java

@@ -1,5 +1,21 @@
 package com.hssx.cloudmodel.constant;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.hssx.cloudmodel.util.HttpKit;
+import com.hssx.cloudmodel.util.HttpRespMsg;
+import com.hssx.cloudmodel.util.WechatTemplateMessage;
+import org.apache.commons.lang3.StringEscapeUtils;
+
+import java.io.IOException;
+import java.security.KeyManagementException;
+import java.security.NoSuchAlgorithmException;
+import java.security.NoSuchProviderException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
 /**
  * Author: 吴涛涛
  * Date : 2019 - 07 - 24 16:00
@@ -22,4 +38,70 @@ public class Constant {
     public static final Integer APPROVAL_AUTHORITY = 3;//审批权限
     public static final String WARNING_NOTICE_TEMPLATE_ID = "-EpBbqgMN2cCBf6pUSlFXGNlstkeCidVEejTOhrGcy4";//告警通知模板id
     public static final String MAINTAIN_NOTICE_TEMPLATE_ID = "VcU9E2f3Nn4uR6S1z57VBaLeBAhEO4vfivo3Tug_BKE";//保养通知模板id
+    public static final String WECHAT_SECRET = "473ee2fab33e6d8a885800403d777581";//secret
+    public static final String WECHAT_APPID = "wx42c0f9d19a4756a7";//appId
+//    public static void main(String[] args){
+//        System.out.println("222222");
+//        String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="
+//                + "wx42c0f9d19a4756a7" + "&secret=" + "473ee2fab33e6d8a885800403d777581";
+//        String resp;
+//        String resp1;
+//        try {
+//            resp1 = HttpKit.get(url, true);
+//            resp1 = StringEscapeUtils.unescapeJava(resp1);
+//            System.out.println("222222");
+//            JSONObject json = (JSONObject) JSON.parse(resp1);
+//            System.out.println("json"+json);
+//            // 获取值赋值给全局变量
+//            if (!json.containsKey("errcode")) {
+//                System.out.println("222222");
+//                String newAccessToken = json.getString("access_token");
+//                String url1 = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="
+//                        + newAccessToken;
+//                WechatTemplateMessage wechat = new WechatTemplateMessage();
+//                wechat.setTemplate_id("VcU9E2f3Nn4uR6S1z57VBaLeBAhEO4vfivo3Tug_BKE");
+//                wechat.setTouser("o9g4t1rTLsDu62HrreOoMWPT4ldA");
+//                wechat.setAppid("wx42c0f9d19a4756a7");
+//                Map<String, Map<String, String>> data = new HashMap<>();
+//                Map<String, String> first = new HashMap<>();
+//                Map<String, String> value1 = new HashMap<>();
+//                Map<String, String> value2 = new HashMap<>();
+//                Map<String, String> value3 = new HashMap<>();
+//                Map<String, String> value4 = new HashMap<>();
+//                Map<String, String> remark = new HashMap<>();
+//                // 推送信息主体
+//                first.put("value", "你好,你有新的保养通知");//firstData推送标题
+//                data.put("first", first);
+//                value1.put("value", "1111");
+//                SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
+//                data.put("keyword1", value1);
+//                value2.put("value", "南京");
+//                data.put("keyword2", value2);
+//                value3.put("value", sdf.format(new Date()));
+//                data.put("keyword3", value3);
+//                value4.put("value", "给水泵内燃力");
+//                data.put("keyword4", value4);
+//                remark.put("value", "给水泵内燃力不足");
+//                data.put("remark", remark);
+//                wechat.setData(data);
+//                String jsonString = JSONObject.toJSONString(wechat);
+//                System.out.println("jsonString"+jsonString);
+//                resp = HttpKit.post(url1, jsonString);
+//                System.out.println("222222");
+//                System.out.println("resp0"+resp);
+//                resp = StringEscapeUtils.unescapeJava(resp);
+//                System.out.println("resp"+resp);
+//                json = (JSONObject) JSON.parse(resp);
+//                System.out.println("json"+json);
+//            }
+//        } catch (NoSuchAlgorithmException e) {
+//            e.printStackTrace();
+//        } catch (NoSuchProviderException e) {
+//            e.printStackTrace();
+//        } catch (IOException e) {
+//            e.printStackTrace();
+//        } catch (KeyManagementException e) {
+//            e.printStackTrace();
+//        }
+//    }
 }

+ 1 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/ProjectFileServiceImpl.java

@@ -104,7 +104,7 @@ public class ProjectFileServiceImpl extends ServiceImpl<ProjectFileMapper, Proje
         User user = userMapper.selectOne(new QueryWrapper<User>().eq("head_imgurl", token));
         //添加上传记录
         ProjectOperationDynamics dynamics = new ProjectOperationDynamics();
-        dynamics.setContent(Constant.UPLOAD);
+        dynamics.setContent(Constant.DOWNLOAD);
         ProjectFile file = projectFileMapper.selectById(projectFile.getId());
         dynamics.setFileName(file.getFileName());
         dynamics.setOperatorId(user.getId());

+ 129 - 45
cloud-model/src/main/java/com/hssx/cloudmodel/service/impl/UserServiceImpl.java

@@ -110,56 +110,140 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
         //获取该账号的创建者
         User parentUser = userMapper.selectById(user.getParentId());
         HttpRespMsg msg = new HttpRespMsg();
-//        if(Constant.SYS_PARENT_ID == parentUser.getParentId()){
-//            //此时是创建admind,当前创建人是超级管理员
-//        }else if(){
-//
-//        }
-        if (flag == 0) {
-            //添加角色
-            QueryWrapper<User> qw = new QueryWrapper<>();
-            qw.eq("account", user.getAccount());
-            int count = userMapper.selectCount(qw);
-            if (count > 0) {
-                User existingUser = userMapper.selectOne(qw);
-                //此时用户已经有了,则建立一条合作公司的关系
-                UserCompany userCompany = new UserCompany();
-                userCompany.setUserId(existingUser.getId());
-                userCompany.setBelongCompanyId(existingUser.getCompanyId());
-                userCompany.setCooperationCompanyId(parentUser.getCompanyId());
-                QueryWrapper<UserCompany> qWra = new QueryWrapper<>(userCompany);
-                int userCompanyCount = userCompanyMapper.selectCount(qWra);
-                if (count == 0) {
-                    userCompanyMapper.insert(userCompany);
+        if(Constant.SYS_PARENT_ID == parentUser.getParentId()) {
+            //此时是创建admind,当前创建人是超级管理员
+            int count = userMapper.selectCount(new QueryWrapper<User>().eq("company_id", user.getCompanyId()).eq("parent_id", parentUser.getId()));
+            if (flag == 0) {
+                if(count>0){
+                    //所选公司下的admin已存在
+                    msg.setError("该公司下的管理员已存在");
+                    return msg;
                 }
-            } else {
-                //创建账号默认密码"000000"
-                user.setPassword(MD5Util.getPassword(Constant.DEFAULT_PWD));
-                user.setHeadImgurl(UUID.randomUUID().toString().replaceAll("-", ""));
-                //获取角色所属的团体
-                Company company = companyMapper.selectById(user.getCompanyId());
-                if (Constant.ASSETS_COMPANY == company.getCompanyType()) {
-                    user.setSubordinateType(Constant.ASSETS_COMPANY);
-                    user.setTeamName("资产方");
-                } else if (Constant.PRODUCER_COMPANY == company.getCompanyType()) {
-                    user.setSubordinateType(Constant.PRODUCER_COMPANY);
-                    user.setTeamName("生产方");
+                    //添加用户
+                    QueryWrapper<User> qw = new QueryWrapper<>();
+                    qw.eq("account", user.getAccount());
+                    count = userMapper.selectCount(qw);
+                    if (count > 0) {
+                        User existingUser = userMapper.selectOne(qw);
+                        msg.setError("当前账号已存在");
+                        return msg;
+                    } else {
+                        //创建账号默认密码"000000"
+                        user.setPassword(MD5Util.getPassword(Constant.DEFAULT_PWD));
+                        user.setHeadImgurl(UUID.randomUUID().toString().replaceAll("-", ""));
+                        //获取角色所属的团体
+                        Company company = companyMapper.selectById(user.getCompanyId());
+                        if (Constant.ASSETS_COMPANY == company.getCompanyType()) {
+                            user.setSubordinateType(Constant.ASSETS_COMPANY);
+                            user.setTeamName("资产方");
+                        } else if (Constant.PRODUCER_COMPANY == company.getCompanyType()) {
+                            user.setSubordinateType(Constant.PRODUCER_COMPANY);
+                            user.setTeamName("生产方");
+                        }
+                        userMapper.insert(user);
+                    }
+                } else if (flag == 1) {
+                    //更新角色信息
+                    userMapper.updateById(user);
+                }
+        }else if(Constant.SYS_ID == parentUser.getParentId()){
+            //admin创建用户
+            if (flag == 0) {
+                //添加用户
+                QueryWrapper<User> qw = new QueryWrapper<>();
+                qw.eq("account", user.getAccount());
+                int count = userMapper.selectCount(qw);
+                if (count > 0) {
+                    User existingUser = userMapper.selectOne(qw);
+                    //此时用户已经有了,则建立一条合作公司的关系
+                    UserCompany userCompany = new UserCompany();
+                    userCompany.setUserId(existingUser.getId());
+                    userCompany.setBelongCompanyId(existingUser.getCompanyId());
+                    userCompany.setCooperationCompanyId(parentUser.getCompanyId());
+                    QueryWrapper<UserCompany> qWra = new QueryWrapper<>(userCompany);
+                    int userCompanyCount = userCompanyMapper.selectCount(qWra);
+                    if (userCompanyCount == 0) {
+                        userCompanyMapper.insert(userCompany);
+                    }
+                } else {
+                    //创建账号默认密码"000000"
+                    user.setPassword(MD5Util.getPassword(Constant.DEFAULT_PWD));
+                    user.setHeadImgurl(UUID.randomUUID().toString().replaceAll("-", ""));
+                    //获取角色所属的团体
+                    Company company = companyMapper.selectById(user.getCompanyId());
+                    if (Constant.ASSETS_COMPANY == company.getCompanyType()) {
+                        user.setSubordinateType(Constant.ASSETS_COMPANY);
+                        user.setTeamName("资产方");
+                    } else if (Constant.PRODUCER_COMPANY == company.getCompanyType()) {
+                        user.setSubordinateType(Constant.PRODUCER_COMPANY);
+                        user.setTeamName("生产方");
+                    }
+                    userMapper.insert(user);
+                    UserCompany userCompany = new UserCompany();
+                    userCompany.setUserId(user.getId());
+                    userCompany.setBelongCompanyId(user.getCompanyId());
+                    userCompany.setCooperationCompanyId(parentUser.getCompanyId());
+                    QueryWrapper<UserCompany> qWra = new QueryWrapper<>(userCompany);
+                    int userCompanyCount = userCompanyMapper.selectCount(qWra);
+                    if (userCompanyCount == 0) {
+                        userCompanyMapper.insert(userCompany);
+                    }
                 }
-                userMapper.insert(user);
-                UserCompany userCompany = new UserCompany();
-                userCompany.setUserId(user.getId());
-                userCompany.setBelongCompanyId(user.getCompanyId());
-                userCompany.setCooperationCompanyId(parentUser.getCompanyId());
-                QueryWrapper<UserCompany> qWra = new QueryWrapper<>(userCompany);
-                int userCompanyCount = userCompanyMapper.selectCount(qWra);
-                if (count == 0) {
-                    userCompanyMapper.insert(userCompany);
+            } else if (flag == 1) {
+                //更新角色信息
+                userMapper.updateById(user);
+            }
+        }else {
+            //此时是项目经理创建人员
+            //查询创建该项目经理的人
+            User managerParent = userMapper.selectOne(new QueryWrapper<User>().eq("id",parentUser.getParentId()));
+            if (flag == 0) {
+                //添加用户
+                QueryWrapper<User> qw = new QueryWrapper<>();
+                qw.eq("account", user.getAccount());
+                int count = userMapper.selectCount(qw);
+                if (count > 0) {
+                    User existingUser = userMapper.selectOne(qw);
+                    //此时用户已经有了,则建立一条合作公司的关系
+                    UserCompany userCompany = new UserCompany();
+                    userCompany.setUserId(existingUser.getId());
+                    userCompany.setBelongCompanyId(existingUser.getCompanyId());
+                    userCompany.setCooperationCompanyId(managerParent.getCompanyId());
+                    QueryWrapper<UserCompany> qWra = new QueryWrapper<>(userCompany);
+                    int userCompanyCount = userCompanyMapper.selectCount(qWra);
+                    if (userCompanyCount == 0) {
+                        userCompanyMapper.insert(userCompany);
+                    }
+                } else {
+                    //创建账号默认密码"000000"
+                    user.setPassword(MD5Util.getPassword(Constant.DEFAULT_PWD));
+                    user.setHeadImgurl(UUID.randomUUID().toString().replaceAll("-", ""));
+                    //获取角色所属的团体
+                    Company company = companyMapper.selectById(user.getCompanyId());
+                    if (Constant.ASSETS_COMPANY == company.getCompanyType()) {
+                        user.setSubordinateType(Constant.ASSETS_COMPANY);
+                        user.setTeamName("资产方");
+                    } else if (Constant.PRODUCER_COMPANY == company.getCompanyType()) {
+                        user.setSubordinateType(Constant.PRODUCER_COMPANY);
+                        user.setTeamName("生产方");
+                    }
+                    userMapper.insert(user);
+                    UserCompany userCompany = new UserCompany();
+                    userCompany.setUserId(user.getId());
+                    userCompany.setBelongCompanyId(user.getCompanyId());
+                    userCompany.setCooperationCompanyId(managerParent.getCompanyId());
+                    QueryWrapper<UserCompany> qWra = new QueryWrapper<>(userCompany);
+                    int userCompanyCount = userCompanyMapper.selectCount(qWra);
+                    if (userCompanyCount == 0) {
+                        userCompanyMapper.insert(userCompany);
+                    }
                 }
+            } else if (flag == 1) {
+                //更新角色信息
+                userMapper.updateById(user);
             }
-        } else if (flag == 1) {
-            //更新角色信息
-            userMapper.updateById(user);
         }
+
         return msg;
     }
 

+ 5 - 9
cloud-model/src/test/java/com/hssx/cloudmodel/CloudModelApplicationTests.java

@@ -1,8 +1,13 @@
 package com.hssx.cloudmodel;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.hssx.cloudmodel.entity.User;
 import com.hssx.cloudmodel.mapper.UserMapper;
+import com.hssx.cloudmodel.util.HttpKit;
+import com.hssx.cloudmodel.util.HttpRespMsg;
+import org.apache.commons.lang3.StringEscapeUtils;
+import org.json.JSONObject;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -21,15 +26,6 @@ public class CloudModelApplicationTests {
     UserMapper userMapper;
     @Test
     public void contextLoads() {
-//        User user = new User();
-//        user.setAccount("123456789");
-//        userMapper.insert(user);
-//        System.out.println(user);
-        //mybatis-plus只查询特定字段的测试
-//        QueryWrapper<Role> queryWrapper = new QueryWrapper<>();
-//        queryWrapper.select("id", "role_name");
-//        List<Role> list = roleService.list(queryWrapper);
-//        System.out.println(list);
     }