diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNoticeSignController.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNoticeSignController.java index 68735b3..b179936 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNoticeSignController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNoticeSignController.java @@ -6,6 +6,7 @@ import java.util.List; import javax.servlet.http.HttpServletResponse; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.busi.query.AppNoticeSign; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -28,7 +29,7 @@ import com.ruoyi.common.core.page.TableDataInfo; /** * 通告报名Controller - * + * * @author 朱春云 * @date 2025-03-17 */ @@ -109,4 +110,16 @@ public class BusiNoticeSignController extends BaseController List list = new ArrayList<>(Arrays.asList(ids)); return toAjax(busiNoticeSignService.removeByIds(list)); } + + + + /** + * 用户通告报名 + */ + @PostMapping("/userSign") + public AjaxResult userSign(@RequestBody AppNoticeSign appNoticeSign) + { + busiNoticeSignService.userSign(appNoticeSign); + return success(); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiNoticeSign.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiNoticeSign.java index 871bb2b..9d58119 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiNoticeSign.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiNoticeSign.java @@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.annotation.TableName; import lombok.*; import com.ruoyi.common.core.domain.DlBaseEntity; +import java.math.BigDecimal; + /** * 通告报名对象 dl_busi_notice_sign * @@ -74,8 +76,16 @@ public class BusiNoticeSign extends DlBaseEntity */ private String formData; - /** 备注 */ - @Excel(name = "备注") + /** 附言 */ + @Excel(name = "附言") private String remark; + /** + * 报名卡片 + */ + private String cardId; + /** + * 报价 + */ + private BigDecimal price; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/query/AppNoticeSign.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/query/AppNoticeSign.java new file mode 100644 index 0000000..c3d2b3a --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/query/AppNoticeSign.java @@ -0,0 +1,31 @@ +package com.ruoyi.busi.query; + +import com.alibaba.fastjson2.JSONArray; +import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.common.annotation.Excel; +import lombok.Data; + +import java.util.List; + +@Data +public class AppNoticeSign { + /** + * 通告id + */ + private String noticeId; + /** + * 动态表单json + */ + private JSONArray customForm; + /** + * cardIds + */ + private List cardList; + /** + * 收货地址id + */ + private String addressId; + /** 是否超级报名 */ + private String isSuper; + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiNoticeSignService.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiNoticeSignService.java index 44a1bf7..ccbd3f5 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiNoticeSignService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiNoticeSignService.java @@ -5,14 +5,16 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.busi.domain.BusiNoticeSign; +import com.ruoyi.busi.query.AppNoticeSign; /** * 通告报名Service接口 - * + * * @author 朱春云 * @date 2025-03-17 */ public interface IBusiNoticeSignService extends IService { IPage queryListPage(BusiNoticeSign pageReqVO, Page page); + void userSign(AppNoticeSign appNoticeSign); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiNoticeSignServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiNoticeSignServiceImpl.java index ee0e256..72223f3 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiNoticeSignServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiNoticeSignServiceImpl.java @@ -1,9 +1,15 @@ package com.ruoyi.busi.service.impl; import java.util.List; + +import com.alibaba.fastjson2.JSONArray; +import com.alibaba.fastjson2.JSONObject; +import com.ruoyi.busi.query.AppNoticeSign; +import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.utils.DateUtils; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.common.utils.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -13,7 +19,7 @@ import com.ruoyi.busi.service.IBusiNoticeSignService; /** * 通告报名Service业务层处理 - * + * * @author 朱春云 * @date 2025-03-17 */ @@ -27,4 +33,29 @@ public class BusiNoticeSignServiceImpl extends ServiceImpl queryListPage(BusiNoticeSign pageReqVO, Page page) { return busiNoticeSignMapper.queryListPage(pageReqVO, page); } + + /** + * 用户报名 + * @param appNoticeSign 报名实体 + */ + @Override + public void userSign(AppNoticeSign appNoticeSign) { + LoginUser loginUser = SecurityUtils.getLoginUser(); + for (JSONObject cardInfo : appNoticeSign.getCardList()) { + BusiNoticeSign busiNoticeSign =new BusiNoticeSign(); + busiNoticeSign.setNoticeId(appNoticeSign.getNoticeId()); + busiNoticeSign.setUserId(loginUser.getUserId()); + busiNoticeSign.setNickname(loginUser.getUser().getNickName()); + busiNoticeSign.setAvatar(loginUser.getUser().getAvatar()); + busiNoticeSign.setStatus("0"); + busiNoticeSign.setFormData(JSONArray.toJSONString(appNoticeSign.getCustomForm())); + busiNoticeSign.setCardId(cardInfo.getString("id")); + busiNoticeSign.setPrice(cardInfo.getBigDecimal("price")); + busiNoticeSign.setRemark(cardInfo.getString("remark")); + busiNoticeSign.setTel(cardInfo.getString("tel")); + busiNoticeSign.setIsSuper(appNoticeSign.getIsSuper()); + busiNoticeSign.setAddrId(appNoticeSign.getAddressId()); + busiNoticeSignMapper.insert(busiNoticeSign); + } + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/member/controller/MemberCardController.java b/ruoyi-admin/src/main/java/com/ruoyi/member/controller/MemberCardController.java index 097e43e..3b9b36f 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/member/controller/MemberCardController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/member/controller/MemberCardController.java @@ -4,6 +4,8 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; import javax.servlet.http.HttpServletResponse; + +import com.ruoyi.common.utils.SecurityUtils; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -25,7 +27,7 @@ import com.ruoyi.common.core.page.TableDataInfo; /** * 会员开卡记录Controller - * + * * @author pqz * @date 2025-03-17 */ @@ -104,4 +106,15 @@ public class MemberCardController extends BaseController List list = new ArrayList<>(Arrays.asList(ids)); return toAjax(memberCardService.removeByIds(list)); } + + /** + * 查询当前用户的权益信息 + */ + + @GetMapping("/selectMemberRights") + public AjaxResult selectMemberRights() + { + return success( memberCardService.selectMemberRights(SecurityUtils.getUserId(),null)); + } + }