//package com.avie.ltd.controller;
//
//
//import java.text.SimpleDateFormat;
//import java.util.ArrayList;
//import java.util.Date;
//import java.util.HashMap;
//import java.util.HashSet;
//import java.util.List;
//import java.util.Map;
//import java.util.Set;
//
//import javax.servlet.http.HttpServletRequest;
//
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.util.LinkedMultiValueMap;
//import org.springframework.util.MultiValueMap;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RequestMethod;
//import org.springframework.web.bind.annotation.RestController;
//import org.springframework.web.client.RestTemplate;
//
//import com.avie.ltd.bean.JsonResult;
//import com.avie.ltd.bean.SessionSysUser;
//import com.avie.ltd.entity.TbCourseUserMap;
//import com.avie.ltd.entity.TbCourseUserRecord;
//import com.avie.ltd.entity.TbSetmealCourseMap;
//import com.avie.ltd.service.RedisService;
//import com.avie.ltd.service.TbCourseUserMapService;
//import com.avie.ltd.service.TbCourseUserRecordService;
//import com.avie.ltd.service.TbSetmealCourseMapService;
//import com.avie.ltd.utils.CheckNet;
//import com.avie.ltd.utils.StringUtil;
//
//import io.swagger.annotations.Api;
//import io.swagger.annotations.ApiImplicitParam;
//import io.swagger.annotations.ApiImplicitParams;
//import io.swagger.annotations.ApiOperation;
//import net.sf.json.JSONArray;
//import net.sf.json.JSONObject;
///**企业套餐
// *
// * @author avie-jcm
// *
// */
//@RestController
//@RequestMapping(value = "/tbCourseUser")
//@Api(value = "企业用户相关接口", tags = "tbCourseUser")
//public class TbCourseUserEnterpriseController extends BaseController {
//
// private final static Logger logger = LoggerFactory.getLogger(TbCourseUserEnterpriseController.class);
//
// @Value("${spring.gateway.server}")
// private String serverPath;
//
// @Autowired
// private RedisService redisService;
//
// @Autowired
// private TbCourseUserMapService courseUserMapService;
//
// @Autowired
// private TbCourseUserMapService tbCourseUserMapService;
//
// @Autowired
// private TbCourseUserRecordService tbCourseUserRecordService;
//
// @Autowired
// private TbSetmealCourseMapService tbSetmealCourseMapService;
//
//
//
// @ApiOperation(value = "企业用户课程列表", notes = "企业用户课程列表", response = JsonResult.class)
// @ApiImplicitParam(name = "id", value = "用户id", required = true, dataType = "String")
// @RequestMapping(value = "/findForPages", method = {RequestMethod.GET, RequestMethod.POST})
// public JsonResult findForPages(HttpServletRequest request, String id) {
// logger.info("是否更新");
// String token = request.getHeader("Token_");
// SessionSysUser user = this.getLoginUser(token);
//
//
// if(user ==null){
// return new JsonResult("Token解析用户失败");
//// user = new SessionSysUser();
//// user.setId("ac6b59739f164d95867689c87067bbd8");
// }
//
//
// //获取redis存的是否判分依据
//// String isJudgment = redisService.getStr("checkNet");
// String isJudgment = "";
// //如果没有,则执行一次判断是否有网络,0表示无网,1表示有网
// if(isJudgment==null||"".equals(isJudgment)){
//
// logger.info("当前redis里面没有网络数据,执行一次检查网络");
//// String ipAddress = "www.baidu.com";
// String ipAddress = "http://www.4654654.com/";
// if(!CheckNet.ping(ipAddress, 5, 5000)){
// redisService.setStr("checkNet", "0");
// isJudgment = redisService.getStr("checkNet");
// logger.info("当前状态为无网:0");
// } else{
// redisService.setStr("checkNet", "1");
// isJudgment = redisService.getStr("checkNet");
// logger.info("当前状态为有网:1");
// }
// }
// boolean noNet = false;
// if(isJudgment.equals("0")){
// noNet = true;
// }
//
//
// RestTemplate restTemplate = new RestTemplate();
//
// List<TbCourseUserMap> userlist = tbCourseUserMapService.getCourseByUser(id);
//
// if(userlist != null && userlist.size() > 0){
//
// for(int i = 0; i < userlist.size(); i++){
//
//
//
// //包时套餐
// if(userlist.get(i).getSetmealType().equals("1")){
// if(userlist.get(i).getAvailableTime()!=null){
// userlist.get(i).setAvailableTime(userlist.get(i).getAvailableTime()*60*1000);
// }
// if(userlist.get(i).getTotalTime()!=null){
// userlist.get(i).setTotalTime(userlist.get(i).getTotalTime()*60*1000);
// }
// if(userlist.get(i).getPlanTime()!=null){
// userlist.get(i).setPlanTime(userlist.get(i).getPlanTime()*60*1000);
// }
// //更新redis的值到数据库
// String enterpriseUserId=id;
// String setmealCourseId =userlist.get(i).getSetmealCourseId();
// String key = id+"_"+userlist.get(i).getCourseId()+userlist.get(i).getSetmealCourseId();
// Map<String,Object> map = new HashMap<String,Object>();
// map.put("enterpriseUserId", enterpriseUserId);
// map.put("setmealCourseId", setmealCourseId);
// TbCourseUserMap courseUserMap = courseUserMapService.getTime(map);
// String redisTime = redisService.getStr(key);
// logger.info("redis的key值================================"+key);
// logger.info("redis获取的时间================================"+redisTime);
// if(redisTime==null||redisTime.equals("")){
//// map.put("availableTime", 0l);
//// map.put("planTime", courseUserMap.getTotalTime());
//// map.put("id", courseUserMap.getId());
// }else{
// Long availableTime = (Long.valueOf(redisTime)/60/1000);
// map.put("availableTime", availableTime);
// map.put("planTime", courseUserMap.getTotalTime()-availableTime );
// map.put("id", courseUserMap.getId());
// redisService.del(key);
// }
// courseUserMapService.updateTime(map);
// }else if (userlist.get(i).getSetmealType().equals("3")||userlist.get(i).getSetmealType().equals("2")){
// //包年套餐
// String enterpriseUserId=id;
// String setmealCourseId =userlist.get(i).getSetmealCourseId();
// String key = id+"_"+userlist.get(i).getCourseId()+userlist.get(i).getSetmealCourseId()+ "studytime";
// String redisTime = redisService.getStr(key);
// if(redisTime!=null&&!"".equals(redisTime)){
// Map<String,Object> map = new HashMap<String,Object>();
// map.put("enterpriseUserId", enterpriseUserId);
// map.put("setmealCourseId", setmealCourseId);
// TbCourseUserMap courseUserMap = courseUserMapService.getTime(map);
// map.put("planTime", (courseUserMap.getPlanTime()==null?0:courseUserMap.getPlanTime())+(Long.valueOf(redisTime)/60/1000));
// map.put("availableTime", null);
// map.put("id", courseUserMap.getId());
// courseUserMapService.updateTime(map);
// redisService.del(key);
// }
// }
//
//
//
// TbCourseUserMap tbCourse = userlist.get(i);
// //判断课程是否到期和是否能够开始学习
// String startTime = tbCourse.getStartTime();
// String endTime = tbCourse.getEndTime();
// SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
// String nowTime =df.format(new Date());
// if(nowTime.compareTo(startTime)>0&&nowTime.compareTo(endTime)<0){
// tbCourse.setCanShow("0");
// }else{
// tbCourse.setCanShow("1");
// }
//
// //没网将判分关闭
// if(noNet){
// tbCourse.setIsJudgment("0");
// }
//
//
// MultiValueMap<String, Object> requestEntity = new LinkedMultiValueMap<String, Object>();
// requestEn
评论5