Yansen 11 maanden geleden
bovenliggende
commit
bcdf4753e2

+ 1
- 1
pom.xml Bestand weergeven

10
     </parent>
10
     </parent>
11
     <groupId>com.example</groupId>
11
     <groupId>com.example</groupId>
12
     <artifactId>civilizedCity</artifactId>
12
     <artifactId>civilizedCity</artifactId>
13
-    <version>0.0.21</version>
13
+    <version>0.0.23</version>
14
     <name>civilizedCity</name>
14
     <name>civilizedCity</name>
15
     <description>civilizedCity</description>
15
     <description>civilizedCity</description>
16
     <properties>
16
     <properties>

+ 14
- 14
src/main/java/com/example/civilizedcity/common/BaseController.java Bestand weergeven

43
         return user;
43
         return user;
44
     }
44
     }
45
 
45
 
46
-//    public TaPerson currentPerson() throws Exception {
47
-//
48
-//        String personId = request.getHeader("x-personId");
49
-//        if (StringUtils.isEmpty(personId)) {
50
-//            return null;
51
-//        }
52
-//
53
-//        TaPerson taPerson = taPersonService.getById(personId);
54
-//        if (taPerson == null || taPerson.getStatus() == Constants.STATUS_DELETE) {
55
-//            return null;
56
-//        }
57
-//
58
-//        return taPerson;
59
-//    }
46
+    public TaPerson currentPerson() throws Exception {
47
+
48
+        String personId = request.getHeader("x-personId");
49
+        if (StringUtils.isEmpty(personId)) {
50
+            return null;
51
+        }
52
+
53
+        TaPerson taPerson = taPersonService.getById(personId);
54
+        if (taPerson == null || taPerson.getStatus() == Constants.STATUS_DELETE) {
55
+            return null;
56
+        }
57
+
58
+        return taPerson;
59
+    }
60
 
60
 
61
     public String getPersonDuty() throws Exception {
61
     public String getPersonDuty() throws Exception {
62
         String duty = request.getHeader("x-duty");
62
         String duty = request.getHeader("x-duty");

+ 41
- 0
src/main/java/com/example/civilizedcity/controller/CommController.java Bestand weergeven

1
 package com.example.civilizedcity.controller;
1
 package com.example.civilizedcity.controller;
2
 
2
 
3
 
3
 
4
+import cn.hutool.core.codec.Base64;
5
+import cn.hutool.core.io.FileUtil;
4
 import com.example.civilizedcity.common.BaseController;
6
 import com.example.civilizedcity.common.BaseController;
5
 import com.example.civilizedcity.common.OSSUtils;
7
 import com.example.civilizedcity.common.OSSUtils;
6
 import com.example.civilizedcity.common.ResponseBean;
8
 import com.example.civilizedcity.common.ResponseBean;
71
         }});
73
         }});
72
     }
74
     }
73
 
75
 
