From 44fb334837a25b82ca31dbe3204c27b0a4d98434 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=8E=E6=B0=B8=E9=A1=BA?= <971387674@qq.com> Date: Thu, 10 Oct 2024 16:29:36 +0800 Subject: [PATCH] =?UTF-8?q?custom/=E9=A2=86=E6=82=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lingyue/vouncherSummary/acctBookDialog.js | 69 +++++++++++++++++++ .../lingyue/vouncherSummary/conditions.js | 54 +++++++++++++++ .../lingyue/vouncherSummary/index.js | 20 ++++-- .../stores/custom-stores/lingyue/index.js | 2 + 4 files changed, 138 insertions(+), 7 deletions(-) create mode 100644 pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/acctBookDialog.js create mode 100644 pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/conditions.js diff --git a/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/acctBookDialog.js b/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/acctBookDialog.js new file mode 100644 index 00000000..8f719913 --- /dev/null +++ b/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/acctBookDialog.js @@ -0,0 +1,69 @@ +/* + * 领悦二开 + * 核算账簿-推送弹框 + * @Author: 黎永顺 + * @Date: 2024/10/10 + * @Wechat: + * @Email: 971387674@qq.com + * @description: +*/ +import React, { Component } from "react"; +import { inject, observer } from "mobx-react"; +import { WeaDialog, WeaLocaleProvider } from "ecCom"; +import { Button } from "antd"; +import { acctBookConditions } from "./conditions"; +import { getSearchs } from "../../../../util"; + +const getLabel = WeaLocaleProvider.getLabel; + +@inject("LYStore") +@observer +class AcctBookDialog extends Component { + constructor(props) { + super(props); + this.state = { conditions: [] }; + } + + componentWillReceiveProps(nextProps, nextContext) { + if (nextProps.visible !== this.props.visible && nextProps.visible) this.acctBookForm(); + if (nextProps.visible !== this.props.visible && !nextProps.visible) nextProps.LYStore.initAcctBookForm(); + } + + acctBookForm = () => { + this.setState({ + conditions: _.map(acctBookConditions, item => ({ + ...item, items: _.map(item.items, o => ({ ...o, label: getLabel(o.lanId, o.label) })) + })) + }, () => { + const { LYStore: { acctBookForm } } = this.props; + acctBookForm.initFormFields(this.state.conditions); + }); + }; + save = () => { + const { LYStore: { acctBookForm } } = this.props; + acctBookForm.validateForm().then(f => { + if (f.isValid) { + this.props.onPushNotifications(); + } else { + f.showErrors(); + } + }); + }; + + render() { + const { conditions } = this.state; + const { LYStore: { acctBookForm }, loading } = this.props; + return ( + {getLabel(111, "推送")} + ]} + > +
{getSearchs(acctBookForm, conditions, 1, false)}
+
+ ); + } +} + +export default AcctBookDialog; diff --git a/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/conditions.js b/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/conditions.js new file mode 100644 index 00000000..aa774d15 --- /dev/null +++ b/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/conditions.js @@ -0,0 +1,54 @@ +export const acctBookConditions = [ + { + items: [ + { + browserConditionParam: { + completeParams: { + type: 161, + fielddbtype: "browser.NCZBBrowser", + f_weaver_belongto_usertype: "0" + }, + conditionDataParams: { + type: "browser.NCZBBrowser", + fielddbtype: "browser.NCZBBrowser", + f_weaver_belongto_usertype: "0" + }, + dataParams: { + type: "browser.NCZBBrowser", + f_weaver_belongto_usertype: "0" + }, + destDataParams: { + type: "browser.NCZBBrowser", + f_weaver_belongto_usertype: "0" + }, + hasAddBtn: false, + hasAdvanceSerach: true, + idSeparator: ",", + isAutoComplete: 1, + isDetail: 0, + isMultCheckbox: false, + isSingle: true, + icon: "icon-coms-hrm", + linkUrl: "", + pageSize: 10, + quickSearchName: "zbmc", + replaceDatas: [], + title: "", + type: "161", + viewAttr: 3 + }, + conditionType: "BROWSER", + domkey: ["zbbm"], + fieldcol: 16, + label: "核算账簿", + lanId: 111, + labelcol: 6, + rules: "required|string", + value: "", + viewAttr: 3 + } + ], + title: "", + defaultshow: true + } +]; diff --git a/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/index.js b/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/index.js index 57069d5b..d0351d18 100644 --- a/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/index.js +++ b/pc4mobx/hrmSalary/pages/custom-pages/lingyue/vouncherSummary/index.js @@ -8,20 +8,23 @@ * @description: */ import React, { Component } from "react"; +import { inject, observer } from "mobx-react"; import { WeaLoadingGlobal, WeaLocaleProvider, WeaTableEdit, WeaTop } from "ecCom"; import { Button, message } from "antd"; import * as API from "../../../../apis/custom-apis/lingyue"; import { getQueryString, getURLParameters } from "../../../../util/url"; import CustomBrowser from "../../../../components/CustomBrowser"; +import AcctBookDialog from "./acctBookDialog"; const getLabel = WeaLocaleProvider.getLabel; const pzlxEnum = ["0", "1", "2"];//非计提类型的凭证列表可编辑 - +@inject("LYStore") +@observer class Index extends Component { constructor(props) { super(props); this.state = { - datas: [], totalData: [], columns: [], loading: false + datas: [], totalData: [], columns: [], loading: false, visible: false }; } @@ -91,9 +94,9 @@ class Index extends Component { }); }; pushNotifications = () => { - const { datas } = this.state; + const { datas } = this.state, { LYStore: { acctBookForm } } = this.props; const payload = { - ...getURLParameters(window.location.hash), + ...getURLParameters(window.location.hash), ...acctBookForm.getFormParams(), ffgsqc: decodeURI(getURLParameters(window.location.hash).ffgsqc), dataSource: _.head(datas).dataSource, details: _.map(datas, o => ({ @@ -110,6 +113,7 @@ class Index extends Component { this.setState({ loading: false }); if (status) { message.success(getLabel(111, "操作成功!")); + this.setState({ visible: false }); setTimeout(() => window.close(), 1500); } else { message.error(errormsg); @@ -118,14 +122,14 @@ class Index extends Component { }; render() { - const { datas, columns, loading, totalData } = this.state; + const { datas, columns, loading, totalData, visible } = this.state; const pzlx = getQueryString("pzlx"); return ( } showDropIcon={false} iconBgcolor="#F14A2D" className="custom_vouchers_lingyue" - buttons={[]}> + buttons={[]}>
this.tableEdit = el} showCopy={false} deleteConfirm @@ -145,6 +149,8 @@ class Index extends Component { datas={totalData} tableProps={{ showHeader: false }} columns={_.map(columns, o => ({ ...o, com: [{ key: o.column, type: "TEXT" }] }))}/>
+ this.setState({ visible: false })}/>
); diff --git a/pc4mobx/hrmSalary/stores/custom-stores/lingyue/index.js b/pc4mobx/hrmSalary/stores/custom-stores/lingyue/index.js index 9bce3ac6..a837cab1 100644 --- a/pc4mobx/hrmSalary/stores/custom-stores/lingyue/index.js +++ b/pc4mobx/hrmSalary/stores/custom-stores/lingyue/index.js @@ -4,4 +4,6 @@ import { WeaForm } from "comsMobx"; export class LYStore { @observable form = new WeaForm(); @action initForm = () => this.form = new WeaForm(); + @observable acctBookForm = new WeaForm(); //推送核算账簿form + @action initAcctBookForm = () => this.acctBookForm = new WeaForm();//重置推送核算账簿form }