From bc91619c854cc2dbb01b20d0c47d76c4881e9ee8 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期二, 20 五月 2025 23:52:21 +0800
Subject: [PATCH] Merge remote-tracking branch '喜望/dev-2.0.1' into dev-2.0.1

---
 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java |  373 +++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 321 insertions(+), 52 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java
index 1d7edde..c448c25 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java
@@ -1,6 +1,7 @@
 package com.panzhihua.sangeshenbian.api;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.panzhihua.common.controller.BaseController;
 import com.panzhihua.common.interfaces.OperLog;
@@ -8,18 +9,18 @@
 import com.panzhihua.common.model.vos.R;
 import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo;
 import com.panzhihua.common.service.auth.TokenService;
-import com.panzhihua.sangeshenbian.model.entity.SystemMenu;
-import com.panzhihua.sangeshenbian.model.entity.SystemRoleMenu;
-import com.panzhihua.sangeshenbian.model.entity.SystemUser;
-import com.panzhihua.sangeshenbian.service.ISystemMenuService;
-import com.panzhihua.sangeshenbian.service.ISystemRoleMenuService;
-import com.panzhihua.sangeshenbian.service.ISystemUserService;
-import com.panzhihua.sangeshenbian.warpper.LoginVo;
-import com.panzhihua.sangeshenbian.warpper.SystemUserList;
-import com.panzhihua.sangeshenbian.warpper.SystemUserListVo;
-import com.panzhihua.sangeshenbian.warpper.TokenVo;
+import com.panzhihua.sangeshenbian.annotation.SysLog;
+import com.panzhihua.sangeshenbian.model.entity.*;
+import com.panzhihua.sangeshenbian.model.vo.RegionVO;
+import com.panzhihua.sangeshenbian.service.*;
+import com.panzhihua.sangeshenbian.utils.SignatureUtil;
+import com.panzhihua.sangeshenbian.warpper.*;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.util.ObjectUtils;
@@ -27,9 +28,7 @@
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 
@@ -38,34 +37,48 @@
  * @Date 2025/2/18 22:30
  */
 @Api
