Browse Source

7.24 一级市场子系统 - pc端 - 基本业务

Mechrevo 1 year ago
parent
commit
fb250b5171
23 changed files with 801 additions and 43 deletions
  1. 3 1
      sp-core/sp-api/src/main/java/com/pj/api/client/admin/AdminInterface.java
  2. 6 1
      sp-core/sp-api/src/main/java/com/pj/api/client/admin/AdminInterfaceFallback.java
  3. 11 5
      sp-core/sp-api/src/main/java/com/pj/api/consts/FeignFactory.java
  4. 9 0
      sp-service/level-one-server/src/main/java/com/pj/tb_goods_transit/TbGoodsTransitController.java
  5. 5 6
      sp-service/level-one-server/src/main/java/com/pj/tb_goods_transit/TbGoodsTransitService.java
  6. 21 0
      sp-service/level-one-server/src/main/java/com/pj/tb_people/TbPeopleAppController.java
  7. 3 0
      sp-service/level-one-server/src/main/java/com/pj/tb_people/TbPeopleService.java
  8. 17 7
      sp-service/sp-admin/src/main/java/com/pj/project/app_user/AppUserController.java
  9. 27 0
      sp-service/sp-admin/src/main/java/com/pj/project/app_user/AppUserService.java
  10. 65 0
      sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenu.java
  11. 91 0
      sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuController.java
  12. 30 0
      sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuMapper.java
  13. 47 0
      sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuMapper.xml
  14. 52 0
      sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuService.java
  15. 27 0
      sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuUtil.java
  16. 75 0
      sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreement.java
  17. 98 0
      sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementController.java
  18. 30 0
      sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementMapper.java
  19. 51 0
      sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementMapper.xml
  20. 81 0
      sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementService.java
  21. 27 0
      sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementUtil.java
  22. 25 21
      sp-service/transport-server/src/main/java/com/pj/project/tb_driver/TbDriver.java
  23. 0 2
      sp-service/transport-server/src/main/java/com/pj/project/tb_driver/TbDriverController.java

+ 3 - 1
sp-core/sp-api/src/main/java/com/pj/api/client/admin/AdminInterface.java

@@ -18,6 +18,8 @@ import org.springframework.web.bind.annotation.RequestParam;
 		)	
 public interface AdminInterface {
 
+	/** 启/停边民的app账号登陆限制 */
+	@RequestMapping("rpc/isLock")
+	int isLock(@RequestParam("id") String id,@RequestParam("status") Integer status);
 
-	
 }

+ 6 - 1
sp-core/sp-api/src/main/java/com/pj/api/client/admin/AdminInterfaceFallback.java

@@ -28,7 +28,12 @@ public class AdminInterfaceFallback implements FallbackFactory<AdminInterface>
 		// 返回熔断后的对象 
 		return new AdminInterface() {
 
-			
+			//启/停边民的app账号登陆限制
+			@Override
+			public int isLock(String id,Integer status) {
+				log.error("错误的id:{},状态:{},保护操作:{}",id,status,"熔断");
+				return 0;
+			}
 		};
 	}
 

+ 11 - 5
sp-core/sp-api/src/main/java/com/pj/api/consts/FeignFactory.java

@@ -1,5 +1,6 @@
 package com.pj.api.consts;
 
+import com.pj.api.client.admin.AdminInterface;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
@@ -21,9 +22,14 @@ public class FeignFactory {
 	public void setSpCfgInterface(SpCfgInterface spCfgInterface) {
 		FeignFactory.spCfgInterface = spCfgInterface;
 	}
-	
-	
-	
-	
-	
+
+
+	/**
+	 *  用户基本配置
+	 */
+	public static AdminInterface adminInterface;
+	@Autowired
+	public static void setAdminInterface(AdminInterface adminInterface) {
+		FeignFactory.adminInterface = adminInterface;
+	}
 }

+ 9 - 0
sp-service/level-one-server/src/main/java/com/pj/tb_goods_transit/TbGoodsTransitController.java

@@ -2,6 +2,8 @@ package com.pj.tb_goods_transit;
 
 import java.io.IOException;
 import java.util.List;
+
+import com.pj.tb_goods_transit.param.JudgeTransitParam;
 import com.pj.utils.so.SoMap;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
@@ -112,6 +114,13 @@ public class TbGoodsTransitController {
 		return AjaxJson.getPageData(so.getDataCount(),transitList);
 	}
 
+	/** 审核上架的商品,可批量 */
+	@GetMapping("judgeTransit")
+	public AjaxJson judgeTransit(JudgeTransitParam judgeTransitParam){
+		String judgedTransit = tbGoodsTransitService.judgeTransit(judgeTransitParam);
+		return AjaxJson.getSuccess(judgedTransit);
+	}
+
 
 	/**
 	 * 数据导入接口

+ 5 - 6
sp-service/level-one-server/src/main/java/com/pj/tb_goods_transit/TbGoodsTransitService.java

@@ -68,13 +68,12 @@ public class TbGoodsTransitService extends ServiceImpl<TbGoodsTransitMapper, TbG
 
 	/** 查看一级市场在销商品 */
 	List<TbGoodsTransit> getTransitList(SoMap so){
+		//设置可展示的状态
+		so.set("audit_status",1);
+		so.set("delete_status",1);
+		so.set("goods_status",1);
 		//获取在销商品列表,根据日期进行降序排序
-		List<TbGoodsTransit> goodsTransitList = tbGoodsTransitMapper.selectList
-				(new LambdaQueryWrapper<TbGoodsTransit>()
-						.eq(TbGoodsTransit::getAuditStatus, 1) //审核状态
-						.eq(TbGoodsTransit::getGoodsStatus, 1)  //在销状态
-						.eq(TbGoodsTransit::getDeleteStatus, 1) //删除状态
-						.orderByDesc(TbGoodsTransit::getCreateTime)); //创建时间降序
+		List<TbGoodsTransit> goodsTransitList = tbGoodsTransitMapper.getList(so);
 		return goodsTransitList;
 	}
 

+ 21 - 0
sp-service/level-one-server/src/main/java/com/pj/tb_people/TbPeopleAppController.java

@@ -0,0 +1,21 @@
+package com.pj.tb_people;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @Author Mechrevo
+ * @Date 2023 07 24 14 56
+ **/
+@RestController
+@RequestMapping("/app/TbPeople/")
+public class TbPeopleAppController {
+
+    @Autowired
+    private TbPeopleService tbPeopleService;
+
+
+
+
+}

+ 3 - 0
sp-service/level-one-server/src/main/java/com/pj/tb_people/TbPeopleService.java

@@ -124,7 +124,10 @@ public class TbPeopleService extends ServiceImpl<TbPeopleMapper, TbPeople> imple
 	}
 
 
+	/** 边民账号停用后不能登录app */
+	void loginPeople(String userName,String password){
 
+	}
 
 
 

+ 17 - 7
sp-service/sp-admin/src/main/java/com/pj/project/app_user/AppUserController.java

@@ -75,13 +75,23 @@ public class AppUserController {
 		List<AppUser> list = appUserService.getList(so.startPage());
 		return AjaxJson.getPageData(so.getDataCount(), list);
 	}
-	
-	
-	
-	
 
-	
-	
-	
+
+
+
+	/** 启/停边民的app账号登陆限制 */
+	@RequestMapping("rpc/isLock")
+	public AjaxJson isLock(@RequestParam("id") String id,@RequestParam("status") Integer status) {
+		boolean lock = appUserService.isLock(id,status);
+		if(lock) return AjaxJson.getSuccess();
+		return AjaxJson.getError();
+	}
+
+
+
+
+
+
+
 
 }

+ 27 - 0
sp-service/sp-admin/src/main/java/com/pj/project/app_user/AppUserService.java

@@ -1,6 +1,8 @@
 package com.pj.project.app_user;
 
 import java.util.List;
