|
|
@@ -295,6 +295,9 @@ export default {
|
|
|
shortDateTime (value) {
|
|
|
return value ? value.substr(5, 11) : "";
|
|
|
},
|
|
|
+ /**
|
|
|
+ * 余额展示文案:负值显示绝对值;正值显示余额;0 显示 0
|
|
|
+ */
|
|
|
amountText (item) {
|
|
|
const balance = Number(item.balance) || 0;
|
|
|
if (balance < 0) {
|
|
|
@@ -303,19 +306,25 @@ export default {
|
|
|
if (balance > 0) {
|
|
|
return `${this.formatNumber(balance)}`;
|
|
|
}
|
|
|
- return "";
|
|
|
+ return "0";
|
|
|
},
|
|
|
decorateMemberList () {
|
|
|
this.list.data.forEach(item => {
|
|
|
this.$set(item, "amountClass", this.getAmountClass(item));
|
|
|
});
|
|
|
},
|
|
|
+ /**
|
|
|
+ * 余额样式:欠款红 / 有余额蓝 / 零余额灰
|
|
|
+ */
|
|
|
getAmountClass (item) {
|
|
|
- const type = this.tabs[this.tabIndex] ? this.tabs[this.tabIndex].type : 0;
|
|
|
- if (type == 1 || Number(item.balance) >= 0) {
|
|
|
+ const balance = Number(item.balance) || 0;
|
|
|
+ if (balance < 0) {
|
|
|
+ return "negative";
|
|
|
+ }
|
|
|
+ if (balance > 0) {
|
|
|
return "positive";
|
|
|
}
|
|
|
- return "negative";
|
|
|
+ return "zero";
|
|
|
},
|
|
|
formatNumber (value) {
|
|
|
return value ? parseFloat(value) : 0;
|
|
|
@@ -337,13 +346,10 @@ export default {
|
|
|
};
|
|
|
return map[Number(item.overTimeUnExpend)] || "";
|
|
|
},
|
|
|
+ /**
|
|
|
+ * 未下单提示图标:与「没有下过 / 1月未下」等统一用时钟,不用单独生日图标
|
|
|
+ */
|
|
|
statusIcon (item) {
|
|
|
- if (item.passStatus != 1) {
|
|
|
- return "client-clock";
|
|
|
- }
|
|
|
- if (Number(item.overTimeUnExpend) == 180 || Number(item.overTimeUnExpend) == 365) {
|
|
|
- return "client-birthday";
|
|
|
- }
|
|
|
return "client-clock";
|
|
|
}
|
|
|
}
|
|
|
@@ -739,6 +745,23 @@ export default {
|
|
|
color: #ff1f1f;
|
|
|
}
|
|
|
|
|
|
+.meta-item.zero {
|
|
|
+ color: #9aa3ad;
|
|
|
+}
|
|
|
+
|
|
|
+/* image 无法继承 color,用 filter 把黑色 SVG 染成对应色 */
|
|
|
+.meta-item.positive .meta-icon-balance {
|
|
|
+ filter: brightness(0) saturate(100%) invert(36%) sepia(98%) saturate(2476%) hue-rotate(201deg) brightness(101%) contrast(101%);
|
|
|
+}
|
|
|
+
|
|
|
+.meta-item.negative .meta-icon-balance {
|
|
|
+ filter: brightness(0) saturate(100%) invert(18%) sepia(97%) saturate(6400%) hue-rotate(358deg) brightness(98%) contrast(118%);
|
|
|
+}
|
|
|
+
|
|
|
+.meta-item.zero .meta-icon-balance {
|
|
|
+ filter: brightness(0) saturate(100%) invert(70%) sepia(6%) saturate(300%) hue-rotate(169deg) brightness(92%) contrast(88%);
|
|
|
+}
|
|
|
+
|
|
|
.status-pill {
|
|
|
padding: 4upx 14upx;
|
|
|
border-radius: 18upx;
|