+@Slf4j
 @RestController
 @RequestMapping("/systemUser")
 public class SystemUserController extends BaseController {
-	
+
 	@Resource
 	private ISystemUserService systemUserService;
-	
+
 	@Resource
 	private RedisTemplate redisTemplate;
-	
+
 	@Resource
 	private TokenService tokenService;
-	
+
 	private final Integer max_err = 5;
-	
+
 	@Resource
 	private ISystemRoleMenuService systemRoleMenuService;
-	
+
 	@Resource
 	private ISystemMenuService systemMenuService;
-	
-	
-	
-	
-	
+
+	@Resource
+	private IBcRegionService bcRegionService;
+	@Resource
+	private IComStreetService comStreetService;
+	@Resource
+	private IComActService comActService;
+
+	@Resource
+	private ISystemLogService systemLogService;
+
+	@Resource
+	private ISystemUserLevelService systemUserLevelService;
+
+
+
+
+
 	@PostMapping("/login")
 	@ApiOperation(value = "登录", tags = {"三个身边后台-登录"})
-	@OperLog(operModul = "三个身边后台",operType = 0,businessType = "登录")
+	@SysLog(operatorCategory = "登录",operId = 1)
 	public R<TokenVo> login(@RequestBody LoginVo vo){
 		String key = "login:" + vo.getPhone();
 		Integer size = (Integer) redisTemplate.opsForValue().get(key);
@@ -96,19 +109,80 @@
 		LoginReturnVO loginReturnVO = reult.getData();
 		TokenVo tokenVo = new TokenVo();
 		BeanUtils.copyProperties(loginReturnVO, tokenVo);
+		tokenVo.setUserId(Long.valueOf(systemUser.getId()));
+
 		List<SystemRoleMenu> list = systemRoleMenuService.list(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, systemUser.getSystemRoleId()));
 		List<Integer> collect = list.stream().map(SystemRoleMenu::getSystemMenuId).collect(Collectors.toList());
 		Set<String> collect1 = new HashSet<>();
 		if(collect.size() > 0){
-			List<SystemMenu> systemMenus = systemMenuService.listByIds(collect);
+			LambdaQueryWrapper<SystemMenu> queryWrapper = new LambdaQueryWrapper<SystemMenu>().in(SystemMenu::getId, collect);
+			switch (systemUser.getAccountLevel()){
+				case 2:
+					queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
+							"/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
+							"/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
+							"/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
+							"/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
+							"/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
+					break;
+				case 3:
+					queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
+							"/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
+							"/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
+							"/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
+							"/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
+							"/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
+					break;
+				case 4:
+					queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
+							"/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
+							"/work_order_transaction_management/work_order_item_configuration", "/work_order_transaction_management/work_order_item_configuration/save",
+							"/work_order_transaction_management/problem_type_management", "/work_order_transaction_management/problem_type_management/add",
+							"/work_order_transaction_management/problem_type_management/edit", "/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
+							"/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
+					break;
+				case 5:
+					queryWrapper.notIn(SystemMenu::getUrl, Arrays.asList("/system_setting/position_management", "/system_setting/position_management/add", "/system_setting/position_management/del",
+							"/system_setting/role_management", "/system_setting/role_management/add", "/system_setting/role_management/edit", "/system_setting/role_management/del",
+							"/system_setting/people_management", "/system_setting/people_management/add", "/system_setting/people_management/edit", "/system_setting/people_management/del",
+							"/system_setting/people_management/freeze", "/system_setting/unit_management", "/system_setting/people_management/detail", "/system_setting/unit_management/add",
+							"/system_setting/unit_management/edit", "/system_setting/unit_management/del", "/work_order_transaction_management/work_order_item_configuration",
+							"/work_order_transaction_management/work_order_item_configuration/save", "/work_order_transaction_management/problem_type_management",
+							"/work_order_transaction_management/problem_type_management/add", "/work_order_transaction_management/problem_type_management/edit",
+							"/work_order_transaction_management/problem_type_management/del", "/work_order_transaction_management/banner_management",
+							"/work_order_transaction_management/banner_management/add", "/work_order_transaction_management/banner_management/edit", "/work_order_transaction_management/banner_management/del"));
+					break;
+			}
+			List<SystemMenu> systemMenus = systemMenuService.list(queryWrapper);
 			collect1 = systemMenus.stream().map(SystemMenu::getUrl).collect(Collectors.toSet());
 		}
 		tokenVo.setMenu(collect1);
 		tokenVo.setName(systemUser.getName());
+		tokenVo.setAccountLevel(systemUser.getAccountLevel());
+		switch (systemUser.getAccountLevel()){
+			case 1:
+				tokenVo.setCityCode("510400");
+				break;
+			case 2:
+				tokenVo.setCityCode("510400");
+				tokenVo.setDistrictsCode(systemUser.getDistrictsCode());
+				break;
+			case 3:
+				tokenVo.setCityCode("510400");
+				tokenVo.setDistrictsCode(systemUser.getDistrictsCode());
+				tokenVo.setStreetId(systemUser.getStreetId());
+				break;
+			case 4:
+				tokenVo.setCityCode("510400");
+				tokenVo.setDistrictsCode(systemUser.getDistrictsCode());
+				tokenVo.setStreetId(systemUser.getStreetId());
+				tokenVo.setCommunityId(systemUser.getCommunityId().toString());
+				break;
+		}
 		return R.ok(tokenVo);
 	}
-	
-	
+
+
 	@PostMapping("logout")
 	@ApiOperation(value = "退出登录", tags = {"三个身边后台-登录"})
 	@OperLog(operModul = "三个身边后台",operType = 0,businessType = "退出登录")
@@ -119,26 +193,36 @@
 		}
 		return tokenService.logout(token);
 	}
-	
-	
+
+
 	@GetMapping("/list")
 	@ApiOperation(value = "获取列表数据", tags = {"三个身边管理后台-人员管理"})
 	@OperLog(operModul = "三个身边后台",operType = 0,businessType = "获取人员管理列表数据")
 	public R<IPage<SystemUserListVo>> list(SystemUserList query){
 		Integer id = this.getLoginUserInfoSanGeShenBian().getId();
 		SystemUser user = systemUserService.getById(id);
-		IPage<SystemUserListVo> list = systemUserService.list(user.getAccountLevel(), query);
+		IPage<SystemUserListVo> list = systemUserService.list(user, query);
 		return R.ok(list);
 	}
-	
-	
-	
+
+
+
 	@PostMapping("/add")
 	@ApiOperation(value = "添加人员", tags = {"三个身边管理后台-人员管理"})
