|
@@ -1034,6 +1034,15 @@ const agriRecordHasPendingAuthInPhenology = (phenology) => {
|
|
|
);
|
|
);
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+// 单行生育期下是否有待认证农事(仅农事记录页)
|
|
|
|
|
+const reproductiveHasPendingAuthFarmWork = (reproductive) => {
|
|
|
|
|
+ if (props.pageType !== "agri_record") return false;
|
|
|
|
|
+ return (Array.isArray(reproductive?.farmWorkArrangeList) ? reproductive.farmWorkArrangeList : []).some((fw) => {
|
|
|
|
|
+ const s = fw?.flowStatus;
|
|
|
|
|
+ return s === 3 || s === "3";
|
|
|
|
|
+ });
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
// 物候期底色/节气规则(不含「农事卡片日期」「待认证」扩展)
|
|
// 物候期底色/节气规则(不含「农事卡片日期」「待认证」扩展)
|
|
|
const shouldShowBlueBase = (phenology) => {
|
|
const shouldShowBlueBase = (phenology) => {
|
|
|
// 优先使用物候期真实日期判断:未来日期不应显示蓝色
|
|
// 优先使用物候期真实日期判断:未来日期不应显示蓝色
|
|
@@ -1093,11 +1102,17 @@ const shouldShowBlue = (phenology) => {
|
|
|
return shouldShowBlueBase(phenology);
|
|
return shouldShowBlueBase(phenology);
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
-// 左侧生育期/物候期文案:农事记录下物候期内有待认证则该段内所有生育期/物候期名称均蓝;否则本行农事≤今天或节气规则
|
|
|
|
|
|
|
+// 左侧生育期/物候期文案:
|
|
|
|
|
+// 1) 本行有农事<=今天:蓝;
|
|
|
|
|
+// 2) 本行全部有效日期农事均为未来且本行无待认证:灰(与右侧 future-card 一致);
|
|
|
|
|
+// 3) 农事记录下物候期内有待认证:蓝;
|
|
|
|
|
+// 4) 其余走节气/日期底色规则。
|
|
|
const shouldShowBlueLeft = (phenology, reproductive) => {
|
|
const shouldShowBlueLeft = (phenology, reproductive) => {
|
|
|
- if (agriRecordHasPendingAuthInPhenology(phenology)) return true;
|
|
|
|
|
if (reproductiveHasFarmWorkOnOrBeforeToday(reproductive)) return true;
|
|
if (reproductiveHasFarmWorkOnOrBeforeToday(reproductive)) return true;
|
|
|
- if (reproductiveAllDatedFarmWorksStrictlyFuture(reproductive)) return false;
|
|
|
|
|
|
|
+ if (reproductiveAllDatedFarmWorksStrictlyFuture(reproductive) && !reproductiveHasPendingAuthFarmWork(reproductive)) {
|
|
|
|
|
+ return false;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (agriRecordHasPendingAuthInPhenology(phenology)) return true;
|
|
|
return shouldShowBlueBase(phenology);
|
|
return shouldShowBlueBase(phenology);
|
|
|
};
|
|
};
|
|
|
|
|
|