|
@@ -604,10 +604,20 @@ export default {
|
|
|
return prop === "departmentName" ? "departmentName" : "userName";
|
|
return prop === "departmentName" ? "departmentName" : "userName";
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
|
|
+ getDeptOpenId(row) {
|
|
|
|
|
+ if (!row) return "";
|
|
|
|
|
+ const openId = row.departmentOpenId || row.corpwxDeptid || row.corpwxDeptId || "";
|
|
|
|
|
+ return this.isValidDeptOpenId(openId) ? String(openId) : "";
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ isValidDeptOpenId(openId) {
|
|
|
|
|
+ return openId != null && String(openId) !== "";
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
openDataId(row, prop) {
|
|
openDataId(row, prop) {
|
|
|
if (!row) return "";
|
|
if (!row) return "";
|
|
|
if (prop === "departmentName") {
|
|
if (prop === "departmentName") {
|
|
|
- return row.departmentOpenId || row.corpwxDeptid || "";
|
|
|
|
|
|
|
+ return this.getDeptOpenId(row);
|
|
|
}
|
|
}
|
|
|
if (prop === "userName") {
|
|
if (prop === "userName") {
|
|
|
return row.corpwxUserid || row.userOpenId || "";
|
|
return row.corpwxUserid || row.userOpenId || "";
|
|
@@ -724,7 +734,7 @@ export default {
|
|
|
dataList,
|
|
dataList,
|
|
|
nameKey,
|
|
nameKey,
|
|
|
"departmentName",
|
|
"departmentName",
|
|
|
- (item) => item.departmentOpenId || item.corpwxDeptid || item[nameKey],
|
|
|
|
|
|
|
+ (item) => this.getDeptOpenId(item),
|
|
|
"_deptOpenId",
|
|
"_deptOpenId",
|
|
|
callback,
|
|
callback,
|
|
|
);
|
|
);
|
|
@@ -810,7 +820,7 @@ export default {
|
|
|
// 企业微信环境下优先用 _deptOpenId(原始 openid)渲染 ww-open-data,
|
|
// 企业微信环境下优先用 _deptOpenId(原始 openid)渲染 ww-open-data,
|
|
|
// 若无 openid 则降级显示转译后的纯文本
|
|
// 若无 openid 则降级显示转译后的纯文本
|
|
|
deptNameHtml(name, openId) {
|
|
deptNameHtml(name, openId) {
|
|
|
- if (this.needWxOpenData && openId) {
|
|
|
|
|
|
|
+ if (this.needWxOpenData && this.isValidDeptOpenId(openId)) {
|
|
|
return `<ww-open-data type="departmentName" openid="${openId}"></ww-open-data>`;
|
|
return `<ww-open-data type="departmentName" openid="${openId}"></ww-open-data>`;
|
|
|
}
|
|
}
|
|
|
return name;
|
|
return name;
|
|
@@ -1301,7 +1311,7 @@ export default {
|
|
|
// pieData 中额外存储 openId 供 tooltip 使用
|
|
// pieData 中额外存储 openId 供 tooltip 使用
|
|
|
const pieData = this.top3DeptData.map((item) => ({
|
|
const pieData = this.top3DeptData.map((item) => ({
|
|
|
name: item.departmentName,
|
|
name: item.departmentName,
|
|
|
- openId: item._deptOpenId || item.departmentName,
|
|
|
|
|
|
|
+ openId: item._deptOpenId || null,
|
|
|
value: isOvertime
|
|
value: isOvertime
|
|
|
? Number(item.overtimeHours || 0)
|
|
? Number(item.overtimeHours || 0)
|
|
|
: Number(item.workingTime || 0),
|
|
: Number(item.workingTime || 0),
|
|
@@ -1428,11 +1438,7 @@ export default {
|
|
|
|
|
|
|
|
const deptOpenIdMap4 = {};
|
|
const deptOpenIdMap4 = {};
|
|
|
this.deptProjectCountData.forEach((item) => {
|
|
this.deptProjectCountData.forEach((item) => {
|
|
|
- deptOpenIdMap4[item.departmentName] =
|
|
|
|
|
- item._deptOpenId ||
|
|
|
|
|
- item.departmentOpenId ||
|
|
|
|
|
- item.corpwxDeptid ||
|
|
|
|
|
- item.departmentName;
|
|
|
|
|
|
|
+ deptOpenIdMap4[item.departmentName] = item._deptOpenId || null;
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
const deptNameHtml4 = this.deptNameHtml.bind(this);
|
|
const deptNameHtml4 = this.deptNameHtml.bind(this);
|