Browse Source

7.23修改同步

huangqizheng/feature-20250722105318-BUG修改
huangqizhen 4 weeks ago
parent
commit
cae8c39e8c
  1. 6
      pom.xml
  2. 11
      src/main/java/com/example/demo/Mysql/MysqlServiceImpl.java
  3. 5
      src/main/java/com/example/demo/controller/MenuController.java
  4. 10
      src/main/java/com/example/demo/domain/entity/User.java
  5. 5
      src/main/java/com/example/demo/mapper/MenuMapper.java
  6. 2
      src/main/java/com/example/demo/mapper/RoleMapper.java
  7. 108
      src/main/java/com/example/demo/password/ExcelProcessor.java
  8. 3
      src/main/java/com/example/demo/service/MenuService.java
  9. 1
      src/main/java/com/example/demo/service/PermissionService.java
  10. 33
      src/main/java/com/example/demo/serviceImpl/MenuServiceImpl.java
  11. 15
      src/main/resources/mapper/MenuMapper.xml
  12. 15
      src/main/resources/mapper/RoleMapper.xml
  13. 4
      src/main/resources/mapper/UserMapper.xml

6
pom.xml

@ -42,6 +42,12 @@
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.3</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.14</version>

11
src/main/java/com/example/demo/Mysql/MysqlServiceImpl.java

@ -254,14 +254,9 @@ public class MysqlServiceImpl implements MysqlService {
}
if (validOneTypes.contains(gtype)){
user.setConsumeNum(user.getConsumeNum() + 1);
user.setSumConsumeGold(user.getSumConsumeGold() + buy_jb);
user.setSumConsumeTaskGold(user.getSumConsumeTaskGold() + core_jb);
if(currentMonth.getValue() >= 7){
user.setSumConsumeJune(user.getSumConsumeJune()+free);
}
if(currentMonth.getValue() < 7){
user.setSumConsumeDecember(user.getSumFreeDecember()+free);
}
user.setSumConsumePermanent(user.getSumConsumePermanent() + buy_jb);
user.setSumConsumeTask(user.getSumConsumeTask() + core_jb);
user.setSumConsumeFree(user.getSumConsumeFree() + free);
}
userService.updateAllGold(user);

5
src/main/java/com/example/demo/controller/MenuController.java

@ -44,4 +44,9 @@ public class MenuController {
return menuService.addPermission(roleVo);
}
//更新权限
@PostMapping("/update")
public Result updatePermission(@RequestBody RoleVo roleVo) {
return menuService.updatePermission(roleVo);
}
}

10
src/main/java/com/example/demo/domain/entity/User.java