-	@OperLog(operModul = "三个身边后台",operType = 1,businessType = "添加人员")
+	@SysLog(operatorCategory = "添加账号",operId = 4)
 	public R add(@RequestBody SystemUser systemUser){
 		Integer id = this.getLoginUserInfoSanGeShenBian().getId();
 		SystemUser user = systemUserService.getById(id);
+		List<SystemUserLevel> systemUserLevels = systemUser.getSystemUserLevels();
+		if(systemUserLevels==null || systemUserLevels.isEmpty()){
+			return R.fail("请选择账号层级");
+		}
+		// 获取最高层级的用于原来的判断
+		systemUserLevels.sort(Comparator.comparing(SystemUserLevel::getLevel));
+		Integer level = systemUserLevels.get(0).getLevel();
+		user.setAccountLevel(level);
+
+
 		if(2 == user.getAccountLevel() && 1 == systemUser.getAccountLevel()){
 			return R.fail("不能添加市级账号");
 		}
@@ -152,52 +236,115 @@
 		if(0 < count){
 			return R.fail("手机号重复。");
 		}
+
+		String districtsCode = systemUser.getDistrictsCode();
+		if (!StringUtils.isEmpty(districtsCode)){
+			BcRegion bcRegion = bcRegionService.getOne(new LambdaQueryWrapper<BcRegion>().eq(BcRegion::getRegionCode, districtsCode));
+			systemUser.setDistricts(bcRegion.getRegionName());
+		}
+
+		String streetId = systemUser.getStreetId();
+		if (!StringUtils.isEmpty(streetId)){
+			ComStreet comStreet = comStreetService.getById(streetId);
+			systemUser.setStreet(comStreet.getName());
+		}
+		Long communityId = systemUser.getCommunityId();
+		if (communityId != null){
+			ComAct act = comActService.getById(communityId);
+			systemUser.setCommunity(act.getName());
+		}
+
 		systemUser.setStatus(1);
 		systemUser.setCreateTime(LocalDateTime.now());
+		// 2.0.1 默认管理员
+		systemUser.setIsAdmin(1);
 		systemUserService.save(systemUser);
+
+		// 2.0.1添加账号层级
+		systemUserLevels.forEach(e->{
+			e.setSystemUserId(systemUser.getId());
+			e.setStatus(1);
+		});
+		systemUserLevelService.saveBatch(systemUserLevels);
 		return R.ok();
 	}
-	
-	
+
+
 	@PostMapping("/edit")
 	@ApiOperation(value = "编辑人员", tags = {"三个身边后台-人员管理"})
-	@OperLog(operModul = "三个身边后台",operType = 2,businessType = "编辑人员")
+	@SysLog(operatorCategory = "编辑账号",operId = 4)
 	public R edit(@RequestBody SystemUser systemUser){
+		List<SystemUserLevel> systemUserLevels = systemUser.getSystemUserLevels();
+		if(systemUserLevels==null || systemUserLevels.isEmpty()){
+			return R.fail("请选择账号层级");
+		}
 		long count = systemUserService.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getPhone, systemUser.getPhone())
 				.ne(SystemUser::getStatus, 3).ne(SystemUser::getId, systemUser.getId()));
 		if(0 < count){
 			return R.fail("手机号重复。");
 		}
+
+		String districtsCode = systemUser.getDistrictsCode();
+		if (!StringUtils.isEmpty(districtsCode)){
+			BcRegion bcRegion = bcRegionService.getOne(new LambdaQueryWrapper<BcRegion>().eq(BcRegion::getRegionCode, districtsCode));
+			systemUser.setDistricts(bcRegion.getRegionName());
+		}
+
+		String streetId = systemUser.getStreetId();
+		if (!StringUtils.isEmpty(streetId)){
+			ComStreet comStreet = comStreetService.getById(streetId);
+			systemUser.setStreet(comStreet.getName());
+		}
+		Long communityId = systemUser.getCommunityId();
+		if (communityId != null){
+			ComAct act = comActService.getById(communityId);
+			systemUser.setCommunity(act.getName());
+		}
+
+
 		systemUser.setStatus(1);
 		systemUser.setCreateTime(LocalDateTime.now());
 		systemUserService.updateById(systemUser);
+		// 移除原来层级 在添加新层级
+		systemUserLevelService.remove(new LambdaQueryWrapper<SystemUserLevel>().eq(SystemUserLevel::getSystemUserId, systemUser.getId()));
+		systemUserLevels.forEach(e->{
+			e.setSystemUserId(systemUser.getId());
+			e.setStatus(1);
+		});
+		systemUserLevelService.saveBatch(systemUserLevels);
+
+
 		return R.ok();
 	}
-	
-	
+
+
 	@DeleteMapping("/delete/{id}")
 	@ApiOperation(value = "删除人员", tags = {"三个身边后台-人员管理"})
