wangyuzhe há 1 mês atrás
pai
commit
55ac9117fc
100 ficheiros alterados com 5849 adições e 95 exclusões
  1. 1 0
      src/main/java/org/springblade/modules/auth/utils/TokenUtil.java
  2. 188 0
      src/main/java/org/springblade/modules/ffxc/controller/JwtdFfxcController.java
  3. 85 0
      src/main/java/org/springblade/modules/ffxc/excel/JwtdFfxcExcel.java
  4. 61 0
      src/main/java/org/springblade/modules/ffxc/mapper/JwtdFfxcMapper.java
  5. 34 0
      src/main/java/org/springblade/modules/ffxc/mapper/JwtdFfxcMapper.xml
  6. 45 0
      src/main/java/org/springblade/modules/ffxc/pojo/dto/JwtdFfxcDTO.java
  7. 87 0
      src/main/java/org/springblade/modules/ffxc/pojo/entity/JwtdFfxcEntity.java
  8. 45 0
      src/main/java/org/springblade/modules/ffxc/pojo/vo/JwtdFfxcVO.java
  9. 59 0
      src/main/java/org/springblade/modules/ffxc/service/IJwtdFfxcService.java
  10. 61 0
      src/main/java/org/springblade/modules/ffxc/service/impl/JwtdFfxcServiceImpl.java
  11. 58 0
      src/main/java/org/springblade/modules/ffxc/wrapper/JwtdFfxcWrapper.java
  12. 199 0
      src/main/java/org/springblade/modules/ffxcLlls/controller/JwtdFfxcLllsController.java
  13. 73 0
      src/main/java/org/springblade/modules/ffxcLlls/excel/JwtdFfxcLllsExcel.java
  14. 66 0
      src/main/java/org/springblade/modules/ffxcLlls/mapper/JwtdFfxcLllsMapper.java
  15. 34 0
      src/main/java/org/springblade/modules/ffxcLlls/mapper/JwtdFfxcLllsMapper.xml
  16. 45 0
      src/main/java/org/springblade/modules/ffxcLlls/pojo/dto/JwtdFfxcLllsDTO.java
  17. 77 0
      src/main/java/org/springblade/modules/ffxcLlls/pojo/entity/JwtdFfxcLllsEntity.java
  18. 45 0
      src/main/java/org/springblade/modules/ffxcLlls/pojo/vo/JwtdFfxcLllsVO.java
  19. 64 0
      src/main/java/org/springblade/modules/ffxcLlls/service/IJwtdFfxcLllsService.java
  20. 73 0
      src/main/java/org/springblade/modules/ffxcLlls/service/impl/JwtdFfxcLllsServiceImpl.java
  21. 58 0
      src/main/java/org/springblade/modules/ffxcLlls/wrapper/JwtdFfxcLllsWrapper.java
  22. 188 0
      src/main/java/org/springblade/modules/jwtdJfjl/controller/JwtdJfjlController.java
  23. 79 0
      src/main/java/org/springblade/modules/jwtdJfjl/excel/JwtdJfjlExcel.java
  24. 67 0
      src/main/java/org/springblade/modules/jwtdJfjl/mapper/JwtdJfjlMapper.java
  25. 92 0
      src/main/java/org/springblade/modules/jwtdJfjl/mapper/JwtdJfjlMapper.xml
  26. 45 0
      src/main/java/org/springblade/modules/jwtdJfjl/pojo/dto/JwtdJfjlDTO.java
  27. 98 0
      src/main/java/org/springblade/modules/jwtdJfjl/pojo/entity/JwtdJfjlEntity.java
  28. 45 0
      src/main/java/org/springblade/modules/jwtdJfjl/pojo/vo/JwtdJfjlVO.java
  29. 65 0
      src/main/java/org/springblade/modules/jwtdJfjl/service/IJwtdJfjlService.java
  30. 77 0
      src/main/java/org/springblade/modules/jwtdJfjl/service/impl/JwtdJfjlServiceImpl.java
  31. 58 0
      src/main/java/org/springblade/modules/jwtdJfjl/wrapper/JwtdJfjlWrapper.java
  32. 171 0
      src/main/java/org/springblade/modules/jwtdJwgk/controller/JwtdJwgkController.java
  33. 115 0
      src/main/java/org/springblade/modules/jwtdJwgk/excel/JwtdJwgkExcel.java
  34. 63 0
      src/main/java/org/springblade/modules/jwtdJwgk/mapper/JwtdJwgkMapper.java
  35. 63 0
      src/main/java/org/springblade/modules/jwtdJwgk/mapper/JwtdJwgkMapper.xml
  36. 45 0
      src/main/java/org/springblade/modules/jwtdJwgk/pojo/dto/JwtdJwgkDTO.java
  37. 110 0
      src/main/java/org/springblade/modules/jwtdJwgk/pojo/entity/JwtdJwgkEntity.java
  38. 45 0
      src/main/java/org/springblade/modules/jwtdJwgk/pojo/vo/JwtdJwgkVO.java
  39. 61 0
      src/main/java/org/springblade/modules/jwtdJwgk/service/IJwtdJwgkService.java
  40. 67 0
      src/main/java/org/springblade/modules/jwtdJwgk/service/impl/JwtdJwgkServiceImpl.java
  41. 58 0
      src/main/java/org/springblade/modules/jwtdJwgk/wrapper/JwtdJwgkWrapper.java
  42. 185 0
      src/main/java/org/springblade/modules/jwtdSpgl/controller/JwtdSpglController.java
  43. 103 0
      src/main/java/org/springblade/modules/jwtdSpgl/excel/JwtdSpglExcel.java
  44. 62 0
      src/main/java/org/springblade/modules/jwtdSpgl/mapper/JwtdSpglMapper.java
  45. 37 0
      src/main/java/org/springblade/modules/jwtdSpgl/mapper/JwtdSpglMapper.xml
  46. 45 0
      src/main/java/org/springblade/modules/jwtdSpgl/pojo/dto/JwtdSpglDTO.java
  47. 110 0
      src/main/java/org/springblade/modules/jwtdSpgl/pojo/entity/JwtdSpglEntity.java
  48. 45 0
      src/main/java/org/springblade/modules/jwtdSpgl/pojo/vo/JwtdSpglVO.java
  49. 60 0
      src/main/java/org/springblade/modules/jwtdSpgl/service/IJwtdSpglService.java
  50. 62 0
      src/main/java/org/springblade/modules/jwtdSpgl/service/impl/JwtdSpglServiceImpl.java
  51. 58 0
      src/main/java/org/springblade/modules/jwtdSpgl/wrapper/JwtdSpglWrapper.java
  52. 163 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/controller/JwtdSpglBhjlController.java
  53. 73 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/excel/JwtdSpglBhjlExcel.java
  54. 63 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/mapper/JwtdSpglBhjlMapper.java
  55. 23 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/mapper/JwtdSpglBhjlMapper.xml
  56. 45 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/pojo/dto/JwtdSpglBhjlDTO.java
  57. 67 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/pojo/entity/JwtdSpglBhjlEntity.java
  58. 45 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/pojo/vo/JwtdSpglBhjlVO.java
  59. 61 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/service/IJwtdSpglBhjlService.java
  60. 67 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/service/impl/JwtdSpglBhjlServiceImpl.java
  61. 58 0
      src/main/java/org/springblade/modules/jwtdSpglBhjl/wrapper/JwtdSpglBhjlWrapper.java
  62. 224 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/controller/JwtdSpglDhjlController.java
  63. 91 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/excel/JwtdSpglDhjlExcel.java
  64. 69 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/mapper/JwtdSpglDhjlMapper.java
  65. 96 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/mapper/JwtdSpglDhjlMapper.xml
  66. 45 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/pojo/dto/JwtdSpglDhjlDTO.java
  67. 116 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/pojo/entity/JwtdSpglDhjlEntity.java
  68. 46 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/pojo/vo/JwtdSpglDhjlVO.java
  69. 67 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/service/IJwtdSpglDhjlService.java
  70. 82 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/service/impl/JwtdSpglDhjlServiceImpl.java
  71. 58 0
      src/main/java/org/springblade/modules/jwtdSpglDhjl/wrapper/JwtdSpglDhjlWrapper.java
  72. 56 0
      src/main/java/org/springblade/modules/system/controller/DeptController.java
  73. 3 2
      src/main/java/org/springblade/modules/system/controller/DictBizController.java
  74. 0 12
      src/main/java/org/springblade/modules/system/controller/UserController.java
  75. 18 0
      src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
  76. 67 0
      src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
  77. 1 1
      src/main/java/org/springblade/modules/system/mapper/DictBizMapper.java
  78. 0 1
      src/main/java/org/springblade/modules/system/mapper/DictBizMapper.xml
  79. 0 4
      src/main/java/org/springblade/modules/system/mapper/UserMapper.java
  80. 0 41
      src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
  81. 12 0
      src/main/java/org/springblade/modules/system/pojo/entity/User.java
  82. 1 1
      src/main/java/org/springblade/modules/system/pojo/entity/UserInfo.java
  83. 9 0
      src/main/java/org/springblade/modules/system/pojo/vo/ListVO.java
  84. 12 0
      src/main/java/org/springblade/modules/system/pojo/vo/ZdVO.java
  85. 18 0
      src/main/java/org/springblade/modules/system/service/IDeptService.java
  86. 1 1
      src/main/java/org/springblade/modules/system/service/IDictBizService.java
  87. 0 4
      src/main/java/org/springblade/modules/system/service/IUserService.java
  88. 61 0
      src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
  89. 1 0
      src/main/java/org/springblade/modules/system/service/impl/DictBizServiceImpl.java
  90. 0 11
      src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
  91. 2 2
      src/main/java/org/springblade/modules/szqyCsjl/mapper/JwtdSzqyCsjlMapper.xml
  92. 13 3
      src/main/java/org/springblade/modules/szqyCsjl/pojo/entity/JwtdSzqyCsjlEntity.java
  93. 50 3
      src/main/java/org/springblade/modules/szqyJyz/controller/JwtdSzqyJyzController.java
  94. 14 0
      src/main/java/org/springblade/modules/szqyJyz/excel/JwtdSzqyJyzExcel.java
  95. 1 1
      src/main/java/org/springblade/modules/szqyJyz/mapper/JwtdSzqyJyzMapper.java
  96. 6 2
      src/main/java/org/springblade/modules/szqyJyz/mapper/JwtdSzqyJyzMapper.xml
  97. 27 3
      src/main/java/org/springblade/modules/szqyJyz/pojo/entity/JwtdSzqyJyzEntity.java
  98. 1 1
      src/main/java/org/springblade/modules/szqyJyz/service/IJwtdSzqyJyzService.java
  99. 2 2
      src/main/java/org/springblade/modules/szqyJyz/service/impl/JwtdSzqyJyzServiceImpl.java
  100. 77 0
      src/main/java/org/springblade/modules/szqyJyz/utils/ExcelClassField.java

+ 1 - 0
src/main/java/org/springblade/modules/auth/utils/TokenUtil.java

@@ -52,6 +52,7 @@ public class TokenUtil {
 			return null;
 		}
 		User user = userInfo.getUser();
+		userInfo.getDetail().set("jf", user.getJf());
 		String userDept = request.getUserDept();
 		String userRole = request.getUserRole();
 		// 多部门情况下指定单部门

+ 188 - 0
src/main/java/org/springblade/modules/ffxc/controller/JwtdFfxcController.java

@@ -0,0 +1,188 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.controller;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import jakarta.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity;
+import org.springblade.modules.ffxcLlls.service.IJwtdFfxcLllsService;
+import org.springblade.modules.system.pojo.entity.DictBiz;
+import org.springblade.modules.system.service.IDictBizService;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import org.springblade.modules.ffxc.pojo.vo.JwtdFfxcVO;
+import org.springblade.modules.ffxc.excel.JwtdFfxcExcel;
+import org.springblade.modules.ffxc.wrapper.JwtdFfxcWrapper;
+import org.springblade.modules.ffxc.service.IJwtdFfxcService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.tool.constant.BladeConstant;
+import org.springblade.core.tool.constant.RoleConstant;
+import java.util.Map;
+import java.util.List;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * 警务团队_防范宣传 控制器
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/jwtdFfxc")
+@Tag(name = "警务团队_防范宣传", description = "警务团队_防范宣传接口")
+public class JwtdFfxcController extends BladeController {
+
+	private final IJwtdFfxcService jwtdFfxcService;
+
+	private final IJwtdFfxcLllsService jwtdFfxcLllsService;
+
+	private final IDictBizService dictBizService;
+
+	/**
+	 * 警务团队_防范宣传 平台详情
+	 */
+	@GetMapping("/detailPt")
+	public R<JwtdFfxcEntity> detailPt(JwtdFfxcEntity jwtdFfxc) {
+		JwtdFfxcEntity detail = jwtdFfxcService.getById(jwtdFfxc);
+		return R.data(detail);
+	}
+
+	/**
+	 * 警务团队_防范宣传 App详情
+	 */
+	@GetMapping("/detailApp")
+	public R<JwtdFfxcEntity> detailApp(JwtdFfxcEntity jwtdFfxc) {
+		JwtdFfxcLllsEntity jfls = new JwtdFfxcLllsEntity();
+		jfls.setFfxcId(jwtdFfxc.getId());
+		jfls.setUserId(AuthUtil.getUserId());
+		jfls.setLlzt("0");
+		jfls.setJf(0);
+		jwtdFfxcLllsService.save(jfls);
+		JwtdFfxcEntity detail = jwtdFfxcService.getById(jwtdFfxc);
+		detail.setLsId(jfls.getId());
+		return R.data(detail);
+	}
+
+	/**
+	 * 警务团队_防范宣传 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@Operation(summary = "分页", description  = "传入jwtdFfxc")
+	public R<IPage<JwtdFfxcVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdFfxc, Query query) {
+		IPage<JwtdFfxcEntity> pages = jwtdFfxcService.page(Condition.getPage(query), Condition.getQueryWrapper(jwtdFfxc, JwtdFfxcEntity.class));
+		return R.data(JwtdFfxcWrapper.build().pageVO(pages));
+	}
+
+
+	/**
+	 * 警务团队_防范宣传 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "分页", description  = "传入jwtdFfxc")
+	public R<IPage<JwtdFfxcVO>> page(JwtdFfxcVO jwtdFfxc, Query query) {
+		IPage<JwtdFfxcVO> pages = jwtdFfxcService.selectJwtdFfxcPage(Condition.getPage(query), jwtdFfxc);
+		return R.data(pages);
+	}
+
+	/**
+	 * 警务团队_防范宣传 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@Operation(summary = "新增", description  = "传入jwtdFfxc")
+	public R save(@Valid @RequestBody JwtdFfxcEntity jwtdFfxc) {
+		DictBiz byId = dictBizService.getById(jwtdFfxc.getXclxId());
+		jwtdFfxc.setJf(Integer.valueOf(byId.getRemark()));
+		return R.status(jwtdFfxcService.save(jwtdFfxc));
+	}
+
+	/**
+	 * 警务团队_防范宣传 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@Operation(summary = "修改", description  = "传入jwtdFfxc")
+	public R update(@Valid @RequestBody JwtdFfxcEntity jwtdFfxc) {
+		return R.status(jwtdFfxcService.updateById(jwtdFfxc));
+	}
+
+	/**
+	 * 警务团队_防范宣传 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@Operation(summary = "新增或修改", description  = "传入jwtdFfxc")
+	public R submit(@Valid @RequestBody JwtdFfxcEntity jwtdFfxc) {
+		return R.status(jwtdFfxcService.saveOrUpdate(jwtdFfxc));
+	}
+
+	/**
+	 * 警务团队_防范宣传 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@Operation(summary = "逻辑删除", description  = "传入ids")
+	public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(jwtdFfxcService.deleteLogic(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 导出数据
+	 */
+	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@GetMapping("/export-jwtdFfxc")
+	@ApiOperationSupport(order = 8)
+	@Operation(summary = "导出数据", description  = "传入jwtdFfxc")
+	public void exportJwtdFfxc(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdFfxc, BladeUser bladeUser, HttpServletResponse response) {
+		QueryWrapper<JwtdFfxcEntity> queryWrapper = Condition.getQueryWrapper(jwtdFfxc, JwtdFfxcEntity.class);
+		//if (!AuthUtil.isAdministrator()) {
+		//	queryWrapper.lambda().eq(JwtdFfxcEntity::getTenantId, bladeUser.getTenantId());
+		//}
+		//queryWrapper.lambda().eq(JwtdFfxcEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
+		List<JwtdFfxcExcel> list = jwtdFfxcService.exportJwtdFfxc(queryWrapper);
+		ExcelUtil.export(response, "警务团队_防范宣传数据" + DateUtil.time(), "警务团队_防范宣传数据表", list, JwtdFfxcExcel.class);
+	}
+
+}

+ 85 - 0
src/main/java/org/springblade/modules/ffxc/excel/JwtdFfxcExcel.java

@@ -0,0 +1,85 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.excel;
+
+
+import lombok.Data;
+
+import java.io.Serializable;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serial;
+
+
+/**
+ * 警务团队_防范宣传 Excel实体类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class JwtdFfxcExcel implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 宣传标题
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("宣传标题")
+	private String xcbt;
+	/**
+	 * 宣传内容
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("宣传内容")
+	private String xcnr;
+	/**
+	 * 宣传类型
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("宣传类型")
+	private String xclx;
+	/**
+	 * 发布单位
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("发布单位")
+	private String fbdw;
+	/**
+	 * 积分
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("积分")
+	private String jf;
+
+}

+ 61 - 0
src/main/java/org/springblade/modules/ffxc/mapper/JwtdFfxcMapper.java

@@ -0,0 +1,61 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.mapper;
+
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import org.springblade.modules.ffxc.pojo.vo.JwtdFfxcVO;
+import org.springblade.modules.ffxc.excel.JwtdFfxcExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 警务团队_防范宣传 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+public interface JwtdFfxcMapper extends BaseMapper<JwtdFfxcEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdFfxc 查询参数
+	 * @return List<JwtdFfxcVO>
+	 */
+	List<JwtdFfxcVO> selectJwtdFfxcPage(IPage page, JwtdFfxcVO jwtdFfxc);
+
+	/**
+	 * 获取导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdFfxcExcel>
+	 */
+	List<JwtdFfxcExcel> exportJwtdFfxc(@Param("ew") Wrapper<JwtdFfxcEntity> queryWrapper);
+}

+ 34 - 0
src/main/java/org/springblade/modules/ffxc/mapper/JwtdFfxcMapper.xml

@@ -0,0 +1,34 @@
+<?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="org.springblade.modules.ffxc.mapper.JwtdFfxcMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="jwtdFfxcResultMap" type="org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity">
+        <result column="xcbt" property="xcbt"/>
+        <result column="xcnr" property="xcnr"/>
+        <result column="xclx" property="xclx"/>
+        <result column="fbdw" property="fbdw"/>
+        <result column="jf" property="jf"/>
+    </resultMap>
+
+    <select id="selectJwtdFfxcPage" resultMap="jwtdFfxcResultMap">
+        select
+            jf.*,
+            (select count(0) from jwtd_ffxc_llls jfl where jfl.ffxc_id = jf.id) as count
+        from jwtd_ffxc jf
+        where jf.is_deleted = 0
+        <if test="jwtdFfxc.xcbt != null and jwtdFfxc.xcbt != ''">
+            and jf.xcbt like '%' || #{jwtdFfxc.xcbt} || '%'
+        </if>
+        <if test="jwtdFfxc.xclx != null and jwtdFfxc.xclx != ''">
+            and jf.xclx = #{jwtdFfxc.xclx}
+        </if>
+        <if test="jwtdFfxc.fbdw != null and jwtdFfxc.fbdw != ''">
+            and jf.fbdw = #{jwtdFfxc.fbdw}
+        </if>
+    </select>
+
+    <select id="exportJwtdFfxc" resultType="org.springblade.modules.ffxc.excel.JwtdFfxcExcel">
+        SELECT * FROM jwtd_ffxc ${ew.customSqlSegment}
+    </select>
+</mapper>

