...
|
...
|
@@ -63,10 +63,10 @@ export function queryActivityFailure(error) { |
|
|
};
|
|
|
}
|
|
|
|
|
|
export function queryProductListRequest(activityId) {
|
|
|
export function queryProductListRequest(activity) {
|
|
|
return {
|
|
|
type: QUERY_PRODUCT_LIST_REQUEST,
|
|
|
payload: activityId
|
|
|
payload: activity
|
|
|
}
|
|
|
}
|
|
|
|
...
|
...
|
@@ -84,10 +84,10 @@ export function queryProductListFailure(error) { |
|
|
}
|
|
|
}
|
|
|
|
|
|
export function queryProductAndRemindListRequest(activityId) {
|
|
|
export function queryProductAndRemindListRequest(activity) {
|
|
|
return {
|
|
|
type: QUERY_PRODUCT_AND_REMIND_LIST_REQUEST,
|
|
|
payload: activityId
|
|
|
payload: activity
|
|
|
}
|
|
|
}
|
|
|
|
...
|
...
|
@@ -133,10 +133,7 @@ export function updateSecKillProductList(json) { |
|
|
}
|
|
|
|
|
|
export function setStartTime(startTime) {
|
|
|
console.log('---startTime----');
|
|
|
console.log(startTime);
|
|
|
startTime = moment(startTime, 'YYYYMMDDHHmmss').unix();
|
|
|
console.log(startTime);
|
|
|
return {
|
|
|
type: SET_START_TIME,
|
|
|
payload: startTime,
|
...
|
...
|
@@ -146,15 +143,12 @@ export function setStartTime(startTime) { |
|
|
* 秒杀时间栏
|
|
|
*/
|
|
|
export function getSeckillQueryActivity(inStartTime = 0) {
|
|
|
console.log('00000000');
|
|
|
return (dispatch, getState) => {
|
|
|
let {app, seckill} = getState();
|
|
|
let {startTime} = seckill;
|
|
|
console.log('aaaaa----aaaaa');
|
|
|
if (seckill.isFetching || seckill.tipMessage) {
|
|
|
return;
|
|
|
}
|
|
|
console.log('kkk---kkkk');
|
|
|
if (inStartTime) {
|
|
|
startTime = inStartTime;
|
|
|
}
|
...
|
...
|
@@ -163,19 +157,19 @@ console.log('kkk---kkkk'); |
|
|
.then(json => {
|
|
|
if (json.secKillProductVoList && json.secKillProductVoList.length) {
|
|
|
let processedTimeInfo = parseActivityTimeLsit(json, startTime);
|
|
|
dispatch(queryActivitySuccess(processedTimeInfo.newQueryActivityInfo));
|
|
|
let queryActivityInfo = processedTimeInfo.newQueryActivityInfo;
|
|
|
let focusActivity = processedTimeInfo.focusActivity;
|
|
|
dispatch(queryActivitySuccess({queryActivityInfo, focusActivity}));
|
|
|
if (Date.now() < focusActivity.startTime) {
|
|
|
dispatch(getSeckillProductRemindList(focusActivity.activityId));
|
|
|
dispatch(getSeckillProductRemindList(focusActivity));
|
|
|
} else {
|
|
|
dispatch(getSeckillProductList(focusActivity.activityId));
|
|
|
dispatch(getSeckillProductList(focusActivity));
|
|
|
}
|
|
|
} else {
|
|
|
dispatch(queryActivityFailure({error:'来晚啦~秒杀已结束'}));
|
|
|
}
|
|
|
})
|
|
|
.catch(error => {
|
|
|
console.log('queryActivityFailure');
|
|
|
dispatch(queryActivityFailure(error));
|
|
|
dispatch(showTipMessage(error.message));
|
|
|
});
|
...
|
...
|
@@ -185,16 +179,16 @@ console.log('kkk---kkkk'); |
|
|
/*
|
|
|
* 秒杀商品列表
|
|
|
*/
|
|
|
export function getSeckillProductList(activityId = 0) {
|
|
|
export function getSeckillProductList(activity) {
|
|
|
return (dispatch, getState) => {
|
|
|
let {app, seckill} = getState();
|
|
|
let {queryRemindList, queryProductList, curActivityId} = seckill;
|
|
|
if (!activityId) {
|
|
|
activityId = curActivityId;
|
|
|
let {queryRemindList, queryProductList, curActivity} = seckill;
|
|
|
if (!activity) {
|
|
|
activity = curActivity.toJS();
|
|
|
}
|
|
|
dispatch(queryProductListRequest(activityId));
|
|
|
dispatch(queryProductListRequest(activity));
|
|
|
queryRemindList = queryRemindList.toJS();
|
|
|
return new SeckillService(app.host).fetchQueryProductList(activityId)
|
|
|
return new SeckillService(app.host).fetchQueryProductList(activity.activityId)
|
|
|
.then(json => {
|
|
|
let productList = [];
|
|
|
if (queryRemindList && queryRemindList.length > 0) {
|
...
|
...
|
@@ -203,11 +197,7 @@ export function getSeckillProductList(activityId = 0) { |
|
|
productList = productAddFlag(json);
|
|
|
}
|
|
|
queryProductList = queryProductList.toJS();
|
|
|
console.log(queryProductList);
|
|
|
queryProductList[activityId] = productList;
|
|
|
console.log('-----------');
|
|
|
console.log(productList);
|
|
|
console.log(queryProductList);
|
|
|
queryProductList[activity.activityId] = productList;
|
|
|
dispatch(queryProductListSuccess(queryProductList));
|
|
|
})
|
|
|
.catch(error => {
|
...
|
...
|
@@ -219,28 +209,21 @@ export function getSeckillProductList(activityId = 0) { |
|
|
/*
|
|
|
* 秒杀商品列表
|
|
|
*/
|
|
|
export function getSeckillProductRemindList(activityId = 0) {
|
|
|
export function getSeckillProductRemindList(activity) {
|
|
|
return (dispatch, getState) => {
|
|
|
let queryProductRemindList = (activityId, uid) => {
|
|
|
dispatch(queryProductAndRemindListRequest(activityId));
|
|
|
let queryProductRemindList = (activity, uid) => {
|
|
|
dispatch(queryProductAndRemindListRequest(activity));
|
|
|
let {app, seckill} = getState();
|
|
|
let {queryProductList} = seckill;
|
|
|
Promise.all([
|
|
|
new SeckillService(app.host).fetchQueryProductList(activityId),
|
|
|
new SeckillService(app.host).fetchQueryRemindList(activityId, uid),
|
|
|
new SeckillService(app.host).fetchQueryProductList(activity.activityId),
|
|
|
new SeckillService(app.host).fetchQueryRemindList(activity.activityId, uid),
|
|
|
]).then(result => {
|
|
|
let productList = result[0];
|
|
|
let remindList = result[1];
|
|
|
productList = productAddFlag(productList, remindList);
|
|
|
console.log('1111111111111');
|
|
|
console.log(queryProductList);
|
|
|
console.log(activityId);
|
|
|
console.log(productList);
|
|
|
queryProductList = queryProductList.toJS();
|
|
|
|
|
|
queryProductList[activityId] = productList;
|
|
|
console.log('7777777777');
|
|
|
console.log(queryProductList);
|
|
|
queryProductList[activity.activityId] = productList;
|
|
|
dispatch(queryProductAndRemindListSuccess({queryProductList,remindList}));
|
|
|
|
|
|
})
|
...
|
...
|
@@ -251,10 +234,10 @@ export function getSeckillProductRemindList(activityId = 0) { |
|
|
|
|
|
ReactNative.NativeModules.YH_CommonHelper.uid()
|
|
|
.then(uid => {
|
|
|
queryProductRemindList(activityId, uid);
|
|
|
queryProductRemindList(activity, uid);
|
|
|
})
|
|
|
.catch(error => {
|
|
|
dispatch(getSeckillProductList(activityId));
|
|
|
dispatch(getSeckillProductList(activity));
|
|
|
});
|
|
|
};
|
|
|
}
|
...
|
...
|
@@ -262,7 +245,7 @@ export function getSeckillProductRemindList(activityId = 0) { |
|
|
export function addCancelUserReminder(method='app.seckill.addUserReminder', activityId=0, productSkn=0, uid=0, secKillId=0, okTip='', failTip='') {
|
|
|
return (dispatch, getState) => {
|
|
|
let {app, seckill} = getState();
|
|
|
let {queryProductList, curActivityId} = seckill;
|
|
|
let {queryProductList, curActivity} = seckill;
|
|
|
dispatch(clearTipMessage());
|
|
|
return new SeckillService(app.host).addCancelUserReminder(method,activityId,productSkn,uid,secKillId)
|
|
|
.then(json => {
|
...
|
...
|
@@ -275,7 +258,7 @@ export function addCancelUserReminder(method='app.seckill.addUserReminder', acti |
|
|
}
|
|
|
queryProductList = queryProductList.toJS();
|
|
|
let curActivity = {};
|
|
|
queryProductList[curActivityId].forEach((productItem, i) => {
|
|
|
queryProductList[activityId].forEach((productItem, i) => {
|
|
|
if (productItem.id === secKillId) {
|
|
|
productItem.remindFlag = remindFlag;
|
|
|
}
|
...
|
...
|
@@ -291,9 +274,6 @@ export function addCancelUserReminder(method='app.seckill.addUserReminder', acti |
|
|
|
|
|
|
|
|
export function clickActivityTimeItem(activity) {
|
|
|
console.log('----5');
|
|
|
console.log(activity);
|
|
|
let curActivityId = activity.activityId;
|
|
|
return (dispatch, getState) => {
|
|
|
let {app, seckill} = getState();
|
|
|
let {queryActivityInfo} = seckill;
|
...
|
...
|
@@ -308,11 +288,11 @@ export function clickActivityTimeItem(activity) { |
|
|
}
|
|
|
});
|
|
|
let secKillProductVoList = queryActivityInfo.secKillProductVoList;
|
|
|
dispatch(updateSecKillProductVoList({secKillProductVoList, curActivityId}));
|
|
|
dispatch(updateSecKillProductVoList({secKillProductVoList, curActivity}));
|
|
|
if (Date.now() < curActivity.startTime) {
|
|
|
dispatch(getSeckillProductRemindList(curActivityId));
|
|
|
dispatch(getSeckillProductRemindList(activity));
|
|
|
} else {
|
|
|
dispatch(getSeckillProductList(curActivityId));
|
|
|
dispatch(getSeckillProductList(activity));
|
|
|
}
|
|
|
};
|
|
|
}
|
...
|
...
|
@@ -338,7 +318,7 @@ export function clickRemindBtn(product) { |
|
|
.catch(error => {
|
|
|
ReactNative.NativeModules.YH_CommonHelper.login()
|
|
|
.then(uid => {
|
|
|
dispatch(getSeckillProductRemindList(product.activityId));
|
|
|
dispatch(getSeckillProductRemindList(product));
|
|
|
})
|
|
|
.catch(error => {
|
|
|
|
...
|
...
|
@@ -385,9 +365,6 @@ export function clickRemindBtn(product) { |
|
|
method: action,
|
|
|
arguments: params,
|
|
|
})
|
|
|
.then(flag => {
|
|
|
|
|
|
})
|
|
|
.then(flag => { //成功
|
|
|
dispatch(addCancelUserReminder(method, product.activityId, skn,uid, product.id, okTip, failTip));
|
|
|
})
|
...
|
...
|
@@ -402,13 +379,10 @@ export function clickRemindBtn(product) { |
|
|
export function refreshList() {
|
|
|
return (dispatch, getState) => {
|
|
|
let {app, seckill} = getState();
|
|
|
let {queryActivityInfo,queryProductList,curActivityId} = seckill;
|
|
|
console.log('------refreshList');
|
|
|
console.log('------55');
|
|
|
console.log(curActivityId);
|
|
|
if (curActivityId !== 0 && queryActivityInfo.secKillProductVoList) {
|
|
|
let {queryActivityInfo,queryProductList,curActivity} = seckill;
|
|
|
if (curActivity.get('activityId') !== 0 && queryActivityInfo.secKillProductVoList && queryActivityInfo.secKillProductVoList.size > 0) {
|
|
|
queryActivityInfo.secKillProductVoList.forEach((activityInfo, i) => {
|
|
|
if (activityInfo.get('activityId') === curActivityId) {
|
|
|
if (activityInfo.get('activityId') === curActivity.get('activityId')) {
|
|
|
dispatch(getSeckillQueryActivity(activityInfo.get('startTime')/1000));
|
|
|
}
|
|
|
});
|
...
|
...
|
@@ -492,6 +466,7 @@ function parseActivityTimeLsit(json, focusTime=0) { |
|
|
minute = 0;
|
|
|
|
|
|
activityTimeItem.startTime *= 1000;
|
|
|
activityTimeItem.index = i;
|
|
|
date = new Date(activityTimeItem.startTime);
|
|
|
hour = date.getHours();
|
|
|
minute = date.getMinutes();
|
...
|
...
|
|