huangxiao 1 vecka sedan
förälder
incheckning
c3b2bf9bf8

+ 6 - 6
src/main/java/net/mingsoft/tf/wx/ExhibitorAction.java

@@ -28,6 +28,7 @@ import java.time.format.DateTimeFormatter;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Optional;
+import java.util.stream.Collectors;
 
 @Tag(name = "微信-展商")
 @RequestMapping("/people")
@@ -60,12 +61,11 @@ public class ExhibitorAction extends BaseAction {
     @ResponseBody
     public ResultData invitationSummary() {
         Map<String, Object> map = new HashMap<>();
-        // 总人数
-        peopleExhibitorBiz.getDao().summary(PeopleUtil.getPeopleBean().getPeopleId());
-        // map.put("total", summary);
-        // map.put("register", summary);
-        // // TODO 已到场
-        // map.put("arrived", null);
+        Map<String, Long> m = peopleExhibitorBiz.getDao().summary(PeopleUtil.getPeopleBean().getPeopleId())
+                .stream()
+                .collect(Collectors.toMap(row -> row.get("type").toString(), row -> (Long) row.get("num")));
+        map.put("total", m.values().stream().mapToLong(a -> a).sum());
+        map.put("summary", m);
         return ResultData.build().success(map);
     }
 

+ 4 - 1
src/main/java/net/mingsoft/tf/wx/WxPeopleAction.java

@@ -70,6 +70,8 @@ public class WxPeopleAction extends BaseAction {
     private String appid;
     @Value("${wx.secret}")
     private String secret;
+    @Value("${wx.mock:false}")
+    private boolean mock;
 
     @Operation(summary = "微信-获得电话号码")
     @Parameters({
@@ -107,7 +109,8 @@ public class WxPeopleAction extends BaseAction {
                 .map(c -> "https://api.weixin.qq.com/sns/jscode2session?appid=" + appid + "&secret=" + secret + "&js_code=" + c + "&grant_type=authorization_code")
                 .map(HttpUtil::get)
                 .map(JSONObject::new)
-                .map(json -> json.getStr("openid"))
+                // 开发时,没有code,可以开启mock调试
+                .map(json -> mock ? code : json.getStr("openid"))
                 .filter(StringUtils::isNotBlank)
                 .map(openid -> {
                     Map<String, Object> map = new HashMap<>();