add new setting for {{scoreStar}} and {{myRatingStar}}

This commit is contained in:
HughWan 2023-12-29 23:35:32 +08:00
parent 7539134b05
commit f2278b14d9

@ -333,34 +333,53 @@ export default abstract class DoubanAbstractLoadHandler<T extends DoubanSubject>
tags = [extract.type]; tags = [extract.type];
} }
Object.entries(userState).forEach(([key, value]) => { Object.entries(userState).forEach(([key, value]) => {
variableMap.set(key, value); if (!value) {
return;
}
variableMap.set(key, new DataField(key, VariableUtil.getType(value), value, value));
}); });
variableMap.set(DoubanUserParameterName.MY_TAGS, new DataField(DoubanUserParameterName.MY_TAGS, DataValueType.array, tags, tags)); if (userState.tags && userState.tags.length > 0 ) {
variableMap.set(DoubanUserParameterName.MY_STATE, new DataField( variableMap.set(DoubanUserParameterName.MY_TAGS, new DataField(DoubanUserParameterName.MY_TAGS, DataValueType.array, tags, tags));
DoubanUserParameterName.MY_STATE, }
DataValueType.string, if (userState.comment) {
userState.state, variableMap.set(DoubanUserParameterName.MY_COMMENT, new DataField(
this.getUserStateName(userState.state) DoubanUserParameterName.MY_COMMENT,
)); DataValueType.string,
variableMap.set(DoubanUserParameterName.MY_RATING, new DataField( userState.comment,
DoubanUserParameterName.MY_RATING, userState.comment
DataValueType.number, ));
userState.rate, }
userState.rate) if (userState.state) {
); variableMap.set(DoubanUserParameterName.MY_STATE, new DataField(
variableMap.set(DoubanUserParameterName.MY_RATING_STAR, new DataField( DoubanUserParameterName.MY_STATE,
DoubanUserParameterName.MY_RATING_STAR, DataValueType.string,
DataValueType.string, userState.state,
userState.rate, this.getUserStateName(userState.state)
NumberUtil.getRateStar(userState.rate, 5, {scoreSetting: context.settings.scoreSetting}) ));
)); }
if (userState.rate) {
variableMap.set(DoubanUserParameterName.MY_RATING, new DataField(
DoubanUserParameterName.MY_RATING,
DataValueType.number,
userState.rate,
userState.rate)
);
variableMap.set(DoubanUserParameterName.MY_RATING_STAR, new DataField(
DoubanUserParameterName.MY_RATING_STAR,
DataValueType.string,
userState.rate,
NumberUtil.getRateStar(userState.rate, 5, {scoreSetting: context.settings.scoreSetting})
));
}
if (userState.collectionDate) {
variableMap.set(DoubanUserParameterName.MY_COLLECTION_DATE, new DataField(
DoubanUserParameterName.MY_COLLECTION_DATE,
DataValueType.date,
userState.collectionDate,
userState.collectionDate ? moment(userState.collectionDate).format(context.settings.dateFormat) : ''
));
}
variableMap.set(DoubanUserParameterName.MY_COLLECTION_DATE, new DataField(
DoubanUserParameterName.MY_COLLECTION_DATE,
DataValueType.date,
userState.collectionDate,
userState.collectionDate ? moment(userState.collectionDate).format(context.settings.dateFormat) : ''
));
} }