Commit c7d0b174 by liang ce

修改首页动态

parent d0041ee4
...@@ -10,15 +10,15 @@ ...@@ -10,15 +10,15 @@
<text a:if="{{item.traceTime !== '1970-03-01 00:00:00'}}" class="iconfont iconicon_top1"></text> <text a:if="{{item.traceTime !== '1970-03-01 00:00:00'}}" class="iconfont iconicon_top1"></text>
</view> </view>
</view> </view>
<block a:for="{{item.meetingLogDataList}}" a:for-item="dynamicItem"> <block a:for="{{item.meetingLogDataList.meetingLogDataList.slice(0,2)}}" a:for-item="dynamicItem">
<view class="userDynamic"> <view class="userDynamic">
<view class="dynamicTime"> <view class="dynamicTime">
<text>{{dynamicItem.creatorInfo.username}}更新了{{dynamicItem.category == 2 ? '文件' : '任务'}}</text> <text>{{dynamicItem.creatorInfo.username}}更新了{{dynamicItem.category == 2 ? '文件' : '任务'}}</text>
<text>{{createTime}}</text> <text>{{createTime}}</text>
</view> </view>
<file-list a:if="{{dynamicItem.category === '2'}}" fileView="{{dynamicItem}}" isCanEdit="{{false}}"/> <file-list a:if="{{dynamicItem.category === '2'}}" fileView="{{dynamicItem.meetingLogResource}}" isCanEdit="{{false}}"/>
<view class="dynamicFile" a:if="{{dynamicItem.category === '3'}}"> <view class="dynamicFile" a:if="{{dynamicItem.category === '3'}}">
<task-list onChangeTaskStatusOnList="onChangeTaskStatusOnList" taskList="{{[dynamicItem]}}" isCanEdit="{{false}}"/> <task-list onChangeTaskStatusOnList="onChangeTaskStatusOnList" taskList="{{[dynamicItem.meetingLogResource]}}" isCanEdit="{{false}}"/>
</view> </view>
</view> </view>
</block> </block>
......
...@@ -3,7 +3,7 @@ import { ...@@ -3,7 +3,7 @@ import {
meetingCollection, meetingCollection,
updateMeetingTask updateMeetingTask
} from "../../api/request"; } from "../../api/request";
import { dealFileTime } from "../../utils/utils"; import { dealFileTime, uniqueObject } from "../../utils/utils";
Component({ Component({
mixins: [], mixins: [],
data: { data: {
...@@ -37,43 +37,43 @@ Component({ ...@@ -37,43 +37,43 @@ Component({
// 第一层日程数据处理 // 第一层日程数据处理
if (res.data.data) { if (res.data.data) {
let dynamicList = res.data.data.records.map((item, index) => { let dynamicList = res.data.data.records.map((item, index) => {
if (item.creatorInfo) {
item.creatorInfo = JSON.parse(item.creatorInfo);
}
// 第二层日程下的动态数据处理 // 第二层日程下的动态数据处理
let meetingLogDataList = item.meetingLogDataList.map( let meetingLogDataList = {};
(item2, index2) => { let meetingLogDataListArr = [];
if (item2.category === "2") {
// 第三层处理动态下的文件或者任务数据 for (let i = 0; i < item.meetingLogDataList.length; i++) {
let meetingLogResource = item2.meetingLogResource; let itemData = item.meetingLogDataList[i].meetingLogResource;
meetingLogResource.fileInfos = !meetingLogResource.fileInfos if (itemData) {
? "" if (itemData.taskInfos || itemData.taskInfos) {
: JSON.parse(meetingLogResource.fileInfos); if (itemData.creatorInfo) {
meetingLogResource.creatorInfo = !meetingLogResource.creatorInfo itemData.creatorInfo = JSON.parse(itemData.creatorInfo);
? ""
: JSON.parse(meetingLogResource.creatorInfo);
meetingLogResource.category = "2";
return meetingLogResource;
} else if (item2.category === "3") {
let meetingLogResource = {
category: "3",
groupId: item2.groupId,
scheduleId: item2.scheduleId,
id: item2.meetingLogResource.id,
acceptorInfo: item2.meetingLogResource.acceptorInfo
? JSON.parse(item2.meetingLogResource.acceptorInfo)
: "",
taskInfos: item2.meetingLogResource.taskInfos
? JSON.parse(item2.meetingLogResource.taskInfos)
: "",
taskStatus: item2.meetingLogResource.taskStatus
};
return meetingLogResource;
} }
if (itemData.fileInfos) {
itemData.fileInfos = JSON.parse(itemData.fileInfos);
} }
); if (itemData.taskInfos) {
itemData.taskInfos = JSON.parse(itemData.taskInfos);
}
if (itemData.acceptorInfo) {
itemData.acceptorInfo = JSON.parse(itemData.acceptorInfo);
}
meetingLogDataList[item.meetingLogDataList[i].resourceId] =
item.meetingLogDataList[i];
}
}
}
for (let item in meetingLogDataList) {
meetingLogDataListArr.push(meetingLogDataList[item]);
}
item.meetingLogDataList = meetingLogDataListArr;
return { return {
scheduleId: item.scheduleId, scheduleId: item.scheduleId,
title: item.title, title: item.title,
traceTime: item.traceTime, traceTime: item.traceTime,
meetingLogDataList: meetingLogDataList meetingLogDataList: item
}; };
}); });
if (current === 1) { if (current === 1) {
......
...@@ -2,9 +2,7 @@ ...@@ -2,9 +2,7 @@
<view>2020年3月</view> <view>2020年3月</view>
<view onTap="changesidebar">icon</view> <view onTap="changesidebar">icon</view>
</view> </view>
<view class="index"> <scroll-view class="indexScrollView" scroll-y="{{true}}" style="background: #FFFFFF" lower-threshold="1000" onScrollToLower="lower" scroll-into-view="{{thisDay}}">
<view a:if="{{true}}">
<scroll-view class="indexScrollView" a:if="{{todayStr !== ''}}" scroll-y="{{true}}" lower-threshold="1000" onScrollToLower="lower" scroll-into-view="{{todayStr}}">
<block a:for="{{scheduleList}}" a:for-item="scheduleYearList"> <block a:for="{{scheduleList}}" a:for-item="scheduleYearList">
<block a:for="{{scheduleYearList}}"> <block a:for="{{scheduleYearList}}">
<block a:if="{{item.type == 'year'}}"> <block a:if="{{item.type == 'year'}}">
...@@ -90,16 +88,7 @@ ...@@ -90,16 +88,7 @@
</block> </block>
</block> </block>
</block> </block>
</scroll-view> </scroll-view>
</view>
<view class="startPage" a:else>
<image mode="scaleToFill" src="../../assests/startPage.png"/>
<view class="startText">
<text class="text1">开会有益</text>
<text>快乐工作</text>
</view>
</view>
</view>
<popup show="{{show}}" onClose="closePop" position="left"> <popup show="{{show}}" onClose="closePop" position="left">
<view class="sidebarContent" catchTap="preventSort"> <view class="sidebarContent" catchTap="preventSort">
<view class="sidebarLogo"> <view class="sidebarLogo">
......
...@@ -37,11 +37,10 @@ create.Component({ ...@@ -37,11 +37,10 @@ create.Component({
this.update(); this.update();
this.getDate(); this.getDate();
} }
}, },
didUnmount() { }, didUnmount() {},
methods: { methods: {
getDate: throttle(function (e) { getDate: throttle(function(e) {
let data = { let data = {
startTime: "2020-01-01 00:00:00", startTime: "2020-01-01 00:00:00",
endTime: "2025-12-30 23:59:59" endTime: "2025-12-30 23:59:59"
...@@ -69,7 +68,6 @@ create.Component({ ...@@ -69,7 +68,6 @@ create.Component({
todayStr: finalDate.toLocaleDateString(), todayStr: finalDate.toLocaleDateString(),
thisYear: year, thisYear: year,
maxYear: year, maxYear: year,
canClick: true,
startPageOnShow: true, startPageOnShow: true,
isFirstLoad: false isFirstLoad: false
}); });
...@@ -77,7 +75,7 @@ create.Component({ ...@@ -77,7 +75,7 @@ create.Component({
); );
}); });
}, 1000), }, 1000),
nextDetail: throttle(function (e) { nextDetail: throttle(function(e) {
let item = e.target.dataset.item; let item = e.target.dataset.item;
dd.navigateTo({ dd.navigateTo({
url: `./../meetingDetail/meetingDetail?scheduleItem=${JSON.stringify( url: `./../meetingDetail/meetingDetail?scheduleItem=${JSON.stringify(
...@@ -129,15 +127,25 @@ create.Component({ ...@@ -129,15 +127,25 @@ create.Component({
// TO DO 判断所获取的时间区间 // TO DO 判断所获取的时间区间
// 将会议的年,月,日拆分,时分拆分,生成rrules规则 // 将会议的年,月,日拆分,时分拆分,生成rrules规则
let initialTime = item.initialTime.split("-"); // let initialTime = item.initialTime.split("-"); //
let initialTimeDate = new Date(parseInt(initialTime[0]), parseInt(initialTime[1]) - 1, parseInt(initialTime[2])); let initialTimeDate = new Date(
initialTimeDate.setDate(initialTimeDate.getDate() - 1) parseInt(initialTime[0]),
console.log(initialTimeDate.toLocaleDateString()) parseInt(initialTime[1]) - 1,
let initialTimeDateyear = initialTimeDate.getFullYear() parseInt(initialTime[2])
let initialTimeDatemonth = initialTimeDate.getMonth() + 1 < 10 ? '0' + (initialTimeDate.getMonth() + 1) : initialTimeDate.getMonth() + 1 );
let initialTimeDateday = initialTimeDate.getDate() < 10 ? '0' + initialTimeDate.getDate() : initialTimeDate.getDate() initialTimeDate.setDate(initialTimeDate.getDate() - 1);
console.log(initialTimeDate.toLocaleDateString());
let initialTimeDateyear = initialTimeDate.getFullYear();
let initialTimeDatemonth =
initialTimeDate.getMonth() + 1 < 10
? "0" + (initialTimeDate.getMonth() + 1)
: initialTimeDate.getMonth() + 1;
let initialTimeDateday =
initialTimeDate.getDate() < 10
? "0" + initialTimeDate.getDate()
: initialTimeDate.getDate();
let startTimeList = item.startTime.split(":"); let startTimeList = item.startTime.split(":");
let DTSTART = `${initialTimeDateyear}${initialTimeDatemonth}${initialTimeDateday}T${startTimeList[0]}${startTimeList[1]}00Z`; let DTSTART = `${initialTimeDateyear}${initialTimeDatemonth}${initialTimeDateday}T${startTimeList[0]}${startTimeList[1]}00Z`;
console.log(DTSTART) console.log(DTSTART);
let rule = RRule.fromString( let rule = RRule.fromString(
`${item.recurrenceModel.recurrenceRule};DTSTART=${DTSTART}` `${item.recurrenceModel.recurrenceRule};DTSTART=${DTSTART}`
); );
...@@ -228,7 +236,7 @@ create.Component({ ...@@ -228,7 +236,7 @@ create.Component({
); );
} }
}); });
scheduleMap.forEach(function (value, key, map) { scheduleMap.forEach(function(value, key, map) {
scheduleList.push(value); scheduleList.push(value);
}); });
return scheduleList; return scheduleList;
...@@ -366,7 +374,7 @@ create.Component({ ...@@ -366,7 +374,7 @@ create.Component({
value: year value: year
}); });
let thisDay = new Date().toLocaleDateString(); let thisDay = new Date().toLocaleDateString();
DateMap.forEach(function (value, key, map) { DateMap.forEach(function(value, key, map) {
if ( if (
new Date(key).getDay() === 0 && new Date(key).getDay() === 0 &&
that.count( that.count(
......
...@@ -6,7 +6,9 @@ Component({ ...@@ -6,7 +6,9 @@ Component({
props: { props: {
isCanEdit: true isCanEdit: true
}, },
didMount() {}, didMount() {
console.log(this.props);
},
didUpdate() { didUpdate() {
if (this.props.taskList.id === 108) { if (this.props.taskList.id === 108) {
console.log(this.props); console.log(this.props);
......
...@@ -10,8 +10,7 @@ ...@@ -10,8 +10,7 @@
<view onTap="changeTabBar" data-tabbar='0'> <view onTap="changeTabBar" data-tabbar='0'>
<view class="tabBarView {{tabBarIndex === '0' ? 'ischooseTabBar' : ''}}"> <view class="tabBarView {{tabBarIndex === '0' ? 'ischooseTabBar' : ''}}">
<text class="iconfont iconicon_dynamic"></text> <text class="iconfont iconicon_dynamic"></text>
<text>动态{{$data.indexNeedUpdate}} <text>动态</text>
</text>
</view> </view>
</view> </view>
<view onTap="changeTabBar" data-tabbar='1'> <view onTap="changeTabBar" data-tabbar='1'>
......
...@@ -3,13 +3,14 @@ import create from "dd-store"; ...@@ -3,13 +3,14 @@ import create from "dd-store";
create.Page({ create.Page({
data: { data: {
tabBarIndex: "0", tabBarIndex: "0",
$data: null $data: null,
},
onLoad() {
}, },
onLoad() { },
onShow() { onShow() {
setTimeout(res => { setTimeout(res => {
this.update(); this.update();
}, 100) }, 100);
}, },
// 修改tabBar // 修改tabBar
changeTabBar(e) { changeTabBar(e) {
......
...@@ -15,7 +15,7 @@ export function throttle(fn, gapTime) { ...@@ -15,7 +15,7 @@ export function throttle(fn, gapTime) {
export function debounce(fn, delay) { export function debounce(fn, delay) {
let timeout = null; let timeout = null;
return function () { return function() {
clearTimeout(timeout); clearTimeout(timeout);
timeout = setTimeout(() => { timeout = setTimeout(() => {
fn.apply(this, arguments); fn.apply(this, arguments);
...@@ -141,3 +141,60 @@ export function getCurrentMonthLast(date) { ...@@ -141,3 +141,60 @@ export function getCurrentMonthLast(date) {
} }
return date.getFullYear() + "-" + month + "-" + day; return date.getFullYear() + "-" + month + "-" + day;
} }
// 对象数组去重
export function uniqueObject(arr) {
//存放的是字符串形式的数组。
var tempArr = [];
//将数组对象转成数组字符串。
var newStr = arrToString(arr);
newStr.sort();
//先放置第一个
var temp = newStr[0];
tempArr.push(temp);
// 数组去重
for (var i = 1; i < newStr.length; i++) {
if (newStr[i] !== temp) {
temp = newStr[i]; //放置到集合里面。
tempArr.push(newStr[i]);
}
}
//上面,集合还是字符串形式的数组,需要转换成json对象的形式。
var newArr = [];
// 新数组字符串转成数组对象
for (var i = 0; i < tempArr.length; i++) {
newArr.push(JSON.parse(tempArr[i]));
}
return newArr;
}
function arrToString(arr) {
var newArr = [];
if (arr.length !== 0) {
for (var i = 0; i < arr.length; i++) {
//对每一个对象数据进行处理。
//将每一个对象里面的属性key 进行重新排序,变成新的对象。
var thisObj = sortObject(arr[i]);
//将json对象,转换成字符串
var thisStr = JSON.stringify(thisObj);
// 去除空格及\t空白字符
thisStr = thisStr.replace(/(\s|[\\t])/g, "");
//里面放置字符串
newArr.push(thisStr);
}
}
return newArr;
}
function sortObject(obj) {
var keyArr = [];
for (var item in obj) {
//把所有的key放置在一个数组里面。
keyArr.push(item);
}
keyArr.sort(); //排序,按照字符进行排序。
var newObj = {}; //还是json对象
for (var i = 0; i < keyArr.length; i++) {
newObj[keyArr[i]] = obj[keyArr[i]];
}
//处理成 键=值的数组形式。
//console.log("值是:"+JSON.stringify(newObj));
return newObj;
}
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