76
+
77
+    /**
78
+     * 文件
79
+     * @param base64
80
+     * @return
81
+     */
82
+    @ApiOperation(value = "文件上传", notes = "文件上传")
83
+    @PostMapping("/{client}/file/base64")
84
+    public ResponseBean uploadImageBase64(@ApiParam("客户端") @PathVariable String client,
85
+                                    @ApiParam("文件") @RequestParam("base64") String base64,
86
+                                          @ApiParam("文件名称") @RequestParam("fileName") String fileName,
87
+                                    @ApiParam("文件类型") @RequestParam(value = "fileType", defaultValue = "image") String fileType) throws Exception {
88
+
89
+        String base64Str = base64;
90
+        // 去除Base64字符串的前缀(如果有)
91
+        if (base64Str.startsWith("data:")) {
92
+            base64Str = base64Str.substring(base64Str.indexOf("base64,") + 7);
93
+        }
94
+
95
+        // 解码Base64字符串并写入文件
96
+        byte[] decodedBytes = Base64.decode(base64Str);
97
+        //获取文件名
98
+        String fName = String.format("%s/%d-%s", getMonth(), System.currentTimeMillis(), fileName);
99
+
100
+        // 上传目录以日期分类
101
+        String upPath = getUploadPath();
102
+        File tmp = new File(String.format("%s/%s", upPath, getMonth()));
103
+        if (!tmp.exists()) {
104
+            tmp.mkdir();
105
+        }
106
+
107
+        FileUtil.writeBytes(decodedBytes, FileUtil.file(upPath + "/" + fName));
108
+        String url = String.format("%s/%s", uploadPrefix, fName);
109
+        return ResponseBean.success(new HashMap<String, Object>(){{
110
+            put("url", url);
111
+            put("fileType", fileType);
112
+        }});
113
+    }
114
+
74
     private String getUploadPath() {
115
     private String getUploadPath() {
75
         File tmp = new File(uploadPath);
116
         File tmp = new File(uploadPath);
76
         if (!tmp.exists()) {
117
         if (!tmp.exists()) {

+ 52
- 5
src/main/java/com/example/civilizedcity/controller/WxMaController.java Bestand weergeven

111
         return ResponseBean.success(res);
111
         return ResponseBean.success(res);
112
     }
112
     }
113
 
113
 
114
+
115
+
116
+    /**
117
+     * 小程序
118
+     *
119
+     * @param taPerson
120
+     * @return
121
+     * @throws Exception
122
+     */
123
+    @PostMapping("/signup")
124
+    @ApiOperation(value = "用户注册", notes = "用户注册", httpMethod = "POST", response = ResponseBean.class)
125
+    public ResponseBean signup(@ApiParam("登录参数") @RequestBody TaPerson taPerson) throws Exception {
126
+        if (StringUtils.isEmpty(taPerson.getOpenid())) {
127
+            return ResponseBean.error("注册用户失败, 请退出重试");
128
+        }
129
+
130
+        TaPerson origin = taPersonService.getByOpenId(taPerson.getOpenid());
131
+        if (null == origin) {
132
+            taPerson.setStatus(Constants.STATUS_NORMAL);
133
+            taPerson.setCreateDate(LocalDateTime.now());
134
+            taPersonService.save(taPerson);
135
+
136
+            return ResponseBean.success(taPerson);
137
+        } else {
138
+            taPerson.setPersonId(origin.getPersonId());
139
+            taPersonService.updateById(taPerson);
140
+        }
141
+
142
+        // 获取最新的数据
143
+        taPerson = taPersonService.getById(taPerson.getPersonId());
144
+
145
+        Map<String, Object> res = sysLoginService.loginByPerson(taPerson);
146
+        return ResponseBean.success(res);
147
+    }
148
+
114
     /**
149
     /**
115
      * 系统人员登录
150
      * 系统人员登录
116
      *
151
      *
130
         List<String> dutyList = sysUserDutyService.getListByUser(user.getUserId());
165
         List<String> dutyList = sysUserDutyService.getListByUser(user.getUserId());
131
         user.setDutyList(dutyList);
166
         user.setDutyList(dutyList);
132
 
167
 
168
+        TaPerson taPerson = null;
169
+        if (StringUtils.isNotEmpty(user.getPhone())) {
170
+            taPerson = taPersonService.getExistBy("phone", user.getPhone(), false, true);
171
+        }
172
+
133
         // 登录新用户
173
         // 登录新用户
134
         StpUtil.login(user.getUserId(), "miniapp");
174
         StpUtil.login(user.getUserId(), "miniapp");
135
 
175
 
136
         Map<String, Object> res = new HashMap<>();
176
         Map<String, Object> res = new HashMap<>();
137
         res.put("user", user);
177
         res.put("user", user);
178
+        res.put("person", taPerson);
138
         res.put("token", StpUtil.getTokenValue());
179
         res.put("token", StpUtil.getTokenValue());
139
 
180
 
140
         return ResponseBean.success(res);
181
         return ResponseBean.success(res);
153
         List<String> dutyList = sysUserDutyService.getListByUser(user.getUserId());
194
         List<String> dutyList = sysUserDutyService.getListByUser(user.getUserId());
154
         user.setDutyList(dutyList);
195
         user.setDutyList(dutyList);
155
 
196
 
197
+        TaPerson taPerson = null;
198
+        if (StringUtils.isNotEmpty(user.getPhone())) {
199
+            taPerson = taPersonService.getExistBy("phone", user.getPhone(), false, true);
200
+        }
201
+
156
         // 登录新用户
202
         // 登录新用户
157
         StpUtil.login(user.getUserId(), "miniapp");
203
         StpUtil.login(user.getUserId(), "miniapp");
158
 
204
 
159
         Map<String, Object> res = new HashMap<>();
205
         Map<String, Object> res = new HashMap<>();
160
         res.put("user", user);
206
         res.put("user", user);
207
+        res.put("person", taPerson);
161
         res.put("token", StpUtil.getTokenValue());
208
         res.put("token", StpUtil.getTokenValue());
162
 
209
 
163
         return ResponseBean.success(res);
210
         return ResponseBean.success(res);
191
         // 解密
238
         // 解密
192
         WxMaPhoneNumberInfo phoneNoInfo = wxMaUitl.getPhoneNoInfo(code);
239
         WxMaPhoneNumberInfo phoneNoInfo = wxMaUitl.getPhoneNoInfo(code);
193
 
240
 
194
-        SysUser sysUser = currentUser();
195
-        if (null == sysUser) {
241
+        TaPerson taPerson = currentPerson();
242
+        if (null == taPerson) {
196
             throw new Exception("校验当前人员失败, 请重试");
243
             throw new Exception("校验当前人员失败, 请重试");
197
         }
244
         }
198
 
245
 
199
-        sysUser.setPhone(phoneNoInfo.getPhoneNumber());
200
-        sysUserService.updateById(sysUser);
246
+        taPerson.setPhone(phoneNoInfo.getPhoneNumber());
247
+        taPersonService.updateById(taPerson);
201
 
248
 
202
-        Map<String, Object> res = sysLoginService.loginByPerson(sysUser);
249
+        Map<String, Object> res = sysLoginService.loginByPerson(taPerson);
203
 
250
 
204
         return ResponseBean.success(res);
251
         return ResponseBean.success(res);
205
     }
252
     }

+ 1
- 1
src/main/java/com/example/civilizedcity/service/SysLoginService.java Bestand weergeven

17
 
17
 
18
      boolean changePassword(SysUser user, WxChangePwd wxChangePwd);
18
      boolean changePassword(SysUser user, WxChangePwd wxChangePwd);
19
 
19
 
20
-    Map<String, Object> loginByPerson(SysUser sysUser);
20
+    Map<String, Object> loginByPerson(TaPerson taPerson);
21
 
21
 
22
     void removeByUser(String userId);
22
     void removeByUser(String userId);
23
 }
23
 }

+ 5
- 5
src/main/java/com/example/civilizedcity/service/impl/SysLoginServiceImpl.java Bestand weergeven

46
     }
46
     }
47
 
47
 
48
     @Override
48
     @Override
49
-    public Map<String, Object> loginByPerson(SysUser sysUser) {
49
+    public Map<String, Object> loginByPerson(TaPerson taPerson) {
50
         Map<String, Object> res = new HashMap<>();
50
         Map<String, Object> res = new HashMap<>();
51
         SysUser user = null;
51
         SysUser user = null;
52
 
52
 
53
-                List<SysUser> sysUserList = sysUserMapper.getListByPhone(sysUser.getPhone());
53
+                List<SysUser> sysUserList = sysUserMapper.getListByPhone(taPerson.getPhone());
54
         if (null == sysUserList || sysUserList.size() < 1) {
54
         if (null == sysUserList || sysUserList.size() < 1) {
55
             user = new SysUser();
55
             user = new SysUser();
56
-            user.setPhone(sysUser.getPhone());
56
+            user.setPhone(taPerson.getPhone());
57
             user.setIsUser(false);
57
             user.setIsUser(false);
58
-            user.setOrgId(sysUser.getUserId()); // 机构ID 使用用户ID , 目前没有使用到
58
+            user.setOrgId(taPerson.getPersonId()); // 机构ID 使用用户ID , 目前没有使用到
59
             user.setStatus(Constants.STATUS_NORMAL);
59
             user.setStatus(Constants.STATUS_NORMAL);
60
             user.setCreateDate(LocalDateTime.now());
60
             user.setCreateDate(LocalDateTime.now());
61
             sysUserMapper.insert(user);
61
             sysUserMapper.insert(user);
80
         // 登录新用户
80
         // 登录新用户
81
         StpUtil.login(user.getUserId(), "miniapp");
81
         StpUtil.login(user.getUserId(), "miniapp");
82
         res.put("user", user);
82
         res.put("user", user);
83
-        res.put("user", sysUser);
83
+        res.put("person", taPerson);
84
         res.put("token", StpUtil.getTokenValue());
84
         res.put("token", StpUtil.getTokenValue());
85
 
85
 
86
         return res;
86
         return res;

+ 1
- 0
src/main/resources/application-prod.yml Bestand weergeven

37
       - "/static/**"
37
       - "/static/**"
38
       - "/**/login"
38
       - "/**/login"
39
       - "/**/signin"
39
       - "/**/signin"
40
+      - "/**/signup"
40
       - "/ma/captcha"
41
       - "/ma/captcha"
41
       - "/ma/change-password"
42
       - "/ma/change-password"
42
       - "/ma/auth-phone"
43
       - "/ma/auth-phone"

+ 2
- 1
src/main/resources/application.yml Bestand weergeven

21
     httpUrl: http://api.smsbao.com/sms
21
     httpUrl: http://api.smsbao.com/sms
22
     userName: pzhgd
22
     userName: pzhgd
23
     password: PZHdt@147293ac
23
     password: PZHdt@147293ac
24
-    template: 【文明创城办】%s,您有一条工作待办请前往{XXXAPP}及时处理
24
+    template: 【文明创城办】%s,您有一条工作待办请及时处理
25
 
25
 
26
 ###
26
 ###
27
 sms:
27
 sms:
39
       - "/static/**"
39
       - "/static/**"
40
       - "/**/login"
40
       - "/**/login"
41
       - "/**/signin"
41
       - "/**/signin"
42
+      - "/**/signup"
42
       - "/ma/captcha"
43
       - "/ma/captcha"
43
       - "/ma/change-password"
44
       - "/ma/change-password"
44
       - "/ma/auth-phone"
45
       - "/ma/auth-phone"