lion 4 months ago
parent 3e45443650
commit 32535a7705

@ -1088,29 +1088,31 @@ export default function formBuilder(
value["custom_field_id"] === info.id value["custom_field_id"] === info.id
) { ) {
isJointly = !!log.is_jointly_sign; isJointly = !!log.is_jointly_sign;
if (log.status) { if (log.status > 0 && log.user) {
jointlySignContent.push( jointlySignContent.push(
h("div", [ h("div", [
h("span", value.value), h("span", value.value),
h("br"), h("br"),
info.is_sign info.is_sign
? log.user.sign_file && log.user.sign_file.url ? log.user?.sign_file?.url
? h("el-image", { ? h("el-image", {
style: { style: {
"max-height": "80px", "max-height": "80px",
"max-width": "120px", "max-width": "120px",
display: "block",
}, },
props: { props: {
src: log.user?.sign_file?.url, src: log.user.sign_file.url,
fit: "contain", fit: "contain",
alt: log.user?.name, alt: log.user?.name || "",
"preview-src-list": [log.user.sign_file.url],
lazy: false,
}, },
attrs: { attrs: {
src: log.user?.sign_file?.url, src: log.user.sign_file.url,
alt: log.user?.name,
}, },
}) })
: h("span", log.user?.name) : h("span", log.user?.name || "")
: "", : "",
info.is_sign ? h("br") : "", info.is_sign ? h("br") : "",
h( h(
@ -1176,43 +1178,108 @@ export default function formBuilder(
} }
})(), })(),
(() => { (() => {
if (info.is_sign) { // 检查 is_sign 是否为真值(支持 1, true, "1" 等)
let log = this.logs.find( if (info.is_sign && (info.is_sign === 1 || info.is_sign === true || info.is_sign === "1")) {
(log) => let log = null;
log.status>0 && log.node?.fields?.findIndex(
(field) => // 方法1: 从 jointlySignLog 中查找(检查所有字段)
field?.field_id === info.id && if (this.jointlySignLog && this.jointlySignLog.length > 0) {
field.type === "write" log = this.jointlySignLog.find((log) => {
) !== -1 && target[info.name] if (log.status > 0 && log.user && log.user.sign_file && log.user.sign_file.url) {
); try {
if (log && log.status && log.user) { const data = JSON.parse(log.data);
return h("div", [ // 检查 data 中是否有匹配当前字段的条目
log.user.sign_file && log.user.sign_file.url return Object.values(data).some(
? h("el-image", { (value) =>
style: { value &&
"max-height": "80px", typeof value === 'object' &&
"max-width": "120px", value.custom_field_id === info.id
}, );
props: { } catch (e) {
src: log.user?.sign_file?.url, return false;
fit: "contain", }
alt: log.user?.name, }
}, return false;
attrs: { });
src: log.user?.sign_file?.url, }
alt: log.user?.name,
}, // 方法2: 如果没找到,从 this.logs 中查找(放宽条件,不要求 target[info.name] 有值)
}) if (!log && this.logs && this.logs.length > 0) {
: h("span", log.user?.name), log = this.logs.find(
(log) =>
log.status > 0 &&
log.user &&
log.user.sign_file &&
log.user.sign_file.url &&
log.node?.fields?.findIndex(
(field) =>
field?.field_id === info.id &&
field.type === "write"
) !== -1
);
}
// 方法3: 如果还是没找到,尝试从 this.logs 中查找所有 status>0 且有签名的 log
if (!log && this.logs && this.logs.length > 0) {
log = this.logs.find(
(log) =>
log.status > 0 &&
log.user &&
log.user.sign_file &&
log.user.sign_file.url
);
}
if (log && log.status > 0 && log.user && log.user.sign_file && log.user.sign_file.url) {
return h("div", {
style: {
"margin-top": "8px",
}
}, [
h("el-image", {
style: {
"max-height": "80px",
"max-width": "120px",
display: "block",
},
props: {
src: log.user.sign_file.url,
fit: "contain",
alt: log.user?.name || "",
"preview-src-list": [log.user.sign_file.url],
lazy: false,
},
attrs: {
src: log.user.sign_file.url,
},
}),
h( h(
"div", "div",
this.$moment(log.updated_at).format( {
"YYYY年MM月DD日" style: {
) "margin-top": "4px",
"font-size": "12px",
color: "#909399",
}
},
log.user?.name || ""
),
h(
"div",
{
style: {
"font-size": "12px",
color: "#909399",
}
},
log.updated_at
? this.$moment(log.updated_at).format("YYYY年MM月DD日")
: ""
), ),
]); ]);
} }
} }
return null;
})(), })(),
] ]
); );
@ -2006,29 +2073,31 @@ export default function formBuilder(
value["custom_field_id"] === info.id value["custom_field_id"] === info.id
) { ) {
isJointly = !!log.is_jointly_sign; isJointly = !!log.is_jointly_sign;
if (log.status) { if (log.status > 0 && log.user) {
jointlySignContent.push( jointlySignContent.push(
h("div", [ h("div", [
h("span", value.value), h("span", value.value),
h("br"), h("br"),
info.is_sign info.is_sign
? log.user.sign_file && log.user.sign_file.url ? log.user?.sign_file?.url
? h("el-image", { ? h("el-image", {
style: { style: {
"max-height": "40px", "max-height": "40px",
"max-width": "60px", "max-width": "60px",
display: "block",
}, },
props: { props: {
src: log.user?.sign_file?.url, src: log.user.sign_file.url,
fit: "contain", fit: "contain",
alt: log.user?.name, alt: log.user?.name || "",
"preview-src-list": [log.user.sign_file.url],
lazy: false,
}, },
attrs: { attrs: {
src: log.user?.sign_file?.url, src: log.user.sign_file.url,
alt: log.user?.name,
}, },
}) })
: h("span", log.user?.name) : h("span", log.user?.name || "")
: "", : "",
info.is_sign ? h("br") : "", info.is_sign ? h("br") : "",
h( h(
@ -2085,43 +2154,108 @@ export default function formBuilder(
} }
})(), })(),
(() => { (() => {
if (info.is_sign) { // 检查 is_sign 是否为真值(支持 1, true, "1" 等)
let log = this.logs.find( if (info.is_sign && (info.is_sign === 1 || info.is_sign === true || info.is_sign === "1")) {
(log) => let log = null;
log.status>0 && log.node?.fields?.findIndex(
(field) => // 方法1: 从 jointlySignLog 中查找(检查所有字段)
field?.field_id === info.id && if (this.jointlySignLog && this.jointlySignLog.length > 0) {
field.type === "write" log = this.jointlySignLog.find((log) => {
) !== -1 && target[info.name] if (log.status > 0 && log.user && log.user.sign_file && log.user.sign_file.url) {
); try {
if (log && log.status && log.user) { const data = JSON.parse(log.data);
return h("div", [ // 检查 data 中是否有匹配当前字段的条目
log.user.sign_file && log.user.sign_file.url return Object.values(data).some(
? h("el-image", { (value) =>
style: { value &&
"max-height": "40px", typeof value === 'object' &&
"max-width": "60px", value.custom_field_id === info.id
}, );
props: { } catch (e) {
src: log.user?.sign_file?.url, return false;
fit: "contain", }
alt: log.user?.name, }
}, return false;
attrs: { });
src: log.user?.sign_file?.url, }
alt: log.user?.name,
}, // 方法2: 如果没找到,从 this.logs 中查找(放宽条件,不要求 target[info.name] 有值)
}) if (!log && this.logs && this.logs.length > 0) {
: h("span", log.user?.name), log = this.logs.find(
(log) =>
log.status > 0 &&
log.user &&
log.user.sign_file &&
log.user.sign_file.url &&
log.node?.fields?.findIndex(
(field) =>
field?.field_id === info.id &&
field.type === "write"
) !== -1
);
}
// 方法3: 如果还是没找到,尝试从 this.logs 中查找所有 status>0 且有签名的 log
if (!log && this.logs && this.logs.length > 0) {
log = this.logs.find(
(log) =>
log.status > 0 &&
log.user &&
log.user.sign_file &&
log.user.sign_file.url
);
}
if (log && log.status > 0 && log.user && log.user.sign_file && log.user.sign_file.url) {
return h("div", {
style: {
"margin-top": "8px",
}
}, [
h("el-image", {
style: {
"max-height": "40px",
"max-width": "60px",
display: "block",
},
props: {
src: log.user.sign_file.url,
fit: "contain",
alt: log.user?.name || "",
"preview-src-list": [log.user.sign_file.url],
lazy: false,
},
attrs: {
src: log.user.sign_file.url,
},
}),
h( h(
"div", "div",
this.$moment(log.updated_at).format( {
"YYYY年MM月DD日" style: {
) "margin-top": "4px",
"font-size": "12px",
color: "#909399",
}
},
log.user?.name || ""
),
h(
"div",
{
style: {
"font-size": "12px",
color: "#909399",
}
},
log.updated_at
? this.$moment(log.updated_at).format("YYYY年MM月DD日")
: ""
), ),
]); ]);
} }
} }
return null;
})(), })(),
] ]
); );

Loading…
Cancel
Save