@ -48,13 +48,11 @@ public class User implements Serializable {
@ExcelProperty("历史消费次数")
private Integer consumeNum; // 消费次数
@ExcelProperty("历史消费永久金币")
private Integer sumConsumeGold;
private Integer sumConsumePermanent;
@ExcelProperty("历史消费任务金币")
private Integer sumConsumeTaskGold;
@ExcelProperty("历史消费六月金币")
private Integer sumConsumeJune;
@ExcelProperty("历史消费十二月金币")
private Integer sumConsumeDecember;
private Integer sumConsumeTask;
@ExcelProperty("历史消费免费金币")
private Integer sumConsumeFree;
@ExcelIgnore
private List<String> markets;
@ExcelProperty("首充日期")

5
src/main/java/com/example/demo/mapper/MenuMapper.java

@ -28,4 +28,9 @@ public interface MenuMapper {
//查找菜单id
Menu selectByMenuId(Integer id);
//修改权限
void updateMenu(List<RoleMenu> roleMenuList);
//删除权限
void deleteMenu(Integer id);
}

2
src/main/java/com/example/demo/mapper/RoleMapper.java

@ -46,4 +46,6 @@ public interface RoleMapper {
void deleteRoleMenu(RoleVo roleVo);
//获取当前角色的上级角色
RoleVo selectFather(Integer id);
//修改角色
void updateRole(RoleVo roleVo);
}

108
src/main/java/com/example/demo/password/ExcelProcessor.java

@ -0,0 +1,108 @@
package com.example.demo.password;
import com.example.demo.Util.BaseDES;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.http.*;
import org.springframework.web.client.RestTemplate;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.HashMap;
import java.util.Map;
public class ExcelProcessor {
public static void main(String[] args) {
String inputFilePath = "D:\\地区导出.xls"; // 输入文件路径
String outputFilePath = "D:\\output.xlsx"; // 输出文件路径
try (FileInputStream fis = new FileInputStream(new File(inputFilePath));
Workbook workbook = new HSSFWorkbook(fis);
FileOutputStream fos = new FileOutputStream(new File(outputFilePath))) {
Sheet sheet = workbook.getSheetAt(0); // 获取第一个工作表
RestTemplate restTemplate = new RestTemplate();
// 创建新的输出工作簿
Workbook outputWorkbook = new XSSFWorkbook();
Sheet outputSheet = outputWorkbook.createSheet("Result");
Row headerRow = outputSheet.createRow(0);
headerRow.createCell(0).setCellValue("jwcode");
headerRow.createCell(1).setCellValue("name");
headerRow.createCell(2).setCellValue("country");
int outputRowIndex = 1;
// 遍历输入文件的每一行
for (int i = 1; i <= sheet.getLastRowNum(); i++) { // 假设第一行是标题
Row row = sheet.getRow(i);
if (row == null) continue;
String jwcode = row.getCell(1).getStringCellValue(); // 假设 jwcode 在第一列
System.out.println("Processing jwcode: " + jwcode);
// 调用接口
Map<String, String> result = callApi(jwcode, restTemplate);
// 写入结果到新 Excel 文件
Row outputRow = outputSheet.createRow(outputRowIndex++);
outputRow.createCell(0).setCellValue(jwcode);
outputRow.createCell(1).setCellValue(result.getOrDefault("name", "未知"));
outputRow.createCell(2).setCellValue(result.getOrDefault("country", "未知"));
}
// 保存输出文件
outputWorkbook.write(fos);
System.out.println("Processing completed. Output file saved to: " + outputFilePath);
} catch (Exception e) {
e.printStackTrace();
}
}
private static Map<String, String> callApi(String jwcode, RestTemplate restTemplate) {
Map<String, String> result = new HashMap<>();
result.put("name", "未知");
result.put("country", "未知");
try {
BaseDES des = new BaseDES();
String desjwcode = des.encrypt(String.valueOf(jwcode));
// 创建 JSON 请求体
Map<String, String> requestBody = new HashMap<>();
requestBody.put("jwcode", desjwcode);
// 设置请求头
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
// 创建 HttpEntity
HttpEntity<Map<String, String>> entity = new HttpEntity<>(requestBody, headers);
// 发送 POST 请求
ResponseEntity<Map> response = restTemplate.exchange(
"http://hwapi.rzfwq.com/hwjnApp/hwhc-login/hwhclogin/hc/login/clent/info",
HttpMethod.POST, entity, Map.class);
// 检查响应状态码
if (response.getStatusCode().is2xxSuccessful()) {
Map<String, Object> responseBody = response.getBody();
if (responseBody != null) {
Map<String, Object> data = (Map<String, Object>) responseBody.get("data");
if (data != null) {
result.put("name", (String) data.getOrDefault("name", "未知"));
result.put("country", (String) data.getOrDefault("country", "未知"));
}
}
}
} catch (Exception e) {
System.out.println("Error processing jwcode: " + jwcode + ", Error: " + e.getMessage());
}
return result;
}
}

3
src/main/java/com/example/demo/service/MenuService.java

@ -23,5 +23,8 @@ public interface MenuService {
//新增权限
Result addPermission(RoleVo roleVo);
//修改权限
Result updatePermission(RoleVo roleVo);
}

1
src/main/java/com/example/demo/service/PermissionService.java

@ -31,4 +31,5 @@ public interface PermissionService {
//更新管理员信息
Result updateAdmin(AdminVo adminVo)throws Exception;
}

33
src/main/java/com/example/demo/serviceImpl/MenuServiceImpl.java

@ -98,4 +98,37 @@ public class MenuServiceImpl implements MenuService {
return Result.success("权限新增成功");
}
@Override
public Result updatePermission(RoleVo roleVo) {
//校验
if(Objects.isNull(roleVo)) {
return Result.error("传入角色为空");
}
if(Objects.isNull(roleVo.getId())) {
return Result.error("角色ID为空");
}
if(roleVo.getMenuIds() == null||roleVo.getMenuIds().isEmpty()) {
return Result.error("角色权限为空");
}
if(roleMapper.selectByRoleId(roleVo.getId())==null){
return Result.error("角色不存在");
}
//角色菜单权限对应
List<RoleMenu> roleMenuList = new ArrayList<>();
//循环导入
for (Integer menuId : roleVo.getMenuIds()) {
if(menuMapper.selectByMenuId(menuId)==null){
return Result.error("菜单不存在");
}
RoleMenu roleMenu = new RoleMenu();
roleMenu.setRoleId(roleVo.getId());
roleMenu.setMenuId(menuId);
roleMenuList.add(roleMenu);
}
menuMapper.deleteMenu(roleVo.getId());
roleMapper.updateRole(roleVo);
menuMapper.addPermission(roleMenuList);
return Result.success("权限更新成功");
}
}

15
src/main/resources/mapper/MenuMapper.xml

@ -1,6 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.MenuMapper">
<update id="updateMenu">
<foreach collection="roleMenuList" item="item" separator=";">
UPDATE role_menu
<set>
<if test="item.menuId != null">
menu_id = #{item.menuId},
</if>
</set>
WHERE role_id = #{item.roleId}
</foreach>
</update>
<delete id="deleteMenu">
DELETE FROM role_menu
WHERE role_id = #{id}
</delete>
<select id="selectMenusByRoleId" resultType="com.example.demo.domain.vo.MenuVo">
SELECT DISTINCT

15
src/main/resources/mapper/RoleMapper.xml

@ -1,6 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.RoleMapper">
<update id="updateRole">
UPDATE role
<set>
<if test="roleName != null">
role_name = #{roleName},
</if>
<if test="priority != null">
priority = #{priority},
</if>
<if test="fatherId != null">
father_id = #{fatherId},
</if>
</set>
WHERE id = #{id}
</update>
<select id="selectByRoleName" resultType="com.example.demo.domain.entity.Role">

4
src/main/resources/mapper/UserMapper.xml

@ -128,7 +128,9 @@
<if test="currentTaskGold != null">current_task_gold = #{currentTaskGold},</if>
<if test="consumeNum != null">consume_num = #{consumeNum},</if>
<if test="rechargeNum != null">recharge_num = #{rechargeNum}</if>
<if test="sumConsumePermanent != null">sum_consume_permanent = #{sumConsumePermanent},</if>
<if test="sumConsumeTask != null">sum_consume_task = #{sumConsumeTask},</if>
<if test="sumConsumeFree != null">sum_consume_free = #{sumConsumeFree},</if>
where jwcode = #{jwcode}
</update>
<!--更新用户首充时间-->

Loading…
Cancel
Save