+ 45 - 0
src/main/java/org/springblade/modules/ffxc/pojo/dto/JwtdFfxcDTO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.pojo.dto;
+
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_防范宣传 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdFfxcDTO extends JwtdFfxcEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 87 - 0
src/main/java/org/springblade/modules/ffxc/pojo/entity/JwtdFfxcEntity.java

@@ -0,0 +1,87 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.springblade.core.mp.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_防范宣传 实体类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Data
+@TableName("jwtd_ffxc")
+@Schema(description = "JwtdFfxcEntity对象")
+@EqualsAndHashCode(callSuper = true)
+public class JwtdFfxcEntity extends BaseEntity {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 宣传标题
+	 */
+	@Schema(description = "宣传标题")
+	private String xcbt;
+	/**
+	 * 宣传内容
+	 */
+	@Schema(description = "宣传内容")
+	private String xcnr;
+	/**
+	 * 宣传类型
+	 */
+	@Schema(description = "宣传类型")
+	private String xclx;
+	/**
+	 * 发布单位
+	 */
+	@Schema(description = "发布单位")
+	private String fbdw;
+	/**
+	 * 积分
+	 */
+	@Schema(description = "积分")
+	private Integer jf;
+	/**
+	 * 浏览量
+	 */
+	@TableField(exist = false)
+	private String count;
+	@TableField(exist = false)
+	private Long lsId;
+	@TableField(exist = false)
+	private Long userId;
+	@TableField(exist = false)
+	private Long xclxId;
+}

+ 45 - 0
src/main/java/org/springblade/modules/ffxc/pojo/vo/JwtdFfxcVO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.pojo.vo;
+
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_防范宣传 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdFfxcVO extends JwtdFfxcEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 59 - 0
src/main/java/org/springblade/modules/ffxc/service/IJwtdFfxcService.java

@@ -0,0 +1,59 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import org.springblade.modules.ffxc.pojo.vo.JwtdFfxcVO;
+import org.springblade.modules.ffxc.excel.JwtdFfxcExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 警务团队_防范宣传 服务类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+public interface IJwtdFfxcService extends BaseService<JwtdFfxcEntity> {
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdFfxc 查询参数
+	 * @return IPage<JwtdFfxcVO>
+	 */
+	IPage<JwtdFfxcVO> selectJwtdFfxcPage(IPage<JwtdFfxcVO> page, JwtdFfxcVO jwtdFfxc);
+
+	/**
+	 * 导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdFfxcExcel>
+	 */
+	List<JwtdFfxcExcel> exportJwtdFfxc(Wrapper<JwtdFfxcEntity> queryWrapper);
+}

+ 61 - 0
src/main/java/org/springblade/modules/ffxc/service/impl/JwtdFfxcServiceImpl.java

@@ -0,0 +1,61 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.service.impl;
+
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import org.springblade.modules.ffxc.pojo.vo.JwtdFfxcVO;
+import org.springblade.modules.ffxc.excel.JwtdFfxcExcel;
+import org.springblade.modules.ffxc.mapper.JwtdFfxcMapper;
+import org.springblade.modules.ffxc.service.IJwtdFfxcService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 警务团队_防范宣传 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Service
+public class JwtdFfxcServiceImpl extends BaseServiceImpl<JwtdFfxcMapper, JwtdFfxcEntity> implements IJwtdFfxcService {
+
+	@Override
+	public IPage<JwtdFfxcVO> selectJwtdFfxcPage(IPage<JwtdFfxcVO> page, JwtdFfxcVO jwtdFfxc) {
+		return page.setRecords(baseMapper.selectJwtdFfxcPage(page, jwtdFfxc));
+	}
+
+	@Override
+	public List<JwtdFfxcExcel> exportJwtdFfxc(Wrapper<JwtdFfxcEntity> queryWrapper) {
+		List<JwtdFfxcExcel> jwtdFfxcList = baseMapper.exportJwtdFfxc(queryWrapper);
+		//jwtdFfxcList.forEach(jwtdFfxc -> {
+		//	jwtdFfxc.setTypeName(DictCache.getValue(DictEnum.YES_NO, JwtdFfxcEntity.getType()));
+		//});
+		return jwtdFfxcList;
+	}
+}

+ 58 - 0
src/main/java/org/springblade/modules/ffxc/wrapper/JwtdFfxcWrapper.java

@@ -0,0 +1,58 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxc.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import org.springblade.modules.ffxc.pojo.vo.JwtdFfxcVO;
+import java.util.Objects;
+
+/**
+ * 警务团队_防范宣传 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+public class JwtdFfxcWrapper extends BaseEntityWrapper<JwtdFfxcEntity, JwtdFfxcVO>  {
+
+	public static JwtdFfxcWrapper build() {
+		return new JwtdFfxcWrapper();
+ 	}
+
+	@Override
+	public JwtdFfxcVO entityVO(JwtdFfxcEntity jwtdFfxc) {
+		JwtdFfxcVO jwtdFfxcVO = Objects.requireNonNull(BeanUtil.copyProperties(jwtdFfxc, JwtdFfxcVO.class));
+
+		//User createUser = UserCache.getUser(jwtdFfxc.getCreateUser());
+		//User updateUser = UserCache.getUser(jwtdFfxc.getUpdateUser());
+		//jwtdFfxcVO.setCreateUserName(createUser.getName());
+		//jwtdFfxcVO.setUpdateUserName(updateUser.getName());
+
+		return jwtdFfxcVO;
+	}
+
+}

+ 199 - 0
src/main/java/org/springblade/modules/ffxcLlls/controller/JwtdFfxcLllsController.java

@@ -0,0 +1,199 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.controller;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import jakarta.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import org.springblade.modules.jwtdJfjl.service.IJwtdJfjlService;
+import org.springblade.modules.system.pojo.entity.User;
+import org.springblade.modules.system.service.IUserService;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity;
+import org.springblade.modules.ffxcLlls.pojo.vo.JwtdFfxcLllsVO;
+import org.springblade.modules.ffxcLlls.excel.JwtdFfxcLllsExcel;
+import org.springblade.modules.ffxcLlls.wrapper.JwtdFfxcLllsWrapper;
+import org.springblade.modules.ffxcLlls.service.IJwtdFfxcLllsService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.tool.constant.RoleConstant;
+import java.util.Map;
+import java.util.List;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * 警务团队_防范宣传_浏览历史 控制器
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/jwtdFfxcLlls")
+@Tag(name = "警务团队_防范宣传_浏览历史", description = "警务团队_防范宣传_浏览历史接口")
+public class JwtdFfxcLllsController extends BladeController {
+
+	private final IJwtdFfxcLllsService jwtdFfxcLllsService;
+
+	private final IUserService userService;
+
+	private final IJwtdJfjlService jwtdJfjlService;
+
+	/**
+	 * 警务团队_防范宣传_浏览历史 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@Operation(summary = "详情", description  = "传入jwtdFfxcLlls")
+	public R<JwtdFfxcLllsVO> detail(JwtdFfxcLllsEntity jwtdFfxcLlls) {
+		JwtdFfxcLllsEntity detail = jwtdFfxcLllsService.getOne(Condition.getQueryWrapper(jwtdFfxcLlls));
+		return R.data(JwtdFfxcLllsWrapper.build().entityVO(detail));
+	}
+
+	/**
+	 * 警务团队_防范宣传_浏览历史 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@Operation(summary = "分页", description  = "传入jwtdFfxcLlls")
+	public R<IPage<JwtdFfxcLllsVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdFfxcLlls, Query query) {
+		IPage<JwtdFfxcLllsEntity> pages = jwtdFfxcLllsService.page(Condition.getPage(query), Condition.getQueryWrapper(jwtdFfxcLlls, JwtdFfxcLllsEntity.class));
+		return R.data(JwtdFfxcLllsWrapper.build().pageVO(pages));
+	}
+
+
+	/**
+	 * 警务团队_防范宣传_浏览历史 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "分页", description  = "传入jwtdFfxcLlls")
+	public R<IPage<JwtdFfxcLllsVO>> page(JwtdFfxcLllsVO jwtdFfxcLlls, Query query) {
+		IPage<JwtdFfxcLllsVO> pages = jwtdFfxcLllsService.selectJwtdFfxcLllsPage(Condition.getPage(query), jwtdFfxcLlls);
+		return R.data(pages);
+	}
+
+	/**
+	 * 警务团队_防范宣传_浏览历史 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@Operation(summary = "新增", description  = "传入jwtdFfxcLlls")
+	public R save(@Valid @RequestBody JwtdFfxcLllsEntity jwtdFfxcLlls) {
+		jwtdFfxcLlls.setUserId(AuthUtil.getUserId());
+		return R.status(jwtdFfxcLllsService.save(jwtdFfxcLlls));
+	}
+
+	/**
+	 * 警务团队_防范宣传_浏览历史 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@Operation(summary = "修改", description  = "传入jwtdFfxcLlls")
+	public R update(@Valid @RequestBody JwtdFfxcLllsEntity jwtdFfxcLlls) {
+		JwtdJfjlEntity jwtdJfjl = new JwtdJfjlEntity();
+		jwtdJfjl.setUserId(AuthUtil.getUserId());
+		jwtdJfjl.setType("1");
+		jwtdJfjl.setJfId(jwtdFfxcLlls.getFfxcId());
+		jwtdJfjl.setJf(jwtdFfxcLlls.getJf());
+		jwtdJfjlService.save(jwtdJfjl);
+		jwtdFfxcLlls.setUserId(AuthUtil.getUserId());
+		List<JwtdFfxcLllsEntity> llls = jwtdFfxcLllsService.selectLllsByUserIdAndFfxcId(jwtdFfxcLlls);
+		for (JwtdFfxcLllsEntity ryls : llls) {
+			if (ryls.getLlzt().equals("1") && ryls.getJf() != 0) {
+				jwtdFfxcLlls.setJf(0);
+				break;
+			}
+		}
+		if (jwtdFfxcLlls.getJf() != 0) {
+			User user = userService.getById(AuthUtil.getUserId());
+			Integer jf = user.getJf() + jwtdFfxcLlls.getJf();
+			user.setJf(jf);
+			userService.updateById(user);
+		}
+		return R.status(jwtdFfxcLllsService.updateById(jwtdFfxcLlls));
+	}
+
+	/**
+	 * 警务团队_防范宣传_浏览历史 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@Operation(summary = "新增或修改", description  = "传入jwtdFfxcLlls")
+	public R submit(@Valid @RequestBody JwtdFfxcLllsEntity jwtdFfxcLlls) {
+		return R.status(jwtdFfxcLllsService.saveOrUpdate(jwtdFfxcLlls));
+	}
+
+	/**
+	 * 警务团队_防范宣传_浏览历史 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@Operation(summary = "逻辑删除", description  = "传入ids")
+	public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(jwtdFfxcLllsService.deleteLogic(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 导出数据
+	 */
+	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@GetMapping("/export-jwtdFfxcLlls")
+	@ApiOperationSupport(order = 8)
+	@Operation(summary = "导出数据", description  = "传入jwtdFfxcLlls")
+	public void exportJwtdFfxcLlls(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdFfxcLlls, BladeUser bladeUser, HttpServletResponse response) {
+		QueryWrapper<JwtdFfxcLllsEntity> queryWrapper = Condition.getQueryWrapper(jwtdFfxcLlls, JwtdFfxcLllsEntity.class);
+		//if (!AuthUtil.isAdministrator()) {
+		//	queryWrapper.lambda().eq(JwtdFfxcLllsEntity::getTenantId, bladeUser.getTenantId());
+		//}
+		//queryWrapper.lambda().eq(JwtdFfxcLllsEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
+		List<JwtdFfxcLllsExcel> list = jwtdFfxcLllsService.exportJwtdFfxcLlls(queryWrapper);
+		ExcelUtil.export(response, "警务团队_防范宣传_浏览历史数据" + DateUtil.time(), "警务团队_防范宣传_浏览历史数据表", list, JwtdFfxcLllsExcel.class);
+	}
+
+	/**
+	 * 防范宣传浏览记录
+	 */
+	@GetMapping("getFfxcLljl")
+	public R getFfxcLljl(Long id) {
+		return R.data(jwtdFfxcLllsService.getFfxcLljl(id));
+	}
+}

+ 73 - 0
src/main/java/org/springblade/modules/ffxcLlls/excel/JwtdFfxcLllsExcel.java

@@ -0,0 +1,73 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.excel;
+
+
+import lombok.Data;
+
+import java.io.Serializable;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serial;
+
+
+/**
+ * 警务团队_防范宣传_浏览历史 Excel实体类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class JwtdFfxcLllsExcel implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 防范宣传id
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("防范宣传id")
+	private Long ffxcId;
+	/**
+	 * 用户id
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("用户id")
+	private Long userId;
+	/**
+	 * 浏览状态
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("浏览状态")
+	private String llzt;
+
+}

+ 66 - 0
src/main/java/org/springblade/modules/ffxcLlls/mapper/JwtdFfxcLllsMapper.java

@@ -0,0 +1,66 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.mapper;
+
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity;
+import org.springblade.modules.ffxcLlls.pojo.vo.JwtdFfxcLllsVO;
+import org.springblade.modules.ffxcLlls.excel.JwtdFfxcLllsExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 警务团队_防范宣传_浏览历史 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+public interface JwtdFfxcLllsMapper extends BaseMapper<JwtdFfxcLllsEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdFfxcLlls 查询参数
+	 * @return List<JwtdFfxcLllsVO>
+	 */
+	List<JwtdFfxcLllsVO> selectJwtdFfxcLllsPage(IPage page, JwtdFfxcLllsVO jwtdFfxcLlls);
+
+	/**
+	 * 获取导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdFfxcLllsExcel>
+	 */
+	List<JwtdFfxcLllsExcel> exportJwtdFfxcLlls(@Param("ew") Wrapper<JwtdFfxcLllsEntity> queryWrapper);
+
+    List<JwtdFfxcEntity> getFfxcLljl(Long id);
+
+	List<JwtdFfxcLllsEntity> selectLllsByUserIdAndFfxcId(JwtdFfxcLllsEntity jwtdFfxcLlls);
+}

+ 34 - 0
src/main/java/org/springblade/modules/ffxcLlls/mapper/JwtdFfxcLllsMapper.xml

@@ -0,0 +1,34 @@
+<?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="org.springblade.modules.ffxcLlls.mapper.JwtdFfxcLllsMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="jwtdFfxcLllsResultMap" type="org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity">
+        <result column="ffxc_id" property="ffxcId"/>
+        <result column="user_id" property="userId"/>
+        <result column="llzt" property="llzt"/>
+    </resultMap>
+
+    <select id="selectJwtdFfxcLllsPage" resultMap="jwtdFfxcLllsResultMap">
+        select * from jwtd_ffxc_llls where is_deleted = 0
+    </select>
+
+    <select id="exportJwtdFfxcLlls" resultType="org.springblade.modules.ffxcLlls.excel.JwtdFfxcLllsExcel">
+        SELECT * FROM jwtd_ffxc_llls ${ew.customSqlSegment}
+    </select>
+
+    <select id="getFfxcLljl" resultMap="jwtdFfxcLllsResultMap">
+        select
+            bu.name,
+            jfl.create_time,
+            case when jfl.llzt = '0' then '未完成' when jfl.llzt = '1' then '已完成' end as llzt,
+            jfl.jf
+        from jwtd_ffxc_llls jfl
+        left join blade_user bu on bu.id = jfl.user_id
+        where jfl.is_deleted = 0 and jfl.ffxc_id = #{id}
+    </select>
+
+    <select id="selectLllsByUserIdAndFfxcId" resultMap="jwtdFfxcLllsResultMap">
+        select * from jwtd_ffxc_llls where is_deleted = 0 and user_id = #{userId} and ffxc_id = #{ffxcId}
+    </select>
+</mapper>

+ 45 - 0
src/main/java/org/springblade/modules/ffxcLlls/pojo/dto/JwtdFfxcLllsDTO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.pojo.dto;
+
+import org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_防范宣传_浏览历史 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdFfxcLllsDTO extends JwtdFfxcLllsEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 77 - 0
src/main/java/org/springblade/modules/ffxcLlls/pojo/entity/JwtdFfxcLllsEntity.java

@@ -0,0 +1,77 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.springblade.core.mp.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import org.springblade.core.tenant.mp.TenantEntity;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_防范宣传_浏览历史 实体类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Data
+@TableName("jwtd_ffxc_llls")
+@Schema(description = "JwtdFfxcLllsEntity对象")
+@EqualsAndHashCode(callSuper = true)
+public class JwtdFfxcLllsEntity extends BaseEntity {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 防范宣传id
+	 */
+	@Schema(description = "防范宣传id")
+	private Long ffxcId;
+	/**
+	 * 用户id
+	 */
+	@Schema(description = "用户id")
+	private Long userId;
+	/**
+	 * 浏览状态
+	 */
+	@Schema(description = "浏览状态")
+	private String llzt;
+	/**
+	 * 积分
+	 */
+	@Schema(description = "积分")
+	private Integer jf;
+	/**
+	 * 浏览人姓名
+	 */
+	@TableField(exist = false)
+	private String name;
+}

+ 45 - 0
src/main/java/org/springblade/modules/ffxcLlls/pojo/vo/JwtdFfxcLllsVO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.pojo.vo;
+
+import org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_防范宣传_浏览历史 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdFfxcLllsVO extends JwtdFfxcLllsEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 64 - 0
src/main/java/org/springblade/modules/ffxcLlls/service/IJwtdFfxcLllsService.java

@@ -0,0 +1,64 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity;
+import org.springblade.modules.ffxcLlls.pojo.vo.JwtdFfxcLllsVO;
+import org.springblade.modules.ffxcLlls.excel.JwtdFfxcLllsExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 警务团队_防范宣传_浏览历史 服务类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+public interface IJwtdFfxcLllsService extends BaseService<JwtdFfxcLllsEntity> {
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdFfxcLlls 查询参数
+	 * @return IPage<JwtdFfxcLllsVO>
+	 */
+	IPage<JwtdFfxcLllsVO> selectJwtdFfxcLllsPage(IPage<JwtdFfxcLllsVO> page, JwtdFfxcLllsVO jwtdFfxcLlls);
+
+	/**
+	 * 导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdFfxcLllsExcel>
+	 */
+	List<JwtdFfxcLllsExcel> exportJwtdFfxcLlls(Wrapper<JwtdFfxcLllsEntity> queryWrapper);
+
+    List<JwtdFfxcEntity> getFfxcLljl(Long id);
+
+	List<JwtdFfxcLllsEntity> selectLllsByUserIdAndFfxcId(JwtdFfxcLllsEntity jwtdFfxcLlls);
+}

+ 73 - 0
src/main/java/org/springblade/modules/ffxcLlls/service/impl/JwtdFfxcLllsServiceImpl.java

@@ -0,0 +1,73 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.service.impl;
+
+import org.springblade.modules.ffxc.pojo.entity.JwtdFfxcEntity;
+import org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity;
+import org.springblade.modules.ffxcLlls.pojo.vo.JwtdFfxcLllsVO;
+import org.springblade.modules.ffxcLlls.excel.JwtdFfxcLllsExcel;
+import org.springblade.modules.ffxcLlls.mapper.JwtdFfxcLllsMapper;
+import org.springblade.modules.ffxcLlls.service.IJwtdFfxcLllsService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 警务团队_防范宣传_浏览历史 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+@Service
+public class JwtdFfxcLllsServiceImpl extends BaseServiceImpl<JwtdFfxcLllsMapper, JwtdFfxcLllsEntity> implements IJwtdFfxcLllsService {
+
+	@Override
+	public IPage<JwtdFfxcLllsVO> selectJwtdFfxcLllsPage(IPage<JwtdFfxcLllsVO> page, JwtdFfxcLllsVO jwtdFfxcLlls) {
+		return page.setRecords(baseMapper.selectJwtdFfxcLllsPage(page, jwtdFfxcLlls));
+	}
+
+	@Override
+	public List<JwtdFfxcLllsExcel> exportJwtdFfxcLlls(Wrapper<JwtdFfxcLllsEntity> queryWrapper) {
+		List<JwtdFfxcLllsExcel> jwtdFfxcLllsList = baseMapper.exportJwtdFfxcLlls(queryWrapper);
+		//jwtdFfxcLllsList.forEach(jwtdFfxcLlls -> {
+		//	jwtdFfxcLlls.setTypeName(DictCache.getValue(DictEnum.YES_NO, JwtdFfxcLllsEntity.getType()));
+		//});
+		return jwtdFfxcLllsList;
+	}
+
+	@Override
+	public List<JwtdFfxcEntity> getFfxcLljl(Long id) {
+		return baseMapper.getFfxcLljl(id);
+	}
+
+	@Override
+	public List<JwtdFfxcLllsEntity> selectLllsByUserIdAndFfxcId(JwtdFfxcLllsEntity jwtdFfxcLlls) {
+		return baseMapper.selectLllsByUserIdAndFfxcId(jwtdFfxcLlls);
+	}
+
+}