+
+import com.pj.api.client.admin.AdminInterface;
 import com.pj.utils.so.SoMap;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -21,6 +23,10 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
 	@Autowired
 	AppUserMapper appUserMapper;
 
+	/** 注入远程调用对象 admin */
+	@Autowired
+	private AdminInterface adminInterface;
+
 	/** 增 */
 	void add(AppUser t){
 		save(t);
@@ -46,6 +52,27 @@ public class AppUserService extends ServiceImpl<AppUserMapper, AppUser> implemen
 	List<AppUser> getList(SoMap so) { 
 		return appUserMapper.getList(so);	
 	}
+
+	/** 启/停边民的app账号登陆限制 */
+	boolean isLock(String id,Integer status){
+		//查询
+		AppUser appUser1 = appUserMapper.selectById(id);
+		if(appUser1 == null)throw new RuntimeException("您进行修改的用户不存在!");
+		//设置状态
+		appUser1.setStatus(status.toString());
+		//定义计数器
+		int count = 0;
+		//保存
+		int i = appUserMapper.updateById(appUser1);
+		count += i;
+		if(i == 1){
+			//远程调用
+			int lock = adminInterface.isLock(id, status);
+			count += lock;
+		}
+		if(count != 2)throw new RuntimeException("启/停状态修改失败!");
+		return count == 2;
+	}
 	
 
 }

+ 65 - 0
sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenu.java

@@ -0,0 +1,65 @@
+package com.pj.project.re_role_menu;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.EqualsAndHashCode;
+
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * Model: re_role_menu -- app用户菜单中间表
+ * @author qzy 
+ */
+@Data
+@Accessors(chain = true)
+@TableName(ReRoleMenu.TABLE_NAME)
+@EqualsAndHashCode(callSuper = false)
+public class ReRoleMenu extends Model<ReRoleMenu> implements Serializable {
+
+	// ---------- 模块常量 ----------
+	/**
+	 * 序列化版本id 
+	 */
+	private static final long serialVersionUID = 1L;	
+	/**
+	 * 此模块对应的表名 
+	 */
+	public static final String TABLE_NAME = "re_role_menu";	
+	/**
+	 * 此模块对应的权限码 
+	 */
+	public static final String PERMISSION_CODE = "re-role-menu";
+	public static final String PERMISSION_CODE_ADD = "re-role-menu-add";
+	public static final String PERMISSION_CODE_EDIT = "re-role-menu-edit";
+	public static final String PERMISSION_CODE_DEL = "re-role-menu-del";
+
+
+
+
+	// ---------- 表中字段 ----------
+	/**
+	 * 主键 
+	 */
+	@TableId(type = IdType.AUTO)
+	private Long id;	
+
+	/**
+	 * app用户id 
+	 */
+	private Long appRoleId;	
+
+	/**
+	 * app菜单id 
+	 */
+	private Long appMenuId;	
+
+
+
+
+
+	
+
+
+}

+ 91 - 0
sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuController.java

@@ -0,0 +1,91 @@
+package com.pj.project.re_role_menu;
+
+import java.util.List;
+import com.pj.utils.so.SoMap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.*;
+
+import com.pj.utils.sg.*;
+import com.pj.project4sp.SP;
+
+import com.pj.current.satoken.StpUserUtil;
+import cn.dev33.satoken.annotation.SaCheckPermission;
+
+
+/**
+ * Controller: re_role_menu -- app用户菜单中间表
+ * @author qzy 
+ */
+@RestController
+@RequestMapping("/ReRoleMenu/")
+public class ReRoleMenuController {
+
+	/** 底层 Service 对象 */
+	@Autowired
+	ReRoleMenuService reRoleMenuService;
+
+	/** 增 */  
+	@RequestMapping("add")
+	@SaCheckPermission(ReRoleMenu.PERMISSION_CODE_ADD)
+	public AjaxJson add(ReRoleMenu r){
+		reRoleMenuService.add(r);
+		r = reRoleMenuService.getById(SP.publicMapper.getPrimarykey());
+		return AjaxJson.getSuccessData(r);
+	}
+
+	/** 删 */  
+	@RequestMapping("delete")
+	@SaCheckPermission(ReRoleMenu.PERMISSION_CODE_DEL)
+	public AjaxJson delete(Long id){
+		 reRoleMenuService.delete(id);
+		return AjaxJson.getSuccess();
+	}
+	
+	/** 删 - 根据id列表 */  
+	@RequestMapping("deleteByIds")
+	@SaCheckPermission(ReRoleMenu.PERMISSION_CODE_DEL)
+	public AjaxJson deleteByIds(){
+		List<Long> ids = SoMap.getRequestSoMap().getListByComma("ids", long.class); 
+		int line = SP.publicMapper.deleteByIds(ReRoleMenu.TABLE_NAME, ids);
+		return AjaxJson.getByLine(line);
+	}
+	
+	/** 改 */  
+	@RequestMapping("update")
+	@SaCheckPermission(ReRoleMenu.PERMISSION_CODE_EDIT)
+	public AjaxJson update(ReRoleMenu r){
+		reRoleMenuService.update(r);
+		return AjaxJson.getSuccess();
+	}
+
+	/** 查 - 根据id */  
+	@RequestMapping("getById")
+		@SaCheckPermission(ReRoleMenu.PERMISSION_CODE)
+	public AjaxJson getById(Long id){
+		ReRoleMenu r = reRoleMenuService.getById(id);
+		return AjaxJson.getSuccessData(r);
+	}
+
+	/**
+	 * 查集合 - 根据条件(参数为空时代表忽略指定条件)
+	 * @param appRoleId 职务ID,非必填
+	 * @return
+	 */
+	@RequestMapping("getList")
+		@SaCheckPermission(ReRoleMenu.PERMISSION_CODE)
+	public AjaxJson getList(@RequestParam(value = "appRoleId",required = false) Integer appRoleId) {
+		SoMap so = SoMap.getRequestSoMap();
+		List<ReRoleMenu> list = reRoleMenuService.getList(so.startPage(),appRoleId);
+		return AjaxJson.getPageData(so.getDataCount(), list);
+	}
+	
+	
+	
+	
+
+	
+	
+	
+
+}

+ 30 - 0
sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuMapper.java

@@ -0,0 +1,30 @@
+package com.pj.project.re_role_menu;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Mapper;
+
+import com.pj.utils.so.*;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ * Mapper: re_role_menu -- app用户菜单中间表
+ * @author qzy 
+ */
+
+@Mapper
+@Repository
+public interface ReRoleMenuMapper extends BaseMapper <ReRoleMenu> {
+
+
+
+	/**
+	 * 查集合 - 根据条件(参数为空时代表忽略指定条件)
+	 * @param so 参数集合 
+	 * @return 数据列表 
+	 */
+	List<ReRoleMenu> getList(SoMap so);
+
+
+}

+ 47 - 0
sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuMapper.xml

@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.pj.project.re_role_menu.ReRoleMenuMapper">
+
+
+
+
+	<!-- ================================== 查询相关 ================================== -->
+	<!-- select id, app_role_id, app_menu_id from re_role_menu  -->
+	
+	<!-- 通用映射:自动模式 -->
+	<resultMap id="model" autoMapping="true" type="com.pj.project.re_role_menu.ReRoleMenu"></resultMap>
+	
+	<!-- 公共查询sql片段 -->
+	<sql id="select_sql">
+		select * 
+		from re_role_menu 
+	</sql>
+
+	
+	<!-- 查集合 - 根据条件(参数为空时代表忽略指定条件) [G] -->
+	<select id="getList" resultMap="model">
+		<include refid="select_sql"></include>
+		<where>
+			<if test=' this.has("id") '> and id = #{id} </if>
+			<if test=' this.has("appRoleId") '> and app_role_id = #{appRoleId} </if>
+			<if test=' this.has("appMenuId") '> and app_menu_id = #{appMenuId} </if>
+		</where>
+		order by
+		<choose>
+			<when test='sortType == 1'> id desc </when>
+			<when test='sortType == 2'> app_role_id desc </when>
+			<when test='sortType == 3'> app_menu_id desc </when>
+			<otherwise> id desc </otherwise>
+		</choose>
+	</select>
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
+</mapper>

+ 52 - 0
sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuService.java

@@ -0,0 +1,52 @@
+package com.pj.project.re_role_menu;
+
+import java.util.List;
+import com.pj.utils.so.SoMap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.transaction.annotation.Transactional;
+import com.pj.utils.sg.*;
+
+/**
+ * Service: re_role_menu -- app用户菜单中间表
+ * @author qzy 
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class ReRoleMenuService extends ServiceImpl<ReRoleMenuMapper, ReRoleMenu> implements IService<ReRoleMenu>{
+
+	/** 底层 Mapper 对象 */
+	@Autowired
+	ReRoleMenuMapper reRoleMenuMapper;
+
+	/** 增 */
+	void add(ReRoleMenu r){
+		save(r);
+	}
+
+	/** 删 */
+	void delete(Long id){
+		removeById(id);
+	}
+
+	/** 改 */
+	void update(ReRoleMenu r){
+		updateById(r);
+
+	}
+
+	/** 查 */
+	ReRoleMenu getById(Long id){
+		return super.getById(id);
+	}
+
+	/** 查集合 - 根据条件(参数为空时代表忽略指定条件) */  
+	List<ReRoleMenu> getList(SoMap so,Integer appRoleId) {
+		so.set("app_role_id",appRoleId);
+		return reRoleMenuMapper.getList(so);	
+	}
+	
+
+}

+ 27 - 0
sp-service/sp-admin/src/main/java/com/pj/project/re_role_menu/ReRoleMenuUtil.java

@@ -0,0 +1,27 @@
+package com.pj.project.re_role_menu;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * 工具类:re_role_menu -- app用户菜单中间表
+ * @author qzy 
+ *
+ */
+@Component
+public class ReRoleMenuUtil {
+
+	
+	/** 底层 Mapper 对象 */
+	public static ReRoleMenuMapper reRoleMenuMapper;
+	@Autowired
+	private void setReRoleMenuMapper(ReRoleMenuMapper reRoleMenuMapper) {
+		ReRoleMenuUtil.reRoleMenuMapper = reRoleMenuMapper;
+	}
+	
+
+
+	
+	
+	
+}

+ 75 - 0
sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreement.java

@@ -0,0 +1,75 @@
+package com.pj.project.tb_agreement;
+
+import java.io.Serializable;
+import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.EqualsAndHashCode;
+
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * Model: tb_agreement -- 隐私政策管理
+ * @author qzy 
+ */
+@Data
+@Accessors(chain = true)
+@TableName(TbAgreement.TABLE_NAME)
+@EqualsAndHashCode(callSuper = false)
+public class TbAgreement extends Model<TbAgreement> implements Serializable {
+
+	// ---------- 模块常量 ----------
+	/**
+	 * 序列化版本id 
+	 */
+	private static final long serialVersionUID = 1L;	
+	/**
+	 * 此模块对应的表名 
+	 */
+	public static final String TABLE_NAME = "tb_agreement";	
+	/**
+	 * 此模块对应的权限码 
+	 */
+	public static final String PERMISSION_CODE = "tb-agreement";
+	public static final String PERMISSION_CODE_ADD = "tb-agreement-add";
+	public static final String PERMISSION_CODE_EDIT = "tb-agreement-edit";
+	public static final String PERMISSION_CODE_DEL = "tb-agreement-del";
+
+
+
+
+	// ---------- 表中字段 ----------
+	/**
+	 * 隐私政策管理主键 
+	 */
+	@TableId(type = IdType.AUTO)
+	private Integer id;	
+
+	/**
+	 * 类型 
+	 */
+	private Integer textType;	
+
+	/**
+	 * 隐私管理文本内容 
+	 */
+	private String context;	
+
+	/**
+	 * 版本号 
+	 */
+	private Integer version;
+
+	/**
+	 * 创建时间 
+	 */
+	private String createTime;	
+
+
+
+
+
+	
+
+
+}

+ 98 - 0
sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementController.java

@@ -0,0 +1,98 @@
+package com.pj.project.tb_agreement;
+
+import java.util.List;
+import com.pj.utils.so.SoMap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.*;
+
+import com.pj.utils.sg.*;
+import com.pj.project4sp.SP;
+
+import com.pj.current.satoken.StpUserUtil;
+import cn.dev33.satoken.annotation.SaCheckPermission;
+
+
+/**
+ * Controller: tb_agreement -- 隐私政策管理
+ * @author qzy 
+ */
+@RestController
+@RequestMapping("/TbAgreement/")
+public class TbAgreementController {
+
+	/** 底层 Service 对象 */
+	@Autowired
+	TbAgreementService tbAgreementService;
+
+	/** 增 */  
+	@RequestMapping("add")
+	@SaCheckPermission(TbAgreement.PERMISSION_CODE_ADD)
+	public AjaxJson add(TbAgreement t){
+		tbAgreementService.add(t);
+		t = tbAgreementService.getById(SP.publicMapper.getPrimarykey());
+		return AjaxJson.getSuccessData(t);
+	}
+
+	/** 删 */  
+	@RequestMapping("delete")
+	@SaCheckPermission(TbAgreement.PERMISSION_CODE_DEL)
+	public AjaxJson delete(Long id){
+		 tbAgreementService.delete(id);
+		return AjaxJson.getSuccess();
+	}
+	
+	/** 删 - 根据id列表 */  
+	@RequestMapping("deleteByIds")
+	@SaCheckPermission(TbAgreement.PERMISSION_CODE_DEL)
+	public AjaxJson deleteByIds(){
+		List<Long> ids = SoMap.getRequestSoMap().getListByComma("ids", long.class); 
+		int line = SP.publicMapper.deleteByIds(TbAgreement.TABLE_NAME, ids);
+		return AjaxJson.getByLine(line);
+	}
+	
+	/** 改 */  
+	@RequestMapping("update")
+	@SaCheckPermission(TbAgreement.PERMISSION_CODE_EDIT)
+	public AjaxJson update(TbAgreement t){
+		tbAgreementService.update(t);
+		return AjaxJson.getSuccess();
+	}
+
+	/** 查 - 根据id */  
+	@RequestMapping("getById")
+		@SaCheckPermission(TbAgreement.PERMISSION_CODE)
+	public AjaxJson getById(Integer id){
+		TbAgreement t = tbAgreementService.getById(id);
+		return AjaxJson.getSuccessData(t);
+	}
+
+	/** 查集合 - 根据条件(参数为空时代表忽略指定条件) */  
+	@RequestMapping("getList")
+		@SaCheckPermission(TbAgreement.PERMISSION_CODE)
+	public AjaxJson getList() { 
+		SoMap so = SoMap.getRequestSoMap();
+		List<TbAgreement> list = tbAgreementService.getList(so.startPage());
+		return AjaxJson.getPageData(so.getDataCount(), list);
+	}
+
+
+	/**
+	 * 根据类型获取其版本号最大的那一条数据
+	 * @param textType 类型[1=隐私政策管理,2=服务协议]
+	 * @return
+	 */
+	@RequestMapping("getMaxVersion")
+	@SaCheckPermission(TbAgreement.PERMISSION_CODE)
+	public AjaxJson getMaxVersion(Integer textType){
+		TbAgreement t = tbAgreementService.getMaxVersion(textType);
+		return AjaxJson.getSuccessData(t);
+	}
+
+
+
+
+
+
+
+}

+ 30 - 0
sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementMapper.java

@@ -0,0 +1,30 @@
+package com.pj.project.tb_agreement;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Mapper;
+
+import com.pj.utils.so.*;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springframework.stereotype.Repository;
+
+/**
+ * Mapper: tb_agreement -- 隐私政策管理
+ * @author qzy 
+ */
+
+@Mapper
+@Repository
+public interface TbAgreementMapper extends BaseMapper <TbAgreement> {
+
+
+
+	/**
+	 * 查集合 - 根据条件(参数为空时代表忽略指定条件)
+	 * @param so 参数集合 
+	 * @return 数据列表 
+	 */
+	List<TbAgreement> getList(SoMap so);
+
+
+}

+ 51 - 0
sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementMapper.xml

@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.pj.project.tb_agreement.TbAgreementMapper">
+
+
+
+
+	<!-- ================================== 查询相关 ================================== -->
+	<!-- select id, text_type, context, version, create_time from tb_agreement  -->
+	
+	<!-- 通用映射:自动模式 -->
+	<resultMap id="model" autoMapping="true" type="com.pj.project.tb_agreement.TbAgreement"></resultMap>
+	
+	<!-- 公共查询sql片段 -->
+	<sql id="select_sql">
+		select * 
+		from tb_agreement 
+	</sql>
+
+	
+	<!-- 查集合 - 根据条件(参数为空时代表忽略指定条件) [G] -->
+	<select id="getList" resultMap="model">
+		<include refid="select_sql"></include>
+		<where>
+			<if test=' this.has("id") '> and id = #{id} </if>
+			<if test=' this.has("textType") '> and text_type = #{textType} </if>
+			<if test=' this.has("context") '> and context = #{context} </if>
+			<if test=' this.has("version") '> and version = #{version} </if>
+			<if test=' this.has("createTime") '> and create_time = #{createTime} </if>
+		</where>
+		order by
+		<choose>
+			<when test='sortType == 1'> id desc </when>
+			<when test='sortType == 2'> text_type desc </when>
+			<when test='sortType == 3'> context desc </when>
+			<when test='sortType == 4'> version desc </when>
+			<when test='sortType == 5'> create_time desc </when>
+			<otherwise> id desc </otherwise>
+		</choose>
+	</select>
+	
+	
+	
+	
+	
+	
+	
+	
+	
+
+</mapper>

+ 81 - 0
sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementService.java

@@ -0,0 +1,81 @@
+package com.pj.project.tb_agreement;
+
+import java.util.Comparator;
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.pj.utils.so.SoMap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.transaction.annotation.Transactional;
+import com.pj.utils.sg.*;
+
+/**
+ * Service: tb_agreement -- 隐私政策管理
+ * @author qzy 
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class TbAgreementService extends ServiceImpl<TbAgreementMapper, TbAgreement> implements IService<TbAgreement>{
+
+	/** 底层 Mapper 对象 */
+	@Autowired
+	TbAgreementMapper tbAgreementMapper;
+
+	/** 增 */
+	void add(TbAgreement t){
+		//判断
+		if(t == null || t.getTextType() > 2 || t.getTextType() < 0)
+			throw new RuntimeException("请输入正确的类型!");
+		//获取同类型最新的那一条数据
+		LambdaQueryWrapper<TbAgreement> queryWrapper = new LambdaQueryWrapper<>();
+		queryWrapper.eq(TbAgreement::getTextType,t.getTextType());
+		queryWrapper.orderByDesc(TbAgreement::getVersion);
+		TbAgreement tbAgreement = tbAgreementMapper.selectList(queryWrapper).get(0);
+		if(tbAgreement == null)throw new RuntimeException("服务器繁忙,请稍后重试~");
+		//获取最新对象的版本号
+		Integer version = tbAgreement.getVersion();
+		//保存到对象中
+		t.setVersion(version + 1);
+		save(t);
+	}
+
+	/** 删 */
+	void delete(Long id){
+		removeById(id);
+	}
+
+	/** 改 */
+	void update(TbAgreement t){
+		updateById(t);
+
+	}
+
+	/** 查 */
+	TbAgreement getById(Integer id){
+		return super.getById(id);
+	}
+
+	/** 查集合 - 根据条件(参数为空时代表忽略指定条件) */  
+	List<TbAgreement> getList(SoMap so) { 
+		return tbAgreementMapper.getList(so);	
+	}
+
+	/**
+	 * 根据类型,查询单个协议,获取其最新的一条数据
+	 * 类型[1=隐私政策管理,2=服务协议]
+	 * @return
+	 */
+	TbAgreement getMaxVersion(Integer textType){
+		//构建查询条件
+		LambdaQueryWrapper<TbAgreement> queryWrapper = new LambdaQueryWrapper<>();
+		queryWrapper.eq(TbAgreement::getTextType,textType);
+		List<TbAgreement> tbAgreements = tbAgreementMapper.selectList(queryWrapper);
+		//过滤版本号最大的一条数据
+		TbAgreement tbAgreement = tbAgreements.stream().max(Comparator.comparing(TbAgreement::getVersion)).orElse(null);
+		return tbAgreement;
+	}
+
+}

+ 27 - 0
sp-service/sp-admin/src/main/java/com/pj/project/tb_agreement/TbAgreementUtil.java

@@ -0,0 +1,27 @@
+package com.pj.project.tb_agreement;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * 工具类:tb_agreement -- 隐私政策管理
+ * @author qzy 
+ *
+ */
+@Component
+public class TbAgreementUtil {
+
+	
+	/** 底层 Mapper 对象 */
+	public static TbAgreementMapper tbAgreementMapper;
+	@Autowired
+	private void setTbAgreementMapper(TbAgreementMapper tbAgreementMapper) {
+		TbAgreementUtil.tbAgreementMapper = tbAgreementMapper;
+	}
+	
+
+
+	
+	
+	
+}

+ 25 - 21
sp-service/transport-server/src/main/java/com/pj/project/tb_driver/TbDriver.java

@@ -129,59 +129,63 @@ public class TbDriver extends Model<TbDriver> implements Serializable {
 	private Integer isLock;
 
 	/**
-	 * 创建者id 
+	 * 审核不通过原因
 	 */
-	private String createBy;	
+	private String nopassReason;
+
 
 	/**
-	 * 创建者名称 
+	 * 审核状态(0=待审核,1=已通过,2=不通过)
 	 */
-	private String createName;	
+	private Integer auditStatus;
 
 	/**
-	 * 创建时间 
+	 * 审核人
 	 */
-	@JsonFormat(pattern = "yyyy-MM-dd")
-	private Date createTime;
+	private String auditBy;
 
 	/**
-	 * 审核不通过原因
+	 * 审核时间
 	 */
-	private String nopassReason;
+	@JsonFormat(pattern = "yyyy-MM-dd")
+	private Date auditTime;
+
+
 
 	/**
-	 * 更新者id 
+	 * 创建者id 
 	 */
-	private String updateBy;	
+	private String createBy;	
 
 	/**
-	 * 更新者名称 
+	 * 创建者名称 
 	 */
-	private String updateName;	
+	private String createName;	
 
 	/**
-	 * 更新时间 
+	 * 创建时间 
 	 */
 	@JsonFormat(pattern = "yyyy-MM-dd")
-	private Date updateTime;	
+	private Date createTime;
 
 
 
 	/**
-	 * 审核状态(0=待审核,1=已通过,2=不通过) 
+	 * 更新者id 
 	 */
-	private Integer auditStatus;	
+	private String updateBy;	
 
 	/**
-	 * 审核人 
+	 * 更新者名称 
 	 */
-	private String auditBy;	
+	private String updateName;	
 
 	/**
-	 * 审核时间 
+	 * 更新时间 
 	 */
 	@JsonFormat(pattern = "yyyy-MM-dd")
-	private Date auditTime;
+	private Date updateTime;	
+
 
 
 

+ 0 - 2
sp-service/transport-server/src/main/java/com/pj/project/tb_driver/TbDriverController.java

@@ -4,13 +4,11 @@ import java.io.IOException;
 import java.util.List;
 import com.pj.utils.so.SoMap;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 
 import com.pj.utils.sg.*;
 import com.pj.project4sp.SP;
 
-import com.pj.current.satoken.StpUserUtil;
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import org.springframework.web.multipart.MultipartFile;