| | |
| | | |
| | | import com.google.gson.Gson; |
| | | import com.google.gson.reflect.TypeToken; |
| | | import com.yeshi.buwan.domain.*; |
| | | import com.yeshi.buwan.domain.Collection; |
| | | import com.yeshi.buwan.domain.*; |
| | | import com.yeshi.buwan.domain.solr.SolrAlbumVideo; |
| | | import com.yeshi.buwan.domain.solr.SolrShortVideo; |
| | | import com.yeshi.buwan.domain.system.DetailSystem; |
| | |
| | | import com.yeshi.buwan.dto.search.SolrShortVideoSearchFilter; |
| | | import com.yeshi.buwan.dto.search.SolrVideoSearchFilter; |
| | | import com.yeshi.buwan.dto.user.LoginInfoDto; |
| | | import com.yeshi.buwan.exception.SMSException; |
| | | import com.yeshi.buwan.exception.user.LoginUserException; |
| | | import com.yeshi.buwan.exception.user.RegisterUserException; |
| | | import com.yeshi.buwan.videos.pptv.PPTVUtil; |
| | | import com.yeshi.buwan.service.imp.*; |
| | | import com.yeshi.buwan.service.inter.SMSService; |
| | | import com.yeshi.buwan.service.inter.juhe.InternetSearchVideoService; |
| | | import com.yeshi.buwan.service.inter.system.SystemConfigService; |
| | | import com.yeshi.buwan.service.manager.search.SolrAlbumVideoDataManager; |
| | |
| | | import com.yeshi.buwan.util.*; |
| | | import com.yeshi.buwan.util.JuHe.VideoResourceUtil; |
| | | import com.yeshi.buwan.util.annotation.RequireUid; |
| | | import com.yeshi.buwan.util.email.MailSenderUtil; |
| | | import com.yeshi.buwan.util.factory.VideoInfoFactory; |
| | | import com.yeshi.buwan.util.factory.vo.UserInfoVOFactory; |
| | | import com.yeshi.buwan.util.log.LoggerUtil; |
| | |
| | | import com.yeshi.buwan.util.video.VideoCategoryConstant; |
| | | import com.yeshi.buwan.util.video.VideoConstant; |
| | | import com.yeshi.buwan.util.video.VideoUtil; |
| | | import com.yeshi.buwan.videos.pptv.PPTVUtil; |
| | | import com.yeshi.buwan.vo.AcceptData; |
| | | import com.yeshi.buwan.vo.video.VideoListResultVO; |
| | | import net.sf.json.JSONArray; |
| | |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.stereotype.Controller; |
| | | import org.yeshi.utils.exception.MailSendException; |
| | | import org.yeshi.utils.mail.EmailApiUtil; |
| | | import org.yeshi.utils.mail.EmailInfo; |
| | | import redis.clients.jedis.Jedis; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | public class UserParser { |
| | | |
| | | Logger searchKeyLogger = LoggerFactory.getLogger("searchKey"); |
| | | |
| | | Logger logger = LoggerFactory.getLogger(UserParser.class); |
| | | |
| | | |
| | | @Resource |
| | |
| | | |
| | | @Resource |
| | | private RedisManager redisManager; |
| | | |
| | | @Resource |
| | | private SMSService smsService; |
| | | |
| | | public void getUid(AcceptData acceptData, HttpServletRequest request, PrintWriter out) { |
| | | DetailSystem detailSystem = systemService.getDetailSystemByPackage(acceptData.getPackageName()); |
| | |
| | | |
| | | //新版热门搜索 |
| | | public void getHotSearchNew(AcceptData acceptData, HttpServletRequest request, PrintWriter out) { |
| | | DetailSystemConfig config = configService.getConfigByKey("hot_search", acceptData.getDetailSystem(), acceptData.getVersion()); |
| | | DetailSystemConfig config = configService.getConfigByKey("hot_search", acceptData.getDetailSystem(), acceptData.getVersion()); |
| | | if (config == null) { |
| | | out.print(JsonUtil.loadFalseJson("无内容")); |
| | | return; |
| | |
| | | VideoInfo vf = new VideoInfo(); |
| | | vf.setId(videoId); |
| | | Collection c = new Collection(); |
| | | c.setUser(new UserInfo(acceptData.getUid())); |
| | | if (!StringUtil.isNullOrEmpty(acceptData.getUid())) { |
| | | c.setUser(new UserInfo(acceptData.getUid())); |
| | | } else { |
| | | c.setUser(new UserInfo("1")); |
| | | } |
| | | if (!StringUtil.isNullOrEmpty(loginUid)) { |
| | | c.setLoginUser(new LoginUser(loginUid)); |
| | | } |
| | |
| | | } |
| | | |
| | | final String code = StringUtil.getVerifyCode(); |
| | | request.getSession().setAttribute(account, code); |
| | | |
| | | // new Thread(new Runnable() { |
| | | // public void run() { |
| | | // for (int i = 0; i < 3; i++) { |
| | |
| | | content = title; |
| | | } |
| | | |
| | | boolean isS = MailSenderUtil.sendEmail(account, "ysyz17784739772@126.com", "weikou2014", title, |
| | | content); |
| | | System.out.println(content); |
| | | |
| | | EmailInfo emailInfo = new EmailInfo(); |
| | | emailInfo.setToEmail(account); |
| | | emailInfo.setTitle(title); |
| | | emailInfo.setFromEmail("app_yzm_zc@163.com"); |
| | | emailInfo.setFormEmailPwd("KZKSRTEMDWEQRAQR"); |
| | | emailInfo.setContent(content); |
| | | emailInfo.setApp("影视"); |
| | | try { |
| | | EmailApiUtil.sendEmail(emailInfo); |
| | | request.getSession().setAttribute(account, code); |
| | | out.print(JsonUtil.loadTrueJson("验证码发送成功")); |
| | | } catch (MailSendException e) { |
| | | e.printStackTrace(); |
| | | out.print(JsonUtil.loadFalseJson("验证码发送失败")); |
| | | } |
| | | // } |
| | | |
| | | // }).start(); |
| | | out.print(JsonUtil.loadTrueJson("验证码发送成功")); |
| | | } |
| | | |
| | | |
| | | public void sendSMSCode(AcceptData acceptData, HttpServletRequest request, PrintWriter out) { |
| | | String phone = request.getParameter("phone"); |
| | | |
| | | if (StringUtil.isNullOrEmpty(phone)) { |
| | | out.print(JsonUtil.loadFalseJson("电话号码不能为空")); |
| | | return; |
| | | } |
| | | |
| | | if (!StringUtil.isMobile(phone)) { |
| | | out.print(JsonUtil.loadFalseJson("电话号码格式不正确")); |
| | | return; |
| | | } |
| | | |
| | | try { |
| | | smsService.sendLoginVCode(phone, 6, acceptData.getDetailSystem().getId(), acceptData.getVersion()); |
| | | } catch (SMSException e) { |
| | | e.printStackTrace(); |
| | | out.print(JsonUtil.loadFalseJson(e.getMessage())); |
| | | return; |
| | | } catch (Exception e) { |
| | | logger.error("短信发送出错", e); |
| | | out.print(JsonUtil.loadFalseJson("短信发送出错,请稍后再试")); |
| | | return; |
| | | } |
| | | out.print(JsonUtil.loadTrueJson("")); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 登录 |
| | |
| | | loginInfoDto.setSystemId(acceptData.getDetailSystem().getSystem().getId()); |
| | | loginInfoDto.setEmail(account); |
| | | loginInfoDto.setPwd(StringUtil.Md5(pwd)); |
| | | loginInfoDto.setIpInfo(IPUtil.getRemotIP(request) + ":" + request.getRemotePort()); |
| | | try { |
| | | LoginUser user = userService.login(loginInfoDto); |
| | | out.print(JsonUtil.loadTrueJson(StringUtil.outPutResultJson(user))); |
| | | } catch (LoginUserException e) { |
| | | out.print(JsonUtil.loadFalseJson(e.getMessage())); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 登录 |
| | | * |
| | | * @param request |
| | | * @param out |
| | | */ |
| | | public void phoneLogin(AcceptData acceptData, HttpServletRequest request, PrintWriter out) { |
| | | String account = request.getParameter("phone");// 邮箱 |
| | | String vcode = request.getParameter("code");// 密码 |
| | | if (StringUtil.isNullOrEmpty(account)) { |
| | | out.print(JsonUtil.loadFalseJson("请上传手机号")); |
| | | return; |
| | | } |
| | | |
| | | if (StringUtil.isNullOrEmpty(vcode)) { |
| | | out.print(JsonUtil.loadFalseJson("请上传验证码")); |
| | | return; |
| | | } |
| | | |
| | | if (!smsService.verifyLoginVCode(account, vcode, acceptData.getDetailSystem().getId(), acceptData.getVersion())) { |
| | | out.print(JsonUtil.loadFalseJson("验证码错误")); |
| | | return; |
| | | } |
| | | |
| | | LoginInfoDto loginInfoDto = new LoginInfoDto(); |
| | | loginInfoDto.setLoginType(LoginUser.LOGIN_TYPE_PHONE); |
| | | loginInfoDto.setSystemId(acceptData.getDetailSystem().getSystem().getId()); |
| | | loginInfoDto.setPhone(account); |
| | | loginInfoDto.setSmsCode(vcode); |
| | | loginInfoDto.setIpInfo(IPUtil.getRemotIP(request) + ":" + request.getRemotePort()); |
| | | try { |
| | | LoginUser user = userService.login(loginInfoDto); |
| | | out.print(JsonUtil.loadTrueJson(StringUtil.outPutResultJson(user))); |
| | | } catch (LoginUserException e) { |
| | | //用户不存在 |
| | | if (e.getCode() == LoginUserException.CODE_NO_USER) { |
| | | //注册用户 |
| | | try { |
| | | userService.register(loginInfoDto); |
| | | //注册成功,开始登录 |
| | | try { |
| | | LoginUser user = userService.login(loginInfoDto); |
| | | out.print(JsonUtil.loadTrueJson(StringUtil.outPutResultJson(user))); |
| | | } catch (LoginUserException e2) { |
| | | out.print(JsonUtil.loadFalseJson("登录出错,请稍后再试")); |
| | | } |
| | | |
| | | } catch (RegisterUserException e1) { |
| | | e1.printStackTrace(); |
| | | out.print(JsonUtil.loadFalseJson("登录出错,请稍后再试")); |
| | | } |
| | | } else { |
| | | out.print(JsonUtil.loadFalseJson(e.getMessage())); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | String path = session.getServletContext().getRealPath("upload") + "/" + fileName; |
| | | if (!new File(session.getServletContext().getRealPath("upload") + "/").exists()) |
| | | new File(session.getServletContext().getRealPath("upload") + "/").mkdirs(); |
| | | boolean isS = StringUtil.generateImageFromBase64(base64, path); |
| | | boolean isS = StringUtil.generateImageFromBase64(base64.replace("\n",""), path); |
| | | if (!isS) |
| | | return ""; |
| | | |