+ 58 - 0
src/main/java/org/springblade/modules/ffxcLlls/wrapper/JwtdFfxcLllsWrapper.java

@@ -0,0 +1,58 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.ffxcLlls.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.ffxcLlls.pojo.entity.JwtdFfxcLllsEntity;
+import org.springblade.modules.ffxcLlls.pojo.vo.JwtdFfxcLllsVO;
+import java.util.Objects;
+
+/**
+ * 警务团队_防范宣传_浏览历史 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-11-05
+ */
+public class JwtdFfxcLllsWrapper extends BaseEntityWrapper<JwtdFfxcLllsEntity, JwtdFfxcLllsVO>  {
+
+	public static JwtdFfxcLllsWrapper build() {
+		return new JwtdFfxcLllsWrapper();
+ 	}
+
+	@Override
+	public JwtdFfxcLllsVO entityVO(JwtdFfxcLllsEntity jwtdFfxcLlls) {
+		JwtdFfxcLllsVO jwtdFfxcLllsVO = Objects.requireNonNull(BeanUtil.copyProperties(jwtdFfxcLlls, JwtdFfxcLllsVO.class));
+
+		//User createUser = UserCache.getUser(jwtdFfxcLlls.getCreateUser());
+		//User updateUser = UserCache.getUser(jwtdFfxcLlls.getUpdateUser());
+		//jwtdFfxcLllsVO.setCreateUserName(createUser.getName());
+		//jwtdFfxcLllsVO.setUpdateUserName(updateUser.getName());
+
+		return jwtdFfxcLllsVO;
+	}
+
+}

+ 188 - 0
src/main/java/org/springblade/modules/jwtdJfjl/controller/JwtdJfjlController.java

@@ -0,0 +1,188 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.controller;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import jakarta.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.system.pojo.entity.User;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import org.springblade.modules.jwtdJfjl.pojo.vo.JwtdJfjlVO;
+import org.springblade.modules.jwtdJfjl.excel.JwtdJfjlExcel;
+import org.springblade.modules.jwtdJfjl.wrapper.JwtdJfjlWrapper;
+import org.springblade.modules.jwtdJfjl.service.IJwtdJfjlService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.tool.constant.BladeConstant;
+import org.springblade.core.tool.constant.RoleConstant;
+import java.util.Map;
+import java.util.List;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * 警务团队_积分记录 控制器
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/jwtdJfjl")
+@Tag(name = "警务团队_积分记录", description = "警务团队_积分记录接口")
+public class JwtdJfjlController extends BladeController {
+
+	private final IJwtdJfjlService jwtdJfjlService;
+
+	/**
+	 * 警务团队_积分记录 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@Operation(summary = "详情", description  = "传入jwtdJfjl")
+	public R<JwtdJfjlVO> detail(JwtdJfjlEntity jwtdJfjl) {
+		JwtdJfjlEntity detail = jwtdJfjlService.getOne(Condition.getQueryWrapper(jwtdJfjl));
+		return R.data(JwtdJfjlWrapper.build().entityVO(detail));
+	}
+
+	/**
+	 * 警务团队_积分记录 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@Operation(summary = "分页", description  = "传入jwtdJfjl")
+	public R<IPage<JwtdJfjlVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdJfjl, Query query) {
+		IPage<JwtdJfjlEntity> pages = jwtdJfjlService.page(Condition.getPage(query), Condition.getQueryWrapper(jwtdJfjl, JwtdJfjlEntity.class));
+		return R.data(JwtdJfjlWrapper.build().pageVO(pages));
+	}
+
+
+	/**
+	 * 警务团队_积分记录 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "分页", description  = "传入jwtdJfjl")
+	public R<IPage<JwtdJfjlVO>> page(JwtdJfjlVO jwtdJfjl, Query query) {
+		IPage<JwtdJfjlVO> pages = jwtdJfjlService.selectJwtdJfjlPage(Condition.getPage(query), jwtdJfjl);
+		return R.data(pages);
+	}
+
+	/**
+	 * 警务团队_积分记录 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@Operation(summary = "新增", description  = "传入jwtdJfjl")
+	public R save(@Valid @RequestBody JwtdJfjlEntity jwtdJfjl) {
+		return R.status(jwtdJfjlService.save(jwtdJfjl));
+	}
+
+	/**
+	 * 警务团队_积分记录 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@Operation(summary = "修改", description  = "传入jwtdJfjl")
+	public R update(@Valid @RequestBody JwtdJfjlEntity jwtdJfjl) {
+		return R.status(jwtdJfjlService.updateById(jwtdJfjl));
+	}
+
+	/**
+	 * 警务团队_积分记录 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@Operation(summary = "新增或修改", description  = "传入jwtdJfjl")
+	public R submit(@Valid @RequestBody JwtdJfjlEntity jwtdJfjl) {
+		return R.status(jwtdJfjlService.saveOrUpdate(jwtdJfjl));
+	}
+
+	/**
+	 * 警务团队_积分记录 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@Operation(summary = "逻辑删除", description  = "传入ids")
+	public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(jwtdJfjlService.deleteLogic(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 导出数据
+	 */
+	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@GetMapping("/export-jwtdJfjl")
+	@ApiOperationSupport(order = 8)
+	@Operation(summary = "导出数据", description  = "传入jwtdJfjl")
+	public void exportJwtdJfjl(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdJfjl, BladeUser bladeUser, HttpServletResponse response) {
+		QueryWrapper<JwtdJfjlEntity> queryWrapper = Condition.getQueryWrapper(jwtdJfjl, JwtdJfjlEntity.class);
+		//if (!AuthUtil.isAdministrator()) {
+		//	queryWrapper.lambda().eq(JwtdJfjlEntity::getTenantId, bladeUser.getTenantId());
+		//}
+		//queryWrapper.lambda().eq(JwtdJfjlEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
+		List<JwtdJfjlExcel> list = jwtdJfjlService.exportJwtdJfjl(queryWrapper);
+		ExcelUtil.export(response, "警务团队_积分记录数据" + DateUtil.time(), "警务团队_积分记录数据表", list, JwtdJfjlExcel.class);
+	}
+
+	/**
+	 * 积分明细
+	 */
+	@GetMapping("getJlList")
+	public R getJlList(String type) {
+		return R.data(jwtdJfjlService.getJlList(type, AuthUtil.getUserId()));
+	}
+
+	/**
+	 * 获取记录
+	 */
+	@GetMapping("getHqjl")
+	public R getHqjl(Long userId) {
+		return R.data(jwtdJfjlService.getHqjl(userId));
+	}
+
+	/**
+	 * 兑换记录
+	 */
+	@GetMapping("getDhjl")
+	public R getDhjl(Long userId) {
+		return R.data(jwtdJfjlService.getDhjl(userId));
+	}
+}

+ 79 - 0
src/main/java/org/springblade/modules/jwtdJfjl/excel/JwtdJfjlExcel.java

@@ -0,0 +1,79 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.excel;
+
+
+import lombok.Data;
+
+import java.io.Serializable;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serial;
+
+
+/**
+ * 警务团队_积分记录 Excel实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class JwtdJfjlExcel implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 用户id
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("用户id")
+	private Long userId;
+	/**
+	 * 1-积分获取记录  2-积分兑换记录
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("1-积分获取记录  2-积分兑换记录")
+	private String type;
+	/**
+	 * 积分id(对应ffxc表和dhjl表)
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("积分id(对应ffxc表和dhjl表)")
+	private Long jfId;
+	/**
+	 * 积分
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("积分")
+	private Integer jf;
+
+}

+ 67 - 0
src/main/java/org/springblade/modules/jwtdJfjl/mapper/JwtdJfjlMapper.java

@@ -0,0 +1,67 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.mapper;
+
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import org.springblade.modules.jwtdJfjl.pojo.vo.JwtdJfjlVO;
+import org.springblade.modules.jwtdJfjl.excel.JwtdJfjlExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 警务团队_积分记录 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public interface JwtdJfjlMapper extends BaseMapper<JwtdJfjlEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdJfjl 查询参数
+	 * @return List<JwtdJfjlVO>
+	 */
+	List<JwtdJfjlVO> selectJwtdJfjlPage(IPage page, JwtdJfjlVO jwtdJfjl);
+
+	/**
+	 * 获取导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdJfjlExcel>
+	 */
+	List<JwtdJfjlExcel> exportJwtdJfjl(@Param("ew") Wrapper<JwtdJfjlEntity> queryWrapper);
+
+    List<JwtdJfjlEntity> getJlList(String type, Long userId);
+
+	List<JwtdJfjlEntity> getHqjl(Long userId);
+
+	List<JwtdJfjlEntity> getDhjl(Long userId);
+}

+ 92 - 0
src/main/java/org/springblade/modules/jwtdJfjl/mapper/JwtdJfjlMapper.xml

@@ -0,0 +1,92 @@
+<?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="org.springblade.modules.jwtdJfjl.mapper.JwtdJfjlMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="jwtdJfjlResultMap" type="org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity">
+        <result column="user_id" property="userId"/>
+        <result column="type" property="type"/>
+        <result column="jf_id" property="jfId"/>
+        <result column="jf" property="jf"/>
+    </resultMap>
+
+    <select id="selectJwtdJfjlPage" resultMap="jwtdJfjlResultMap">
+        SELECT
+            bu.id,
+            bu.name,
+            bu.sfzh,
+            bu.phone,
+            bu.dz,
+            SUM ( jj.jf ) + bu.jf AS zjf,
+            SUM ( jj.jf ) AS dhjf,
+            bu.jf
+        FROM
+            blade_user bu
+        LEFT JOIN jwtd_jfjl jj ON bu.id = jj.user_id AND jj.type = '2'
+        WHERE
+            bu.is_deleted = 0
+        GROUP BY
+            bu.id,
+            bu.name,
+            bu.sfzh,
+            bu.phone,
+            bu.dz,
+            bu.jf
+    </select>
+
+    <select id="exportJwtdJfjl" resultType="org.springblade.modules.jwtdJfjl.excel.JwtdJfjlExcel">
+        SELECT * FROM jwtd_jfjl ${ew.customSqlSegment}
+    </select>
+
+    <select id="getJlList" resultMap="jwtdJfjlResultMap">
+        select
+            case when jf.xcbt is null then js.spmc when js.spmc is null then jf.xcbt end as name,
+            jj.create_time,
+            jj.jf,
+            jsd.ddbh
+        from jwtd_jfjl jj
+        left join jwtd_ffxc jf on jj.jf_id = jf.id
+        left join jwtd_spgl_dhjl jsd on jj.jf_id = jsd.id
+        left join jwtd_spgl js on js.id = jsd.sp_id
+        where jj.is_deleted = 0 and jj.user_id = #{userId}
+        <if test="type == '积分获取'">
+            and jj.type = '1'
+        </if>
+        <if test="type == '积分兑换'">
+            and jj.type = '2'
+        </if>
+    </select>
+
+    <select id="getHqjl" resultMap="jwtdJfjlResultMap">
+        select
+            jf.xcbt,
+            jf.fbdw,
+            jf.create_time,
+            jj.jf
+        from jwtd_jfjl jj
+        left join jwtd_ffxc jf on jj.jf_id = jf.id
+        where jj.is_deleted = 0 and jj.user_id = #{userId} and jj.type = '1'
+    </select>
+
+    <select id="getDhjl" resultMap="jwtdJfjlResultMap">
+        SELECT
+            jsd.ddbh,
+            SUM ( jsd.spsl ) AS spsl,
+            SUM ( jsd.xhjf ) AS xhjf,
+            jsd.lqzt,
+            jsd.create_time,
+            jsd.update_time,
+            bu.name as fhr
+        FROM
+            jwtd_spgl_dhjl jsd
+        LEFT JOIN blade_user bu ON bu.id = jsd.fhr
+        WHERE
+            user_id = #{userId}
+        GROUP BY
+            jsd.ddbh,
+            jsd.lqzt,
+            jsd.create_time,
+            jsd.update_time,
+            bu.name
+    </select>
+</mapper>

+ 45 - 0
src/main/java/org/springblade/modules/jwtdJfjl/pojo/dto/JwtdJfjlDTO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.pojo.dto;
+
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_积分记录 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdJfjlDTO extends JwtdJfjlEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 98 - 0
src/main/java/org/springblade/modules/jwtdJfjl/pojo/entity/JwtdJfjlEntity.java

@@ -0,0 +1,98 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.springblade.core.mp.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import org.springblade.core.tenant.mp.TenantEntity;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_积分记录 实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@TableName("jwtd_jfjl")
+@Schema(description = "JwtdJfjlEntity对象")
+@EqualsAndHashCode(callSuper = true)
+public class JwtdJfjlEntity extends BaseEntity {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 用户id
+	 */
+	@Schema(description = "用户id")
+	private Long userId;
+	/**
+	 * 1-积分获取记录  2-积分兑换记录
+	 */
+	@Schema(description = "1-积分获取记录  2-积分兑换记录")
+	private String type;
+	/**
+	 * 积分id(对应ffxc表和dhjl表)
+	 */
+	@Schema(description = "积分id(对应ffxc表和dhjl表)")
+	private Long jfId;
+	/**
+	 * 积分
+	 */
+	@Schema(description = "积分")
+	private Integer jf;
+	@TableField(exist = false)
+	private String name;
+	@TableField(exist = false)
+	private String phone;
+	@TableField(exist = false)
+	private String sfzh;
+	@TableField(exist = false)
+	private String dz;
+	@TableField(exist = false)
+	private String zjf;
+	@TableField(exist = false)
+	private String dhjf;
+	@TableField(exist = false)
+	private String ddbh;
+	@TableField(exist = false)
+	private String xcbt;
+	@TableField(exist = false)
+	private String fbdw;
+	@TableField(exist = false)
+	private String spsl;
+	@TableField(exist = false)
+	private String xhjf;
+	@TableField(exist = false)
+	private String lqzt;
+	@TableField(exist = false)
+	private String fhr;
+}

+ 45 - 0
src/main/java/org/springblade/modules/jwtdJfjl/pojo/vo/JwtdJfjlVO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.pojo.vo;
+
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_积分记录 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdJfjlVO extends JwtdJfjlEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 65 - 0
src/main/java/org/springblade/modules/jwtdJfjl/service/IJwtdJfjlService.java

@@ -0,0 +1,65 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import org.springblade.modules.jwtdJfjl.pojo.vo.JwtdJfjlVO;
+import org.springblade.modules.jwtdJfjl.excel.JwtdJfjlExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 警务团队_积分记录 服务类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public interface IJwtdJfjlService extends BaseService<JwtdJfjlEntity> {
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdJfjl 查询参数
+	 * @return IPage<JwtdJfjlVO>
+	 */
+	IPage<JwtdJfjlVO> selectJwtdJfjlPage(IPage<JwtdJfjlVO> page, JwtdJfjlVO jwtdJfjl);
+
+	/**
+	 * 导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdJfjlExcel>
+	 */
+	List<JwtdJfjlExcel> exportJwtdJfjl(Wrapper<JwtdJfjlEntity> queryWrapper);
+
+	List<JwtdJfjlEntity> getJlList(String type, Long userId);
+
+	List<JwtdJfjlEntity> getHqjl(Long userId);
+
+	List<JwtdJfjlEntity> getDhjl(Long userId);
+}

+ 77 - 0
src/main/java/org/springblade/modules/jwtdJfjl/service/impl/JwtdJfjlServiceImpl.java

@@ -0,0 +1,77 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.service.impl;
+
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import org.springblade.modules.jwtdJfjl.pojo.vo.JwtdJfjlVO;
+import org.springblade.modules.jwtdJfjl.excel.JwtdJfjlExcel;
+import org.springblade.modules.jwtdJfjl.mapper.JwtdJfjlMapper;
+import org.springblade.modules.jwtdJfjl.service.IJwtdJfjlService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 警务团队_积分记录 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Service
+public class JwtdJfjlServiceImpl extends BaseServiceImpl<JwtdJfjlMapper, JwtdJfjlEntity> implements IJwtdJfjlService {
+
+	@Override
+	public IPage<JwtdJfjlVO> selectJwtdJfjlPage(IPage<JwtdJfjlVO> page, JwtdJfjlVO jwtdJfjl) {
+		return page.setRecords(baseMapper.selectJwtdJfjlPage(page, jwtdJfjl));
+	}
+
+	@Override
+	public List<JwtdJfjlExcel> exportJwtdJfjl(Wrapper<JwtdJfjlEntity> queryWrapper) {
+		List<JwtdJfjlExcel> jwtdJfjlList = baseMapper.exportJwtdJfjl(queryWrapper);
+		//jwtdJfjlList.forEach(jwtdJfjl -> {
+		//	jwtdJfjl.setTypeName(DictCache.getValue(DictEnum.YES_NO, JwtdJfjlEntity.getType()));
+		//});
+		return jwtdJfjlList;
+	}
+
+	@Override
+	public List<JwtdJfjlEntity> getJlList(String type, Long userId) {
+		return baseMapper.getJlList(type, userId);
+	}
+
+	@Override
+	public List<JwtdJfjlEntity> getHqjl(Long userId) {
+		return baseMapper.getHqjl(userId);
+	}
+
+	@Override
+	public List<JwtdJfjlEntity> getDhjl(Long userId) {
+		return baseMapper.getDhjl(userId);
+	}
+
+}

+ 58 - 0
src/main/java/org/springblade/modules/jwtdJfjl/wrapper/JwtdJfjlWrapper.java

