zq-erp/pom.xml
@@ -401,11 +401,11 @@ <exclude>config/xcx/*</exclude> <exclude>config/xcshop/*</exclude> <!----> <!-- <exclude>config/config.json</exclude> <exclude>config/application.properties</exclude> <exclude>config/system.properties</exclude> --> <exclude>**/*.woff</exclude> zq-erp/src/main/java/com/matrix/core/tools/DingDingRobotUtil.java
@@ -70,6 +70,7 @@ response = httpclient.execute(httppost); if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { String result = EntityUtils.toString(response.getEntity(), "utf-8"); LogUtil.debug("发送钉钉结果"+result); } } catch (IOException e) { e.printStackTrace(); zq-erp/src/main/java/com/matrix/system/activity/dao/ActivitySignWriteoffDao.java
@@ -25,4 +25,6 @@ ZjrVo selectUsernameByUserId(@Param("userId")Long userId, @Param("receiveId")Long receiveId); ShopDeliveryInfo selectShopDeliveryInfoByLogisticsId(@Param("logisticsId")Integer logisticsId); ActivitySignWriteoff selectActivitySignWriteoffByUserIDAndReceiveId(@Param("logisticsId")Long id, @Param("logisticsId")long receiveId); } zq-erp/src/main/java/com/matrix/system/activity/entity/ActivitySignReceiveRecord.java
@@ -51,7 +51,7 @@ private Long awardId; /** * 是否已领取(1:待领取2:已领取) * 是否已领取(1:待领取2:已领取 3:待配送 4:待收货) */ @@ -59,7 +59,9 @@ public static final int STATE_ING = 1; public static final int STATE_DONE = 2; public static final int STATE_THREE = 3; public static final int STATE_FOUR = 4; /** * 核销码 */ zq-erp/src/main/java/com/matrix/system/activity/service/ActivitySignAwardSetService.java
@@ -237,8 +237,10 @@ activitySignAwardSetUpdate.setUpdateBy(user.getSuName()); activitySignAwardSetUpdate.setCompanyId(companyId); activitySignAwardSetUpdate.setActivityId(actId); activitySignAwardSetUpdate.setAwardState(ActivitySignAwardSet.AWARDSTATE_WORK); activitySignAwardSetDao.insert(activitySignAwardSetUpdate); }else { activitySignAwardSetUpdate.setAwardState(ActivitySignAwardSet.AWARDSTATE_WORK); activitySignAwardSetDao.updateById(activitySignAwardSetUpdate); arrayListUpdate.add(actSubid); } zq-erp/src/main/java/com/matrix/system/activity/service/ActivitySignWriteoffService.java
@@ -27,6 +27,7 @@ import com.matrix.system.common.dao.SystemDictionaryDao; import com.matrix.system.hive.action.util.QueryUtil; import com.matrix.system.hive.dao.SysVipInfoDao; import com.matrix.system.shopXcx.api.service.WxShopLogisticsQueryService; import com.matrix.system.shopXcx.bean.ShopActivities; import com.matrix.system.shopXcx.bean.ShopDeliveryInfo; import com.matrix.system.shopXcx.bean.ShopLogisticsInfo; @@ -65,6 +66,8 @@ ShopDeliveryInfoDao shopDeliveryInfoDao; @Autowired ShopLogisticsInfoDao shopLogisticsInfoDao; @Autowired private WxShopLogisticsQueryService wxShopLogisticsQueryService; public IPage<SignWriteoffListVo> findSignWriteoffList(Page<SignWriteoffListVo> page, SignWriteoffListDto signWriteoffListDto) { @@ -108,20 +111,22 @@ //物流跟踪 Integer logisticsId = activitySignWriteoffLogistics.getLogisticsId(); if(ObjectUtil.isNotEmpty(logisticsId)) { List<ShopLogisticsInfo> shopLogisticsInfos = shopLogisticsInfoDao.selectByDelieryId(logisticsId); if(CollUtil.isNotEmpty(shopLogisticsInfos)) { ArrayList<LogisticsVo> logisticsVos = new ArrayList<>(); for(ShopLogisticsInfo shopLogistics : shopLogisticsInfos) { LogisticsVo logisticsVo = new LogisticsVo(); logisticsVo.setContent(shopLogistics.getDescribe()); logisticsVo.setTimestamp(shopLogistics.getLogisticsTime()); logisticsVos.add(logisticsVo); } signWriteoffVo.setActivities(logisticsVos); } } ShopDeliveryInfo shopDeliveryInfo = shopDeliveryInfoDao.selectById(logisticsId); if(ObjectUtil.isNotEmpty(shopDeliveryInfo)){ //查看物流信息 wxShopLogisticsQueryService.selectLogisticsInfo(shopDeliveryInfo); List<ShopLogisticsInfo> shopLogisticsInfos = shopLogisticsInfoDao.selectByDelieryId(shopDeliveryInfo.getId()); if(CollUtil.isNotEmpty(shopLogisticsInfos)) { ArrayList<LogisticsVo> logisticsVos = new ArrayList<>(); for(ShopLogisticsInfo shopLogistics : shopLogisticsInfos) { LogisticsVo logisticsVo = new LogisticsVo(); logisticsVo.setContent(shopLogistics.getDescribe()); logisticsVo.setTimestamp(shopLogistics.getLogisticsTime()); logisticsVos.add(logisticsVo); } signWriteoffVo.setActivities(logisticsVos); } } } } result.putInMap("signWriteoffVo", signWriteoffVo); @@ -194,96 +199,20 @@ shopDeliveryInfo.setDeliveryTime(new Date()); shopDeliveryInfoDao.insert(shopDeliveryInfo); // Integer id = shopDeliveryInfo.getId(); // if(ObjectUtil.isNotEmpty(id)) { // List<ShopLogisticsInfo> shopLogisticsList = new ArrayList<ShopLogisticsInfo>(); // AjaxResult result = new AjaxResult(); // Map<String, String> logisticsInfo = new HashMap<String, String>(); // try { // if (shopDeliveryInfo == null) { // return new AjaxResult(AjaxResult.STATUS_FAIL, "找不到发货信息"); // } // if (!StringUtils.isNotBlank(shopDeliveryInfo.getWaybillNo()) || !StringUtils.isNotBlank(shopDeliveryInfo.getLogisticsCompanyCode())) { // return new AjaxResult(AjaxResult.STATUS_FAIL, "物流公司信息为空"); // } // logisticsInfo.put("logisticsCompany", shopDeliveryInfo.getLogisticsCompany()); // logisticsInfo.put("waybillNo", shopDeliveryInfo.getWaybillNo()); // // //如果已经签收直接查数据库 // if (AppConstance.LOGISTICS_STATUS_OF_SIGN_FOR.equals(shopDeliveryInfo.getLogisticsStatus())) { // // List<ShopLogisticsInfo> shopLogisticsInfos = shopLogisticsInfoDao.selectByDelieryId(shopDeliveryInfo.getId()); // logisticsInfo.put("logisticsStatus", String.valueOf(AppConstance.LOGISTICS_STATUS_OF_SIGN_FOR)); // result.setStatus(AjaxResult.STATUS_SUCCESS); // result.setRows(shopLogisticsInfos); // result.putInMap("logisticsInfo", logisticsInfo); // return result; // } // Map<String, String> param = new HashMap<String, String>(); // param.put("ShipperCode", shopDeliveryInfo.getLogisticsCompanyCode()); // param.put("LogisticCode", shopDeliveryInfo.getWaybillNo()); // Map<String, String> paramsUrl = getparams(param); // LogUtil.info("物流查询参数" + paramsUrl); // String logisticsResult = HttpCurlUtil.sendPost(logisticsUrl, paramsUrl); // LogUtil.info("查询物流返回信息" + logisticsResult); // LogisticsInfoVo logisticsInfoVo = JSON.parseObject(logisticsResult, LogisticsInfoVo.class); // if (logisticsInfoVo.isSuccess()) { // ShopDeliveryInfo shopDelivery = new ShopDeliveryInfo(); // shopDelivery.setLogisticsStatus(Integer.valueOf(logisticsInfoVo.getState())); // shopDelivery.setId(shopDeliveryInfo.getId()); // logisticsInfo.put("logisticsStatus", logisticsInfoVo.getState()); // //更新物流状态 // shopDeliveryInfoDao.updateByModel(shopDelivery); // if (CollectionUtils.isNotEmpty(logisticsInfoVo.getTraces())) { // List<Map<String, String>> mapTraces = logisticsInfoVo.getTraces(); // for (int i = 0; i < mapTraces.size(); i++) { // ShopLogisticsInfo shopLogisticsInfo = new ShopLogisticsInfo(); // shopLogisticsInfo.setCreateBy(AppConstance.SYSTEM_USER); // shopLogisticsInfo.setUpdateBy(AppConstance.SYSTEM_USER); // shopLogisticsInfo.setLogisticsTime(mapTraces.get(i).get("AcceptTime")); // String acceptStation = mapTraces.get(i).get("AcceptStation"); // shopLogisticsInfo.setDescribe(acceptStation); // shopLogisticsInfo.setDelieryId(shopDeliveryInfo.getId()); // if (acceptStation.indexOf(AppConstance.KDN_IS_SIGN) != -1) { // shopLogisticsInfo.setState(AppConstance.LOGISTICS_STATUS_OF_SIGN_FOR); // } else if (acceptStation.indexOf(AppConstance.KDN_IS_RECEIVE) != -1) { // shopLogisticsInfo.setState(AppConstance.LOGISTICS_STATUS_OF_RECEIVE); // } else if (acceptStation.indexOf(AppConstance.KDN_IS_ON_WAY) != -1) { // shopLogisticsInfo.setState(AppConstance.LOGISTICS_STATUS_OF_ON_WAY); // } else if (acceptStation.indexOf(AppConstance.KDN_IS_MISTAKE) != -1) { // shopLogisticsInfo.setState(AppConstance.LOGISTICS_STATUS_OF_MISTAKE); // } else { // shopLogisticsInfo.setState(AppConstance.LOGISTICS_STATUS_OF_NONE); // } // shopLogisticsList.add(shopLogisticsInfo); // } // shopLogisticsInfoDao.deleteByDelieryId(shopDeliveryInfo.getId()); // if (CollectionUtils.isNotEmpty(shopLogisticsList)) { // shopLogisticsInfoDao.batchInsert(shopLogisticsList); // } // } // } else { // throw new GlobleException(logisticsInfoVo.getReason()); // } // // } catch (Exception e) { // throw new GlobleException("物流信息查询失败"); // } //更新核销记录 activitySignWriteoff.setState(ActivitySignWriteoff.STATE_THREE); activitySignWriteoff.setWriteoffTime(new Date()); activitySignWriteoff.setWriteoffUser(sysUsers.getSuName()); activitySignWriteoff.setWriteoffUserid(sysUsers.getSuId()); activitySignWriteoff.setLogisticsId(shopDeliveryInfo.getId()); activitySignWriteoffDao.updateById(activitySignWriteoff); //更新领取记录 ActivitySignReceiveRecord activitySignReceiveRecord = activitySignReceiveRecordDao.selectById(receiveId); activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_DONE); activitySignReceiveRecord.setConsignee(logisticsSubmitDto.getShr()); activitySignReceiveRecord.setConsigneeAddress(logisticsSubmitDto.getShdz()); activitySignReceiveRecord.setConsigneePhone(logisticsSubmitDto.getLxdh()); activitySignReceiveRecordDao.updateById(activitySignReceiveRecord); // } //更新核销记录 activitySignWriteoff.setState(ActivitySignWriteoff.STATE_THREE); activitySignWriteoff.setWriteoffTime(new Date()); activitySignWriteoff.setWriteoffUser(sysUsers.getSuName()); activitySignWriteoff.setWriteoffUserid(sysUsers.getSuId()); activitySignWriteoff.setLogisticsId(shopDeliveryInfo.getId()); activitySignWriteoffDao.updateById(activitySignWriteoff); //更新领取记录 ActivitySignReceiveRecord activitySignReceiveRecord = activitySignReceiveRecordDao.selectById(receiveId); activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_THREE); activitySignReceiveRecord.setConsignee(logisticsSubmitDto.getShr()); activitySignReceiveRecord.setConsigneeAddress(logisticsSubmitDto.getShdz()); activitySignReceiveRecord.setConsigneePhone(logisticsSubmitDto.getLxdh()); activitySignReceiveRecordDao.updateById(activitySignReceiveRecord); return new AjaxResult(AjaxResult.STATUS_SUCCESS, "发货成功"); } zq-erp/src/main/java/com/matrix/system/common/actions/CommonAction.java
@@ -5,10 +5,7 @@ import com.matrix.core.constance.SystemErrorCode; import com.matrix.core.exception.GlobleException; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.tools.LogUtil; import com.matrix.core.tools.RSAUtils; import com.matrix.core.tools.StringUtils; import com.matrix.core.tools.WebUtil; import com.matrix.core.tools.*; import com.matrix.core.web.BaseAction; import com.matrix.system.common.authority.DefaultAuthorityManager; import com.matrix.system.common.authority.strategy.AccountPasswordLogin; @@ -23,10 +20,7 @@ import com.matrix.system.hive.statistics.StatisticsBusinessDataJob; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.*; import java.security.Key; import java.util.Map; @@ -56,7 +50,7 @@ StatisticsBusinessDataJob sjobp; @RequestMapping(value = "/job") public @ResponseBody String job() { sjobp.executeExt2(); //sjobp.executeExt2(); return "1"; } @@ -262,4 +256,23 @@ @Autowired /** * 官网联系我们通知 */ @RequestMapping(value = "/gwLinkUs") public @ResponseBody AjaxResult gwLinkUs(@RequestBody Map<String , Object> param) { String title = "hive新客户在官网提交联系请求"; String content = "hive=>name:" + param.get("name") + " tel:" + param.get("tel") ; DingDingRobotUtil.sendLink("https://oapi.dingtalk.com/robot/send?access_token=62bb902f0e3945f0ece31306b99abae043fc69a66da0ef04d89fd20bf58d88d8", content, title, "", "www.baidu.com"); return AjaxResult.buildSuccessInstance("提交成功"); } } zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -552,16 +552,24 @@ &&StringUtils.isNotBlank(cashConsumption.getParamValue())){ BigDecimal scoreSetting0 = new BigDecimal(cashConsumption.getParamValue()); cashScore[0]= cashPayAmount.divide(scoreSetting0).intValue(); if(scoreSetting0.compareTo(BigDecimal.ZERO)>0) { cashScore[0] = cashPayAmount.divide(scoreSetting0).intValue(); } if(StringUtils.isNotBlank(cashConsumption.getParamValue1())){ BigDecimal scoreSetting1 = new BigDecimal(cashConsumption.getParamValue1()); cashScore[1]= cashPayAmount.divide(scoreSetting1).intValue(); if(scoreSetting1.compareTo(BigDecimal.ZERO)>0){ cashScore[1]= cashPayAmount.divide(scoreSetting1).intValue(); } } if(StringUtils.isNotBlank(cashConsumption.getParamValue2())){ BigDecimal scoreSetting2 = new BigDecimal(cashConsumption.getParamValue2()); cashScore[2]= cashPayAmount.divide(scoreSetting2).intValue(); if(scoreSetting2.compareTo(BigDecimal.ZERO)>0){ cashScore[2]= cashPayAmount.divide(scoreSetting2).intValue(); } } } @@ -577,16 +585,22 @@ &&StringUtils.isNotBlank(principalBalanceConsumption.getParamValue())){ BigDecimal scoreSetting0 = new BigDecimal(principalBalanceConsumption.getParamValue()); cardScore[0]= cardPayAmount.divide(scoreSetting0).intValue(); if(scoreSetting0.compareTo(BigDecimal.ZERO)>0) { cardScore[0] = cardPayAmount.divide(scoreSetting0).intValue(); } if(StringUtils.isNotBlank(principalBalanceConsumption.getParamValue1())){ BigDecimal scoreSetting1 = new BigDecimal(principalBalanceConsumption.getParamValue1()); cardScore[1]= cardPayAmount.divide(scoreSetting1).intValue(); if(scoreSetting1.compareTo(BigDecimal.ZERO)>0) { cardScore[1] = cardPayAmount.divide(scoreSetting1).intValue(); } } if(StringUtils.isNotBlank(principalBalanceConsumption.getParamValue2())){ BigDecimal scoreSetting2 = new BigDecimal(principalBalanceConsumption.getParamValue2()); cardScore[2]= cardPayAmount.divide(scoreSetting2).intValue(); if(scoreSetting2.compareTo(BigDecimal.ZERO)>0) { cardScore[2] = cardPayAmount.divide(scoreSetting2).intValue(); } } } @@ -601,16 +615,22 @@ &&StringUtils.isNotBlank(bonusBalanceConsumption.getParamValue())){ BigDecimal scoreSetting0 = new BigDecimal(bonusBalanceConsumption.getParamValue()); giftScore[0]= giftPayAmount.divide(scoreSetting0).intValue(); if(scoreSetting0.compareTo(BigDecimal.ZERO)>0) { giftScore[0] = giftPayAmount.divide(scoreSetting0).intValue(); } if(StringUtils.isNotBlank(bonusBalanceConsumption.getParamValue1())){ BigDecimal scoreSetting1 = new BigDecimal(bonusBalanceConsumption.getParamValue1()); giftScore[1]= giftPayAmount.divide(scoreSetting1).intValue(); if(scoreSetting1.compareTo(BigDecimal.ZERO)>0) { giftScore[1] = giftPayAmount.divide(scoreSetting1).intValue(); } } if(StringUtils.isNotBlank(bonusBalanceConsumption.getParamValue2())){ BigDecimal scoreSetting2 = new BigDecimal(bonusBalanceConsumption.getParamValue2()); giftScore[2]= giftPayAmount.divide(scoreSetting2).intValue(); if(scoreSetting2.compareTo(BigDecimal.ZERO)>0) { giftScore[2] = giftPayAmount.divide(scoreSetting2).intValue(); } } } zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxCommonAction.java
@@ -10,7 +10,6 @@ import com.matrix.system.common.bean.BusParameterSettings; import com.matrix.system.common.constance.AppConstance; import com.matrix.system.common.dao.BusParameterSettingsDao; import com.matrix.system.common.interceptor.HostInterceptor; import com.matrix.system.hive.bean.MoneyCardUse; import com.matrix.system.hive.bean.MoneyCardUseFlow; import com.matrix.system.hive.bean.SysVipInfo; @@ -160,12 +159,12 @@ //设置支付状态为支付成功 modifyMap.put("payStatus", ShopOrder.ORDER_PAY_STATUS_SUCCESS); //设置订单状态 if (ShopOrder.ORDER_TYPE_GOODS == order.getOrderType()) { if (ShopOrder.SHIPPING_METHOD_WL == order.getShippingMethod()) { //如果是商品订单则进入待发货 modifyMap.put("orderStatus", ShopOrder.ORDER_STATUS_WAIT_SEND); } else { //如果是服务订单则进入待评价 modifyMap.put("orderStatus", ShopOrder.ORDER_STATUS_WAIT_REMARK); } else if (ShopOrder.SHIPPING_METHOD_MDZT == order.getShippingMethod()) { //如果是门店自提则进入待收款 modifyMap.put("orderStatus", ShopOrder.ORDER_STATUS_WAIT_RECEIVE); } shopOrderDao.updateByMap(modifyMap); zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopActivitiesSignAction.java
@@ -1,7 +1,7 @@ package com.matrix.system.shopXcx.api.action; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; @@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.matrix.component.redis.RedisUserLoginUtils; import com.matrix.core.exception.GlobleException; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.tools.StringUtils; import com.matrix.system.activity.dao.ActivitySignAwardSetDao; @@ -22,9 +23,14 @@ import com.matrix.system.hive.bean.SysVipInfo; import com.matrix.system.shopXcx.api.dto.SeeAwardTextDto; import com.matrix.system.shopXcx.api.dto.SignAwardDto; import com.matrix.system.shopXcx.api.service.WxShopLogisticsQueryService; import com.matrix.system.shopXcx.api.vo.*; import com.matrix.system.shopXcx.bean.ShopActivities; import com.matrix.system.shopXcx.bean.ShopDeliveryInfo; import com.matrix.system.shopXcx.bean.ShopLogisticsInfo; import com.matrix.system.shopXcx.dao.ShopActivitiesDao; import com.matrix.system.shopXcx.dao.ShopDeliveryInfoDao; import com.matrix.system.shopXcx.dao.ShopLogisticsInfoDao; import com.matrix.system.shopXcx.vo.SalesOrderVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -35,6 +41,9 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; @@ -60,6 +69,15 @@ @Autowired private ActivitySignRecordDao activitySignRecordDao; @Autowired ShopDeliveryInfoDao shopDeliveryInfoDao; @Autowired private ShopLogisticsInfoDao shopLogisticsInfoDao; @Autowired private WxShopLogisticsQueryService wxShopLogisticsQueryService; @ApiOperation(value = "获取签到基本信息", notes = "") @ApiResponses({ @@ -102,12 +120,34 @@ } /** * 默认获取当前月份 * 已经签到的日期 * 获取当前月份的天数 */ List<ActivitySignRecordVo> activitySignRecordVos = activitySignRecordDao.selectRecordByMonth(actId,userId,DateUtil.date()); if(CollUtil.isNotEmpty(activitySignRecordVos)){ signBasicInfoVo.setActivitySignRecords(activitySignRecordVos); List<ActivitySignRecordVo> activitySignRecordVos = new ArrayList<>(); //获取当前月的第一天是星期几 DateTime dateTime = DateUtil.beginOfMonth(DateUtil.date()); int i = DateUtil.dayOfWeek(dateTime); for(int j = 1;j<i;j++){ ActivitySignRecordVo activitySignRecordVoNull = new ActivitySignRecordVo(); activitySignRecordVos.add(activitySignRecordVoNull); } List<String> monthFullDays = getMonthFullDay(DateUtil.year(DateUtil.date()), DateUtil.month(DateUtil.date()) + 1); for(String monthFullDay : monthFullDays){ ActivitySignRecordVo activitySignRecordVo = new ActivitySignRecordVo(); activitySignRecordVo.setSignTime(monthFullDay); activitySignRecordVo.setActivityId(actId); activitySignRecordVo.setCompanyId(companyId); //对应日期是否已签到 Date date = DateUtil.parse(monthFullDay); ActivitySignRecord activitySignRecordDone = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,date); if(ObjectUtil.isNotEmpty(activitySignRecordDone)){ activitySignRecordVo.setState(1); }else{ activitySignRecordVo.setState(2); } activitySignRecordVos.add(activitySignRecordVo); } signBasicInfoVo.setActivitySignRecords(activitySignRecordVos); //累计签到日期 int cumulativeDay = getCumulativeDay(actId, userId, DateUtil.date(), 0); signBasicInfoVo.setActAumulativeDay(cumulativeDay); @@ -115,8 +155,92 @@ ajaxResult.setData(signBasicInfoVo); return ajaxResult; } /** /** * 查看历史签到记录 * * @param * @return */ @ApiOperation(value = "查看历史签到记录", notes = "") @GetMapping(value = "getSignRecord/{actId}/{month}") @ResponseBody public AjaxResult getSignRecord(@PathVariable("actId") long actId,@PathVariable("month") String dateStr) { //获取登录人信息 SysVipInfo loginUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class); Long companyId = loginUser.getCompanyId(); Long userId = loginUser.getId(); Date date = DateUtil.parse(dateStr); /** * 默认获取当前月份 * 获取当前月份的天数 */ List<ActivitySignRecordVo> activitySignRecordVos = new ArrayList<>(); //获取当前月的第一天是星期几 DateTime dateTime = DateUtil.beginOfMonth(date); int i = DateUtil.dayOfWeek(dateTime); for(int j = 1;j<i;j++){ ActivitySignRecordVo activitySignRecordVoNull = new ActivitySignRecordVo(); activitySignRecordVos.add(activitySignRecordVoNull); } List<String> monthFullDays = getMonthFullDay(DateUtil.year(DateUtil.date()), DateUtil.month(DateUtil.date()) + 1); for(String monthFullDay : monthFullDays){ ActivitySignRecordVo activitySignRecordVo = new ActivitySignRecordVo(); activitySignRecordVo.setSignTime(monthFullDay); activitySignRecordVo.setActivityId(actId); activitySignRecordVo.setCompanyId(companyId); //对应日期是否已签到 Date dateSign = DateUtil.parse(monthFullDay); ActivitySignRecord activitySignRecordDone = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,dateSign); if(ObjectUtil.isNotEmpty(activitySignRecordDone)){ activitySignRecordVo.setState(1); }else{ activitySignRecordVo.setState(2); } activitySignRecordVos.add(activitySignRecordVo); } AjaxResult ajaxResult = new AjaxResult(); ajaxResult = AjaxResult.buildSuccessInstance(""); ajaxResult.setData(activitySignRecordVos); return ajaxResult; } /** * java 获取 获取某年某月 所有日期(yyyy-mm-dd格式字符串) * @param year * @param month * @return */ public List<String> getMonthFullDay(int year , int month){ SimpleDateFormat dateFormatYYYYMMDD = new SimpleDateFormat("yyyy-MM-dd"); List<String> fullDayList = new ArrayList<>(32); // 获得当前日期对象 Calendar cal = Calendar.getInstance(); cal.clear();// 清除信息 cal.set(Calendar.YEAR, year); // 1月从0开始 cal.set(Calendar.MONTH, month-1 ); // 当月1号 cal.set(Calendar.DAY_OF_MONTH,1); int count = cal.getActualMaximum(Calendar.DAY_OF_MONTH); for (int j = 1; j <= count ; j++) { fullDayList.add(dateFormatYYYYMMDD.format(cal.getTime())); cal.add(Calendar.DAY_OF_MONTH,1); } return fullDayList; } /** * 获取当月的 天数 * */ public static int getCurrentMonthDay(Date date) { Date beginOfMonth = DateUtil.beginOfMonth(date); Date endOfMonth = DateUtil.endOfMonth(date); long betweenDay = DateUtil.between(beginOfMonth, endOfMonth, DateUnit.DAY); return Integer.parseInt(String.valueOf(betweenDay))+1; } /** * 点击签到 * */ @@ -204,7 +328,8 @@ activitySignReceiveRecord.setUpdateBy(user.getVipName()); activitySignReceiveRecord.setUpdateTime(new Date()); activitySignReceiveRecordDao.insert(activitySignReceiveRecord); signSuccessVo.setScoreCnt(activitySignAwardSetNormal.getScoreCnt()); signSuccessVo.setNormalAwardName(activitySignAwardSetNormal.getAwardName()); signSuccessVo.setNormalAwardImg(activitySignAwardSetNormal.getIntroduceImg()); } @@ -385,7 +510,7 @@ * * @return */ @ApiOperation(value = "查看劵码", notes = "") @ApiOperation(value = "物流配送信息查看", notes = "") @PostMapping(value = "/logisticsInsure") @ApiResponses({ @ApiResponse(code = 200, message = "ok", response = SeeAwardTextVo.class) @@ -395,9 +520,40 @@ seeAwardTextDto.setUserId(loginUser.getId()); seeAwardTextDto.setCompanyId(loginUser.getCompanyId()); SeeAwardTextVo seeAwardTextVO = activitySignReceiveRecordDao.selectSeeAwardTextVOById(seeAwardTextDto); long receiveId = seeAwardTextVO.getId(); //获取核销记录的ID ActivitySignWriteoff activitySignWriteoff = activitySignWriteoffDao.selectActivitySignWriteoffByUserIDAndReceiveId(loginUser.getId(),receiveId); Integer logisticsId = activitySignWriteoff.getLogisticsId(); ShopDeliveryInfo shopDeliveryInfo = shopDeliveryInfoDao.selectById(logisticsId); if(ObjectUtil.isNotEmpty(shopDeliveryInfo)){ //查看物流信息 wxShopLogisticsQueryService.selectLogisticsInfo(shopDeliveryInfo); List<ShopLogisticsInfo> shopLogisticsInfos = shopLogisticsInfoDao.selectByDelieryId(shopDeliveryInfo.getId()); seeAwardTextVO.setShopLogisticsInfos(shopLogisticsInfos); } AjaxResult result=AjaxResult.buildSuccessInstance(seeAwardTextVO); return result; } /** * 物流配送确认收货 * * @param * @return */ @ApiOperation(value = "物流配送确认收货", notes = "") @GetMapping(value = "logisticsInsureById/{awardId}") @ResponseBody public AjaxResult logisticsInsureById(@PathVariable("awardId") long awardId) { ActivitySignReceiveRecord activitySignReceiveRecord = activitySignReceiveRecordDao.selectById(awardId); //如果不是待收货状态 if (ActivitySignReceiveRecord.STATE_FOUR != activitySignReceiveRecord.getState()) { throw new GlobleException("该奖品不是待收货状态!"); } activitySignReceiveRecord.setState(ActivitySignReceiveRecord.STATE_DONE); activitySignReceiveRecordDao.updateById(activitySignReceiveRecord); return new AjaxResult(AjaxResult.STATUS_SUCCESS, "收货成功!"); } zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/YuyueAction.java
@@ -369,8 +369,7 @@ @ResponseBody public AjaxResult findServiceOrderList(@RequestBody @Validated ErpServiceOrderListDto orderListDto) { SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class); SysVipInfo vipInfo= vipInfoDao.selectByPhone(sysVipInfo.getPhone(),HostInterceptor.getCompanyId()); orderListDto.setVipId(vipInfo.getId()); orderListDto.setVipId(sysVipInfo.getId()); List<ErpServiceOrderListVo> apiServiceOrderListInPage = projServicesDao.findWxServiceOrderList(orderListDto); return AjaxResult.buildSuccessInstance(apiServiceOrderListInPage,"查询成功"); } zq-erp/src/main/java/com/matrix/system/shopXcx/api/pojo/ShopOrderDto.java
@@ -22,7 +22,7 @@ /** * 配送方式(1=物流,2=门店自取) */ private String deliverySelect; private Integer deliverySelect; /** * 配送门店ID zq-erp/src/main/java/com/matrix/system/shopXcx/api/tools/WxShopOrderUtil.java
@@ -216,14 +216,19 @@ /** * 新增发货信息 */ public int insertSendPackageInfo(ShopOrder shopOrder, String shippingMethod, ShopReceiveAddress receiveAddress) { public int insertSendPackageInfo(ShopOrder shopOrder, Integer shippingMethod, ShopReceiveAddress receiveAddress) { ShopDeliveryInfo shopDeliveryInfo = new ShopDeliveryInfo(); shopDeliveryInfo.setCreateBy(AppConstance.SYSTEM_USER); shopDeliveryInfo.setUpdateBy(AppConstance.SYSTEM_USER); shopDeliveryInfo.setOrderId(shopOrder.getId()); shopDeliveryInfo.setOrderNo(shopOrder.getOrderNo()); shopDeliveryInfo.setUserId(shopOrder.getUserId()); shopDeliveryInfo.setDeliveryWay(shippingMethod); if(ShopOrder.SHIPPING_METHOD_WL==shippingMethod){ shopDeliveryInfo.setDeliveryWay("物流配送"); }else{ shopDeliveryInfo.setDeliveryWay("门店自提"); } shopDeliveryInfo.setShopId(shopOrder.getStoreId().longValue()); shopDeliveryInfo.setCompanyId(shopOrder.getCompanyId()); StringBuffer receiveAddrStr = new StringBuffer(); zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/ActivitySignRecordVo.java
@@ -4,20 +4,12 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; @Data @ApiModel(value = "ActivitySignRecordVo", description = "签到明细") public class ActivitySignRecordVo { /** * userId */ @ApiModelProperty(value ="userId") private Long userId; @ApiModelProperty(value ="签到状态 1:已签到 2:未签到") private int state; /** * 签到时间 */ @@ -25,16 +17,7 @@ @ApiModelProperty(value ="签到时间") private Date signTime; /** * 累计签到天数 */ @ApiModelProperty(value ="累计签到天数") private Integer cumulativeDay; private String signTime; /** * 活动主表ID zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SeeAwardTextVo.java
@@ -1,15 +1,20 @@ package com.matrix.system.shopXcx.api.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.matrix.system.shopXcx.bean.ShopLogisticsInfo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; import java.util.List; @Data @ApiModel(value = "SeeAwardTextVo", description = "劵码信息") public class SeeAwardTextVo { @ApiModelProperty(value ="中奖记录ID") private long id; @ApiModelProperty(value ="奖项名称") private String awardName; @@ -46,4 +51,7 @@ @ApiModelProperty(value =" 是否已领取(1:待领取2:已领取)") private Integer state; @ApiModelProperty(value ="物流信息记录") private List<ShopLogisticsInfo> shopLogisticsInfos; } zq-erp/src/main/java/com/matrix/system/shopXcx/api/vo/SignAwardListVo.java
@@ -27,7 +27,7 @@ @ApiModelProperty(value ="数量") private int total; @ApiModelProperty(value ="是否已领取(1:待领取2:已领取)") @ApiModelProperty(value ="是否已领取(1:待领取2:已领取 3:待配送 4:待收货)") private Integer state; @ApiModelProperty(value ="领取时间") zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopOrder.java
@@ -3,6 +3,7 @@ import com.matrix.core.pojo.EntityDTO; import com.matrix.core.anotations.Extend; import com.matrix.core.tools.DateUtil; import io.swagger.models.auth.In; import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; @@ -126,6 +127,18 @@ public static final int ACTIVITY_TYPE_SECKILL = 3; /** * 物流配送 */ public static final int SHIPPING_METHOD_WL = 1; /** * 门店自提 */ public static final int SHIPPING_METHOD_MDZT = 2; /** * 主键 */ private Integer id; @@ -225,7 +238,7 @@ /** * 配送方式(1=物流,2=门店自取) */ private String shippingMethod; private Integer shippingMethod; /** * 配送门店ID @@ -467,11 +480,11 @@ this.remarks = remarks; } public String getShippingMethod() { public Integer getShippingMethod() { return shippingMethod; } public void setShippingMethod(String shippingMethod) { public void setShippingMethod(Integer shippingMethod) { this.shippingMethod = shippingMethod; } zq-erp/src/main/java/com/matrix/system/shopXcx/dto/CreateGroupBuyDTO.java
@@ -40,7 +40,7 @@ /** * 配送方式 */ private String shippingMethod; private Integer shippingMethod; /** * 拼团ID zq-erp/src/main/java/com/matrix/system/shopXcx/dto/CreateSecKillDTO.java
@@ -1,11 +1,14 @@ package com.matrix.system.shopXcx.dto; import lombok.Data; import java.math.BigDecimal; /** * @author wzy * @date 2020-04-09 15:49 **/ @Data public class CreateSecKillDTO { /** @@ -31,7 +34,7 @@ /** * 配送方式 */ private String shippingMethod; private Integer shippingMethod; private BigDecimal price; @@ -39,67 +42,4 @@ private String openId; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public Integer getAddressId() { return addressId; } public void setAddressId(Integer addressId) { this.addressId = addressId; } public Integer getCount() { return count; } public void setCount(Integer count) { this.count = count; } public Long getShopId() { return shopId; } public void setShopId(Long shopId) { this.shopId = shopId; } public String getShippingMethod() { return shippingMethod; } public void setShippingMethod(String shippingMethod) { this.shippingMethod = shippingMethod; } public BigDecimal getPrice() { return price; } public void setPrice(BigDecimal price) { this.price = price; } public Integer getGoodsId() { return goodsId; } public void setGoodsId(Integer goodsId) { this.goodsId = goodsId; } public String getOpenId() { return openId; } public void setOpenId(String openId) { this.openId = openId; } } zq-erp/src/main/resources/config/application.properties
@@ -2,6 +2,7 @@ server.port=8080 <<<<<<< HEAD #线上测试环境 #spring.datasource.username=ct_test @@ -16,6 +17,18 @@ spring.datasource.username=hive spring.datasource.password=hive123!@# spring.datasource.url=jdbc:mysql://124.70.222.34/hive_prd?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8 ======= #spring.datasource.username=hive #spring.datasource.password=hive123!@# #spring.datasource.url=jdbc:mysql://124.70.222.34/hive_prd?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8 spring.datasource.username=hive spring.datasource.password=hive123!@# spring.datasource.url=jdbc:mysql://124.70.222.34:3306/hive_prd?useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8 >>>>>>> d85af61932a03bd03663daf9da33177af5824a5c spring.datasource.type=com.alibaba.druid.pool.DruidDataSource spring.datasource.initialSize=3 zq-erp/src/main/resources/config/db/increment/2021-04-20bug.sql
New file @@ -0,0 +1,5 @@ update shop_order set shipping_method='1' where shipping_method='物流配送'; update shop_order set shipping_method='2' where shipping_method='立即配送'; ALTER TABLE `shop_order` MODIFY COLUMN `shipping_method` int(2) NULL DEFAULT NULL AFTER `remarks`; zq-erp/src/main/resources/config/prd/application.properties
@@ -2,12 +2,13 @@ server.port=8080 #spring.datasource.username=hive_data #spring.datasource.password=hive_4321#&@ #spring.datasource.url=jdbc:mysql://119.3.52.84:3306/hive_prd?useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8 spring.datasource.username=chuhuan spring.datasource.password=chuhuan spring.datasource.url=jdbc:mysql://121.37.162.173:3306/hive_prd?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8 #spring.datasource.username=hive #spring.datasource.password=hive123!@# #spring.datasource.url=jdbc:mysql://124.70.222.34:3306/hive_prd?useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8 spring.datasource.username=hive spring.datasource.password=hive123!@# spring.datasource.url=jdbc:mysql://124.70.222.34:3306/hive_prd?useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8 @@ -28,8 +29,8 @@ spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 spring.thymeleaf.prefix: classpath:/templates/views/ spring.thymeleaf.cache=false mybatis.config-location=classpath:mybatis/mybatis-config.xml mybatis.mapper-locations=classpath*:mybatis/mapper/*/*.xml mybatis-plus.config-location=classpath:mybatis/mybatis-config.xml mybatis-plus.mapper-locations=classpath*:mybatis/mapper/**/*.xml #设置全局时间返回格式 第三行设置为true表示返回时间戳 #spring.jackson.date-format=yyyy-MM-dd #spring.jackson.time-zone=GMT+8 zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignReceiveRecordDao.xml
@@ -86,7 +86,6 @@ LEFT JOIN activity_sign_award_set b ON a.award_id = b.id where b.award_type = 1 and a.state = 1 and a.company_id = #{companyId} and a.user_id = #{userId} @@ -107,7 +106,6 @@ LEFT JOIN activity_sign_award_set b ON a.award_id = b.id WHERE b.award_type = 1 AND a.state = 1 and a.company_id = #{record.companyId} and a.user_id = #{record.userId} <if test="record.sort !=null"> zq-erp/src/main/resources/mybatis/mapper/activity/ActivitySignWriteoffDao.xml
@@ -101,4 +101,12 @@ where a.id = #{logisticsId} </select> <select id="selectActivitySignWriteoffByUserIDAndReceiveId" resultType="com.matrix.system.activity.entity.ActivitySignWriteoff"> SELECT * FROM shop_delivery_info a where a.id = #{logisticsId} </select> </mapper> zq-erp/src/main/resources/templates/views/admin/activity/activity-sign-logistics-info.html
@@ -49,7 +49,7 @@ <el-row style="display:flex;"> <el-col> <el-form-item label="奖品图片:" :label-width="formLabelWidth"> {{formSelect.jptp}} <img :src="formSelect.jptp" style="max-width: 200px;"> </el-form-item> </el-col> <el-col> zq-erp/src/main/resources/templates/views/admin/activity/activity-sign-update.html
@@ -417,13 +417,8 @@ stripe:true style="width: 100%"> <el-table-column prop="cname" label="优惠券名称" show-overflow-tooltip> </el-table-column> <el-table-column prop="endTime" label="截止日期" prop="name" label="名称" show-overflow-tooltip> </el-table-column> <el-table-column zq-erp/src/main/resources/templates/views/admin/activity/activity-sign-writeoff-info.html
@@ -31,7 +31,7 @@ <el-row style="display:flex;"> <el-col :span="6"> <el-form-item label="奖品图片:" :label-width="formLabelWidth"> {{formSelect.jptp}} <img :src="formSelect.jptp" style="max-width: 200px;"> </el-form-item> </el-col> <el-col :span="6"> zq-erp/src/main/resources/templates/views/admin/activity/activity-sign.html
@@ -423,13 +423,8 @@ stripe:true style="width: 100%"> <el-table-column prop="cname" label="优惠券名称" show-overflow-tooltip> </el-table-column> <el-table-column prop="endTime" label="截止日期" prop="name" label="名称" show-overflow-tooltip> </el-table-column> <el-table-column zq-erp/src/test/java/com/matrix/FenxiaoSoreInitTest.java
@@ -1,14 +1,19 @@ package com.matrix; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; import com.matrix.core.pojo.AjaxResult; import com.matrix.system.activity.dao.ActivitySignAwardSetDao; import com.matrix.system.activity.dao.ActivitySignReceiveRecordDao; import com.matrix.system.activity.dao.ActivitySignRecordDao; import com.matrix.system.activity.dao.ActivitySignWriteoffDao; import com.matrix.system.activity.entity.ActivitySignAwardSet; import com.matrix.system.common.bean.BusParameterSettings; import com.matrix.system.common.dao.BusParameterSettingsDao; import com.matrix.system.fenxiao.constant.FenxiaoSettingConstant; import com.matrix.system.score.constant.ScoreSettingConstant; import com.matrix.system.activity.entity.ActivitySignRecord; import com.matrix.system.shopXcx.api.vo.ActivitySignAwardSetVo; import com.matrix.system.shopXcx.api.vo.ActivitySignRecordVo; import com.matrix.system.shopXcx.api.vo.SignBasicInfoJsonVo; import com.matrix.system.shopXcx.api.vo.SignBasicInfoVo; import com.matrix.system.shopXcx.bean.ShopActivities; @@ -19,7 +24,10 @@ import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; @RunWith(SpringRunner.class) @@ -27,20 +35,91 @@ public class FenxiaoSoreInitTest { @Autowired private BusParameterSettingsDao busParameterSettingsDao; @Autowired private ShopActivitiesDao shopActivitiesDao; @Autowired private ActivitySignAwardSetDao activitySignAwardSetDao; @Test public void getSignBasicInfo() { @Autowired private ActivitySignAwardSetDao activitySignAwardSetDao; @Autowired private ActivitySignReceiveRecordDao activitySignReceiveRecordDao; @Autowired private ActivitySignWriteoffDao activitySignWriteoffDao; @Autowired private ActivitySignRecordDao activitySignRecordDao; public static void main(String[] args) { System.out.println(getCurrentMonthDay(DateUtil.date())); System.out.println(getMonthFullDay(DateUtil.year(DateUtil.date()),DateUtil.month(DateUtil.date())+1).toString()); } /** * 获取当月的 天数 * */ public static int getCurrentMonthDay(Date date) { Date beginOfMonth = DateUtil.beginOfMonth(date); Date endOfMonth = DateUtil.endOfMonth(date); long betweenDay = DateUtil.between(beginOfMonth, endOfMonth, DateUnit.DAY); return Integer.parseInt(String.valueOf(betweenDay))+1; } /** * java 获取 获取某年某月 所有日期(yyyy-mm-dd格式字符串) * @param year * @param month * @return */ public static List<String> getMonthFullDay(int year , int month){ SimpleDateFormat dateFormatYYYYMMDD = new SimpleDateFormat("yyyy-MM-dd"); List<String> fullDayList = new ArrayList<>(32); // 获得当前日期对象 Calendar cal = Calendar.getInstance(); cal.clear();// 清除信息 cal.set(Calendar.YEAR, year); // 1月从0开始 cal.set(Calendar.MONTH, month-1 ); // 当月1号 cal.set(Calendar.DAY_OF_MONTH,1); int count = cal.getActualMaximum(Calendar.DAY_OF_MONTH); for (int j = 1; j <= count ; j++) { fullDayList.add(dateFormatYYYYMMDD.format(cal.getTime())); cal.add(Calendar.DAY_OF_MONTH,1); } return fullDayList; } // @Test // public void getinterger() { // Long userId = 30L; // Long companyId = 36L; // int size = activitySignReceiveRecordDao.getSignAwardReceiveCount(userId,companyId); // } // /** // * 获取累计签到天数 // * @param actId // * @param userId // * @param date // * @return // */ // public int getCumulativeDay(long actId, long userId,Date date, int i) { // ActivitySignRecord activitySignRecordOld = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,date); // if(ObjectUtil.isEmpty(activitySignRecordOld)) { // return i; // } // i++; // DateTime offsetDay = DateUtil.offsetDay(date, -i); // return getCumulativeDay(actId,userId,offsetDay,i); // } @Test public void clickSign() { long actId = 74L; Long userId = 30L; Long companyId = 36L; //获取签到活动的信息 SignBasicInfoVo signBasicInfoVo = new SignBasicInfoVo(); AjaxResult ajaxResult = new AjaxResult(); ShopActivities shopActivities = shopActivitiesDao.selectOneByCompanyIdAndActTypeAndActStatus(companyId,ShopActivities.ACTIVITIES_TYPE_SIGN,ShopActivities.ACTSTATUS_STATUS_ING); Long actId = shopActivities.getId(); signBasicInfoVo.setActName(shopActivities.getActName()); signBasicInfoVo.setActCode(shopActivities.getActCode()); signBasicInfoVo.setId(shopActivities.getId()); @@ -49,13 +128,66 @@ signBasicInfoVo.setSignBasicInfoJsonVo(signBasicInfoJsonVo); List<ActivitySignAwardSetVo> activitySignAwardSetVos = activitySignAwardSetDao .selectListByActIDAndCompanyId(actId,companyId, ActivitySignAwardSet.AWARDSTATE_WORK); .selectListByActIDAndCompanyId(actId,companyId,ActivitySignAwardSet.AWARDSTATE_WORK); signBasicInfoVo.setActivitySignAwardSetVos(activitySignAwardSetVos); AjaxResult ajaxResult = AjaxResult.buildSuccessInstance(""); ajaxResult.setData(signBasicInfoVo); System.out.println(signBasicInfoVo); //今日是否已经参与 ActivitySignRecord activitySignRecord = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,new Date()); if(ObjectUtil.isNotEmpty(activitySignRecord)) { signBasicInfoVo.setJoinState(SignBasicInfoVo.JOINSTATE_SIGN); }else { signBasicInfoVo.setJoinState(SignBasicInfoVo.JOINSTATE_NOTSIGN); } /** * 默认获取当前月份 * 获取当前月份的天数 */ List<ActivitySignRecordVo> activitySignRecordVos = new ArrayList<>(); //获取当前月的第一天是星期几 DateTime dateTime = DateUtil.beginOfMonth(DateUtil.date()); int i = DateUtil.dayOfWeek(dateTime); for(int j = 1;j<i;j++){ ActivitySignRecordVo activitySignRecordVoNull = new ActivitySignRecordVo(); activitySignRecordVos.add(activitySignRecordVoNull); } List<String> monthFullDays = getMonthFullDay(DateUtil.year(DateUtil.date()), DateUtil.month(DateUtil.date()) + 1); for(String monthFullDay : monthFullDays){ ActivitySignRecordVo activitySignRecordVo = new ActivitySignRecordVo(); activitySignRecordVo.setSignTime(monthFullDay); activitySignRecordVo.setActivityId(actId); activitySignRecordVo.setCompanyId(companyId); //对应日期是否已签到 Date date = DateUtil.parse(monthFullDay); ActivitySignRecord activitySignRecordDone = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,date); if(ObjectUtil.isNotEmpty(activitySignRecordDone)){ activitySignRecordVo.setState(1); }else{ activitySignRecordVo.setState(2); } activitySignRecordVos.add(activitySignRecordVo); } signBasicInfoVo.setActivitySignRecords(activitySignRecordVos); //累计签到日期 int cumulativeDay = getCumulativeDay(actId, userId, DateUtil.date(), 0); signBasicInfoVo.setActAumulativeDay(cumulativeDay); System.out.println(signBasicInfoVo); } /** * 获取累计签到天数 * @param actId * @param userId * @param date * @return */ public int getCumulativeDay(long actId, long userId,Date date, int i) { ActivitySignRecord activitySignRecordOld = activitySignRecordDao.selectOneByActIdAndUserIdLikesignTime(actId,userId,date); if(ObjectUtil.isEmpty(activitySignRecordOld)) { return i; } i++; DateTime offsetDay = DateUtil.offsetDay(date, -i); return getCumulativeDay(actId,userId,offsetDay,i); } public void InitByCompanyId() { //对应的公司ID @@ -64,50 +196,50 @@ // //initBusParameterFenxiaoSetting(companyId); } /** * 初始化默认积分规则设置 */ public void initBusParameterSetting(long companyId) { List<BusParameterSettings> ruleSettings=new ArrayList<>(); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.VALID_PERIOD_POINTS, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.CREDIT_POINTS_CASH, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.CASH_CONSUMPTION, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.PRINCIPAL_BALANCE_CONSUMPTION, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.BONUS_BALANCE_CONSUMPTION, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.PRINCIPAL_CONSUMPTION, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.GIVE_CONSUMPTION, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.REFERRALS_CONSUMPTION, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.CASH_CONSUMPTION_SHOP, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.RESERVATION_SERVICE_SHOP, companyId)); ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.EVALUATUIN_ORDER_SHOP, companyId)); busParameterSettingsDao.batchInsert(ruleSettings); } /** * 初始化默认分销规则设置 */ public void initBusParameterFenxiaoSetting(long companyId) { List<BusParameterSettings> ruleSettings=new ArrayList<>(); ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_SWITCH, companyId)); ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_MODEL, companyId)); ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_APPLY_WAY, companyId)); ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_AUDIT_METHOD, companyId)); ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_APPLY_CONDITION, companyId)); ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_TG_PLAN, companyId)); ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_TG_POSTER, companyId)); ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_ZGFY, companyId)); busParameterSettingsDao.batchInsert(ruleSettings); } private BusParameterSettings addScoreRuleSetting(String code,long companyId) { BusParameterSettings busParameterSetting = new BusParameterSettings(); busParameterSetting.setParamCode(code); busParameterSetting.setCompanyId(companyId); return busParameterSetting; } // /** // * 初始化默认积分规则设置 // */ // public void initBusParameterSetting(long companyId) { // List<BusParameterSettings> ruleSettings=new ArrayList<>(); // // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.VALID_PERIOD_POINTS, companyId)); // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.CREDIT_POINTS_CASH, companyId)); // // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.CASH_CONSUMPTION, companyId)); // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.PRINCIPAL_BALANCE_CONSUMPTION, companyId)); // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.BONUS_BALANCE_CONSUMPTION, companyId)); // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.PRINCIPAL_CONSUMPTION, companyId)); // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.GIVE_CONSUMPTION, companyId)); // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.REFERRALS_CONSUMPTION, companyId)); // // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.CASH_CONSUMPTION_SHOP, companyId)); // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.RESERVATION_SERVICE_SHOP, companyId)); // ruleSettings.add(addScoreRuleSetting(ScoreSettingConstant.EVALUATUIN_ORDER_SHOP, companyId)); // // busParameterSettingsDao.batchInsert(ruleSettings); // } // // /** // * 初始化默认分销规则设置 // */ // public void initBusParameterFenxiaoSetting(long companyId) { // List<BusParameterSettings> ruleSettings=new ArrayList<>(); // ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_SWITCH, companyId)); // ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_MODEL, companyId)); // ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_APPLY_WAY, companyId)); // ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_AUDIT_METHOD, companyId)); // ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_APPLY_CONDITION, companyId)); // ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_TG_PLAN, companyId)); // ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_TG_POSTER, companyId)); // ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_ZGFY, companyId)); // busParameterSettingsDao.batchInsert(ruleSettings); // } // // private BusParameterSettings addScoreRuleSetting(String code,long companyId) { // BusParameterSettings busParameterSetting = new BusParameterSettings(); // busParameterSetting.setParamCode(code); // busParameterSetting.setCompanyId(companyId); // return busParameterSetting; // } }