From 9e76f75f69415280973cf25424f8b0cb8f2985e1 Mon Sep 17 00:00:00 2001 From: hu177768073 <177768073@qq.com> Date: Wed, 9 Oct 2024 15:07:27 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=A4=B4=E5=83=8F?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E3=80=81=E7=94=A8=E6=88=B7=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E3=80=81=E7=94=A8=E6=88=B7=E8=B4=A6=E6=88=B7?= =?UTF-8?q?=E6=B3=A8=E9=94=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hfkj/controller/FileUploadController.java | 88 ++++++++++++ .../com/hfkj/controller/UserController.java | 126 +++++++++++++++++- .../hfkj/dao/BsUserParentRelMapperExt.java | 2 +- .../service/user/BsUserParentRelService.java | 7 + .../com/hfkj/service/user/BsUserService.java | 11 ++ .../user/impl/BsUserParentRelServiceImpl.java | 7 + .../service/user/impl/BsUserServiceImpl.java | 44 +++++- .../com/hfkj/sysenum/user/UserStatusEnum.java | 9 +- 8 files changed, 276 insertions(+), 18 deletions(-) create mode 100644 cweb/src/main/java/com/hfkj/controller/FileUploadController.java diff --git a/cweb/src/main/java/com/hfkj/controller/FileUploadController.java b/cweb/src/main/java/com/hfkj/controller/FileUploadController.java new file mode 100644 index 0000000..9e639c1 --- /dev/null +++ b/cweb/src/main/java/com/hfkj/controller/FileUploadController.java @@ -0,0 +1,88 @@ +package com.hfkj.controller; + +import com.hfkj.common.utils.DateUtil; +import com.hfkj.common.utils.ResponseMsgUtil; +import com.hfkj.config.SysConfig; +import com.hfkj.model.ResponseData; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.multipart.commons.CommonsMultipartResolver; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.File; +import java.io.FileOutputStream; +import java.util.*; + +@RestController +@RequestMapping(value="/fileUpload") +@Api(value="文件上传") +public class FileUploadController { + + private static Logger log = LoggerFactory.getLogger(FileUploadController.class); + + @Resource + private SysConfig sysConfig; + + @RequestMapping(value="/uploadfile",method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "文件上传") + public ResponseData uploadFile(@RequestParam(value = "files" , required = false) MultipartFile files, + HttpServletRequest request, + HttpServletResponse response) throws Exception { + try { + response.setHeader("Access-Control-Allow-Origin", "*"); + CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver( + request.getSession().getServletContext()); + // 判断 request 是否有文件上传,即多部分请求 + List fileNames = new ArrayList(); + if (multipartResolver.isMultipart(request)) { + // 转换成多部分request + MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request; + Iterator iterator = multiRequest.getFileNames(); + + while (iterator.hasNext()) { + MultipartFile file = multiRequest.getFile(iterator.next()); + if (file != null) { + FileOutputStream out = null; + try { + String fileType = file.getOriginalFilename() + .substring(file.getOriginalFilename().lastIndexOf(".") + 1); + String fileName = file.getOriginalFilename().substring(0, file.getOriginalFilename().lastIndexOf(".")) + System.currentTimeMillis() + "." + fileType; + String childPath = DateUtil.date2String(new Date(), "yyyyMM"); + String destDirName = sysConfig.getFileUrl() + File.separator + childPath; + File dir = new File(destDirName); + if (!dir.exists()) { + dir.mkdirs(); + } + out = new FileOutputStream(destDirName + File.separator + fileName); + out.write(file.getBytes()); + out.flush(); + fileNames.add(childPath + "/" + fileName); + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + if (out != null) { + out.close(); + } + } + } + } + } + return ResponseMsgUtil.success(fileNames); + + } catch (Exception e) { + log.error(e.getMessage(), e); + return ResponseMsgUtil.exception(e); + } + + } + + +} diff --git a/cweb/src/main/java/com/hfkj/controller/UserController.java b/cweb/src/main/java/com/hfkj/controller/UserController.java index 7bd7ed5..5719446 100644 --- a/cweb/src/main/java/com/hfkj/controller/UserController.java +++ b/cweb/src/main/java/com/hfkj/controller/UserController.java @@ -5,9 +5,12 @@ import com.hfkj.common.exception.ErrorCode; import com.hfkj.common.exception.ErrorHelp; import com.hfkj.common.exception.SysCode; import com.hfkj.common.security.UserCenter; +import com.hfkj.common.utils.DateUtil; import com.hfkj.common.utils.MemberValidateUtil; import com.hfkj.common.utils.RedisUtil; import com.hfkj.common.utils.ResponseMsgUtil; +import com.hfkj.config.CommonSysConst; +import com.hfkj.config.SysConfig; import com.hfkj.entity.BsUser; import com.hfkj.model.ResponseData; import com.hfkj.model.SecUserSessionObject; @@ -17,17 +20,21 @@ import com.hfkj.sysenum.user.UserLoginType; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.multipart.commons.CommonsMultipartResolver; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import java.util.HashMap; -import java.util.Map; +import javax.servlet.http.HttpServletResponse; +import java.io.File; +import java.io.FileOutputStream; +import java.util.*; /** * @className: ClientController @@ -38,12 +45,15 @@ import java.util.Map; @RequestMapping(value="/user") @Api(value="客户端业务") public class UserController { + private static Logger log = LoggerFactory.getLogger(UserController.class); @Resource private BsUserService userService; @Resource private RedisUtil redisUtil; @Autowired private UserCenter userCenter; + @Autowired + private SysConfig sysConfig; @RequestMapping(value = "/getUser", method = RequestMethod.GET) @ResponseBody @@ -61,6 +71,94 @@ public class UserController { } } + @RequestMapping(value="uploadHead",method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "头像上传") + public ResponseData uploadHead(@RequestParam(value = "files" , required = false) MultipartFile files,HttpServletRequest request,HttpServletResponse response) { + try { + UserSessionObject userSession = userCenter.getSessionModel(UserSessionObject.class); + // 查询用户 + BsUser user = userService.getUser(userSession.getUser().getId()); + if (user == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的用户"); + } + + response.setHeader("Access-Control-Allow-Origin", "*"); + CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver( + request.getSession().getServletContext()); + // 判断 request 是否有文件上传,即多部分请求 + List fileNames = new ArrayList(); + if (multipartResolver.isMultipart(request)) { + // 转换成多部分request + MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request; + Iterator iterator = multiRequest.getFileNames(); + + while (iterator.hasNext()) { + MultipartFile file = multiRequest.getFile(iterator.next()); + if (file != null) { + FileOutputStream out = null; + try { + String fileType = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".") + 1); + String fileName = System.currentTimeMillis() + "." + fileType; + String childPath = "user-head"; + String destDirName = sysConfig.getFileUrl() + File.separator + childPath; + File dir = new File(destDirName); + if (!dir.exists()) { + dir.mkdirs(); + } + out = new FileOutputStream(destDirName + File.separator + fileName); + out.write(file.getBytes()); + out.flush(); + fileNames.add(childPath + "/" + fileName); + + // 修改用户头像 + user.setHeadImg(CommonSysConst.getSysConfig().getDomain()+"/"+fileNames.get(0)); + userService.updateInfo(user); + + } catch (Exception e) { + log.error(e.getMessage(), e); + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "上传失败"); + } finally { + if (out != null) { + out.close(); + } + } + } + } + } + return ResponseMsgUtil.success("上传成功"); + + } catch (Exception e) { + log.error(e.getMessage(), e); + return ResponseMsgUtil.exception(e); + } + + } + + @RequestMapping(value = "/updateName", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "修改用户名称") + public ResponseData updateName(@RequestBody JSONObject body) { + try { + if (body == null || StringUtils.isBlank(body.getString("name"))) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR, ""); + } + UserSessionObject userSession = userCenter.getSessionModel(UserSessionObject.class); + // 查询用户 + BsUser user = userService.getUser(userSession.getUser().getId()); + if (user == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的用户"); + } + user.setName(body.getString("name")); + userService.updateInfo(user); + + return ResponseMsgUtil.success("操作成功"); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + @RequestMapping(value = "/updateWechat", method = RequestMethod.POST) @ResponseBody @ApiOperation(value = "修改用户微信号") @@ -219,4 +317,20 @@ public class UserController { } } + @RequestMapping(value = "/delete", method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "注销账户") + public ResponseData delete() { + try { + + UserSessionObject userSession = userCenter.getSessionModel(UserSessionObject.class); + userService.delete(userSession.getUser().getId()); + + return ResponseMsgUtil.success("操作成功"); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + } diff --git a/service/src/main/java/com/hfkj/dao/BsUserParentRelMapperExt.java b/service/src/main/java/com/hfkj/dao/BsUserParentRelMapperExt.java index d9c4bc3..913d0a9 100644 --- a/service/src/main/java/com/hfkj/dao/BsUserParentRelMapperExt.java +++ b/service/src/main/java/com/hfkj/dao/BsUserParentRelMapperExt.java @@ -23,7 +23,7 @@ public interface BsUserParentRelMapperExt { " au.invite_user_id inviteUserId," + " case au.invite_user_id when #{param.parentUserId} then 1 else 2 end relType" + " " + - " FROM (SELECT * FROM bs_user WHERE invite_user_id IS NOT NULL) au," + + " FROM (SELECT * FROM bs_user WHERE invite_user_id IS NOT NULL and `status` ]]> 0) au," + " (SELECT @pid := #{param.parentUserId}) pd" + " WHERE FIND_IN_SET(invite_user_id, @pid) > 0 and @pid := concat(@pid, ',', id)" + " ORDER BY id" + diff --git a/service/src/main/java/com/hfkj/service/user/BsUserParentRelService.java b/service/src/main/java/com/hfkj/service/user/BsUserParentRelService.java index e1d5ee5..11c89c9 100644 --- a/service/src/main/java/com/hfkj/service/user/BsUserParentRelService.java +++ b/service/src/main/java/com/hfkj/service/user/BsUserParentRelService.java @@ -43,6 +43,13 @@ public interface BsUserParentRelService { */ BsUserParentRel getParent(List grade, Long userId); + /** + * 查询用户直属下级用户关系列表 + * @param userId + * @return + */ + List getSonRelList(Long userId); + /** * 查询下级用户列表 * @param param diff --git a/service/src/main/java/com/hfkj/service/user/BsUserService.java b/service/src/main/java/com/hfkj/service/user/BsUserService.java index 8b701d5..0072900 100644 --- a/service/src/main/java/com/hfkj/service/user/BsUserService.java +++ b/service/src/main/java/com/hfkj/service/user/BsUserService.java @@ -27,6 +27,11 @@ public interface BsUserService { */ void updatePhone(Long userId, String newPhone) throws Exception; + /** + * 修改信息 + */ + void updateInfo(BsUser user) throws Exception; + /** * 修改微信号 * @param userId @@ -41,6 +46,12 @@ public interface BsUserService { */ void bindInviteUser(Long userId, Long inviteUseId) throws Exception; + /** + * 注销账户 + * @param userId + */ + void delete(Long userId); + /** * 查询详情 * @param userId diff --git a/service/src/main/java/com/hfkj/service/user/impl/BsUserParentRelServiceImpl.java b/service/src/main/java/com/hfkj/service/user/impl/BsUserParentRelServiceImpl.java index a9c1589..7e2af05 100644 --- a/service/src/main/java/com/hfkj/service/user/impl/BsUserParentRelServiceImpl.java +++ b/service/src/main/java/com/hfkj/service/user/impl/BsUserParentRelServiceImpl.java @@ -69,6 +69,13 @@ public class BsUserParentRelServiceImpl implements BsUserParentRelService { return recursionParent(grade, userParentRel.getParentUserId(), new ArrayList<>(Arrays.asList(userParentRel))); } + @Override + public List getSonRelList(Long userId) { + BsUserParentRelExample example = new BsUserParentRelExample(); + example.createCriteria().andUserIdEqualTo(userId).andStatusEqualTo(0); + return userParentRelMapper.selectByExample(example); + } + @Override public List getTeamSubList(Map param) { return userParentRelMapper.queryTeamSubList(param); diff --git a/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java b/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java index 39846ae..fe885e9 100644 --- a/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java +++ b/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java @@ -8,12 +8,10 @@ import com.hfkj.common.security.SessionObject; import com.hfkj.common.security.UserCenter; import com.hfkj.common.utils.RedisUtil; import com.hfkj.dao.BsUserMapper; -import com.hfkj.entity.BsUser; -import com.hfkj.entity.BsUserExample; -import com.hfkj.entity.BsUserInviteCode; -import com.hfkj.entity.BsUserParentRel; +import com.hfkj.entity.*; import com.hfkj.model.UserSessionObject; import com.hfkj.service.user.*; +import com.hfkj.sysenum.user.UserAccountStatusEnum; import com.hfkj.sysenum.user.UserGradeEnum; import com.hfkj.sysenum.user.UserLoginType; import com.hfkj.sysenum.user.UserStatusEnum; @@ -104,6 +102,18 @@ public class BsUserServiceImpl implements BsUserService { redisUtil.hdel(CACHE_KEY, oldPhone); } + @Override + public void updateInfo(BsUser user) throws Exception { + // 查询用户 + editData(user); + + // 更新session + UserSessionObject session = new UserSessionObject(); + session.setUser(user); + SessionObject sessionObject = new SessionObject(userToken(user.getId()), session); + userCenter.save(sessionObject); + } + @Override public void updateWechatNum(Long userId, String wechatNum) throws Exception { // 查询用户 @@ -151,6 +161,32 @@ public class BsUserServiceImpl implements BsUserService { userCenter.save(sessionObject); } + @Override + @Transactional(propagation= Propagation.REQUIRES_NEW,rollbackFor= {RuntimeException.class}) + public void delete(Long userId) { + // 查询用户 + BsUser user = getUser(userId); + if (user == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到用户"); + } + user.setStatus(UserStatusEnum.status0.getCode()); + editData(user); + + // 删除上级关系 + BsUserParentRel userParentRel = userParentRelService.getDetailByUserId(userId); + if (userParentRel != null) { + userParentRel.setStatus(0); + userParentRelService.editData(userParentRel); + } + // 查询下级关系 + List sonRelList = userParentRelService.getSonRelList(userId); + for (BsUserParentRel sonRel : sonRelList) { + // 删除关系 + sonRel.setStatus(0); + userParentRelService.editData(sonRel); + } + } + @Override public BsUser getUser(Long userId) { return userMapper.selectByPrimaryKey(userId); diff --git a/service/src/main/java/com/hfkj/sysenum/user/UserStatusEnum.java b/service/src/main/java/com/hfkj/sysenum/user/UserStatusEnum.java index a3e8303..913a771 100644 --- a/service/src/main/java/com/hfkj/sysenum/user/UserStatusEnum.java +++ b/service/src/main/java/com/hfkj/sysenum/user/UserStatusEnum.java @@ -10,9 +10,9 @@ import lombok.Getter; @Getter public enum UserStatusEnum { /** - * 删除 + * 已注销 */ - status0(0, "删除"), + status0(0, "已注销"), /** * 正常 @@ -23,11 +23,6 @@ public enum UserStatusEnum { * 禁用 */ status2(2, "禁用"), - - /** - * 已注销 - */ - status3(3, "已注销"), ; private int code; From d54297aa8fa05678343afe22039f9f0258e885e3 Mon Sep 17 00:00:00 2001 From: hu177768073 <177768073@qq.com> Date: Wed, 9 Oct 2024 15:31:02 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=80=E7=9B=B4?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/hfkj/controller/UserController.java | 2 +- .../main/java/com/hfkj/service/user/BsUserService.java | 2 +- .../com/hfkj/service/user/impl/BsUserServiceImpl.java | 9 ++++++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/cweb/src/main/java/com/hfkj/controller/UserController.java b/cweb/src/main/java/com/hfkj/controller/UserController.java index 5719446..4cf9183 100644 --- a/cweb/src/main/java/com/hfkj/controller/UserController.java +++ b/cweb/src/main/java/com/hfkj/controller/UserController.java @@ -112,7 +112,7 @@ public class UserController { fileNames.add(childPath + "/" + fileName); // 修改用户头像 - user.setHeadImg(CommonSysConst.getSysConfig().getDomain()+"/"+fileNames.get(0)); + user.setHeadImg(CommonSysConst.getSysConfig().getDomain()+"/filesystem/"+fileNames.get(0)); userService.updateInfo(user); } catch (Exception e) { diff --git a/service/src/main/java/com/hfkj/service/user/BsUserService.java b/service/src/main/java/com/hfkj/service/user/BsUserService.java index 0072900..66385fd 100644 --- a/service/src/main/java/com/hfkj/service/user/BsUserService.java +++ b/service/src/main/java/com/hfkj/service/user/BsUserService.java @@ -50,7 +50,7 @@ public interface BsUserService { * 注销账户 * @param userId */ - void delete(Long userId); + void delete(Long userId) throws Exception; /** * 查询详情 diff --git a/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java b/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java index fe885e9..7470fa4 100644 --- a/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java +++ b/service/src/main/java/com/hfkj/service/user/impl/BsUserServiceImpl.java @@ -163,12 +163,17 @@ public class BsUserServiceImpl implements BsUserService { @Override @Transactional(propagation= Propagation.REQUIRES_NEW,rollbackFor= {RuntimeException.class}) - public void delete(Long userId) { + public void delete(Long userId) throws Exception { // 查询用户 BsUser user = getUser(userId); if (user == null) { throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到用户"); } + if (UserStatusEnum.status0.getCode() == user.getStatus()) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到用户"); + } + user.setHeadImg(null); + user.setName("账户已注销"); user.setStatus(UserStatusEnum.status0.getCode()); editData(user); @@ -185,6 +190,8 @@ public class BsUserServiceImpl implements BsUserService { sonRel.setStatus(0); userParentRelService.editData(sonRel); } + // 更新session + userCenter.remove(userToken(user.getId())); } @Override From 5301000847a489ee830851279a17d74a6b7e475e Mon Sep 17 00:00:00 2001 From: hu177768073 <177768073@qq.com> Date: Wed, 9 Oct 2024 16:17:15 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E5=AE=8C=E6=88=90CMS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hfkj/controller/CmsController.java | 196 ++++ .../hfkj/controller/FileUploadController.java | 48 - .../main/java/com/hfkj/config/AuthConfig.java | 1 + .../com/hfkj/controller/CmsController.java | 61 + .../java/com/hfkj/dao/CmsContentMapper.java | 125 ++ .../com/hfkj/dao/CmsContentMapperExt.java | 7 + .../com/hfkj/dao/CmsContentSqlProvider.java | 332 ++++++ .../main/java/com/hfkj/entity/CmsContent.java | 232 ++++ .../com/hfkj/entity/CmsContentExample.java | 1003 +++++++++++++++++ .../service/cms/CmsContentReadService.java | 25 + .../hfkj/service/cms/CmsContentService.java | 35 + .../cms/impl/CmsContentServiceImpl.java | 64 ++ .../com/hfkj/sysenum/cms/CmsStatusEnum.java | 48 + .../com/hfkj/sysenum/cms/CmsTypeEnum.java | 41 + 14 files changed, 2170 insertions(+), 48 deletions(-) create mode 100644 bweb/src/main/java/com/hfkj/controller/CmsController.java create mode 100644 cweb/src/main/java/com/hfkj/controller/CmsController.java create mode 100644 service/src/main/java/com/hfkj/dao/CmsContentMapper.java create mode 100644 service/src/main/java/com/hfkj/dao/CmsContentMapperExt.java create mode 100644 service/src/main/java/com/hfkj/dao/CmsContentSqlProvider.java create mode 100644 service/src/main/java/com/hfkj/entity/CmsContent.java create mode 100644 service/src/main/java/com/hfkj/entity/CmsContentExample.java create mode 100644 service/src/main/java/com/hfkj/service/cms/CmsContentReadService.java create mode 100644 service/src/main/java/com/hfkj/service/cms/CmsContentService.java create mode 100644 service/src/main/java/com/hfkj/service/cms/impl/CmsContentServiceImpl.java create mode 100644 service/src/main/java/com/hfkj/sysenum/cms/CmsStatusEnum.java create mode 100644 service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java diff --git a/bweb/src/main/java/com/hfkj/controller/CmsController.java b/bweb/src/main/java/com/hfkj/controller/CmsController.java new file mode 100644 index 0000000..62fbb29 --- /dev/null +++ b/bweb/src/main/java/com/hfkj/controller/CmsController.java @@ -0,0 +1,196 @@ +package com.hfkj.controller; + +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.hfkj.common.exception.ErrorCode; +import com.hfkj.common.exception.ErrorHelp; +import com.hfkj.common.exception.SysCode; +import com.hfkj.common.utils.RedisUtil; +import com.hfkj.common.utils.ResponseMsgUtil; +import com.hfkj.entity.CmsContent; +import com.hfkj.model.ResponseData; +import com.hfkj.service.cms.CmsContentService; +import com.hfkj.service.cms.impl.CmsContentServiceImpl; +import com.hfkj.sysenum.cms.CmsStatusEnum; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.HashMap; +import java.util.Map; + +/** + * @className: CmsController + * @author: HuRui + * @date: 2024/9/24 + **/ +@Controller +@RequestMapping(value = "/cms") +@Api(value = "CMS") +public class CmsController { + private static Logger log = LoggerFactory.getLogger(CmsController.class); + @Resource + private CmsContentService cmsContentService; + @Resource + private RedisUtil redisUtil; + + @RequestMapping(value="/edit",method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "编辑") + public ResponseData edit(@RequestBody CmsContent body) { + try { + if (body == null + || body.getType() == null + || StringUtils.isBlank(body.getImgUrl()) + ) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR); + } + CmsContent cmsContent = null; + if (body.getId() != null) { + // 查询内容 + cmsContent = cmsContentService.getDetail(body.getId()); + if (cmsContent == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到数据"); + } + if (!CmsStatusEnum.status1.getStatus().equals(cmsContent.getStatus())) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法编辑,状态错误"); + } + } else { + cmsContent = new CmsContent(); + cmsContent.setStatus(CmsStatusEnum.status1.getStatus()); + } + cmsContent.setType(body.getType()); + cmsContent.setImgUrl(body.getImgUrl()); + cmsContent.setJumpType(body.getJumpType()); + cmsContent.setJumpUrl(body.getJumpUrl()); + cmsContentService.editData(cmsContent); + return ResponseMsgUtil.success("操作成功"); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + + @RequestMapping(value="/online",method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "上线") + public ResponseData online(@RequestBody CmsContent body) { + try { + if (body == null || body.getId() == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR); + } + // 查询内容 + CmsContent cmsContent = cmsContentService.getDetail(body.getId()); + if (cmsContent == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到数据"); + } + if (!CmsStatusEnum.status1.getStatus().equals(cmsContent.getStatus())) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法上线,状态错误"); + } + cmsContent.setStatus(CmsStatusEnum.status2.getStatus()); + cmsContentService.editData(cmsContent); + + // 删除缓存 + redisUtil.hdel(CmsContentServiceImpl.CACHE_CMS_ONLINE, ""+cmsContent.getType()); + return ResponseMsgUtil.success("操作成功"); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + + @RequestMapping(value="/offline",method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "下线") + public ResponseData offline(@RequestBody CmsContent body) { + try { + if (body == null || body.getId() == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR); + } + // 查询内容 + CmsContent cmsContent = cmsContentService.getDetail(body.getId()); + if (cmsContent == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到数据"); + } + if (!CmsStatusEnum.status2.getStatus().equals(cmsContent.getStatus())) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法下线,状态错误"); + } + cmsContent.setStatus(CmsStatusEnum.status3.getStatus()); + cmsContentService.editData(cmsContent); + + // 删除缓存 + redisUtil.hdel(CmsContentServiceImpl.CACHE_CMS_ONLINE, ""+cmsContent.getType()); + return ResponseMsgUtil.success("操作成功"); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + + @RequestMapping(value="/delete",method = RequestMethod.POST) + @ResponseBody + @ApiOperation(value = "删除") + public ResponseData delete(@RequestBody CmsContent body) { + try { + if (body == null || body.getId() == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.REQ_PARAMS_ERROR); + } + // 查询内容 + CmsContent cmsContent = cmsContentService.getDetail(body.getId()); + if (cmsContent == null) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未找到数据"); + } + if (!CmsStatusEnum.status1.getStatus().equals(cmsContent.getStatus())) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "无法删除,状态错误"); + } + cmsContent.setStatus(CmsStatusEnum.status0.getStatus()); + cmsContentService.editData(cmsContent); + + return ResponseMsgUtil.success("操作成功"); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + + @RequestMapping(value="/getDetail",method = RequestMethod.GET) + @ResponseBody + @ApiOperation(value = "查询详情") + public ResponseData getDetail(@RequestParam(name = "id", required = true) Long id) { + try { + + return ResponseMsgUtil.success(cmsContentService.getDetail(id)); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + + @RequestMapping(value="/queryList",method = RequestMethod.GET) + @ResponseBody + @ApiOperation(value = "查询列表") + public ResponseData queryList(@RequestParam(name = "name", required = false) String name, + @RequestParam(name = "type", required = false) Integer type, + @RequestParam(name = "status", required = false) Integer status, + @RequestParam(name = "pageNum", required = true) Integer pageNum, + @RequestParam(name = "pageSize", required = true) Integer pageSize) { + try { + Map param = new HashMap<>(); + param.put("name", name); + param.put("type", type); + param.put("status", status); + + PageHelper.startPage(pageNum, pageSize); + return ResponseMsgUtil.success(new PageInfo<>(cmsContentService.getList(param))); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + +} diff --git a/bweb/src/main/java/com/hfkj/controller/FileUploadController.java b/bweb/src/main/java/com/hfkj/controller/FileUploadController.java index 7f231a3..74869cd 100644 --- a/bweb/src/main/java/com/hfkj/controller/FileUploadController.java +++ b/bweb/src/main/java/com/hfkj/controller/FileUploadController.java @@ -87,52 +87,4 @@ public class FileUploadController { } } - - @RequestMapping(value = "/fileUpload", method = RequestMethod.POST) - @ApiOperation(value = "上传文件(新接口)") - @ResponseBody - public ResponseData fileUpload(@RequestParam(name = "requestFile") MultipartFile requestFile, - @RequestParam(value = "uploadType", required = true) String uploadType, - HttpServletRequest request - ) { - try { - CommonsMultipartResolver multipartResolver = - new CommonsMultipartResolver(request.getSession().getServletContext()); - - // 提取文件列表 - List files = new ArrayList<>(); - if (multipartResolver.isMultipart(request)) { - MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request; - Iterator iterator = multiRequest.getFileNames(); - - while (iterator.hasNext()) { - MultipartFile file = multiRequest.getFile(iterator.next()); - files.add(file); - } - } - - // 定制参数 - Map paramsMap = new HashMap<>(); - if ("cmsModule".equals(uploadType)) { - paramsMap.put("pathPrefix", sysConfig.getFileUrl()); - paramsMap.put("childPath", "/CMS/module/"); - paramsMap.put("fileNameGenerator", "generateFileNameAndTimeStamp"); - } else if ("cmsPatch".equals(uploadType)) { - paramsMap.put("pathPrefix", sysConfig.getFileUrl()); - paramsMap.put("childPath", "/CMS/html/"); - paramsMap.put("fileNameGenerator", "generateFileNameAndTimeStamp"); - } else if ("cmsImg".equals(uploadType)) { - paramsMap.put("pathPrefix", sysConfig.getFileUrl()); - paramsMap.put("childPath", "/CMS/img/"); - paramsMap.put("fileNameGenerator", "generateFileNameAndTimeStamp"); - } - - return ResponseMsgUtil.success(fileUploadService.upload(files, paramsMap)); - } catch (Exception e) { - log.error("FileUploadController --> addCategoryModule() error!", e); - return ResponseMsgUtil.exception(e); - } - } - - } diff --git a/cweb/src/main/java/com/hfkj/config/AuthConfig.java b/cweb/src/main/java/com/hfkj/config/AuthConfig.java index 2a1d046..63229f3 100644 --- a/cweb/src/main/java/com/hfkj/config/AuthConfig.java +++ b/cweb/src/main/java/com/hfkj/config/AuthConfig.java @@ -96,6 +96,7 @@ public class AuthConfig implements WebMvcConfigurer { .excludePathPatterns("/test/*") .excludePathPatterns("/goods/*") .excludePathPatterns("/taoBaoNotify/*") + .excludePathPatterns("/cms/*") ; } diff --git a/cweb/src/main/java/com/hfkj/controller/CmsController.java b/cweb/src/main/java/com/hfkj/controller/CmsController.java new file mode 100644 index 0000000..b3d952e --- /dev/null +++ b/cweb/src/main/java/com/hfkj/controller/CmsController.java @@ -0,0 +1,61 @@ +package com.hfkj.controller; + +import com.hfkj.common.utils.RedisUtil; +import com.hfkj.common.utils.ResponseMsgUtil; +import com.hfkj.entity.CmsContent; +import com.hfkj.model.ResponseData; +import com.hfkj.service.cms.CmsContentService; +import com.hfkj.service.cms.impl.CmsContentServiceImpl; +import com.hfkj.sysenum.cms.CmsStatusEnum; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @className: CmsController + * @author: HuRui + * @date: 2024/9/24 + **/ +@Controller +@RequestMapping(value = "/cms") +@Api(value = "CMS") +public class CmsController { + private static Logger log = LoggerFactory.getLogger(CmsController.class); + @Resource + private RedisUtil redisUtil; + @Resource + private CmsContentService cmsContentService; + + @RequestMapping(value="/query",method = RequestMethod.GET) + @ResponseBody + @ApiOperation(value = "查询列表") + public ResponseData query(@RequestParam(name = "type", required = true) Integer type) { + try { + // 读取缓存 + Object cache = redisUtil.hget(CmsContentServiceImpl.CACHE_CMS_ONLINE, "" + type); + if (cache != null) { + return ResponseMsgUtil.success(cache); + } + + Map param = new HashMap<>(); + param.put("type", type); + param.put("status", CmsStatusEnum.status2.getStatus()); + List dataList = cmsContentService.getList(param); + // 缓存 + redisUtil.hset(CmsContentServiceImpl.CACHE_CMS_ONLINE, "" + type, dataList); + return ResponseMsgUtil.success(dataList); + + } catch (Exception e) { + return ResponseMsgUtil.exception(e); + } + } + +} diff --git a/service/src/main/java/com/hfkj/dao/CmsContentMapper.java b/service/src/main/java/com/hfkj/dao/CmsContentMapper.java new file mode 100644 index 0000000..734f063 --- /dev/null +++ b/service/src/main/java/com/hfkj/dao/CmsContentMapper.java @@ -0,0 +1,125 @@ +package com.hfkj.dao; + +import com.hfkj.entity.CmsContent; +import com.hfkj.entity.CmsContentExample; +import java.util.List; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.DeleteProvider; +import org.apache.ibatis.annotations.Insert; +import org.apache.ibatis.annotations.InsertProvider; +import org.apache.ibatis.annotations.Options; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Result; +import org.apache.ibatis.annotations.Results; +import org.apache.ibatis.annotations.Select; +import org.apache.ibatis.annotations.SelectProvider; +import org.apache.ibatis.annotations.Update; +import org.apache.ibatis.annotations.UpdateProvider; +import org.apache.ibatis.type.JdbcType; +import org.springframework.stereotype.Repository; + +/** + * + * 代码由工具生成,请勿修改!!! + * 如果需要扩展请在其父类进行扩展 + * + **/ +@Repository +public interface CmsContentMapper extends CmsContentMapperExt { + @SelectProvider(type=CmsContentSqlProvider.class, method="countByExample") + long countByExample(CmsContentExample example); + + @DeleteProvider(type=CmsContentSqlProvider.class, method="deleteByExample") + int deleteByExample(CmsContentExample example); + + @Delete({ + "delete from cms_content", + "where id = #{id,jdbcType=BIGINT}" + }) + int deleteByPrimaryKey(Long id); + + @Insert({ + "insert into cms_content (`type`, `name`, ", + "img_url, jump_type, ", + "jump_url, `status`, ", + "create_time, update_time, ", + "ext_1, ext_2, ext_3)", + "values (#{type,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, ", + "#{imgUrl,jdbcType=VARCHAR}, #{jumpType,jdbcType=INTEGER}, ", + "#{jumpUrl,jdbcType=VARCHAR}, #{status,jdbcType=INTEGER}, ", + "#{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}, ", + "#{ext1,jdbcType=VARCHAR}, #{ext2,jdbcType=VARCHAR}, #{ext3,jdbcType=VARCHAR})" + }) + @Options(useGeneratedKeys=true,keyProperty="id") + int insert(CmsContent record); + + @InsertProvider(type=CmsContentSqlProvider.class, method="insertSelective") + @Options(useGeneratedKeys=true,keyProperty="id") + int insertSelective(CmsContent record); + + @SelectProvider(type=CmsContentSqlProvider.class, method="selectByExample") + @Results({ + @Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true), + @Result(column="type", property="type", jdbcType=JdbcType.INTEGER), + @Result(column="name", property="name", jdbcType=JdbcType.VARCHAR), + @Result(column="img_url", property="imgUrl", jdbcType=JdbcType.VARCHAR), + @Result(column="jump_type", property="jumpType", jdbcType=JdbcType.INTEGER), + @Result(column="jump_url", property="jumpUrl", jdbcType=JdbcType.VARCHAR), + @Result(column="status", property="status", jdbcType=JdbcType.INTEGER), + @Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP), + @Result(column="update_time", property="updateTime", jdbcType=JdbcType.TIMESTAMP), + @Result(column="ext_1", property="ext1", jdbcType=JdbcType.VARCHAR), + @Result(column="ext_2", property="ext2", jdbcType=JdbcType.VARCHAR), + @Result(column="ext_3", property="ext3", jdbcType=JdbcType.VARCHAR) + }) + List selectByExample(CmsContentExample example); + + @Select({ + "select", + "id, `type`, `name`, img_url, jump_type, jump_url, `status`, create_time, update_time, ", + "ext_1, ext_2, ext_3", + "from cms_content", + "where id = #{id,jdbcType=BIGINT}" + }) + @Results({ + @Result(column="id", property="id", jdbcType=JdbcType.BIGINT, id=true), + @Result(column="type", property="type", jdbcType=JdbcType.INTEGER), + @Result(column="name", property="name", jdbcType=JdbcType.VARCHAR), + @Result(column="img_url", property="imgUrl", jdbcType=JdbcType.VARCHAR), + @Result(column="jump_type", property="jumpType", jdbcType=JdbcType.INTEGER), + @Result(column="jump_url", property="jumpUrl", jdbcType=JdbcType.VARCHAR), + @Result(column="status", property="status", jdbcType=JdbcType.INTEGER), + @Result(column="create_time", property="createTime", jdbcType=JdbcType.TIMESTAMP), + @Result(column="update_time", property="updateTime", jdbcType=JdbcType.TIMESTAMP), + @Result(column="ext_1", property="ext1", jdbcType=JdbcType.VARCHAR), + @Result(column="ext_2", property="ext2", jdbcType=JdbcType.VARCHAR), + @Result(column="ext_3", property="ext3", jdbcType=JdbcType.VARCHAR) + }) + CmsContent selectByPrimaryKey(Long id); + + @UpdateProvider(type=CmsContentSqlProvider.class, method="updateByExampleSelective") + int updateByExampleSelective(@Param("record") CmsContent record, @Param("example") CmsContentExample example); + + @UpdateProvider(type=CmsContentSqlProvider.class, method="updateByExample") + int updateByExample(@Param("record") CmsContent record, @Param("example") CmsContentExample example); + + @UpdateProvider(type=CmsContentSqlProvider.class, method="updateByPrimaryKeySelective") + int updateByPrimaryKeySelective(CmsContent record); + + @Update({ + "update cms_content", + "set `type` = #{type,jdbcType=INTEGER},", + "`name` = #{name,jdbcType=VARCHAR},", + "img_url = #{imgUrl,jdbcType=VARCHAR},", + "jump_type = #{jumpType,jdbcType=INTEGER},", + "jump_url = #{jumpUrl,jdbcType=VARCHAR},", + "`status` = #{status,jdbcType=INTEGER},", + "create_time = #{createTime,jdbcType=TIMESTAMP},", + "update_time = #{updateTime,jdbcType=TIMESTAMP},", + "ext_1 = #{ext1,jdbcType=VARCHAR},", + "ext_2 = #{ext2,jdbcType=VARCHAR},", + "ext_3 = #{ext3,jdbcType=VARCHAR}", + "where id = #{id,jdbcType=BIGINT}" + }) + int updateByPrimaryKey(CmsContent record); +} \ No newline at end of file diff --git a/service/src/main/java/com/hfkj/dao/CmsContentMapperExt.java b/service/src/main/java/com/hfkj/dao/CmsContentMapperExt.java new file mode 100644 index 0000000..ca0dea5 --- /dev/null +++ b/service/src/main/java/com/hfkj/dao/CmsContentMapperExt.java @@ -0,0 +1,7 @@ +package com.hfkj.dao; + +/** + * mapper扩展类 + */ +public interface CmsContentMapperExt { +} \ No newline at end of file diff --git a/service/src/main/java/com/hfkj/dao/CmsContentSqlProvider.java b/service/src/main/java/com/hfkj/dao/CmsContentSqlProvider.java new file mode 100644 index 0000000..fdc0d5b --- /dev/null +++ b/service/src/main/java/com/hfkj/dao/CmsContentSqlProvider.java @@ -0,0 +1,332 @@ +package com.hfkj.dao; + +import com.hfkj.entity.CmsContent; +import com.hfkj.entity.CmsContentExample.Criteria; +import com.hfkj.entity.CmsContentExample.Criterion; +import com.hfkj.entity.CmsContentExample; +import java.util.List; +import java.util.Map; +import org.apache.ibatis.jdbc.SQL; + +public class CmsContentSqlProvider { + + public String countByExample(CmsContentExample example) { + SQL sql = new SQL(); + sql.SELECT("count(*)").FROM("cms_content"); + applyWhere(sql, example, false); + return sql.toString(); + } + + public String deleteByExample(CmsContentExample example) { + SQL sql = new SQL(); + sql.DELETE_FROM("cms_content"); + applyWhere(sql, example, false); + return sql.toString(); + } + + public String insertSelective(CmsContent record) { + SQL sql = new SQL(); + sql.INSERT_INTO("cms_content"); + + if (record.getType() != null) { + sql.VALUES("`type`", "#{type,jdbcType=INTEGER}"); + } + + if (record.getName() != null) { + sql.VALUES("`name`", "#{name,jdbcType=VARCHAR}"); + } + + if (record.getImgUrl() != null) { + sql.VALUES("img_url", "#{imgUrl,jdbcType=VARCHAR}"); + } + + if (record.getJumpType() != null) { + sql.VALUES("jump_type", "#{jumpType,jdbcType=INTEGER}"); + } + + if (record.getJumpUrl() != null) { + sql.VALUES("jump_url", "#{jumpUrl,jdbcType=VARCHAR}"); + } + + if (record.getStatus() != null) { + sql.VALUES("`status`", "#{status,jdbcType=INTEGER}"); + } + + if (record.getCreateTime() != null) { + sql.VALUES("create_time", "#{createTime,jdbcType=TIMESTAMP}"); + } + + if (record.getUpdateTime() != null) { + sql.VALUES("update_time", "#{updateTime,jdbcType=TIMESTAMP}"); + } + + if (record.getExt1() != null) { + sql.VALUES("ext_1", "#{ext1,jdbcType=VARCHAR}"); + } + + if (record.getExt2() != null) { + sql.VALUES("ext_2", "#{ext2,jdbcType=VARCHAR}"); + } + + if (record.getExt3() != null) { + sql.VALUES("ext_3", "#{ext3,jdbcType=VARCHAR}"); + } + + return sql.toString(); + } + + public String selectByExample(CmsContentExample example) { + SQL sql = new SQL(); + if (example != null && example.isDistinct()) { + sql.SELECT_DISTINCT("id"); + } else { + sql.SELECT("id"); + } + sql.SELECT("`type`"); + sql.SELECT("`name`"); + sql.SELECT("img_url"); + sql.SELECT("jump_type"); + sql.SELECT("jump_url"); + sql.SELECT("`status`"); + sql.SELECT("create_time"); + sql.SELECT("update_time"); + sql.SELECT("ext_1"); + sql.SELECT("ext_2"); + sql.SELECT("ext_3"); + sql.FROM("cms_content"); + applyWhere(sql, example, false); + + if (example != null && example.getOrderByClause() != null) { + sql.ORDER_BY(example.getOrderByClause()); + } + + return sql.toString(); + } + + public String updateByExampleSelective(Map parameter) { + CmsContent record = (CmsContent) parameter.get("record"); + CmsContentExample example = (CmsContentExample) parameter.get("example"); + + SQL sql = new SQL(); + sql.UPDATE("cms_content"); + + if (record.getId() != null) { + sql.SET("id = #{record.id,jdbcType=BIGINT}"); + } + + if (record.getType() != null) { + sql.SET("`type` = #{record.type,jdbcType=INTEGER}"); + } + + if (record.getName() != null) { + sql.SET("`name` = #{record.name,jdbcType=VARCHAR}"); + } + + if (record.getImgUrl() != null) { + sql.SET("img_url = #{record.imgUrl,jdbcType=VARCHAR}"); + } + + if (record.getJumpType() != null) { + sql.SET("jump_type = #{record.jumpType,jdbcType=INTEGER}"); + } + + if (record.getJumpUrl() != null) { + sql.SET("jump_url = #{record.jumpUrl,jdbcType=VARCHAR}"); + } + + if (record.getStatus() != null) { + sql.SET("`status` = #{record.status,jdbcType=INTEGER}"); + } + + if (record.getCreateTime() != null) { + sql.SET("create_time = #{record.createTime,jdbcType=TIMESTAMP}"); + } + + if (record.getUpdateTime() != null) { + sql.SET("update_time = #{record.updateTime,jdbcType=TIMESTAMP}"); + } + + if (record.getExt1() != null) { + sql.SET("ext_1 = #{record.ext1,jdbcType=VARCHAR}"); + } + + if (record.getExt2() != null) { + sql.SET("ext_2 = #{record.ext2,jdbcType=VARCHAR}"); + } + + if (record.getExt3() != null) { + sql.SET("ext_3 = #{record.ext3,jdbcType=VARCHAR}"); + } + + applyWhere(sql, example, true); + return sql.toString(); + } + + public String updateByExample(Map parameter) { + SQL sql = new SQL(); + sql.UPDATE("cms_content"); + + sql.SET("id = #{record.id,jdbcType=BIGINT}"); + sql.SET("`type` = #{record.type,jdbcType=INTEGER}"); + sql.SET("`name` = #{record.name,jdbcType=VARCHAR}"); + sql.SET("img_url = #{record.imgUrl,jdbcType=VARCHAR}"); + sql.SET("jump_type = #{record.jumpType,jdbcType=INTEGER}"); + sql.SET("jump_url = #{record.jumpUrl,jdbcType=VARCHAR}"); + sql.SET("`status` = #{record.status,jdbcType=INTEGER}"); + sql.SET("create_time = #{record.createTime,jdbcType=TIMESTAMP}"); + sql.SET("update_time = #{record.updateTime,jdbcType=TIMESTAMP}"); + sql.SET("ext_1 = #{record.ext1,jdbcType=VARCHAR}"); + sql.SET("ext_2 = #{record.ext2,jdbcType=VARCHAR}"); + sql.SET("ext_3 = #{record.ext3,jdbcType=VARCHAR}"); + + CmsContentExample example = (CmsContentExample) parameter.get("example"); + applyWhere(sql, example, true); + return sql.toString(); + } + + public String updateByPrimaryKeySelective(CmsContent record) { + SQL sql = new SQL(); + sql.UPDATE("cms_content"); + + if (record.getType() != null) { + sql.SET("`type` = #{type,jdbcType=INTEGER}"); + } + + if (record.getName() != null) { + sql.SET("`name` = #{name,jdbcType=VARCHAR}"); + } + + if (record.getImgUrl() != null) { + sql.SET("img_url = #{imgUrl,jdbcType=VARCHAR}"); + } + + if (record.getJumpType() != null) { + sql.SET("jump_type = #{jumpType,jdbcType=INTEGER}"); + } + + if (record.getJumpUrl() != null) { + sql.SET("jump_url = #{jumpUrl,jdbcType=VARCHAR}"); + } + + if (record.getStatus() != null) { + sql.SET("`status` = #{status,jdbcType=INTEGER}"); + } + + if (record.getCreateTime() != null) { + sql.SET("create_time = #{createTime,jdbcType=TIMESTAMP}"); + } + + if (record.getUpdateTime() != null) { + sql.SET("update_time = #{updateTime,jdbcType=TIMESTAMP}"); + } + + if (record.getExt1() != null) { + sql.SET("ext_1 = #{ext1,jdbcType=VARCHAR}"); + } + + if (record.getExt2() != null) { + sql.SET("ext_2 = #{ext2,jdbcType=VARCHAR}"); + } + + if (record.getExt3() != null) { + sql.SET("ext_3 = #{ext3,jdbcType=VARCHAR}"); + } + + sql.WHERE("id = #{id,jdbcType=BIGINT}"); + + return sql.toString(); + } + + protected void applyWhere(SQL sql, CmsContentExample example, boolean includeExamplePhrase) { + if (example == null) { + return; + } + + String parmPhrase1; + String parmPhrase1_th; + String parmPhrase2; + String parmPhrase2_th; + String parmPhrase3; + String parmPhrase3_th; + if (includeExamplePhrase) { + parmPhrase1 = "%s #{example.oredCriteria[%d].allCriteria[%d].value}"; + parmPhrase1_th = "%s #{example.oredCriteria[%d].allCriteria[%d].value,typeHandler=%s}"; + parmPhrase2 = "%s #{example.oredCriteria[%d].allCriteria[%d].value} and #{example.oredCriteria[%d].criteria[%d].secondValue}"; + parmPhrase2_th = "%s #{example.oredCriteria[%d].allCriteria[%d].value,typeHandler=%s} and #{example.oredCriteria[%d].criteria[%d].secondValue,typeHandler=%s}"; + parmPhrase3 = "#{example.oredCriteria[%d].allCriteria[%d].value[%d]}"; + parmPhrase3_th = "#{example.oredCriteria[%d].allCriteria[%d].value[%d],typeHandler=%s}"; + } else { + parmPhrase1 = "%s #{oredCriteria[%d].allCriteria[%d].value}"; + parmPhrase1_th = "%s #{oredCriteria[%d].allCriteria[%d].value,typeHandler=%s}"; + parmPhrase2 = "%s #{oredCriteria[%d].allCriteria[%d].value} and #{oredCriteria[%d].criteria[%d].secondValue}"; + parmPhrase2_th = "%s #{oredCriteria[%d].allCriteria[%d].value,typeHandler=%s} and #{oredCriteria[%d].criteria[%d].secondValue,typeHandler=%s}"; + parmPhrase3 = "#{oredCriteria[%d].allCriteria[%d].value[%d]}"; + parmPhrase3_th = "#{oredCriteria[%d].allCriteria[%d].value[%d],typeHandler=%s}"; + } + + StringBuilder sb = new StringBuilder(); + List oredCriteria = example.getOredCriteria(); + boolean firstCriteria = true; + for (int i = 0; i < oredCriteria.size(); i++) { + Criteria criteria = oredCriteria.get(i); + if (criteria.isValid()) { + if (firstCriteria) { + firstCriteria = false; + } else { + sb.append(" or "); + } + + sb.append('('); + List criterions = criteria.getAllCriteria(); + boolean firstCriterion = true; + for (int j = 0; j < criterions.size(); j++) { + Criterion criterion = criterions.get(j); + if (firstCriterion) { + firstCriterion = false; + } else { + sb.append(" and "); + } + + if (criterion.isNoValue()) { + sb.append(criterion.getCondition()); + } else if (criterion.isSingleValue()) { + if (criterion.getTypeHandler() == null) { + sb.append(String.format(parmPhrase1, criterion.getCondition(), i, j)); + } else { + sb.append(String.format(parmPhrase1_th, criterion.getCondition(), i, j,criterion.getTypeHandler())); + } + } else if (criterion.isBetweenValue()) { + if (criterion.getTypeHandler() == null) { + sb.append(String.format(parmPhrase2, criterion.getCondition(), i, j, i, j)); + } else { + sb.append(String.format(parmPhrase2_th, criterion.getCondition(), i, j, criterion.getTypeHandler(), i, j, criterion.getTypeHandler())); + } + } else if (criterion.isListValue()) { + sb.append(criterion.getCondition()); + sb.append(" ("); + List listItems = (List) criterion.getValue(); + boolean comma = false; + for (int k = 0; k < listItems.size(); k++) { + if (comma) { + sb.append(", "); + } else { + comma = true; + } + if (criterion.getTypeHandler() == null) { + sb.append(String.format(parmPhrase3, i, j, k)); + } else { + sb.append(String.format(parmPhrase3_th, i, j, k, criterion.getTypeHandler())); + } + } + sb.append(')'); + } + } + sb.append(')'); + } + } + + if (sb.length() > 0) { + sql.WHERE(sb.toString()); + } + } +} \ No newline at end of file diff --git a/service/src/main/java/com/hfkj/entity/CmsContent.java b/service/src/main/java/com/hfkj/entity/CmsContent.java new file mode 100644 index 0000000..a16e000 --- /dev/null +++ b/service/src/main/java/com/hfkj/entity/CmsContent.java @@ -0,0 +1,232 @@ +package com.hfkj.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * cms_content + * @author + */ +/** + * + * 代码由工具生成 + * + **/ +public class CmsContent implements Serializable { + /** + * 主键 + */ + private Long id; + + /** + * 类型 + */ + private Integer type; + + /** + * 轮播图名称 + */ + private String name; + + /** + * 图片地址 + */ + private String imgUrl; + + /** + * 跳转类型 + */ + private Integer jumpType; + + /** + * 跳转地址 + */ + private String jumpUrl; + + /** + * 状态 0:删除 1:编辑中 2:已上线 3:已下线 + */ + private Integer status; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 更新时间 + */ + private Date updateTime; + + private String ext1; + + private String ext2; + + private String ext3; + + private static final long serialVersionUID = 1L; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getImgUrl() { + return imgUrl; + } + + public void setImgUrl(String imgUrl) { + this.imgUrl = imgUrl; + } + + public Integer getJumpType() { + return jumpType; + } + + public void setJumpType(Integer jumpType) { + this.jumpType = jumpType; + } + + public String getJumpUrl() { + return jumpUrl; + } + + public void setJumpUrl(String jumpUrl) { + this.jumpUrl = jumpUrl; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getExt1() { + return ext1; + } + + public void setExt1(String ext1) { + this.ext1 = ext1; + } + + public String getExt2() { + return ext2; + } + + public void setExt2(String ext2) { + this.ext2 = ext2; + } + + public String getExt3() { + return ext3; + } + + public void setExt3(String ext3) { + this.ext3 = ext3; + } + + @Override + public boolean equals(Object that) { + if (this == that) { + return true; + } + if (that == null) { + return false; + } + if (getClass() != that.getClass()) { + return false; + } + CmsContent other = (CmsContent) that; + return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId())) + && (this.getType() == null ? other.getType() == null : this.getType().equals(other.getType())) + && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName())) + && (this.getImgUrl() == null ? other.getImgUrl() == null : this.getImgUrl().equals(other.getImgUrl())) + && (this.getJumpType() == null ? other.getJumpType() == null : this.getJumpType().equals(other.getJumpType())) + && (this.getJumpUrl() == null ? other.getJumpUrl() == null : this.getJumpUrl().equals(other.getJumpUrl())) + && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus())) + && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime())) + && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime())) + && (this.getExt1() == null ? other.getExt1() == null : this.getExt1().equals(other.getExt1())) + && (this.getExt2() == null ? other.getExt2() == null : this.getExt2().equals(other.getExt2())) + && (this.getExt3() == null ? other.getExt3() == null : this.getExt3().equals(other.getExt3())); + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((getId() == null) ? 0 : getId().hashCode()); + result = prime * result + ((getType() == null) ? 0 : getType().hashCode()); + result = prime * result + ((getName() == null) ? 0 : getName().hashCode()); + result = prime * result + ((getImgUrl() == null) ? 0 : getImgUrl().hashCode()); + result = prime * result + ((getJumpType() == null) ? 0 : getJumpType().hashCode()); + result = prime * result + ((getJumpUrl() == null) ? 0 : getJumpUrl().hashCode()); + result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode()); + result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode()); + result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode()); + result = prime * result + ((getExt1() == null) ? 0 : getExt1().hashCode()); + result = prime * result + ((getExt2() == null) ? 0 : getExt2().hashCode()); + result = prime * result + ((getExt3() == null) ? 0 : getExt3().hashCode()); + return result; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(getClass().getSimpleName()); + sb.append(" ["); + sb.append("Hash = ").append(hashCode()); + sb.append(", id=").append(id); + sb.append(", type=").append(type); + sb.append(", name=").append(name); + sb.append(", imgUrl=").append(imgUrl); + sb.append(", jumpType=").append(jumpType); + sb.append(", jumpUrl=").append(jumpUrl); + sb.append(", status=").append(status); + sb.append(", createTime=").append(createTime); + sb.append(", updateTime=").append(updateTime); + sb.append(", ext1=").append(ext1); + sb.append(", ext2=").append(ext2); + sb.append(", ext3=").append(ext3); + sb.append(", serialVersionUID=").append(serialVersionUID); + sb.append("]"); + return sb.toString(); + } +} \ No newline at end of file diff --git a/service/src/main/java/com/hfkj/entity/CmsContentExample.java b/service/src/main/java/com/hfkj/entity/CmsContentExample.java new file mode 100644 index 0000000..49055a8 --- /dev/null +++ b/service/src/main/java/com/hfkj/entity/CmsContentExample.java @@ -0,0 +1,1003 @@ +package com.hfkj.entity; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +public class CmsContentExample { + protected String orderByClause; + + protected boolean distinct; + + protected List oredCriteria; + + private Integer limit; + + private Long offset; + + public CmsContentExample() { + oredCriteria = new ArrayList(); + } + + public void setOrderByClause(String orderByClause) { + this.orderByClause = orderByClause; + } + + public String getOrderByClause() { + return orderByClause; + } + + public void setDistinct(boolean distinct) { + this.distinct = distinct; + } + + public boolean isDistinct() { + return distinct; + } + + public List getOredCriteria() { + return oredCriteria; + } + + public void or(Criteria criteria) { + oredCriteria.add(criteria); + } + + public Criteria or() { + Criteria criteria = createCriteriaInternal(); + oredCriteria.add(criteria); + return criteria; + } + + public Criteria createCriteria() { + Criteria criteria = createCriteriaInternal(); + if (oredCriteria.size() == 0) { + oredCriteria.add(criteria); + } + return criteria; + } + + protected Criteria createCriteriaInternal() { + Criteria criteria = new Criteria(); + return criteria; + } + + public void clear() { + oredCriteria.clear(); + orderByClause = null; + distinct = false; + } + + public void setLimit(Integer limit) { + this.limit = limit; + } + + public Integer getLimit() { + return limit; + } + + public void setOffset(Long offset) { + this.offset = offset; + } + + public Long getOffset() { + return offset; + } + + protected abstract static class GeneratedCriteria { + protected List criteria; + + protected GeneratedCriteria() { + super(); + criteria = new ArrayList(); + } + + public boolean isValid() { + return criteria.size() > 0; + } + + public List getAllCriteria() { + return criteria; + } + + public List getCriteria() { + return criteria; + } + + protected void addCriterion(String condition) { + if (condition == null) { + throw new RuntimeException("Value for condition cannot be null"); + } + criteria.add(new Criterion(condition)); + } + + protected void addCriterion(String condition, Object value, String property) { + if (value == null) { + throw new RuntimeException("Value for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value)); + } + + protected void addCriterion(String condition, Object value1, Object value2, String property) { + if (value1 == null || value2 == null) { + throw new RuntimeException("Between values for " + property + " cannot be null"); + } + criteria.add(new Criterion(condition, value1, value2)); + } + + public Criteria andIdIsNull() { + addCriterion("id is null"); + return (Criteria) this; + } + + public Criteria andIdIsNotNull() { + addCriterion("id is not null"); + return (Criteria) this; + } + + public Criteria andIdEqualTo(Long value) { + addCriterion("id =", value, "id"); + return (Criteria) this; + } + + public Criteria andIdNotEqualTo(Long value) { + addCriterion("id <>", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThan(Long value) { + addCriterion("id >", value, "id"); + return (Criteria) this; + } + + public Criteria andIdGreaterThanOrEqualTo(Long value) { + addCriterion("id >=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThan(Long value) { + addCriterion("id <", value, "id"); + return (Criteria) this; + } + + public Criteria andIdLessThanOrEqualTo(Long value) { + addCriterion("id <=", value, "id"); + return (Criteria) this; + } + + public Criteria andIdIn(List values) { + addCriterion("id in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdNotIn(List values) { + addCriterion("id not in", values, "id"); + return (Criteria) this; + } + + public Criteria andIdBetween(Long value1, Long value2) { + addCriterion("id between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andIdNotBetween(Long value1, Long value2) { + addCriterion("id not between", value1, value2, "id"); + return (Criteria) this; + } + + public Criteria andTypeIsNull() { + addCriterion("`type` is null"); + return (Criteria) this; + } + + public Criteria andTypeIsNotNull() { + addCriterion("`type` is not null"); + return (Criteria) this; + } + + public Criteria andTypeEqualTo(Integer value) { + addCriterion("`type` =", value, "type"); + return (Criteria) this; + } + + public Criteria andTypeNotEqualTo(Integer value) { + addCriterion("`type` <>", value, "type"); + return (Criteria) this; + } + + public Criteria andTypeGreaterThan(Integer value) { + addCriterion("`type` >", value, "type"); + return (Criteria) this; + } + + public Criteria andTypeGreaterThanOrEqualTo(Integer value) { + addCriterion("`type` >=", value, "type"); + return (Criteria) this; + } + + public Criteria andTypeLessThan(Integer value) { + addCriterion("`type` <", value, "type"); + return (Criteria) this; + } + + public Criteria andTypeLessThanOrEqualTo(Integer value) { + addCriterion("`type` <=", value, "type"); + return (Criteria) this; + } + + public Criteria andTypeIn(List values) { + addCriterion("`type` in", values, "type"); + return (Criteria) this; + } + + public Criteria andTypeNotIn(List values) { + addCriterion("`type` not in", values, "type"); + return (Criteria) this; + } + + public Criteria andTypeBetween(Integer value1, Integer value2) { + addCriterion("`type` between", value1, value2, "type"); + return (Criteria) this; + } + + public Criteria andTypeNotBetween(Integer value1, Integer value2) { + addCriterion("`type` not between", value1, value2, "type"); + return (Criteria) this; + } + + public Criteria andNameIsNull() { + addCriterion("`name` is null"); + return (Criteria) this; + } + + public Criteria andNameIsNotNull() { + addCriterion("`name` is not null"); + return (Criteria) this; + } + + public Criteria andNameEqualTo(String value) { + addCriterion("`name` =", value, "name"); + return (Criteria) this; + } + + public Criteria andNameNotEqualTo(String value) { + addCriterion("`name` <>", value, "name"); + return (Criteria) this; + } + + public Criteria andNameGreaterThan(String value) { + addCriterion("`name` >", value, "name"); + return (Criteria) this; + } + + public Criteria andNameGreaterThanOrEqualTo(String value) { + addCriterion("`name` >=", value, "name"); + return (Criteria) this; + } + + public Criteria andNameLessThan(String value) { + addCriterion("`name` <", value, "name"); + return (Criteria) this; + } + + public Criteria andNameLessThanOrEqualTo(String value) { + addCriterion("`name` <=", value, "name"); + return (Criteria) this; + } + + public Criteria andNameLike(String value) { + addCriterion("`name` like", value, "name"); + return (Criteria) this; + } + + public Criteria andNameNotLike(String value) { + addCriterion("`name` not like", value, "name"); + return (Criteria) this; + } + + public Criteria andNameIn(List values) { + addCriterion("`name` in", values, "name"); + return (Criteria) this; + } + + public Criteria andNameNotIn(List values) { + addCriterion("`name` not in", values, "name"); + return (Criteria) this; + } + + public Criteria andNameBetween(String value1, String value2) { + addCriterion("`name` between", value1, value2, "name"); + return (Criteria) this; + } + + public Criteria andNameNotBetween(String value1, String value2) { + addCriterion("`name` not between", value1, value2, "name"); + return (Criteria) this; + } + + public Criteria andImgUrlIsNull() { + addCriterion("img_url is null"); + return (Criteria) this; + } + + public Criteria andImgUrlIsNotNull() { + addCriterion("img_url is not null"); + return (Criteria) this; + } + + public Criteria andImgUrlEqualTo(String value) { + addCriterion("img_url =", value, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlNotEqualTo(String value) { + addCriterion("img_url <>", value, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlGreaterThan(String value) { + addCriterion("img_url >", value, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlGreaterThanOrEqualTo(String value) { + addCriterion("img_url >=", value, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlLessThan(String value) { + addCriterion("img_url <", value, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlLessThanOrEqualTo(String value) { + addCriterion("img_url <=", value, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlLike(String value) { + addCriterion("img_url like", value, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlNotLike(String value) { + addCriterion("img_url not like", value, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlIn(List values) { + addCriterion("img_url in", values, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlNotIn(List values) { + addCriterion("img_url not in", values, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlBetween(String value1, String value2) { + addCriterion("img_url between", value1, value2, "imgUrl"); + return (Criteria) this; + } + + public Criteria andImgUrlNotBetween(String value1, String value2) { + addCriterion("img_url not between", value1, value2, "imgUrl"); + return (Criteria) this; + } + + public Criteria andJumpTypeIsNull() { + addCriterion("jump_type is null"); + return (Criteria) this; + } + + public Criteria andJumpTypeIsNotNull() { + addCriterion("jump_type is not null"); + return (Criteria) this; + } + + public Criteria andJumpTypeEqualTo(Integer value) { + addCriterion("jump_type =", value, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeNotEqualTo(Integer value) { + addCriterion("jump_type <>", value, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeGreaterThan(Integer value) { + addCriterion("jump_type >", value, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeGreaterThanOrEqualTo(Integer value) { + addCriterion("jump_type >=", value, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeLessThan(Integer value) { + addCriterion("jump_type <", value, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeLessThanOrEqualTo(Integer value) { + addCriterion("jump_type <=", value, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeIn(List values) { + addCriterion("jump_type in", values, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeNotIn(List values) { + addCriterion("jump_type not in", values, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeBetween(Integer value1, Integer value2) { + addCriterion("jump_type between", value1, value2, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpTypeNotBetween(Integer value1, Integer value2) { + addCriterion("jump_type not between", value1, value2, "jumpType"); + return (Criteria) this; + } + + public Criteria andJumpUrlIsNull() { + addCriterion("jump_url is null"); + return (Criteria) this; + } + + public Criteria andJumpUrlIsNotNull() { + addCriterion("jump_url is not null"); + return (Criteria) this; + } + + public Criteria andJumpUrlEqualTo(String value) { + addCriterion("jump_url =", value, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlNotEqualTo(String value) { + addCriterion("jump_url <>", value, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlGreaterThan(String value) { + addCriterion("jump_url >", value, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlGreaterThanOrEqualTo(String value) { + addCriterion("jump_url >=", value, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlLessThan(String value) { + addCriterion("jump_url <", value, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlLessThanOrEqualTo(String value) { + addCriterion("jump_url <=", value, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlLike(String value) { + addCriterion("jump_url like", value, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlNotLike(String value) { + addCriterion("jump_url not like", value, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlIn(List values) { + addCriterion("jump_url in", values, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlNotIn(List values) { + addCriterion("jump_url not in", values, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlBetween(String value1, String value2) { + addCriterion("jump_url between", value1, value2, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andJumpUrlNotBetween(String value1, String value2) { + addCriterion("jump_url not between", value1, value2, "jumpUrl"); + return (Criteria) this; + } + + public Criteria andStatusIsNull() { + addCriterion("`status` is null"); + return (Criteria) this; + } + + public Criteria andStatusIsNotNull() { + addCriterion("`status` is not null"); + return (Criteria) this; + } + + public Criteria andStatusEqualTo(Integer value) { + addCriterion("`status` =", value, "status"); + return (Criteria) this; + } + + public Criteria andStatusNotEqualTo(Integer value) { + addCriterion("`status` <>", value, "status"); + return (Criteria) this; + } + + public Criteria andStatusGreaterThan(Integer value) { + addCriterion("`status` >", value, "status"); + return (Criteria) this; + } + + public Criteria andStatusGreaterThanOrEqualTo(Integer value) { + addCriterion("`status` >=", value, "status"); + return (Criteria) this; + } + + public Criteria andStatusLessThan(Integer value) { + addCriterion("`status` <", value, "status"); + return (Criteria) this; + } + + public Criteria andStatusLessThanOrEqualTo(Integer value) { + addCriterion("`status` <=", value, "status"); + return (Criteria) this; + } + + public Criteria andStatusIn(List values) { + addCriterion("`status` in", values, "status"); + return (Criteria) this; + } + + public Criteria andStatusNotIn(List values) { + addCriterion("`status` not in", values, "status"); + return (Criteria) this; + } + + public Criteria andStatusBetween(Integer value1, Integer value2) { + addCriterion("`status` between", value1, value2, "status"); + return (Criteria) this; + } + + public Criteria andStatusNotBetween(Integer value1, Integer value2) { + addCriterion("`status` not between", value1, value2, "status"); + return (Criteria) this; + } + + public Criteria andCreateTimeIsNull() { + addCriterion("create_time is null"); + return (Criteria) this; + } + + public Criteria andCreateTimeIsNotNull() { + addCriterion("create_time is not null"); + return (Criteria) this; + } + + public Criteria andCreateTimeEqualTo(Date value) { + addCriterion("create_time =", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotEqualTo(Date value) { + addCriterion("create_time <>", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeGreaterThan(Date value) { + addCriterion("create_time >", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) { + addCriterion("create_time >=", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeLessThan(Date value) { + addCriterion("create_time <", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeLessThanOrEqualTo(Date value) { + addCriterion("create_time <=", value, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeIn(List values) { + addCriterion("create_time in", values, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotIn(List values) { + addCriterion("create_time not in", values, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeBetween(Date value1, Date value2) { + addCriterion("create_time between", value1, value2, "createTime"); + return (Criteria) this; + } + + public Criteria andCreateTimeNotBetween(Date value1, Date value2) { + addCriterion("create_time not between", value1, value2, "createTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIsNull() { + addCriterion("update_time is null"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIsNotNull() { + addCriterion("update_time is not null"); + return (Criteria) this; + } + + public Criteria andUpdateTimeEqualTo(Date value) { + addCriterion("update_time =", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotEqualTo(Date value) { + addCriterion("update_time <>", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeGreaterThan(Date value) { + addCriterion("update_time >", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) { + addCriterion("update_time >=", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeLessThan(Date value) { + addCriterion("update_time <", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeLessThanOrEqualTo(Date value) { + addCriterion("update_time <=", value, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeIn(List values) { + addCriterion("update_time in", values, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotIn(List values) { + addCriterion("update_time not in", values, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeBetween(Date value1, Date value2) { + addCriterion("update_time between", value1, value2, "updateTime"); + return (Criteria) this; + } + + public Criteria andUpdateTimeNotBetween(Date value1, Date value2) { + addCriterion("update_time not between", value1, value2, "updateTime"); + return (Criteria) this; + } + + public Criteria andExt1IsNull() { + addCriterion("ext_1 is null"); + return (Criteria) this; + } + + public Criteria andExt1IsNotNull() { + addCriterion("ext_1 is not null"); + return (Criteria) this; + } + + public Criteria andExt1EqualTo(String value) { + addCriterion("ext_1 =", value, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1NotEqualTo(String value) { + addCriterion("ext_1 <>", value, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1GreaterThan(String value) { + addCriterion("ext_1 >", value, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1GreaterThanOrEqualTo(String value) { + addCriterion("ext_1 >=", value, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1LessThan(String value) { + addCriterion("ext_1 <", value, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1LessThanOrEqualTo(String value) { + addCriterion("ext_1 <=", value, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1Like(String value) { + addCriterion("ext_1 like", value, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1NotLike(String value) { + addCriterion("ext_1 not like", value, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1In(List values) { + addCriterion("ext_1 in", values, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1NotIn(List values) { + addCriterion("ext_1 not in", values, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1Between(String value1, String value2) { + addCriterion("ext_1 between", value1, value2, "ext1"); + return (Criteria) this; + } + + public Criteria andExt1NotBetween(String value1, String value2) { + addCriterion("ext_1 not between", value1, value2, "ext1"); + return (Criteria) this; + } + + public Criteria andExt2IsNull() { + addCriterion("ext_2 is null"); + return (Criteria) this; + } + + public Criteria andExt2IsNotNull() { + addCriterion("ext_2 is not null"); + return (Criteria) this; + } + + public Criteria andExt2EqualTo(String value) { + addCriterion("ext_2 =", value, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2NotEqualTo(String value) { + addCriterion("ext_2 <>", value, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2GreaterThan(String value) { + addCriterion("ext_2 >", value, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2GreaterThanOrEqualTo(String value) { + addCriterion("ext_2 >=", value, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2LessThan(String value) { + addCriterion("ext_2 <", value, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2LessThanOrEqualTo(String value) { + addCriterion("ext_2 <=", value, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2Like(String value) { + addCriterion("ext_2 like", value, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2NotLike(String value) { + addCriterion("ext_2 not like", value, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2In(List values) { + addCriterion("ext_2 in", values, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2NotIn(List values) { + addCriterion("ext_2 not in", values, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2Between(String value1, String value2) { + addCriterion("ext_2 between", value1, value2, "ext2"); + return (Criteria) this; + } + + public Criteria andExt2NotBetween(String value1, String value2) { + addCriterion("ext_2 not between", value1, value2, "ext2"); + return (Criteria) this; + } + + public Criteria andExt3IsNull() { + addCriterion("ext_3 is null"); + return (Criteria) this; + } + + public Criteria andExt3IsNotNull() { + addCriterion("ext_3 is not null"); + return (Criteria) this; + } + + public Criteria andExt3EqualTo(String value) { + addCriterion("ext_3 =", value, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3NotEqualTo(String value) { + addCriterion("ext_3 <>", value, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3GreaterThan(String value) { + addCriterion("ext_3 >", value, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3GreaterThanOrEqualTo(String value) { + addCriterion("ext_3 >=", value, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3LessThan(String value) { + addCriterion("ext_3 <", value, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3LessThanOrEqualTo(String value) { + addCriterion("ext_3 <=", value, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3Like(String value) { + addCriterion("ext_3 like", value, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3NotLike(String value) { + addCriterion("ext_3 not like", value, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3In(List values) { + addCriterion("ext_3 in", values, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3NotIn(List values) { + addCriterion("ext_3 not in", values, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3Between(String value1, String value2) { + addCriterion("ext_3 between", value1, value2, "ext3"); + return (Criteria) this; + } + + public Criteria andExt3NotBetween(String value1, String value2) { + addCriterion("ext_3 not between", value1, value2, "ext3"); + return (Criteria) this; + } + } + + /** + */ + public static class Criteria extends GeneratedCriteria { + + protected Criteria() { + super(); + } + } + + public static class Criterion { + private String condition; + + private Object value; + + private Object secondValue; + + private boolean noValue; + + private boolean singleValue; + + private boolean betweenValue; + + private boolean listValue; + + private String typeHandler; + + public String getCondition() { + return condition; + } + + public Object getValue() { + return value; + } + + public Object getSecondValue() { + return secondValue; + } + + public boolean isNoValue() { + return noValue; + } + + public boolean isSingleValue() { + return singleValue; + } + + public boolean isBetweenValue() { + return betweenValue; + } + + public boolean isListValue() { + return listValue; + } + + public String getTypeHandler() { + return typeHandler; + } + + protected Criterion(String condition) { + super(); + this.condition = condition; + this.typeHandler = null; + this.noValue = true; + } + + protected Criterion(String condition, Object value, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.typeHandler = typeHandler; + if (value instanceof List) { + this.listValue = true; + } else { + this.singleValue = true; + } + } + + protected Criterion(String condition, Object value) { + this(condition, value, null); + } + + protected Criterion(String condition, Object value, Object secondValue, String typeHandler) { + super(); + this.condition = condition; + this.value = value; + this.secondValue = secondValue; + this.typeHandler = typeHandler; + this.betweenValue = true; + } + + protected Criterion(String condition, Object value, Object secondValue) { + this(condition, value, secondValue, null); + } + } +} \ No newline at end of file diff --git a/service/src/main/java/com/hfkj/service/cms/CmsContentReadService.java b/service/src/main/java/com/hfkj/service/cms/CmsContentReadService.java new file mode 100644 index 0000000..2d3b2f3 --- /dev/null +++ b/service/src/main/java/com/hfkj/service/cms/CmsContentReadService.java @@ -0,0 +1,25 @@ +package com.hfkj.service.cms; + +/** + * @className: CmsContentService + * @author: HuRui + * @date: 2024/9/24 + **/ +public interface CmsContentReadService { + + /** + * 创建时间 + * @param contentId + * @param userId + */ + void create(Long contentId,Long userId); + + /** + * 实付阅读过 + * @param contentId + * @param userId + * @return + */ + boolean isRead(Long contentId,Long userId); + +} diff --git a/service/src/main/java/com/hfkj/service/cms/CmsContentService.java b/service/src/main/java/com/hfkj/service/cms/CmsContentService.java new file mode 100644 index 0000000..6f330f4 --- /dev/null +++ b/service/src/main/java/com/hfkj/service/cms/CmsContentService.java @@ -0,0 +1,35 @@ +package com.hfkj.service.cms; + +import com.hfkj.entity.CmsContent; + +import java.util.List; +import java.util.Map; + +/** + * @className: CmsContentService + * @author: HuRui + * @date: 2024/9/24 + **/ +public interface CmsContentService { + + /** + * 编辑数据 + * @param data + */ + void editData(CmsContent data); + + /** + * 详情 + * @param id + * @return + */ + CmsContent getDetail(Long id); + + /** + * 查询列表 + * @param param + * @return + */ + List getList(Map param); + +} diff --git a/service/src/main/java/com/hfkj/service/cms/impl/CmsContentServiceImpl.java b/service/src/main/java/com/hfkj/service/cms/impl/CmsContentServiceImpl.java new file mode 100644 index 0000000..964eeae --- /dev/null +++ b/service/src/main/java/com/hfkj/service/cms/impl/CmsContentServiceImpl.java @@ -0,0 +1,64 @@ +package com.hfkj.service.cms.impl; + +import com.hfkj.dao.CmsContentMapper; +import com.hfkj.entity.CmsContent; +import com.hfkj.entity.CmsContentExample; +import com.hfkj.service.cms.CmsContentService; +import com.hfkj.sysenum.cms.CmsStatusEnum; +import org.apache.commons.collections4.MapUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * @className: CmsContentServiceImpl + * @author: HuRui + * @date: 2024/9/24 + **/ +@Service("cmsContentService") +public class CmsContentServiceImpl implements CmsContentService { + @Resource + private CmsContentMapper cmsContentMapper; + public final static String CACHE_CMS_ONLINE = "CACHE_CMS_ONLINE"; + @Override + public void editData(CmsContent data) { + data.setUpdateTime(new Date()); + if (data.getId() == null) { + data.setCreateTime(new Date()); + cmsContentMapper.insert(data); + } else { + cmsContentMapper.updateByPrimaryKey(data); + } + } + + @Override + public CmsContent getDetail(Long id) { + return cmsContentMapper.selectByPrimaryKey(id); + } + + @Override + public List getList(Map param) { + CmsContentExample example = new CmsContentExample(); + CmsContentExample.Criteria criteria = example.createCriteria().andStatusNotEqualTo(CmsStatusEnum.status0.getStatus()); + + if (MapUtils.getInteger(param, "type") != null) { + criteria.andTypeEqualTo(MapUtils.getInteger(param, "type")); + } + + if (MapUtils.getInteger(param, "status") != null) { + criteria.andStatusEqualTo(MapUtils.getInteger(param, "status")); + } + + if (StringUtils.isNotBlank(MapUtils.getString(param, "name"))) { + criteria.andNameLike("%"+MapUtils.getString(param, "name")+"%"); + } + + example.setOrderByClause("update_time desc"); + return cmsContentMapper.selectByExample(example); + } + +} diff --git a/service/src/main/java/com/hfkj/sysenum/cms/CmsStatusEnum.java b/service/src/main/java/com/hfkj/sysenum/cms/CmsStatusEnum.java new file mode 100644 index 0000000..9d11b3b --- /dev/null +++ b/service/src/main/java/com/hfkj/sysenum/cms/CmsStatusEnum.java @@ -0,0 +1,48 @@ +package com.hfkj.sysenum.cms; + +import lombok.Getter; + +import java.util.Objects; + +/** + * @className: CmsTypeEnum + * @author: HuRui + * @date: 2024/9/24 + **/ +@Getter +public enum CmsStatusEnum { + /** + * 删除 + */ + status0(0 , "删除"), + /** + * 编辑中 + */ + status1(1 , "编辑中"), + /** + * 已上线 + */ + status2(2 , "已上线"), + /** + * 已下线 + */ + status3(3 , "已下线"), + ; + + private Integer status; + + private String name; + + CmsStatusEnum(int status , String name) { + this.status = status; + this.name = name; + } + + public static CmsStatusEnum getDataByType(Integer status) { + for (CmsStatusEnum ele : values()) { + if(Objects.equals(status,ele.getStatus())) return ele; + } + return null; + } + +} diff --git a/service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java b/service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java new file mode 100644 index 0000000..07894a6 --- /dev/null +++ b/service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java @@ -0,0 +1,41 @@ +package com.hfkj.sysenum.cms; + +import lombok.Getter; + +import java.util.Objects; + +/** + * @className: CmsTypeEnum + * @author: HuRui + * @date: 2024/9/24 + **/ +@Getter +public enum CmsTypeEnum { + /** + * 首页轮播图 + */ + type1(1 , "首页轮播图"), + + /** + * 首页弹出框 + */ + type2(2 , "首页弹出框"), + ; + + private Integer type; + + private String name; + + CmsTypeEnum(int type , String name) { + this.type = type; + this.name = name; + } + + public static CmsTypeEnum getDataByType(Integer type) { + for (CmsTypeEnum ele : values()) { + if(Objects.equals(type,ele.getType())) return ele; + } + return null; + } + +} From d98ff2cdce0db08e7fe2c87268beee4d147082a1 Mon Sep 17 00:00:00 2001 From: hu177768073 <177768073@qq.com> Date: Wed, 9 Oct 2024 16:24:52 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java | 5 ----- 1 file changed, 5 deletions(-) diff --git a/service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java b/service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java index 07894a6..8d82f3d 100644 --- a/service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java +++ b/service/src/main/java/com/hfkj/sysenum/cms/CmsTypeEnum.java @@ -15,11 +15,6 @@ public enum CmsTypeEnum { * 首页轮播图 */ type1(1 , "首页轮播图"), - - /** - * 首页弹出框 - */ - type2(2 , "首页弹出框"), ; private Integer type;