@@ -0,0 +1,58 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJfjl.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import org.springblade.modules.jwtdJfjl.pojo.vo.JwtdJfjlVO;
+import java.util.Objects;
+
+/**
+ * 警务团队_积分记录 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public class JwtdJfjlWrapper extends BaseEntityWrapper<JwtdJfjlEntity, JwtdJfjlVO>  {
+
+	public static JwtdJfjlWrapper build() {
+		return new JwtdJfjlWrapper();
+ 	}
+
+	@Override
+	public JwtdJfjlVO entityVO(JwtdJfjlEntity jwtdJfjl) {
+		JwtdJfjlVO jwtdJfjlVO = Objects.requireNonNull(BeanUtil.copyProperties(jwtdJfjl, JwtdJfjlVO.class));
+
+		//User createUser = UserCache.getUser(jwtdJfjl.getCreateUser());
+		//User updateUser = UserCache.getUser(jwtdJfjl.getUpdateUser());
+		//jwtdJfjlVO.setCreateUserName(createUser.getName());
+		//jwtdJfjlVO.setUpdateUserName(updateUser.getName());
+
+		return jwtdJfjlVO;
+	}
+
+}

+ 171 - 0
src/main/java/org/springblade/modules/jwtdJwgk/controller/JwtdJwgkController.java

@@ -0,0 +1,171 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.controller;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import jakarta.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.system.pojo.entity.User;
+import org.springblade.modules.system.service.IUserService;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.jwtdJwgk.pojo.entity.JwtdJwgkEntity;
+import org.springblade.modules.jwtdJwgk.pojo.vo.JwtdJwgkVO;
+import org.springblade.modules.jwtdJwgk.excel.JwtdJwgkExcel;
+import org.springblade.modules.jwtdJwgk.wrapper.JwtdJwgkWrapper;
+import org.springblade.modules.jwtdJwgk.service.IJwtdJwgkService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.tool.constant.BladeConstant;
+import org.springblade.core.tool.constant.RoleConstant;
+import java.util.Map;
+import java.util.List;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * 警务团队_警务公开 控制器
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/jwtdJwgk")
+@Tag(name = "警务团队_警务公开", description = "警务团队_警务公开接口")
+public class JwtdJwgkController extends BladeController {
+
+	private final IJwtdJwgkService jwtdJwgkService;
+
+	private final IUserService userService;
+
+	/**
+	 * 警务团队_警务公开 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@Operation(summary = "详情", description  = "传入jwtdJwgk")
+	public R<JwtdJwgkVO> detail(JwtdJwgkEntity jwtdJwgk) {
+		JwtdJwgkEntity detail = jwtdJwgkService.getOne(Condition.getQueryWrapper(jwtdJwgk));
+		return R.data(JwtdJwgkWrapper.build().entityVO(detail));
+	}
+
+	/**
+	 * 警务团队_警务公开 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@Operation(summary = "分页", description  = "传入jwtdJwgk")
+	public R<IPage<JwtdJwgkVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdJwgk, Query query) {
+		IPage<JwtdJwgkEntity> pages = jwtdJwgkService.page(Condition.getPage(query), Condition.getQueryWrapper(jwtdJwgk, JwtdJwgkEntity.class));
+		return R.data(JwtdJwgkWrapper.build().pageVO(pages));
+	}
+
+
+	/**
+	 * 警务团队_警务公开 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "分页", description  = "传入jwtdJwgk")
+	public R<IPage<JwtdJwgkVO>> page(JwtdJwgkVO jwtdJwgk, Query query) {
+		IPage<JwtdJwgkVO> pages = jwtdJwgkService.selectJwtdJwgkPage(Condition.getPage(query), jwtdJwgk);
+		return R.data(pages);
+	}
+
+	/**
+	 * 警务团队_警务公开 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@Operation(summary = "新增", description  = "传入jwtdJwgk")
+	public R save(@Valid @RequestBody JwtdJwgkEntity jwtdJwgk) {
+		JwtdJwgkEntity jh = jwtdJwgkService.selectJh(jwtdJwgk.getJh());
+		if (jh != null) {
+			return R.fail("已有该警号,请重新输入警号");
+		}
+		return R.status(jwtdJwgkService.save(jwtdJwgk));
+	}
+
+	/**
+	 * 警务团队_警务公开 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@Operation(summary = "修改", description  = "传入jwtdJwgk")
+	public R update(@Valid @RequestBody JwtdJwgkEntity jwtdJwgk) {
+		return R.status(jwtdJwgkService.updateById(jwtdJwgk));
+	}
+
+	/**
+	 * 警务团队_警务公开 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@Operation(summary = "新增或修改", description  = "传入jwtdJwgk")
+	public R submit(@Valid @RequestBody JwtdJwgkEntity jwtdJwgk) {
+		return R.status(jwtdJwgkService.saveOrUpdate(jwtdJwgk));
+	}
+
+	/**
+	 * 警务团队_警务公开 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@Operation(summary = "逻辑删除", description  = "传入ids")
+	public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(jwtdJwgkService.deleteLogic(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 导出数据
+	 */
+	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@GetMapping("/export-jwtdJwgk")
+	@ApiOperationSupport(order = 8)
+	@Operation(summary = "导出数据", description  = "传入jwtdJwgk")
+	public void exportJwtdJwgk(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdJwgk, BladeUser bladeUser, HttpServletResponse response) {
+		QueryWrapper<JwtdJwgkEntity> queryWrapper = Condition.getQueryWrapper(jwtdJwgk, JwtdJwgkEntity.class);
+		//if (!AuthUtil.isAdministrator()) {
+		//	queryWrapper.lambda().eq(JwtdJwgkEntity::getTenantId, bladeUser.getTenantId());
+		//}
+		//queryWrapper.lambda().eq(JwtdJwgkEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
+		List<JwtdJwgkExcel> list = jwtdJwgkService.exportJwtdJwgk(queryWrapper);
+		ExcelUtil.export(response, "警务团队_警务公开数据" + DateUtil.time(), "警务团队_警务公开数据表", list, JwtdJwgkExcel.class);
+	}
+
+}

+ 115 - 0
src/main/java/org/springblade/modules/jwtdJwgk/excel/JwtdJwgkExcel.java

@@ -0,0 +1,115 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.excel;
+
+
+import lombok.Data;
+
+import java.io.Serializable;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serial;
+
+
+/**
+ * 警务团队_警务公开 Excel实体类
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class JwtdJwgkExcel implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 姓名
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("姓名")
+	private String name;
+	/**
+	 * 性别
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("性别")
+	private String sex;
+	/**
+	 * 警号
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("警号")
+	private String jh;
+	/**
+	 * 联系电话
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("联系电话")
+	private String phone;
+	/**
+	 * 管辖社区
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("管辖社区")
+	private Long gxsqId;
+	/**
+	 * 所属警务室
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("所属警务室")
+	private Long jwsId;
+	/**
+	 * 所属派出所
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("所属派出所")
+	private Long pcsId;
+	/**
+	 * 职务类别
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("职务类别")
+	private String zwlb;
+	/**
+	 * 工作职责
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("工作职责")
+	private String gzzz;
+	/**
+	 * 照片
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("照片")
+	private String zp;
+
+}

+ 63 - 0
src/main/java/org/springblade/modules/jwtdJwgk/mapper/JwtdJwgkMapper.java

@@ -0,0 +1,63 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.mapper;
+
+import org.springblade.modules.jwtdJwgk.pojo.entity.JwtdJwgkEntity;
+import org.springblade.modules.jwtdJwgk.pojo.vo.JwtdJwgkVO;
+import org.springblade.modules.jwtdJwgk.excel.JwtdJwgkExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 警务团队_警务公开 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+public interface JwtdJwgkMapper extends BaseMapper<JwtdJwgkEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdJwgk 查询参数
+	 * @return List<JwtdJwgkVO>
+	 */
+	List<JwtdJwgkVO> selectJwtdJwgkPage(IPage page, JwtdJwgkVO jwtdJwgk);
+
+	/**
+	 * 获取导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdJwgkExcel>
+	 */
+	List<JwtdJwgkExcel> exportJwtdJwgk(@Param("ew") Wrapper<JwtdJwgkEntity> queryWrapper);
+
+	JwtdJwgkEntity selectJh(String jh);
+}

+ 63 - 0
src/main/java/org/springblade/modules/jwtdJwgk/mapper/JwtdJwgkMapper.xml

@@ -0,0 +1,63 @@
+<?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="org.springblade.modules.jwtdJwgk.mapper.JwtdJwgkMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="jwtdJwgkResultMap" type="org.springblade.modules.jwtdJwgk.pojo.entity.JwtdJwgkEntity">
+        <result column="name" property="name"/>
+        <result column="sex" property="sex"/>
+        <result column="jh" property="jh"/>
+        <result column="phone" property="phone"/>
+        <result column="gxsq_id" property="gxsqId"/>
+        <result column="jws_id" property="jwsId"/>
+        <result column="pcs_id" property="pcsId"/>
+        <result column="zwlb" property="zwlb"/>
+        <result column="gzzz" property="gzzz"/>
+        <result column="zp" property="zp"/>
+    </resultMap>
+
+    <select id="selectJwtdJwgkPage" resultMap="jwtdJwgkResultMap">
+        select
+            bu.name,
+            bu.sex,
+            bu.jh,
+            bu.phone,
+            bu.gxsq_id,
+            bu.jws_id,
+            bu.pcs_id,
+            bd.dept_name as ssdwMc,
+            gxsq.dept_name as gxsqMc,
+            jj.jwsmc
+        from jwtd_jwgk bu
+        left join blade_dept bd on bd.id = bu.pcs_id
+        left join blade_dept gxsq on gxsq.id = bu.gxsq_id
+        left join jdrh.jlrh_jws jj on jj.id = bu.jws_id
+        where bu.is_deleted = 0
+        <if test="jwtdJwgk.name != null and jwtdJwgk.name != ''">
+            and bu.name = #{jwtdJwgk.name}
+        </if>
+        <if test="jwtdJwgk.sex != null and jwtdJwgk.sex = ''">
+            and bu.sex = #{jwtdJwgk.sex}
+        </if>
+        <if test="jwtdJwgk.phone != null and jwtdJwgk.phone = ''">
+            and bu.phone = #{jwtdJwgk.phone}
+        </if>
+        <if test="jwtdJwgk.pcsId != null and jwtdJwgk.pcsId = ''">
+            and bu.pcs_id = #{jwtdJwgk.pcsId}
+        </if>
+        <if test="jwtdJwgk.jwsId != null and jwtdJwgk.jwsId = ''">
+            and bu.jws_id = #{jwtdJwgk.jwsId}
+        </if>
+        <if test="jwtdJwgk.gxsqId != null and jwtdJwgk.gxsqId = ''">
+            and bu.gxsq_id = #{jwtdJwgk.gxsqId}
+        </if>
+    </select>
+
+    <select id="exportJwtdJwgk" resultType="org.springblade.modules.jwtdJwgk.excel.JwtdJwgkExcel">
+        SELECT * FROM jwtd_jwgk ${ew.customSqlSegment}
+    </select>
+
+    <select id="selectJh" resultMap="jwtdJwgkResultMap">
+        select jh from jwtd_jwgk where is_deleted = 0 and jh = #{jh}
+    </select>
+</mapper>

+ 45 - 0
src/main/java/org/springblade/modules/jwtdJwgk/pojo/dto/JwtdJwgkDTO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.pojo.dto;
+
+import org.springblade.modules.jwtdJwgk.pojo.entity.JwtdJwgkEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_警务公开 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdJwgkDTO extends JwtdJwgkEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 110 - 0
src/main/java/org/springblade/modules/jwtdJwgk/pojo/entity/JwtdJwgkEntity.java

@@ -0,0 +1,110 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.springblade.core.mp.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import org.springblade.core.tenant.mp.TenantEntity;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_警务公开 实体类
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+@Data
+@TableName("jwtd_jwgk")
+@Schema(description = "JwtdJwgkEntity对象")
+@EqualsAndHashCode(callSuper = true)
+public class JwtdJwgkEntity extends BaseEntity {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 姓名
+	 */
+	@Schema(description = "姓名")
+	private String name;
+	/**
+	 * 性别
+	 */
+	@Schema(description = "性别")
+	private String sex;
+	/**
+	 * 警号
+	 */
+	@Schema(description = "警号")
+	private String jh;
+	/**
+	 * 联系电话
+	 */
+	@Schema(description = "联系电话")
+	private String phone;
+	/**
+	 * 管辖社区
+	 */
+	@Schema(description = "管辖社区")
+	private Long gxsqId;
+	/**
+	 * 所属警务室
+	 */
+	@Schema(description = "所属警务室")
+	private Long jwsId;
+	/**
+	 * 所属派出所
+	 */
+	@Schema(description = "所属派出所")
+	private Long pcsId;
+	/**
+	 * 职务类别
+	 */
+	@Schema(description = "职务类别")
+	private String zwlb;
+	/**
+	 * 工作职责
+	 */
+	@Schema(description = "工作职责")
+	private String gzzz;
+	/**
+	 * 照片
+	 */
+	@Schema(description = "照片")
+	private String zp;
+	@TableField(exist = false)
+	private String ssdw;
+	@TableField(exist = false)
+	private String ssdwMc;
+	@TableField(exist = false)
+	private String gxsqMc;
+	@TableField(exist = false)
+	private String jwsmc;
+}

+ 45 - 0
src/main/java/org/springblade/modules/jwtdJwgk/pojo/vo/JwtdJwgkVO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.pojo.vo;
+
+import org.springblade.modules.jwtdJwgk.pojo.entity.JwtdJwgkEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_警务公开 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdJwgkVO extends JwtdJwgkEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 61 - 0
src/main/java/org/springblade/modules/jwtdJwgk/service/IJwtdJwgkService.java

@@ -0,0 +1,61 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.modules.jwtdJwgk.pojo.entity.JwtdJwgkEntity;
+import org.springblade.modules.jwtdJwgk.pojo.vo.JwtdJwgkVO;
+import org.springblade.modules.jwtdJwgk.excel.JwtdJwgkExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 警务团队_警务公开 服务类
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+public interface IJwtdJwgkService extends BaseService<JwtdJwgkEntity> {
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdJwgk 查询参数
+	 * @return IPage<JwtdJwgkVO>
+	 */
+	IPage<JwtdJwgkVO> selectJwtdJwgkPage(IPage<JwtdJwgkVO> page, JwtdJwgkVO jwtdJwgk);
+
+	/**
+	 * 导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdJwgkExcel>
+	 */
+	List<JwtdJwgkExcel> exportJwtdJwgk(Wrapper<JwtdJwgkEntity> queryWrapper);
+
+    JwtdJwgkEntity selectJh(String jh);
+}

+ 67 - 0
src/main/java/org/springblade/modules/jwtdJwgk/service/impl/JwtdJwgkServiceImpl.java

@@ -0,0 +1,67 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.service.impl;
+
+import org.springblade.modules.jwtdJwgk.pojo.entity.JwtdJwgkEntity;
+import org.springblade.modules.jwtdJwgk.pojo.vo.JwtdJwgkVO;
+import org.springblade.modules.jwtdJwgk.excel.JwtdJwgkExcel;
+import org.springblade.modules.jwtdJwgk.mapper.JwtdJwgkMapper;
+import org.springblade.modules.jwtdJwgk.service.IJwtdJwgkService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 警务团队_警务公开 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+@Service
+public class JwtdJwgkServiceImpl extends BaseServiceImpl<JwtdJwgkMapper, JwtdJwgkEntity> implements IJwtdJwgkService {
+
+	@Override
+	public IPage<JwtdJwgkVO> selectJwtdJwgkPage(IPage<JwtdJwgkVO> page, JwtdJwgkVO jwtdJwgk) {
+		return page.setRecords(baseMapper.selectJwtdJwgkPage(page, jwtdJwgk));
+	}
+
+	@Override
+	public List<JwtdJwgkExcel> exportJwtdJwgk(Wrapper<JwtdJwgkEntity> queryWrapper) {
+		List<JwtdJwgkExcel> jwtdJwgkList = baseMapper.exportJwtdJwgk(queryWrapper);
+		//jwtdJwgkList.forEach(jwtdJwgk -> {
+		//	jwtdJwgk.setTypeName(DictCache.getValue(DictEnum.YES_NO, JwtdJwgkEntity.getType()));
+		//});
+		return jwtdJwgkList;
+	}
+
+	@Override
+	public JwtdJwgkEntity selectJh(String jh) {
+		return baseMapper.selectJh(jh);
+	}
+
+}

+ 58 - 0
src/main/java/org/springblade/modules/jwtdJwgk/wrapper/JwtdJwgkWrapper.java

@@ -0,0 +1,58 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdJwgk.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.jwtdJwgk.pojo.entity.JwtdJwgkEntity;
+import org.springblade.modules.jwtdJwgk.pojo.vo.JwtdJwgkVO;
+import java.util.Objects;
+
+/**
+ * 警务团队_警务公开 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-11-06
+ */
+public class JwtdJwgkWrapper extends BaseEntityWrapper<JwtdJwgkEntity, JwtdJwgkVO>  {
+
+	public static JwtdJwgkWrapper build() {
+		return new JwtdJwgkWrapper();
+ 	}
+
+	@Override
+	public JwtdJwgkVO entityVO(JwtdJwgkEntity jwtdJwgk) {
+		JwtdJwgkVO jwtdJwgkVO = Objects.requireNonNull(BeanUtil.copyProperties(jwtdJwgk, JwtdJwgkVO.class));
+
+		//User createUser = UserCache.getUser(jwtdJwgk.getCreateUser());
+		//User updateUser = UserCache.getUser(jwtdJwgk.getUpdateUser());
+		//jwtdJwgkVO.setCreateUserName(createUser.getName());
+		//jwtdJwgkVO.setUpdateUserName(updateUser.getName());
+
+		return jwtdJwgkVO;
+	}
+
+}

+ 185 - 0
src/main/java/org/springblade/modules/jwtdSpgl/controller/JwtdSpglController.java

@@ -0,0 +1,185 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.controller;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import jakarta.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+import org.springblade.modules.jwtdSpglBhjl.service.IJwtdSpglBhjlService;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import org.springblade.modules.jwtdSpgl.pojo.vo.JwtdSpglVO;
+import org.springblade.modules.jwtdSpgl.excel.JwtdSpglExcel;
+import org.springblade.modules.jwtdSpgl.wrapper.JwtdSpglWrapper;
+import org.springblade.modules.jwtdSpgl.service.IJwtdSpglService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.tool.constant.BladeConstant;
+import org.springblade.core.tool.constant.RoleConstant;
+import java.util.Map;
+import java.util.List;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * 警务团队_商品管理 控制器
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/jwtdSpgl")
+@Tag(name = "警务团队_商品管理", description = "警务团队_商品管理接口")
+public class JwtdSpglController extends BladeController {
+
+	private final IJwtdSpglService jwtdSpglService;
+
+	private final IJwtdSpglBhjlService jwtdSpglBhjlService;
+
+	/**
+	 * 警务团队_商品管理 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@Operation(summary = "详情", description  = "传入jwtdSpgl")
+	public R<JwtdSpglVO> detail(JwtdSpglEntity jwtdSpgl) {
+		JwtdSpglEntity detail = jwtdSpglService.getOne(Condition.getQueryWrapper(jwtdSpgl));
+		List<JwtdSpglBhjlEntity> bhjlList = jwtdSpglBhjlService.selectBhjl(jwtdSpgl.getId());
+		detail.setBhjlList(bhjlList);
+		return R.data(JwtdSpglWrapper.build().entityVO(detail));
+	}
+
+	/**
+	 * 警务团队_商品管理 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@Operation(summary = "分页", description  = "传入jwtdSpgl")
+	public R<IPage<JwtdSpglVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdSpgl, Query query) {
+		IPage<JwtdSpglEntity> pages = jwtdSpglService.page(Condition.getPage(query), Condition.getQueryWrapper(jwtdSpgl, JwtdSpglEntity.class));
+		return R.data(JwtdSpglWrapper.build().pageVO(pages));
+	}
+
+
+	/**
+	 * 警务团队_商品管理 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "分页", description  = "传入jwtdSpgl")
+	public R<IPage<JwtdSpglVO>> page(JwtdSpglVO jwtdSpgl, Query query) {
+		IPage<JwtdSpglVO> pages = jwtdSpglService.selectJwtdSpglPage(Condition.getPage(query), jwtdSpgl);
+		return R.data(pages);
+	}
+
+	/**
+	 * 警务团队_商品管理 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@Operation(summary = "新增", description  = "传入jwtdSpgl")
+	public R save(@Valid @RequestBody JwtdSpglEntity jwtdSpgl) {
+		JwtdSpglBhjlEntity jwtdSpglBhjl = new JwtdSpglBhjlEntity();
+		jwtdSpglBhjl.setSpId(jwtdSpgl.getId());
+		jwtdSpglBhjl.setKcl(jwtdSpgl.getSpkcl());
+		jwtdSpglBhjlService.save(jwtdSpglBhjl);
+		return R.status(jwtdSpglService.save(jwtdSpgl));
+	}
+
+	/**
+	 * 警务团队_商品管理 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@Operation(summary = "修改", description  = "传入jwtdSpgl")
+	public R update(@Valid @RequestBody JwtdSpglEntity jwtdSpgl) {
+		return R.status(jwtdSpglService.updateById(jwtdSpgl));
+	}
+
+	/**
+	 * 警务团队_商品管理 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@Operation(summary = "新增或修改", description  = "传入jwtdSpgl")
+	public R submit(@Valid @RequestBody JwtdSpglEntity jwtdSpgl) {
+		return R.status(jwtdSpglService.saveOrUpdate(jwtdSpgl));
+	}
+
+	/**
+	 * 警务团队_商品管理 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@Operation(summary = "逻辑删除", description  = "传入ids")
+	public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(jwtdSpglService.deleteLogic(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 导出数据
+	 */
+	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@GetMapping("/export-jwtdSpgl")
+	@ApiOperationSupport(order = 8)
+	@Operation(summary = "导出数据", description  = "传入jwtdSpgl")
+	public void exportJwtdSpgl(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdSpgl, BladeUser bladeUser, HttpServletResponse response) {
+		QueryWrapper<JwtdSpglEntity> queryWrapper = Condition.getQueryWrapper(jwtdSpgl, JwtdSpglEntity.class);
+		//if (!AuthUtil.isAdministrator()) {
+		//	queryWrapper.lambda().eq(JwtdSpglEntity::getTenantId, bladeUser.getTenantId());
+		//}
+		//queryWrapper.lambda().eq(JwtdSpglEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
+		List<JwtdSpglExcel> list = jwtdSpglService.exportJwtdSpgl(queryWrapper);
+		ExcelUtil.export(response, "警务团队_商品管理数据" + DateUtil.time(), "警务团队_商品管理数据表", list, JwtdSpglExcel.class);
+	}
+
+	/**
+	 * 商品补货
+	 */
+	@PostMapping("spbh")
+	public R spbh(@RequestBody JwtdSpglEntity jwtdSpgl) {
+		JwtdSpglBhjlEntity jwtdSpglBhjl = new JwtdSpglBhjlEntity();
+		jwtdSpglBhjl.setSpId(jwtdSpgl.getId());
+		jwtdSpglBhjl.setKcl(jwtdSpgl.getSpkcl() + jwtdSpgl.getBhl());
+		jwtdSpglBhjl.setBhl(jwtdSpgl.getBhl());
+		jwtdSpglBhjlService.save(jwtdSpglBhjl);
+		return R.status(jwtdSpglService.updateById(jwtdSpgl));
+	}
+}

