From fbeb9fdee3be7a696156031a219954a514150286 Mon Sep 17 00:00:00 2001 From: xu0625 <1212> Date: Sun, 25 Apr 2021 15:12:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=89=8D=E6=AE=B5=E5=A5=96=E5=93=81=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/draw/DrawController.java | 141 ++++++++++- .../ruoyi/web/vo/draw/DrawUserInfoResult.java | 22 ++ .../main/resources/public/act/address.html | 8 +- .../src/main/resources/public/act/etid.html | 229 ++++++++++++++++++ .../src/main/resources/public/doll/index.html | 16 +- .../src/main/resources/public/doll/js/main.js | 35 ++- .../main/resources/public/draw/css/style.css | 10 + .../src/main/resources/public/draw/js/draw.js | 96 +++++++- .../resources/public/draw/scratchcard.html | 41 ++-- .../main/resources/public/draw/turntable.html | 18 +- .../sinosoft/activity/domain/DrawRecord.java | 10 + .../activity/domain/DrawUserInfo.java | 36 ++- .../activity/mapper/DrawRecordMapper.java | 8 + .../activity/mapper/DrawUserInfoMapper.java | 2 +- .../service/IDrawUserInfoService.java | 2 +- .../service/impl/DrawUserInfoServiceImpl.java | 39 ++- .../mapper/activity/DrawAwardRecordMapper.xml | 3 +- .../mapper/activity/DrawRecordMapper.xml | 32 ++- .../mapper/activity/DrawUserInfoMapper.xml | 4 +- 19 files changed, 695 insertions(+), 57 deletions(-) create mode 100644 sino-act-web/src/main/java/com/ruoyi/web/vo/draw/DrawUserInfoResult.java create mode 100644 sino-act-web/src/main/resources/public/act/etid.html diff --git a/sino-act-web/src/main/java/com/ruoyi/web/controller/draw/DrawController.java b/sino-act-web/src/main/java/com/ruoyi/web/controller/draw/DrawController.java index b909bab9e..5445a481c 100644 --- a/sino-act-web/src/main/java/com/ruoyi/web/controller/draw/DrawController.java +++ b/sino-act-web/src/main/java/com/ruoyi/web/controller/draw/DrawController.java @@ -25,14 +25,12 @@ 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.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.util.ArrayList; -import java.util.Date; import java.util.List; /** @@ -169,7 +167,7 @@ public class DrawController { body.setUserId(openid); body.setUserType("01"); body.setUserName(userName); - body.setDrawTime(DateUtils.dateTimeNow(DateUtils.YYYYMMDDHHMMSSS)); + body.setDrawTime(DateUtils.dateTimeNow(DateUtils.YYYYMMDDHHMMSS)); body.setMerchantCode("MerchantCode"); body.setMerchantSysCode("MerchantSysCode"); body.setBusinessArea("6"); @@ -183,7 +181,13 @@ public class DrawController { return result; } - @RequestMapping(value="/info.action", method = RequestMethod.POST) + /** + * 查询填写信息活动配置 + * @param request + * @param actCode + * @return + */ + @RequestMapping(value="/info", method = RequestMethod.POST) @ResponseBody public ActPageConfigUserinfoResult info(HttpServletRequest request, String actCode) { ActPageConfigUserinfoResult result = new ActPageConfigUserinfoResult(); @@ -208,16 +212,21 @@ public class DrawController { try { HttpSession session = request.getSession(); - WxOAuth2UserInfo userInfo = getUserInfo(request, null); - /* if (userInfo == null && !"1".equals(isAll)) { + WxOAuth2UserInfo userInfo = this.getUserInfo(request, null); + if (userInfo == null) { + result.setRespCode("-2"); + result.setRespMsg("会话已失效,请重新登录"); + logger.info("DrawController.prizes openid is null"); + return result; + } + if (userInfo == null && !"1".equals(isAll)) { result.setRecord(prizes); return result; - }*/ + } String userId =""; - /* if (!"1".equals(isAll)) { - Long userId1 = ShiroUtils.getUserId(); + if (!"1".equals(isAll)) { userId = userInfo.getOpenid(); - }*/ + } List drawRecords = iDrawRecordService.selectDrawRecordCodeList(drawCode, userId); for (DrawRecord draw: drawRecords) { String mobile = draw.getPHONE(); @@ -297,13 +306,51 @@ public class DrawController { } return result; } + + /** + * 新增发奖记录以及地址 + * @param request + * @param userInfo + * @return + */ @RequestMapping(value="/saveAddress", method = RequestMethod.POST) @ResponseBody public Result saveAddress(HttpServletRequest request, DrawUserInfo userInfo) { Result result = new Result(); try { - userInfo.setCreateTime(new Date()); + HttpSession session = request.getSession(); + WxOAuth2UserInfo user = this.getUserInfo(request, null); + if (user == null) { + result.setRespCode("-2"); + result.setRespMsg("会话已失效,请重新登录"); + logger.info("DrawController.saveAddress openid is null"); + return result; + } + userInfo.setUserId(user.getOpenid()); + if (StringUtils.isBlank(userInfo.getUserName())) { + result.setRespCode("-4"); + result.setRespMsg("请输入姓名"); + return result; + } + if (StringUtils.isBlank(userInfo.getAddress())) { + result.setRespCode("-4"); + result.setRespMsg("请输入地址"); + return result; + } + if (StringUtils.isBlank(userInfo.getGender())) { + result.setRespCode("-4"); + result.setRespMsg("请输姓名"); + return result; + } + if (StringUtils.isBlank(userInfo.getMobile())) { + result.setRespCode("-4"); + result.setRespMsg("请输手机号"); + return result; + } + iDrawUserInfoService.insertDrawUserInfo(userInfo); + result.setRespCode("1"); + result.setRespMsg("新增成功"); } catch (Exception e) { result.setRespCode("-1"); result.setRespMsg("系统异常,请稍后再试"); @@ -312,6 +359,53 @@ public class DrawController { return result; } + @RequestMapping(value="/etidAddress", method = RequestMethod.POST) + @ResponseBody + public Result etidAddress(HttpServletRequest request, DrawUserInfo userInfo) { + Result result = new Result(); + try { + HttpSession session = request.getSession(); + WxOAuth2UserInfo user = this.getUserInfo(request, null); + if (user == null) { + result.setRespCode("-2"); + result.setRespMsg("会话已失效,请重新登录"); + logger.info("DrawController.etidAddress openid is null"); + return result; + } + userInfo.setUserId(user.getOpenid()); + if (StringUtils.isBlank(userInfo.getUserName())) { + result.setRespCode("-4"); + result.setRespMsg("请输入姓名"); + return result; + } + if (StringUtils.isBlank(userInfo.getAddress())) { + result.setRespCode("-4"); + result.setRespMsg("请输入地址"); + return result; + } + if (StringUtils.isBlank(userInfo.getGender())) { + result.setRespCode("-4"); + result.setRespMsg("请输姓名"); + return result; + } + if (StringUtils.isBlank(userInfo.getMobile())) { + result.setRespCode("-4"); + result.setRespMsg("请输手机号"); + return result; + } + + iDrawUserInfoService.updateDrawUserInfo(userInfo); + result.setRespCode("1"); + result.setRespMsg("成功"); + } catch (Exception e) { + result.setRespCode("-1"); + result.setRespMsg("系统异常,请稍后再试"); + logger.error("DrawController.saveAddress ex: ", e); + } + return result; + } + + /** * 获取活动配置展示信息,根据活动编码 * todo 判断活动状态 @@ -361,6 +455,7 @@ public class DrawController { public ActPageConfigSubscribeResult qrcode(HttpServletRequest request, String actCode) { ActPageConfigSubscribeResult result = new ActPageConfigSubscribeResult (); try { + List list = new ArrayList<>(); ActPageConfigSubscribe subscribe = iActPageConfigSubscribeService.selectActPageConfigSubscribeByCode(actCode); @@ -390,4 +485,24 @@ public class DrawController { return result; } + @RequestMapping(value="/listAddress", method = RequestMethod.POST) + @ResponseBody + public Result etidAddress(HttpServletRequest request , String awarDrecordId ){ + DrawUserInfoResult result = new DrawUserInfoResult(); + try{ + DrawUserInfo drawUserInfo = iDrawUserInfoService.selectDrawUserInfoById(awarDrecordId); + result.setDrawUserInfo(drawUserInfo); + }catch (Exception e){ + result.setRespCode("-1"); + result.setRespMsg("系统异常,请稍后再试"); + logger.error("DrawController.etidAddress ex: ", e); + } + return result; + } + + + + + + } diff --git a/sino-act-web/src/main/java/com/ruoyi/web/vo/draw/DrawUserInfoResult.java b/sino-act-web/src/main/java/com/ruoyi/web/vo/draw/DrawUserInfoResult.java new file mode 100644 index 000000000..99aa55fd8 --- /dev/null +++ b/sino-act-web/src/main/java/com/ruoyi/web/vo/draw/DrawUserInfoResult.java @@ -0,0 +1,22 @@ +package com.ruoyi.web.vo.draw; + +import com.ruoyi.web.vo.Result; +import com.sinosoft.activity.domain.DrawUserInfo; + +/** + * @author xlh + * @date 2021/4/23 + */ + +public class DrawUserInfoResult extends Result { + + private DrawUserInfo drawUserInfo; + + public DrawUserInfo getDrawUserInfo() { + return drawUserInfo; + } + + public void setDrawUserInfo(DrawUserInfo drawUserInfo) { + this.drawUserInfo = drawUserInfo; + } +} diff --git a/sino-act-web/src/main/resources/public/act/address.html b/sino-act-web/src/main/resources/public/act/address.html index 3e4c15ec6..a0665241a 100644 --- a/sino-act-web/src/main/resources/public/act/address.html +++ b/sino-act-web/src/main/resources/public/act/address.html @@ -27,7 +27,7 @@ $.ajax({ type: "POST", async: false, - url: contextRootPath + "/draw/info.action", + url: contextRootPath + "/draw/info", data: {actCode: drawCode}, dataType: "json", success: function (data) { @@ -62,7 +62,7 @@ $("#agentGender").attr('type','text') } if (data.actPageConfigUserinfo[0].agentNo=='on'){ - document.getElementById("agentNo").style.display="block"; + $("#agentNo").attr('type','text') } }, error: function (XMLHttpRequest, textStatus, errorThrown) { @@ -94,7 +94,7 @@ - + @@ -102,7 +102,7 @@ - +
点击查看协议 diff --git a/sino-act-web/src/main/resources/public/act/etid.html b/sino-act-web/src/main/resources/public/act/etid.html new file mode 100644 index 000000000..141fba0a9 --- /dev/null +++ b/sino-act-web/src/main/resources/public/act/etid.html @@ -0,0 +1,229 @@ + + + + + + + + 活动 + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/sino-act-web/src/main/resources/public/doll/index.html b/sino-act-web/src/main/resources/public/doll/index.html index 64db6f9c2..eef41756a 100644 --- a/sino-act-web/src/main/resources/public/doll/index.html +++ b/sino-act-web/src/main/resources/public/doll/index.html @@ -92,7 +92,13 @@
  • 恭喜 151****3445 获得京东E卡
    • -
    • 50积分2020-11-23
    • +
    • + + 50积分 + 2020-11-23 + + +
    @@ -100,7 +106,6 @@ - \ No newline at end of file diff --git a/sino-act-web/src/main/resources/public/doll/js/main.js b/sino-act-web/src/main/resources/public/doll/js/main.js index 80fd9995f..68c4896bb 100644 --- a/sino-act-web/src/main/resources/public/doll/js/main.js +++ b/sino-act-web/src/main/resources/public/doll/js/main.js @@ -123,14 +123,20 @@ function myprizes(facade) { return; } $.each(prizes, function (i, n) { - let ptype = n.prizetype; + if('materialObject' == n.prizetype){ + + let ptype = n.prizetype; let status = n.status; let prizeCode = n.prizecode; + let prize = $('.prize_li').clone(); prize.show(); prize.removeClass('prize_li'); prize.find('.pname').html(n.prizename); prize.find('.time').html(n.createtimestamp); + prize.find('.awar').html(n.awardrecordid); + prize.find('.but').html('收货地址'); + prize.find('.but').attr('id',n.awardrecordid); let imgSrc = $('img[p-code=' + prizeCode + ']').attr('src'); prize.find("img").attr('src', imgSrc); let link = n.link; @@ -140,9 +146,34 @@ function myprizes(facade) { }); } $(prize).attr('val', prizeCode); - $(prize).attr('flow', n.drawtranseqno); + $(prize).attr('id', n.drawtranseqno); $(prize).attr('ptype', ptype); $('.myPrizes').append(prize); + }else{ + + let ptype = n.prizetype; + let status = n.status; + let prizeCode = n.prizecode; + + let prize = $('.prize_li').clone(); + prize.show(); + prize.removeClass('prize_li'); + prize.find('.pname').html(n.prizename); + prize.find('.time').html(n.createtimestamp); + let imgSrc = $('img[p-code=' + prizeCode + ']').attr('src'); + prize.find("img").attr('src', imgSrc); + let link = n.link; + if (link) { + prize.on('click', function () { + location.href = link; + }); + } + $(prize).attr('val', prizeCode); + $(prize).attr('id', n.drawtranseqno); + $(prize).attr('ptype', ptype); + $('.myPrizes').append(prize); + } + }); }, error: function (XMLHttpRequest, textStatus, errorThrown) { diff --git a/sino-act-web/src/main/resources/public/draw/css/style.css b/sino-act-web/src/main/resources/public/draw/css/style.css index d732b9950..35e277334 100644 --- a/sino-act-web/src/main/resources/public/draw/css/style.css +++ b/sino-act-web/src/main/resources/public/draw/css/style.css @@ -372,6 +372,16 @@ font-size: 0.6rem; color: #f9edc7; } +.zk_red_box .zk_red_box_header .scratch_off_box p.again_btn1{ + width: 4.62rem; + height: 1.36rem; + background: url(../images/icon_again_bg.png) no-repeat center center; + background-size: 100%; + margin: 0 auto; + line-height: 1.6rem; + font-size: 0.6rem; + color: #f9edc7; +} /* ν״̬---ʧ */ .zk_red_box .zk_red_box_header .scratch_off_box.fail p:first-child{ margin-top: 1.26rem; diff --git a/sino-act-web/src/main/resources/public/draw/js/draw.js b/sino-act-web/src/main/resources/public/draw/js/draw.js index b024f4466..cc2499808 100644 --- a/sino-act-web/src/main/resources/public/draw/js/draw.js +++ b/sino-act-web/src/main/resources/public/draw/js/draw.js @@ -1,5 +1,6 @@ var drawCode = getParameter('drawCode'); -var prizeType = null; +var awardrecordid = getParameter('awardrecordid'); +var prizeType = "materialObject"; var prizeCode = null; function rtn() { let rtnBtn = getParameter('rtn'); @@ -63,18 +64,38 @@ function myprizes() { } console.log(data.record); $.each(data.record, function (i, n) { + if('materialObject' == n.prizetype){ + var ptype = n.prizetype; + var status = n.status; + var iscenter = 0; + var record = $('.prize_li').clone(); + var but = $('.but').clone(); + $(record).css('display', 'inherit'); + record.removeClass('prize_li'); + record.removeClass('but'); + record.find('.pname').html(n.prizename) + record.find('.time').html(n.createtimestamp); + record.find('.but').html('收货地址'); + record.find('.but').attr('id',n.awardrecordid); + $(record).attr('val', n.prizecode); + $(record).attr('flow', n.drawtranseqno); + $(record).attr('ptype', n.prizetype); + $('.popList').append(record); + }else{ var ptype = n.prizetype; var status = n.status; var iscenter = 0; var record = $('.prize_li').clone(); $(record).css('display', 'inherit'); record.removeClass('prize_li'); - record.find('.pname').html(n.prizename); + record.find('.pname').html(n.prizename) record.find('.time').html(n.createtimestamp); + record.find('.awar').html(n.awardrecordid); $(record).attr('val', n.prizecode); $(record).attr('flow', n.drawtranseqno); $(record).attr('ptype', n.prizetype); $('.popList').append(record); + } }); }, error: function (XMLHttpRequest, textStatus, errorThrown) { @@ -157,10 +178,10 @@ function saveAddr() { tip('请勾选协议'); return ; } - var uname = $('.uname').val(); var phone = $('.phone').val(); var addr = $('.addr').val(); + var gender = $('.gender').val(); if ('integral' == prizeType) { } else if ('materialObject' == prizeType) { if (!uname) { @@ -175,12 +196,17 @@ function saveAddr() { tip('请输入收货人地址'); return; } + if (!gender) { + tip('请输入收货人性别'); + return; + } } else { } - var flow = $('.flow').val(); + var flow = this.id; + alert(flow) /* uname = getEntryptPwd(uname); phone = getEntryptPwd(phone);*/ - var data = $("#addressId").serialize(); + var data = $.param({'drawCode':drawCode,'flow':flow})+'&'+$("#addressId").serialize(); $.ajax({ url: contextRootPath+"/draw/saveAddress", dataType: "json", @@ -191,13 +217,71 @@ function saveAddr() { if ('integral' == prizeType) { } else if ('materialObject' == prizeType) { - + $('.register').show(); } else { } $('.register').show(); } else { + tip(data.respMsg); + } + }, + error: function (XMLHttpRequest, textStatus, errorThrown) { + console.log('网络异常', textStatus, errorThrown); + } + }); + +} +function etidAddr() { + var boolean = $("#protocol").prop("checked"); + if (!boolean){ + tip('请勾选协议'); + return ; + } + var uname = $('.uname').val(); + var phone = $('.phone').val(); + var addr = $('.addr').val(); + var gender = $('.gender').val(); + if ('integral' == prizeType) { + } else if ('materialObject' == prizeType) { + if (!uname) { + tip('请输入收货人姓名'); + return; + } + if (!phone) { + tip('请输入收货人手机号码'); + return; + } + if (!addr) { + tip('请输入收货人地址'); + return; + } + if (!gender) { + tip('请输入收货人性别'); + return; + } + } else { + } + /* uname = getEntryptPwd(uname); + phone = getEntryptPwd(phone);*/ + + var data = $("#etid").serialize(); + $.ajax({ + url: contextRootPath+"/draw/etidAddress", + dataType: "json", + type: "post", + data: data, + success: function(data){ + if (data.respCode == '1') { + if ('integral' == prizeType) { + + } else if ('materialObject' == prizeType) { + $('.register').show(); + } else { + + } $('.register').show(); + } else { tip(data.respMsg); } }, diff --git a/sino-act-web/src/main/resources/public/draw/scratchcard.html b/sino-act-web/src/main/resources/public/draw/scratchcard.html index 8ece012e4..febb2f80c 100644 --- a/sino-act-web/src/main/resources/public/draw/scratchcard.html +++ b/sino-act-web/src/main/resources/public/draw/scratchcard.html @@ -58,6 +58,10 @@

    大奖离你还差一点儿,加油

    再抽一次

    +
    @@ -100,6 +101,7 @@
    抽中奖品
    获奖时间
    +
    地址管理
    @@ -112,9 +114,11 @@
    - @@ -371,6 +364,20 @@ })(); prizes(); + + + + function qrCode(){ + + window.location.href='../act/address.html?drawCode='+drawCode; + } + function etidAddress(val){ + var awardrecordid = val.id; + var drawCode = this.drawCode; + window.location.href='../act/etid.html?drawCode='+drawCode+'&awardrecordid='+awardrecordid; + + + } diff --git a/sino-act-web/src/main/resources/public/draw/turntable.html b/sino-act-web/src/main/resources/public/draw/turntable.html index ead228965..8b687970a 100644 --- a/sino-act-web/src/main/resources/public/draw/turntable.html +++ b/sino-act-web/src/main/resources/public/draw/turntable.html @@ -328,6 +328,7 @@
    抽中奖品
    获奖时间
    +
    地址管理
    @@ -340,9 +341,12 @@
    -