Merge branch 'develop' of ssh://code.linyikj.com.cn:2222/pay/pay-admin into develop
All checks were successful
Build and Push Docker Image / build (push) Successful in 3m51s
All checks were successful
Build and Push Docker Image / build (push) Successful in 3m51s
* 'develop' of ssh://code.linyikj.com.cn:2222/pay/pay-admin: fix:修复优化 # Conflicts: # .umirc.ts # src/pages/company/list/show/$id.tsx
This commit is contained in:
commit
2d9ffcc02d
@ -18,7 +18,6 @@ export default defineConfig({
|
||||
// target: 'http://10.39.13.78:8001/',
|
||||
// target: 'https://test-admin.linyikj.com.cn/',
|
||||
// target: 'https://admin.linyikj.com.cn/',
|
||||
// target: 'http://c789629c.natappfree.cc',
|
||||
changeOrigin: true,
|
||||
pathRewrite: { '^': '' },
|
||||
},
|
||||
|
||||
@ -51,7 +51,7 @@ export default function Index({ title = '项目账户' }) {
|
||||
dataIndex: ['project', 'name'],
|
||||
},
|
||||
{
|
||||
title: '收款名称',
|
||||
title: '收款户名',
|
||||
dataIndex: ['receipt_account', 'company_name'],
|
||||
},
|
||||
{
|
||||
|
||||
@ -21,7 +21,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
trigger={
|
||||
<MyButtons.Create
|
||||
title={`${props.title}`}
|
||||
size={props?.item?.size || 'middle'}
|
||||
size={props?.item?.size || 'small'}
|
||||
/>
|
||||
}
|
||||
onOpenChange={(open: any) => {
|
||||
|
||||
@ -26,7 +26,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
trigger={
|
||||
<MyButtons.Create
|
||||
title={`${props.title}`}
|
||||
size={props?.item?.size || 'mindde'}
|
||||
size={props?.item?.size || 'small'}
|
||||
/>
|
||||
}
|
||||
form={form}
|
||||
@ -57,20 +57,19 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 6 },
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'ownership_type',
|
||||
title: '房屋属性',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: AssetHousesOwnershipTypeEnum,
|
||||
// required: true,
|
||||
}),
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'usage',
|
||||
title: '用途',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: AssetHousesUsageEnum,
|
||||
colProps: { span: 18 },
|
||||
// valueEnum: AssetHousesUsageEnum,
|
||||
valueEnum: () => {
|
||||
let obj: any = JSON.parse(JSON.stringify(AssetHousesUsageEnum));
|
||||
delete obj.ParkingSpace;
|
||||
return obj;
|
||||
},
|
||||
required: true,
|
||||
}),
|
||||
|
||||
{
|
||||
key: 'floor',
|
||||
title: '楼层',
|
||||
@ -115,6 +114,13 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 6 },
|
||||
formItemProps: { ...rulesHelper.number },
|
||||
},
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'ownership_type',
|
||||
title: '房屋属性',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: AssetHousesOwnershipTypeEnum,
|
||||
// required: true,
|
||||
}),
|
||||
{
|
||||
valueType: 'group',
|
||||
columns: [
|
||||
|
||||
@ -97,20 +97,19 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
];
|
||||
},
|
||||
},
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'ownership_type',
|
||||
title: '房屋属性',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: AssetHousesOwnershipTypeEnum,
|
||||
// required: true,
|
||||
}),
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'usage',
|
||||
title: '用途',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: AssetHousesUsageEnum,
|
||||
// valueEnum: AssetHousesUsageEnum,
|
||||
valueEnum: () => {
|
||||
let obj: any = JSON.parse(JSON.stringify(AssetHousesUsageEnum));
|
||||
delete obj.ParkingSpace;
|
||||
return obj;
|
||||
},
|
||||
required: true,
|
||||
}),
|
||||
|
||||
{
|
||||
key: 'floor',
|
||||
title: '楼层',
|
||||
@ -155,6 +154,13 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 6 },
|
||||
formItemProps: { ...rulesHelper.number },
|
||||
},
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'ownership_type',
|
||||
title: '房屋属性',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: AssetHousesOwnershipTypeEnum,
|
||||
// required: true,
|
||||
}),
|
||||
{
|
||||
valueType: 'group',
|
||||
columns: [
|
||||
|
||||
@ -24,7 +24,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
trigger={
|
||||
<MyButtons.Create
|
||||
title={`${props.title}`}
|
||||
size={props?.item?.size || 'middle'}
|
||||
size={props?.item?.size || 'small'}
|
||||
/>
|
||||
}
|
||||
form={form}
|
||||
@ -80,7 +80,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
},
|
||||
{
|
||||
key: 'units_per_building',
|
||||
title: '单元户数',
|
||||
title: '单元总户数',
|
||||
colProps: { span: 6 },
|
||||
},
|
||||
{
|
||||
|
||||
@ -85,7 +85,7 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
},
|
||||
{
|
||||
key: 'units_per_building',
|
||||
title: '单元户数',
|
||||
title: '单元总户数',
|
||||
colProps: { span: 6 },
|
||||
},
|
||||
{
|
||||
|
||||
@ -21,7 +21,7 @@ export default function Create(
|
||||
width="500px"
|
||||
form={form}
|
||||
key={new Date().getTime()}
|
||||
trigger={<MyButtons.Default title="楼栋管家" type="link" />}
|
||||
trigger={<MyButtons.Default title="设楼栋管家" type="link" />}
|
||||
request={() => Promise.resolve(props.item)}
|
||||
onOpenChange={(open: any) => {
|
||||
if (open && props.item) {
|
||||
@ -52,6 +52,9 @@ export default function Create(
|
||||
title: '设置楼栋管家',
|
||||
dataIndex: 'company_employees_id',
|
||||
colProps: { span: 24 },
|
||||
params: {
|
||||
companies_id: props?.item?.companies_id || 0,
|
||||
},
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
required: true,
|
||||
}),
|
||||
|
||||
@ -62,12 +62,28 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
title: '项目别名',
|
||||
colProps: { span: 12 },
|
||||
},
|
||||
|
||||
...(props?.item?.id
|
||||
? [
|
||||
Selects?.Companies({
|
||||
key: 'companies_id',
|
||||
title: '所属机构',
|
||||
colProps: { span: 12 },
|
||||
formItemProps: { ...rulesHelper.number },
|
||||
fieldProps: {
|
||||
disabled: true,
|
||||
},
|
||||
}),
|
||||
]
|
||||
: [
|
||||
Selects?.Companies({
|
||||
key: 'companies_id',
|
||||
title: '所属机构',
|
||||
colProps: { span: 12 },
|
||||
formItemProps: { ...rulesHelper.number },
|
||||
}),
|
||||
]),
|
||||
|
||||
{
|
||||
valueType: 'dependency',
|
||||
name: ['companies_id'],
|
||||
|
||||
@ -51,47 +51,47 @@ export default function Show({ title }: { title?: string } = {}) {
|
||||
// children: <AssetInfo item={data} reload={() => loadShow()} />,
|
||||
// },
|
||||
{
|
||||
label: '楼栋管理',
|
||||
label: '1-楼栋房屋配置',
|
||||
key: 'asset_buildings',
|
||||
closable: false,
|
||||
children: <MyAssetBuildings item={data} />,
|
||||
},
|
||||
{
|
||||
label: '楼栋划分',
|
||||
label: '2-楼栋单元划分',
|
||||
key: 'grid',
|
||||
closable: false,
|
||||
children: <AssetGrid item={data} />,
|
||||
},
|
||||
{
|
||||
label: '收费标准',
|
||||
key: 'charge_standard',
|
||||
closable: false,
|
||||
children: <ChargeStandard item={data} />,
|
||||
},
|
||||
{
|
||||
label: '收款账号',
|
||||
label: '3-收款账号配置',
|
||||
key: 'asset_accounts',
|
||||
closable: false,
|
||||
children: <AssetAccounts item={data} />,
|
||||
},
|
||||
{
|
||||
label: '项目公告',
|
||||
label: '4-收费标准配置',
|
||||
key: 'charge_standard',
|
||||
closable: false,
|
||||
children: <ChargeStandard item={data} />,
|
||||
},
|
||||
{
|
||||
label: '5-便民服务',
|
||||
key: 'convenience_services',
|
||||
closable: false,
|
||||
children: <ConvenienceServices item={data} />,
|
||||
},
|
||||
{
|
||||
label: '5-项目公告',
|
||||
key: 'announcement',
|
||||
closable: false,
|
||||
children: <Announcement item={data} />,
|
||||
},
|
||||
{
|
||||
label: '项目活动',
|
||||
label: '5-项目活动',
|
||||
key: 'activities',
|
||||
closable: false,
|
||||
children: <Activities item={data} />,
|
||||
},
|
||||
{
|
||||
label: '便民服务',
|
||||
key: 'convenience_services',
|
||||
closable: false,
|
||||
children: <ConvenienceServices item={data} />,
|
||||
},
|
||||
];
|
||||
return (
|
||||
<MyPageContainer title={data?.name || title || '项目详情'}>
|
||||
@ -111,7 +111,13 @@ export default function Show({ title }: { title?: string } = {}) {
|
||||
</Space>
|
||||
}
|
||||
>
|
||||
<div>* 您可在以下页签中对应管理:楼栋管理、楼栋划分、收款账号;</div>
|
||||
<div>请按以下顺序配置:</div>
|
||||
<div>
|
||||
<span>
|
||||
楼栋房屋配置 ➡️ 楼栋单元划分 ➡️ 收款账号配置 ➡️ 收费标准配置 ➡️
|
||||
便民服务 ➡️ 项目公告 ➡️ 项目活动;
|
||||
</span>
|
||||
</div>
|
||||
</ProCard>
|
||||
<ProCard>
|
||||
<Tabs type="card" items={data?.id ? items : []} />
|
||||
|
||||
@ -31,7 +31,7 @@ export default function ReceiptAccounts(props: MyBetaModalFormProps) {
|
||||
key="Select"
|
||||
reload={action?.reload}
|
||||
item={props?.item}
|
||||
title="添加收款账号"
|
||||
title="配置"
|
||||
/>,
|
||||
]}
|
||||
// options={false}
|
||||
@ -42,7 +42,7 @@ export default function ReceiptAccounts(props: MyBetaModalFormProps) {
|
||||
// width: 360,
|
||||
},
|
||||
{
|
||||
title: '收款账号名称',
|
||||
title: '收款账户',
|
||||
dataIndex: ['receipt_account', 'company_name'],
|
||||
// width: 360,
|
||||
},
|
||||
@ -58,6 +58,12 @@ export default function ReceiptAccounts(props: MyBetaModalFormProps) {
|
||||
search: false,
|
||||
// width: 200,
|
||||
},
|
||||
{
|
||||
title: '通联商户号',
|
||||
dataIndex: ['receipt_account', 'companymerchant_id_account'],
|
||||
search: false,
|
||||
// width: 200,
|
||||
},
|
||||
// {
|
||||
// title: '是否默认',
|
||||
// dataIndex: 'is_default',
|
||||
|
||||
@ -73,7 +73,7 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
<ProCard
|
||||
title={
|
||||
<Alert
|
||||
message="操作提示:在楼栋下添加单元,在单元下添加房屋!"
|
||||
message="操作提示:在对应楼栋列表中,添加对应的单元,在单元列表中添加对应的房屋!"
|
||||
type="info"
|
||||
showIcon
|
||||
style={{ margin: 0 }}
|
||||
@ -86,12 +86,13 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
<Title level={5} style={{ marginBottom: 16 }}>
|
||||
<Space style={{ display: 'flex', justifyContent: 'space-between' }}>
|
||||
楼栋信息
|
||||
<Space>
|
||||
<MyImportModal
|
||||
key="ImportHouse"
|
||||
params={{ asset_projects_id: props?.item?.id }}
|
||||
title="批量导入"
|
||||
title="导入"
|
||||
type="danger"
|
||||
size="middle"
|
||||
size="small"
|
||||
templateApi={Apis.Asset.AssetHouses.DownloadTemplate}
|
||||
importApi={Apis.Asset.AssetHouses.Import}
|
||||
reload={props?.reload}
|
||||
@ -103,6 +104,7 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
title="楼栋"
|
||||
/>
|
||||
</Space>
|
||||
</Space>
|
||||
</Title>
|
||||
<ProTable
|
||||
{...MyProTableProps.props}
|
||||
@ -142,11 +144,17 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
dataIndex: 'name',
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: '别名',
|
||||
dataIndex: 'alias_name',
|
||||
ellipsis: true,
|
||||
},
|
||||
MyColumns.Option({
|
||||
width: 120,
|
||||
render: (_, item: any, index, action) => (
|
||||
<Space key={index} size="small">
|
||||
<AssetBuildingsUpdate item={item} reload={action?.reload} />
|
||||
|
||||
<MyButtons.Delete
|
||||
size="small"
|
||||
onConfirm={() =>
|
||||
@ -158,6 +166,16 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
)
|
||||
}
|
||||
/>
|
||||
<AssetUnitsCreate
|
||||
key="UnitsCreate"
|
||||
item={{
|
||||
...props?.item,
|
||||
asset_buildings_id: selectedBuilding?.id,
|
||||
}}
|
||||
reload={() => actionUnitsRef?.current?.reload()}
|
||||
title="单元"
|
||||
// title={`添加${selectedBuilding.name}单元`}
|
||||
/>
|
||||
</Space>
|
||||
),
|
||||
}),
|
||||
@ -173,7 +191,7 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
style={{ display: 'flex', justifyContent: 'space-between' }}
|
||||
>
|
||||
{selectedBuilding.name}
|
||||
{selectedBuilding && (
|
||||
{/* {selectedBuilding && (
|
||||
<AssetUnitsCreate
|
||||
key="UnitsCreate"
|
||||
item={{
|
||||
@ -184,7 +202,7 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
title="单元"
|
||||
// title={`添加${selectedBuilding.name}单元`}
|
||||
/>
|
||||
)}
|
||||
)} */}
|
||||
</Space>
|
||||
</Title>
|
||||
<ProTable
|
||||
@ -229,6 +247,11 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
dataIndex: 'name',
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: '别名',
|
||||
dataIndex: 'alias_name',
|
||||
ellipsis: true,
|
||||
},
|
||||
MyColumns.Option({
|
||||
width: 120,
|
||||
render: (_, item: any, index, action) => (
|
||||
@ -245,6 +268,17 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
)
|
||||
}
|
||||
/>
|
||||
<HousesCreate
|
||||
key="HousesCreate"
|
||||
item={{
|
||||
...props?.item,
|
||||
asset_buildings_id: selectedBuilding?.id,
|
||||
asset_units_id: selectedUnit?.id,
|
||||
}}
|
||||
reload={() => actionHousesRef?.current?.reload()}
|
||||
title="房屋"
|
||||
// title={`${selectedUnit.name}房屋`}
|
||||
/>
|
||||
</Space>
|
||||
),
|
||||
}),
|
||||
@ -261,7 +295,7 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
style={{ display: 'flex', justifyContent: 'space-between' }}
|
||||
>
|
||||
{selectedUnit.name}
|
||||
{selectedUnit && (
|
||||
{/* {selectedUnit && (
|
||||
<HousesCreate
|
||||
key="HousesCreate"
|
||||
item={{
|
||||
@ -273,7 +307,7 @@ export default function AssetBuildings(props: MyBetaModalFormProps) {
|
||||
title="房屋"
|
||||
// title={`${selectedUnit.name}房屋`}
|
||||
/>
|
||||
)}
|
||||
)} */}
|
||||
</Space>
|
||||
</Title>
|
||||
<ProTable
|
||||
|
||||
@ -30,7 +30,7 @@ export default function Index({ ...rest }) {
|
||||
key="Create"
|
||||
item={rest.item}
|
||||
reload={action?.reload}
|
||||
title="楼栋划分"
|
||||
title="单元划分"
|
||||
/>,
|
||||
]}
|
||||
search={false}
|
||||
@ -48,7 +48,7 @@ export default function Index({ ...rest }) {
|
||||
dataIndex: 'grid_mark',
|
||||
},
|
||||
{
|
||||
title: '管理员',
|
||||
title: '楼栋管家',
|
||||
dataIndex: ['company_employee', 'name'],
|
||||
render: (_, item: any) =>
|
||||
`${item?.company_employee?.name || ''}-${
|
||||
|
||||
@ -41,7 +41,17 @@ export default function Index({ title = '岗位库' }) {
|
||||
{
|
||||
title: '岗位名称',
|
||||
dataIndex: 'name',
|
||||
width: 300,
|
||||
width: 200,
|
||||
},
|
||||
{
|
||||
title: '岗位编号',
|
||||
dataIndex: 'code',
|
||||
width: 200,
|
||||
},
|
||||
{
|
||||
title: '岗位说明',
|
||||
dataIndex: 'remark',
|
||||
search: false,
|
||||
},
|
||||
{
|
||||
title: '是否启用',
|
||||
|
||||
@ -45,6 +45,18 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
{
|
||||
key: 'code',
|
||||
title: '岗位编号',
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
{
|
||||
key: 'remark',
|
||||
title: '岗位说明',
|
||||
colProps: { span: 24 },
|
||||
valueType: 'textarea',
|
||||
},
|
||||
]}
|
||||
/>
|
||||
);
|
||||
|
||||
@ -46,6 +46,18 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
{
|
||||
key: 'code',
|
||||
title: '岗位编号',
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
{
|
||||
key: 'remark',
|
||||
title: '岗位说明',
|
||||
colProps: { span: 24 },
|
||||
valueType: 'textarea',
|
||||
},
|
||||
{
|
||||
key: 'is_use',
|
||||
title: '是否启用',
|
||||
|
||||
@ -37,6 +37,7 @@ export default function Index({ title = '账号管理' }) {
|
||||
Apis.Company.CompanyReceiptAccounts.List,
|
||||
)
|
||||
}
|
||||
// headerTitle="项目可用收款账号,从本页面已添加的收款账号中选择"
|
||||
toolBarRender={(action) => [
|
||||
<ReceiptAccountCreate
|
||||
key="Create"
|
||||
@ -63,8 +64,14 @@ export default function Index({ title = '账号管理' }) {
|
||||
{
|
||||
title: '收款账号',
|
||||
dataIndex: 'company_account',
|
||||
// search: false,
|
||||
},
|
||||
{
|
||||
title: '通联商户号',
|
||||
dataIndex: 'merchant_id',
|
||||
search: false,
|
||||
},
|
||||
|
||||
MyColumns.UpdatedAt(),
|
||||
MyColumns.Option({
|
||||
render: (_, item: any, index, action) => (
|
||||
|
||||
@ -1,13 +1,11 @@
|
||||
import {
|
||||
MyBetaModalFormProps,
|
||||
MyButtons,
|
||||
MyFormItems,
|
||||
MyModalFormProps,
|
||||
rulesHelper,
|
||||
} from '@/common';
|
||||
import { Selects } from '@/components/Select';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import { CompanyReceiptAccountsPayChannelEnum } from '@/gen/Enums';
|
||||
import { BetaSchemaForm } from '@ant-design/pro-components';
|
||||
import { Form, message } from 'antd';
|
||||
|
||||
@ -22,6 +20,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
width="500px"
|
||||
trigger={<MyButtons.Create title={`添加账号`} />}
|
||||
form={form}
|
||||
key={new Date().getTime()}
|
||||
onOpenChange={(open: any) => {
|
||||
if (open) {
|
||||
form.resetFields(); // 清空表单数据
|
||||
@ -31,7 +30,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
Apis.Company.CompanyReceiptAccounts.Store({
|
||||
...values,
|
||||
companies_id: values?.companies_id || props?.item?.id,
|
||||
|
||||
pay_channel: values?.merchant_id ? 'TongLian' : 'BankTransfer',
|
||||
is_default: 0,
|
||||
})
|
||||
.then(() => {
|
||||
@ -70,36 +69,31 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'pay_channel',
|
||||
title: '收款渠道',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: CompanyReceiptAccountsPayChannelEnum,
|
||||
required: true,
|
||||
}),
|
||||
{
|
||||
name: ['pay_channel'],
|
||||
key: 'boolean',
|
||||
title: '是否开通【通联支付】',
|
||||
valueType: 'switch',
|
||||
colProps: { span: 24 },
|
||||
},
|
||||
{
|
||||
name: ['boolean'],
|
||||
valueType: 'dependency',
|
||||
columns: ({ pay_channel }: any) => {
|
||||
return pay_channel ===
|
||||
CompanyReceiptAccountsPayChannelEnum.TongLian.value
|
||||
columns: ({ boolean }: any) => {
|
||||
return boolean
|
||||
? [
|
||||
{
|
||||
key: 'merchant_id',
|
||||
title: '商户ID',
|
||||
title: '通联商户号',
|
||||
colProps: { span: 24 },
|
||||
fieldProps: {
|
||||
placeholder: '如已开通,必须输入通联商户号',
|
||||
},
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
]
|
||||
: [];
|
||||
},
|
||||
},
|
||||
// {
|
||||
// key: 'is_default',
|
||||
// title: '是否设为默认账号',
|
||||
// valueType: 'switch',
|
||||
// colProps: { span: 24 },
|
||||
// },
|
||||
]}
|
||||
/>
|
||||
);
|
||||
|
||||
@ -1,12 +1,10 @@
|
||||
import {
|
||||
MyBetaModalFormProps,
|
||||
MyButtons,
|
||||
MyFormItems,
|
||||
MyModalFormProps,
|
||||
rulesHelper,
|
||||
} from '@/common';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import { CompanyReceiptAccountsPayChannelEnum } from '@/gen/Enums';
|
||||
import { BetaSchemaForm } from '@ant-design/pro-components';
|
||||
import { Form, message } from 'antd';
|
||||
export default function Update(props: MyBetaModalFormProps) {
|
||||
@ -23,14 +21,17 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
onOpenChange={(open: any) => {
|
||||
if (open && props.item) {
|
||||
form.setFieldsValue(props.item);
|
||||
form.setFieldValue('boolean', props.item?.pay_channel === 'TongLian');
|
||||
}
|
||||
}}
|
||||
onFinish={async (values) =>
|
||||
onFinish={async (values: any) =>
|
||||
Apis.Company.CompanyReceiptAccounts.Update({
|
||||
...values,
|
||||
companies_id: props?.item?.companies_id,
|
||||
id: props.item?.id ?? 0,
|
||||
is_default: 0,
|
||||
pay_channel: values?.merchant_id ? 'TongLian' : 'BankTransfer',
|
||||
merchant_id: values?.boolean ? values?.merchant_id : '',
|
||||
})
|
||||
.then(() => {
|
||||
props.reload?.();
|
||||
@ -58,30 +59,58 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'pay_channel',
|
||||
title: '收款渠道',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: CompanyReceiptAccountsPayChannelEnum,
|
||||
required: true,
|
||||
}),
|
||||
{
|
||||
name: ['pay_channel'],
|
||||
key: 'boolean',
|
||||
title: '是否开通【通联支付】',
|
||||
valueType: 'switch',
|
||||
colProps: { span: 24 },
|
||||
onChange: () => {
|
||||
form.setFieldValue('merchant_id', undefined);
|
||||
},
|
||||
},
|
||||
{
|
||||
name: ['boolean'],
|
||||
valueType: 'dependency',
|
||||
columns: ({ pay_channel }: any) => {
|
||||
return pay_channel ===
|
||||
CompanyReceiptAccountsPayChannelEnum.TongLian.value
|
||||
columns: ({ boolean }: any) => {
|
||||
return boolean
|
||||
? [
|
||||
{
|
||||
key: 'merchant_id',
|
||||
title: '商户ID',
|
||||
title: '通联商户号',
|
||||
colProps: { span: 24 },
|
||||
fieldProps: {
|
||||
placeholder: '如已开通,必须输入通联商户号',
|
||||
},
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
]
|
||||
: [];
|
||||
},
|
||||
},
|
||||
// MyFormItems.EnumRadio({
|
||||
// key: 'pay_channel',
|
||||
// title: '收款渠道',
|
||||
// colProps: { span: 24 },
|
||||
// valueEnum: CompanyReceiptAccountsPayChannelEnum,
|
||||
// required: true,
|
||||
// }),
|
||||
// {
|
||||
// name: ['pay_channel'],
|
||||
// valueType: 'dependency',
|
||||
// columns: ({ pay_channel }: any) => {
|
||||
// return pay_channel ===
|
||||
// CompanyReceiptAccountsPayChannelEnum.TongLian.value
|
||||
// ? [
|
||||
// {
|
||||
// key: 'merchant_id',
|
||||
// title: '商户ID',
|
||||
// colProps: { span: 24 },
|
||||
// formItemProps: { ...rulesHelper.text },
|
||||
// },
|
||||
// ]
|
||||
// : [];
|
||||
// },
|
||||
// },
|
||||
// {
|
||||
// key: 'is_default',
|
||||
// title: '是否设为默认账号',
|
||||
|
||||
@ -65,7 +65,7 @@ export default function Index({ title = '应用管理' }) {
|
||||
// dataIndex: 'app_secret',
|
||||
// search: false,
|
||||
// ellipsis: true,
|
||||
// render: (text) => '***' + String(text).slice(-4),
|
||||
// // render: (text) => '****' + String(text).slice(-4),
|
||||
// },
|
||||
|
||||
MyColumns.UpdatedAt(),
|
||||
|
||||
@ -20,6 +20,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
title={`添加应用配置`}
|
||||
wrapperCol={{ span: 24 }}
|
||||
width="500px"
|
||||
key={new Date().getTime()}
|
||||
trigger={<MyButtons.Create title={`添加应用`} />}
|
||||
form={form}
|
||||
onOpenChange={(open: any) => {
|
||||
|
||||
@ -47,14 +47,11 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
},
|
||||
MyFormItems.UploadImages({
|
||||
key: 'logo',
|
||||
title: '品牌logo【尺寸:1024*1024】',
|
||||
title: '品牌logo【 尺寸比例 1:1 】',
|
||||
tooltip: '只能上传1张图片',
|
||||
max: 1,
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { required: false },
|
||||
fieldProps: {
|
||||
placeholder: '',
|
||||
},
|
||||
formItemProps: { required: true },
|
||||
}),
|
||||
]}
|
||||
/>
|
||||
|
||||
@ -21,6 +21,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
width="360px"
|
||||
trigger={<MyButtons.Create title={`添加品牌`} />}
|
||||
form={form}
|
||||
key={new Date().getTime()}
|
||||
onOpenChange={(open: any) => {
|
||||
if (open) {
|
||||
form.resetFields(); // 清空表单数据
|
||||
@ -61,7 +62,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
tooltip: '只能上传1张图片',
|
||||
max: 1,
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { required: false },
|
||||
formItemProps: { required: true },
|
||||
}),
|
||||
]}
|
||||
/>
|
||||
|
||||
@ -8,10 +8,12 @@ import {
|
||||
import { Address } from '@/components/Address';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import { BetaSchemaForm } from '@ant-design/pro-components';
|
||||
import { Form, message } from 'antd';
|
||||
import { Form, message, Modal } from 'antd';
|
||||
import { useNavigate } from 'umi';
|
||||
|
||||
export default function Create(props: MyBetaModalFormProps) {
|
||||
const [form] = Form.useForm();
|
||||
const navigate = useNavigate();
|
||||
|
||||
return (
|
||||
<BetaSchemaForm<ApiTypes.Company.Companies.Store>
|
||||
@ -20,6 +22,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
wrapperCol={{ span: 24 }}
|
||||
width="600px"
|
||||
trigger={<MyButtons.Create title={`添加机构`} />}
|
||||
key={new Date().getTime()}
|
||||
form={form}
|
||||
onOpenChange={(open: any) => {
|
||||
if (open) {
|
||||
@ -31,9 +34,23 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
...values,
|
||||
merchant_type: 'PropertyManagement',
|
||||
})
|
||||
.then(() => {
|
||||
.then((response) => {
|
||||
const companyId = response?.data?.id;
|
||||
props.reload?.();
|
||||
message.success(props.title + '成功');
|
||||
|
||||
// 询问用户是否立即配置
|
||||
Modal.confirm({
|
||||
title: '配置提示',
|
||||
content: '是否立即配置该机构?',
|
||||
okText: '是',
|
||||
cancelText: '否',
|
||||
onOk: () => {
|
||||
// 跳转到配置页面
|
||||
navigate(`/company/list/show/${companyId}`);
|
||||
},
|
||||
});
|
||||
|
||||
return true;
|
||||
})
|
||||
.catch(() => false)
|
||||
@ -55,7 +72,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
key: 'business_license_number',
|
||||
title: '营业执照号',
|
||||
colProps: { span: 24 },
|
||||
tooltip: '限制20位',
|
||||
tooltip: '限制18位',
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
fieldProps: {
|
||||
maxLength: 18,
|
||||
@ -98,7 +115,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
},
|
||||
Address.Cascader({
|
||||
key: 'casacader',
|
||||
title: '联系地址',
|
||||
title: '所在地区',
|
||||
colProps: { span: 14 },
|
||||
keys: ['province', 'city', 'area', 'street'],
|
||||
required: true,
|
||||
|
||||
@ -59,6 +59,7 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
{
|
||||
key: 'business_license_number',
|
||||
title: '营业执照号',
|
||||
tooltip: '限制18位',
|
||||
colProps: { span: 24 },
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
fieldProps: {
|
||||
@ -101,7 +102,7 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
},
|
||||
Address.Cascader({
|
||||
key: 'casacader',
|
||||
title: '联系地址',
|
||||
title: '所在地区',
|
||||
colProps: { span: 14 },
|
||||
keys: ['province', 'city', 'area', 'street'],
|
||||
required: true,
|
||||
|
||||
@ -49,9 +49,8 @@ export default function Show({ title }: { title?: string } = {}) {
|
||||
label: '项目配置',
|
||||
key: '1',
|
||||
closable: false,
|
||||
children: <Assets item={data} />,
|
||||
children: <CompanyApps item={data} />,
|
||||
},
|
||||
|
||||
{
|
||||
label: '组织配置',
|
||||
key: '2',
|
||||
@ -76,17 +75,18 @@ export default function Show({ title }: { title?: string } = {}) {
|
||||
closable: false,
|
||||
children: <ReceiptAccounts item={data} />,
|
||||
},
|
||||
|
||||
{
|
||||
label: '应用配置',
|
||||
key: '6',
|
||||
closable: false,
|
||||
children: <CompanyApps item={data} />,
|
||||
children: <Brands item={data} />,
|
||||
},
|
||||
{
|
||||
label: '品牌配置',
|
||||
key: '7',
|
||||
closable: false,
|
||||
children: <Brands item={data} />,
|
||||
children: <Assets item={data} />,
|
||||
},
|
||||
{
|
||||
label: '权限配置',
|
||||
@ -117,8 +117,12 @@ export default function Show({ title }: { title?: string } = {}) {
|
||||
</Space>
|
||||
}
|
||||
>
|
||||
<div>请按以下顺序配置:</div>
|
||||
<div>
|
||||
* 您可在以下页签中对应配置:项目、组织、岗位、员工、账号、应用、品牌;
|
||||
<span>
|
||||
应用配置 ➡️ 组织配置 ➡️ 岗位配置 ➡️ 员工配置 ➡️ 账号配置 ➡️ 品牌配置
|
||||
➡️ 项目配置;
|
||||
</span>
|
||||
</div>
|
||||
</ProCard>
|
||||
<ProCard>
|
||||
|
||||
@ -56,13 +56,6 @@ export default function CompanyApps(props: MyBetaModalFormProps) {
|
||||
search: false,
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
title: '应用密钥',
|
||||
dataIndex: 'app_secret',
|
||||
search: false,
|
||||
ellipsis: true,
|
||||
render: (text) => '***' + String(text).slice(-4),
|
||||
},
|
||||
|
||||
MyColumns.UpdatedAt(),
|
||||
// MyColumns.CreatedAt(),
|
||||
|
||||
@ -56,6 +56,13 @@ export default function Index(props: MyBetaModalFormProps) {
|
||||
valueEnum: AssetProjectsStatusEnum,
|
||||
search: false,
|
||||
}),
|
||||
{
|
||||
title: '所在城市',
|
||||
render: (_, i: any) => {
|
||||
return `${i?.province || ''}${i?.city || ''}`;
|
||||
},
|
||||
search: false,
|
||||
},
|
||||
{
|
||||
title: '地址',
|
||||
render: (_, i: any) => {
|
||||
@ -75,7 +82,7 @@ export default function Index(props: MyBetaModalFormProps) {
|
||||
render: (_, item: any, index, action) => (
|
||||
<Space key={index}>
|
||||
<MyButtons.View
|
||||
title="详情"
|
||||
title="查看|配置"
|
||||
onClick={() => {
|
||||
navigate(`/asset/list/show/${item.id}`);
|
||||
}}
|
||||
|
||||
@ -54,6 +54,7 @@ export default function PropertyBrands(props: MyBetaModalFormProps) {
|
||||
);
|
||||
},
|
||||
},
|
||||
MyColumns.UpdatedAt(),
|
||||
MyColumns.Option({
|
||||
render: (_, item: any, index, action) => (
|
||||
<Space key={index}>
|
||||
|
||||
@ -2,6 +2,7 @@ import {
|
||||
MyBetaModalFormProps,
|
||||
MyButtons,
|
||||
MyColumns,
|
||||
MyImportModal,
|
||||
MyProTableProps,
|
||||
} from '@/common';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
@ -23,6 +24,15 @@ export default function Index(props: MyBetaModalFormProps) {
|
||||
)
|
||||
}
|
||||
toolBarRender={(action) => [
|
||||
<MyImportModal
|
||||
key="ImportHouse"
|
||||
title="批量导入"
|
||||
type="danger"
|
||||
size="middle"
|
||||
templateApi={Apis.Company.CompanyEmployees.DownloadTemplate}
|
||||
importApi={Apis.Company.CompanyEmployees.Import}
|
||||
reload={action?.reload}
|
||||
/>,
|
||||
<EmployeeCreate
|
||||
key="Create"
|
||||
item={props?.item}
|
||||
@ -32,7 +42,7 @@ export default function Index(props: MyBetaModalFormProps) {
|
||||
]}
|
||||
// options={false}
|
||||
columns={[
|
||||
MyColumns.ID(),
|
||||
MyColumns.ID({ search: false }),
|
||||
//to-do 按层级选择
|
||||
{
|
||||
title: '所在组织',
|
||||
|
||||
@ -33,7 +33,7 @@ export default function Organizations(props: MyBetaModalFormProps) {
|
||||
title="组织"
|
||||
/>,
|
||||
]}
|
||||
// search={false}
|
||||
search={false}
|
||||
// options={false}
|
||||
columns={[
|
||||
{
|
||||
@ -46,7 +46,7 @@ export default function Organizations(props: MyBetaModalFormProps) {
|
||||
search: false,
|
||||
},
|
||||
MyColumns.EnumTag({
|
||||
title: '组织类型',
|
||||
title: '类型',
|
||||
dataIndex: 'type',
|
||||
valueEnum: OrganizationsTypeEnum,
|
||||
search: false,
|
||||
|
||||
@ -53,16 +53,10 @@ export default function Organizations(props: MyBetaModalFormProps) {
|
||||
search: false,
|
||||
width: 200,
|
||||
},
|
||||
// {
|
||||
// title: '岗位排序',
|
||||
// dataIndex: 'sort',
|
||||
// search: false,
|
||||
// },
|
||||
{
|
||||
title: '岗位备注',
|
||||
title: '岗位说明',
|
||||
dataIndex: 'remark',
|
||||
search: false,
|
||||
width: 200,
|
||||
},
|
||||
MyColumns.UpdatedAt(),
|
||||
// MyColumns.CreatedAt(),
|
||||
|
||||
@ -5,14 +5,23 @@ import {
|
||||
MyProTableProps,
|
||||
} from '@/common';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import { ProTable } from '@ant-design/pro-components';
|
||||
import { Space } from 'antd';
|
||||
import { ProCard, ProTable } from '@ant-design/pro-components';
|
||||
import { Alert, Space } from 'antd';
|
||||
import ReceiptAccountCreate from '../../accounts/modals/ReceiptAccountCreate';
|
||||
import ReceiptAccountUpdate from '../../accounts/modals/ReceiptAccountUpdate';
|
||||
|
||||
export default function ReceiptAccounts(props: MyBetaModalFormProps) {
|
||||
return (
|
||||
<>
|
||||
<ProCard
|
||||
title={
|
||||
<Alert
|
||||
message="提示:【项目收款账号】,从【机构】已添加的【收款账号】中获取!"
|
||||
type="info"
|
||||
showIcon
|
||||
style={{ margin: 0 }}
|
||||
/>
|
||||
}
|
||||
>
|
||||
<ProTable
|
||||
{...MyProTableProps.props}
|
||||
search={false}
|
||||
@ -52,14 +61,11 @@ export default function ReceiptAccounts(props: MyBetaModalFormProps) {
|
||||
search: false,
|
||||
// width: 200,
|
||||
},
|
||||
// {
|
||||
// title: '是否默认',
|
||||
// dataIndex: 'is_default',
|
||||
// search: false,
|
||||
// render(_, record) {
|
||||
// return `${record?.is_default ? '是' : '否'} `;
|
||||
// },
|
||||
// },
|
||||
{
|
||||
title: '通联商户号',
|
||||
dataIndex: 'merchant_id',
|
||||
search: false,
|
||||
},
|
||||
MyColumns.UpdatedAt(),
|
||||
// MyColumns.CreatedAt(),
|
||||
MyColumns.Option({
|
||||
@ -82,6 +88,6 @@ export default function ReceiptAccounts(props: MyBetaModalFormProps) {
|
||||
}),
|
||||
]}
|
||||
/>
|
||||
</>
|
||||
</ProCard>
|
||||
);
|
||||
}
|
||||
|
||||
@ -63,7 +63,7 @@ export default function Index({ title = '组织列表' }) {
|
||||
dataIndex: 'name',
|
||||
},
|
||||
MyColumns.EnumTag({
|
||||
title: '组织类型',
|
||||
title: '类型',
|
||||
dataIndex: 'type',
|
||||
valueEnum: OrganizationsTypeEnum,
|
||||
search: false,
|
||||
|
||||
@ -20,7 +20,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
title={`添加${props.title}`}
|
||||
wrapperCol={{ span: 24 }}
|
||||
width="500px"
|
||||
trigger={<MyButtons.Create title={`添加${props.title}`} size="small" />}
|
||||
trigger={<MyButtons.Create title={`组织`} size="small" />}
|
||||
key={new Date().getTime()}
|
||||
form={form}
|
||||
onOpenChange={(open: any) => {
|
||||
@ -54,7 +54,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
]),
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'type',
|
||||
title: '组织类型',
|
||||
title: '类型',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: OrganizationsTypeEnum,
|
||||
required: true,
|
||||
|
||||
@ -54,7 +54,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
]),
|
||||
MyFormItems.EnumRadio({
|
||||
key: 'type',
|
||||
title: '组织类型',
|
||||
title: '类型',
|
||||
colProps: { span: 24 },
|
||||
valueEnum: OrganizationsTypeEnum,
|
||||
required: true,
|
||||
@ -72,14 +72,13 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
return type !== OrganizationsTypeEnum.Group.value
|
||||
? [
|
||||
Selects?.OrganizationsTree({
|
||||
title: '请设置上级组织',
|
||||
title: '设置上级组织(可选)',
|
||||
key: 'parent_id',
|
||||
params: { companies_id: props?.item?.id },
|
||||
colProps: { span: 24 },
|
||||
fieldProps: {
|
||||
placeholder: '可搜索或手动选择上级组织',
|
||||
},
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
}),
|
||||
]
|
||||
: [];
|
||||
|
||||
@ -64,7 +64,7 @@ export default function Index({ title = '岗位管理' }) {
|
||||
// search: false,
|
||||
// },
|
||||
{
|
||||
title: '岗位备注',
|
||||
title: '岗位说明',
|
||||
dataIndex: 'remark',
|
||||
search: false,
|
||||
width: 200,
|
||||
|
||||
@ -59,15 +59,9 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 24 },
|
||||
// formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
// {
|
||||
// key: 'sort',
|
||||
// title: '岗位排序',
|
||||
// colProps: { span: 24 },
|
||||
// valueType: 'number',
|
||||
// },
|
||||
{
|
||||
key: 'remark',
|
||||
title: '备注',
|
||||
title: '岗位说明',
|
||||
colProps: { span: 24 },
|
||||
valueType: 'textarea',
|
||||
},
|
||||
|
||||
@ -50,15 +50,9 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 24 },
|
||||
// formItemProps: { ...rulesHelper.text },
|
||||
},
|
||||
// {
|
||||
// key: 'sort',
|
||||
// title: '岗位排序',
|
||||
// colProps: { span: 24 },
|
||||
// valueType: 'number',
|
||||
// },
|
||||
{
|
||||
key: 'remark',
|
||||
title: '备注',
|
||||
title: '岗位说明',
|
||||
colProps: { span: 24 },
|
||||
valueType: 'textarea',
|
||||
},
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user