From 122005be2b79c023282c1d29523ef7530020e5ff Mon Sep 17 00:00:00 2001 From: lys <971387674@qq.com> Date: Tue, 1 Apr 2025 17:46:38 +0800 Subject: [PATCH 1/3] =?UTF-8?q?release/3.0.1.2503.01-=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/apis/datapush.js | 4 + .../datapush/components/pushRecord/index.js | 86 +++++++++++++++++++ pc4mobx/hrmSalary/pages/datapush/index.js | 11 +++ 3 files changed, 101 insertions(+) create mode 100644 pc4mobx/hrmSalary/pages/datapush/components/pushRecord/index.js diff --git a/pc4mobx/hrmSalary/apis/datapush.js b/pc4mobx/hrmSalary/apis/datapush.js index 3b2adc5c..82b56587 100644 --- a/pc4mobx/hrmSalary/apis/datapush.js +++ b/pc4mobx/hrmSalary/apis/datapush.js @@ -24,3 +24,7 @@ export const savePushItemList = (params) => { export const deletePushItemList = (params) => { return WeaTools.callApi("/api/bs/hrmsalary/push/item/delete", "GET", params); }; +// 推送记录列表 +export const getPushRecordList = (params) => { + return postFetch("/api/bs/hrmsalary/push/record/list", params); +}; diff --git a/pc4mobx/hrmSalary/pages/datapush/components/pushRecord/index.js b/pc4mobx/hrmSalary/pages/datapush/components/pushRecord/index.js new file mode 100644 index 00000000..f73e220b --- /dev/null +++ b/pc4mobx/hrmSalary/pages/datapush/components/pushRecord/index.js @@ -0,0 +1,86 @@ +/* + * 数据推送 + * 推送记录 + * @Author: 黎永顺 + * @Date: 2025/4/1 + * @Wechat: + * @Email: 971387674@qq.com + * @description: +*/ +import React, { Component } from "react"; +import { WeaLocaleProvider, WeaTable } from "ecCom"; +import * as API from "../../../../apis/datapush"; + +const getLabel = WeaLocaleProvider.getLabel; + +class Index extends Component { + constructor(props) { + super(props); + this.state = { + columns: [], dataSource: [], loading: false, pageInfo: { current: 1, pageSize: 10, total: 0 }, + selectedRowKeys: [] + }; + } + + componentDidMount() { + this.getPushRecordList(); + } + + componentWillUnmount() { + this.setState({ selectedRowKeys: [] }); + } + + componentWillReceiveProps(nextProps, nextContext) { + if (nextProps.isQuery !== this.props.isQuery) this.setState({ + pageInfo: { ...this.state.pageInfo, current: 1 } + }, () => this.getPushRecordList(nextProps)); + } + + getPushRecordList = (props) => { + const { pageInfo } = this.state, { query } = props || this.props; + const payload = { ...pageInfo, ...query }; + this.setState({ loading: true }); + API.getPushRecordList(payload).then(({ status, data }) => { + this.setState({ loading: false }); + if (status) { + const { columns, list: dataSource, pageNum: current, pageSize, total } = data; + this.setState({ + pageInfo: { ...pageInfo, current, pageSize, total }, dataSource, + columns: [...columns, { + title: getLabel(111, "操作"), dataIndex: "opts", width: 120, render: (__, record) => ( + this.props.onChange("push", record)}>{getLabel(111, "推送")} + this.props.onChange("view", record)}>{getLabel(111, "查看详情")} + ) + }] + }); + } + }); + }; + + render() { + const { columns, dataSource, loading, pageInfo, selectedRowKeys } = this.state; + const pagination = { + ...pageInfo, + showTotal: total => `${getLabel(18609, "共")} ${total} ${getLabel(18256, "条")}`, + showQuickJumper: true, + showSizeChanger: true, + pageSizeOptions: ["10", "20", "50", "100"], + onShowSizeChange: (current, pageSize) => { + this.setState({ pageInfo: { ...pageInfo, current, pageSize } }, () => this.getPushRecordList()); + }, + onChange: current => { + this.setState({ pageInfo: { ...pageInfo, current } }, () => this.getPushRecordList()); + } + }; + const rowSelection = { + selectedRowKeys, + onChange: v => this.setState({ selectedRowKeys: v }) + }; + return (); + } +} + +export default Index; diff --git a/pc4mobx/hrmSalary/pages/datapush/index.js b/pc4mobx/hrmSalary/pages/datapush/index.js index 1bbf5add..20602a52 100644 --- a/pc4mobx/hrmSalary/pages/datapush/index.js +++ b/pc4mobx/hrmSalary/pages/datapush/index.js @@ -12,6 +12,7 @@ import { inject, observer } from "mobx-react"; import { WeaInputSearch, WeaLocaleProvider, WeaReqTop } from "ecCom"; import * as API from "../../apis/datapush"; import DatapushList from "./components/datapushList"; +import PushRecord from "./components/pushRecord"; import DatapushDialog from "./components/DPDialog"; import { Button, message, Modal } from "antd"; import "./index.less"; @@ -72,6 +73,16 @@ class Index extends Component { ] : [ this.setState({ query: { ...query, name: v } })}/>], children: + }, + { + title: getLabel(111, "推送记录"), key: "pushRecord", showDropIcon: false, dropMenuDatas: [], + buttons: showOperateBtn ? [ + , + this.setState({ query: { ...query, name: v } })}/> + ] : [ this.setState({ query: { ...query, name: v } })}/>], + children: } ]; return ( From 4df7696f0188b5f11833bd8e48101dd034e00d11 Mon Sep 17 00:00:00 2001 From: lys <971387674@qq.com> Date: Wed, 2 Apr 2025 10:50:19 +0800 Subject: [PATCH 2/3] =?UTF-8?q?release/3.0.1.2503.01-=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/apis/datapush.js | 4 + .../components/pushRecord/pushDetailDialog.js | 77 +++++++++++++++++++ pc4mobx/hrmSalary/pages/datapush/index.js | 24 ++++-- pc4mobx/hrmSalary/pages/datapush/index.less | 37 ++++++++- 4 files changed, 135 insertions(+), 7 deletions(-) create mode 100644 pc4mobx/hrmSalary/pages/datapush/components/pushRecord/pushDetailDialog.js diff --git a/pc4mobx/hrmSalary/apis/datapush.js b/pc4mobx/hrmSalary/apis/datapush.js index 82b56587..27d73608 100644 --- a/pc4mobx/hrmSalary/apis/datapush.js +++ b/pc4mobx/hrmSalary/apis/datapush.js @@ -28,3 +28,7 @@ export const deletePushItemList = (params) => { export const getPushRecordList = (params) => { return postFetch("/api/bs/hrmsalary/push/record/list", params); }; +// 推送记录详细列表 +export const getPushRecordDetail = (params) => { + return postFetch("/api/bs/hrmsalary/push/record/detail", params); +}; diff --git a/pc4mobx/hrmSalary/pages/datapush/components/pushRecord/pushDetailDialog.js b/pc4mobx/hrmSalary/pages/datapush/components/pushRecord/pushDetailDialog.js new file mode 100644 index 00000000..554cfc70 --- /dev/null +++ b/pc4mobx/hrmSalary/pages/datapush/components/pushRecord/pushDetailDialog.js @@ -0,0 +1,77 @@ +/* + * 推送记录 + * 查看详情 + * @Author: 黎永顺 + * @Date: 2025/4/2 + * @Wechat: + * @Email: 971387674@qq.com + * @description: +*/ +import React, { Component } from "react"; +import { WeaInputSearch, WeaLocaleProvider, WeaSlideModal, WeaTable, WeaTop } from "ecCom"; +import { getPushRecordDetail } from "../../../../apis/datapush"; + +const getLabel = WeaLocaleProvider.getLabel; + +class PushDetailDialog extends Component { + constructor(props) { + super(props); + this.state = { + query: { name: "" }, dataSource: [], columns: [], pageInfo: { current: 1, pageSize: 10, total: 0 }, loading: false + }; + } + + componentWillReceiveProps(nextProps, nextContext) { + if (nextProps.visible !== this.props.visible && nextProps.visible) this.getPushRecordDetail(nextProps); + if (nextProps.visible !== this.props.visible && !nextProps.visible) this.setState({ + query: { name: "" }, pageInfo: { current: 1, pageSize: 10, total: 0 } + }); + } + + getPushRecordDetail = (props) => { + const { recordId } = props || this.props, { pageInfo, query } = this.state; + const payload = { ...query, ...pageInfo, recordId }; + this.setState({ loading: true }); + getPushRecordDetail(payload).then(({ status, data }) => { + this.setState({ loading: false }); + if (status) { + const { columns, list: dataSource, pageNum: current, pageSize, total } = data; + this.setState({ columns, dataSource, pageInfo: { current, pageSize, total } }); + } + }); + }; + + render() { + const { query, loading, dataSource, columns, pageInfo } = this.state; + const pagination = { + ...pageInfo, + showTotal: total => `${getLabel(18609, "共")} ${total} ${getLabel(18256, "条")}`, + showQuickJumper: true, + showSizeChanger: true, + pageSizeOptions: ["10", "20", "50", "100"], + onShowSizeChange: (current, pageSize) => { + this.setState({ pageInfo: { ...pageInfo, current, pageSize } }, () => this.getPushRecordDetail()); + }, + onChange: current => { + this.setState({ pageInfo: { ...pageInfo, current } }, () => this.getPushRecordDetail()); + } + }; + return (} iconBgcolor="#F14A2D" + buttons={[ this.setState({ + pageInfo: { ...pageInfo, current: 1 } + }, () => this.getPushRecordDetail())} + onChange={v => this.setState({ query: { ...query, name: v } })}/>]}/> + } + direction="right" top={0} width={800} height={100} + measureT="%" measureX="px" measureY="%" + content={
+ +
} + />); + } +} + +export default PushDetailDialog; diff --git a/pc4mobx/hrmSalary/pages/datapush/index.js b/pc4mobx/hrmSalary/pages/datapush/index.js index 20602a52..4bd1458b 100644 --- a/pc4mobx/hrmSalary/pages/datapush/index.js +++ b/pc4mobx/hrmSalary/pages/datapush/index.js @@ -14,7 +14,9 @@ import * as API from "../../apis/datapush"; import DatapushList from "./components/datapushList"; import PushRecord from "./components/pushRecord"; import DatapushDialog from "./components/DPDialog"; +import PushDetailDialog from "./components/pushRecord/pushDetailDialog"; import { Button, message, Modal } from "antd"; +import cs from "classnames"; import "./index.less"; const getLabel = WeaLocaleProvider.getLabel; @@ -26,7 +28,8 @@ class Index extends Component { super(props); this.state = { selectedKey: "datapush", isQuery: false, query: { name: "" }, - DPDialog: { visible: false, title: "", detail: {} } //数据推送弹框 + DPDialog: { visible: false, title: "", detail: {} }, //数据推送弹框 + pushDetailDialog: { visible: false, recordId: "" } //数据推送记录查看推送详情弹框 }; } @@ -54,13 +57,16 @@ class Index extends Component { } }); break; + case "view": + this.setState({ pushDetailDialog: { visible: true, recordId: detail.id } }); + break; default: break; } }; render() { - const { selectedKey, DPDialog, isQuery, query } = this.state; + const { selectedKey, DPDialog, isQuery, query, pushDetailDialog } = this.state; const { taxAgentStore: { PageAndOptAuth } } = this.props; const showOperateBtn = PageAndOptAuth.opts.includes("admin"); const tabs = [ @@ -77,7 +83,7 @@ class Index extends Component { { title: getLabel(111, "推送记录"), key: "pushRecord", showDropIcon: false, dropMenuDatas: [], buttons: showOperateBtn ? [ - , + , this.setState({ query: { ...query, name: v } })}/> ] : [} selectedKey={selectedKey} - iconBgcolor="#F14A2D" tabDatas={tabs} className="datapush_wrapper" buttonSpace={10} - buttons={_.find(tabs, o => selectedKey === o.key).buttons} - onChange={selectedKey => this.setState({ selectedKey })} + iconBgcolor="#F14A2D" tabDatas={tabs} + className={cs("datapush_wrapper", { "reqZindex0": pushDetailDialog.visible })} + buttonSpace={10} buttons={_.find(tabs, o => selectedKey === o.key).buttons} + onChange={selectedKey => this.setState({ + selectedKey, pushDetailDialog: { ...pushDetailDialog, visible: false } + })} showDropIcon={_.find(tabs, o => selectedKey === o.key).showDropIcon} onDropMenuClick={this.handleOperate} dropMenuDatas={_.find(tabs, o => selectedKey === o.key).dropMenuDatas} > @@ -98,6 +107,9 @@ class Index extends Component { {/*数据推送框*/} this.setState({ DPDialog: { ...DPDialog, visible: false } })} onSearch={this.handleAdvanceSearch}/> + this.setState({ + pushDetailDialog: { ...pushDetailDialog, visible: false } + })}/> ); } diff --git a/pc4mobx/hrmSalary/pages/datapush/index.less b/pc4mobx/hrmSalary/pages/datapush/index.less index 57ea36c8..316932b9 100644 --- a/pc4mobx/hrmSalary/pages/datapush/index.less +++ b/pc4mobx/hrmSalary/pages/datapush/index.less @@ -77,6 +77,42 @@ } } } + + .pushDetailDialog { + .wea-slide-modal-content { + height: 100%; + + .wea-new-table { + background: #FFF; + } + + .pushDetail_content { + height: 100%; + background: #F6F6F6; + padding: 8px 16px; + } + } + + .wea-slide-modal-title { + background: #FFF; + text-align: left; + height: 44px; + } + + .wea-new-top { + background: #FFF; + + .ant-col-10 { + padding-right: 50px !important; + } + } + } +} + +.reqZindex0 { + .wea-new-top-req { + z-index: 0 !important; + } } .custom_item_treeselect { @@ -131,4 +167,3 @@ } } } - From 4059e8364e3669e1727c9e55f370d779393d7dca Mon Sep 17 00:00:00 2001 From: lys <971387674@qq.com> Date: Wed, 2 Apr 2025 16:16:38 +0800 Subject: [PATCH 3/3] =?UTF-8?q?release/3.0.1.2503.01-=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pc4mobx/hrmSalary/pages/datapush/index.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pc4mobx/hrmSalary/pages/datapush/index.js b/pc4mobx/hrmSalary/pages/datapush/index.js index 4bd1458b..bdabd479 100644 --- a/pc4mobx/hrmSalary/pages/datapush/index.js +++ b/pc4mobx/hrmSalary/pages/datapush/index.js @@ -98,7 +98,8 @@ class Index extends Component { className={cs("datapush_wrapper", { "reqZindex0": pushDetailDialog.visible })} buttonSpace={10} buttons={_.find(tabs, o => selectedKey === o.key).buttons} onChange={selectedKey => this.setState({ - selectedKey, pushDetailDialog: { ...pushDetailDialog, visible: false } + selectedKey, pushDetailDialog: { ...pushDetailDialog, visible: false }, + DPDialog: { ...DPDialog, visible: false } })} showDropIcon={_.find(tabs, o => selectedKey === o.key).showDropIcon} onDropMenuClick={this.handleOperate} dropMenuDatas={_.find(tabs, o => selectedKey === o.key).dropMenuDatas} @@ -107,6 +108,7 @@ class Index extends Component { {/*数据推送框*/} this.setState({ DPDialog: { ...DPDialog, visible: false } })} onSearch={this.handleAdvanceSearch}/> + {/*推送记录查看详情*/} this.setState({ pushDetailDialog: { ...pushDetailDialog, visible: false } })}/>