|  | @ -2,6 +2,7 @@ package com.yihu.jw.service;/**
 | 
	
		
			
				|  |  |  * Created by nature of king on 2018/4/27.
 | 
	
		
			
				|  |  |  */
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSON;
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSONArray;
 | 
	
		
			
				|  |  | import com.alibaba.fastjson.JSONObject;
 | 
	
		
			
				|  |  | import com.netflix.discovery.util.StringUtil;
 | 
	
	
		
			
				|  | @ -19,10 +20,12 @@ import org.springframework.jdbc.core.BeanPropertyRowMapper;
 | 
	
		
			
				|  |  | import org.springframework.jdbc.core.JdbcTemplate;
 | 
	
		
			
				|  |  | import org.springframework.stereotype.Service;
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | import javax.transaction.RollbackException;
 | 
	
		
			
				|  |  | import javax.transaction.Transactional;
 | 
	
		
			
				|  |  | import java.text.ParseException;
 | 
	
		
			
				|  |  | import java.text.SimpleDateFormat;
 | 
	
		
			
				|  |  | import java.util.Date;
 | 
	
		
			
				|  |  | import java.util.HashMap;
 | 
	
		
			
				|  |  | import java.util.List;
 | 
	
		
			
				|  |  | import java.util.Map;
 | 
	
		
			
				|  |  | 
 | 
	
	
		
			
				|  | @ -59,6 +62,7 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |      * @param activityDO 活动参数对象
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     @org.springframework.transaction.annotation.Transactional(rollbackFor = Exception.class)
 | 
	
		
			
				|  |  |     public MixEnvelop<Boolean, Boolean> insert(ActivityDO activityDO,String value1,String value2,String value3){
 | 
	
		
			
				|  |  |         if (value2 != null && value2 !=""){
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(value2);
 | 
	
	
		
			
				|  | @ -68,20 +72,17 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         activityDO.setCreateTime(new Date());
 | 
	
		
			
				|  |  |         activityDO.setUpdateTime(new Date());
 | 
	
		
			
				|  |  | //        if (1 == activityDO.getStatus()) {
 | 
	
		
			
				|  |  | //            activityDO.setReleaseTime(new Date());
 | 
	
		
			
				|  |  | //        }
 | 
	
		
			
				|  |  |         activityDO.setDelFlag(1);
 | 
	
		
			
				|  |  |       /*  activityDO.setDel(1);*/
 | 
	
		
			
				|  |  |         activityDO= activityDao.save(activityDO);
 | 
	
		
			
				|  |  |         if (value3 !=null && value3 !=""){
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(value3);
 | 
	
		
			
				|  |  |             String exchangeType = object.getString("exchangeType");
 | 
	
		
			
				|  |  |             if (exchangeType.equals("1")){
 | 
	
		
			
				|  |  |                 JSONArray array = object.getJSONArray("goodDetail");
 | 
	
		
			
				|  |  |                 if (array !=null || array.size()!=0){
 | 
	
		
			
				|  |  |                     for (int i =0;i<array.size();i++){
 | 
	
		
			
				|  |  |                         JSONObject jsonObject = array.getJSONObject(i);
 | 
	
		
			
				|  |  |                 String array = (null!=object.get("goodDetail")?String.valueOf(object.get("goodDetail")):"");
 | 
	
		
			
				|  |  |                 if (StringUtils.isNotBlank(array)){
 | 
	
		
			
				|  |  |                     JSONArray array1= JSON.parseArray(array);
 | 
	
		
			
				|  |  |                     for (int i =0;i<array1.size();i++){
 | 
	
		
			
				|  |  |                         JSONObject jsonObject = array1.getJSONObject(i);
 | 
	
		
			
				|  |  |                         TaskGoodsDO taskGoodsDO = new TaskGoodsDO();
 | 
	
		
			
				|  |  |                         taskGoodsDO.setActivityId(activityDO.getId());
 | 
	
		
			
				|  |  |                         taskGoodsDO.setCoupon(jsonObject.getInteger("couponNum"));
 | 
	
	
		
			
				|  | @ -186,10 +187,64 @@ public class ActivityService extends BaseJpaService<ActivityDO,ActivityDao> {
 | 
	
		
			
				|  |  |      * @param activityDO 活动参数对象
 | 
	
		
			
				|  |  |      * @return
 | 
	
		
			
				|  |  |      */
 | 
	
		
			
				|  |  |     @org.springframework.transaction.annotation.Transactional(rollbackFor = Exception.class)
 | 
	
		
			
				|  |  |     public MixEnvelop<Boolean, Boolean> update(ActivityDO activityDO, String value1, String value2, String value3) throws Exception {
 | 
	
		
			
				|  |  |         if (StringUtils.isBlank(activityDO.getId())) {
 | 
	
		
			
				|  |  |             throw new Exception("活动id不能为空!");
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         if (StringUtils.isNotBlank(value2)){
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(value2);
 | 
	
		
			
				|  |  |             activityDO.setActivityOfflineTime(object.getDate("activityOfflineTime"));
 | 
	
		
			
				|  |  |             activityDO.setRegistrationTime(object.getDate("registrationTime"));
 | 
	
		
			
				|  |  |             activityDO.setDeadLine(object.getDate("deadLine"));
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         activityDO.setUpdateTime(new Date());
 | 
	
		
			
				|  |  |         activityDO.setDelFlag(1);
 | 
	
		
			
				|  |  |         activityDO= activityDao.save(activityDO);
 | 
	
		
			
				|  |  |         //删除活动任务与奖品
 | 
	
		
			
				|  |  |         taskDao.deleteByTransactionId(activityDO.getId());
 | 
	
		
			
				|  |  |         taskGoodsDao.deleteByActivityId(activityDO.getId());
 | 
	
		
			
				|  |  |         if (value3 !=null && value3 !=""){
 | 
	
		
			
				|  |  |             JSONObject object = JSONObject.parseObject(value3);
 | 
	
		
			
				|  |  |             String exchangeType = object.getString("exchangeType");
 | 
	
		
			
				|  |  |             if (exchangeType.equals("1")){
 | 
	
		
			
				|  |  |                 String array = (null!=object.get("goodDetail")?String.valueOf(object.get("goodDetail")):"");
 | 
	
		
			
				|  |  |                 if (StringUtils.isNotBlank(array)){
 | 
	
		
			
				|  |  |                     JSONArray array1= JSON.parseArray(array);
 | 
	
		
			
				|  |  |                     for (int i =0;i<array1.size();i++){
 | 
	
		
			
				|  |  |                         JSONObject jsonObject = array1.getJSONObject(i);
 | 
	
		
			
				|  |  |                         TaskGoodsDO taskGoodsDO = new TaskGoodsDO();
 | 
	
		
			
				|  |  |                         taskGoodsDO.setActivityId(activityDO.getId());
 | 
	
		
			
				|  |  |                         taskGoodsDO.setCoupon(jsonObject.getInteger("couponNum"));
 | 
	
		
			
				|  |  |                         taskGoodsDO.setImg(jsonObject.getString("picUrl"));
 | 
	
		
			
				|  |  |                         taskGoodsDO.setName(jsonObject.getString("name"));
 | 
	
		
			
				|  |  |                         taskGoodsDO.setSaasId("dev");
 | 
	
		
			
				|  |  |                         taskGoodsDO.setStatus(1);
 | 
	
		
			
				|  |  |                         taskGoodsDao.save(taskGoodsDO);
 | 
	
		
			
				|  |  |                     }
 | 
	
		
			
				|  |  |                 }
 | 
	
		
			
				|  |  |             }
 | 
	
		
			
				|  |  |         }
 | 
	
		
			
				|  |  |         TaskDO taskDO = new TaskDO();
 | 
	
		
			
				|  |  |         taskDO.setTitle(activityDO.getTitle());
 | 
	
		
			
				|  |  |         taskDO.setStatus(1);
 | 
	
		
			
				|  |  |         taskDO.setTransactionId(activityDO.getId());
 | 
	
		
			
				|  |  |         taskDO.setType("ACTIVITY_TASK");
 | 
	
		
			
				|  |  |         taskDO.setSaasId("dev");
 | 
	
		
			
				|  |  |         taskDO.setContent(activityDO.getDescription());
 | 
	
		
			
				|  |  |         taskDO.setPeriod(1);
 | 
	
		
			
				|  |  |         taskDO.setTaskCode("ACTIVITY_QUESTION");
 | 
	
		
			
				|  |  |         taskDO.setStartTime(activityDO.getRegistrationTime());
 | 
	
		
			
				|  |  |         taskDO.setEndTime(activityDO.getActivityOfflineTime());
 | 
	
		
			
				|  |  |         taskDO.setCreateTime(new Date());
 | 
	
		
			
				|  |  |         taskDO.setUpdateTime(new Date());
 | 
	
		
			
				|  |  |         taskDao.save(taskDO);
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  | 
 | 
	
		
			
				|  |  |         ActivityRuleDO activityRuleDO = activityRuleDao.selectByActivityId(activityDO.getId());
 | 
	
		
			
				|  |  |         activityRuleDO.setUpdateTime(new Date());
 | 
	
		
			
				|  |  |         activityRuleDO.setSaasId("dev");
 |