diff --git a/pc4mobx/hrmSalary/pages/calculate/index.js b/pc4mobx/hrmSalary/pages/calculate/index.js index 782396f0..03b53fb1 100644 --- a/pc4mobx/hrmSalary/pages/calculate/index.js +++ b/pc4mobx/hrmSalary/pages/calculate/index.js @@ -26,7 +26,7 @@ import CustomPaginationTable from "../../components/customPaginationTable"; const { RangePicker } = DatePicker; -@inject("calculateStore") +@inject("calculateStore", "taxAgentStore") @observer export default class Calculate extends React.Component { constructor(props) { @@ -111,7 +111,7 @@ export default class Calculate extends React.Component { handleDeleteItem(record) { Modal.confirm({ title: "信息确认", - content: "确认删除", + content: "确认删除本条数据吗?", onOk: () => { const { calculateStore: { deleteSalaryacct } } = this.props; deleteSalaryacct([record.id]).then(() => { @@ -148,10 +148,10 @@ export default class Calculate extends React.Component { // 获取列表 getColumns() { - const { calculateStore: { salaryListColumns } } = this.props; + const { calculateStore: { salaryListColumns }, taxAgentStore: { showOperateBtn } } = this.props; let columns = [...salaryListColumns]; columns.map(item => { - if (item.title == "操作") { + if (item.title == "操作" && showOperateBtn ) { item.render = (text, record) => { const accountBtn = _.filter(record.operate, it => it.text == "核算"); const notAccountBtn = _.filter(record.operate, it => it.text != "核算"); @@ -205,7 +205,7 @@ export default class Calculate extends React.Component { )} }> - + ); } @@ -242,7 +242,7 @@ export default class Calculate extends React.Component { } render() { - const { calculateStore } = this.props; + const { calculateStore, taxAgentStore: { showOperateBtn } } = this.props; const { salaryListDataSource, salaryListColumns, @@ -303,15 +303,18 @@ export default class Calculate extends React.Component { const { startDate, endDate } = this.state; return (
- + { + showOperateBtn && + + }
this.handleRangePickerChange(value)} /> - - + { + showOperateBtn && + + }
); }; diff --git a/pc4mobx/hrmSalary/pages/ledger/copyFormModal.js b/pc4mobx/hrmSalary/pages/ledger/copyFormModal.js index 231feb79..c9954361 100644 --- a/pc4mobx/hrmSalary/pages/ledger/copyFormModal.js +++ b/pc4mobx/hrmSalary/pages/ledger/copyFormModal.js @@ -1,6 +1,12 @@ +/* + * Author: 黎永顺 + * Description: + * Date: 2022-06-20 13:53:14 + * LastEditTime: 2022-06-21 13:30:00 + */ import React from "react"; import { Modal, Button, Row, Col } from "antd"; -import { WeaInput, WeaSelect } from "ecCom"; +import { WeaInput, WeaSelect, WeaError } from "ecCom"; export default class CopyFormModal extends React.Component { constructor(props) { @@ -23,6 +29,14 @@ export default class CopyFormModal extends React.Component { + { + showOperateBtn && + + } { @@ -394,13 +398,14 @@ export default class Ledger extends React.Component { render: (text, record) => ( { this.handleItemStatusChange(value, record); }} /> ), }; - } else if (item.dataIndex === "operate") { + } else if (item.dataIndex === "operate" && showOperateBtn) { return { ...item, render: (text, record) => ( diff --git a/pc4mobx/hrmSalary/pages/payroll/SalarySendList.js b/pc4mobx/hrmSalary/pages/payroll/SalarySendList.js index fd074126..00b05a99 100644 --- a/pc4mobx/hrmSalary/pages/payroll/SalarySendList.js +++ b/pc4mobx/hrmSalary/pages/payroll/SalarySendList.js @@ -1,131 +1,180 @@ -import React from 'react' -import { inject, observer } from 'mobx-react'; -import { Table, Menu, Dropdown, message } from 'antd' -import { WeaTable } from 'ecCom' -import moment from 'moment' +import React from "react"; +import { inject, observer } from "mobx-react"; +import { Table, Menu, Dropdown, message } from "antd"; +import { WeaTable } from "ecCom"; +import moment from "moment"; +import CustomTable from "../../components/customTable"; +import CustomPaginationTable from "../../components/customPaginationTable"; -import CustomTable from '../../components/customTable'; -import CustomPaginationTable from '../../components/customPaginationTable' - -@inject('payrollStore') +@inject("payrollStore") @observer export default class SalarySendList extends React.Component { - constructor(props) { - super(props) - this.searchParams = {salaryYearMonth: this.props.salaryYearMonth} - this.pageInfo = {current: 1, pageSize: 10} + constructor(props) { + super(props); + this.searchParams = { salaryYearMonth: this.props.salaryYearMonth }; + this.pageInfo = { current: 1, pageSize: 10 }; + } + + componentWillMount() { + const { payrollStore: { getPayrollList } } = this.props; + getPayrollList(); + } + + // 发放回调 + handleGrant(record) { + window.open( + "/spa/hrmSalary/static/index.html#/main/hrmSalary/payrollGrant?id=" + + record.id + ); + } + + // 查看详情 + handleShowDetail(record) { + window.open( + "/spa/hrmSalary/static/index.html#/main/hrmSalary/payrollDetail?id=" + + record.id + ); + } + + // 更新模板 + handleUpdateTemplate(record) { + let templateRecord = {}; + templateRecord.id = record.templateId; + if (!record.templateId) { + message.warning("请设置默认模板"); + return; + } + this.props.onEditTemplate && this.props.onEditTemplate(templateRecord); + } + + // 获取表头数据 + getColumns() { + const { + payrollStore: { salarySendTableStore }, + showOperateBtn + } = this.props; + const { columns } = salarySendTableStore; + if (!columns) { + return []; } - componentWillMount() { - const { payrollStore: {getPayrollList} } = this.props; - getPayrollList() - } - - // 发放回调 - handleGrant(record) { - window.open("/spa/hrmSalary/static/index.html#/main/hrmSalary/payrollGrant?id=" + record.id) - } - - // 查看详情 - handleShowDetail(record) { - window.open("/spa/hrmSalary/static/index.html#/main/hrmSalary/payrollDetail?id=" + record.id) - } - - // 更新模板 - handleUpdateTemplate(record) { - let templateRecord = {} - templateRecord.id = record.templateId; - if(!record.templateId) { - message.warning("请设置默认模板") - return - } - this.props.onEditTemplate && this.props.onEditTemplate(templateRecord) - } - - - - // 获取表头数据 - getColumns() { - const {payrollStore : {salarySendTableStore}} = this.props; - const{ columns } = salarySendTableStore - if(!columns) { - return []; - } - - let result = columns.filter(item => item.hide == "false") - result.map(item => { - if(item.dataIndex == "salaryYearMonth") { - item.render = (text, record) => { - return {moment(parseInt(text)).format("YYYY-MM")} - } - } else if(item.dataIndex == "lastSendTime") { - item.render = (text, record) => { - return {moment(parseInt(text)).format("YYYY-MM-DD HH:mm:ss")} - } + let result = columns.filter(item => item.hide == "false"); + result.map(item => { + if (item.dataIndex == "salaryYearMonth") { + item.render = (text, record) => { + return ( + + {moment(parseInt(text)).format("YYYY-MM")} + + ); + }; + } else if (item.dataIndex == "lastSendTime") { + item.render = (text, record) => { + return ( + + {moment(parseInt(text)).format("YYYY-MM-DD HH:mm:ss")} + + ); + }; + } + }); + showOperateBtn + ? result.concat([ + { + title: "操作", + key: "operate", + render: (text, record) => { + return ( + { + this.handleGrant(record); + }}> + 发放 + + ); } - }) - return result - .concat([ - { - title: "操作", - key: "operate", - render: (text, record) => { - return ( - {this.handleGrant(record)}}>发放 - ) - } - }, - { - title : '', - key: "moreOperate", - dataIndex: "moreOperate", - render: (text, record) => { - return ( - - - { - this.handleShowDetail(record) - }}>查看详情 - - - { - this.handleUpdateTemplate(record) - }}>更新模板 - - }> - - - - ); - } - } - ]) - } + }, + { + title: "", + key: "moreOperate", + dataIndex: "moreOperate", + render: (text, record) => { + return ( + + + { + this.handleShowDetail(record); + }}> + 查看详情 + + - render() { - const { payrollStore } = this.props; - const { salarySendTableStore, salarySendDataSource, pageInfo, loading } = payrollStore; - return ( -
- { - this.pageInfo.current = value - this.props.handleListDataPageChange(value, this.pageInfo) - }} - onShowSizeChange={(current, pageSize) => { - this.pageInfo = {current, pageSize} - this.props.handleListShowSizeChange(this.pageInfo) - }} - /> - -
- ) - } -} \ No newline at end of file + + { + this.handleUpdateTemplate(record); + }}> + 更新模板 + + + + }> + +
+ ); + } + } + ]) + : result.concat([ + { + title: "操作", + key: "operate", + render: (text, record) => { + return ( + { + this.handleShowDetail(record); + }}> + 查看详情 + + ); + } + } + ]); + return result; + } + + render() { + const { payrollStore } = this.props; + const { + salarySendTableStore, + salarySendDataSource, + pageInfo, + loading + } = payrollStore; + return ( +
+ { + this.pageInfo.current = value; + this.props.handleListDataPageChange(value, this.pageInfo); + }} + onShowSizeChange={(current, pageSize) => { + this.pageInfo = { current, pageSize }; + this.props.handleListShowSizeChange(this.pageInfo); + }} + /> +
+ ); + } +} diff --git a/pc4mobx/hrmSalary/pages/payroll/index.js b/pc4mobx/hrmSalary/pages/payroll/index.js index fd12a3cd..b6624f3d 100644 --- a/pc4mobx/hrmSalary/pages/payroll/index.js +++ b/pc4mobx/hrmSalary/pages/payroll/index.js @@ -23,7 +23,7 @@ import SalarySendList from './SalarySendList' const { RangePicker } = DatePicker; -@inject('payrollStore') +@inject('payrollStore', 'taxAgentStore') @observer export default class Payroll extends React.Component { constructor(props) { @@ -225,7 +225,7 @@ export default class Payroll extends React.Component { } render() { - const { payrollStore } = this.props; + const { payrollStore, taxAgentStore: { showOperateBtn } } = this.props; const { loading, hasRight, form, condition, tableStore, showSearchAd, getTableDatas, doSearch, setShowSearchAd } = payrollStore; const { currentStep, selectedTab, templateSearchValue, templateSelect } = this.state if (!hasRight && !loading) { // 无权限处理 @@ -279,7 +279,10 @@ export default class Payroll extends React.Component { } else if(this.state.selectedKey == "1") { return (
- + { + showOperateBtn && + + } { this.state.initSelected && {this.handleTemplateSelectChange(value)}}/> } @@ -349,6 +352,7 @@ export default class Payroll extends React.Component { { this.state.selectedKey == 0 && { this.handleTemplateListEdit(record) }} @@ -372,7 +376,7 @@ export default class Payroll extends React.Component { onCopy={(record) => { this.handleTemplateListCopy(record) }} - + showOperateBtn={showOperateBtn} onDelete={(record)=> this.handleTemplateListDelete(record)} /> } diff --git a/pc4mobx/hrmSalary/pages/payroll/templateSettingList.js b/pc4mobx/hrmSalary/pages/payroll/templateSettingList.js index cbd384c1..a38b073f 100644 --- a/pc4mobx/hrmSalary/pages/payroll/templateSettingList.js +++ b/pc4mobx/hrmSalary/pages/payroll/templateSettingList.js @@ -1,96 +1,106 @@ -import React from 'react' -import { inject, observer } from 'mobx-react'; -import { Radio, Spin } from 'antd' -import { WeaTableNew } from 'comsMobx'; +import React from "react"; +import { inject, observer } from "mobx-react"; +import { Radio, Spin } from "antd"; +import { WeaTableNew } from "comsMobx"; const WeaTable = WeaTableNew.WeaTable; -@inject('payrollStore') +@inject("payrollStore") @observer export default class TemplateSettingList extends React.Component { - componentWillMount() { - const { payrollStore } = this.props; - const { getPayrollTemplateList } = payrollStore; - getPayrollTemplateList(); - } + componentWillMount() { + const { payrollStore } = this.props; + const { getPayrollTemplateList } = payrollStore; + getPayrollTemplateList(); + } - // 编辑操作按钮 - onEdit(record) { - this.props.onEdit && this.props.onEdit(record) - } + // 编辑操作按钮 + onEdit(record) { + this.props.onEdit && this.props.onEdit(record); + } - // 复制操作按钮 - onCopy(record) { - this.props.onCopy && this.props.onCopy(record) - } + // 复制操作按钮 + onCopy(record) { + this.props.onCopy && this.props.onCopy(record); + } - // 删除操作按钮 - onDelete(record) { - this.props.onDelete && this.props.onDelete(record) - } + // 删除操作按钮 + onDelete(record) { + this.props.onDelete && this.props.onDelete(record); + } - // 操作按钮 - onOperatesClick = (record, index, operate, flag) => { - switch(operate.index.toString()){ - case '0': // 编辑 - this.onEdit(record); - break; - case "1": // 复制 - this.onCopy(record); - break; - case "2": // 删除 - this.onDelete(record); - break; + // 操作按钮 + onOperatesClick = (record, index, operate, flag) => { + switch (operate.index.toString()) { + case "0": // 编辑 + this.onEdit(record); + break; + case "1": // 复制 + this.onCopy(record); + break; + case "2": // 删除 + this.onDelete(record); + break; + } + }; + + // 默认使用配置 + recordItemChange(record) { + const { payrollStore } = this.props; + const { changePayrollDefaultUse, getPayrollTemplateList } = payrollStore; + changePayrollDefaultUse(record.id).then(() => { + getPayrollTemplateList(); + }); + } + + // 增加编辑功能,重写columns绑定事件 + getColumns = columns => { + const { showOperateBtn } = this.props; + let newColumns = ""; + newColumns = columns.map(column => { + let newColumn = column; + newColumn.render = (text, record, index) => { + //前端元素转义 + let valueSpan = + record[newColumn.dataIndex + "span"] !== undefined + ? record[newColumn.dataIndex + "span"] + : record[newColumn.dataIndex]; + switch (newColumn.dataIndex) { + case "useType": + return ( + { + this.recordItemChange(record); + }} + /> + ); + default: + return
; } - }; + }; + return newColumn; + }); + return newColumns; + }; - // 默认使用配置 - recordItemChange(record) { - const { payrollStore } = this.props; - const { changePayrollDefaultUse, getPayrollTemplateList } = payrollStore; - changePayrollDefaultUse(record.id).then(() => { - getPayrollTemplateList() - }) - } - - // 增加编辑功能,重写columns绑定事件 - getColumns = (columns) => { - let newColumns = ''; - newColumns = columns.map(column => { - let newColumn = column; - newColumn.render = (text, record, index) => { //前端元素转义 - let valueSpan = record[newColumn.dataIndex + "span"] !== undefined ? record[newColumn.dataIndex + "span"] : record[newColumn.dataIndex]; - switch(newColumn.dataIndex) { - case "useType": - return {this.recordItemChange(record)}}/> - default: - return
- } - } - return newColumn; - }); - return newColumns; - } - - render() { - const { payrollStore } = this.props; - const { templateStore, loading } = payrollStore; - return ( -
- { loading ? -
- -
- : - - } - + render() { + const { payrollStore } = this.props; + const { templateStore, loading } = payrollStore; + return ( +
+ {loading + ?
+
- ) - } -} \ No newline at end of file + : } +
+ ); + } +}