+ 103 - 0
src/main/java/org/springblade/modules/jwtdSpgl/excel/JwtdSpglExcel.java

@@ -0,0 +1,103 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.excel;
+
+
+import lombok.Data;
+
+import java.io.Serializable;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serial;
+
+
+/**
+ * 警务团队_商品管理 Excel实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class JwtdSpglExcel implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 商品名称
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("商品名称")
+	private String spmc;
+	/**
+	 * 商品描述
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("商品描述")
+	private String spms;
+	/**
+	 * 领取地点
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("领取地点")
+	private String lqdd;
+	/**
+	 * 商品库存量
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("商品库存量")
+	private Integer spkcl;
+	/**
+	 * 兑换所需积分
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("兑换所需积分")
+	private String dhsxjf;
+	/**
+	 * 商品状态
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("商品状态")
+	private String spzt;
+	/**
+	 * 商品照片
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("商品照片")
+	private String spzp;
+	/**
+	 * 商品已兑换数量
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("商品已兑换数量")
+	private Integer spydhsl;
+
+}

+ 62 - 0
src/main/java/org/springblade/modules/jwtdSpgl/mapper/JwtdSpglMapper.java

@@ -0,0 +1,62 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.mapper;
+
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import org.springblade.modules.jwtdSpgl.pojo.vo.JwtdSpglVO;
+import org.springblade.modules.jwtdSpgl.excel.JwtdSpglExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public interface JwtdSpglMapper extends BaseMapper<JwtdSpglEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdSpgl 查询参数
+	 * @return List<JwtdSpglVO>
+	 */
+	List<JwtdSpglVO> selectJwtdSpglPage(IPage page, JwtdSpglVO jwtdSpgl);
+
+	/**
+	 * 获取导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdSpglExcel>
+	 */
+	List<JwtdSpglExcel> exportJwtdSpgl(@Param("ew") Wrapper<JwtdSpglEntity> queryWrapper);
+
+}

+ 37 - 0
src/main/java/org/springblade/modules/jwtdSpgl/mapper/JwtdSpglMapper.xml

@@ -0,0 +1,37 @@
+<?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="org.springblade.modules.jwtdSpgl.mapper.JwtdSpglMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="jwtdSpglResultMap" type="org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity">
+        <result column="spmc" property="spmc"/>
+        <result column="spms" property="spms"/>
+        <result column="lqdd" property="lqdd"/>
+        <result column="spkcl" property="spkcl"/>
+        <result column="dhsxjf" property="dhsxjf"/>
+        <result column="spzt" property="spzt"/>
+        <result column="spzp" property="spzp"/>
+        <result column="spydhsl" property="spydhsl"/>
+    </resultMap>
+
+    <select id="selectJwtdSpglPage" resultMap="jwtdSpglResultMap">
+        select
+            *
+        from jwtd_spgl
+        where is_deleted = 0
+        <if test="jwtdSpgl.spmc != null and jwtdSpgl.spmc != ''">
+            and (spmc like '%' || #{jwtdSpgl.spmc} || '%' or id :: text = #{jwtdSpgl.spmc})
+        </if>
+        <if test="jwtdSpgl.dhsxjf != null and jwtdSpgl.dhsxjf != ''">
+            and dhsxjf between #{jwtdSpgl.minJf} and #{jwtdSpgl.maxJf}
+        </if>
+        <if test="jwtdSpgl.spzt != null and jwtdSpgl.spzt != ''">
+            and spzt = #{jwtdSpgl.spzt}
+        </if>
+    </select>
+
+    <select id="exportJwtdSpgl" resultType="org.springblade.modules.jwtdSpgl.excel.JwtdSpglExcel">
+        SELECT * FROM jwtd_spgl ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 45 - 0
src/main/java/org/springblade/modules/jwtdSpgl/pojo/dto/JwtdSpglDTO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.pojo.dto;
+
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_商品管理 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdSpglDTO extends JwtdSpglEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 110 - 0
src/main/java/org/springblade/modules/jwtdSpgl/pojo/entity/JwtdSpglEntity.java

@@ -0,0 +1,110 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.springblade.core.mp.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import org.springblade.core.tenant.mp.TenantEntity;
+import lombok.EqualsAndHashCode;
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+
+import java.io.Serial;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理 实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@TableName("jwtd_spgl")
+@Schema(description = "JwtdSpglEntity对象")
+@EqualsAndHashCode(callSuper = true)
+public class JwtdSpglEntity extends BaseEntity {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 商品名称
+	 */
+	@Schema(description = "商品名称")
+	private String spmc;
+	/**
+	 * 商品描述
+	 */
+	@Schema(description = "商品描述")
+	private String spms;
+	/**
+	 * 领取地点
+	 */
+	@Schema(description = "领取地点")
+	private String lqdd;
+	/**
+	 * 商品库存量
+	 */
+	@Schema(description = "商品库存量")
+	private Integer spkcl;
+	/**
+	 * 兑换所需积分
+	 */
+	@Schema(description = "兑换所需积分")
+	private String dhsxjf;
+	/**
+	 * 商品状态(1-已上架  2-补货中  3-已下架)
+	 */
+	@Schema(description = "商品状态(1-已上架  2-补货中  3-已下架)")
+	private String spzt;
+	/**
+	 * 商品照片
+	 */
+	@Schema(description = "商品照片")
+	private String spzp;
+	/**
+	 * 商品已兑换数量
+	 */
+	@Schema(description = "商品已兑换数量")
+	private Integer spydhsl;
+	/**
+	 * 补货量
+	 */
+	@TableField(exist = false)
+	private Integer bhl;
+
+	/**
+	 * 补货记录
+	 */
+	@TableField(exist = false)
+	private List<JwtdSpglBhjlEntity> bhjlList;
+	@TableField(exist = false)
+	private Integer minJf;
+	@TableField(exist = false)
+	private Integer maxJf;
+}

+ 45 - 0
src/main/java/org/springblade/modules/jwtdSpgl/pojo/vo/JwtdSpglVO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.pojo.vo;
+
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_商品管理 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdSpglVO extends JwtdSpglEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 60 - 0
src/main/java/org/springblade/modules/jwtdSpgl/service/IJwtdSpglService.java

@@ -0,0 +1,60 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import org.springblade.modules.jwtdSpgl.pojo.vo.JwtdSpglVO;
+import org.springblade.modules.jwtdSpgl.excel.JwtdSpglExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理 服务类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public interface IJwtdSpglService extends BaseService<JwtdSpglEntity> {
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdSpgl 查询参数
+	 * @return IPage<JwtdSpglVO>
+	 */
+	IPage<JwtdSpglVO> selectJwtdSpglPage(IPage<JwtdSpglVO> page, JwtdSpglVO jwtdSpgl);
+
+	/**
+	 * 导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdSpglExcel>
+	 */
+	List<JwtdSpglExcel> exportJwtdSpgl(Wrapper<JwtdSpglEntity> queryWrapper);
+
+}

+ 62 - 0
src/main/java/org/springblade/modules/jwtdSpgl/service/impl/JwtdSpglServiceImpl.java

@@ -0,0 +1,62 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.service.impl;
+
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import org.springblade.modules.jwtdSpgl.pojo.vo.JwtdSpglVO;
+import org.springblade.modules.jwtdSpgl.excel.JwtdSpglExcel;
+import org.springblade.modules.jwtdSpgl.mapper.JwtdSpglMapper;
+import org.springblade.modules.jwtdSpgl.service.IJwtdSpglService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Service
+public class JwtdSpglServiceImpl extends BaseServiceImpl<JwtdSpglMapper, JwtdSpglEntity> implements IJwtdSpglService {
+
+	@Override
+	public IPage<JwtdSpglVO> selectJwtdSpglPage(IPage<JwtdSpglVO> page, JwtdSpglVO jwtdSpgl) {
+		return page.setRecords(baseMapper.selectJwtdSpglPage(page, jwtdSpgl));
+	}
+
+	@Override
+	public List<JwtdSpglExcel> exportJwtdSpgl(Wrapper<JwtdSpglEntity> queryWrapper) {
+		List<JwtdSpglExcel> jwtdSpglList = baseMapper.exportJwtdSpgl(queryWrapper);
+		//jwtdSpglList.forEach(jwtdSpgl -> {
+		//	jwtdSpgl.setTypeName(DictCache.getValue(DictEnum.YES_NO, JwtdSpglEntity.getType()));
+		//});
+		return jwtdSpglList;
+	}
+
+}

+ 58 - 0
src/main/java/org/springblade/modules/jwtdSpgl/wrapper/JwtdSpglWrapper.java

@@ -0,0 +1,58 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpgl.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import org.springblade.modules.jwtdSpgl.pojo.vo.JwtdSpglVO;
+import java.util.Objects;
+
+/**
+ * 警务团队_商品管理 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public class JwtdSpglWrapper extends BaseEntityWrapper<JwtdSpglEntity, JwtdSpglVO>  {
+
+	public static JwtdSpglWrapper build() {
+		return new JwtdSpglWrapper();
+ 	}
+
+	@Override
+	public JwtdSpglVO entityVO(JwtdSpglEntity jwtdSpgl) {
+		JwtdSpglVO jwtdSpglVO = Objects.requireNonNull(BeanUtil.copyProperties(jwtdSpgl, JwtdSpglVO.class));
+
+		//User createUser = UserCache.getUser(jwtdSpgl.getCreateUser());
+		//User updateUser = UserCache.getUser(jwtdSpgl.getUpdateUser());
+		//jwtdSpglVO.setCreateUserName(createUser.getName());
+		//jwtdSpglVO.setUpdateUserName(updateUser.getName());
+
+		return jwtdSpglVO;
+	}
+
+}

+ 163 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/controller/JwtdSpglBhjlController.java

@@ -0,0 +1,163 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.controller;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import jakarta.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+import org.springblade.modules.jwtdSpglBhjl.pojo.vo.JwtdSpglBhjlVO;
+import org.springblade.modules.jwtdSpglBhjl.excel.JwtdSpglBhjlExcel;
+import org.springblade.modules.jwtdSpglBhjl.wrapper.JwtdSpglBhjlWrapper;
+import org.springblade.modules.jwtdSpglBhjl.service.IJwtdSpglBhjlService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.tool.constant.BladeConstant;
+import org.springblade.core.tool.constant.RoleConstant;
+import java.util.Map;
+import java.util.List;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * 警务团队_商品管理_补货记录 控制器
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/jwtdSpglBhjl")
+@Tag(name = "警务团队_商品管理_补货记录", description = "警务团队_商品管理_补货记录接口")
+public class JwtdSpglBhjlController extends BladeController {
+
+	private final IJwtdSpglBhjlService jwtdSpglBhjlService;
+
+	/**
+	 * 警务团队_商品管理_补货记录 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@Operation(summary = "详情", description  = "传入jwtdSpglBhjl")
+	public R<JwtdSpglBhjlVO> detail(JwtdSpglBhjlEntity jwtdSpglBhjl) {
+		JwtdSpglBhjlEntity detail = jwtdSpglBhjlService.getOne(Condition.getQueryWrapper(jwtdSpglBhjl));
+		return R.data(JwtdSpglBhjlWrapper.build().entityVO(detail));
+	}
+
+	/**
+	 * 警务团队_商品管理_补货记录 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@Operation(summary = "分页", description  = "传入jwtdSpglBhjl")
+	public R<IPage<JwtdSpglBhjlVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdSpglBhjl, Query query) {
+		IPage<JwtdSpglBhjlEntity> pages = jwtdSpglBhjlService.page(Condition.getPage(query), Condition.getQueryWrapper(jwtdSpglBhjl, JwtdSpglBhjlEntity.class));
+		return R.data(JwtdSpglBhjlWrapper.build().pageVO(pages));
+	}
+
+
+	/**
+	 * 警务团队_商品管理_补货记录 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "分页", description  = "传入jwtdSpglBhjl")
+	public R<IPage<JwtdSpglBhjlVO>> page(JwtdSpglBhjlVO jwtdSpglBhjl, Query query) {
+		IPage<JwtdSpglBhjlVO> pages = jwtdSpglBhjlService.selectJwtdSpglBhjlPage(Condition.getPage(query), jwtdSpglBhjl);
+		return R.data(pages);
+	}
+
+	/**
+	 * 警务团队_商品管理_补货记录 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@Operation(summary = "新增", description  = "传入jwtdSpglBhjl")
+	public R save(@Valid @RequestBody JwtdSpglBhjlEntity jwtdSpglBhjl) {
+		return R.status(jwtdSpglBhjlService.save(jwtdSpglBhjl));
+	}
+
+	/**
+	 * 警务团队_商品管理_补货记录 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@Operation(summary = "修改", description  = "传入jwtdSpglBhjl")
+	public R update(@Valid @RequestBody JwtdSpglBhjlEntity jwtdSpglBhjl) {
+		return R.status(jwtdSpglBhjlService.updateById(jwtdSpglBhjl));
+	}
+
+	/**
+	 * 警务团队_商品管理_补货记录 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@Operation(summary = "新增或修改", description  = "传入jwtdSpglBhjl")
+	public R submit(@Valid @RequestBody JwtdSpglBhjlEntity jwtdSpglBhjl) {
+		return R.status(jwtdSpglBhjlService.saveOrUpdate(jwtdSpglBhjl));
+	}
+
+	/**
+	 * 警务团队_商品管理_补货记录 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@Operation(summary = "逻辑删除", description  = "传入ids")
+	public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(jwtdSpglBhjlService.deleteLogic(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 导出数据
+	 */
+	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@GetMapping("/export-jwtdSpglBhjl")
+	@ApiOperationSupport(order = 8)
+	@Operation(summary = "导出数据", description  = "传入jwtdSpglBhjl")
+	public void exportJwtdSpglBhjl(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdSpglBhjl, BladeUser bladeUser, HttpServletResponse response) {
+		QueryWrapper<JwtdSpglBhjlEntity> queryWrapper = Condition.getQueryWrapper(jwtdSpglBhjl, JwtdSpglBhjlEntity.class);
+		//if (!AuthUtil.isAdministrator()) {
+		//	queryWrapper.lambda().eq(JwtdSpglBhjlEntity::getTenantId, bladeUser.getTenantId());
+		//}
+		//queryWrapper.lambda().eq(JwtdSpglBhjlEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
+		List<JwtdSpglBhjlExcel> list = jwtdSpglBhjlService.exportJwtdSpglBhjl(queryWrapper);
+		ExcelUtil.export(response, "警务团队_商品管理_补货记录数据" + DateUtil.time(), "警务团队_商品管理_补货记录数据表", list, JwtdSpglBhjlExcel.class);
+	}
+
+}

+ 73 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/excel/JwtdSpglBhjlExcel.java

@@ -0,0 +1,73 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.excel;
+
+
+import lombok.Data;
+
+import java.io.Serializable;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serial;
+
+
+/**
+ * 警务团队_商品管理_补货记录 Excel实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class JwtdSpglBhjlExcel implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 商品id
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("商品id")
+	private Long spId;
+	/**
+	 * 库存量
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("库存量")
+	private Integer kcl;
+	/**
+	 * 补货量
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("补货量")
+	private Integer phl;
+
+}

+ 63 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/mapper/JwtdSpglBhjlMapper.java

@@ -0,0 +1,63 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.mapper;
+
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+import org.springblade.modules.jwtdSpglBhjl.pojo.vo.JwtdSpglBhjlVO;
+import org.springblade.modules.jwtdSpglBhjl.excel.JwtdSpglBhjlExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理_补货记录 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public interface JwtdSpglBhjlMapper extends BaseMapper<JwtdSpglBhjlEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdSpglBhjl 查询参数
+	 * @return List<JwtdSpglBhjlVO>
+	 */
+	List<JwtdSpglBhjlVO> selectJwtdSpglBhjlPage(IPage page, JwtdSpglBhjlVO jwtdSpglBhjl);
+
+	/**
+	 * 获取导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdSpglBhjlExcel>
+	 */
+	List<JwtdSpglBhjlExcel> exportJwtdSpglBhjl(@Param("ew") Wrapper<JwtdSpglBhjlEntity> queryWrapper);
+
+    List<JwtdSpglBhjlEntity> selectBhjl(Long id);
+}

+ 23 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/mapper/JwtdSpglBhjlMapper.xml

@@ -0,0 +1,23 @@
+<?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="org.springblade.modules.jwtdSpglBhjl.mapper.JwtdSpglBhjlMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="jwtdSpglBhjlResultMap" type="org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity">
+        <result column="sp_id" property="spId"/>
+        <result column="kcl" property="kcl"/>
+        <result column="bhl" property="bhl"/>
+    </resultMap>
+
+    <select id="selectJwtdSpglBhjlPage" resultMap="jwtdSpglBhjlResultMap">
+        select * from jwtd_spgl_bhjl where is_deleted = 0
+    </select>
+
+    <select id="exportJwtdSpglBhjl" resultType="org.springblade.modules.jwtdSpglBhjl.excel.JwtdSpglBhjlExcel">
+        SELECT * FROM jwtd_spgl_bhjl ${ew.customSqlSegment}
+    </select>
+
+    <select id="selectBhjl" resultMap="jwtdSpglBhjlResultMap">
+        select * from jwtd_spgl_bhjl where is_deleted = 0 and sp_id = #{id} order by create_time desc
+    </select>
+</mapper>

+ 45 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/pojo/dto/JwtdSpglBhjlDTO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.pojo.dto;
+
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_商品管理_补货记录 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdSpglBhjlDTO extends JwtdSpglBhjlEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 67 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/pojo/entity/JwtdSpglBhjlEntity.java

@@ -0,0 +1,67 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.pojo.entity;
+
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.springblade.core.mp.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import org.springblade.core.tenant.mp.TenantEntity;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_商品管理_补货记录 实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@TableName("jwtd_spgl_bhjl")
+@Schema(description = "JwtdSpglBhjlEntity对象")
+@EqualsAndHashCode(callSuper = true)
+public class JwtdSpglBhjlEntity extends BaseEntity {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 商品id
+	 */
+	@Schema(description = "商品id")
+	private Long spId;
+	/**
+	 * 库存量
+	 */
+	@Schema(description = "库存量")
+	private Integer kcl;
+	/**
+	 * 补货量
+	 */
+	@Schema(description = "补货量")
+	private Integer bhl;
+
+}

+ 45 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/pojo/vo/JwtdSpglBhjlVO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.pojo.vo;
+
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_商品管理_补货记录 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdSpglBhjlVO extends JwtdSpglBhjlEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 61 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/service/IJwtdSpglBhjlService.java

@@ -0,0 +1,61 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+import org.springblade.modules.jwtdSpglBhjl.pojo.vo.JwtdSpglBhjlVO;
+import org.springblade.modules.jwtdSpglBhjl.excel.JwtdSpglBhjlExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理_补货记录 服务类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public interface IJwtdSpglBhjlService extends BaseService<JwtdSpglBhjlEntity> {
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdSpglBhjl 查询参数
+	 * @return IPage<JwtdSpglBhjlVO>
+	 */
+	IPage<JwtdSpglBhjlVO> selectJwtdSpglBhjlPage(IPage<JwtdSpglBhjlVO> page, JwtdSpglBhjlVO jwtdSpglBhjl);
+
+	/**
+	 * 导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdSpglBhjlExcel>
+	 */
+	List<JwtdSpglBhjlExcel> exportJwtdSpglBhjl(Wrapper<JwtdSpglBhjlEntity> queryWrapper);
+
+    List<JwtdSpglBhjlEntity> selectBhjl(Long id);
+}

+ 67 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/service/impl/JwtdSpglBhjlServiceImpl.java

@@ -0,0 +1,67 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.service.impl;
+
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+import org.springblade.modules.jwtdSpglBhjl.pojo.vo.JwtdSpglBhjlVO;
+import org.springblade.modules.jwtdSpglBhjl.excel.JwtdSpglBhjlExcel;
+import org.springblade.modules.jwtdSpglBhjl.mapper.JwtdSpglBhjlMapper;
+import org.springblade.modules.jwtdSpglBhjl.service.IJwtdSpglBhjlService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理_补货记录 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Service
+public class JwtdSpglBhjlServiceImpl extends BaseServiceImpl<JwtdSpglBhjlMapper, JwtdSpglBhjlEntity> implements IJwtdSpglBhjlService {
+
+	@Override
+	public IPage<JwtdSpglBhjlVO> selectJwtdSpglBhjlPage(IPage<JwtdSpglBhjlVO> page, JwtdSpglBhjlVO jwtdSpglBhjl) {
+		return page.setRecords(baseMapper.selectJwtdSpglBhjlPage(page, jwtdSpglBhjl));
+	}
+
+	@Override
+	public List<JwtdSpglBhjlExcel> exportJwtdSpglBhjl(Wrapper<JwtdSpglBhjlEntity> queryWrapper) {
+		List<JwtdSpglBhjlExcel> jwtdSpglBhjlList = baseMapper.exportJwtdSpglBhjl(queryWrapper);
+		//jwtdSpglBhjlList.forEach(jwtdSpglBhjl -> {
+		//	jwtdSpglBhjl.setTypeName(DictCache.getValue(DictEnum.YES_NO, JwtdSpglBhjlEntity.getType()));
+		//});
+		return jwtdSpglBhjlList;
+	}
+
+	@Override
+	public List<JwtdSpglBhjlEntity> selectBhjl(Long id) {
+		return baseMapper.selectBhjl(id);
+	}
+
+}

+ 58 - 0
src/main/java/org/springblade/modules/jwtdSpglBhjl/wrapper/JwtdSpglBhjlWrapper.java

@@ -0,0 +1,58 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglBhjl.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.jwtdSpglBhjl.pojo.entity.JwtdSpglBhjlEntity;
+import org.springblade.modules.jwtdSpglBhjl.pojo.vo.JwtdSpglBhjlVO;
+import java.util.Objects;
+
+/**
+ * 警务团队_商品管理_补货记录 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public class JwtdSpglBhjlWrapper extends BaseEntityWrapper<JwtdSpglBhjlEntity, JwtdSpglBhjlVO>  {
+
+	public static JwtdSpglBhjlWrapper build() {
+		return new JwtdSpglBhjlWrapper();
+ 	}
+
+	@Override
+	public JwtdSpglBhjlVO entityVO(JwtdSpglBhjlEntity jwtdSpglBhjl) {
+		JwtdSpglBhjlVO jwtdSpglBhjlVO = Objects.requireNonNull(BeanUtil.copyProperties(jwtdSpglBhjl, JwtdSpglBhjlVO.class));
+
+		//User createUser = UserCache.getUser(jwtdSpglBhjl.getCreateUser());
+		//User updateUser = UserCache.getUser(jwtdSpglBhjl.getUpdateUser());
+		//jwtdSpglBhjlVO.setCreateUserName(createUser.getName());
+		//jwtdSpglBhjlVO.setUpdateUserName(updateUser.getName());
+
+		return jwtdSpglBhjlVO;
+	}
+
+}

+ 224 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/controller/JwtdSpglDhjlController.java

@@ -0,0 +1,224 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.controller;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import jakarta.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.jwtdJfjl.pojo.entity.JwtdJfjlEntity;
+import org.springblade.modules.jwtdJfjl.service.IJwtdJfjlService;
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import org.springblade.modules.jwtdSpgl.service.IJwtdSpglService;
+import org.springblade.modules.system.pojo.entity.User;
+import org.springblade.modules.system.service.IUserService;
+import org.springblade.modules.utils.OrderCodeFactory;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.jwtdSpglDhjl.pojo.entity.JwtdSpglDhjlEntity;
+import org.springblade.modules.jwtdSpglDhjl.pojo.vo.JwtdSpglDhjlVO;
+import org.springblade.modules.jwtdSpglDhjl.excel.JwtdSpglDhjlExcel;
+import org.springblade.modules.jwtdSpglDhjl.service.IJwtdSpglDhjlService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.tool.constant.RoleConstant;
+
+import java.util.Date;
+import java.util.Map;
+import java.util.List;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * 警务团队_商品管理_兑换记录 控制器
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/jwtdSpglDhjl")
+@Tag(name = "警务团队_商品管理_兑换记录", description = "警务团队_商品管理_兑换记录接口")
+public class JwtdSpglDhjlController extends BladeController {
+
+	private final IJwtdSpglDhjlService jwtdSpglDhjlService;
+
+	private final IJwtdSpglService jwtdSpglService;
+
+	private final IUserService userService;
+
+	private final IJwtdJfjlService jwtdJfjlService;
+
+	/**
+	 * 警务团队_商品管理_兑换记录 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@Operation(summary = "详情", description  = "传入jwtdSpglDhjl")
+	public R detail(JwtdSpglDhjlEntity jwtdSpglDhjl) {
+		JwtdSpglDhjlEntity detail = jwtdSpglDhjlService.detailByDdbh(jwtdSpglDhjl);
+		List<JwtdSpglDhjlVO> spList = jwtdSpglDhjlService.detailListByDdbh(jwtdSpglDhjl);
+		return R.data(detail);
+	}
+
+
+	/**
+	 * 警务团队_商品管理_兑换记录 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@Operation(summary = "分页", description  = "传入jwtdSpglDhjl")
+	public R<IPage<JwtdSpglDhjlEntity>> page(JwtdSpglDhjlEntity jwtdSpglDhjl, Query query) {
+		IPage<JwtdSpglDhjlEntity> pages = jwtdSpglDhjlService.selectJwtdSpglDhjlPage(Condition.getPage(query), jwtdSpglDhjl);
+		return R.data(pages);
+	}
+
+	/**
+	 * 警务团队_商品管理_兑换记录 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@Operation(summary = "新增", description  = "传入jwtdSpglDhjl")
+	public R save(@Valid @RequestBody JwtdSpglDhjlEntity jwtdSpglDhjl) {
+		return R.status(jwtdSpglDhjlService.save(jwtdSpglDhjl));
+	}
+
+	/**
+	 * 警务团队_商品管理_兑换记录 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@Operation(summary = "修改", description  = "传入jwtdSpglDhjl")
+	public R update(@Valid @RequestBody JwtdSpglDhjlEntity jwtdSpglDhjl) {
+		return R.status(jwtdSpglDhjlService.updateById(jwtdSpglDhjl));
+	}
+
+	/**
+	 * 警务团队_商品管理_兑换记录 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@Operation(summary = "新增或修改", description  = "传入jwtdSpglDhjl")
+	public R submit(@Valid @RequestBody JwtdSpglDhjlEntity jwtdSpglDhjl) {
+		return R.status(jwtdSpglDhjlService.saveOrUpdate(jwtdSpglDhjl));
+	}
+
+	/**
+	 * 警务团队_商品管理_兑换记录 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@Operation(summary = "逻辑删除", description  = "传入ids")
+	public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(jwtdSpglDhjlService.deleteLogic(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 导出数据
+	 */
+	@PreAuth(RoleConstant.HAS_ROLE_ADMIN)
+	@GetMapping("/export-jwtdSpglDhjl")
+	@ApiOperationSupport(order = 8)
+	@Operation(summary = "导出数据", description  = "传入jwtdSpglDhjl")
+	public void exportJwtdSpglDhjl(@Parameter(hidden = true) @RequestParam Map<String, Object> jwtdSpglDhjl, BladeUser bladeUser, HttpServletResponse response) {
+		QueryWrapper<JwtdSpglDhjlEntity> queryWrapper = Condition.getQueryWrapper(jwtdSpglDhjl, JwtdSpglDhjlEntity.class);
+		//if (!AuthUtil.isAdministrator()) {
+		//	queryWrapper.lambda().eq(JwtdSpglDhjlEntity::getTenantId, bladeUser.getTenantId());
+		//}
+		//queryWrapper.lambda().eq(JwtdSpglDhjlEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
+		List<JwtdSpglDhjlExcel> list = jwtdSpglDhjlService.exportJwtdSpglDhjl(queryWrapper);
+		ExcelUtil.export(response, "警务团队_商品管理_兑换记录数据" + DateUtil.time(), "警务团队_商品管理_兑换记录数据表", list, JwtdSpglDhjlExcel.class);
+	}
+
+	/**
+	 * 购物车结算
+	 */
+	@PostMapping("gwcjs")
+	public R gwcjs(@RequestBody List<JwtdSpglDhjlEntity> gwc) {
+		String orderCode = OrderCodeFactory.getOrderCode(AuthUtil.getUserId());
+		Date date = new Date();
+		for (JwtdSpglDhjlEntity jwtdSpglDhjl : gwc) {
+			JwtdSpglEntity byId = jwtdSpglService.getById(jwtdSpglDhjl.getSpId());
+			if (byId.getSpkcl() < jwtdSpglDhjl.getCount()) {
+				return R.fail("库存量不足");
+			}
+			JwtdSpglEntity spgl = new JwtdSpglEntity();
+			spgl.setId(byId.getId());
+			spgl.setSpkcl(byId.getSpkcl() - jwtdSpglDhjl.getCount());
+			spgl.setSpydhsl(byId.getSpydhsl() + jwtdSpglDhjl.getCount());
+			jwtdSpglService.updateById(spgl);
+			User user = userService.getById(AuthUtil.getUserId());
+			User jf = new User();
+			jf.setId(user.getId());
+			jf.setJf(user.getJf() - jwtdSpglDhjl.getJf());
+			userService.updateById(jf);
+			JwtdSpglDhjlEntity dh = new JwtdSpglDhjlEntity();
+			dh.setDdbh(orderCode);
+			dh.setUserId(AuthUtil.getUserId());
+			dh.setSpId(byId.getId());
+			dh.setSpsl(jwtdSpglDhjl.getSpsl());
+			dh.setXhjf(jwtdSpglDhjl.getXhjf());
+			dh.setLqzt("0");
+			dh.setCreateTime(date);
+			dh.setUpdateTime(date);
+			jwtdSpglDhjlService.save(dh);
+			JwtdJfjlEntity jwtdJfjl = new JwtdJfjlEntity();
+			jwtdJfjl.setUserId(AuthUtil.getUserId());
+			jwtdJfjl.setType("2");
+			jwtdJfjl.setJfId(dh.getId());
+			jwtdJfjl.setJf(dh.getXhjf());
+			jwtdJfjlService.save(jwtdJfjl);
+		}
+		return R.data("操作成功");
+	}
+
+	/**
+	 * 商品发货
+	 */
+	@PostMapping("spfh")
+	public R spfh(@RequestBody String ddbh) {
+		return R.data(jwtdSpglDhjlService.updateLqzt(ddbh, AuthUtil.getUserId(), AuthUtil.getDeptId()));
+	}
+
+	/**
+	 * 我的订单
+	 */
+	@GetMapping("getDdList")
+	public R getDdList(String type, String spmc) {
+		return R.data(jwtdSpglDhjlService.getDdList(type, AuthUtil.getUserId(), spmc));
+	}
+}

+ 91 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/excel/JwtdSpglDhjlExcel.java

@@ -0,0 +1,91 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.excel;
+
+
+import lombok.Data;
+
+import java.io.Serializable;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serial;
+
+
+/**
+ * 警务团队_商品管理_兑换记录 Excel实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class JwtdSpglDhjlExcel implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 订单编号
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("订单编号")
+	private String ddbh;
+	/**
+	 * 用户id
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("用户id")
+	private Long userId;
+	/**
+	 * 商品id
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("商品id")
+	private Long spId;
+	/**
+	 * 消耗积分
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("消耗积分")
+	private Integer xhjf;
+	/**
+	 * 领取状态
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("领取状态")
+	private String lqzt;
+	/**
+	 * 发放单位
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("发放单位")
+	private Long updateDept;
+
+}

+ 69 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/mapper/JwtdSpglDhjlMapper.java

@@ -0,0 +1,69 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.mapper;
+
+import org.springblade.modules.jwtdSpglDhjl.pojo.entity.JwtdSpglDhjlEntity;
+import org.springblade.modules.jwtdSpglDhjl.pojo.vo.JwtdSpglDhjlVO;
+import org.springblade.modules.jwtdSpglDhjl.excel.JwtdSpglDhjlExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理_兑换记录 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public interface JwtdSpglDhjlMapper extends BaseMapper<JwtdSpglDhjlEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdSpglDhjl 查询参数
+	 * @return List<JwtdSpglDhjlVO>
+	 */
+	List<JwtdSpglDhjlEntity> selectJwtdSpglDhjlPage(IPage page, JwtdSpglDhjlEntity jwtdSpglDhjl);
+
+	/**
+	 * 获取导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdSpglDhjlExcel>
+	 */
+	List<JwtdSpglDhjlExcel> exportJwtdSpglDhjl(@Param("ew") Wrapper<JwtdSpglDhjlEntity> queryWrapper);
+
+	JwtdSpglDhjlEntity detailByDdbh(JwtdSpglDhjlEntity jwtdSpglDhjl);
+
+	List<JwtdSpglDhjlVO> detailListByDdbh(JwtdSpglDhjlEntity jwtdSpglDhjl);
+
+	boolean updateLqzt(String ddbh, Long useerId, String deptId);
+
+	List<JwtdSpglDhjlEntity> getDdList(String type, Long userId, String spmc);
+}

+ 96 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/mapper/JwtdSpglDhjlMapper.xml

@@ -0,0 +1,96 @@
+<?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="org.springblade.modules.jwtdSpglDhjl.mapper.JwtdSpglDhjlMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="jwtdSpglDhjlResultMap" type="org.springblade.modules.jwtdSpglDhjl.pojo.entity.JwtdSpglDhjlEntity">
+        <result column="ddbh" property="ddbh"/>
+        <result column="user_id" property="userId"/>
+        <result column="sp_id" property="spId"/>
+        <result column="xhjf" property="xhjf"/>
+        <result column="lqzt" property="lqzt"/>
+        <result column="update_dept" property="updateDept"/>
+    </resultMap>
+
+    <select id="selectJwtdSpglDhjlPage" resultMap="jwtdSpglDhjlResultMap">
+        SELECT
+            jsd.ddbh,
+            bu.name,
+            bu.sfzh,
+            bu.phone,
+            SUM ( jsd.spsl ) AS spsl,
+            SUM ( jsd.xhjf ) AS xhjf,
+            jsd.lqzt
+        FROM
+            jwtd_spgl_dhjl jsd
+        LEFT JOIN blade_user bu ON bu.id = jsd.user_id
+        WHERE jsd.is_deleted = 0
+        GROUP BY
+            jsd.ddbh,
+            bu.name,
+            bu.sfzh,
+            bu.phone,
+            jsd.lqzt
+    </select>
+
+    <select id="exportJwtdSpglDhjl" resultType="org.springblade.modules.jwtdSpglDhjl.excel.JwtdSpglDhjlExcel">
+        SELECT * FROM jwtd_spgl_dhjl ${ew.customSqlSegment}
+    </select>
+
+    <select id="detailByDdbh" resultMap="jwtdSpglDhjlResultMap">
+        SELECT
+            jsd.ddbh,
+            jsd.spzt,
+            jsd.create_time,
+            jsd.update_time,
+            bu.name,
+            bu.sfzh,
+            bu.phone,
+            bu.dz,
+            bd.dept_name,
+            bu1.name as fhName
+        FROM jwtd_spgl_dhjl jsd
+        LEFT JOIN blade_user bu ON bu.id = jsd.user_id
+        LEFT JOIN blade_user bu1 ON bu1.id = jsd.fhr
+        LEFT JOIN blade_dept bd ON bd.id = jsd.update_dept
+        WHERE jsd.is_deleted = 0 AND jsd.ddbh = #{ddbh} order by create_time limit 1
+    </select>
+
+    <select id="detailListByDdbh" resultMap="jwtdSpglDhjlResultMap">
+        SELECT
+            jsd.sp_id,
+            js.spmc,
+            js.spms,
+            jsd.spsl,
+            jsd.xhjf
+        FROM jwtd_spgl_dhjl jsd
+        LEFT JOIN jwtd_spgl js ON js.ID = jsd.sp_id
+        WHERE jsd.is_deleted = 0 AND jsd.ddbh = #{ddbh}
+    </select>
+
+    <update id="updateLqzt">
+        update jwtd_spgl_dhjl set lqzt = 2, update_dept = #{deptId}, fhr = #{userId} where ddbh = #{ddbh}
+    </update>
+
+    <select id="getDdList" resultMap="jwtdSpglDhjlResultMap">
+        select
+            jsd.sp_id,
+            js.spmc,
+            jsd.xhjf,
+            js.lqdd,
+            jsd.create_time,
+            jsd.lqzt
+        from jwtd_spgl_dhjl jsd
+        left join jwtd_spgl js on js.id = jsd.sp_id
+        where jsd.user_id = #{userId}
+        <if test="type == '待领取'">
+            and jsd.lqzt = '2'
+        </if>
+        <if test="type == '历史'">
+            and (jsd.lqzt = '3' or jsd.lqzt = '4')
+        </if>
+        <if test="spmc != null and spmc != ''">
+            and jsd.spmc like '%' || #{spmc} || '%'
+        </if>
+    </select>
+</mapper>

+ 45 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/pojo/dto/JwtdSpglDhjlDTO.java

@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.pojo.dto;
+
+import org.springblade.modules.jwtdSpglDhjl.pojo.entity.JwtdSpglDhjlEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_商品管理_兑换记录 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class JwtdSpglDhjlDTO extends JwtdSpglDhjlEntity {
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+}

+ 116 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/pojo/entity/JwtdSpglDhjlEntity.java