-	@OperLog(operModul = "三个身边后台",operType = 3,businessType = "删除人员")
+	@SysLog(operatorCategory = "删除账号",operId = 4)
 	public R delete(@PathVariable("id") Integer id){
 		SystemUser systemUser = systemUserService.getById(id);
 		systemUser.setStatus(3);
 		systemUserService.updateById(systemUser);
-		return R.ok();
+		systemUserLevelService.update(new LambdaUpdateWrapper<SystemUserLevel>().eq(SystemUserLevel::getSystemUserId, id).set(SystemUserLevel::getStatus,3));
+		return R.ok(systemUser.getName());
 	}
-	
-	
+
+
 	@GetMapping("/getSystemUserInfo/{id}")
 	@ApiOperation(value = "查询人员详情", tags = {"三个身边后台-人员管理"})
 	@OperLog(operModul = "三个身边后台",operType = 0,businessType = "查询人员详情")
 	public R<SystemUser> getSystemUserInfo(@PathVariable("id") Integer id){
 		SystemUser systemUser = systemUserService.getById(id);
+		List<SystemUserLevel> listBySystemUserId = systemUserLevelService.getListBySystemUserId(id);
+		listBySystemUserId.sort(Comparator.comparing(SystemUserLevel::getLevel));
+		systemUser.setSystemUserLevels(listBySystemUserId);
 		return R.ok(systemUser);
 	}
-	
-	
+
+
 	@PutMapping("/freeze/{id}")
 	@ApiOperation(value = "冻结账号", tags = {"三个身边后台-人员管理"})
