salary-management-front/pc4mobx/hrmSalary/components/pcTemplate/index.js

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;
};