Commit fa8e79ef by erqian

Merge branch 'feature/1061371-Interactive-gatherings' into developer

parents 35fadfeb f040a9f0
package com.gic.haoban.manage.web.controller.content;
import com.gic.api.base.commons.BusinessException;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.PageResult;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.web.qo.PageQo;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.marketing.pro.api.dto.activity.gathering.GatheringActivityMemberIdActivityRecordDTO;
import com.gic.marketing.pro.api.dto.activity.gathering.GatheringActivityWxActivityDetailDTO;
import com.gic.marketing.pro.api.qdto.activity.gathering.GatheringActivityWxActivityDetailQDTO;
import com.gic.marketing.pro.api.service.activity.GatheringActivityApiService;
import com.gic.marketing.pro.api.service.activity.GatheringActivityWxApiService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
* 互动集会活动记录
*/
@Slf4j
@RestController
@RequestMapping("/gathering-activity")
public class GatheringActivityController {
@Autowired
private GatheringActivityApiService activityApiService;
@Autowired
private GatheringActivityWxApiService activityWxApiService;
/**
* 根据会员查询活动信息
* @param memberId
* @param pageQo
* @return
*/
@RequestMapping("/activity-by-member")
public RestResponse<Page<GatheringActivityMemberIdActivityRecordDTO>> getActivityRecordByMemberId(@RequestParam String memberId, @RequestParam PageQo pageQo) {
ServiceResponse<PageResult<GatheringActivityMemberIdActivityRecordDTO>> serviceResponse = activityApiService.getActivityRecordByMemberId(memberId, pageQo);
if (!serviceResponse.isSuccess()) {
return RestResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
}
return RestResponse.successResult(pageTransform(serviceResponse.getResult(), Function.identity()));
}
/**
* 活动详情
* @param activityId
* @param memberId
* @param enterpriseId
* @return
*/
@RequestMapping("/activity-detail")
public RestResponse<GatheringActivityWxActivityDetailDTO> getActivityDetail(@RequestParam("activityId") String activityId,
@RequestParam("memberId") String memberId,
@RequestParam(value = "enterpriseId", required = false) String enterpriseId) {
GatheringActivityWxActivityDetailQDTO detailQDTO = new GatheringActivityWxActivityDetailQDTO();
detailQDTO.setActivityId(activityId);
detailQDTO.setEnterpriseId(enterpriseId);
detailQDTO.setMemberId(memberId);
try {
ServiceResponse<GatheringActivityWxActivityDetailDTO> activityDetail = activityWxApiService.getActivityDetail(detailQDTO);
if (!activityDetail.isSuccess()) {
return RestResponse.failure(activityDetail.getCode(), activityDetail.getMessage());
}
return RestResponse.successResult(activityDetail.getResult());
} catch (BusinessException e) {
log.error("");
return RestResponse.failure(e.getCode(), e.getMessage());
}
}
public static <T, R> Page<R> pageTransform(PageResult<T> pageResult, Function<T, R> function) {
Page<R> result = new Page<>();
result.setPageSize(pageResult.getPageSize());
result.setCurrentPage(pageResult.getPageNum());
result.setTotalCount((int) pageResult.getTotal());
result.setTotalPage(pageResult.getPages());
result.setResult(pageResult.getList().stream().map(function).collect(Collectors.toList()));
return result;
}
}
......@@ -175,4 +175,9 @@
<dubbo:reference id="storeRankApiService" interface="com.gic.enterprise.api.service.rank.StoreRankApiService" timeout="100000" retries="0" check="false" />
<dubbo:reference id="gatheringActivityApiService" interface="com.gic.marketing.pro.api.service.activity.GatheringActivityApiService"
timeout="10000" retries="0" check="false"/>
<dubbo:reference id="gatheringActivityWxApiService" interface="com.gic.marketing.pro.api.service.activity.GatheringActivityWxApiService" timeout="10000" retries="0" check="false"/>
</beans>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment