Commit 859a7b64 authored by Xuguangxing's avatar Xuguangxing

Merge remote-tracking branch 'origin/feat/activityCalendar' into feat/1229

parents 663d204b 1a10d74a
......@@ -2,6 +2,9 @@ import { Controller, Context } from 'egg';
import _, { omitBy } from 'lodash';
import { v1 as uuidv1 } from 'uuid';
import { PageHistory } from '../model/pageHistory';
import * as path from 'path';
const { api } = require(path.resolve('./config/apollo.json'));
export default class EditorController extends Controller {
public async login(ctx: Context) {
......@@ -80,7 +83,6 @@ export default class EditorController extends Controller {
public async getList(ctx: Context) {
const { type, pageSize, pageNo, author, pageName, isPublish, pageDescribe, uuid } = ctx.query;
const { like } = ctx.model.Sequelize.Op;
let where = omitBy({
author: author && { like: `%${author}%`},
pageName: pageName && { like: `%${pageName}%`},
......@@ -97,8 +99,14 @@ export default class EditorController extends Controller {
} else if (type === 'template') {
where = { ...where, isTemplate: 1 };
}
const { count: total, rows: data } = await ctx.model.PageInfo.findAndCountAll({ where, limit: +pageSize || 10,
offset: (+pageNo - 1) * +pageSize || 0, order: [['updated_at', 'DESC']], include: [PageHistory.scope('relative')]});
const { count: total, rows: data } = await ctx.model.PageInfo.findAndCountAll({
where,
limit: +pageSize || 10,
offset: (+pageNo - 1) * +pageSize || 0,
order: [['updated_at', 'DESC']],
attributes: ['id', 'uuid', 'author', 'updated_at', 'isTemplate', 'coverImage', 'pageDescribe', 'pageName', 'tenantId'],
include: [PageHistory.scope('relative')]
});
data.map(item => {
item.pageHistory && item.pageHistory.reverse();
})
......@@ -146,7 +154,6 @@ export default class EditorController extends Controller {
const params = ctx.request.body;
const id = params.id;
const author = params.author;
console.log(params)
if (!id) {
ctx.body = {};
return;
......@@ -190,4 +197,29 @@ export default class EditorController extends Controller {
}
ctx.body = ctx.helper.ok(pageInfo);
}
public async getListForActivityCalendar(ctx: Context) {
const { pageSize, pageNo, pageName, tenantId, id} = ctx.query;
let where = omitBy({
pageName: pageName && { like: `%${pageName}%`},
id,
enable: 1,
isPublish: 1,
tenantId: tenantId || '560761'
}, v => !v);
const { count: total, rows: data } = await ctx.model.PageInfo.findAndCountAll({
where,
limit: +pageSize || 10,
offset: (+pageNo - 1) * +pageSize || 0,
order: [['updated_at', 'DESC']],
attributes: ['id', 'uuid', 'pageName', 'tenantId', 'validStartTime', 'validEndTime']
});
const res = data.map(item => {
let dataValues = item.dataValues;
dataValues.url = `${api.h5Host}/activity/${item.uuid}?tenantId=${item.tenantId}&vccToken={token}&appChannel={appChannel}`;
dataValues.uuid && delete dataValues.uuid;
dataValues.tenantId && delete dataValues.tenantId;
return item.dataValues;
})
ctx.body = ctx.helper.ok({ total, list: res });
}
}
\ No newline at end of file
......@@ -122,7 +122,7 @@ import { PageInfo } from './pageInfo';
get() {
const moment = require('moment');
const updatedAt = this.getDataValue('updatedAt');
return moment(updatedAt).utc().zone(-8).format('YYYY-MM-DD HH:mm:ss');
return moment(updatedAt).utcOffset('+08:00').format('YYYY-MM-DD HH:mm:ss');
},
})
updatedAt: string;
......
......@@ -13,6 +13,7 @@ export default (application: Application) => {
router.post('/editor/update', controller.editor.update);
router.post('/editor/clearcache', controller.editor.clearCache);
router.get('/editor/get/list', controller.editor.getList);
router.get('/editor/getList/activityCalendar', controller.editor.getListForActivityCalendar);
router.get('/editor/get/template', controller.editor.getTemplateList);
router.get('/editor/getServerTime', controller.editor.getServerTime);
router.get('/editor/get/:uuid', controller.editor.get);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment