Commit 2d171a9d authored by liuyang's avatar liuyang

增加活动签到、签出接口

parent 318617fb
...@@ -48,21 +48,24 @@ public class ActivityController extends BaseController<Object>{ ...@@ -48,21 +48,24 @@ public class ActivityController extends BaseController<Object>{
@Auth(verifyLogin = false,verifyURL = false) @Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/wx/api/activity", method = RequestMethod.POST) @RequestMapping(value = "/wx/api/activity", method = RequestMethod.POST)
public @ResponseBody Map<String,Object> entityformWX(@RequestBody ActivityVo activityVo, HttpServletResponse response, HttpServletRequest request) throws Exception { public @ResponseBody Map<String,Object> entityformWX(@RequestBody ActivityVo activityVo, HttpServletResponse response, HttpServletRequest request) throws Exception {
Map<String,Object> result = Maps.newConcurrentMap(); Map<String,Object> result = Maps.newHashMap();
Activity activity = activityService.findById(activityVo.getId()); Activity activity = activityService.findById(activityVo.getId());
result.put("status","ok"); result.put("status","ok");
result.put("activity",activity); result.put("activity",activity);
result.put("activityRegCount",activity.getActivityReg().size()); result.put("activityRegCount",activity.getActivityReg().size());
Iterator<ActivityReg> it = activity.getActivityReg().iterator(); Iterator<ActivityReg> it = activity.getActivityReg().iterator();
boolean currentUserApplyed = false;//当前用户是否报名 boolean currentUserApplyed = false;//当前用户是否报名
ActivityReg rtReg = null;
while (it.hasNext()){ while (it.hasNext()){
ActivityReg reg = it.next(); ActivityReg reg = it.next();
if (reg.getUser().getId().equals(activityVo.getUserId())){ if (reg.getUser().getId().equals(activityVo.getUserId())){
currentUserApplyed = true; currentUserApplyed = true;
rtReg = reg;
break; break;
} }
} }
result.put("currentUserApplyed",currentUserApplyed); result.put("currentUserApplyed",currentUserApplyed);
result.put("activityReg",rtReg);
return result; return result;
} }
......
...@@ -24,6 +24,7 @@ import com.sun.mail.imap.ResyncData; ...@@ -24,6 +24,7 @@ import com.sun.mail.imap.ResyncData;
import me.chanjar.weixin.common.error.WxErrorException; import me.chanjar.weixin.common.error.WxErrorException;
import org.apache.commons.io.FileUtils; import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.omg.PortableInterceptor.ServerRequestInfo;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -277,6 +278,13 @@ public class MdpController { ...@@ -277,6 +278,13 @@ public class MdpController {
QRCodeUtil.generateQRCode(id,100,100,"png",response); QRCodeUtil.generateQRCode(id,100,100,"png",response);
response.flushBuffer(); response.flushBuffer();
} }
/**
* 活动报名
* @param userId
* @param activityId
* @return
*/
@Auth(verifyURL = false,verifyLogin = false) @Auth(verifyURL = false,verifyLogin = false)
@RequestMapping(value = "/activity/apply",method = RequestMethod.GET) @RequestMapping(value = "/activity/apply",method = RequestMethod.GET)
public Map<String,Object> activityApply(@RequestParam String userId,@RequestParam String activityId){ public Map<String,Object> activityApply(@RequestParam String userId,@RequestParam String activityId){
...@@ -308,6 +316,13 @@ public class MdpController { ...@@ -308,6 +316,13 @@ public class MdpController {
result.put("status","ok"); result.put("status","ok");
return result; return result;
} }
/**
* 采血
* @param formData
* @param sKey
* @return
*/
@Auth(verifyURL = false,verifyLogin = false) @Auth(verifyURL = false,verifyLogin = false)
@RequestMapping(value = "/activity/collectionBlood",method = RequestMethod.POST) @RequestMapping(value = "/activity/collectionBlood",method = RequestMethod.POST)
public Map<String,Object> collectionBlood(@RequestBody Map<String,String> formData,@RequestHeader String sKey){ public Map<String,Object> collectionBlood(@RequestBody Map<String,String> formData,@RequestHeader String sKey){
...@@ -346,4 +361,48 @@ public class MdpController { ...@@ -346,4 +361,48 @@ public class MdpController {
result.put("status","ok"); result.put("status","ok");
return result; return result;
} }
@Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/activity/signin",method = RequestMethod.POST)
public Map<String,Object> activitySignin(@RequestBody Map<String,String> formData,@RequestHeader String sKey){
Map<String,Object> result = Maps.newConcurrentMap();
if (Strings.isNullOrEmpty(sKey)){
result.put("status","error");
result.put("errorMsg","请求参数错误");
return result;
}
String openid = tokenUtil.getUsernameFromToken(sKey);
if (Strings.isNullOrEmpty(openid)){
result.put("status","error");
result.put("errorMsg","请求参数错误");
return result;
}
String userId = formData.get("userId");
String activityId = formData.get("activityId");
ActivityReg reg = activityService.signin(userId,activityId);
result.put("status","ok");
result.put("activityReg",reg);
return result;
}
@Auth(verifyLogin = false,verifyURL = false)
@RequestMapping(value = "/activity/signout",method = RequestMethod.POST)
public Map<String,Object> activitySignout(@RequestBody Map<String,String> formData,@RequestHeader String sKey){
Map<String,Object> result = Maps.newConcurrentMap();
if (Strings.isNullOrEmpty(sKey)){
result.put("status","error");
result.put("errorMsg","请求参数错误");
return result;
}
String openid = tokenUtil.getUsernameFromToken(sKey);
if (Strings.isNullOrEmpty(openid)){
result.put("status","error");
result.put("errorMsg","请求参数错误");
return result;
}
String userId = formData.get("userId");
String activityId = formData.get("activityId");
ActivityReg reg = activityService.signout(userId,activityId);
result.put("status","ok");
result.put("activityReg",reg);
return result;
}
} }
...@@ -13,6 +13,10 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -13,6 +13,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.awt.image.RGBImageFilter;
import java.text.BreakIterator;
import java.util.Date;
import java.util.Iterator;
import java.util.List; import java.util.List;
@Service @Service
...@@ -85,4 +89,36 @@ public class ActivityService { ...@@ -85,4 +89,36 @@ public class ActivityService {
public void saveActivityReg(ActivityReg reg) { public void saveActivityReg(ActivityReg reg) {
activityRegDao.save(reg); activityRegDao.save(reg);
} }
@Transactional
public ActivityReg signin(String userId, String activityId) {
Activity activity = findById(activityId);
Iterator<ActivityReg> it = activity.getActivityReg().iterator();
ActivityReg rt = null;
while (it.hasNext()){
ActivityReg reg = it.next();
if (reg.getUser().getId().equals(userId)){
reg.setSignin(true);
reg.setSigninTime(new Date());
saveActivityReg(reg);
rt = reg;
}
}
return rt;
}
@Transactional
public ActivityReg signout(String userId, String activityId) {
Activity activity = findById(activityId);
Iterator<ActivityReg> it = activity.getActivityReg().iterator();
ActivityReg rt = null;
while (it.hasNext()){
ActivityReg reg = it.next();
if (reg.getUser().getId().equals(userId)){
reg.setSignoutTime(new Date());
saveActivityReg(reg);
rt = reg;
}
}
return rt;
}
} }
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