| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249 |
- package com.cnd3b.restcontroller.customer.wechatapplet;
- import com.alibaba.fastjson.JSONObject;
- import com.aliyun.oss.OSS;
- import com.aliyun.oss.OSSClientBuilder;
- import com.aliyun.oss.model.ListObjectsRequest;
- import com.aliyun.oss.model.OSSObjectSummary;
- import com.aliyun.oss.model.ObjectListing;
- import com.cnd3b.common.Controller;
- import com.cnd3b.common.data.Row;
- import com.cnd3b.common.data.Rows;
- import com.cnd3b.common.data.RowsMap;
- import com.cnd3b.common.data.SQLFactory;
- import com.cnd3b.common.parameter.parameter;
- import com.cnd3b.utility.WebRequest;
- import com.cnd3b.utility.aliyun.oss.AliyunOSSConfigConstant;
- import com.cnd3b.utility.wechatdock.WechatDock_Enterprise;
- import org.apache.commons.codec.digest.DigestUtils;
- import p2.common.parse.A;
- import p2.pao.PaoRemote;
- import p2.pao.PaoSetRemote;
- import p2.util.P2Exception;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Calendar;
- import java.util.List;
- import static com.cnd3b.utility.aliyun.oss.AliyunOSSConfigConstant.BUCKE_NAME_2;
- public class wechatapplet extends Controller {
- String url = BUCKE_NAME_2 + "." + AliyunOSSConfigConstant.END_POINT;
- /**
- * 构造函数
- *
- * @param content
- */
- public wechatapplet(JSONObject content) {
- super(content);
- }
- /**
- * 获取培训学习列表
- *
- * @return
- */
- public String getCoursewareList() throws P2Exception {
- String ttypedetailid = "";
- if (content.containsKey("ttypedetailid")) {
- ttypedetailid = content.getString("ttypedetailid");
- }
- String keywords = "";
- if (content.containsKey("keywords")) {
- keywords = content.getString("keywords");
- }
- SQLFactory sqlFactory = null;
- if (ttypedetailid.equals("")) {
- sqlFactory = new SQLFactory(this, "查询课件列表_全部", pageSize, pageNumber, " t1.createdate desc");
- sqlFactory.addParameter("keywords", "%" + keywords + "%");
- } else {
- sqlFactory = new SQLFactory(this, "查询课件列表", pageSize, pageNumber, " t1.createdate desc");
- sqlFactory.addParameter("ttypedetailid", ttypedetailid);
- sqlFactory.addParameter("keywords", "%" + keywords + "%");
- }
- String sql = sqlFactory.getSQL();
- Rows rows = dbConnect.runSqlQuery(sqlFactory.getSQL());
- // RowsMap rowsMap = getAttachmentUrl("tarchives_sc", rows.toArrayList("tarchives_scid"), "video");
- //查询封面
- RowsMap rowsMapCover = getAttachmentUrl("tarchives_sc", rows.toArrayList("tarchives_scid"), "cover");
- for (Row row : rows) {
- // row.put("attinfos", rowsMap.get(row.getString("tarchives_scid")));
- Rows coverRows = rowsMapCover.get(row.getString("tarchives_scid"));
- if (!coverRows.isEmpty()) {
- row.put("cover", coverRows.get(0).getString("fobsurl"));
- } else {
- row.put("cover", "");
- }
- }
- createRequestLog();
- return getSucReturnObject().setDataByPaging(rows).preloading(1).toString();
- }
- /**
- * 获取课件详情
- *
- * @return
- */
- public String getCoursewareDetail() throws P2Exception {
- String tarchives_scid = content.getString("tarchives_scid");
- //已学习人数加一
- String sql = "UPDATE tarchives_sc SET fvisitors= CASE WHEN fvisitors IS NULL THEN 1 else fvisitors + 1 END where tarchives_scid='" + tarchives_scid + "'";
- dbConnect.runSqlUpdate(sql);
- SQLFactory sqlFactory = new SQLFactory(this, "查询课件详细");
- sqlFactory.addParameter("tarchives_scid", tarchives_scid);
- Rows rows = dbConnect.runSqlQuery(sqlFactory.getSQL());
- RowsMap rowsMap = getAttachmentUrl("tarchives_sc", rows.toArrayList("tarchives_scid"), "video");
- //查询封面
- RowsMap rowsMapCover = getAttachmentUrl("tarchives_sc", rows.toArrayList("tarchives_scid"), "cover");
- for (Row row : rows) {
- row.put("attinfos", rowsMap.get(row.getString("tarchives_scid")));
- Rows coverRows = rowsMapCover.get(row.getString("tarchives_scid"));
- if (!coverRows.isEmpty()) {
- row.put("cover", coverRows.get(0).getString("fobsurl"));
- }
- }
- if (rows.isEmpty()) {
- return getErrReturnObject().setErrMsg("未找到当前课件").toString();
- }
- createRequestLog();
- return getSucReturnObject().setData(rows.get(0)).toString();
- }
- /**
- * 获取分类
- *
- * @return
- * @throws P2Exception
- */
- public String getTypeList() throws P2Exception {
- String fusertype = content.getString("fusertype");
- String where = "";
- //1表示业务员
- if (fusertype.equals("1")) {
- where = "t1.fissaler ='1'";
- } else {
- where = "t1.fisagent ='1'";
- }
- String fparentid = content.getString("fparentid");
- SQLFactory sqlFactory = new SQLFactory(this, "分类");
- sqlFactory.addParameter_SQL("fparentid", fparentid);
- sqlFactory.addParameter_SQL("where", where);
- String sql = sqlFactory.getSQL();
- Rows rows = dbConnect.runSqlQuery(sql);
- createRequestLog();
- return getSucReturnObject().setData(rows).toString();
- }
- /**
- * 新增日志
- */
- private void createRequestLog() {
- new Thread() {
- @Override
- public void run() {
- String sql = "SELECT*FROM tuserrequestlog WHERE fdate='" + getDate_Str() + "' AND tuserid='" + parameter.tuserid + "'";
- Rows rows = dbConnect.runSqlQuery(sql);
- if (rows.isEmpty()) {
- SQLFactory sqlFactory = new SQLFactory(this, "新增日志");
- sqlFactory.addParameter("tuserrequestlogid", createTableID("tuserrequestlog", "tuserrequestlogid"));
- sqlFactory.addParameter("siteid", parameter.defaultsiteid);
- sqlFactory.addParameter("fdate", getDate_Str());
- sqlFactory.addParameter("flastrequestdate", getDateTime_Str());
- sqlFactory.addParameter("tuserid", parameter.tuserid);
- dbConnect.runSqlUpdate(sqlFactory.getSQL());
- } else {
- String id = rows.get(0).getString("tuserrequestlogid");
- String sqlUpdate = "UPDATE tuserrequestlog SET frequesttimes=frequesttimes+1,flastrequestdate = '" + getDateTime_Str() + "' WHERE tuserrequestlogid = '" + id + "'";
- dbConnect.runSqlUpdate(sqlUpdate);
- }
- }
- }.start();
- }
- /**
- * 获取指定目录下的文件和文件夹
- *
- * @return
- */
- public String getFilesOfPath() {
- String folderPath = content.getString("folderPath");
- // 构造ListObjectsRequest请求。
- ListObjectsRequest listObjectsRequest = new ListObjectsRequest(BUCKE_NAME_2);
- // 设置正斜线(/)为文件夹的分隔符。
- listObjectsRequest.setDelimiter("/");
- // 列出fun目录下的所有文件和文件夹。
- listObjectsRequest.setPrefix(folderPath);
- ObjectListing listing = ossClient.listObjects(listObjectsRequest);
- // 遍历所有文件。
- System.out.println("Objects:");
- List<JSONObject> objectSummaryList = new ArrayList<>();
- for (OSSObjectSummary objectSummary : listing.getObjectSummaries()) {
- if (!objectSummary.getKey().equals(folderPath)) {
- JSONObject object = new JSONObject();
- object.put("key", objectSummary.getKey());
- object.put("name", objectSummary.getKey().replace(folderPath, ""));
- object.put("size", objectSummary.getSize() / 1024);
- object.put("time", getDateTime_Str(objectSummary.getLastModified()));
- object.put("url", url + "/" + objectSummary.getKey());
- objectSummaryList.add(object);
- }
- }
- //查询对应账号下有哪些有权限的目录
- SQLFactory sqlFactory = new SQLFactory(this, "查询账号目录");
- sqlFactory.addParameter("tuserid", parameter.tuserid);
- Rows rows = dbConnect.runSqlQuery(sqlFactory);
- ArrayList<String> listFolders = new ArrayList<>();
- if (!rows.isEmpty()) {
- for (Row row : rows) {
- listFolders.add(row.getString("fpath"));
- }
- }
- // 遍历所有commonPrefix。
- List<JSONObject> commonPrefixList = new ArrayList<>();
- for (String commonPrefix : listing.getCommonPrefixes()) {
- JSONObject object = new JSONObject();
- object.put("folderpath", commonPrefix);
- if (listFolders.size() == 0) {
- commonPrefixList.add(object);
- } else {
- for (String str : listFolders) {
- if (str.equals(object)) {
- commonPrefixList.add(object);
- }
- }
- }
- }
- {
- }
- // 关闭OSSClient。
- ossClient.shutdown();
- JSONObject object = new JSONObject();
- object.put("files", objectSummaryList);
- object.put("folder", commonPrefixList);
- return getSucReturnObject().setData(object).toString();
- }
- }
|