提交 2baf98c5 编写于 作者: IIIllI's avatar IIIllI

Merge remote-tracking branch 'origin/backend' into backend

package com.nav.controller;
import com.alibaba.fastjson.JSONObject;
import com.mchange.v1.util.Sublist;
import com.nav.pojo.Activity;
import com.nav.pojo.Participant;
import com.nav.pojo.User;
import com.nav.service.ActivityService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
......@@ -10,7 +13,11 @@ import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpSession;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping("/activity")
......@@ -31,11 +38,27 @@ public class ActivityController {
//接收前端传递的json数据
@RequestMapping("/addActivity")
public Object addActivity(@RequestBody JSONObject param, HttpSession session){
JSONObject activity_json = param.getJSONObject("activity");
Activity activity=(Activity) JSONObject.toJavaObject(activity_json,Activity.class);
activityService.addActivity(activity);
@PostMapping("/addActivity")
public Object addActivity(@RequestBody Map<String,Object> activity) throws ParseException {
Activity activity1=new Activity();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
activity1.setFirst((String) activity.get("first"));
activity1.setSecond((String) activity.get("second"));
activity1.setThird((String) activity.get("third"));
activity1.setFirstCount((int) activity.get("firstCount"));
activity1.setSecondCount((int) activity.get("secondCount"));
activity1.setThirdCount((int) activity.get("thirdCount"));
activity1.setLimit((int) activity.get("limit"));
activity1.setStartTime( format.parse(((String) activity.get("startTime"))));
activity1.setEndTime(format.parse(((String) activity.get("endTime"))));
activity1.setState((int) activity.get("state"));
activity1.setUserId( ((Integer)activity.get("userId")).longValue());
activity1.setName((String) activity.get("name"));
activityService.addActivity(activity1);
// JSONObject activity_json = param.getJSONObject("activity");
// Activity activity=(Activity) JSONObject.toJavaObject(activity_json,Activity.class);
// activityService.addActivity(activity);
return null;
}
......@@ -53,6 +76,23 @@ public class ActivityController {
return null;
}
//开奖
@RequestMapping("/luckdraw")
public List<Participant> luckdraw(List<Participant> participants,int id){
Collections.shuffle(participants);
List<Participant> luckyUsers = participants.subList(0,activityService.getActivityByUserId(id).getLimit());
int i=0;
while(i<activityService.getActivityByUserId(id).getLimit()){
if(i<activityService.getActivityByUserId(id).getFirstCount())
luckyUsers.get(i).setState(1);
if(i>=activityService.getActivityByUserId(id).getFirstCount()&&i<activityService.getActivityByUserId(id).getSecondCount())
luckyUsers.get(i).setState(2);
if(i>=activityService.getActivityByUserId(id).getSecondCount()&&i<activityService.getActivityByUserId(id).getThirdCount())
luckyUsers.get(i).setState(3);
}
return luckyUsers;
}
......
......@@ -17,14 +17,14 @@ public interface ActivityDao {
public Activity getActivityById(long activityId);
//通过发布者id查找抽奖活动
public List<Activity> getActivityByUserId(long userId);
public Activity getActivityByUserId(long userId);
//添加抽奖活动
public int addActivity(Activity activity);
public void addActivity(Activity activity);
//修改抽奖活动
public int updateActivity(Activity activity);
public void updateActivity(Activity activity);
//删除抽奖活动(通过用户id)
public int deleteActivity(int userId);
public void deleteActivity(int userId);
}
......@@ -12,14 +12,14 @@ public interface ActivityService {
public Activity getActivityById(long activityId);
//通过发布者id查找抽奖活动
public List<Activity> getActivityByUserId(long userId);
public Activity getActivityByUserId(long userId);
//添加抽奖活动
public int addActivity(Activity activity);
public void addActivity(Activity activity);
//修改抽奖活动
public int updateActivity(Activity activity);
public void updateActivity(Activity activity);
//删除抽奖活动(通过用户id)
public int deleteActivity(int userId);
public void deleteActivity(int userId);
}
......@@ -23,22 +23,22 @@ public class ActivityServiceImpl implements ActivityService{
}
@Override
public List<Activity> getActivityByUserId(long userId) {
public Activity getActivityByUserId(long userId) {
return activityDao.getActivityByUserId(userId);
}
@Override
public int addActivity(Activity activity) {
return activityDao.addActivity(activity);
public void addActivity(Activity activity) {
activityDao.addActivity(activity);
}
@Override
public int updateActivity(Activity activity) {
return activityDao.updateActivity(activity);
public void updateActivity(Activity activity) {
activityDao.updateActivity(activity);
}
@Override
public int deleteActivity(int userId) {
return activityDao.deleteActivity(userId);
public void deleteActivity(int userId) {
activityDao.deleteActivity(userId);
}
}
......@@ -14,24 +14,24 @@
<select id="getActivityByUserId" resultType="com.nav.pojo.Activity">
select * from activity
where userId = #{userId}
where user_id = #{userId}
</select>
<select id="addActivity" parameterType="com.nav.pojo.Activity">
insert into activity (first,second,third,firstCount,secondCount,thirdCount,limit,startTime,endTime,state,userId,name)
value (#{first},#{second},#{third},#{firstCount},#{secondCount},#{thirdCount},#{limit},#{startTime},#{endTime},#{state},#{userId},#{name})
<select id="addActivity" parameterType="com.nav.pojo.Activity" >
insert into activity (`first`,`second`,third,first_count,second_count,third_count,`limit`,start_time,end_time,state,user_id,`name`)
values (#{first},#{second},#{third},#{firstCount},#{secondCount},#{thirdCount},#{limit},#{startTime},#{endTime},#{state},#{userId},#{name});
</select>
<update id="updateActivity" parameterType="com.nav.pojo.Activity">
update activity
set first=#{first},second=#{second},third=#{third},firstCount=#{firstCount},
secondCount=#{secondCount},thirdCount=#{thirdCount},limit=#{limit},startTime=#{startTime},
endTime=#{endTime},state=#{state},name=#{name}
where userId = #{userId}
set `first`=#{first},`second`=#{second},third=#{third},first_count=#{firstCount},
second_count=#{secondCount},third_count=#{thirdCount},`limit`=#{limit},start_time=#{startTime},
end_time=#{endTime},`state`=#{state},`name`=#{name}
where user_id = #{userId}
</update>
<delete id="deleteActivity" parameterType="int">
delete from activity where userId=#{userId}
delete from activity where user_id=#{userId}
</delete>
</mapper>
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册