@@ -0,0 +1,116 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import io.swagger.v3.oas.annotations.media.Schema;
+import org.springblade.core.mp.base.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
+import org.springblade.core.tenant.mp.TenantEntity;
+import lombok.EqualsAndHashCode;
+import org.springblade.modules.jwtdSpgl.pojo.entity.JwtdSpglEntity;
+import org.springblade.modules.jwtdSpglDhjl.pojo.vo.JwtdSpglDhjlVO;
+
+import java.io.Serial;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理_兑换记录 实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+@TableName("jwtd_spgl_dhjl")
+@Schema(description = "JwtdSpglDhjlEntity对象")
+@EqualsAndHashCode(callSuper = true)
+public class JwtdSpglDhjlEntity extends BaseEntity {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 订单编号
+	 */
+	@Schema(description = "订单编号")
+	private String ddbh;
+	/**
+	 * 用户id
+	 */
+	@Schema(description = "用户id")
+	private Long userId;
+	/**
+	 * 商品id
+	 */
+	@Schema(description = "商品id")
+	private Long spId;
+	/**
+	 * 消耗积分
+	 */
+	@Schema(description = "消耗积分")
+	private Integer xhjf;
+	/**
+	 * 领取状态
+	 */
+	@Schema(description = "领取状态")
+	private String lqzt;
+	/**
+	 * 发放单位
+	 */
+	@Schema(description = "发放单位")
+	private Long updateDept;
+	/**
+	 * 商品数量
+	 */
+	@Schema(description = "商品数量")
+	private Integer spsl;
+	/**
+	 * 发货人
+	 */
+	@Schema(description = "发货人")
+	private Integer fhr;
+	/**
+	 * 数量
+	 */
+	@TableField(exist = false)
+	private Integer count;
+	/**
+	 * 积分
+	 */
+	@TableField(exist = false)
+	private Integer jf;
+	@TableField(exist = false)
+	private String name;
+	@TableField(exist = false)
+	private String sfzh;
+	@TableField(exist = false)
+	private String phone;
+	@TableField(exist = false)
+	private String fhName;
+	@TableField(exist = false)
+	private List<JwtdSpglDhjlVO> spList;
+}

+ 46 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/pojo/vo/JwtdSpglDhjlVO.java

@@ -0,0 +1,46 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.pojo.vo;
+
+import org.springblade.modules.jwtdSpglDhjl.pojo.entity.JwtdSpglDhjlEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.io.Serial;
+
+/**
+ * 警务团队_商品管理_兑换记录 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Data
+public class JwtdSpglDhjlVO {
+	private Long spId;
+	private String spmc;
+	private String spms;
+	private String spsl;
+	private String xhjf;
+}

+ 67 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/service/IJwtdSpglDhjlService.java

@@ -0,0 +1,67 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.modules.jwtdSpglDhjl.pojo.entity.JwtdSpglDhjlEntity;
+import org.springblade.modules.jwtdSpglDhjl.pojo.vo.JwtdSpglDhjlVO;
+import org.springblade.modules.jwtdSpglDhjl.excel.JwtdSpglDhjlExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理_兑换记录 服务类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public interface IJwtdSpglDhjlService extends BaseService<JwtdSpglDhjlEntity> {
+	/**
+	 * 自定义分页
+	 *
+	 * @param page 分页参数
+	 * @param jwtdSpglDhjl 查询参数
+	 * @return IPage<JwtdSpglDhjlVO>
+	 */
+	IPage<JwtdSpglDhjlEntity> selectJwtdSpglDhjlPage(IPage<JwtdSpglDhjlEntity> page, JwtdSpglDhjlEntity jwtdSpglDhjl);
+
+	/**
+	 * 导出数据
+	 *
+	 * @param queryWrapper 查询条件
+	 * @return List<JwtdSpglDhjlExcel>
+	 */
+	List<JwtdSpglDhjlExcel> exportJwtdSpglDhjl(Wrapper<JwtdSpglDhjlEntity> queryWrapper);
+
+	JwtdSpglDhjlEntity detailByDdbh(JwtdSpglDhjlEntity jwtdSpglDhjl);
+
+	List<JwtdSpglDhjlVO> detailListByDdbh(JwtdSpglDhjlEntity jwtdSpglDhjl);
+
+	boolean updateLqzt(String ddbh, Long useerId, String deptId);
+
+	List<JwtdSpglDhjlEntity> getDdList(String type, Long userId, String spmc);
+}

+ 82 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/service/impl/JwtdSpglDhjlServiceImpl.java

@@ -0,0 +1,82 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.service.impl;
+
+import org.springblade.modules.jwtdSpglDhjl.pojo.entity.JwtdSpglDhjlEntity;
+import org.springblade.modules.jwtdSpglDhjl.pojo.vo.JwtdSpglDhjlVO;
+import org.springblade.modules.jwtdSpglDhjl.excel.JwtdSpglDhjlExcel;
+import org.springblade.modules.jwtdSpglDhjl.mapper.JwtdSpglDhjlMapper;
+import org.springblade.modules.jwtdSpglDhjl.service.IJwtdSpglDhjlService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 警务团队_商品管理_兑换记录 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+@Service
+public class JwtdSpglDhjlServiceImpl extends BaseServiceImpl<JwtdSpglDhjlMapper, JwtdSpglDhjlEntity> implements IJwtdSpglDhjlService {
+
+	@Override
+	public IPage<JwtdSpglDhjlEntity> selectJwtdSpglDhjlPage(IPage<JwtdSpglDhjlEntity> page, JwtdSpglDhjlEntity jwtdSpglDhjl) {
+		return page.setRecords(baseMapper.selectJwtdSpglDhjlPage(page, jwtdSpglDhjl));
+	}
+
+	@Override
+	public List<JwtdSpglDhjlExcel> exportJwtdSpglDhjl(Wrapper<JwtdSpglDhjlEntity> queryWrapper) {
+		List<JwtdSpglDhjlExcel> jwtdSpglDhjlList = baseMapper.exportJwtdSpglDhjl(queryWrapper);
+		//jwtdSpglDhjlList.forEach(jwtdSpglDhjl -> {
+		//	jwtdSpglDhjl.setTypeName(DictCache.getValue(DictEnum.YES_NO, JwtdSpglDhjlEntity.getType()));
+		//});
+		return jwtdSpglDhjlList;
+	}
+
+	@Override
+	public JwtdSpglDhjlEntity detailByDdbh(JwtdSpglDhjlEntity jwtdSpglDhjl) {
+		return baseMapper.detailByDdbh(jwtdSpglDhjl);
+	}
+
+	@Override
+	public List<JwtdSpglDhjlVO> detailListByDdbh(JwtdSpglDhjlEntity jwtdSpglDhjl) {
+		return baseMapper.detailListByDdbh(jwtdSpglDhjl);
+	}
+
+	@Override
+	public boolean updateLqzt(String ddbh, Long useerId, String deptId) {
+		return baseMapper.updateLqzt(ddbh, useerId, deptId);
+	}
+
+	@Override
+	public List<JwtdSpglDhjlEntity> getDdList(String type, Long userId, String spmc) {
+		return baseMapper.getDdList(type, userId, spmc);
+	}
+
+}

+ 58 - 0
src/main/java/org/springblade/modules/jwtdSpglDhjl/wrapper/JwtdSpglDhjlWrapper.java

@@ -0,0 +1,58 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ * <p>
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ * <p>
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ * <p>
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ * <p>
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ * <p>
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ * <p>
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ * <p>
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.modules.jwtdSpglDhjl.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.jwtdSpglDhjl.pojo.entity.JwtdSpglDhjlEntity;
+import org.springblade.modules.jwtdSpglDhjl.pojo.vo.JwtdSpglDhjlVO;
+import java.util.Objects;
+
+/**
+ * 警务团队_商品管理_兑换记录 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-11-11
+ */
+public class JwtdSpglDhjlWrapper extends BaseEntityWrapper<JwtdSpglDhjlEntity, JwtdSpglDhjlVO>  {
+
+	public static JwtdSpglDhjlWrapper build() {
+		return new JwtdSpglDhjlWrapper();
+ 	}
+
+	@Override
+	public JwtdSpglDhjlVO entityVO(JwtdSpglDhjlEntity jwtdSpglDhjl) {
+		JwtdSpglDhjlVO jwtdSpglDhjlVO = Objects.requireNonNull(BeanUtil.copyProperties(jwtdSpglDhjl, JwtdSpglDhjlVO.class));
+
+		//User createUser = UserCache.getUser(jwtdSpglDhjl.getCreateUser());
+		//User updateUser = UserCache.getUser(jwtdSpglDhjl.getUpdateUser());
+		//jwtdSpglDhjlVO.setCreateUserName(createUser.getName());
+		//jwtdSpglDhjlVO.setUpdateUserName(updateUser.getName());
+
+		return jwtdSpglDhjlVO;
+	}
+
+}

+ 56 - 0
src/main/java/org/springblade/modules/system/controller/DeptController.java

@@ -45,6 +45,7 @@ import org.springblade.core.launch.constant.AppConstant;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.secure.BladeUser;
 import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tenant.annotation.NonDS;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.constant.BladeConstant;
@@ -53,11 +54,14 @@ import org.springblade.core.tool.support.Kv;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.modules.system.pojo.entity.Dept;
 import org.springblade.modules.system.pojo.entity.User;
+import org.springblade.modules.system.pojo.vo.ListVO;
+import org.springblade.modules.system.pojo.vo.ZdVO;
 import org.springblade.modules.system.service.IDeptService;
 import org.springblade.modules.system.pojo.vo.DeptVO;
 import org.springblade.modules.system.wrapper.DeptWrapper;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
@@ -188,5 +192,57 @@ public class DeptController extends BladeController {
 		return R.data(list);
 	}
 
+	/**
+	 * 获取部门列表
+	 */
+	@GetMapping("getDeptList")
+	public R getDeptList(Long id) {
+		return R.data(deptService.getDeptList(id, AuthUtil.getDeptId()));
+	}
+
+	/**
+	 * 获取区县列表
+	 */
+	@GetMapping("getQxList")
+	public R getQxList() {
+		return R.data(deptService.getQxList(AuthUtil.getDeptId().substring(0, 4)));
+	}
+
+	/**
+	 * 获取警务室列表
+	 */
+	@GetMapping("getJwsList")
+	public R getJwsList(Long id) {
+		return R.data(deptService.getJwsList(id));
+	}
 
+	/**
+	 * 获取警务室列表
+	 */
+	@GetMapping("getFfxcList")
+	public R getFfxcList() {
+		return R.data(deptService.getFfxcList());
+	}
+
+	/**
+	 * 获取字典列表
+	 */
+	@GetMapping("getDictList")
+	public R getDictList() {
+		ZdVO dict = new ZdVO();
+		String code = "";
+		// 职务类别
+		code = "zwlb";
+		List<ListVO> zwlb = deptService.getDictList(code);
+		dict.setZwlb(zwlb);
+		// 工作职责
+		code = "gwzz";
+		List<ListVO> gwzz = deptService.getDictList(code);
+		dict.setGzzz(gwzz);
+		// 防范宣传类型
+		code = "ffxclx";
+		List<ListVO> ffxclx = deptService.getDictList(code);
+		dict.setFfxclx(ffxclx);
+		return R.data(dict);
+	}
 }

+ 3 - 2
src/main/java/org/springblade/modules/system/controller/DictBizController.java

@@ -47,11 +47,14 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.constant.BladeConstant;
 import org.springblade.core.tool.utils.StringPool;
 import org.springblade.modules.system.pojo.entity.DictBiz;
+import org.springblade.modules.system.pojo.vo.ListVO;
+import org.springblade.modules.system.pojo.vo.ZdVO;
 import org.springblade.modules.system.service.IDictBizService;
 import org.springblade.modules.system.pojo.vo.DictBizVO;
 import org.springblade.modules.system.wrapper.DictBizWrapper;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
@@ -215,6 +218,4 @@ public class DictBizController extends BladeController {
 		List<DictBiz> list = dictService.list(Wrappers.<DictBiz>query().lambda().eq(DictBiz::getIsDeleted, BladeConstant.DB_NOT_DELETED));
 		return R.data(list);
 	}
-
-
 }

+ 0 - 12
src/main/java/org/springblade/modules/system/controller/UserController.java

@@ -142,10 +142,6 @@ public class UserController {
 	 */
 	@PostMapping("/save")
 	public R save(@RequestBody User user) {
-		User jh = userService.selectJh(user);
-		if (jh != null) {
-			return R.fail("已有该警号,请重新输入警号");
-		}
 		return R.data(userService.save(user));
 	}
 
@@ -358,12 +354,4 @@ public class UserController {
 	public R selectRyxxBySfzh(String sfzh) {
 		return R.data(userService.selectRyxxBySfzh(sfzh));
 	}
-
-	/**
-	 * 信息公开管理列表
-	 */
-	@GetMapping("selectXxgkgl")
-	public R selectXxgkgl(User user, Query query) {
-		return R.data(userService.selectXxgkgl(Condition.getPage(query), user));
-	}
 }

+ 18 - 0
src/main/java/org/springblade/modules/system/mapper/DeptMapper.java

@@ -28,6 +28,7 @@ package org.springblade.modules.system.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.springblade.modules.system.pojo.entity.Dept;
 import org.springblade.modules.system.pojo.vo.DeptVO;
+import org.springblade.modules.system.pojo.vo.ListVO;
 
 import java.util.List;
 import java.util.Map;
@@ -74,4 +75,21 @@ public interface DeptMapper extends BaseMapper<Dept> {
 	 */
 	List<String> getDeptNames(Long[] ids);
 
+    List<ListVO> getDeptList(Long id, String deptId);
+
+	List<ListVO> getQxList(String deptId);
+
+	List<ListVO> getJwsList(Long id);
+
+	List<ListVO> getDictList(String code);
+
+	List<ListVO> getFfxcList();
+
+	List<Dept> selectPcs(String deptId);
+
+	List<Dept> selectSq(String deptId);
+
+	Dept selectSspcsBm(String sspcs);
+
+	Dept selectSssqBm(String sssq, Long id);
 }

+ 67 - 0
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml

@@ -112,4 +112,71 @@
         and is_deleted = 0
     </select>
 
+    <select id="getDeptList" resultType="org.springblade.modules.system.pojo.vo.ListVO">
+        select
+            id as value,
+            dept_name as label
+        from blade_dept
+        where is_deleted = 0
+        <if test="id == null">
+            and dept_category = '6' and (id = #{deptId} :: int8 or ancestors like '%' || #{deptId} || '%')
+        </if>
+        <if test="id != null and id != ''">
+            and parent_id = #{id}
+        </if>
+    </select>
+
+    <select id="getQxList" resultType="org.springblade.modules.system.pojo.vo.ListVO">
+        select
+            "" as value,
+            br.city_name || br.name as label
+        from blade_region
+        where parent_code = #{deptId} and is_deleted = 0
+    </select>
+
+    <select id="getJwsList" resultType="org.springblade.modules.system.pojo.vo.ListVO">
+        select
+            id as value,
+            jwsmc as label
+        from jdrh.jlrh_jws
+        where is_deleted = 0 and ssbm_bm = #{id}
+    </select>
+
+    <select id="getDictList" resultType="org.springblade.modules.system.pojo.vo.ListVO">
+        select
+            id as value,
+            dict_value as label
+        from blade_dict_biz
+        where code = #{code} and parent_id > 0 and is_sealed = 0 and is_deleted = 0
+    </select>
+
+    <select id="getFfxcList" resultType="org.springblade.modules.system.pojo.vo.ListVO">
+        select
+            remark as value,
+            dict_value as label
+        from blade_dict_biz
+        where code = 'ffxclx' and parent_id > 0 and is_sealed = 0 and is_deleted = 0
+    </select>
+
+    <select id="selectPcs" resultMap="deptResultMap">
+        select dept_name from blade_dept where dept_category = '6' and id :: text = #{deptId}
+    </select>
+
+    <select id="selectSq" resultMap="deptResultMap">
+        select dept_name from blade_dept where dept_category = '7' and parent_id :: text = #{deptId}
+    </select>
+
+    <select id="selectSspcsBm" resultType="org.springblade.modules.system.pojo.entity.Dept">
+        SELECT
+            id,
+            dept_name
+        FROM
+            blade_dept
+        WHERE
+            dept_name = #{ssfjMc}
+    </select>
+
+    <select id="selectSssqBm" resultMap="deptResultMap">
+        select id from blade_dept where dept_name = #{sssq} and parent_id = #{id}
+    </select>
 </mapper>

+ 1 - 1
src/main/java/org/springblade/modules/system/mapper/DictBizMapper.java

@@ -29,6 +29,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.springblade.core.tenant.annotation.TenantIgnore;
 import org.springblade.modules.system.pojo.entity.DictBiz;
 import org.springblade.modules.system.pojo.vo.DictBizVO;
+import org.springblade.modules.system.pojo.vo.ListVO;
 
 import java.util.List;
 
@@ -73,5 +74,4 @@ public interface DictBizMapper extends BaseMapper<DictBiz> {
 	 * @return
 	 */
 	List<DictBizVO> parentTree();
-
 }

+ 0 - 1
src/main/java/org/springblade/modules/system/mapper/DictBizMapper.xml

@@ -47,5 +47,4 @@
     <select id="parentTree" resultMap="treeNodeResultMap">
         select id, parent_id, dict_value as title, id as "value", id as "key" from blade_dict_biz where is_deleted = 0 and parent_id = 0
     </select>
-
 </mapper>

+ 0 - 4
src/main/java/org/springblade/modules/system/mapper/UserMapper.java

@@ -80,8 +80,4 @@ public interface UserMapper extends BaseMapper<User> {
 	List<UserExcel> exportUser(@Param("ew") Wrapper<User> queryWrapper);
 
     RyVO selectRyxxBySfzh(String sfzh);
-
-    User selectJh(User user);
-
-	IPage<User> selectXxgkgl(IPage<User> page, User user);
 }

+ 0 - 41
src/main/java/org/springblade/modules/system/mapper/UserMapper.xml

@@ -88,45 +88,4 @@
     <select id="selectRyxxBySfzh" resultType="org.springblade.modules.system.pojo.vo.RyVO">
         select ryxm,rydh from sspt.ybss_xx where rysfzh = #{sfzh}
     </select>
-
-    <select id="selectJh" resultMap="userResultMap">
-        select account from jwtd.blade_user where is_deleted = 0 and account = #{account}
-    </select>
-
-    <select id="selectXxgkgl" resultMap="userResultMap">
-        select
-            bu.name,
-            bu.sex,
-            bu.account,
-            bu.phone,
-            bu.gxsq_id,
-            bu.jws_id,
-            bu.dept_id,
-            bd.dept_name as ssdwMc,
-            gxsq.dept_name as gxsqMc,
-            jj.jwsmc
-        from blade_user bu
-        left join blade_dept bd on bu.dept_id = bd.id
-        left join blade_dept gxsq on gxsq.id = bu.gxsq_id
-        left join jdrh.jlrh_jws jj on jj.id = bu.jws_id
-        where bu.is_deleted = 0
-        <if test="user.name != null and user.name != ''">
-            and bu.name = #{user.name}
-        </if>
-        <if test="user.sex != null and user.sex = ''">
-            and bu.sex = #{user.sex}
-        </if>
-        <if test="user.phone != null and user.phone = ''">
-            and bu.phone = #{user.phone}
-        </if>
-        <if test="user.deptId != null and user.deptId = ''">
-            and bu.dept_id = #{user.deptId} :: int8
-        </if>
-        <if test="user.jwsId != null and user.jwsId = ''">
-            and bu.jws_id = #{user.jwsId}
-        </if>
-        <if test="user.gxsqId != null and user.gxsqId = ''">
-            and bu.gxsq_id = #{user.gxsqId}
-        </if>
-    </select>
 </mapper>

+ 12 - 0
src/main/java/org/springblade/modules/system/pojo/entity/User.java

@@ -123,6 +123,18 @@ public class User extends TenantEntity {
 	 * 工作职责
 	 */
 	private String zp;
+	/**
+	 * 积分
+	 */
+	private Integer jf;
+	/**
+	 * 身份证号
+	 */
+	private String sfzh;
+	/**
+	 * 住址
+	 */
+	private String dz;
 	@TableField(exist = false)
 	private String ssdw;
 	@TableField(exist = false)

+ 1 - 1
src/main/java/org/springblade/modules/system/pojo/entity/UserInfo.java

@@ -74,5 +74,5 @@ public class UserInfo implements Serializable {
 	 */
 	@Schema(description = "第三方授权id")
 	private String oauthId;
-
+	private Integer jf;
 }

+ 9 - 0
src/main/java/org/springblade/modules/system/pojo/vo/ListVO.java

@@ -0,0 +1,9 @@
+package org.springblade.modules.system.pojo.vo;
+
+import lombok.Data;
+
+@Data
+public class ListVO {
+	private String value;
+	private String label;
+}

+ 12 - 0
src/main/java/org/springblade/modules/system/pojo/vo/ZdVO.java

@@ -0,0 +1,12 @@
+package org.springblade.modules.system.pojo.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ZdVO {
+	private List<ListVO> zwlb;
+	private List<ListVO> gzzz;
+	private List<ListVO> ffxclx;
+}

+ 18 - 0
src/main/java/org/springblade/modules/system/service/IDeptService.java

@@ -28,6 +28,7 @@ package org.springblade.modules.system.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.modules.system.pojo.entity.Dept;
 import org.springblade.modules.system.pojo.vo.DeptVO;
+import org.springblade.modules.system.pojo.vo.ListVO;
 
 import java.util.List;
 import java.util.Map;
@@ -125,4 +126,21 @@ public interface IDeptService extends IService<Dept> {
 	 */
 	List<DeptVO> search(String deptName, Long parentId);
 
+    List<ListVO> getDeptList(Long id, String deptId);
+
+	List<ListVO> getQxList(String deptId);
+
+	List<ListVO> getJwsList(Long id);
+
+    List<ListVO> getDictList(String code);
+
+	List<ListVO> getFfxcList();
+
+    String selectPcs(String deptId);
+
+	String selectSq(String deptId);
+
+	Dept selectSspcsBm(String sspcs);
+
+	Dept selectSssqBm(String sssq, Long id);
 }

+ 1 - 1
src/main/java/org/springblade/modules/system/service/IDictBizService.java

@@ -30,6 +30,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.core.mp.support.Query;
 import org.springblade.modules.system.pojo.entity.DictBiz;
 import org.springblade.modules.system.pojo.vo.DictBizVO;
+import org.springblade.modules.system.pojo.vo.ListVO;
 
 import java.util.List;
 import java.util.Map;
@@ -124,5 +125,4 @@ public interface IDictBizService extends IService<DictBiz> {
 	 * @return
 	 */
 	List<DictBizVO> childList(Map<String, Object> dict, Long parentId);
-
 }

+ 0 - 4
src/main/java/org/springblade/modules/system/service/IUserService.java

@@ -276,8 +276,4 @@ public interface IUserService extends BaseService<User> {
 	boolean auditRefuse(String userIds);
 
     RyVO selectRyxxBySfzh(String sfzh);
-
-	User selectJh(User user);
-
-    IPage<User> selectXxgkgl(IPage<User> page, User user);
 }

+ 61 - 0
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java

@@ -37,6 +37,7 @@ import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.StringPool;
 import org.springblade.modules.system.pojo.entity.Dept;
 import org.springblade.modules.system.mapper.DeptMapper;
+import org.springblade.modules.system.pojo.vo.ListVO;
 import org.springblade.modules.system.service.IDeptService;
 import org.springblade.modules.system.pojo.vo.DeptVO;
 import org.springblade.modules.system.wrapper.DeptWrapper;
@@ -177,4 +178,64 @@ public class DeptServiceImpl extends ServiceImpl<DeptMapper, Dept> implements ID
 		return DeptWrapper.build().listNodeVO(deptList);
 	}
 
+	@Override
+	public List<ListVO> getDeptList(Long id, String deptId) {
+		return baseMapper.getDeptList(id, deptId);
+	}
+
+	@Override
+	public List<ListVO> getQxList(String deptId) {
+		return baseMapper.getQxList(deptId);
+	}
+
+	@Override
+	public List<ListVO> getJwsList(Long id) {
+		return baseMapper.getJwsList(id);
+	}
+
+	@Override
+	public List<ListVO> getDictList(String code) {
+		return baseMapper.getDictList(code);
+	}
+
+	@Override
+	public List<ListVO> getFfxcList() {
+		return baseMapper.getFfxcList();
+	}
+
+	@Override
+	public String selectPcs(String deptId) {
+		List<Dept> strings = baseMapper.selectPcs(deptId);
+		String s = null;
+		for (Dept d:strings){
+			s = d.getDeptName();
+		}
+		return s;
+	}
+
+	@Override
+	public String selectSq(String deptId) {
+		List<Dept> strings = baseMapper.selectSq(deptId);
+		if (strings.size()!=0) {
+			String s = new String();
+			for (Dept d : strings) {
+				s += d.getDeptName();
+				s += ",";
+			}
+			int last = s.lastIndexOf(",");
+			s = s.substring(0, last);
+			return s;
+		}
+		return null;
+	}
+
+	@Override
+	public Dept selectSspcsBm(String sspcs) {
+		return baseMapper.selectSspcsBm(sspcs);
+	}
+
+	@Override
+	public Dept selectSssqBm(String sssq, Long id) {
+		return baseMapper.selectSssqBm(sssq, id);
+	}
 }

+ 1 - 0
src/main/java/org/springblade/modules/system/service/impl/DictBizServiceImpl.java

@@ -43,6 +43,7 @@ import org.springblade.core.tool.utils.StringPool;
 import org.springblade.modules.system.mapper.DictBizMapper;
 import org.springblade.modules.system.pojo.entity.DictBiz;
 import org.springblade.modules.system.pojo.vo.DictBizVO;
+import org.springblade.modules.system.pojo.vo.ListVO;
 import org.springblade.modules.system.service.IDictBizService;
 import org.springblade.modules.system.wrapper.DictBizWrapper;
 import org.springframework.stereotype.Service;

+ 0 - 11
src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java

@@ -547,15 +547,4 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, User> implement
 	public RyVO selectRyxxBySfzh(String sfzh) {
 		return baseMapper.selectRyxxBySfzh(sfzh);
 	}
-
-	@Override
-	public User selectJh(User user) {
-		return baseMapper.selectJh(user);
-	}
-
-	@Override
-	public IPage<User> selectXxgkgl(IPage<User> page, User user) {
-		return baseMapper.selectXxgkgl(page, user);
-	}
-
 }

+ 2 - 2
src/main/java/org/springblade/modules/szqyCsjl/mapper/JwtdSzqyCsjlMapper.xml

@@ -27,7 +27,7 @@
             jsj.sspcs,
             jsj.sssq
         from jwtd_szqy_csjl jsc
-        left join jwtd_szqy_jyz jsj on jsc.jyz_id = jsj.id
+        left join jwtd_szqy_jyz jsj on jsc.jyz_id = jsj.shtyxydm
         where jsc.is_deleted = 0
         <if test="jwtdSzqyCsjl.gmfmc != null and jwtdSzqyCsjl.gmfmc != ''">
             and jsc.gmfmc like '%' || #{jwtdSzqyCsjl.gmfmc} || '%'
@@ -66,7 +66,7 @@
         select
             *
         from jwtd_szqy_csjl jsc
-        left join jwtd_szqy_jyz jsj on jsc.jyz_id = jsj.id
+        left join jwtd_szqy_jyz jsj on jsc.jyz_id = jsj.shtyxydm
         where jsc.is_deleted = 0 and jsc.id = #{id}
     </select>
 </mapper>

+ 13 - 3
src/main/java/org/springblade/modules/szqyCsjl/pojo/entity/JwtdSzqyCsjlEntity.java

@@ -50,10 +50,10 @@ public class JwtdSzqyCsjlEntity extends BaseEntity {
 	private static final long serialVersionUID = 1L;
 
 	/**
-	 * 加油站id
+	 * 加油站社会统一信用代码
 	 */
-	@Schema(description = "加油站id")
-	private Long jyzId;
+	@Schema(description = "加油站社会统一信用代码")
+	private String jyzId;
 	/**
 	 * 购买方类型(1.个人  2.企业)
 	 */
@@ -115,6 +115,16 @@ public class JwtdSzqyCsjlEntity extends BaseEntity {
 	@Schema(description = "派出所证明文件/单位介绍信")
 	private String zmzp;
 	/**
+	 * 社会统一编码
+	 */
+	@Schema(description = "社会统一编码")
+	private String shtybm;
+	/**
+	 * 经办人姓名
+	 */
+	@Schema(description = "经办人姓名")
+	private String jbrxm;
+	/**
 	 * 加油站名称
 	 */
 	@TableField(exist = false)

+ 50 - 3
src/main/java/org/springblade/modules/szqyJyz/controller/JwtdSzqyJyzController.java

@@ -32,13 +32,19 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import jakarta.validation.Valid;
 
+import org.apache.commons.lang3.StringUtils;
 import org.springblade.core.secure.BladeUser;
 import org.springblade.core.secure.annotation.PreAuth;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.system.pojo.entity.Dept;
+import org.springblade.modules.system.service.IDeptService;
 import org.springblade.modules.szqyCsjl.pojo.entity.JwtdSzqyCsjlEntity;
+import org.springblade.modules.szqyJyz.utils.ExcelUtils;
 import org.springframework.web.bind.annotation.*;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -52,9 +58,11 @@ import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.tool.constant.BladeConstant;
 import org.springblade.core.tool.constant.RoleConstant;
-import java.util.Map;
-import java.util.List;
+
+import java.util.*;
+
 import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.web.multipart.MultipartFile;
 
 /**
  * 警务团队_散装汽油_加油站详情 控制器
@@ -70,6 +78,8 @@ public class JwtdSzqyJyzController extends BladeController {
 
 	private final IJwtdSzqyJyzService jwtdSzqyJyzService;
 
+	private final IDeptService deptService;
+
 	/**
 	 * 警务团队_散装汽油_加油站详情 详情
 	 */
@@ -78,7 +88,7 @@ public class JwtdSzqyJyzController extends BladeController {
 	@Operation(summary = "详情", description  = "传入jwtdSzqyJyz")
 	public R detail(JwtdSzqyJyzEntity jwtdSzqyJyz) {
 		JwtdSzqyJyzEntity detail = jwtdSzqyJyzService.getById(jwtdSzqyJyz.getId());
-		List<JwtdSzqyCsjlEntity> csjlList = jwtdSzqyJyzService.selectCsjlById(jwtdSzqyJyz.getId());
+		List<JwtdSzqyCsjlEntity> csjlList = jwtdSzqyJyzService.selectCsjlById(jwtdSzqyJyz.getShtyxydm());
 		detail.setCsjlList(csjlList);
 		return R.data(detail);
 	}
@@ -162,4 +172,41 @@ public class JwtdSzqyJyzController extends BladeController {
 		List<JwtdSzqyJyzExcel> list = jwtdSzqyJyzService.exportJwtdSzqyJyz(queryWrapper);
 		ExcelUtil.export(response, "警务团队_散装汽油_加油站详情数据" + DateUtil.time(), "警务团队_散装汽油_加油站详情数据表", list, JwtdSzqyJyzExcel.class);
 	}
+
+	/**
+	 * 加油站下载模板
+	 */
+	@PostMapping("jyzxzmb")
+	public void jyzxzmb(HttpServletResponse response) {
+		List<Object> head = Arrays.asList("加油站名称", "社会统一信用代码", "法人姓名", "法人电话", "负责人姓名", "负责人电话", "加油站地址", "管辖地派出所", "管辖地社区");
+		List<List<Object>> list = new ArrayList<>();
+		list.add(head);
+		Map<Integer, List<String>> listMap = new HashMap<>();
+		String pcs = deptService.selectPcs(AuthUtil.getDeptId());
+		String sq = deptService.selectSq(AuthUtil.getDeptId());
+		listMap.put(7, Arrays.asList(pcs));
+		listMap.put(8, Arrays.asList(sq));
+		ExcelUtils.export(response, "加油站模板", list, listMap);
+	}
+
+	/**
+	 * 加油站导入
+	 */
+	@PostMapping("jyzdr")
+	public R<Boolean> jyzdr(MultipartFile file) {
+		List<JwtdSzqyJyzEntity> jyzList = new ArrayList<>();
+		List<JwtdSzqyJyzExcel> list = ExcelUtil.read(file, JwtdSzqyJyzExcel.class);
+		for (JwtdSzqyJyzExcel jyzExcel : list) {
+			if (StringUtils.isBlank(jyzExcel.getShtyxydm())) {
+				return R.fail("社会统一信用代码为空,请重新填写");
+			}
+			Dept sspcsBm = deptService.selectSspcsBm(jyzExcel.getSspcs());
+			Dept sssqBm = deptService.selectSssqBm(jyzExcel.getSssq(), sspcsBm.getId());
+			jyzExcel.setSspcs(sspcsBm.getId().toString());
+			jyzExcel.setSssq(sssqBm.getId().toString());
+			JwtdSzqyJyzEntity jyz = BeanUtil.copy(jyzExcel, JwtdSzqyJyzEntity.class);
+			jyzList.add(jyz);
+		}
+		return R.data(jwtdSzqyJyzService.saveBatch(jyzList));
+	}
 }

+ 14 - 0
src/main/java/org/springblade/modules/szqyJyz/excel/JwtdSzqyJyzExcel.java

@@ -26,6 +26,8 @@
 package org.springblade.modules.szqyJyz.excel;
 
 
+import com.alibaba.excel.annotation.ExcelIgnore;
+import com.baomidou.mybatisplus.annotation.TableField;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -58,6 +60,12 @@ public class JwtdSzqyJyzExcel implements Serializable {
 	@ExcelProperty("加油站名称")
 	private String jyzmc;
 	/**
+	 * 社会统一信用代码
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("社会统一信用代码")
+	private String shtyxydm;
+	/**
 	 * 加油站详址
 	 */
 	@ColumnWidth(20)
@@ -118,4 +126,10 @@ public class JwtdSzqyJyzExcel implements Serializable {
 	@ExcelProperty("所属社区")
 	private String sssq;
 
+	@ExcelIgnore
+	@TableField(exist = false)
+	private Long sspcsBm;
+	@ExcelIgnore
+	@TableField(exist = false)
+	private Long sssqBm;
 }

+ 1 - 1
src/main/java/org/springblade/modules/szqyJyz/mapper/JwtdSzqyJyzMapper.java

@@ -60,5 +60,5 @@ public interface JwtdSzqyJyzMapper extends BaseMapper<JwtdSzqyJyzEntity> {
 	 */
 	List<JwtdSzqyJyzExcel> exportJwtdSzqyJyz(@Param("ew") Wrapper<JwtdSzqyJyzEntity> queryWrapper);
 
-    List<JwtdSzqyCsjlEntity> selectCsjlById(Long id);
+    List<JwtdSzqyCsjlEntity> selectCsjlById(String shtyxydm);
 }

+ 6 - 2
src/main/java/org/springblade/modules/szqyJyz/mapper/JwtdSzqyJyzMapper.xml

@@ -19,8 +19,12 @@
 
     <select id="selectJwtdSzqyJyzPage" resultMap="jwtdSzqyJyzResultMap">
         select
-            *
+            jsj.*,
+            pcs.dept_name as sspcsMc,
+            sq.dept_name as sssqMc
         from jwtd_szqy_jyz jsj
+        left join blade_dept pcs on jsj.sspcs = pcs.id
+        left join blade_dept sq on jsj.sssq = sq.id
         where is_deleted = 0
         <if test="jwtdSzqyJyz.jyzmc != null and jwtdSzqyJyz.jyzmc != ''">
             and jsj.jyzmc like '%' || #{jwtdSzqyJyz.jyzmc} || '%'
@@ -53,6 +57,6 @@
     </select>
 
     <select id="selectCsjlById" resultType="org.springblade.modules.szqyCsjl.pojo.entity.JwtdSzqyCsjlEntity">
-        select * from jwtd.jwtd_szqy_csjl jsc where is_deleted = 0 and jyz_id = #{id}
+        select * from jwtd.jwtd_szqy_csjl jsc where is_deleted = 0 and jyz_id = #{shtyxydm}
     </select>
 </mapper>

+ 27 - 3
src/main/java/org/springblade/modules/szqyJyz/pojo/entity/JwtdSzqyJyzEntity.java

@@ -95,17 +95,41 @@ public class JwtdSzqyJyzEntity extends BaseEntity {
 	 * 所属区县
 	 */
 	@Schema(description = "所属区县")
-	private String ssqx;
+	private Long ssqx;
 	/**
 	 * 所属派出所
 	 */
 	@Schema(description = "所属派出所")
-	private String sspcs;
+	private Long sspcs;
 	/**
 	 * 所属社区
 	 */
 	@Schema(description = "所属社区")
-	private String sssq;
+	private Long sssq;
+	/**
+	 * 社会统一信用代码
+	 */
+	@Schema(description = "社会统一信用代码")
+	private String shtyxydm;
+	/**
+	 * 法人姓名
+	 */
+	@Schema(description = "法人姓名")
+	private String frxm;
+	/**
+	 * 法人电话
+	 */
+	@Schema(description = "法人电话")
+	private String frdh;
+	/**
+	 * 负责人电话
+	 */
+	@Schema(description = "负责人电话")
+	private String fzrdh;
 	@TableField(exist = false)
 	private List<JwtdSzqyCsjlEntity> csjlList;
+	@TableField(exist = false)
+	private String sspcsMc;
+	@TableField(exist = false)
+	private String sssqMc;
 }

+ 1 - 1
src/main/java/org/springblade/modules/szqyJyz/service/IJwtdSzqyJyzService.java

@@ -58,5 +58,5 @@ public interface IJwtdSzqyJyzService extends BaseService<JwtdSzqyJyzEntity> {
 	 */
 	List<JwtdSzqyJyzExcel> exportJwtdSzqyJyz(Wrapper<JwtdSzqyJyzEntity> queryWrapper);
 
-    List<JwtdSzqyCsjlEntity> selectCsjlById(Long id);
+    List<JwtdSzqyCsjlEntity> selectCsjlById(String shtyxydm);
 }

+ 2 - 2
src/main/java/org/springblade/modules/szqyJyz/service/impl/JwtdSzqyJyzServiceImpl.java

@@ -61,7 +61,7 @@ public class JwtdSzqyJyzServiceImpl extends BaseServiceImpl<JwtdSzqyJyzMapper, J
 	}
 
 	@Override
-	public List<JwtdSzqyCsjlEntity> selectCsjlById(Long id) {
-		return baseMapper.selectCsjlById(id);
+	public List<JwtdSzqyCsjlEntity> selectCsjlById(String shtyxydm) {
+		return baseMapper.selectCsjlById(shtyxydm);
 	}
 }

+ 77 - 0
src/main/java/org/springblade/modules/szqyJyz/utils/ExcelClassField.java

@@ -0,0 +1,77 @@
+package org.springblade.modules.szqyJyz.utils;
+
+import java.util.LinkedHashMap;
+
+/**
+ * @author sunnyzyq
+ * @date 2021/12/17
+ */
+public class ExcelClassField {
+
+	/** 字段名称 */
+	private String fieldName;
+
+	/** 表头名称 */
+	private String name;
+
+	/** 映射关系 */
+	private LinkedHashMap<String, String> kvMap;
+
+	/** 示例值 */
+	private Object example;
+
+	/** 排序 */
+	private int sort;
+
+	/** 是否为注解字段:0-否,1-是 */
+	private int hasAnnotation;
+
+	public String getFieldName() {
+		return fieldName;
+	}
+
+	public void setFieldName(String fieldName) {
+		this.fieldName = fieldName;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public LinkedHashMap<String, String> getKvMap() {
+		return kvMap;
+	}
+
+	public void setKvMap(LinkedHashMap<String, String> kvMap) {
+		this.kvMap = kvMap;
+	}
+
+	public Object getExample() {
+		return example;
+	}
+
+	public void setExample(Object example) {
+		this.example = example;
+	}
+
+	public int getSort() {
+		return sort;
+	}
+
+	public void setSort(int sort) {
+		this.sort = sort;
+	}
+
+	public int getHasAnnotation() {
+		return hasAnnotation;
+	}
+
+	public void setHasAnnotation(int hasAnnotation) {
+		this.hasAnnotation = hasAnnotation;
+	}
+
+}

Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff