<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="com.Admin.daoimpl.AdminUserDaoImpl" %> <%@ page import="com.Admin.daoimpl.AdminProdDaoImpl" %> <%@ page import="com.Admin.vo.SubType"%> <%@ page import="com.Admin.vo.SuperType"%> <%@ page import="com.Admin.vo.Product"%> <%@ page import="com.Admin.vo.Attr"%> <%@ page import="net.sf.json.JSONArray"%> <%@ page import="net.sf.json.JSONObject"%> <%@ page import="com.Admin.vo.App"%> <%@ page import="com.Admin.vo.User"%> <%@ page import="com.Admin.vo.AppUser"%> <%@ page import="com.wx.SignUtil"%> <%@ page import="java.util.ArrayList"%> <%@ page import="java.util.List"%> <%@ page import="java.net.URLDecoder"%> <%@ page import="com.common.IConstant"%> <%@ page import="com.Admin.daoimpl.SubTypeDaoImpl"%> <%@ page import="com.common.Redis"%> <%@ page import="com.common.ReadDBPropertiesFile"%> <%@ page import="redis.clients.jedis.Jedis"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@ taglib prefix="cf" uri="/WEB-INF/els.tld" %> <% response.setCharacterEncoding("utf-8"); request.setCharacterEncoding("utf-8"); String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; String realPath = "http://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath()+request.getServletPath().substring(0,request.getServletPath().lastIndexOf("/")+1); String context = request.getServletPath().substring(1,request.getServletPath().lastIndexOf("/")); String apppath = getServletContext().getRealPath("/"+context); String currentUrl = null; if(request.getServerPort() == 80){ currentUrl = request.getScheme()+"://"+ request.getServerName() + request.getRequestURI()+"?"+request.getQueryString(); } else{ currentUrl = request.getScheme()+"://"+ request.getServerName()+ ":" + request.getServerPort() +request.getRequestURI()+"?"+request.getQueryString(); } String tp = request.getParameter("tp"); if(tp!=null){ apppath = getServletContext().getRealPath("/tpl/"+tp); } String t=request.getParameter("t"); String subtypeid = request.getParameter("subid"); String productid = request.getParameter("ar"); String appid = request.getParameter("appid"); String userid = request.getParameter("userid"); User user = null; JSONArray jsonTypes = new JSONArray(); JSONArray products = null; Jedis redis = null; int role = 0; JSONObject jsonUser = null; String supertype=null; String subtype=null; String chapter=null; ArrayList chapters = null; JSONArray outlines = null; JSONArray resources = new JSONArray(); JSONObject lesson = null; JSONObject product = null; JSONObject wx = null; boolean isPublic = false; JSONObject app = null; JSONObject gzh = null; String gzh_appid = null; String intro = ""; int producttype=0; String payid=null; Double payprice=0.0; JSONObject jsonType=null; JSONObject teacher=null; JSONArray recommends=null; String template=""; String maps = null; try{ redis = Redis.getReadRedis(); //根据productid访问 role = 0; if(productid!=null){ //判断product有价格,且没有免费读部分,直接进入登录 System.out.println("1----------"); product = IConstant.getProduct(redis, productid, t); if(product==null||product.isNullObject()){ if(redis!=null){ redis.close(); redis=null; } String url = basePath+"m/page-error.html"; response.sendRedirect(url); return; } appid = product.getString("appid"); products = IConstant.getSameTypeProducts(appid,product.getString("supertype"),product.getString("subtype")); producttype = IConstant.enumProductType.TYPE_RESOURCE; } else if(subtypeid!=null){ JSONObject sub = IConstant.getType(redis, appid, subtypeid, t); System.out.println("3----check product with sub "+sub+",appid "+appid); if(sub==null){ if(redis!=null){ redis.close(); redis=null; } String url = null; if(t==null){ url = basePath+"m/page-blank.html?url="+currentUrl; } else{ url = basePath+"m/page-blank.html"; } response.sendRedirect(url); return; } String sb = sub.getString("subType"); String sp = sub.getString("superType"); producttype = IConstant.enumProductType.TYPE_SUBTYPE; products = IConstant.getProducts(redis, appid, 301, t); JSONObject rtn = IConstant.getDefaultTypeProductPreferVideo(sp,sb,null,products); if(rtn==null||rtn.isNullObject()){ if(redis!=null){ redis.close(); redis=null; } String url = null; if(t==null){ url = basePath+"m/page-blank.html?url="+currentUrl; } else{ url = basePath+"m/page-blank.html"; } response.sendRedirect(url); return; } try{ product = rtn.getJSONObject("product"); }catch(Exception ex){ } if(product==null||product.isNullObject()){ if(redis!=null){ redis.close(); redis=null; } String url = null; if(t==null){ url = basePath+"m/page-blank.html?url="+currentUrl; } else{ url = basePath+"m/page-blank.html"; } response.sendRedirect(url); return; } System.out.println("product name is "+product.getString("productname")+",price is "+product.getString("price")); products = rtn.getJSONArray("products"); } String filename = "maps.js"; maps = IConstant.readCacheFileAsString(appid,filename); System.out.println("3----check product "); if(product==null||product.isNullObject()){ if(redis!=null){ redis.close(); redis=null; } String url = null; if(t==null){ url = basePath+"m/page-blank.html?url="+currentUrl; } else{ url = basePath+"m/page-blank.html"; } response.sendRedirect(url); return; } //获得product 路径 String root = IConstant.getRootURL()+"/data/"+appid+"/res/"; String cdndomain = "https://bk.andisk.com"; cdndomain = IConstant.getDataRootURL(appid); root = cdndomain+"/data/"+appid+"/res/"; String infile = product.getString("resourceurl"); String resourceurl = ""; resourceurl = IConstant.getURL(infile); System.out.println(root+resourceurl); product.put("url", root+resourceurl); String key = resourceurl+"_m3u8"; String webm = Redis.get(key); if(webm!=null ) { product.put("m3u8", webm); } else{ String html = null; key = resourceurl+"_html"; html = Redis.get(key); if(html!=null) { product.put("html", html); } } jsonType = new SubTypeDaoImpl().getJSONSubTypeByName( product.getString("supertype"),product.getString("subtype"),product.getString("appid")); lesson = jsonType; //获得老师 try{ if(jsonType.getString("teacherid")!=null&&!jsonType.getString("teacherid").isEmpty()){ String userid1 = jsonType.getString("teacherid"); teacher = new AdminUserDaoImpl().getTeachersFromIntroById(userid, appid); } }catch(Exception ex){ } //获得推荐课程 supertype = product.getString("supertype").trim(); subtype = product.getString("subtype").trim(); recommends = new SubTypeDaoImpl().getJSONSubTypeBySuperType(appid, supertype); isPublic = true; if(app==null) app = IConstant.getAppInfo(appid); template = app.getString("template"); if(template==null){ template="nm"; } //获取产品相关的信息 //---2.2获得产品的大类,课程,章节 System.out.println("product supertpe is "+supertype); JSONObject attrs = product.getJSONObject("attrs"); System.out.println("product attrs is "+attrs.toString()); chapter = IConstant.getChapter(attrs); intro=""; try{ intro = product.getString("introduce"); }catch(Exception ex){ } try{ outlines = product.getJSONArray("indexes"); }catch(Exception ex){ } if(outlines==null) outlines = new JSONArray(); if(products!=null&& products.size()>0) resources = products; else resources = new JSONArray(); }catch(Exception ex){ ex.printStackTrace(); String url = basePath+"m/page-error.html"; response.sendRedirect(url); } finally{ if(redis!=null){ redis.close(); redis=null; } } %> 课件试读

<%=product.getString("productname") %>

    <% if(lesson!=null){%>
  • <%=lesson.getInt("upnumber") %>
  • 分享给朋友
  • <%=lesson.getInt("viewnumber") %>人
  • 价格:¥<%=lesson.getInt("price") %>
  • 立即购买
  • <% } %>

课程简介

<%=product.getString("productname") %>

<%=intro %>

学员评论(共条)

<%if(teacher!=null){ out.println("
"); out.println("
主讲:"+teacher.getString("truename")+"
"); out.println("
"); out.println("

讲师介绍

"); out.println(" "+teacher.getString("intro")+"

"); out.println("
"); out.println("
"); }%>

课程推荐

<% if(recommends!=null &&recommends.size()>0){ for(int i=0;i=8) break; JSONObject r = recommends.getJSONObject(i); String name="iType.jsp?ar="+r.getString("subTypeId"); String url = IConstant.toStaticURL(name, appid); out.println("
"); out.println("
"); out.println("
"); out.println("

"+r.getString("subType")+"

"); // out.println("

主讲老师:"+r.getString("teacher")+"

"); out.println("
"); out.println("
"); } } %>
/images/gzh.png" title="" alt="" />

/images/logo.png" title="" alt="" />

全国咨询电话:<%=app.getString("phone") %>

企业邮箱:<%=app.getString("email") %>

企业地址:<%=app.getString("address") %>

COPYRIGHT © 2015 <%=app.getString("companyname") %> 京ICP备09063872号-2