Commit e406df68 authored by 申中慧's avatar 申中慧

feat: 迁移页面

parent 98942151
......@@ -2,12 +2,196 @@
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- 浏览器缓存 -->
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"
/>
<title>Cpas Cloud</title>
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
</head>
<body>
<div id="root"></div>
<div id="root">
<style>
html,
body,
#root {
height: 100%;
margin: 0;
padding: 0;
}
#root {
background-repeat: no-repeat;
background-size: 100% auto;
}
.page-loading-warp {
display: flex;
align-items: center;
justify-content: center;
padding: 98px;
}
.ant-spin {
position: absolute;
display: none;
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin: 0;
padding: 0;
color: rgba(0, 0, 0, 0.65);
color: #1890ff;
font-size: 14px;
font-variant: tabular-nums;
line-height: 1.5;
text-align: center;
list-style: none;
opacity: 0;
-webkit-transition: -webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: -webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
transition: transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),
-webkit-transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);
-webkit-font-feature-settings: 'tnum';
font-feature-settings: 'tnum';
}
.ant-spin-spinning {
position: static;
display: inline-block;
opacity: 1;
}
.ant-spin-dot {
position: relative;
display: inline-block;
width: 20px;
height: 20px;
font-size: 20px;
}
.ant-spin-dot-item {
position: absolute;
display: block;
width: 9px;
height: 9px;
background-color: #1890ff;
border-radius: 100%;
-webkit-transform: scale(0.75);
-ms-transform: scale(0.75);
transform: scale(0.75);
-webkit-transform-origin: 50% 50%;
-ms-transform-origin: 50% 50%;
transform-origin: 50% 50%;
opacity: 0.3;
-webkit-animation: antspinmove 1s infinite linear alternate;
animation: antSpinMove 1s infinite linear alternate;
}
.ant-spin-dot-item:nth-child(1) {
top: 0;
left: 0;
}
.ant-spin-dot-item:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}
.ant-spin-dot-item:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}
.ant-spin-dot-item:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}
.ant-spin-dot-spin {
-webkit-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-animation: antrotate 1.2s infinite linear;
animation: antRotate 1.2s infinite linear;
}
.ant-spin-lg .ant-spin-dot {
width: 32px;
height: 32px;
font-size: 32px;
}
.ant-spin-lg .ant-spin-dot i {
width: 14px;
height: 14px;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
.ant-spin-blur {
background: #fff;
opacity: 0.5;
}
}
@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}
@keyframes antSpinMove {
to {
opacity: 1;
}
}
@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
</style>
<div
style="
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
min-height: 420px;
"
>
<img src="/icons/cpas.svg" alt="logo" width="256" />
<div class="page-loading-warp">
<div class="ant-spin ant-spin-lg ant-spin-spinning">
<span class="ant-spin-dot ant-spin-dot-spin"
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
><i class="ant-spin-dot-item"></i><i class="ant-spin-dot-item"></i
></span>
</div>
</div>
<div style="display: flex; align-items: center; justify-content: center">
<img src="/icons/you.svg" width="25" style="margin-right: 8px" />
友数聚
</div>
</div>
</div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>
......@@ -18,18 +18,21 @@
{
"path": "/ReportSys",
"name": "报告系统",
"element": "reportSys",
"type": "component",
"closable": false,
"hideInMenu": true
},
{
"path": "/ReportSys/StatementData",
"element": "statementData",
"name": "报表项目基础数据",
"type": "component",
"hideInMenu": true
},
{
"path": "/ReportSys/unFinancialStatements",
"element": "unFinancialStatements",
"name": "未审财务报表",
"type": "component",
"hideInMenu": true
......@@ -37,24 +40,28 @@
{
"name": "TB汇总",
"path": "/ReportSys/trialSys/trialBalance",
"element": "trialBalance",
"type": "component",
"hideInMenu": true
},
{
"name": "TB-调整抵消",
"path": "/ReportSys/trialSys/AuditAdjust",
"element": "accountAdjust",
"type": "component",
"hideInMenu": true
},
{
"name": "TB-模拟调整",
"path": "/ReportSys/UnFinancialSys/accountAdjust",
"element": "accountAdjust",
"type": "component",
"hideInMenu": true
},
{
"name": "附注与分析",
"path": "/ReportSys/reportAnalysis",
"element": "reportAnalysis",
"type": "component",
"hideInMenu": true
},
......@@ -62,24 +69,28 @@
{
"path": "/ReportSys/approvedFinance",
"name": "审定报表",
"element": "approvedFinance",
"type": "component",
"hideInMenu": true
},
{
"name": "财务报表核对",
"path": "/ReportSys/UnFinancialSys/financialStatementsCheck",
"element": "financialStatementsCheck",
"type": "component",
"hideInMenu": true
},
{
"name": "长投及关联交易—内部往来统计",
"path": "/ReportSys/trialSys/internalTran",
"element": "internalTran",
"type": "component",
"hideInMenu": true
},
{
"name": "报告生成",
"path": "/ReportSys/reportBuilder",
"element": "reportBuilder",
"type": "component",
"hideInMenu": true
},
......@@ -91,16 +102,19 @@
{
"type": "component",
"name": "单体分录汇总",
"element": "entriesSummary",
"path": "/groupLevelStatistics/entriesSummary"
},
{
"type": "component",
"name": "往来明细表汇总",
"element": "detailsSummary",
"path": "/groupLevelStatistics/detailsSummary"
},
{
"type": "component",
"name": "函证统计",
"element": "correspondenceStatistics",
"path": "/groupLevelStatistics/correspondenceStatistics"
}
]
......
import { InputRef, Space } from 'antd'
import React, { useRef } from 'react'
import { useModel, SelectLang, setLocale } from 'umi'
import { useModel, setLocale } from 'umi'
import Avatar from './AvatarDropdown'
import styles from './index.less'
import ThemePopover from './ThemePopover'
......@@ -183,7 +183,7 @@ const GlobalHeaderRight: React.FC = () => {
console.log('web app user config: ', webAppUserConfig)
if (cpasLanguage) {
setLocale(cpasLanguage, true)
setLocale(cpasLanguage)
}
if (themeData) {
if (cpasTheme) {
......
......@@ -27,3 +27,4 @@ export function customLocale() {
locale: loca
}
}
......@@ -130,7 +130,7 @@ const LayoutPage: React.FC = () => {
return m
}
// AudTabPage.getInstance().initPages(initialState?.sysName)
AudTabPage.getInstance().initPages(initialState?.sysName)
const inFrameLayout = isRunInFrame ? { hide: true, headerHeight: 0 } : {}
const isHideHeader = getIsHideHeader()
//通过配置url加参数,可以隐藏logo的头 如 "url": "http://localhost:8000?hideHeader=1", //不配置的知表示为显示
......@@ -211,7 +211,6 @@ const LayoutPage: React.FC = () => {
// navigate(params?.pathname)
}}
menuItemRender={(item, dom) => {
console.log('🚀 ~ file: index.tsx:280 ~ item:', item)
return (
<div
onClick={() => {
......
......@@ -9,7 +9,7 @@ const SuspenceFallbackLoading: FC = () => {
height: '100vh',
display: 'flex',
alignItems: 'center',
justifyItems: 'center'
justifyContent: 'center'
}}
>
<Spin tip="加载中..."></Spin>
......
import { useState, useEffect, useContext, useMemo } from 'react';
import { Tabs } from 'antd';
import { history } from 'umi';
import { mainRenderer } from '@/utils/electronUtil';
import { APP_NAME, getQueryParams } from '@/utils';
export const panes = [
{
key: 'eas6',
label: 'IAS云平台',
url: 'http://192.168.0.100:8086/cpas-cloud/eas6/?hideHeader=1',
},
{
key: 'ac6',
label: 'IAS函证工具',
url: 'http://192.168.0.100:8086/cpas-cloud/ac6/?hideHeader=1',
},
{
key: 'RelatedTransactions',
label: '报告生成',
url: 'http://192.168.0.100:8086/cpas-cloud/ac6/?hideHeader=1',
},
];
export interface BalanceDetailProps {}
const creatTabPanes = () => {
return panes.map((item, index) => {
const key = String(index);
return (
<Tabs.TabPane tab={item.label} key={key}>
<h5>我是展位符</h5>
</Tabs.TabPane>
);
});
};
const BalanceDetail: React.FC<BalanceDetailProps> = () => {
const search = getQueryParams(history.location.search);
const { groupId = '' } = search;
function onChange(activeKey: string) {
mainRenderer('updateBalance', {
id: groupId,
appName: APP_NAME,
activeInx: Number(activeKey),
});
}
return (
<div className="h-screen px-4">
<Tabs onChange={onChange}>{creatTabPanes()}</Tabs>
</div>
);
};
export default BalanceDetail;
import React from 'react'
import { Tabs, Menu, Button } from 'antd'
import React from 'react';
import { Tabs, Menu, Button } from 'antd';
// import type { MenuProps } from 'antd';
import { mainRenderer } from '@/utils/electronUtil'
import { APP_NAME, getQueryParams } from '@/utils'
import { createMicroPageUrl } from '@/utils/pub'
import WebFrame from '../web_frame'
import { isOpenFromPlatform } from '@/utils/env'
import { history } from 'umi';
import { mainRenderer } from '@/utils/electronUtil';
import { APP_NAME, getQueryParams } from '@/utils';
import { createMicroPageUrl } from '@/utils/pub';
import WebFrame from '../web_frame';
import { isOpenFromPlatform } from '@/utils/env';
// import { openBalanceWindow } from '../mergeUtils';
// type MenuItem = Required<MenuProps>['items'][number];
// const items: MenuProps['items'] = [
// {
// label: '报表项目基础数据',
// key: '0',
// },
// {
// label: '未审报表',
// key: 'sub1',
// children: [
// {
// label: '未审报表',
// key: '1',
// },
// {
// label: '未审报表',
// key: '2',
// },
// {
// label: '未审报表',
// key: '3',
// },
// ],
// },
// {
// label: 'TB汇总',
// key: 'sub2',
// children: [
// {
// label: 'TB',
// key: '4',
// },
// ],
// },
// ];
// submenu keys of first level
// const rootSubmenuKeys = ['sub1', 'sub2', 'sub4'];
export const getDetailMenus = () => [
{
key: 'statementData',
label: '报表基础数据',
path: '/ReportSys/StatementData'
path: '/ReportSys/StatementData',
},
{
key: 'unFinancialStatements',
label: '未审财务报表',
path: '/ReportSys/unFinancialStatements'
path: '/ReportSys/unFinancialStatements',
},
{
label: 'TB汇总',
path: '/ReportSys/trialSys/trialBalance',
type: 'component'
type: 'component',
},
{
label: 'TB-调整抵消',
path: '/ReportSys/trialSys/AuditAdjust',
type: 'component'
type: 'component',
},
{
label: 'TB-模拟调整',
path: '/ReportSys/UnFinancialSys/accountAdjust',
type: 'component'
type: 'component',
},
{
label: 'TB-附注与分析',
path: '/ReportSys/reportAnalysis',
type: 'component',
hideInMenu: false
hideInMenu: false,
},
{
path: '/ReportSys/approvedFinance',
label: '审定报表',
type: 'component',
hideInMenu: false
hideInMenu: false,
},
{
label: '审定报表-财务报表核对',
path: '/ReportSys/UnFinancialSys/financialStatementsCheck',
type: 'component'
type: 'component',
},
{
label: '长投及关联交易—内部往来统计',
path: '/ReportSys/trialSys/internalTran',
type: 'component'
type: 'component',
},
{
label: '报告生成',
path: '/ReportSys/reportBuilder',
type: 'component',
hideInMenu: false
}
]
hideInMenu: false,
},
];
const creatTabPanes = () => {
return getDetailMenus().map((item, index) => {
const key = String(index)
const key = String(index);
return (
<Tabs.TabPane tab={item.label} key={key}>
{isOpenFromPlatform ? (
......@@ -75,13 +116,13 @@ const creatTabPanes = () => {
<></>
)}
</Tabs.TabPane>
)
})
}
);
});
};
const ReportSys: React.FC = () => {
const search = getQueryParams(history.location.search)
const { groupId = '' } = search
const search = getQueryParams(history.location.search);
const { groupId = '' } = search;
// const [collapsed, setCollapsed] = useState(true);
// const [inlineIndent, setInlineIndent] = useState(10);
......@@ -101,8 +142,8 @@ const ReportSys: React.FC = () => {
mainRenderer('updateBalance', {
id: groupId,
appName: APP_NAME,
activeInx: Number(activeKey)
})
activeInx: Number(activeKey),
});
}
// function openWin() {
// const data = {
......@@ -149,7 +190,7 @@ const ReportSys: React.FC = () => {
items={items}
/> */}
</div>
)
}
);
};
export default ReportSys
export default ReportSys;
import { moneyFormat, rTimes } from "@/utils";
import { CheckBox } from "devextreme-react";
export const accountAdjustCol = [
{
dataField: "XHs",
dataType: "string",
caption: "序号",
width: 90,
alignment: "center",
cellRender: (cell: any) => {
return cell.rowIndex
}
},
{
dataField: "Remarks",
dataType: "string",
caption: "调整说明",
width: 200,
alignment: "left",
// cellRender: (cell: any) => {
// console.log(cell, '----celll');
// }
},
{
dataField: "ItemNames3",
dataType: "string",
caption: "报表项目",
width: 200,
alignment: "left",
},
{
dataField: "YSKMBH",
dataType: "string",
caption: "科目编号",
width: 200,
alignment: "left",
},
{
dataField: "KMMC",
dataType: "string",
caption: "科目名称",
width: 200,
alignment: "left",
},
{
dataField: "HSXMMC",
dataType: "string",
caption: "辅助账名称",
width: 200,
alignment: "left",
},
{
dataField: "JF",
dataType: "string",
caption: "借方金额",
width: 80,
alignment: "right",
cellRender: (cell: any) => {
const DFValue = typeof cell.data.JF === 'string' ? parseFloat(cell.data.JF.replace(/,/g, '')) : Number(cell.data.JF);
return cell.data.JF === 0 || cell.data.JF === null ? "" : moneyFormat(DFValue);;
}
},
{
dataField: "DF",
dataType: "string",
caption: "贷方金额",
width: 80,
alignment: "right",
cellRender: (cell: any) => {
const DFValue = typeof cell.data.DF === 'string' ? parseFloat(cell.data.DF.replace(/,/g, '')) : Number(cell.data.DF);
return cell.data.DF === 0 || cell.data.DF === null ? "" : moneyFormat(DFValue);;
}
},
{
dataField: "Remark",
dataType: "string",
caption: "备注",
width: 120,
alignment: "left",
},
{
dataField: "IsJZFL",
// dataType: "string",
caption: "结转分录",
width: 120,
alignment: "center",
cellRender: (cell: any) => {
return <CheckBox value={cell.data.IsJZFL ? true : false} />
}
},
{
dataField: "IsTZ",
dataType: "string",
caption: "是否调整",
alignment: "center",
cellRender: (cell: any) => {
if (cell.data.IsTZ === 1) {
return <span></span>
} else if (cell.data.IsTZ === 0) {
return <span></span>
}
}
},
{
dataField: "EditUser",
dataType: "string",
caption: "编辑人",
width: 80,
alignment: "center",
},
{
dataField: "EditDate",
dataType: "string",
caption: "编辑时间",
alignment: "center",
cellRender: (cell: any) => {
return <span>{rTimes(cell.data.EditDate)}</span>
}
},
// {
// dataField: "operation",
// dataType: "string",
// caption: "行操作",
// width: 100,
// alignment: "center",
// cellRender: (cell: any) => {
// return <CpasIcon type='icon-delete' fontSize={16} />
// }
// },
];
export const auditAdjustCol = [
{
dataField: "XHs",
dataType: "string",
caption: "序号",
width: 90,
alignment: "center",
cellRender: (cell: any) => {
return cell.rowIndex
}
},
{
dataField: "Remarks",
dataType: "string",
caption: "调整说明",
width: 200,
alignment: "left",
},
{
dataField: "TZLX",
dataType: "string",
caption: "调整类型",
width: 110,
alignment: "left",
cellRender: (cell: any) => {
if (cell.data.TZLX === 2) {
return <span>账项调整</span>
} else if (cell.data.TZLX === 3) {
return <span>报表调整</span>
} else if (cell.data.TZLX === 4) {
return <span>其他调整</span>
}
}
},
{
dataField: "AdjustType",
dataType: "string",
caption: "调整分类",
width: 110,
alignment: "left",
cellRender: (cell: any) => {
if (cell.data.AdjustType === 1) {
return <span>会计差错更正</span>
} else if (cell.data.AdjustType === 2) {
return <span>会计政策变更</span>
} else if (cell.data.AdjustType === 3) {
return <span>其他</span>
}
}
},
{
dataField: "ItemNames3",
dataType: "string",
caption: "报表项目",
width: 200,
alignment: "left",
},
{
dataField: "YSKMBH",
dataType: "string",
caption: "科目编号",
width: 200,
alignment: "left",
},
{
dataField: "KMMC",
dataType: "string",
caption: "科目名称",
width: 200,
alignment: "left",
},
{
dataField: "HSXMMC",
dataType: "string",
caption: "辅助账名称",
width: 200,
alignment: "left",
},
{
dataField: "JF",
dataType: "string",
caption: "借方金额",
width: 80,
alignment: "right",
cellRender: (cell: any) => {
const DFValue = typeof cell.data.JF === 'string' ? parseFloat(cell.data.JF.replace(/,/g, '')) : Number(cell.data.JF);
return cell.data.JF === 0 || cell.data.JF === null ? "" : moneyFormat(DFValue);;
}
},
{
dataField: "DF",
dataType: "string",
caption: "贷方金额",
width: 80,
alignment: "right",
cellRender: (cell: any) => {
const DFValue = typeof cell.data.DF === 'string' ? parseFloat(cell.data.DF.replace(/,/g, '')) : Number(cell.data.DF);
return cell.data.DF === 0 || cell.data.DF === null ? "" : moneyFormat(DFValue);;
}
},
{
dataField: "Remark",
dataType: "string",
caption: "备注",
// width: 120,
alignment: "left",
},
{
dataField: "IsRetrospect",
dataType: "string",
caption: "仅追溯本期期初",
// width: 120,
alignment: "center",
cellRender: (cell: any) => {
return <CheckBox value={cell.data.IsRetrospect ? true : false} />
}
},
{
dataField: "IsJZFL",
dataType: "string",
caption: "结转分录",
// width: 120,
alignment: "center",
cellRender: (cell: any) => {
return <CheckBox value={cell.data.IsJZFL ? true : false} />
}
},
{
dataField: "IsTZ",
dataType: "string",
caption: "是否调整",
// width: 50,
alignment: "center",
cellRender: (cell: any) => {
if (cell.data.IsTZ === 1) {
return <span></span>
} else if (cell.data.IsTZ === 0) {
return <span></span>
}
}
},
{
dataField: "EditUser",
dataType: "string",
caption: "编辑人",
// width: 80,
alignment: "center",
},
{
dataField: "EditDate",
dataType: "string",
caption: "编辑时间",
// width: 100,
alignment: "center",
cellRender: (cell: any) => {
return <span>{rTimes(cell.data.EditDate)}</span>
}
},
// {
// dataField: "operation",
// dataType: "string",
// caption: "行操作",
// width: 100,
// alignment: "center",
// cellRender: (cell: any) => {
// return <CpasIcon type='icon-delete' fontSize={16} />
// }
// },
];
import { CheckBox } from "devextreme-react";
export const bottomColumns = [
{
dataField: "itemNames3",
dataType: "string",
caption: "报表项目",
width: 100,
alignment: "left",
allowResizing: true
},
{
dataField: "YSKMBH",
dataType: "string",
caption: "科目编号",
width: 100,
alignment: "right",
allowResizing: true
},
{
dataField: "KMMC",
dataType: "string",
caption: "科目名称",
width: 180,
alignment: "left",
},
{
dataField: "HSXMMC",
dataType: "string",
caption: "辅助账名称",
width: 120,
alignment: "left",
},
{
dataField: "JF",
caption: "借方金额",
width: 80,
alignment: "right",
dataType: "number",
dataTypeCustom: "money-number",
editorOptions: {
format: { type: 'decimal', currency: 'CNY', precision: 2 }
},
},
{
dataField: "DF",
caption: "贷方金额",
width: 80,
alignment: "right",
dataType: "number",
dataTypeCustom: "money-number",
editorOptions: {
format: { type: 'decimal', currency: 'CNY', precision: 2 }
},
},
{
dataField: "isJZFL",
dataType: "string",
caption: "结转分录",
width: 80,
alignment: "center",
cellRender: (cell: any) => {
return <CheckBox value={cell.data.isJZFL ? true : false} />
}
},
{
dataField: "remark",
dataType: "string",
caption: "备注",
width: 100,
alignment: "left",
},
];
import { CheckBox } from "devextreme-react";
import React from "react";
import { CpasIcon } from '~/public/cpas-ui';
export const bottomColumns = [
{
dataField: "Caption",
dataType: "string",
caption: "报表项目",
width: 200,
alignment: "left",
allowResizing: true
},
{
dataField: "code",
dataType: "string",
caption: "科目编号",
width: 200,
alignment: "left",
allowResizing: true
},
]
.TextStyle.dx-toolbar-label .dx-toolbar-item-content > div {
font-size: 14px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: red;
}
// .FromGdata-Style.dx-datagrid-borders > .dx-datagrid-filter-panel, .dx-datagrid-borders > .dx-datagrid-headers{
// opacity: 0;
// }
// .FromGdata-Style .dx-datagrid-borders .dx-datagrid-rowsview, .dx-datagrid-headers + .dx-datagrid-rowsview, .dx-datagrid-rowsview.dx-datagrid-after-headers{
// border-bottom: 1px solid;
// }
\ No newline at end of file
import getApiData from "@/services/cpasRequest";
import notify from 'devextreme/ui/notify';
// 初始化需重分类的数据
export async function adjustingEntryInit(params: {
dbname: string,
billID: string,
isQC: boolean,
Data_ID: string
}) {
const res = await getApiData("account.adjustingEntry.CFL.init", params);
if (res.ok) return res.data;
}
// 获取待重分类一级科目列表
export async function getTopKMMCList(params: {
dbname: string,
billID: string,
Data_ID: string
}) {
const res = await getApiData("account.adjustingEntry.CFL.getTopKMMCList", params);
if (res.ok) return res.data;
}
// 获取待重分类总账辅助账列表
export async function getDataList(params: {
dbname: string,
billID: string,
Data_ID: string,
KMMC?: string,
ZWType?: number,
isRefresh?: boolean
}) {
const res = await getApiData("account.adjustingEntry.CFL.getDataList", params);
if (res.ok) return res.data;
}
// 获取待重分类总账辅助账列表
export async function updateKMMap(params: {
dbname: string,
billID: string,
YSKMBH: string,
GUID: string,
YSHSXMBH: string,
HSXMLXMC: string,
HSXMLXBH: string,
KMMC: string,
KMBH: string,
HSXMMC: string,
HSXMBH: string,
YSHSXMMC: string,
itemNames3: string,
YSKMMC: string,
}) {
const res = await getApiData("account.adjustingEntry.CFL.updateKMMap", params);
if (res.ok) return res.data;
}
// 更新全部待重分类记录的选中状态
export async function updateSelectState(params: {
dbname: string,
billID: string,
KMMC?: string,
ZWType?: string | number,
isSelected: boolean,
}) {
const res = await getApiData("account.adjustingEntry.CFL.updateSelectState.all", params);
if (res.ok) return res.ok;
}
// 更新记录选中
export async function updateSelectStateAdjustingEntry(params: {
dbname: string,
billID: string,
isSelected: boolean,
GUIDs: any
}) {
const res = await getApiData("account.adjustingEntry.CFL.updateSelectState", params);
if (res.ok) return res.ok;
}
// 完成待重分类记录设置,增加选中的重分类记录到调整分录。
export async function AdjustingEntrySave(params: {
dbname: string,
billID: string,
Data_ID: string,
isQC: boolean
}) {
const res = await getApiData("account.adjustingEntry.CFL.save", params);
if (res.ok) return res.data;
}
// 重分类自动解析对方科目信息
export async function KMMapanalysisMap(params: {
dbname: string,
billID: string,
Data_ID: string,
}) {
const res = await getApiData("account.adjustingEntry.CFL.KMMap.analysisMap", params);
if (res.ok) return res.ok;
}
.SubjectsForm .dx-layout-manager .dx-label-h-align.dx-flex-layout .dx-field-item-content,
.dx-layout-manager .dx-label-h-align.dx-flex-layout .dx-field-item-content-wrapper {
position: relative;
}
.StatementDropDownBox .dx-dropdowneditor-icon::before {
opacity: 0;
}
.SubjectsForm .dx-layout-manager .dx-label-h-align.dx-flex-layout .dx-field-item-content,
.dx-layout-manager .dx-label-h-align.dx-flex-layout .dx-field-item-content-wrapper {
position: relative;
}
.StatementDropDownBox .dx-dropdowneditor-icon::before {
opacity: 0;
}
.SubjectsForm .dx-invalid.dx-texteditor.dx-editor-outlined.dx-show-invalid-badge .dx-texteditor-input-container::after {
right: 20px !important;
}
\ No newline at end of file
import type { AudDialogShowParams } from '@/pages/components/Aud/AudDialog';
import { Popup } from 'devextreme-react';
import React, { useCallback, useEffect, useMemo, useImperativeHandle, useRef } from 'react';
import { useState } from 'react';
export interface SizeProp {
width?: number | string,
height?: number | string,
}
const SavePopup = React.forwardRef((props: any, ref: any) => {
const { width, height, whereFrom } = props
const diaParams = useRef<AudDialogShowParams & any>();
const [visible, setVisible] = useState<boolean>(false);
const [size, setSize] = useState<SizeProp>({ width, height });
// 自定义方法
useImperativeHandle(ref, () => ({
show: (params: AudDialogShowParams) => {
diaParams.current = params;
setVisible(true);
},
close: () => { setVisible(false) }
}));
return (
<>
<Popup
ref={ref}
visible={visible}
animation={{ duration: 3 }}
title={diaParams.current?.title}
minWidth={450}
minHeight={200}
{...props}
{...size}
// dragOutsideBoundary={true}
resizeEnabled={true}
onHiding={() => setVisible(false)}
toolbarItems={[
{
widget: 'dxButton',
toolbar: 'bottom',
location: 'after',
options: {
text: '取消',
onClick: () => {
setVisible(false);
diaParams.current?.cancelCallback();
}
},
},
{
widget: 'dxButton',
toolbar: 'bottom',
location: 'after',
options: {
text: '否',
onClick: () => {
setVisible(false);
diaParams.current?.noCallback();
}
},
},
{
widget: 'dxButton',
toolbar: 'bottom',
location: 'after',
options: {
text: '是',
type: "default",
onClick: () => {
setVisible(false);
diaParams.current?.okCallback();
}
},
},
]}
onResizeEnd={(e) => {
setSize({ width: e.width, height: e.height });
}}
contentRender={() => (
<div >
<span>是否保存对【{whereFrom}分录】的更改?</span>
</div>
)}
/>
</>
);
});
export default SavePopup;
\ No newline at end of file
import getApiData from "@/services/cpasRequest";
import notify from 'devextreme/ui/notify';
// 获取待重分类科目批量设置对方科目列表
export async function getKMMapDataList(params: {
dbname: string,
billID: string,
Data_ID: string
}) {
const res = await getApiData("account.adjustingEntry.CFL.KMMap.getDataList", params);
if (res.ok) return res.data;
}
// 获取重复类科目匹配配置列表
export async function getCFLKMConfigDataList(params: {
dbname: string,
Data_ID: string
}) {
const res = await getApiData("account.adjustingEntry.CFLKMConfig.getDataList", params);
if (res.ok) return res.data;
}
// 获取重复类科目匹配配置列表
export async function CFLKMConfigUpdate(params: {
dbname: string,
Data_ID: string,
GUID: string,
JFKMBH: string,
DFKMBH: string
}) {
const res = await getApiData("account.adjustingEntry.CFLKMConfig.update", params);
if (res.ok) return res.data;
}
// 删除 重分类
export async function CFLKMConfigDelete(params: {
dbname: string,
GUID: string,
}) {
const res = await getApiData("account.adjustingEntry.CFLKMConfig.delete", params);
if (res.ok) return res.ok;
}
// 设置待重分类科目的对方科目信息
export async function updateMap(params: {
dbname: string,
billID: string,
YSKMBH: string,
GUID: string,
YSHSXMBH: string,
HSXMLXMC: string,
HSXMLXBH: string,
KMMC: string,
KMBH: string,
HSXMMC: string,
HSXMBH: string ,
YSHSXMMC: string,
itemNames3: string,
YSKMMC: string,
PKMBH: string
}) {
const res = await getApiData("account.adjustingEntry.CFL.KMMap.updateMap", params);
if (res.ok) return res.ok;
}
// 完成设置待重分类科目的对方科目信息,自动解析批量设置的对方科目到待重分类的记录。
export async function AdjustingEntryKMMapSave(params: {
dbname: string,
billID: string,
Data_ID: string,
editUser: string | number
}) {
const res = await getApiData("account.adjustingEntry.CFL.KMMap.save", params);
if (res.ok) return res.ok;
}
export function getChild(node) {
let arr: any = []
// 定义一个函数
function xxx(node) {
if (node.children && node.children.length) {
for (let i = 0, len = node.children.length; i < len; i++) {
xxx(node.children[i])
}
} else {
arr.push(node)
}
return arr
}
xxx(node)
return arr
}
\ No newline at end of file
import React from "react";
import { CheckBox } from "devextreme-react";
export const columns = [
{
dataField: "displayName",
dataType: "string",
caption: "科目名称",
width: 200,
alignment: "left",
columnMinWidth: 100
},
// {
// dataField: "QMYE",
// dataType: "string",
// caption: "期末余额",
// alignment: "right",
// width: 200,
// },
// {
// dataField: "QCYE",
// dataType: "string",
// caption: "期初余额",
// width: 200,
// alignment: "right",
// },
{
dataField: "itemNames2",
dataType: "string",
caption: "对应报表项目",
width: 200,
alignment: "left",
},
]
.searchPanel_Style .dx-toolbar-item-content > .dx-texteditor {
margin: 0;
}
.refreshButton_Style .dx-button-mode-contained {
background: #fff;
}
.refreshButton_Style .dx-button-mode-contained.dx-state-hover {
background: #f4f2ef;
}
.searchPanel_Style .dx-toolbar-item-content > .dx-texteditor{
margin: 0;
}
.refreshButton_Style .dx-button-mode-contained{
background: #fff;
// border:none;
}
.refreshButton_Style .dx-button-mode-contained.dx-state-hover{
background: rgba(244, 242, 239, 1);
// border:none;
}
\ No newline at end of file
import getApiData from "@/services/cpasRequest";
import notify from 'devextreme/ui/notify';
// 获取审计调整新单据编号
export async function getReportItemsData(params: {
dbname: string;
Data_ID: string;
userCode: string | undefined
}) {
const res = await getApiData("account.ZBAdujst.getNewBillNo ", params);
if (res.ok) {
return res.data;
}
return {};
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
.withButtonStyle.dx-button-mode-contained.dx-button-default{
margin: 0 0 0 8px;
}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
@import '~antd/lib/style/themes/default.less';
.theme-button {
background-color: @primary-color;
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
.SubjectsForm .dx-layout-manager .dx-label-h-align.dx-flex-layout .dx-field-item-content,
.dx-layout-manager .dx-label-h-align.dx-flex-layout .dx-field-item-content-wrapper {
position: relative;
}
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment