From 54d9d077f1b65b893df0d18abd8aad7089bffbbc Mon Sep 17 00:00:00 2001 From: longbinbin <2284496322@qq.com> Date: Wed, 11 Dec 2024 14:30:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mobile/AppMemberController.java | 6 +++++ .../ycwl/basic/mapper/pc/MemberMapper.java | 26 +++++++++++++++++++ .../model/pc/member/resp/MemberRespVO.java | 2 ++ .../impl/mobile/AppMemberServiceImpl.java | 23 ++++++++++++++++ .../service/impl/mobile/GoodsServiceImpl.java | 3 ++- .../service/mobile/AppMemberService.java | 2 +- src/main/resources/mapper/pc/MemberMapper.xml | 20 ++++++++++++++ 7 files changed, 80 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/ycwl/basic/controller/mobile/AppMemberController.java b/src/main/java/com/ycwl/basic/controller/mobile/AppMemberController.java index 24b36db..6962894 100644 --- a/src/main/java/com/ycwl/basic/controller/mobile/AppMemberController.java +++ b/src/main/java/com/ycwl/basic/controller/mobile/AppMemberController.java @@ -81,4 +81,10 @@ public class AppMemberController { return ApiResponse.success(""); } + + @GetMapping("新增或修改景区服务通知状态") + public ApiResponse updateScenicServiceNoticeStatus(Long scenicId) { + return memberService.updateScenicServiceNoticeStatus(scenicId); + } + } diff --git a/src/main/java/com/ycwl/basic/mapper/pc/MemberMapper.java b/src/main/java/com/ycwl/basic/mapper/pc/MemberMapper.java index 64f2386..9bcc74c 100644 --- a/src/main/java/com/ycwl/basic/mapper/pc/MemberMapper.java +++ b/src/main/java/com/ycwl/basic/mapper/pc/MemberMapper.java @@ -3,7 +3,9 @@ package com.ycwl.basic.mapper.pc; import com.ycwl.basic.model.pc.member.entity.MemberEntity; import com.ycwl.basic.model.pc.member.req.MemberReqQuery; import com.ycwl.basic.model.pc.member.resp.MemberRespVO; +import com.ycwl.basic.utils.ApiResponse; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -19,4 +21,28 @@ public interface MemberMapper { int add(MemberEntity member); int deleteById(Long id); int update(MemberEntity member); + + /** + * 修改景区服务通知状态 + * @param scenicId 景区id + * @param memberId 用户id + * @return + */ + int updateScenicServiceNoticeStatus(@Param("scenicId") Long scenicId,@Param("memberId") Long memberId); + + /** + * 查询用户当前景区服务通知状态 + * @param scenicId 景区id + * @param memberId 用户id + * @return + */ + Integer getScenicServiceNoticeStatus(@Param("scenicId") Long scenicId,@Param("memberId") Long memberId); + + /** + * 添加景区服务通知状态 + * @param scenicId + * @param memberId + * @return + */ + int addScenicServiceNoticeStatus(@Param("scenicId") Long scenicId,@Param("memberId") Long memberId); } diff --git a/src/main/java/com/ycwl/basic/model/pc/member/resp/MemberRespVO.java b/src/main/java/com/ycwl/basic/model/pc/member/resp/MemberRespVO.java index 8d17090..49c0134 100644 --- a/src/main/java/com/ycwl/basic/model/pc/member/resp/MemberRespVO.java +++ b/src/main/java/com/ycwl/basic/model/pc/member/resp/MemberRespVO.java @@ -75,4 +75,6 @@ public class MemberRespVO { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date updateAt; private Integer orderCount; + @ApiModelProperty("是否开启服务通知 0关闭 1开启") + private Integer isServiceNotification; } diff --git a/src/main/java/com/ycwl/basic/service/impl/mobile/AppMemberServiceImpl.java b/src/main/java/com/ycwl/basic/service/impl/mobile/AppMemberServiceImpl.java index 9099f02..3c44cd2 100644 --- a/src/main/java/com/ycwl/basic/service/impl/mobile/AppMemberServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/impl/mobile/AppMemberServiceImpl.java @@ -139,4 +139,27 @@ public class AppMemberServiceImpl implements AppMemberService { memberEntity.setAgreement(AgreementEnum.AGREE.getType()); return ApiResponse.success(memberMapper.update(memberEntity)); } + + @Override + public ApiResponse updateScenicServiceNoticeStatus(Long scenicId) { + JwtInfo worker = JwtTokenUtil.getWorker(); + Integer scenicServiceNoticeStatus = memberMapper.getScenicServiceNoticeStatus(scenicId, worker.getUserId()); + //没有就初始化为开启 + if(scenicServiceNoticeStatus==null){ + int i = memberMapper.addScenicServiceNoticeStatus(scenicId, worker.getUserId()); + if(i>0){ + return ApiResponse.success("成功"); + }else { + return ApiResponse.fail("失败"); + } + }else { + // 有就修改 + int i = memberMapper.updateScenicServiceNoticeStatus(scenicId, worker.getUserId()); + if (i == 0) { + return ApiResponse.fail("失败"); + } + return ApiResponse.success("成功"); + } + + } } diff --git a/src/main/java/com/ycwl/basic/service/impl/mobile/GoodsServiceImpl.java b/src/main/java/com/ycwl/basic/service/impl/mobile/GoodsServiceImpl.java index cf4c69a..6516d84 100644 --- a/src/main/java/com/ycwl/basic/service/impl/mobile/GoodsServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/impl/mobile/GoodsServiceImpl.java @@ -184,7 +184,8 @@ public class GoodsServiceImpl implements GoodsService { goodsDetailVO.setVideoUrl(videoRespVO.getVideoUrl()); goodsDetailVO.setTemplateCoverUrl(videoRespVO.getTemplateCoverUrl()); goodsDetailVO.setCreateTime(videoRespVO.getCreateTime()); - goodsDetailVO.setPrice(videoRespVO.getTemplatePrice()); + BigDecimal templatePrice = videoRespVO.getTemplatePrice(); + goodsDetailVO.setPrice(templatePrice==null ? null : templatePrice.setScale(2)); goodsDetailVO.setIsBuy(videoRespVO.getIsBuy()); ScenicDeviceCountVO scenicDeviceCountVO = deviceMapper.deviceCountByScenicId(videoRespVO.getScenicId(), -1L); goodsDetailVO.setLensNum(scenicDeviceCountVO.getTotalDeviceCount()); diff --git a/src/main/java/com/ycwl/basic/service/mobile/AppMemberService.java b/src/main/java/com/ycwl/basic/service/mobile/AppMemberService.java index afe200a..d1ec464 100644 --- a/src/main/java/com/ycwl/basic/service/mobile/AppMemberService.java +++ b/src/main/java/com/ycwl/basic/service/mobile/AppMemberService.java @@ -51,5 +51,5 @@ public interface AppMemberService { ApiResponse agreement(); - + ApiResponse updateScenicServiceNoticeStatus(Long scenicId); } diff --git a/src/main/resources/mapper/pc/MemberMapper.xml b/src/main/resources/mapper/pc/MemberMapper.xml index 85d279b..422dbf8 100644 --- a/src/main/resources/mapper/pc/MemberMapper.xml +++ b/src/main/resources/mapper/pc/MemberMapper.xml @@ -7,6 +7,10 @@ values (#{id}, #{openId}, #{avatarUrl},#{nickname}, #{realName}, #{promoCode}, #{brokerId}, #{agreement}, #{phone}, #{country}, #{province}, #{city}) + + insert into scenic_notification(member_id, scenic_id, `status`) + values (#{memberId}, #{scenicId}, 1) + update member @@ -46,6 +50,17 @@ where id = #{id} + + update scenic_notification + set status = ( + case status + when 0 then 1 + when 1 then 0 + else status + end + ) + where member_id = #{memberId} and scenic_id = #{scenicId} + delete from member @@ -105,4 +120,9 @@ from member where id = #{id} + \ No newline at end of file