-	@OperLog(operModul = "三个身边后台",operType = 0,businessType = "冻结账号")
+	@OperLog(operModul = "三个身边后台",operType = 2,businessType = "冻结账号")
 	public R freeze(@PathVariable("id") Integer id){
 		SystemUser systemUser = systemUserService.getById(id);
 		if(2 == systemUser.getStatus()){
@@ -207,11 +354,11 @@
 		systemUserService.updateById(systemUser);
 		return R.ok();
 	}
-	
-	
+
+
 	@PutMapping("/unfreeze/{id}")
 	@ApiOperation(value = "解冻账号", tags = {"三个身边后台-人员管理"})
-	@OperLog(operModul = "三个身边后台",operType = 0,businessType = "解冻账号")
+	@OperLog(operModul = "三个身边后台",operType = 2,businessType = "解冻账号")
 	public R unfreeze(@PathVariable("id") Integer id){
 		SystemUser systemUser = systemUserService.getById(id);
 		if(1 == systemUser.getStatus()){
@@ -221,8 +368,8 @@
 		systemUserService.updateById(systemUser);
 		return R.ok();
 	}
-	
-	
+
+
 	/**
 	 * 根据用户id获取信息
 	 * @param id
@@ -243,4 +390,126 @@
 		BeanUtils.copyProperties(systemUser, systemUserVo);
 		return R.ok(systemUserVo);
 	}
+
+
+
+	@GetMapping("/getAdministrativeDivision/{id}/{tier}")
+	@ApiOperation(value = "获取行政区划层级联动数据", tags = {"三个身边后台-人员管理"})
+	@ApiImplicitParams({
+			@ApiImplicitParam(name = "id", value = "上级id", required = false, dataType = "string"),
+			@ApiImplicitParam(name = "tier", value = "数据层级(2=区县,3=街道,4=社区)", required = true, dataType = "int"),
+	})
+	@OperLog(operModul = "三个身边后台",operType = 0,businessType = "获取行政区划层级联动数据")
+	public R<List<RegionVO>> getAdministrativeDivision(@PathVariable("id") String id, @PathVariable("tier") Integer tier){
+		List<RegionVO> list = new ArrayList<>();
+		//区县
+		if(2 == tier){
+			list = systemUserService.getRegion("510400");
+		}
+		//街道
+		if(3 == tier){
+			list = systemUserService.getStreet(id);
+		}
+		//社区
+		if(4 == tier){
+			list = systemUserService.getCommunity(id);
+		}
+		log.info("获取行政区划层级联动数据:{}", list);
+		return R.ok(list);
+	}
+
+
+	@GetMapping("/getAdministrativeDivisionTwo")
+	@ApiOperation(value = "获取行政区划层级联动数据--2.0.1", tags = {"三个身边后台-人员管理"})
+	@ApiImplicitParams({
+	})
+	@OperLog(operModul = "三个身边后台",operType = 0,businessType = "获取行政区划层级联动数据--2.0.1")
+	public R<ArrayList<RegionVO>> getAdministrativeDivisionTwo(){
+		ArrayList<RegionVO> regionVOS = new ArrayList<>();
+
+		regionVOS.add(new RegionVO("1","市",new ArrayList<>(),1));
+		List<BcRegion> list = bcRegionService.list(new LambdaQueryWrapper<BcRegion>().eq(BcRegion::getDeleteFlag, 0));
+		ArrayList<RegionVO> regionList = new ArrayList<>();
+		list.forEach(e->{
+			RegionVO regionVO = new RegionVO();
+			regionVO.setId(e.getRegionCode());
+			regionVO.setName(e.getRegionName());
+			regionVO.setTier(2);
+			regionList.add(regionVO);
+		});
+		regionVOS.add(new RegionVO("2","区县",regionList,2));
+		List<ComStreet> list1 = comStreetService.list(new LambdaQueryWrapper<ComStreet>().in(ComStreet::getAreaCode, regionList.stream().map(RegionVO::getId).collect(Collectors.toList())));
+
+		for (RegionVO regionVO : regionList) {
+			ArrayList<RegionVO> list2 = new ArrayList<>();
+			List<ComStreet> collect = list1.stream().filter(e -> e.getAreaCode().toString().equals(regionVO.getId())).collect(Collectors.toList());
+			collect.forEach(e->{
+				RegionVO regionVO1 = new RegionVO();
+				regionVO1.setId(e.getStreetId());
+				regionVO1.setName(e.getName());
+				regionVO1.setTier(3);
+				list2.add(regionVO1);
+			});
+			regionVO.setChildren(list2);
+		}
+		regionVOS.add(new RegionVO("3","街道",regionList,3));
+		List<ComAct> list2 = comActService.list();
+
+		for (RegionVO regionVO : regionList) {
+			List<RegionVO> children = regionVO.getChildren();
+			for (RegionVO child : children) {
+				List<ComAct> collect = list2.stream().filter(e -> e.getStreetId().toString().equals(child.getId())).collect(Collectors.toList());
+				ArrayList<RegionVO> list3 = new ArrayList<>();
+				collect.forEach(e->{
+					RegionVO regionVO2 = new RegionVO();
+					regionVO2.setId(e.getCommunityId().toString());
+					regionVO2.setName(e.getName());
+					regionVO2.setTier(4);
+					list3.add(regionVO2);
+				});
+				child.setChildren(list3);
+			}
+		}
+		regionVOS.add(new RegionVO("4","社区",regionList,4));
+		return R.ok(regionVOS);
+	}
+
+
+
+	@GetMapping("/regionTree")
+	@ApiOperation(value = "获取区县-街道-社区树",tags = {"三个身边后台-人员管理"})
+	public R<List<RegionVO>> regionTree(){
+		SystemUserVo loginUserInfo = getLoginUserInfoSanGeShenBian();
+		List<RegionVO> list = systemUserService.getRegionTree(loginUserInfo);
+		return R.ok(list);
+	}
+
+
+	@GetMapping("/getSignature")
+	@ApiOperation(value = "获取签名",tags = {"三个身边小程序"})
+    public R<?> getSignature() throws Exception {
+        String APP_ID = "wx118de8a734d269f0";
+        String APP_SECRET = "0264342daefde5cd70a6adada09ee5b1";
+        String accessToken = SignatureUtil.getAccessToken(APP_ID, APP_SECRET);
+        String jsapiTicket = SignatureUtil.getJsApiTicket(accessToken);
+        String nonceStr = UUID.randomUUID().toString().replace("-", "");
+        String timestamp = String.valueOf(System.currentTimeMillis() / 1000);
+//        String url = "https://huacheng.psciio.com/web/sangeshenbian/"; // 当前页面的URL,不包含#及其后面部分
+        String url = "http://192.168.110.91:8080/#/pages/Appeal/Appeal/"; // 当前页面的URL,不包含#及其后面部分
+
+        String signature = SignatureUtil.getSignature(jsapiTicket, nonceStr, timestamp, url);
+
+        System.out.println("appId: " + APP_ID);
+        System.out.println("timestamp: " + timestamp);
+        System.out.println("nonceStr: " + nonceStr);
+        System.out.println("signature: " + signature);
+        SignatureVO signatureVO = new SignatureVO();
+        signatureVO.setTimestamp(timestamp);
+        signatureVO.setNonceStr(nonceStr);
+        signatureVO.setSignature(signature);
+        return R.ok(signatureVO);
+    }
+
+
+
 }

--
Gitblit v1.7.1