import React from "react"; import moment from "moment"; import { inject, observer } from "mobx-react"; @inject("payrollStore") @observer export default class ComputerTemplate extends React.Component { constructor(props) { super(props); this.state = { salaryItemSet: [], salaryTemplateShowSet: { theme: "", background: "", textContentPosition: "", textContent: "" } }; } componentWillMount() { if (this.props.isPreview) return; let salaryTemplateShowSetStr = window.localStorage.getItem("salary-showset") || "{}"; let salaryItemSetStr = window.localStorage.getItem("salaryItemSet") || "{}"; this.setState({ salaryItemSet: JSON.parse(salaryItemSetStr), salaryTemplateShowSet: JSON.parse(salaryTemplateShowSetStr) }); } componentDidMount() { if (this.props.isMsgPreview && this.props.salaryItemSet) { this.setState({ salaryItemSet: JSON.parse(this.props.salaryItemSet), salaryTemplateShowSet: JSON.parse(this.props.salaryTemplateShowSet) }); } } componentWillReceiveProps(nextProps) { if (nextProps.salaryTemplateShowSet !== this.props.salaryTemplateShowSet) { this.setState({ salaryItemSet: JSON.parse(nextProps.salaryItemSet), salaryTemplateShowSet: JSON.parse(nextProps.salaryTemplateShowSet) }); } } renderTableTr = (data, groupId) => { const tables = []; const len = data.length; const rowNum = 3; const sumRows = len % rowNum; const sumRowMod = len / rowNum; const rows = (sumRows == 0 ? sumRowMod : parseInt(sumRowMod.toString()) + 1); for (let j = 0; j < rows; j++) { let iLen = (j + 1) * rowNum; iLen = iLen > len ? len : iLen; tables.push("