...
|
...
|
@@ -423,22 +423,36 @@ function fetchShopInfo(data, channel) { |
|
|
|
|
|
export function favoriteOperation(shopId) {
|
|
|
return (dispatch, getState) => {
|
|
|
let {app, home} = getState();
|
|
|
let channelStr = channelTransfer.number2String(app.channel);
|
|
|
let shopState = home[channelStr].shop.get('list');
|
|
|
let state = shopState.get(shopId, '');
|
|
|
if (!state) {
|
|
|
return;
|
|
|
}
|
|
|
ReactNative.NativeModules.YH_CommonHelper.uid()
|
|
|
.then(uid => {
|
|
|
shopId = shopId + '';
|
|
|
|
|
|
let {app, home} = getState();
|
|
|
let channelStr = channelTransfer.number2String(app.channel);
|
|
|
let shopState = home[channelStr].shop.get('list');
|
|
|
let state = shopState.get(shopId, '');
|
|
|
if (!state) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
let resultNumber = parseInt(state.get('collectionNum', 0));
|
|
|
if (state.get('favorite')) {
|
|
|
resultNumber = resultNumber > 0 ? (resultNumber - 1) : 0;
|
|
|
dispatch(cancelFavorite(shopId, resultNumber));
|
|
|
} else {
|
|
|
resultNumber = resultNumber + 1;
|
|
|
dispatch(addFavorite(shopId, resultNumber));
|
|
|
}
|
|
|
let resultNumber = parseInt(state.get('collectionNum', 0));
|
|
|
if (state.get('favorite')) {
|
|
|
resultNumber = resultNumber > 0 ? (resultNumber - 1) : 0;
|
|
|
dispatch(cancelFavorite(shopId, resultNumber));
|
|
|
} else {
|
|
|
resultNumber = resultNumber + 1;
|
|
|
dispatch(addFavorite(shopId, resultNumber));
|
|
|
}
|
|
|
})
|
|
|
.catch(error => {
|
|
|
ReactNative.NativeModules.YH_CommonHelper.login()
|
|
|
.then(uid => {
|
|
|
|
|
|
})
|
|
|
.catch(error => {
|
|
|
|
|
|
});
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
|
...
|
...
|
|