Browse Source

活动管理

feature/dangjian
李鹏飞 6 years ago
parent
commit
c8d4b5c3a5
  1. 5
      esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/constant/ServiceConstant.java
  2. 90
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAppActInfoController.java
  3. 73
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/ActInfoFeignClient.java
  4. 54
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/ActInfoFeignClientFallback.java
  5. 52
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/ActInfoService.java
  6. 58
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/ActInfoServiceImpl.java
  7. 66
      esua-epdc/epdc-module/epdc-heart/epdc-heart-client/src/main/java/com/elink/esua/epdc/activity/form/ActInfoAppFormDTO.java
  8. 101
      esua-epdc/epdc-module/epdc-heart/epdc-heart-client/src/main/java/com/elink/esua/epdc/activity/result/ActInfoAppResultDTO.java
  9. 219
      esua-epdc/epdc-module/epdc-heart/epdc-heart-client/src/main/java/com/elink/esua/epdc/activity/result/ActInfoDetailAppResultDTO.java
  10. 6
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/pom.xml
  11. 9
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/controller/ActBannerController.java
  12. 3
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/controller/ActUserClockLogController.java
  13. 69
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/controller/AppActInfoController.java
  14. 33
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/dao/ActInfoDao.java
  15. 1
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/dao/ActUserClockLogDao.java
  16. 46
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/ActInfoService.java
  17. 2
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/ActUserClockLogService.java
  18. 66
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/impl/ActInfoServiceImpl.java
  19. 80
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/impl/ActUserClockLogServiceImpl.java
  20. 1
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/impl/ActUserRelationServiceImpl.java
  21. 25
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/PointsFeignClient.java
  22. 16
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/UserInfoFeignClient.java
  23. 23
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/PointsFeignClientFallback.java
  24. 21
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/UserInfoFeignClientFallback.java
  25. 323
      esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/resources/mapper/activity/ActInfoDao.xml

5
esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/constant/ServiceConstant.java

@ -79,4 +79,9 @@ public interface ServiceConstant {
* 绩效考核模块
*/
String EPDC_KPI_SERVER = "epdc-kpi-server";
/**
* 积分模块
*/
String EPDC_POINTS_SERVER = "epdc-points-server";
}

90
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAppActInfoController.java

@ -0,0 +1,90 @@
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.activity.ActBannerDTO;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.service.ActInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 移动端接口-项目模块
* @Author LPF
* @Date 2019/11/18 13:32
*/
@RestController
@RequestMapping("heart/act")
public class ApiAppActInfoController {
@Autowired
private ActInfoService actInfoService;
/**
* 活动列表
* @Params: [ formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("list")
public Result<List<ActInfoAppResultDTO>> listItems(ActInfoAppFormDTO formDto) {
return actInfoService.listItems(formDto);
}
/**
* 活动列表
* @Params: [ formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("signupList")
public Result<List<ActInfoAppResultDTO>> signupListItems(ActInfoAppFormDTO formDto) {
return actInfoService.signupListItems(formDto);
}
/**
* 项目详情
* @Params: [id]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("detail/{id}")
public Result<ActInfoDetailAppResultDTO> detail(@PathVariable String id) {
return actInfoService.getDetail(id);
}
/**
* 项目详情
* @Params: [id]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("rejectDetail/{id}")
public Result<ActInfoDetailAppResultDTO> rejectDetail(@PathVariable String id) {
return actInfoService.getRejectDetail(id);
}
/**
* 项目详情
* @Params: [id]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("cancelDetail/{id}")
public Result<ActInfoDetailAppResultDTO> cancelDetail(@PathVariable String id) {
return actInfoService.getCancelDetail(id);
}
@GetMapping("banner/list")
public Result<List<ActBannerDTO>> bannerList() {
return actInfoService.getBannerList();
}
}

73
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/ActInfoFeignClient.java

@ -0,0 +1,73 @@
package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.activity.ActBannerDTO;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.config.FeignRequestInterceptor;
import com.elink.esua.epdc.dto.item.ItemEvaluateDeptDTO;
import com.elink.esua.epdc.dto.item.form.*;
import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.feign.fallback.ActInfoFeignClientFallback;
import com.elink.esua.epdc.feign.fallback.WorkItemFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import java.util.List;
/**
* 项目模块调用-移动app端
* @Author LPF
* @Date 2019/11/18 16:39
*/
@FeignClient(name = ServiceConstant.EPDC_HEART_SERVER, fallback = ActInfoFeignClientFallback.class, configuration = FeignRequestInterceptor.class)
public interface ActInfoFeignClient {
/**
* 活动列表
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ActInfoAppFormDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:42
*/
@GetMapping(value = "heart/appactinfo/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ActInfoAppResultDTO>> listItems(ActInfoAppFormDTO formDto);
/**
* 活动列表已报名
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ActInfoAppFormDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:42
*/
@GetMapping(value = "heart/appactinfo/signupList", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ActInfoAppResultDTO>> signupListItems(ActInfoAppFormDTO formDto);
/**
* 项目详情
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:42
*/
@GetMapping(value = "heart/appactinfo/detail/{id}", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<ActInfoDetailAppResultDTO> getDetail(@PathVariable String id);
@GetMapping(value = "heart/appactinfo/rejectdetail/{id}", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<ActInfoDetailAppResultDTO> getRejectDetail(@PathVariable String id);
@GetMapping(value = "heart/appactinfo/canceldetail/{id}", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<ActInfoDetailAppResultDTO> getCancelDetail(@PathVariable String id);
@GetMapping(value = "heart/actbanner/bannerlist", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ActBannerDTO>> getBannerList();
}

54
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/ActInfoFeignClientFallback.java

@ -0,0 +1,54 @@
package com.elink.esua.epdc.feign.fallback;
import com.elink.esua.epdc.activity.ActBannerDTO;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.ItemEvaluateDeptDTO;
import com.elink.esua.epdc.dto.item.form.*;
import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.feign.ActInfoFeignClient;
import com.elink.esua.epdc.feign.WorkItemFeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
/**
* @Author LPF
* @Date 2019/11/18 16:39
*/
@Component
public class ActInfoFeignClientFallback implements ActInfoFeignClient {
@Override
public Result<List<ActInfoAppResultDTO>> listItems(ActInfoAppFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_HEART_SERVER, "listItems", formDto);
}
@Override
public Result<List<ActInfoAppResultDTO>> signupListItems(ActInfoAppFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_HEART_SERVER, "signupListItems", formDto);
}
@Override
public Result<ActInfoDetailAppResultDTO> getDetail(@PathVariable String id) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_HEART_SERVER, "getDetail", id);
}
@Override
public Result<ActInfoDetailAppResultDTO> getRejectDetail(@PathVariable String id) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_HEART_SERVER, "getRejectDetail", id);
}
@Override
public Result<ActInfoDetailAppResultDTO> getCancelDetail(@PathVariable String id) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_HEART_SERVER, "getCancelDetail", id);
}
@Override
public Result<List<ActBannerDTO>> getBannerList() {
return ModuleUtils.feignConError(ServiceConstant.EPDC_HEART_SERVER, "getBannerList");
}
}

52
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/ActInfoService.java

@ -0,0 +1,52 @@
package com.elink.esua.epdc.service;
import com.elink.esua.epdc.activity.ActBannerDTO;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.result.*;
import java.util.List;
/**
* 项目模块-移动App端
* @Author LPF
* @Date 2019/11/18 13:34
*/
public interface ActInfoService {
/**
* 活动列表
* @Params: [userDetail, formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:37
*/
Result<List<ActInfoAppResultDTO>> listItems(ActInfoAppFormDTO formDto);
/**
* 活动列表已报名
* @Params: [userDetail, formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:37
*/
Result<List<ActInfoAppResultDTO>> signupListItems(ActInfoAppFormDTO formDto);
/**
* 项目详情
* @Params: [userDetail, itemId]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
Result<ActInfoDetailAppResultDTO> getDetail(String itemId);
Result<ActInfoDetailAppResultDTO> getRejectDetail(String itemId);
Result<ActInfoDetailAppResultDTO> getCancelDetail(String itemId);
Result<List<ActBannerDTO>> getBannerList();
}

58
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/ActInfoServiceImpl.java

@ -0,0 +1,58 @@
package com.elink.esua.epdc.service.impl;
import com.elink.esua.epdc.activity.ActBannerDTO;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.ItemEvaluateDeptDTO;
import com.elink.esua.epdc.dto.item.form.*;
import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.feign.ActInfoFeignClient;
import com.elink.esua.epdc.feign.WorkItemFeignClient;
import com.elink.esua.epdc.service.ActInfoService;
import com.elink.esua.epdc.service.WorkItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 项目模块-移动app端
* @Author LPF
* @Date 2019/11/18 16:34
*/
@Service
public class ActInfoServiceImpl implements ActInfoService {
@Autowired
private ActInfoFeignClient actInfoFeignClient;
@Override
public Result<List<ActInfoAppResultDTO>> listItems(ActInfoAppFormDTO formDto) {
return actInfoFeignClient.listItems(formDto);
}
@Override
public Result<List<ActInfoAppResultDTO>> signupListItems(ActInfoAppFormDTO formDto) {
return actInfoFeignClient.signupListItems(formDto);
}
@Override
public Result<ActInfoDetailAppResultDTO> getDetail(String itemId) {
return actInfoFeignClient.getDetail(itemId);
}
@Override
public Result<ActInfoDetailAppResultDTO> getRejectDetail(String itemId) {
return actInfoFeignClient.getRejectDetail(itemId);
}
@Override
public Result<ActInfoDetailAppResultDTO> getCancelDetail(String itemId) {
return actInfoFeignClient.getCancelDetail(itemId);
}
@Override
public Result<List<ActBannerDTO>> getBannerList() {
return actInfoFeignClient.getBannerList();
}
}

66
esua-epdc/epdc-module/epdc-heart/epdc-heart-client/src/main/java/com/elink/esua/epdc/activity/form/ActInfoAppFormDTO.java

@ -0,0 +1,66 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.activity.form;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 活动信息表
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-12-11
*/
@Data
public class ActInfoAppFormDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 页码从1开始
*/
@Min(value = 1, message = "页码必须大于0")
private int pageIndex;
private Long userId;
private String id;
/**
* 页容量默认20页
*/
@Min(value = 1, message = "每页条数必须大于必须大于0")
private int pageSize = 20;
/**
* 第一页查询发起时的时间
*/
@NotBlank(message = "时间戳不能为空")
private String timestamp;
/**
* 活动列表类型
*/
@NotBlank(message = "类型不能为空")
private String actType;
}

101
esua-epdc/epdc-module/epdc-heart/epdc-heart-client/src/main/java/com/elink/esua/epdc/activity/result/ActInfoAppResultDTO.java

@ -0,0 +1,101 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.activity.result;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 活动信息表
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-12-11
*/
@Data
public class ActInfoAppResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 标题
*/
private String title;
/**
* 活动开始时间
*/
private Date actStartTime;
/**
* 活动结束时间
*/
private Date actEndTime;
/**
* 活动地点
*/
private String actAddress;
/**
* 活动名额
*/
private Integer actQuota;
/**
* 已报名人数
*/
private Integer signupNum;
/**
* 活动打卡人数
*/
private Integer clockNum;
/**
* 活动当前状态0-报名中1-已报满2-未开始3-进行中4-已结束
*/
private String actCurrentState;
/**
* 用户报名状态0-未报名1已报名
*/
private String signupFlag;
/**
* 用户打卡状态0-未打卡1-已打卡
*/
private String clockFlag;
/**
* 活动用户关联表ID
*/
private String actUserId;
}

219
esua-epdc/epdc-module/epdc-heart/epdc-heart-client/src/main/java/com/elink/esua/epdc/activity/result/ActInfoDetailAppResultDTO.java

@ -0,0 +1,219 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.activity.result;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 活动信息表
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-12-11
*/
@Data
public class ActInfoDetailAppResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 标题
*/
private String title;
/**
* 活动头图
*/
private String headPic;
/**
* 报名开始时间
*/
private Date signupStartTime;
/**
*活动报名默认状态
*/
private String actUserDefaultState;
/**
* 报名截止时间
*/
private Date signupEndTime;
/**
* 活动开始时间
*/
private Date actStartTime;
/**
* 活动结束时间
*/
private Date actEndTime;
/**
* 打卡开始时间
*/
private Date signinStartTime;
/**
* 打卡截止时间
*/
private Date signinEndTime;
/**
* 活动地点
*/
private String actAddress;
/**
* 活动位置经度
*/
private BigDecimal actLongitude;
/**
* 活动位置纬度
*/
private BigDecimal actLatitude;
/**
* 活动签到打卡地点
*/
private String signinAddress;
/**
* 活动签到打卡位置经度
*/
private BigDecimal signinLongitude;
/**
* 活动签到打卡位置纬度
*/
private BigDecimal signinLatitude;
/**
* 活动签到打卡半径(单位)
*/
private Integer clockRadius;
/**
* 活动名额
*/
private Integer actQuota;
/**
* 已报名人数
*/
private Integer signupNum;
/**
* 活动打卡人数
*/
private Integer clockNum;
/**
* 活动分享数
*/
private Integer actShareNum;
/**
* 活动浏览数
*/
private Integer actBrowseNum;
/**
* 联系人
*/
private String contacts;
/**
* 联系电话
*/
private String tel;
/**
* 招募要求
*/
private String requirement;
/**
* 活动内容
*/
private String actContent;
/**
* 活动发布状态0-下架1上架
*/
private String actStatus;
/**
* 活动发布时间
*/
private Date publishTime;
/**
* 活动主办方
*/
private String sponsor;
/**
* 创建部门ID
*/
private Long deptId;
/**
* 活动惩罚积分
*/
private Integer punishmentPoints;
/**
* 活动奖励积分
*/
private Integer reward;
/**
* 活动名额类型
*/
private Integer actQuotaCategory;
/**
* 活动下架原因
*/
private String cancelReason;
private String failureReason;
/**
* 用户当前状态0-我要报名1-取消报名2-已报满3-未开始4-我要打卡5-更新打卡6-已结束7-已取消
*/
private String currentUserStatus;
/**
* 用户认证志愿者标识0-未认证1-已认证
*/
private String userVolunteerFlag;
}

6
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/pom.xml

@ -50,6 +50,12 @@
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
<dependency>
<groupId>com.esua.epdc</groupId>
<artifactId>epdc-points-client</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>

9
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/controller/ActBannerController.java

@ -32,6 +32,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -65,6 +66,14 @@ public class ActBannerController {
return actBannerService.grounding(id);
}
@GetMapping("bannerlist")
public Result<List<ActBannerDTO>> getBannerList(){
Map<String, Object> params =new HashMap<String, Object>();
params.put("status","1");
List<ActBannerDTO> data = actBannerService.list(params);
return new Result<List<ActBannerDTO>>().ok(data);
}
@PostMapping
public Result save(@RequestBody ActBannerDTO dto){
//效验数据

3
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/controller/ActUserClockLogController.java

@ -61,6 +61,7 @@ public class ActUserClockLogController {
@GetMapping("page")
public Result<PageData<ActUserClockLogResultDTO>> page(@RequestParam Map<String, Object> params){
PageData<ActUserClockLogResultDTO> page = actUserClockLogService.getActUserClockLogFromPC(params);
System.out.println(page);
return new Result<PageData<ActUserClockLogResultDTO>>().ok(page);
}
@ -88,7 +89,7 @@ public class ActUserClockLogController {
actUserClockLogService.save(dto);
return new Result();
}
@PostMapping
@PostMapping("pointCheck")
public Result pointCheck(@RequestBody ActPointCheckFormDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);

69
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/controller/AppActInfoController.java

@ -18,15 +18,18 @@
package com.elink.esua.epdc.modules.activity.controller;
import com.elink.esua.epdc.activity.ActInfoDTO;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.activity.result.AppActInfoDTO;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.modules.activity.service.ActInfoService;
import org.springframework.beans.factory.annotation.Autowired;
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.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
@ -53,5 +56,63 @@ public class AppActInfoController {
AppActInfoDTO appActInfoDTO = ConvertUtils.sourceToTarget(actInfoDTO, AppActInfoDTO.class);
return new Result<AppActInfoDTO>().ok(appActInfoDTO);
}
/**
* 活动列表--App端
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:46
*/
@GetMapping("list")
public Result<List<ActInfoAppResultDTO>> listItems(@RequestBody ActInfoAppFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return this.actInfoService.listItemsByApp(formDto);
}
/**
* 活动列表--App端
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:46
*/
@GetMapping("signupList")
public Result<List<ActInfoAppResultDTO>> signupListItems(@RequestBody ActInfoAppFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return this.actInfoService.signupListItemsByApp(formDto);
}
/**
* 项目详情--工作端
* @Params: [id]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: lipengfei
* @Date: 2019/11/19 16:46
*/
@GetMapping("detail/{id}")
public Result<ActInfoDetailAppResultDTO> getDetail(@PathVariable String id) {
return this.actInfoService.getDetailByApp(id);
}
/**
* 项目详情--工作端
* @Params: [id]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: lipengfei
* @Date: 2019/11/19 16:46
*/
@GetMapping("rejectdetail/{id}")
public Result<ActInfoDetailAppResultDTO> getRejectDetail(@PathVariable String id) {
return this.actInfoService.getRejectDetailByApp(id);
}
/**
* 项目详情--工作端
* @Params: [id]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: lipengfei
* @Date: 2019/11/19 16:46
*/
@GetMapping("cancelDetail/{id}")
public Result<ActInfoDetailAppResultDTO> getCancelDetail(@PathVariable String id) {
return this.actInfoService.getCancelDetailByApp(id);
}
}

33
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/dao/ActInfoDao.java

@ -17,6 +17,9 @@
package com.elink.esua.epdc.modules.activity.dao;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoResultDTO;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.modules.activity.entity.ActInfoEntity;
@ -41,5 +44,35 @@ public interface ActInfoDao extends BaseDao<ActInfoEntity> {
* @Date: 2019/9/5 19:42
*/
List<ActInfoResultDTO> getActInfoPageFromPC(Map<String, Object> params);
/**
* 移动端-活动列表
* @Params: [formDto]
* @Return: java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>
* @Author: liuchuang
* @Date: 2019/9/9 16:50
*/
List<ActInfoAppResultDTO> listItemsByApp(ActInfoAppFormDTO formDto);
/**
* 移动端-活动列表已报名
* @Params: [formDto]
* @Return: java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>
* @Author: liuchuang
* @Date: 2019/9/9 16:50
*/
List<ActInfoAppResultDTO> signupListItemsByApp(ActInfoAppFormDTO formDto);
/**
* 工作端-项目详情
* @Params: [formDto]
* @Return: com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO
* @Author: lipengfei
* @Date: 2019/9/10 20:57
*/
ActInfoDetailAppResultDTO getDetailByApp(ActInfoAppFormDTO formDto);
ActInfoDetailAppResultDTO getRejectDetailByApp(ActInfoAppFormDTO formDto);
ActInfoDetailAppResultDTO getCancelDetailByApp(ActInfoAppFormDTO formDto);
}

1
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/dao/ActUserClockLogDao.java

@ -18,7 +18,6 @@
package com.elink.esua.epdc.modules.activity.dao;
import com.elink.esua.epdc.activity.result.ActUserClockLogResultDTO;
import com.elink.esua.epdc.activity.result.ActUserClockResultDTO;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.modules.activity.entity.ActUserClockLogEntity;
import org.apache.ibatis.annotations.Mapper;

46
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/ActInfoService.java

@ -18,7 +18,10 @@
package com.elink.esua.epdc.modules.activity.service;
import com.elink.esua.epdc.activity.ActInfoDTO;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.form.ActInfoFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoResultDTO;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData;
@ -68,6 +71,49 @@ public interface ActInfoService extends BaseService<ActInfoEntity> {
*/
ActInfoDTO get(String id);
/**
* 活动列表-移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/10/19 16:47
*/
Result<List<ActInfoAppResultDTO>> listItemsByApp(ActInfoAppFormDTO formDto);
/**
* 活动列表(已报名)-移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/10/19 16:47
*/
Result<List<ActInfoAppResultDTO>> signupListItemsByApp(ActInfoAppFormDTO formDto);
/**
* 移动端-项目详情
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: liuchuang
* @Date: 2019/9/10 20:54
*/
Result<ActInfoDetailAppResultDTO> getDetailByApp(String id);
/**
* 移动端-项目详情
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: liuchuang
* @Date: 2019/9/10 20:54
*/
Result<ActInfoDetailAppResultDTO> getRejectDetailByApp(String id);
/**
* 移动端-项目详情
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemDetailResultDTO>
* @Author: liuchuang
* @Date: 2019/9/10 20:54
*/
Result<ActInfoDetailAppResultDTO> getCancelDetailByApp(String id);
/**
* 默认保存
*

2
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/ActUserClockLogService.java

@ -81,7 +81,7 @@ public interface ActUserClockLogService extends BaseService<ActUserClockLogEntit
*/
void save(ActUserClockLogDTO dto);
void pointCheck(ActPointCheckFormDTO dto);
Result pointCheck(ActPointCheckFormDTO dto);
/**
* 默认更新

66
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/impl/ActInfoServiceImpl.java

@ -20,10 +20,15 @@ package com.elink.esua.epdc.modules.activity.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.activity.ActInfoDTO;
import com.elink.esua.epdc.activity.form.ActInfoAppFormDTO;
import com.elink.esua.epdc.activity.form.ActInfoFormDTO;
import com.elink.esua.epdc.activity.result.ActInfoAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO;
import com.elink.esua.epdc.activity.result.ActInfoResultDTO;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.security.user.SecurityUser;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
@ -39,6 +44,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@ -106,6 +112,38 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit
ActInfoEntity entity = ConvertUtils.sourceToTarget(dto, ActInfoEntity.class);
updateById(entity);
}
/**
* 活动列表-移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/10/19 16:47
*/
@Override
public Result<List<ActInfoAppResultDTO>> signupListItemsByApp(ActInfoAppFormDTO formDto) {
int pageIndex = (formDto.getPageIndex() - NumConstant.ONE) * formDto.getPageSize();
formDto.setUserId(SecurityUser.getUserId());
formDto.setPageIndex(pageIndex);
List<ActInfoAppResultDTO> data = baseDao.signupListItemsByApp(formDto);
return new Result<List<ActInfoAppResultDTO>>().ok(data);
}
/**
* 活动列表-移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/10/19 16:47
*/
@Override
public Result<List<ActInfoAppResultDTO>> listItemsByApp(ActInfoAppFormDTO formDto) {
int pageIndex = (formDto.getPageIndex() - NumConstant.ONE) * formDto.getPageSize();
formDto.setUserId(SecurityUser.getUserId());
formDto.setPageIndex(pageIndex);
List<ActInfoAppResultDTO> data = baseDao.listItemsByApp(formDto);
return new Result<List<ActInfoAppResultDTO>>().ok(data);
}
@Override
@Transactional(rollbackFor = Exception.class)
public Result cancel(ActInfoFormDTO dto) {
@ -129,5 +167,33 @@ public class ActInfoServiceImpl extends BaseServiceImpl<ActInfoDao, ActInfoEntit
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public Result<ActInfoDetailAppResultDTO> getDetailByApp(String id) {
ActInfoAppFormDTO formDto = new ActInfoAppFormDTO();
formDto.setId(id);
formDto.setUserId(SecurityUser.getUserId());
Date currentTime = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = formatter.format(currentTime);
formDto.setTimestamp(dateString);
ActInfoDetailAppResultDTO resultDTO = baseDao.getDetailByApp(formDto);
return new Result<ActInfoDetailAppResultDTO>().ok(resultDTO);
}
@Override
public Result<ActInfoDetailAppResultDTO> getRejectDetailByApp(String id) {
ActInfoAppFormDTO formDto = new ActInfoAppFormDTO();
formDto.setId(id);
formDto.setUserId(SecurityUser.getUserId());
ActInfoDetailAppResultDTO resultDTO = baseDao.getRejectDetailByApp(formDto);
return new Result<ActInfoDetailAppResultDTO>().ok(resultDTO);
}
@Override
public Result<ActInfoDetailAppResultDTO> getCancelDetailByApp(String id) {
ActInfoAppFormDTO formDto = new ActInfoAppFormDTO();
formDto.setId(id);
ActInfoDetailAppResultDTO resultDTO = baseDao.getCancelDetailByApp(formDto);
return new Result<ActInfoDetailAppResultDTO>().ok(resultDTO);
}
}

80
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/impl/ActUserClockLogServiceImpl.java

@ -22,25 +22,28 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.activity.*;
import com.elink.esua.epdc.activity.form.ActPointCheckFormDTO;
import com.elink.esua.epdc.activity.result.ActUserClockLogResultDTO;
import com.elink.esua.epdc.activity.result.ActUserRelationResultDTO;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.constant.PointsConstant;
import com.elink.esua.epdc.commons.tools.enums.YesOrNoEnum;
import com.elink.esua.epdc.commons.tools.enums.pointsenum.PointsOperationModeEnum;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.constant.ActStateConstant;
import com.elink.esua.epdc.dto.UserDTO;
import com.elink.esua.epdc.modules.activity.dao.ActUserClockLogDao;
import com.elink.esua.epdc.dto.logs.PointsLogsDTO;
import com.elink.esua.epdc.modules.activity.entity.ActUserClockLogEntity;
import com.elink.esua.epdc.modules.activity.entity.ActUserPointsLogEntity;
import com.elink.esua.epdc.modules.activity.entity.ActUserRelationEntity;
import com.elink.esua.epdc.modules.activity.redis.ActUserClockLogRedis;
import com.elink.esua.epdc.modules.activity.service.*;
import com.elink.esua.epdc.modules.feign.UserFeignClient;
import com.elink.esua.epdc.modules.feign.PointsFeignClient;
import com.elink.esua.epdc.modules.feign.UserInfoFeignClient;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.elink.esua.epdc.modules.activity.dao.ActUserClockLogDao;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.util.Arrays;
import java.util.Date;
@ -74,7 +77,11 @@ public class ActUserClockLogServiceImpl extends BaseServiceImpl<ActUserClockLogD
private ActInfoService actInfoService;
@Autowired
private UserFeignClient userFeignClient;
private UserInfoFeignClient userInfoFeignClient;
@Autowired
private PointsFeignClient pointsFeignClient;
@Override
public PageData<ActUserClockLogDTO> page(Map<String, Object> params) {
@ -87,6 +94,7 @@ public class ActUserClockLogServiceImpl extends BaseServiceImpl<ActUserClockLogD
@Override
public PageData<ActUserClockLogResultDTO> getActUserClockLogFromPC(Map<String, Object> params) {
IPage<ActUserClockLogResultDTO> page = getPage(params);
System.out.println(params);
List<ActUserClockLogResultDTO> list = baseDao.getActUserClockLogFromPC(params);
return new PageData<>(list, page.getTotal());
}
@ -121,35 +129,46 @@ public class ActUserClockLogServiceImpl extends BaseServiceImpl<ActUserClockLogD
}
@Override
@Transactional(rollbackFor = Exception.class)
public void pointCheck(ActPointCheckFormDTO dto) {
public Result pointCheck(ActPointCheckFormDTO dto) {
ActInfoDTO actInfoDTO = actInfoService.get(dto.getActId());
ActUserPointsLogDTO pointsLogEntity = new ActUserPointsLogDTO();
pointsLogEntity.setActUserId(dto.getId());
pointsLogEntity.setOperationReason(dto.getFailureReason());
ActUserPointsLogDTO pointsLogDTO = new ActUserPointsLogDTO();
pointsLogDTO.setActUserId(dto.getId());
pointsLogDTO.setOperationReason(dto.getFailureReason());
//确认加积分
Integer point = 0;
if (ActStateConstant.ACT_USER_RELATION_STATUS_POINTPASS.equals(dto.getStatus())) {
pointsLogEntity.setOperationType(ActStateConstant.POINT_OPERATION_TYPE_ADMINPASS);
pointsLogEntity.setOperationPointsType(ActStateConstant.OPERATION_POINTS_TYPE_ADD);
pointsLogDTO.setOperationType(ActStateConstant.POINT_OPERATION_TYPE_ADMINPASS);
pointsLogDTO.setOperationPointsType(ActStateConstant.OPERATION_POINTS_TYPE_ADD);
point =actInfoDTO.getReward();
pointsLogEntity.setPoints(point);
pointsLogDTO.setPoints(point);
//拒绝加积分
} else if (ActStateConstant.ACT_USER_RELATION_STATUS_POINTREJECT.equals(dto.getStatus())) {
pointsLogEntity.setOperationType(ActStateConstant.POINT_OPERATION_TYPE_ADMINREJECT);
pointsLogEntity.setOperationPointsType(ActStateConstant.OPERATION_POINTS_TYPE_DEDUCT);
pointsLogEntity.setPoints(point);
pointsLogDTO.setOperationType(ActStateConstant.POINT_OPERATION_TYPE_ADMINREJECT);
pointsLogDTO.setOperationPointsType(ActStateConstant.OPERATION_POINTS_TYPE_DEDUCT);
pointsLogDTO.setPoints(point);
}
PointsLogsDTO pointsLogsEntity = new PointsLogsDTO();
pointsLogsEntity.setVolunteerId(dto.getId());
pointsLogsEntity.setOperationTime(new Date());
pointsLogsEntity.setOperationMode(PointsOperationModeEnum.OPERATION_MODE_ADMIN.getOperationMode());
pointsLogsEntity.setStatus(YesOrNoEnum.YES.value());
pointsLogsEntity.setFailureReason("");
pointsLogsEntity.setRuleCode(PointsConstant.ruleCode);
pointsLogsEntity.setOperationDesc("积分操作");
//操作描述
pointsLogsEntity.setPoints(point);
pointsLogsEntity.setOperationType(pointsLogDTO.getOperationType());
pointsLogsEntity.setBehaviorCode("like");
//增加积分记录
actUserPointsLogService.save(pointsLogEntity);
actUserPointsLogService.save(pointsLogDTO);
// 更新用户状态
userInfoHandle(dto,point);
return userInfoHandle(dto,pointsLogsEntity);
}
private Result userInfoHandle(ActPointCheckFormDTO dto,Integer point){
boolean resultFlg = false;
private Result userInfoHandle(ActPointCheckFormDTO dto, PointsLogsDTO pointsLogsEntity){
//用户关系表状态更新
ActUserRelationDTO checkDTO =actUserRelationService.get(dto.getId());
ActUserRelationDTO actUserRelationEntity = new ActUserRelationDTO();
@ -165,19 +184,32 @@ public class ActUserClockLogServiceImpl extends BaseServiceImpl<ActUserClockLogD
actUserLogDTO.setOperationTime(new Date());
actUserLogService.save(actUserLogDTO);
//更新用户积分
Result<UserDTO> result = userFeignClient.getUserInfoById(checkDTO.getUserId());
Result<UserDTO> result = userInfoFeignClient.getUserInfoById(checkDTO.getUserId());
if (result.success() && null != result.getData()) {
UserDTO updateUserDTO = result.getData();
//增加用户积分
updateUserDTO.setPoints(updateUserDTO.getPoints() + point);
Result userResult = userFeignClient.updateUserInfo(updateUserDTO);
System.out.println(updateUserDTO.toString());
updateUserDTO.setPoints(updateUserDTO.getPoints() + pointsLogsEntity.getPoints());
pointsLogsEntity.setUserId(checkDTO.getUserId());
pointsLogsEntity.setLavePoints(updateUserDTO.getPoints() + pointsLogsEntity.getPoints());
Result userResult = userInfoFeignClient.updateUserInfo(updateUserDTO);
if (userResult.success()) {
return null;
// 用户积分记录
Result pointResult = pointsFeignClient.addPointsLog(pointsLogsEntity);
if(pointResult.success()){
return new Result();
} else {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return new Result().error("积分记录增加失败。");
}
} else {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return new Result().error("用户信息更新失败。");
}
} else {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
return new Result().error("用户信息获取失败。");
}

1
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/activity/service/impl/ActUserRelationServiceImpl.java

@ -83,6 +83,7 @@ public class ActUserRelationServiceImpl extends BaseServiceImpl<ActUserRelationD
@Override
public ActInfoClockResultDTO getActDetail(String id) {
ActInfoClockResultDTO resultDTO = baseDao.getActDetail(id);
System.out.println(resultDTO);
return resultDTO;
}
@Override

25
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/PointsFeignClient.java

@ -0,0 +1,25 @@
package com.elink.esua.epdc.modules.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.logs.PointsLogsDTO;
import com.elink.esua.epdc.modules.feign.fallback.PointsFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
*
* 调用用户模块
*
* @Authorwanggongfeng
* @Date2019/12/16 17:36
*/
@FeignClient(name = ServiceConstant.EPDC_POINTS_SERVER, fallback = PointsFeignClientFallback.class)
public interface PointsFeignClient {
@PostMapping("/points/pointslogs/addPointsLog")
Result addPointsLog(@RequestBody PointsLogsDTO dto);
}

16
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/PointsFeignClient.java → esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/UserInfoFeignClient.java

@ -1,9 +1,9 @@
package com.elink.esua.epdc.modules.feign.fallback;
package com.elink.esua.epdc.modules.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.UserDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcGetVolunteerRankDTO;
import com.elink.esua.epdc.modules.feign.fallback.UserInfoFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@ -18,16 +18,8 @@ import java.util.List;
* @Authorwanggongfeng
* @Date2019/12/16 17:36
*/
@FeignClient(name = ServiceConstant., fallback = UserFeignClientFallback.class)
public interface PointsFeignClient {
/**
* 获取排行榜
*
* @return
*/
@GetMapping("app-user/epdc-app/volunteerinfo/getRankingList")
Result<List<EpdcGetVolunteerRankDTO>> getRankingList();
@FeignClient(name = ServiceConstant.EPDC_USER_SERVER, fallback = UserInfoFeignClientFallback.class)
public interface UserInfoFeignClient {
@GetMapping("app-user/epdc-app/user/getById/{userId}")

23
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/PointsFeignClientFallback.java

@ -0,0 +1,23 @@
package com.elink.esua.epdc.modules.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.logs.PointsLogsDTO;
import com.elink.esua.epdc.modules.feign.PointsFeignClient;
import org.springframework.stereotype.Component;
/**
* @Authorwanggongfeng
* @Date2019/12/16 15:11
*/
@Component
public class PointsFeignClientFallback implements PointsFeignClient {
@Override
public Result addPointsLog(PointsLogsDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_POINTS_SERVER, "addPointsLog", dto);
}
}

21
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/UserInfoFeignClientFallback.java

@ -0,0 +1,21 @@
package com.elink.esua.epdc.modules.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.UserDTO;
import com.elink.esua.epdc.modules.feign.UserInfoFeignClient;
/**
* @author 86185
*/
public class UserInfoFeignClientFallback implements UserInfoFeignClient {
@Override
public Result<UserDTO> getUserInfoById(String userId) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "getUserInfoById", userId);
}
@Override
public Result updateUserInfo(UserDTO userDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "updateUserInfo", userDTO);
}
}

323
esua-epdc/epdc-module/epdc-heart/epdc-heart-server/src/main/resources/mapper/activity/ActInfoDao.xml

@ -74,7 +74,7 @@
<result property="deptId" column="DEPT_ID"/>
<result property="punishmentPoints" column="PUNISHMENT_POINTS"/>
<result property="reward" column="REWARD"/>
<result property="ACT_USER_DEFAULT_STATE" column="actUserDefaultState"/>
<result property="actUserDefaultState" column="ACT_USER_DEFAULT_STATE"/>
</resultMap>
<select id="getActInfoPageFromPC" resultMap="actResultMap">
SELECT
@ -128,6 +128,327 @@
ORDER BY
actInfo.CREATED_TIME DESC
</select>
<resultMap type="com.elink.esua.epdc.activity.result.ActInfoAppResultDTO" id="actAppResultMap">
<result property="id" column="ID"/>
<result property="title" column="TITLE"/>
<result property="headPic" column="HEAD_PIC"/>
<result property="actStartTime" column="ACT_START_TIME"/>
<result property="actEndTime" column="ACT_END_TIME"/>
<result property="actAddress" column="ACT_ADDRESS"/>
<result property="actQuota" column="ACT_QUOTA"/>
<result property="actQuotaCategory" column="ACT_QUOTA_CATEGORY"/>
<result property="signupNum" column="SIGNUP_NUM"/>
<result property="clockNum" column="CLOCK_NUM"/>
</resultMap>
<select id="listItemsByApp" resultMap="actAppResultMap">
SELECT
actInfo.ID,
actInfo.TITLE,
actInfo.HEAD_PIC,
actInfo.ACT_START_TIME,
actInfo.ACT_END_TIME,
actInfo.ACT_ADDRESS,
actInfo.ACT_QUOTA_CATEGORY,
actInfo.ACT_QUOTA,
actInfo.SIGNUP_NUM,
actInfo.CLOCK_NUM,
case
when <![CDATA[ DATE_FORMAT(actInfo.SIGNUP_END_TIME,'%Y-%m-%d %H:%i:%s') >= ]]> #{formDto.timestamp}
then case when actInfo.SIGNUP_NUM = ACT_QUOTA and actInfo.ACT_QUOTA_CATEGORY = 1
then '1'
else '0'
end
when <![CDATA[ DATE_FORMAT(actInfo.ACT_START_TIME,'%Y-%m-%d %H:%i:%s') > ]]> #{formDto.timestamp}
and
<![CDATA[ DATE_FORMAT(actInfo.SIGNUP_END_TIME,'%Y-%m-%d %H:%i:%s') < ]]> #{formDto.timestamp}
then '2'
when <![CDATA[ DATE_FORMAT(actInfo.ACT_START_TIME,'%Y-%m-%d %H:%i:%s') <= ]]> #{formDto.timestamp}
and
<![CDATA[ DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') >= ]]> #{formDto.timestamp}
then '3'
when <![CDATA[ DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') < ]]> #{formDto.timestamp}
then '4'
end as actCurrentState,
IF(relation.USER_ID = #{formDto.userId},'1','0') as signupFlag
FROM
epdc_act_info actInfo
left join epdc_act_user_relation relation on relation.DEL_FLAG = '0'
and relation.USER_ID = #{formDto.userId}
and relation.STATUS not in ('3','4')
and actInfo.ID = relation.ACT_ID
WHERE
actInfo.DEL_FLAG = '0'
and actInfo.ACT_STATUS = '1'
<if test="formDto.timestamp != null">
<![CDATA[ AND DATE_FORMAT(actInfo.CREATED_TIME,'%Y-%m-%d %H:%i:%s') <= ]]> #{formDto.timestamp}
</if>
<if test='formDto.actType != null and formDto.actType != "" and formDto.actType == "0"'>
<![CDATA[ AND DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') <= ]]> #{formDto.timestamp}
</if>
<if test='formDto.actType != null and formDto.actType != "" and formDto.actType == "1"'>
<![CDATA[ AND DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') > ]]> #{formDto.timestamp}
</if>
ORDER BY
actInfo.CREATED_TIME DESC
LIMIT #{formDto.pageIndex},#{formDto.pageSize}
</select>
<select id="signupListItemsByApp" resultMap="actAppResultMap">
SELECT
actInfo.ID,
actInfo.TITLE,
actInfo.HEAD_PIC,
actInfo.ACT_START_TIME,
actInfo.ACT_END_TIME,
actInfo.ACT_ADDRESS,
actInfo.ACT_QUOTA_CATEGORY,
actInfo.ACT_QUOTA,
actInfo.SIGNUP_NUM,
actInfo.CLOCK_NUM,
case
when <![CDATA[ DATE_FORMAT(actInfo.SIGNUP_END_TIME,'%Y-%m-%d %H:%i:%s') >= ]]> #{formDto.timestamp}
then case when actInfo.SIGNUP_NUM = ACT_QUOTA and actInfo.ACT_QUOTA_CATEGORY = 1
then '1'
else '0'
end
when <![CDATA[ DATE_FORMAT(actInfo.ACT_START_TIME,'%Y-%m-%d %H:%i:%s') > ]]> #{formDto.timestamp}
and
<![CDATA[ DATE_FORMAT(actInfo.SIGNUP_END_TIME,'%Y-%m-%d %H:%i:%s') < ]]> #{formDto.timestamp}
then '2'
when <![CDATA[ DATE_FORMAT(actInfo.ACT_START_TIME,'%Y-%m-%d %H:%i:%s') <= ]]> #{formDto.timestamp}
and
<![CDATA[ DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') >= ]]> #{formDto.timestamp}
then '3'
when <![CDATA[ DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') < ]]> #{formDto.timestamp}
then '4'
end as actCurrentState,
IF(clock.clockCount is not null ,'1','0') as signupFlag,
relation.ID as actUserId
FROM
epdc_act_info actInfo
left join epdc_act_user_relation relation on relation.DEL_FLAG = '0'
and relation.USER_ID = #{formDto.userId}
and actInfo.ID = relation.ACT_ID
LEFT JOIN ( SELECT count( * ) AS clockCount, ACT_USER_ID FROM epdc_act_user_clock_log WHERE DEL_FLAG = '0' GROUP BY ACT_USER_ID ) clock ON clock.ACT_USER_ID = relation.ID
WHERE
actInfo.DEL_FLAG = '0'
and actInfo.ACT_STATUS = '1'
and relation.USER_ID = #{formDto.userId}
<if test="formDto.timestamp != null">
<![CDATA[ AND DATE_FORMAT(actInfo.CREATED_TIME,'%Y-%m-%d %H:%i:%s') <= ]]> #{formDto.timestamp}
</if>
<if test='formDto.actType != null and formDto.actType != "" and formDto.actType == "5"'>
<![CDATA[ AND DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') > ]]> #{formDto.timestamp}
</if>
<if test='formDto.actType != null and formDto.actType != "" and formDto.actType != "5"'>
AND relation.STATUS = #{formDto.actType}
</if>
ORDER BY
actInfo.CREATED_TIME DESC
LIMIT #{formDto.pageIndex},#{formDto.pageSize}
</select>
<resultMap type="com.elink.esua.epdc.activity.result.ActInfoDetailAppResultDTO" id="actDetailAppResultMap">
<result property="id" column="ID"/>
<result property="title" column="TITLE"/>
<result property="headPic" column="HEAD_PIC"/>
<result property="signupStartTime" column="SIGNUP_START_TIME"/>
<result property="signupEndTime" column="SIGNUP_END_TIME"/>
<result property="signinStartTime" column="SIGNIN_START_TIME"/>
<result property="signinEndTime" column="SIGNIN_END_TIME"/>
<result property="actStartTime" column="ACT_START_TIME"/>
<result property="actEndTime" column="ACT_END_TIME"/>
<result property="actAddress" column="ACT_ADDRESS"/>
<result property="actLongitude" column="ACT_LONGITUDE"/>
<result property="actLatitude" column="ACT_LATITUDE"/>
<result property="signinAddress" column="SIGNIN_ADDRESS"/>
<result property="signinLongitude" column="SIGNIN_LONGITUDE"/>
<result property="signinLatitude" column="SIGNIN_LATITUDE"/>
<result property="clockRadius" column="CLOCK_RADIUS"/>
<result property="actQuota" column="ACT_QUOTA"/>
<result property="actQuotaCategory" column="ACT_QUOTA_CATEGORY"/>
<result property="signupNum" column="SIGNUP_NUM"/>
<result property="clockNum" column="CLOCK_NUM"/>
<result property="actShareNum" column="ACT_SHARE_NUM"/>
<result property="actBrowseNum" column="ACT_BROWSE_NUM"/>
<result property="contacts" column="CONTACTS"/>
<result property="tel" column="TEL"/>
<result property="requirement" column="REQUIREMENT"/>
<result property="actContent" column="ACT_CONTENT"/>
<result property="actStatus" column="ACT_STATUS"/>
<result property="publishTime" column="PUBLISH_TIME"/>
<result property="sponsor" column="SPONSOR"/>
<result property="deptId" column="DEPT_ID"/>
<result property="punishmentPoints" column="PUNISHMENT_POINTS"/>
<result property="reward" column="REWARD"/>
<result property="actUserDefaultState" column="ACT_USER_DEFAULT_STATE"/>
</resultMap>
<select id="getDetailByApp" resultMap="actDetailAppResultMap">
SELECT
actInfo.ID,
actInfo.TITLE,
actInfo.HEAD_PIC,
actInfo.SIGNUP_START_TIME,
actInfo.SIGNUP_END_TIME,
actInfo.ACT_START_TIME,
actInfo.ACT_END_TIME,
actInfo.ACT_ADDRESS,
actInfo.ACT_LONGITUDE,
actInfo.ACT_LATITUDE,
actInfo.SIGNIN_START_TIME,
actInfo.SIGNIN_END_TIME,
actInfo.SIGNIN_ADDRESS,
actInfo.SIGNIN_LONGITUDE,
actInfo.SIGNIN_LATITUDE,
actInfo.CLOCK_RADIUS,
actInfo.ACT_QUOTA_CATEGORY,
actInfo.ACT_QUOTA,
actInfo.SIGNUP_NUM,
actInfo.CLOCK_NUM,
actInfo.ACT_SHARE_NUM,
actInfo.ACT_BROWSE_NUM,
actInfo.CONTACTS,
actInfo.TEL,
actInfo.REQUIREMENT,
actInfo.ACT_CONTENT,
actInfo.ACT_STATUS,
actInfo.CANCEL_REASON,
actInfo.PUBLISH_TIME,
actInfo.SPONSOR,
actInfo.DEPT_ID,
actInfo.PUNISHMENT_POINTS,
actInfo.REWARD,
actInfo.ACT_USER_DEFAULT_STATE,
case
when actInfo.ACT_STATUS = '0'
then '7'
when <![CDATA[ DATE_FORMAT(actInfo.SIGNUP_END_TIME,'%Y-%m-%d %H:%i:%s') >= ]]> #{formDto.timestamp}
then case when actInfo.SIGNUP_NUM = ACT_QUOTA and actInfo.ACT_QUOTA_CATEGORY = 1
then '2'
else IF(relation.STATUS not in('3','4') and relation.STATUS is not null ,'1','0')
end
when <![CDATA[ DATE_FORMAT(actInfo.ACT_START_TIME,'%Y-%m-%d %H:%i:%s') > ]]> #{formDto.timestamp}
and
<![CDATA[ DATE_FORMAT(actInfo.SIGNUP_END_TIME,'%Y-%m-%d %H:%i:%s') < ]]> #{formDto.timestamp}
then '3'
when <![CDATA[ DATE_FORMAT(actInfo.ACT_START_TIME,'%Y-%m-%d %H:%i:%s') <= ]]> #{formDto.timestamp}
and
<![CDATA[ DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') >= ]]> #{formDto.timestamp}
then IF(relation.STATUS not in('3','4') and relation.STATUS is not null ,IF(clock.clockCount is not null ,'5','4'),'0')
when <![CDATA[ DATE_FORMAT(actInfo.ACT_END_TIME,'%Y-%m-%d %H:%i:%s') < ]]> #{formDto.timestamp}
then '6'
end as currentUserStatus,
IF(clock.clockCount is not null ,'1','0') as signupFlag,
relation.ID as actUserId
FROM
epdc_act_info actInfo
left join epdc_act_user_relation relation on relation.DEL_FLAG = '0'
and relation.USER_ID = #{formDto.userId}
and actInfo.ID = relation.ACT_ID
LEFT JOIN ( SELECT count( * ) AS clockCount, ACT_USER_ID FROM epdc_act_user_clock_log WHERE DEL_FLAG = '0' GROUP BY ACT_USER_ID ) clock ON clock.ACT_USER_ID = relation.ID
LEFT JOIN epdc_volunteer_rank volunteer ON volunteer.USER_ID = relation.USER_ID AND volunteer.DEL_FLAG = '0'
WHERE
actInfo.DEL_FLAG = '0'
AND actInfo.ID = #{formDto.id}
ORDER BY
actInfo.CREATED_TIME DESC
</select>
<select id="getRejectDetailByApp" resultMap="actDetailAppResultMap">
SELECT
actInfo.ID,
actInfo.TITLE,
actInfo.HEAD_PIC,
actInfo.SIGNUP_START_TIME,
actInfo.SIGNUP_END_TIME,
actInfo.ACT_START_TIME,
actInfo.ACT_END_TIME,
actInfo.ACT_ADDRESS,
actInfo.ACT_LONGITUDE,
actInfo.ACT_LATITUDE,
actInfo.SIGNIN_START_TIME,
actInfo.SIGNIN_END_TIME,
actInfo.SIGNIN_ADDRESS,
actInfo.SIGNIN_LONGITUDE,
actInfo.SIGNIN_LATITUDE,
actInfo.CLOCK_RADIUS,
actInfo.ACT_QUOTA_CATEGORY,
actInfo.ACT_QUOTA,
actInfo.SIGNUP_NUM,
actInfo.CLOCK_NUM,
actInfo.ACT_SHARE_NUM,
actInfo.ACT_BROWSE_NUM,
actInfo.CONTACTS,
actInfo.TEL,
actInfo.REQUIREMENT,
actInfo.ACT_CONTENT,
actInfo.ACT_STATUS,
actInfo.CANCEL_REASON,
actInfo.PUBLISH_TIME,
actInfo.SPONSOR,
actInfo.DEPT_ID,
actInfo.PUNISHMENT_POINTS,
actInfo.REWARD,
actInfo.ACT_USER_DEFAULT_STATE,
relation.FAILURE_REASON as failureReason
FROM
epdc_act_info actInfo
left join epdc_act_user_relation relation on relation.DEL_FLAG = '0'
and relation.USER_ID = #{formDto.userId}
and actInfo.ID = relation.ACT_ID
WHERE
actInfo.DEL_FLAG = '0'
and relation.STATUS = '4'
and relation.USER_ID = #{formDto.userId}
AND actInfo.ID = #{formDto.id}
ORDER BY
actInfo.CREATED_TIME DESC
</select>
<select id="getCancelDetailByApp" resultMap="actDetailAppResultMap">
SELECT
actInfo.ID,
actInfo.TITLE,
actInfo.HEAD_PIC,
actInfo.SIGNUP_START_TIME,
actInfo.SIGNUP_END_TIME,
actInfo.ACT_START_TIME,
actInfo.ACT_END_TIME,
actInfo.ACT_ADDRESS,
actInfo.ACT_LONGITUDE,
actInfo.ACT_LATITUDE,
actInfo.SIGNIN_START_TIME,
actInfo.SIGNIN_END_TIME,
actInfo.SIGNIN_ADDRESS,
actInfo.SIGNIN_LONGITUDE,
actInfo.SIGNIN_LATITUDE,
actInfo.CLOCK_RADIUS,
actInfo.ACT_QUOTA_CATEGORY,
actInfo.ACT_QUOTA,
actInfo.SIGNUP_NUM,
actInfo.CLOCK_NUM,
actInfo.ACT_SHARE_NUM,
actInfo.ACT_BROWSE_NUM,
actInfo.CONTACTS,
actInfo.TEL,
actInfo.REQUIREMENT,
actInfo.ACT_CONTENT,
actInfo.ACT_STATUS,
actInfo.CANCEL_REASON,
actInfo.PUBLISH_TIME,
actInfo.SPONSOR,
actInfo.DEPT_ID,
actInfo.PUNISHMENT_POINTS,
actInfo.REWARD,
actInfo.ACT_USER_DEFAULT_STATE
FROM
epdc_act_info actInfo
WHERE
actInfo.DEL_FLAG = '0'
AND actInfo.ACT_STATUS = '0'
AND actInfo.ID = #{formDto.id}
ORDER BY
actInfo.CREATED_TIME DESC
</select>
</mapper>
Loading…
Cancel
Save