65 lines
1.7 KiB
JavaScript
65 lines
1.7 KiB
JavaScript
import React, { Component } from "react";
|
|
import { WeaLocaleProvider } from "ecCom";
|
|
import Content from "./content";
|
|
import _ from "lodash";
|
|
import "./index.less";
|
|
|
|
const getLabel = WeaLocaleProvider.getLabel;
|
|
|
|
class Index extends Component {
|
|
render() {
|
|
return (
|
|
<div className="pbpc-content">
|
|
<div className="weapp-salary-sp weapp-salary-payroll-pc-preview"><Content {...this.props}/></div>
|
|
</div>
|
|
);
|
|
}
|
|
}
|
|
|
|
export default Index;
|
|
|
|
export const dealTemplate = (itemTypeList, type) => {
|
|
let cloneItemTypeList = cloneDeep(itemTypeList);
|
|
let showData = [], onlyOneGrup = false;
|
|
cloneItemTypeList.forEach((group) => {
|
|
const { items, groupName, groupId } = group;
|
|
if (items.length !== 0) {
|
|
items.forEach((item) => {
|
|
item.salaryItemValue = (item.salaryItemValue !== undefined || true) ? item.salaryItemValue : "";
|
|
});
|
|
if (items.length % 2 && type === "pc") items.push({});
|
|
// 未分类不展示标题
|
|
// if (!groupId.includes("222222222222222222")) {
|
|
showData.push({ groupId, groupName, items });
|
|
// } else {
|
|
// showData.push({ items });
|
|
// }
|
|
}
|
|
});
|
|
if (cloneItemTypeList.length === 1) {
|
|
onlyOneGrup = true;
|
|
// 只有一个分组的时候不展示分组名
|
|
cloneItemTypeList[0].name = "";
|
|
}
|
|
return { onlyOneGrup, showData };
|
|
};
|
|
|
|
const cloneDeep = (obj) => {
|
|
if (obj === null || typeof obj !== "object") {
|
|
return obj;
|
|
}
|
|
if (Array.isArray(obj)) {
|
|
let clone = [];
|
|
for (let item of obj) {
|
|
clone.push(cloneDeep(item));
|
|
}
|
|
return clone;
|
|
}
|
|
let clone = {};
|
|
for (let key in obj) {
|
|
if (obj.hasOwnProperty(key)) {
|
|
clone[key] = cloneDeep(obj[key]);
|
|
}
|
|
}
|
|
return clone;
|
|
}; |