Merge pull request 'develop' (#19) from develop into main
All checks were successful
Build and Push Docker Image / build (push) Successful in 3m52s
All checks were successful
Build and Push Docker Image / build (push) Successful in 3m52s
Reviewed-on: #19
This commit is contained in:
commit
d466eee7bb
@ -14,12 +14,10 @@ export default defineConfig({
|
||||
},
|
||||
proxy: {
|
||||
'/api/': {
|
||||
// target: 'http://yt:8003',
|
||||
// target: 'http://10.39.13.78:8001/',
|
||||
target: 'https://test-admin.linyikj.com.cn/',
|
||||
// target: 'http://10.39.13.78:8001',
|
||||
target: 'http://10.39.13.78:8001/',
|
||||
// target: 'https://test-admin.linyikj.com.cn/',
|
||||
// target: 'https://admin.linyikj.com.cn/',
|
||||
// target: 'http://k369a3d6.natappfree.cc/',
|
||||
|
||||
changeOrigin: true,
|
||||
pathRewrite: { '^': '' },
|
||||
},
|
||||
|
||||
847
src/gen/ApiTypes.d.ts
vendored
847
src/gen/ApiTypes.d.ts
vendored
File diff suppressed because it is too large
Load Diff
449
src/gen/Apis.ts
449
src/gen/Apis.ts
@ -41,6 +41,69 @@ export const Apis = {
|
||||
},
|
||||
},
|
||||
},
|
||||
Approval: {
|
||||
ApprovalInstances: {
|
||||
PendingList(data?: ApiTypes.Approval.ApprovalInstances.PendingList): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/pending_list', { data });
|
||||
},
|
||||
PendingCount(): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/pending_count', {});
|
||||
},
|
||||
MyApplyList(): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/my_apply_list', {});
|
||||
},
|
||||
Show(data: ApiTypes.Approval.ApprovalInstances.Show): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/show', { data });
|
||||
},
|
||||
Approve(data: ApiTypes.Approval.ApprovalInstances.Approve): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/approve', { data });
|
||||
},
|
||||
Cancel(data: ApiTypes.Approval.ApprovalInstances.Cancel): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/cancel', { data });
|
||||
},
|
||||
Transfer(data: ApiTypes.Approval.ApprovalInstances.Transfer): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/transfer', { data });
|
||||
},
|
||||
List(data?: ApiTypes.Approval.ApprovalInstances.List): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/list', { data });
|
||||
},
|
||||
ProcessedList(data?: ApiTypes.Approval.ApprovalInstances.ProcessedList): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/processed_list', { data });
|
||||
},
|
||||
CcList(data?: ApiTypes.Approval.ApprovalInstances.CcList): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_instances/cc_list', { data });
|
||||
},
|
||||
},
|
||||
ApprovalTemplates: {
|
||||
List(data?: ApiTypes.Approval.ApprovalTemplates.List): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Approval.ApprovalTemplates.Store): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.Approval.ApprovalTemplates.Update): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/update', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Approval.ApprovalTemplates.Show): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/show', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.Approval.ApprovalTemplates.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.Approval.ApprovalTemplates.Restore): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Approval.ApprovalTemplates.Delete): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/delete', { data });
|
||||
},
|
||||
ToggleEnabled(data: ApiTypes.Approval.ApprovalTemplates.ToggleEnabled): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/toggle_enabled', { data });
|
||||
},
|
||||
ReplaceApprover(data: ApiTypes.Approval.ApprovalTemplates.ReplaceApprover): Promise<MyResponseType> {
|
||||
return request('admin/approval/approval_templates/replace_approver', { data });
|
||||
},
|
||||
},
|
||||
},
|
||||
Archive: {
|
||||
HouseOccupants: {
|
||||
List(data?: ApiTypes.Archive.HouseOccupants.List): Promise<MyResponseType> {
|
||||
@ -131,6 +194,32 @@ export const Apis = {
|
||||
return request('admin/asset/asset_buildings/select', { data });
|
||||
},
|
||||
},
|
||||
AssetCarPorts: {
|
||||
List(data?: ApiTypes.Asset.AssetCarPorts.List): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_car_ports/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Asset.AssetCarPorts.Store): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_car_ports/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.Asset.AssetCarPorts.Update): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_car_ports/update', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Asset.AssetCarPorts.Show): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_car_ports/show', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.Asset.AssetCarPorts.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_car_ports/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.Asset.AssetCarPorts.Restore): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_car_ports/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Asset.AssetCarPorts.Delete): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_car_ports/delete', { data });
|
||||
},
|
||||
Select(data?: ApiTypes.Asset.AssetCarPorts.Select): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_car_ports/select', { data });
|
||||
},
|
||||
},
|
||||
AssetHouses: {
|
||||
List(data?: ApiTypes.Asset.AssetHouses.List): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_houses/list', { data });
|
||||
@ -150,6 +239,9 @@ export const Apis = {
|
||||
Select(data?: ApiTypes.Asset.AssetHouses.Select): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_houses/select', { data });
|
||||
},
|
||||
SelectFullName(data?: ApiTypes.Asset.AssetHouses.SelectFullName): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_houses/select_full_name', { data });
|
||||
},
|
||||
Import(data?: ApiTypes.Asset.AssetHouses.Import): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_houses/import', { data });
|
||||
},
|
||||
@ -160,6 +252,46 @@ export const Apis = {
|
||||
return request('admin/asset/asset_houses/export', { responseType: 'blob',data });
|
||||
},
|
||||
},
|
||||
AssetParkingPlaces: {
|
||||
List(data?: ApiTypes.Asset.AssetParkingPlaces.List): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_parking_places/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Asset.AssetParkingPlaces.Store): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_parking_places/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.Asset.AssetParkingPlaces.Update): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_parking_places/update', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Asset.AssetParkingPlaces.Show): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_parking_places/show', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.Asset.AssetParkingPlaces.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_parking_places/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.Asset.AssetParkingPlaces.Restore): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_parking_places/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Asset.AssetParkingPlaces.Delete): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_parking_places/delete', { data });
|
||||
},
|
||||
Select(data?: ApiTypes.Asset.AssetParkingPlaces.Select): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_parking_places/select', { data });
|
||||
},
|
||||
},
|
||||
AssetProjectAdmins: {
|
||||
List(data?: ApiTypes.Asset.AssetProjectAdmins.List): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_project_admins/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Asset.AssetProjectAdmins.Store): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_project_admins/store', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Asset.AssetProjectAdmins.Show): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_project_admins/show', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Asset.AssetProjectAdmins.Delete): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_project_admins/delete', { data });
|
||||
},
|
||||
},
|
||||
AssetProjects: {
|
||||
List(data?: ApiTypes.Asset.AssetProjects.List): Promise<MyResponseType> {
|
||||
return request('admin/asset/asset_projects/list', { data });
|
||||
@ -296,6 +428,9 @@ export const Apis = {
|
||||
DownloadTemplate(): Promise<MyResponseType> {
|
||||
return request('admin/bill/house_bills/download_template', {responseType: 'blob',});
|
||||
},
|
||||
Export(data: ApiTypes.Bill.HouseBills.Export): Promise<MyResponseType> {
|
||||
return request('admin/bill/house_bills/export', { responseType: 'blob',data });
|
||||
},
|
||||
},
|
||||
},
|
||||
Collcetion: {
|
||||
@ -435,7 +570,7 @@ export const Apis = {
|
||||
},
|
||||
},
|
||||
CompanyApps: {
|
||||
List(data?: ApiTypes.Company.CompanyApps.List): Promise<MyResponseType> {
|
||||
List(data: ApiTypes.Company.CompanyApps.List): Promise<MyResponseType> {
|
||||
return request('admin/company/company_apps/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Company.CompanyApps.Store): Promise<MyResponseType> {
|
||||
@ -451,6 +586,26 @@ export const Apis = {
|
||||
return request('admin/company/company_apps/delete', { data });
|
||||
},
|
||||
},
|
||||
CompanyConfigs: {
|
||||
List(data?: ApiTypes.Company.CompanyConfigs.List): Promise<MyResponseType> {
|
||||
return request('admin/company/company_configs/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Company.CompanyConfigs.Store): Promise<MyResponseType> {
|
||||
return request('admin/company/company_configs/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.Company.CompanyConfigs.Update): Promise<MyResponseType> {
|
||||
return request('admin/company/company_configs/update', { data });
|
||||
},
|
||||
GetDetail(data: ApiTypes.Company.CompanyConfigs.GetDetail): Promise<MyResponseType> {
|
||||
return request('admin/company/company_configs/get_detail', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Company.CompanyConfigs.Show): Promise<MyResponseType> {
|
||||
return request('admin/company/company_configs/show', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Company.CompanyConfigs.Delete): Promise<MyResponseType> {
|
||||
return request('admin/company/company_configs/delete', { data });
|
||||
},
|
||||
},
|
||||
CompanyEmployees: {
|
||||
List(data?: ApiTypes.Company.CompanyEmployees.List): Promise<MyResponseType> {
|
||||
return request('admin/company/company_employees/list', { data });
|
||||
@ -461,6 +616,9 @@ export const Apis = {
|
||||
Update(data: ApiTypes.Company.CompanyEmployees.Update): Promise<MyResponseType> {
|
||||
return request('admin/company/company_employees/update', { data });
|
||||
},
|
||||
ResetPassword(data: ApiTypes.Company.CompanyEmployees.ResetPassword): Promise<MyResponseType> {
|
||||
return request('admin/company/company_employees/reset_password', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Company.CompanyEmployees.Show): Promise<MyResponseType> {
|
||||
return request('admin/company/company_employees/show', { data });
|
||||
},
|
||||
@ -482,6 +640,20 @@ export const Apis = {
|
||||
DownloadTemplate(): Promise<MyResponseType> {
|
||||
return request('admin/company/company_employees/download_template', {responseType: 'blob',});
|
||||
},
|
||||
Export(data?: ApiTypes.Company.CompanyEmployees.Export): Promise<MyResponseType> {
|
||||
return request('admin/company/company_employees/export', { responseType: 'blob',data });
|
||||
},
|
||||
},
|
||||
CompanyPermissions: {
|
||||
GetPermissions(data: ApiTypes.Company.CompanyPermissions.GetPermissions): Promise<MyResponseType> {
|
||||
return request('admin/company/company_permissions/get_permissions', { data });
|
||||
},
|
||||
SetPermissions(data: ApiTypes.Company.CompanyPermissions.SetPermissions): Promise<MyResponseType> {
|
||||
return request('admin/company/company_permissions/set_permissions', { data });
|
||||
},
|
||||
PermissionTree(): Promise<MyResponseType> {
|
||||
return request('admin/company/company_permissions/permission_tree', {});
|
||||
},
|
||||
},
|
||||
CompanyPositions: {
|
||||
List(data?: ApiTypes.Company.CompanyPositions.List): Promise<MyResponseType> {
|
||||
@ -546,6 +718,26 @@ export const Apis = {
|
||||
return request('admin/company/company_property_brands/select', { data });
|
||||
},
|
||||
},
|
||||
CompanyQuickActions: {
|
||||
List(data: ApiTypes.Company.CompanyQuickActions.List): Promise<MyResponseType> {
|
||||
return request('admin/company/company_quick_actions/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Company.CompanyQuickActions.Store): Promise<MyResponseType> {
|
||||
return request('admin/company/company_quick_actions/store', { data });
|
||||
},
|
||||
BatchStore(data: ApiTypes.Company.CompanyQuickActions.BatchStore): Promise<MyResponseType> {
|
||||
return request('admin/company/company_quick_actions/batch_store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.Company.CompanyQuickActions.Update): Promise<MyResponseType> {
|
||||
return request('admin/company/company_quick_actions/update', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Company.CompanyQuickActions.Show): Promise<MyResponseType> {
|
||||
return request('admin/company/company_quick_actions/show', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Company.CompanyQuickActions.Delete): Promise<MyResponseType> {
|
||||
return request('admin/company/company_quick_actions/delete', { data });
|
||||
},
|
||||
},
|
||||
CompanyReceiptAccounts: {
|
||||
List(data?: ApiTypes.Company.CompanyReceiptAccounts.List): Promise<MyResponseType> {
|
||||
return request('admin/company/company_receipt_accounts/list', { data });
|
||||
@ -572,6 +764,26 @@ export const Apis = {
|
||||
return request('admin/company/company_receipt_accounts/select', { data });
|
||||
},
|
||||
},
|
||||
OrganizationProjects: {
|
||||
List(data?: ApiTypes.Company.OrganizationProjects.List): Promise<MyResponseType> {
|
||||
return request('admin/company/organization_projects/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Company.OrganizationProjects.Store): Promise<MyResponseType> {
|
||||
return request('admin/company/organization_projects/store', { data });
|
||||
},
|
||||
BatchStore(data: ApiTypes.Company.OrganizationProjects.BatchStore): Promise<MyResponseType> {
|
||||
return request('admin/company/organization_projects/batch_store', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Company.OrganizationProjects.Show): Promise<MyResponseType> {
|
||||
return request('admin/company/organization_projects/show', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Company.OrganizationProjects.Delete): Promise<MyResponseType> {
|
||||
return request('admin/company/organization_projects/delete', { data });
|
||||
},
|
||||
DeleteByOrganization(data: ApiTypes.Company.OrganizationProjects.DeleteByOrganization): Promise<MyResponseType> {
|
||||
return request('admin/company/organization_projects/delete_by_organization', { data });
|
||||
},
|
||||
},
|
||||
Organizations: {
|
||||
List(data?: ApiTypes.Company.Organizations.List): Promise<MyResponseType> {
|
||||
return request('admin/company/organizations/list', { data });
|
||||
@ -664,6 +876,40 @@ export const Apis = {
|
||||
},
|
||||
},
|
||||
},
|
||||
GoodsReleases: {
|
||||
GoodsReleases: {
|
||||
List(data?: ApiTypes.GoodsReleases.GoodsReleases.List): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.GoodsReleases.GoodsReleases.Store): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.GoodsReleases.GoodsReleases.Update): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/update', { data });
|
||||
},
|
||||
Show(data: ApiTypes.GoodsReleases.GoodsReleases.Show): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/show', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.GoodsReleases.GoodsReleases.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.GoodsReleases.GoodsReleases.Restore): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.GoodsReleases.GoodsReleases.Delete): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/delete', { data });
|
||||
},
|
||||
ApproveByEmployee(data: ApiTypes.GoodsReleases.GoodsReleases.ApproveByEmployee): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/approve_by_employee', { data });
|
||||
},
|
||||
Release(data: ApiTypes.GoodsReleases.GoodsReleases.Release): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/release', { data });
|
||||
},
|
||||
ScanRelease(data: ApiTypes.GoodsReleases.GoodsReleases.ScanRelease): Promise<MyResponseType> {
|
||||
return request('admin/goods_releases/goods_releases/scan_release', { data });
|
||||
},
|
||||
},
|
||||
},
|
||||
Grid: {
|
||||
Grids: {
|
||||
List(data?: ApiTypes.Grid.Grids.List): Promise<MyResponseType> {
|
||||
@ -690,6 +936,23 @@ export const Apis = {
|
||||
},
|
||||
},
|
||||
HouseCharage: {
|
||||
HouseChargeHasCarPorts: {
|
||||
List(data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.List): Promise<MyResponseType> {
|
||||
return request('admin/house_charage/house_charge_has_car_ports/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.Store): Promise<MyResponseType> {
|
||||
return request('admin/house_charage/house_charge_has_car_ports/store', { data });
|
||||
},
|
||||
GetChargeStandardCarPortIds(data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.GetChargeStandardCarPortIds): Promise<MyResponseType> {
|
||||
return request('admin/house_charage/house_charge_has_car_ports/get_charge_standard_car_port_ids', { data });
|
||||
},
|
||||
Show(data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.Show): Promise<MyResponseType> {
|
||||
return request('admin/house_charage/house_charge_has_car_ports/show', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.HouseCharage.HouseChargeHasCarPorts.Delete): Promise<MyResponseType> {
|
||||
return request('admin/house_charage/house_charge_has_car_ports/delete', { data });
|
||||
},
|
||||
},
|
||||
HouseChargeHasHouses: {
|
||||
List(data: ApiTypes.HouseCharage.HouseChargeHasHouses.List): Promise<MyResponseType> {
|
||||
return request('admin/house_charage/house_charge_has_houses/list', { data });
|
||||
@ -783,10 +1046,45 @@ export const Apis = {
|
||||
return request('admin/house_order/house_order_payments/delete', { data });
|
||||
},
|
||||
},
|
||||
HouseOrderRefunds: {
|
||||
List(data?: ApiTypes.HouseOrder.HouseOrderRefunds.List): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_order_refunds/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.HouseOrder.HouseOrderRefunds.Store): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_order_refunds/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.HouseOrder.HouseOrderRefunds.Update): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_order_refunds/update', { data });
|
||||
},
|
||||
Show(data: ApiTypes.HouseOrder.HouseOrderRefunds.Show): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_order_refunds/show', { data });
|
||||
},
|
||||
Audit(data: ApiTypes.HouseOrder.HouseOrderRefunds.Audit): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_order_refunds/audit', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.HouseOrder.HouseOrderRefunds.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_order_refunds/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.HouseOrder.HouseOrderRefunds.Restore): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_order_refunds/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.HouseOrder.HouseOrderRefunds.Delete): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_order_refunds/delete', { data });
|
||||
},
|
||||
},
|
||||
HouseOrders: {
|
||||
List(data?: ApiTypes.HouseOrder.HouseOrders.List): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.HouseOrder.HouseOrders.Store): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.HouseOrder.HouseOrders.Update): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/update', { data });
|
||||
},
|
||||
Audit(data: ApiTypes.HouseOrder.HouseOrders.Audit): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/audit', { data });
|
||||
},
|
||||
Show(data: ApiTypes.HouseOrder.HouseOrders.Show): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/show', { data });
|
||||
},
|
||||
@ -799,6 +1097,44 @@ export const Apis = {
|
||||
Delete(data: ApiTypes.HouseOrder.HouseOrders.Delete): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/delete', { data });
|
||||
},
|
||||
Export(data: ApiTypes.HouseOrder.HouseOrders.Export): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/export', { responseType: 'blob',data });
|
||||
},
|
||||
UpdateSerialNumber(data: ApiTypes.HouseOrder.HouseOrders.UpdateSerialNumber): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/update_serial_number', { data });
|
||||
},
|
||||
BatchUpdateSerialNumber(data: ApiTypes.HouseOrder.HouseOrders.BatchUpdateSerialNumber): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/batch_update_serial_number', { data });
|
||||
},
|
||||
ImportSerialNumber(data: ApiTypes.HouseOrder.HouseOrders.ImportSerialNumber): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/import_serial_number', { data });
|
||||
},
|
||||
DownloadSerialNumberTemplate(): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/download_serial_number_template', {responseType: 'blob',});
|
||||
},
|
||||
GetPayCode(data: ApiTypes.HouseOrder.HouseOrders.GetPayCode): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_orders/get_pay_code', { data });
|
||||
},
|
||||
},
|
||||
HousePrepaymentLogs: {
|
||||
List(data?: ApiTypes.HouseOrder.HousePrepaymentLogs.List): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_logs/list', { data });
|
||||
},
|
||||
Deduct(data: ApiTypes.HouseOrder.HousePrepaymentLogs.Deduct): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_logs/deduct', { data });
|
||||
},
|
||||
Show(data: ApiTypes.HouseOrder.HousePrepaymentLogs.Show): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_logs/show', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.HouseOrder.HousePrepaymentLogs.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_logs/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.HouseOrder.HousePrepaymentLogs.Restore): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_logs/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.HouseOrder.HousePrepaymentLogs.Delete): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_logs/delete', { data });
|
||||
},
|
||||
},
|
||||
HousePrepaymentPayments: {
|
||||
List(data?: ApiTypes.HouseOrder.HousePrepaymentPayments.List): Promise<MyResponseType> {
|
||||
@ -811,6 +1147,32 @@ export const Apis = {
|
||||
return request('admin/house_order/house_prepayment_payments/delete', { data });
|
||||
},
|
||||
},
|
||||
HousePrepaymentRefunds: {
|
||||
List(data?: ApiTypes.HouseOrder.HousePrepaymentRefunds.List): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_refunds/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Store): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_refunds/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Update): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_refunds/update', { data });
|
||||
},
|
||||
Show(data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Show): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_refunds/show', { data });
|
||||
},
|
||||
Audit(data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Audit): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_refunds/audit', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.HouseOrder.HousePrepaymentRefunds.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_refunds/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Restore): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_refunds/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.HouseOrder.HousePrepaymentRefunds.Delete): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayment_refunds/delete', { data });
|
||||
},
|
||||
},
|
||||
HousePrepayments: {
|
||||
List(data?: ApiTypes.HouseOrder.HousePrepayments.List): Promise<MyResponseType> {
|
||||
return request('admin/house_order/house_prepayments/list', { data });
|
||||
@ -1010,6 +1372,62 @@ export const Apis = {
|
||||
},
|
||||
},
|
||||
},
|
||||
Refund: {
|
||||
Refunds: {
|
||||
List(data?: ApiTypes.Refund.Refunds.List): Promise<MyResponseType> {
|
||||
return request('admin/refund/refunds/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.Refund.Refunds.Store): Promise<MyResponseType> {
|
||||
return request('admin/refund/refunds/store', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Refund.Refunds.Show): Promise<MyResponseType> {
|
||||
return request('admin/refund/refunds/show', { data });
|
||||
},
|
||||
Complete(data: ApiTypes.Refund.Refunds.Complete): Promise<MyResponseType> {
|
||||
return request('admin/refund/refunds/complete', { data });
|
||||
},
|
||||
Cancel(data: ApiTypes.Refund.Refunds.Cancel): Promise<MyResponseType> {
|
||||
return request('admin/refund/refunds/cancel', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.Refund.Refunds.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/refund/refunds/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.Refund.Refunds.Restore): Promise<MyResponseType> {
|
||||
return request('admin/refund/refunds/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Refund.Refunds.Delete): Promise<MyResponseType> {
|
||||
return request('admin/refund/refunds/delete', { data });
|
||||
},
|
||||
},
|
||||
},
|
||||
Visitor: {
|
||||
VisitorApplies: {
|
||||
List(data?: ApiTypes.Visitor.VisitorApplies.List): Promise<MyResponseType> {
|
||||
return request('admin/visitor/visitor_applies/list', { data });
|
||||
},
|
||||
Show(data: ApiTypes.Visitor.VisitorApplies.Show): Promise<MyResponseType> {
|
||||
return request('admin/visitor/visitor_applies/show', { data });
|
||||
},
|
||||
Approve(data: ApiTypes.Visitor.VisitorApplies.Approve): Promise<MyResponseType> {
|
||||
return request('admin/visitor/visitor_applies/approve', { data });
|
||||
},
|
||||
Reject(data: ApiTypes.Visitor.VisitorApplies.Reject): Promise<MyResponseType> {
|
||||
return request('admin/visitor/visitor_applies/reject', { data });
|
||||
},
|
||||
Scan(data: ApiTypes.Visitor.VisitorApplies.Scan): Promise<MyResponseType> {
|
||||
return request('admin/visitor/visitor_applies/scan', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.Visitor.VisitorApplies.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/visitor/visitor_applies/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.Visitor.VisitorApplies.Restore): Promise<MyResponseType> {
|
||||
return request('admin/visitor/visitor_applies/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.Visitor.VisitorApplies.Delete): Promise<MyResponseType> {
|
||||
return request('admin/visitor/visitor_applies/delete', { data });
|
||||
},
|
||||
},
|
||||
},
|
||||
WorkOrder: {
|
||||
HouseWorkLogs: {
|
||||
List(data: ApiTypes.WorkOrder.HouseWorkLogs.List): Promise<MyResponseType> {
|
||||
@ -1025,6 +1443,29 @@ export const Apis = {
|
||||
return request('admin/work_order/house_work_logs/delete', { data });
|
||||
},
|
||||
},
|
||||
HouseWorkOrderPayments: {
|
||||
List(data?: ApiTypes.WorkOrder.HouseWorkOrderPayments.List): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_order_payments/list', { data });
|
||||
},
|
||||
Store(data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Store): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_order_payments/store', { data });
|
||||
},
|
||||
Update(data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Update): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_order_payments/update', { data });
|
||||
},
|
||||
Show(data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Show): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_order_payments/show', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.WorkOrder.HouseWorkOrderPayments.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_order_payments/soft_delete', { data });
|
||||
},
|
||||
Restore(data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Restore): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_order_payments/restore', { data });
|
||||
},
|
||||
Delete(data: ApiTypes.WorkOrder.HouseWorkOrderPayments.Delete): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_order_payments/delete', { data });
|
||||
},
|
||||
},
|
||||
HouseWorkOrders: {
|
||||
List(data?: ApiTypes.WorkOrder.HouseWorkOrders.List): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_orders/list', { data });
|
||||
@ -1041,6 +1482,12 @@ export const Apis = {
|
||||
Assign(data: ApiTypes.WorkOrder.HouseWorkOrders.Assign): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_orders/assign', { data });
|
||||
},
|
||||
Visited(data: ApiTypes.WorkOrder.HouseWorkOrders.Visited): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_orders/visited', { data });
|
||||
},
|
||||
Closed(data: ApiTypes.WorkOrder.HouseWorkOrders.Closed): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_orders/closed', { data });
|
||||
},
|
||||
SoftDelete(data: ApiTypes.WorkOrder.HouseWorkOrders.SoftDelete): Promise<MyResponseType> {
|
||||
return request('admin/work_order/house_work_orders/soft_delete', { data });
|
||||
},
|
||||
|
||||
241
src/gen/Enums.ts
241
src/gen/Enums.ts
@ -26,6 +26,69 @@ export const ActivityEnrollsStatusEnum= {
|
||||
'Cancelled': {"text":"取消","color":"#ff9800","value":"Cancelled"},
|
||||
};
|
||||
|
||||
// 审批实例状态枚举
|
||||
export const ApprovalInstancesStatusEnum= {
|
||||
'Pending': {"text":"待审批","color":"#ff9800","value":"Pending"},
|
||||
'Approved': {"text":"已通过","color":"#4caf50","value":"Approved"},
|
||||
'Rejected': {"text":"已拒绝","color":"#f44336","value":"Rejected"},
|
||||
'Cancelled': {"text":"已取消","color":"#9e9e9e","value":"Cancelled"},
|
||||
};
|
||||
|
||||
// 审批记录状态枚举
|
||||
export const ApprovalRecordsStatusEnum= {
|
||||
'Pending': {"text":"待审批","color":"#ff9800","value":"Pending"},
|
||||
'Approved': {"text":"同意","color":"#4caf50","value":"Approved"},
|
||||
'Rejected': {"text":"拒绝","color":"#f44336","value":"Rejected"},
|
||||
'Transferred': {"text":"转交","color":"#9c27b0","value":"Transferred"},
|
||||
};
|
||||
|
||||
// 审批方式枚举
|
||||
export const ApprovalTemplateNodesApproveTypeEnum= {
|
||||
'And': {"text":"会签","color":"#4caf50","value":"And"},
|
||||
'Or': {"text":"或签","color":"#ff9800","value":"Or"},
|
||||
};
|
||||
|
||||
// 审批节点类型枚举
|
||||
export const ApprovalTemplateNodesNodeTypeEnum= {
|
||||
'Approver': {"text":"审批人","color":"#2196f3","value":"Approver"},
|
||||
'CC': {"text":"抄送人","color":"#9e9e9e","value":"CC"},
|
||||
};
|
||||
|
||||
// 审批业务类型枚举
|
||||
export const ApprovalTemplatesTypeEnum= {
|
||||
'Contract': {"text":"合同","color":"#2196f3","value":"Contract"},
|
||||
'Finance': {"text":"财务","color":"#4caf50","value":"Finance"},
|
||||
'Refund': {"text":"退款","color":"#f44336","value":"Refund"},
|
||||
};
|
||||
|
||||
// 车位产权类型
|
||||
export const AssetCarPortsPropertyTypeEnum= {
|
||||
'Ownership': {"text":"产权车位","color":"#1e90ff","value":"Ownership"},
|
||||
'CivilDefense': {"text":"人防车位","color":"#32cd32","value":"CivilDefense"},
|
||||
'Public': {"text":"公共车位","color":"#ff8c00","value":"Public"},
|
||||
'Temporary': {"text":"临时车位","color":"#ba55d3","value":"Temporary"},
|
||||
'Other': {"text":"其他","color":"#a9a9a9","value":"Other"},
|
||||
};
|
||||
|
||||
// 车位状态
|
||||
export const AssetCarPortsStatusEnum= {
|
||||
'Unsold': {"text":"未售","color":"#6b7280","value":"Unsold"},
|
||||
'Sold': {"text":"已售","color":"#10b981","value":"Sold"},
|
||||
'Rented': {"text":"已租","color":"#3b82f6","value":"Rented"},
|
||||
'Unrented': {"text":"未租","color":"#f59e0b","value":"Unrented"},
|
||||
'Other': {"text":"其他","color":"#9ca3af","value":"Other"},
|
||||
};
|
||||
|
||||
// 车位类型
|
||||
export const AssetCarPortsTypeEnum= {
|
||||
'Standard': {"text":"标准车位","color":"#1e90ff","value":"Standard"},
|
||||
'Mini': {"text":"微型车位","color":"#32cd32","value":"Mini"},
|
||||
'Accessible': {"text":"无障碍车位","color":"#ff8c00","value":"Accessible"},
|
||||
'Tandem': {"text":"子母车位","color":"#ba55d3","value":"Tandem"},
|
||||
'Mechanical': {"text":"机械车位","color":"#20b2aa","value":"Mechanical"},
|
||||
'Other': {"text":"其他","color":"#a9a9a9","value":"Other"},
|
||||
};
|
||||
|
||||
// AssetHousesOrientationEnum
|
||||
export const AssetHousesOrientationEnum= {
|
||||
'East': {"text":"东","color":"#007bff","value":"East"},
|
||||
@ -81,6 +144,34 @@ export const AssetHousesUsageEnum= {
|
||||
'PropertyRoom': {"text":"物业用房","color":"#dc3545","value":"PropertyRoom"},
|
||||
};
|
||||
|
||||
// 车场收费类型
|
||||
export const AssetParkingPlacesChargeTypeEnum= {
|
||||
'Free': {"text":"免费","color":"#32cd32","value":"Free"},
|
||||
'TemporaryCharge': {"text":"临停收费","color":"#1e90ff","value":"TemporaryCharge"},
|
||||
'MonthlyCharge': {"text":"月卡收费","color":"#ff8c00","value":"MonthlyCharge"},
|
||||
'MixedCharge': {"text":"混合收费","color":"#ba55d3","value":"MixedCharge"},
|
||||
};
|
||||
|
||||
// 车场位置类型
|
||||
export const AssetParkingPlacesLocationTypeEnum= {
|
||||
'GroundParking': {"text":"地面车场","color":"#ffa500","value":"GroundParking"},
|
||||
'UndergroundParking': {"text":"地下车场","color":"#4682b4","value":"UndergroundParking"},
|
||||
};
|
||||
|
||||
// 车场产权类型
|
||||
export const AssetParkingPlacesPropertyTypeEnum= {
|
||||
'DispersedOwnership': {"text":"分散产权","color":"#ff7f50","value":"DispersedOwnership"},
|
||||
'SingleOwnership': {"text":"单一产权","color":"#1e90ff","value":"SingleOwnership"},
|
||||
'SharedOwnership': {"text":"共有产权","color":"#32cd32","value":"SharedOwnership"},
|
||||
};
|
||||
|
||||
// 车场类型
|
||||
export const AssetParkingPlacesTypeEnum= {
|
||||
'ResidentialSupporting': {"text":"住宅配套车场","color":"#ff8c00","value":"ResidentialSupporting"},
|
||||
'Commercial': {"text":"商业车场","color":"#1e90ff","value":"Commercial"},
|
||||
'Mixed': {"text":"混合车场","color":"#32cd32","value":"Mixed"},
|
||||
};
|
||||
|
||||
// AssetProjectsChargeEnum
|
||||
export const AssetProjectsChargeEnum= {
|
||||
'Contract': {"text":"包干制","color":"#007bff","value":"Contract"},
|
||||
@ -94,6 +185,12 @@ export const AssetProjectsEntrustTypeEnum= {
|
||||
'GovernmentFullEntrust': {"text":"政府类全委","color":"#ffc107","value":"GovernmentFullEntrust"},
|
||||
};
|
||||
|
||||
// 业权类型
|
||||
export const AssetProjectsOwnershipTypeEnum= {
|
||||
'SingleOwnership': {"text":"单业权","color":"#00cc66","value":"SingleOwnership"},
|
||||
'MultipleOwnership': {"text":"多业权","color":"#0099ff","value":"MultipleOwnership"},
|
||||
};
|
||||
|
||||
// AssetProjectsPropertyTypeEnum
|
||||
export const AssetProjectsPropertyTypeEnum= {
|
||||
'Residence': {"text":"住宅","color":"#ff0000","value":"Residence"},
|
||||
@ -154,7 +251,7 @@ export const BannersTypeEnum= {
|
||||
|
||||
// 缓存类型
|
||||
export const CacheTypeEnum= {
|
||||
'MobilePhoneVerificationCode': {"text":"手机验证码","color":"#ad9561","value":"MobilePhoneVerificationCode"},
|
||||
'MobilePhoneVerificationCode': {"text":"手机验证码","color":"#3f0fe5","value":"MobilePhoneVerificationCode"},
|
||||
};
|
||||
|
||||
// CompaniesMerchantTypeEnum
|
||||
@ -182,6 +279,11 @@ export const CompanyAppsWorkTypeEnum= {
|
||||
'WorkWechat': {"text":"企微","color":"#0091ea","value":"WorkWechat"},
|
||||
};
|
||||
|
||||
// CompanyConfigsConfigKeyEnum
|
||||
export const CompanyConfigsConfigKeyEnum= {
|
||||
'Theme': {"text":"主题色","color":"#3b82f6","value":"Theme"},
|
||||
};
|
||||
|
||||
// CompanyEmployeeBacklogsStatusEnum
|
||||
export const CompanyEmployeeBacklogsStatusEnum= {
|
||||
'Pending': {"text":"待办","color":"#FF6600","value":"Pending"},
|
||||
@ -279,6 +381,29 @@ export const CustomerOpinionsTypeEnum= {
|
||||
'FeatureSuggestion': {"text":"新功能建议","color":"#00bfff","value":"FeatureSuggestion"},
|
||||
};
|
||||
|
||||
// 物品放行审核状态
|
||||
export const GoodsReleasesAuditStatusEnum= {
|
||||
'Pending': {"text":"待审核","color":"#faad14","value":"Pending"},
|
||||
'Approved': {"text":"已通过","color":"#52c41a","value":"Approved"},
|
||||
'Rejected': {"text":"已退回","color":"#ff4d4f","value":"Rejected"},
|
||||
};
|
||||
|
||||
// 物品放行通行类型
|
||||
export const GoodsReleasesPassedTypeEnum= {
|
||||
'Moving': {"text":"搬家","color":"#1890ff","value":"Moving"},
|
||||
'Delivery': {"text":"出货","color":"#52c41a","value":"Delivery"},
|
||||
'Other': {"text":"其他","color":"#faad14","value":"Other"},
|
||||
};
|
||||
|
||||
// 物品放行状态
|
||||
export const GoodsReleasesStatusEnum= {
|
||||
'Pending': {"text":"待审核","color":"#faad14","value":"Pending"},
|
||||
'OwnerApproved': {"text":"业主已审","color":"#1890ff","value":"OwnerApproved"},
|
||||
'Approved': {"text":"已通过","color":"#52c41a","value":"Approved"},
|
||||
'Rejected': {"text":"已退回","color":"#ff4d4f","value":"Rejected"},
|
||||
'Released': {"text":"已放行","color":"#722ed1","value":"Released"},
|
||||
};
|
||||
|
||||
// 账单状态枚举
|
||||
export const HouseBillsBillStatusEnum= {
|
||||
'PendingPayment': {"text":"待支付","color":"#facc15","value":"PendingPayment"},
|
||||
@ -296,6 +421,7 @@ export const HouseBillsTypeEnum= {
|
||||
'ElectricityFee': {"text":"电费","color":"#f59e0b","value":"ElectricityFee"},
|
||||
'SharedWaterFee': {"text":"公摊水费","color":"#8b5cf6","value":"SharedWaterFee"},
|
||||
'SharedElectricityFee': {"text":"公摊电费","color":"#ec4899","value":"SharedElectricityFee"},
|
||||
'CarPortFee': {"text":"车位费","color":"#f59e0b","value":"CarPortFee"},
|
||||
};
|
||||
|
||||
// HouseChargeStandardsApportionmentMethodEnum
|
||||
@ -346,6 +472,7 @@ export const HouseChargeStandardsStatusEnum= {
|
||||
export const HouseChargeStandardsTypeEnum= {
|
||||
'House': {"text":"房屋","color":"#3b82f6","value":"House"},
|
||||
'Meter': {"text":"仪表","color":"#10b981","value":"Meter"},
|
||||
'CarPort': {"text":"车位","color":"#f59e0b","value":"CarPort"},
|
||||
};
|
||||
|
||||
// HouseChargeTaskDetailsStatusEnum
|
||||
@ -355,6 +482,12 @@ export const HouseChargeTaskDetailsStatusEnum= {
|
||||
'Failed': {"text":"失败","color":"#ef4444","value":"Failed"},
|
||||
};
|
||||
|
||||
// HouseChargeTaskDetailsTargetTypeEnum
|
||||
export const HouseChargeTaskDetailsTargetTypeEnum= {
|
||||
'House': {"text":"房屋","color":"#3b82f6","value":"House"},
|
||||
'CarPort': {"text":"车位","color":"#f59e0b","value":"CarPort"},
|
||||
};
|
||||
|
||||
// HouseChargeTasksStatusEnum
|
||||
export const HouseChargeTasksStatusEnum= {
|
||||
'Pending': {"text":"待执行","color":"#f59e0b","value":"Pending"},
|
||||
@ -471,6 +604,23 @@ export const HouseOccupantsStatusEnum= {
|
||||
'Unbound': {"text":"解绑","color":"#f5222d","value":"Unbound"},
|
||||
};
|
||||
|
||||
// HouseOrderRefundsRefundStatusEnum
|
||||
export const HouseOrderRefundsRefundStatusEnum= {
|
||||
'Requested': {"text":"已申请","color":"#2196f3","value":"Requested"},
|
||||
'Reviewing': {"text":"审核中","color":"#ff9800","value":"Reviewing"},
|
||||
'Rejected': {"text":"已拒绝","color":"#f44336","value":"Rejected"},
|
||||
'Processing': {"text":"退款中","color":"#9c27b0","value":"Processing"},
|
||||
'Refunded': {"text":"已退款","color":"#4caf50","value":"Refunded"},
|
||||
'Failed': {"text":"退款失败","color":"#e91e63","value":"Failed"},
|
||||
};
|
||||
|
||||
// 订单审核状态枚举
|
||||
export const HouseOrdersAuditStatusEnum= {
|
||||
'Pending': {"text":"待审核","color":"#f59e0b","value":"Pending"},
|
||||
'Approved': {"text":"已通过","color":"#10b981","value":"Approved"},
|
||||
'Rejected': {"text":"已驳回","color":"#ef4444","value":"Rejected"},
|
||||
};
|
||||
|
||||
// 订单状态枚举
|
||||
export const HouseOrdersOrderStatusEnum= {
|
||||
'Pending': {"text":"待支付","color":"#facc15","value":"Pending"},
|
||||
@ -487,6 +637,8 @@ export const HouseOrdersPaymentMethodEnum= {
|
||||
'BankTransfer': {"text":"银行转账","color":"#6c757d","value":"BankTransfer"},
|
||||
'TongLian': {"text":"通联支付","color":"#ff9f0a","value":"TongLian"},
|
||||
'Prepayment': {"text":"预缴支付","color":"#f59e0b","value":"Prepayment"},
|
||||
'POS': {"text":"POS机","color":"#8b5cf6","value":"POS"},
|
||||
'Cash': {"text":"现金","color":"#dc2626","value":"Cash"},
|
||||
};
|
||||
|
||||
// HousePrepaymentLogsTypeEnum
|
||||
@ -534,6 +686,7 @@ export const HouseRegistersTypeEnum= {
|
||||
'MoveIn': {"text":"搬入登记","color":"#ffc53d","value":"MoveIn"},
|
||||
'UpdateInfo': {"text":"修改信息","color":"#722ed1","value":"UpdateInfo"},
|
||||
'UpdatePhone': {"text":"修改电话","color":"#13c2c2","value":"UpdatePhone"},
|
||||
'GoodsRelease': {"text":"物品放行","color":"#a0d911","value":"GoodsRelease"},
|
||||
};
|
||||
|
||||
// HouseRegistersUsagePlanEnum
|
||||
@ -544,6 +697,12 @@ export const HouseRegistersUsagePlanEnum= {
|
||||
'Commercial': {"text":"商用","color":"#f5222d","value":"Commercial"},
|
||||
};
|
||||
|
||||
// HouseWorkOrdersAcceptResultEnum
|
||||
export const HouseWorkOrdersAcceptResultEnum= {
|
||||
'Satisfied': {"text":"满意","color":"#28A745","value":"Satisfied"},
|
||||
'Unsatisfied': {"text":"不满意","color":"#DC3545","value":"Unsatisfied"},
|
||||
};
|
||||
|
||||
// HouseWorkOrdersAssignStatusEnum
|
||||
export const HouseWorkOrdersAssignStatusEnum= {
|
||||
'Unassigned': {"text":"未指派","color":"#ff0000","value":"Unassigned"},
|
||||
@ -572,13 +731,22 @@ export const HouseWorkOrdersLevelEnum= {
|
||||
// HouseWorkOrdersLocationEnum
|
||||
export const HouseWorkOrdersLocationEnum= {
|
||||
'CommonArea': {"text":"公共区域","color":"#ff0000","value":"CommonArea"},
|
||||
'MyHome': {"text":"我家","color":"#00ff00","value":"MyHome"},
|
||||
'MyHome': {"text":"房屋","color":"#00ff00","value":"MyHome"},
|
||||
};
|
||||
|
||||
// HouseWorkOrdersRefundStatusEnum
|
||||
export const HouseWorkOrdersRefundStatusEnum= {
|
||||
'Refunding': {"text":"退款中","color":"#FFA500","value":"Refunding"},
|
||||
'Refunded': {"text":"已退款","color":"#28A745","value":"Refunded"},
|
||||
'PartialRefund': {"text":"部分退款","color":"#17A2B8","value":"PartialRefund"},
|
||||
};
|
||||
|
||||
// HouseWorkOrdersStatusEnum
|
||||
export const HouseWorkOrdersStatusEnum= {
|
||||
'Pending': {"text":"待处理","color":"#FFA500","value":"Pending"},
|
||||
'Processing': {"text":"处理中","color":"#1E90FF","value":"Processing"},
|
||||
'PendingPayment': {"text":"待支付","color":"#FF8C00","value":"PendingPayment"},
|
||||
'PendingAcceptance': {"text":"待验收","color":"#17A2B8","value":"PendingAcceptance"},
|
||||
'Completed': {"text":"已完成","color":"#28A745","value":"Completed"},
|
||||
'Closed': {"text":"已关闭","color":"#6C757D","value":"Closed"},
|
||||
};
|
||||
@ -590,6 +758,12 @@ export const HouseWorkOrdersTypeEnum= {
|
||||
'Complaint': {"text":"投诉","color":"#aa00ff","value":"Complaint"},
|
||||
};
|
||||
|
||||
// 公告接收对象
|
||||
export const MsgPropertyAnnouncementsObjectEnum= {
|
||||
'Customer': {"text":"客户","color":"#3b82f6","value":"Customer"},
|
||||
'Employee': {"text":"员工","color":"#10b981","value":"Employee"},
|
||||
};
|
||||
|
||||
// MsgPropertyAnnouncementsPublishTypeEnum
|
||||
export const MsgPropertyAnnouncementsPublishTypeEnum= {
|
||||
'Manual': {"text":"手动","color":"#4caf50","value":"Manual"},
|
||||
@ -604,6 +778,30 @@ export const OrganizationsTypeEnum= {
|
||||
'Department': {"text":"部门","color":"#dc3545","value":"Department"},
|
||||
};
|
||||
|
||||
// 退款状态枚举
|
||||
export const RefundsStatusEnum= {
|
||||
'Pending': {"text":"待审批","color":"#ff9800","value":"Pending"},
|
||||
'Reviewing': {"text":"审核中","color":"#2196f3","value":"Reviewing"},
|
||||
'Approved': {"text":"已审批","color":"#9c27b0","value":"Approved"},
|
||||
'Processing': {"text":"退款中","color":"#00bcd4","value":"Processing"},
|
||||
'Completed': {"text":"已退款","color":"#4caf50","value":"Completed"},
|
||||
'PartialRefund': {"text":"部分退款","color":"#8bc34a","value":"PartialRefund"},
|
||||
'Rejected': {"text":"已拒绝","color":"#f44336","value":"Rejected"},
|
||||
'Failed': {"text":"退款失败","color":"#e91e63","value":"Failed"},
|
||||
'Cancelled': {"text":"已取消","color":"#9e9e9e","value":"Cancelled"},
|
||||
};
|
||||
|
||||
// 退款类型枚举
|
||||
export const RefundsTypeEnum= {
|
||||
'HouseBill': {"text":"物业费退款","color":"#2196f3","value":"HouseBill"},
|
||||
'Bill': {"text":"账单退款","color":"#4caf50","value":"Bill"},
|
||||
'ContractBill': {"text":"合同退款","color":"#ff9800","value":"ContractBill"},
|
||||
'RenovationApply': {"text":"退保证金","color":"#86aac3ff","value":"RenovationApply"},
|
||||
'HouseDoorCard': {"text":"门禁退款","color":"#9c27b0","value":"HouseDoorCard"},
|
||||
'HouseWorkOrder': {"text":"工单退款","color":"#00bcd4","value":"HouseWorkOrder"},
|
||||
'Other': {"text":"其他退款","color":"#607d8b","value":"Other"},
|
||||
};
|
||||
|
||||
// 性别
|
||||
export const SexEnum= {
|
||||
'Male': {"text":"男","color":"#0000ff","value":"Male"},
|
||||
@ -614,6 +812,7 @@ export const SexEnum= {
|
||||
export const SysModuleEnum= {
|
||||
'Admin': {"text":"管理员","color":"#cf1322","value":"Admin"},
|
||||
'Customer': {"text":"客户","color":"#d4b106","value":"Customer"},
|
||||
'Company': {"text":"机构","color":"#1890ff","value":"Company"},
|
||||
};
|
||||
|
||||
// SysPermissionsTypeEnum
|
||||
@ -623,6 +822,44 @@ export const SysPermissionsTypeEnum= {
|
||||
'Button': {"text":"按钮","color":"#97224f","value":"Button"},
|
||||
};
|
||||
|
||||
// 来访事由
|
||||
export const VisitReasonEnum= {
|
||||
'Visit': {"text":"拜访","color":"#2196f3","value":"Visit"},
|
||||
'Business': {"text":"商务","color":"#3f51b5","value":"Business"},
|
||||
'Interview': {"text":"面试","color":"#9c27b0","value":"Interview"},
|
||||
'Private': {"text":"私人","color":"#e91e63","value":"Private"},
|
||||
'Express': {"text":"快递","color":"#00bcd4","value":"Express"},
|
||||
'Renovation': {"text":"装修","color":"#ff5722","value":"Renovation"},
|
||||
'Other': {"text":"其他","color":"#607d8b","value":"Other"},
|
||||
};
|
||||
|
||||
// 访客申请状态
|
||||
export const VisitorAppliesStatusEnum= {
|
||||
'Pending': {"text":"审核中","color":"#ff9800","value":"Pending"},
|
||||
'Approved': {"text":"已通过","color":"#4caf50","value":"Approved"},
|
||||
'Rejected': {"text":"已驳回","color":"#f44336","value":"Rejected"},
|
||||
'Expired': {"text":"已失效","color":"#9e9e9e","value":"Expired"},
|
||||
};
|
||||
|
||||
// 访客申请类型
|
||||
export const VisitorApplyTypeEnum= {
|
||||
'invite': {"text":"业主邀请","color":"#2196f3","value":"invite"},
|
||||
'register': {"text":"访客登记","color":"#ff9800","value":"register"},
|
||||
};
|
||||
|
||||
// 通行码状态
|
||||
export const VisitorCodeStatusEnum= {
|
||||
'unused': {"text":"未使用","color":"#2196f3","value":"unused"},
|
||||
'used': {"text":"已使用","color":"#4caf50","value":"used"},
|
||||
'expired': {"text":"已过期","color":"#f44336","value":"expired"},
|
||||
};
|
||||
|
||||
// 访客扫码类型
|
||||
export const VisitorScanTypeEnum= {
|
||||
'enter': {"text":"进入","color":"#4caf50","value":"enter"},
|
||||
'exit': {"text":"离开","color":"#f44336","value":"exit"},
|
||||
};
|
||||
|
||||
// WechatAuthsPlatformEnum
|
||||
export const WechatAuthsPlatformEnum= {
|
||||
'MiniProgram': {"text":"微信小程序","color":"#3b82f6","value":"MiniProgram"},
|
||||
|
||||
@ -3,7 +3,6 @@ import {
|
||||
MyColumns,
|
||||
MyPageContainer,
|
||||
MyProTableProps,
|
||||
usePageTabs,
|
||||
} from '@/common';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import {
|
||||
@ -12,7 +11,6 @@ import {
|
||||
ActivitiesStatusEnum,
|
||||
} from '@/gen/Enums';
|
||||
import { ProTable } from '@ant-design/pro-components';
|
||||
import { useNavigate } from '@umijs/max';
|
||||
import { Space } from 'antd';
|
||||
import ActivityCreate from './modals/ActivityCreate';
|
||||
import ActivityShow from './modals/ActivityShow';
|
||||
@ -20,14 +18,6 @@ import ActivityUpdate from './modals/ActivityUpdate';
|
||||
import EnrollsList from './modals/EnrollsList';
|
||||
|
||||
export default function Index({ title = '项目活动' }) {
|
||||
const navigate = useNavigate();
|
||||
|
||||
// 注册当前页面为标签页
|
||||
usePageTabs({
|
||||
tabKey: 'activity',
|
||||
tabLabel: title,
|
||||
});
|
||||
|
||||
return (
|
||||
<MyPageContainer
|
||||
title={title}
|
||||
|
||||
@ -46,6 +46,12 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
.catch(() => false)
|
||||
}
|
||||
columns={[
|
||||
Selects?.Companies({
|
||||
key: 'companies_id',
|
||||
title: '选择机构',
|
||||
colProps: { span: 24 },
|
||||
required: true,
|
||||
}),
|
||||
...(props?.item?.id
|
||||
? []
|
||||
: [
|
||||
|
||||
@ -28,22 +28,31 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
form={form}
|
||||
onOpenChange={(open: any) => {
|
||||
if (open && props.item) {
|
||||
form.setFieldsValue(props.item);
|
||||
form.setFieldValue('project_ids', props.item?.project_ids[0]);
|
||||
form.setFieldValue('activity_time', [
|
||||
props.item?.start_time,
|
||||
props.item?.end_time,
|
||||
]);
|
||||
form.setFieldValue('content', props.item?.content);
|
||||
form.setFieldsValue({
|
||||
...props.item,
|
||||
activity_time: [
|
||||
props.item?.start_time || '',
|
||||
props.item?.end_time || '',
|
||||
],
|
||||
project_ids: props?.item?.activity_projects?.map(
|
||||
(res: any) => res?.asset_projects_id,
|
||||
),
|
||||
});
|
||||
// form.setFieldValue('project_ids', props.item?.project_ids[0]);
|
||||
// form.setFieldValue('activity_time', [
|
||||
// props.item?.start_time || '',
|
||||
// props.item?.end_time || '',
|
||||
// ]);
|
||||
// form.setFieldValue('content', props.item?.content);
|
||||
}
|
||||
}}
|
||||
onFinish={async (values) =>
|
||||
Apis.Activity.Activities.Update({
|
||||
...values,
|
||||
id: props.item?.id ?? 0,
|
||||
project_ids: values?.project_ids
|
||||
? [values?.project_ids]
|
||||
: [props.item?.id],
|
||||
// project_ids: values?.project_ids
|
||||
// ? [values?.project_ids]
|
||||
// : [props.item?.id],
|
||||
})
|
||||
.then(() => {
|
||||
props.reload?.();
|
||||
@ -53,17 +62,35 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
.catch(() => false)
|
||||
}
|
||||
columns={[
|
||||
Selects?.Companies({
|
||||
key: 'companies_id',
|
||||
title: '选择机构',
|
||||
colProps: { span: 24 },
|
||||
required: true,
|
||||
}),
|
||||
Selects?.AssetProjects({
|
||||
key: 'project_ids',
|
||||
title: '关联项目',
|
||||
colProps: { span: 24 },
|
||||
required: true,
|
||||
formItemProps: { ...rulesHelper.array },
|
||||
fieldProps: {
|
||||
showSearch: true,
|
||||
mode: 'multiple',
|
||||
fieldNames: {
|
||||
label: 'label',
|
||||
value: 'value',
|
||||
},
|
||||
labelRender: (res: any) => {
|
||||
if (res?.label) {
|
||||
return res?.label;
|
||||
} else {
|
||||
return props?.item?.activity_projects?.map((i: any) => {
|
||||
if (res?.value === i?.asset_projects_id) {
|
||||
return i?.asset_project?.name;
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
}),
|
||||
{
|
||||
|
||||
@ -8,15 +8,12 @@ import {
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import { BannersRedirectTypeEnum, BannersTypeEnum } from '@/gen/Enums';
|
||||
import { ProTable } from '@ant-design/pro-components';
|
||||
import { useNavigate } from '@umijs/max';
|
||||
import { Space } from 'antd';
|
||||
import BannerCreate from './modals/BannerCreate';
|
||||
import BannerShow from './modals/BannerShow';
|
||||
import BannerUpdate from './modals/BannerUpdate';
|
||||
|
||||
export default function Index({ title = '内容管理' }) {
|
||||
const navigate = useNavigate();
|
||||
|
||||
// 注册当前页面为标签页
|
||||
usePageTabs({
|
||||
tabKey: 'banners',
|
||||
|
||||
@ -79,6 +79,13 @@ export default function Index({ title = '员工管理' }) {
|
||||
dataIndex: ['position', 'name'],
|
||||
search: false,
|
||||
},
|
||||
{
|
||||
title: '是否管理员',
|
||||
dataIndex: 'is_company_admin',
|
||||
render: (_, item: any) => {
|
||||
return item?.is_company_admin ? '是' : '否';
|
||||
},
|
||||
},
|
||||
MyColumns.UpdatedAt(),
|
||||
// MyColumns.CreatedAt(),
|
||||
MyColumns.Option({
|
||||
|
||||
@ -35,7 +35,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
})
|
||||
.then(() => {
|
||||
props.reload?.();
|
||||
message.success(props.title + '成功');
|
||||
message.success('编辑成功');
|
||||
return true;
|
||||
})
|
||||
.catch(() => false)
|
||||
@ -50,7 +50,7 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
colProps: { span: 24 },
|
||||
required: true,
|
||||
fieldProps: {
|
||||
onChange: (val: any) => {
|
||||
onChange: () => {
|
||||
form.setFieldsValue({
|
||||
organizations_id: undefined,
|
||||
positions_id: undefined,
|
||||
@ -59,7 +59,6 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
},
|
||||
}),
|
||||
]),
|
||||
|
||||
{
|
||||
valueType: 'dependency',
|
||||
name: ['companies_id'],
|
||||
@ -77,7 +76,6 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
];
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
key: 'name',
|
||||
title: '姓名',
|
||||
@ -101,6 +99,14 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
valueEnum: SexEnum,
|
||||
required: true,
|
||||
}),
|
||||
{
|
||||
title: '密码',
|
||||
key: 'password',
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
tooltip: '请设置机构端登录密码',
|
||||
colProps: { span: 24 },
|
||||
},
|
||||
|
||||
{
|
||||
valueType: 'dependency',
|
||||
name: ['companies_id'],
|
||||
@ -117,13 +123,12 @@ export default function Create(props: MyBetaModalFormProps) {
|
||||
];
|
||||
},
|
||||
},
|
||||
|
||||
// {
|
||||
// key: 'password',
|
||||
// title: '密码',
|
||||
// colProps: { span: 24 },
|
||||
// valueType: 'password',
|
||||
// },
|
||||
{
|
||||
title: '是否管理员',
|
||||
key: 'is_company_admin',
|
||||
valueType: 'switch',
|
||||
colProps: { span: 6 },
|
||||
},
|
||||
{
|
||||
key: 'remark',
|
||||
title: '备注',
|
||||
|
||||
@ -69,6 +69,11 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
valueEnum: SexEnum,
|
||||
required: true,
|
||||
}),
|
||||
{
|
||||
title: '密码',
|
||||
key: 'password',
|
||||
colProps: { span: 24 },
|
||||
},
|
||||
Selects?.Positions({
|
||||
title: '岗位',
|
||||
params: { companies_id: props?.item?.companies_id },
|
||||
@ -76,14 +81,21 @@ export default function Update(props: MyBetaModalFormProps) {
|
||||
formItemProps: { ...rulesHelper.text },
|
||||
fieldProps: {
|
||||
showSearch: true,
|
||||
labelRender: (res: any) => {
|
||||
if (res?.label) {
|
||||
return res?.label;
|
||||
} else {
|
||||
return props?.item?.position?.name;
|
||||
}
|
||||
},
|
||||
},
|
||||
}),
|
||||
// {
|
||||
// key: 'password',
|
||||
// title: '密码',
|
||||
// colProps: { span: 24 },
|
||||
// valueType: 'password',
|
||||
// },
|
||||
{
|
||||
title: '是否管理员',
|
||||
key: 'is_company_admin',
|
||||
valueType: 'switch',
|
||||
colProps: { span: 6 },
|
||||
},
|
||||
{
|
||||
key: 'remark',
|
||||
title: '备注',
|
||||
|
||||
@ -3,7 +3,6 @@ import {
|
||||
MyColumns,
|
||||
MyPageContainer,
|
||||
MyProTableProps,
|
||||
usePageTabs,
|
||||
} from '@/common';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import { ProTable } from '@ant-design/pro-components';
|
||||
@ -16,12 +15,6 @@ import CompanyUpdate from './modals/CompanyUpdate';
|
||||
export default function Index({ title = '机构列表' }) {
|
||||
const navigate = useNavigate();
|
||||
|
||||
// 注册当前页面为标签页
|
||||
usePageTabs({
|
||||
tabKey: 'company-companies',
|
||||
tabLabel: title,
|
||||
});
|
||||
|
||||
return (
|
||||
<MyPageContainer
|
||||
title={title}
|
||||
|
||||
357
src/pages/company/list/pages/set_page_info.tsx
Normal file
357
src/pages/company/list/pages/set_page_info.tsx
Normal file
@ -0,0 +1,357 @@
|
||||
import {
|
||||
MyButtons,
|
||||
MyFormItems,
|
||||
MyModalFormProps,
|
||||
MyPageContainer,
|
||||
} from '@/common';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import { CaretDownOutlined } from '@ant-design/icons';
|
||||
import { BetaSchemaForm } from '@ant-design/pro-components';
|
||||
import { useSearchParams } from '@umijs/max';
|
||||
import { Card, Col, Flex, Form, message, Row, Tag } from 'antd';
|
||||
import { useEffect, useState } from 'react';
|
||||
import './style.scss';
|
||||
|
||||
interface FormData {
|
||||
logo: { url: string }[];
|
||||
color: string;
|
||||
pageColor: string;
|
||||
pageColorValue?: string[];
|
||||
admin_logo?: { url: string }[];
|
||||
}
|
||||
|
||||
export default function Index({ title = '小程序页面配置' }) {
|
||||
const [form] = Form.useForm<FormData>();
|
||||
const [getShowData, setShowData] = useState<any>({});
|
||||
const [searchParams] = useSearchParams();
|
||||
const [formValues, setFormValues] = useState<FormData>({
|
||||
logo: [],
|
||||
admin_logo: [],
|
||||
color: '#1890ff',
|
||||
// pageColor: `linear-gradient(180deg,rgba(255, 255, 255, 0.44) 0%,rgba(255, 255, 255, 0) 100%),linear-gradient(146deg,#d3d7ff 0%,rgba(255, 255, 255, 0) 37%),linear-gradient(194deg,#dffff3 0%,#f8f8f8 30%)`,
|
||||
pageColor: `linear-gradient(180deg, rgba(208, 229, 255, 0.44) 0%, #f7f7f7 100%, rgba(255, 255, 255, 0) 100%), linear-gradient(145deg, #D3D7FF 3%, rgba(255, 255, 255, 0) 49%), linear-gradient(222deg, #84FFD8 0%, #F7F7F7 67%)`,
|
||||
});
|
||||
const GET_DEFAULT_COLOR = [
|
||||
{
|
||||
color: '#d3d7ff',
|
||||
percent: 0,
|
||||
},
|
||||
{
|
||||
color: '#dffff3',
|
||||
percent: 100,
|
||||
},
|
||||
];
|
||||
// 处理表单值变化,用于实时预览
|
||||
const handleValuesChange = (row: FormData) => {
|
||||
console.log('row', row);
|
||||
let data: ApiTypes.Company.CompanyConfigs.Store = {
|
||||
companies_id: Number(searchParams.get('id')) || 0,
|
||||
config_key: 'Theme',
|
||||
config_value: {
|
||||
color: formValues?.color,
|
||||
pageColor: formValues?.pageColor,
|
||||
logo: row?.logo || formValues?.logo,
|
||||
pageColorValue: formValues?.pageColorValue,
|
||||
admin_logo: row?.admin_logo,
|
||||
},
|
||||
};
|
||||
|
||||
console.log(data);
|
||||
if (getShowData?.id) {
|
||||
Apis.Company.CompanyConfigs.Update({
|
||||
...data,
|
||||
id: getShowData?.id || 0,
|
||||
}).then(() => {
|
||||
message.success('保存成功');
|
||||
});
|
||||
} else {
|
||||
Apis.Company.CompanyConfigs.Store(data).then(() => {
|
||||
message.success('保存成功');
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
if (searchParams.get('id')) {
|
||||
Apis.Company.CompanyConfigs.GetDetail({
|
||||
companies_id: searchParams.get('id') ?? 0,
|
||||
config_key: 'Theme',
|
||||
}).then((res: any) => {
|
||||
console.log('res', res);
|
||||
let cssStrColor =
|
||||
res?.data?.config_value?.pageColorValue?.[0] || '#d3d7ff';
|
||||
let cssEndColor =
|
||||
res?.data?.config_value?.pageColorValue?.[1] || '#dffff3';
|
||||
setShowData(res?.data);
|
||||
let newCss = `linear-gradient(180deg,rgba(208, 229, 255, 0.44) 0%,#f7f7f7 100%,rgba(255, 255, 255, 0) 100%),linear-gradient(145deg, ${cssStrColor} 3%,rgba(255, 255, 255, 0) 49%),linear-gradient(222deg, ${cssEndColor} 0%,#F7F7F7 67%)`;
|
||||
setFormValues({
|
||||
...res?.data?.config_value,
|
||||
pageColor: newCss,
|
||||
});
|
||||
console.log('newCss', newCss);
|
||||
form.setFieldsValue({
|
||||
...res?.data?.config_value,
|
||||
pageColorOtherValue: [
|
||||
{
|
||||
color: cssStrColor || '',
|
||||
percent: 0,
|
||||
},
|
||||
{
|
||||
color: cssEndColor || '',
|
||||
percent: 100,
|
||||
},
|
||||
],
|
||||
});
|
||||
console.log('res', res);
|
||||
});
|
||||
}
|
||||
}, [searchParams.get('id')]);
|
||||
|
||||
return (
|
||||
<MyPageContainer
|
||||
title={title}
|
||||
enableTabs={true}
|
||||
tabKey="company-set-page-info"
|
||||
tabLabel={title}
|
||||
>
|
||||
<div className="page-config-container">
|
||||
<Row gutter={[24, 0]}>
|
||||
{/* 左侧表单区域 */}
|
||||
<Col span={12}>
|
||||
<Card title="页面配置" className="form-card">
|
||||
<BetaSchemaForm<ApiTypes.Company.CompanyConfigs.Store>
|
||||
{...MyModalFormProps.props}
|
||||
title={title}
|
||||
// 基础表单
|
||||
layoutType="Form"
|
||||
width="800px"
|
||||
wrapperCol={{ span: 24 }}
|
||||
labelAlign="left"
|
||||
form={form}
|
||||
submitter={{
|
||||
render: () => {
|
||||
return [
|
||||
<div
|
||||
key="submitter"
|
||||
style={{
|
||||
display: 'flex',
|
||||
paddingTop: '50px',
|
||||
justifyContent: 'flex-end',
|
||||
}}
|
||||
>
|
||||
<MyButtons.Default
|
||||
key="TemporaryStorage"
|
||||
size="middle"
|
||||
type="primary"
|
||||
onClick={() => {
|
||||
handleValuesChange(form.getFieldsValue());
|
||||
}}
|
||||
title="保存"
|
||||
/>
|
||||
</div>,
|
||||
];
|
||||
},
|
||||
}}
|
||||
onFinish={async () => {
|
||||
// onSave(values);
|
||||
}}
|
||||
columns={[
|
||||
MyFormItems.UploadImages({
|
||||
key: 'logo',
|
||||
title: (
|
||||
<div>
|
||||
机构小程序Logo
|
||||
<span style={{ fontSize: '12px', color: '#999' }}>
|
||||
(请上传正方形,建议:480*480,png格式的Logo)
|
||||
</span>
|
||||
</div>
|
||||
),
|
||||
max: 1,
|
||||
colProps: { span: 24 },
|
||||
fieldProps: {
|
||||
onChange: (val: { url: string }[]) => {
|
||||
setFormValues({ ...formValues, logo: val });
|
||||
},
|
||||
},
|
||||
}),
|
||||
MyFormItems.UploadImages({
|
||||
key: 'admin_logo',
|
||||
title: (
|
||||
<div>
|
||||
机构后台Logo
|
||||
<span style={{ fontSize: '12px', color: '#999' }}>
|
||||
(请上传长方形横版,jpg,png格式的Logo)
|
||||
</span>
|
||||
</div>
|
||||
),
|
||||
max: 1,
|
||||
colProps: { span: 24 },
|
||||
}),
|
||||
{
|
||||
title: (
|
||||
<div>
|
||||
品牌主色配置
|
||||
<span style={{ fontSize: '12px', color: '#999' }}>
|
||||
(设置主品牌色,将应用于按钮、链接等交互组件)
|
||||
</span>
|
||||
</div>
|
||||
),
|
||||
colProps: { span: 24 },
|
||||
valueType: 'color',
|
||||
key: 'color',
|
||||
fieldProps: {
|
||||
showText: true,
|
||||
defaultValue: formValues?.color || '#1890ff',
|
||||
format: 'rgb',
|
||||
onChange: (value: any, css: string) => {
|
||||
console.log('value', value, css);
|
||||
setFormValues({ ...formValues, color: css });
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
title: (
|
||||
<div>
|
||||
全局渐变色配置
|
||||
<span style={{ fontSize: '12px', color: '#999' }}>
|
||||
(设置全局渐变色,将应用于页面背景等元素)
|
||||
</span>
|
||||
</div>
|
||||
),
|
||||
key: 'pageColorOtherValue',
|
||||
colProps: { span: 24 },
|
||||
valueType: 'color',
|
||||
fieldProps: {
|
||||
defaultValue: GET_DEFAULT_COLOR,
|
||||
mode: 'gradient',
|
||||
arrow: true,
|
||||
color: 'toRgb',
|
||||
format: 'rgb',
|
||||
showText: true,
|
||||
onChange: (value: any, css: any) => {
|
||||
console.log('value', value, css);
|
||||
let cssStrColor = value?.colors
|
||||
? value?.colors?.[0]?.color?.metaColor
|
||||
: value;
|
||||
let cssEndColor = value?.colors
|
||||
? value?.colors?.[1]?.color?.metaColor
|
||||
: value;
|
||||
// let newCss = `linear-gradient(180deg,rgba(255, 255, 255, 0.44) 0%,rgba(255, 255, 255, 0) 100%),linear-gradient(146deg, rgba(${cssStrColor?.r}, ${cssStrColor?.g}, ${cssStrColor?.b},${cssStrColor?.a}) 0%, rgba(255, 255, 255, 0) 37%),linear-gradient(194deg, rgba(${cssEndColor?.r}, ${cssEndColor?.g}, ${cssEndColor?.b},${cssEndColor?.a}) 0%, #f8f8f8 30%)`;
|
||||
let newCss = `linear-gradient(180deg, rgba(208, 229, 255, 0.44) 50%, #f7f7f7 100%, rgba(255, 255, 255, 0) 100%), linear-gradient(145deg, rgba(${cssStrColor?.r}, ${cssStrColor?.g}, ${cssStrColor?.b},${cssStrColor?.a}) 3%, rgba(255, 255, 255, 0) 49%), linear-gradient(222deg, rgba(${cssEndColor?.r}, ${cssEndColor?.g}, ${cssEndColor?.b},${cssEndColor?.a}) 0%, #F7F7F7 67%)`;
|
||||
setFormValues({
|
||||
...formValues,
|
||||
pageColor: newCss,
|
||||
pageColorValue: [
|
||||
`rgba(${cssStrColor?.r}, ${cssStrColor?.g}, ${cssStrColor?.b},${cssStrColor?.a})`,
|
||||
`rgba(${cssEndColor?.r}, ${cssEndColor?.g}, ${cssEndColor?.b},${cssEndColor?.a})`,
|
||||
],
|
||||
});
|
||||
},
|
||||
},
|
||||
},
|
||||
]}
|
||||
/>
|
||||
</Card>
|
||||
</Col>
|
||||
{/* 右侧手机预览区域 */}
|
||||
<Col span={12}>
|
||||
<Card title="实时预览" className="preview-card">
|
||||
<div className="phone-frame">
|
||||
<div className="phone-screen">
|
||||
{/* 手机顶部状态栏 */}
|
||||
<div className="phone-status-bar">
|
||||
<div className="status-left">9:41</div>
|
||||
<div className="status-right">信号 电池</div>
|
||||
</div>
|
||||
{/* 页面内容 */}
|
||||
<div
|
||||
className="phone-content"
|
||||
style={{
|
||||
background: formValues?.pageColor,
|
||||
backgroundRepeat: 'no-repeat',
|
||||
}}
|
||||
>
|
||||
<div className="page-title">
|
||||
{formValues?.logo?.[0] && (
|
||||
<img
|
||||
src={formValues?.logo?.[0]?.url}
|
||||
width="24"
|
||||
height="24"
|
||||
style={{ marginRight: 8 }}
|
||||
alt=""
|
||||
/>
|
||||
)}
|
||||
某小区1栋1单元2102 <CaretDownOutlined />
|
||||
</div>
|
||||
|
||||
<div className="tab-content">
|
||||
<Flex vertical gap="large">
|
||||
<Flex gap="small" wrap>
|
||||
<div
|
||||
className="phone-button"
|
||||
style={{
|
||||
backgroundColor: formValues?.color,
|
||||
}}
|
||||
>
|
||||
按钮
|
||||
</div>
|
||||
<div
|
||||
className="phone-button"
|
||||
style={{
|
||||
border: `1px solid ${formValues?.color}`,
|
||||
color: formValues?.color,
|
||||
}}
|
||||
>
|
||||
按钮
|
||||
</div>
|
||||
<div
|
||||
className="phone-button"
|
||||
style={{
|
||||
color: formValues?.color,
|
||||
}}
|
||||
>
|
||||
按钮
|
||||
</div>
|
||||
</Flex>
|
||||
<Flex gap="small" wrap>
|
||||
<Tag color={formValues?.color}>标签</Tag>
|
||||
<Tag color={formValues?.color}>标签</Tag>
|
||||
<Tag color={formValues?.color}>标签</Tag>
|
||||
</Flex>
|
||||
<div className="tabs-content">
|
||||
<div
|
||||
className="tab-item"
|
||||
style={{
|
||||
backgroundColor: formValues?.color,
|
||||
color: '#fff',
|
||||
}}
|
||||
>
|
||||
tab 1
|
||||
</div>
|
||||
<div className="tab-item">tab 2</div>
|
||||
<div className="tab-item">tab 3</div>
|
||||
</div>
|
||||
<div className="tabs-content">
|
||||
<div
|
||||
className="tab-item"
|
||||
style={{
|
||||
borderBottom: `5px solid ${formValues?.color}`,
|
||||
}}
|
||||
>
|
||||
tab 1
|
||||
</div>
|
||||
<div className="tab-item">tab 2</div>
|
||||
<div className="tab-item">tab 3</div>
|
||||
</div>
|
||||
</Flex>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
</div>
|
||||
</MyPageContainer>
|
||||
);
|
||||
}
|
||||
198
src/pages/company/list/pages/style.scss
Normal file
198
src/pages/company/list/pages/style.scss
Normal file
@ -0,0 +1,198 @@
|
||||
.page-config-container {
|
||||
padding: 20px;
|
||||
min-height: calc(100vh - 160px);
|
||||
}
|
||||
|
||||
.form-card {
|
||||
height: 100%;
|
||||
overflow-y: auto;
|
||||
|
||||
.page-config-form {
|
||||
.ant-form-item {
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.preview-card {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
.ant-card-body {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
padding: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.phone-frame {
|
||||
width: 375px;
|
||||
height: 812px;
|
||||
border: 10px solid #333;
|
||||
border-radius: 40px;
|
||||
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
background-color: #000;
|
||||
|
||||
// 手机顶部听筒
|
||||
&::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
width: 60px;
|
||||
height: 5px;
|
||||
background-color: #222;
|
||||
border-radius: 3px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
// 手机底部home键
|
||||
&::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
bottom: 10px;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
border: 2px solid #333;
|
||||
border-radius: 50%;
|
||||
z-index: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.phone-screen {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #f8f8f8;
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
position: relative;
|
||||
overflow-y: auto;
|
||||
font-size: 14px;
|
||||
color: #333;
|
||||
|
||||
// 滚动条样式
|
||||
&::-webkit-scrollbar {
|
||||
width: 4px;
|
||||
}
|
||||
|
||||
&::-webkit-scrollbar-track {
|
||||
background: rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
&::-webkit-scrollbar-thumb {
|
||||
background: rgba(0, 0, 0, 0.3);
|
||||
border-radius: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.phone-status-bar {
|
||||
height: 44px;
|
||||
background-color: rgba(0, 0, 0, 0.8);
|
||||
color: #fff;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
padding: 0 16px;
|
||||
font-size: 12px;
|
||||
position: sticky;
|
||||
top: 0;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
.phone-header {
|
||||
background-color: #1890ff;
|
||||
color: #fff;
|
||||
padding: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.phone-content {
|
||||
padding: 20px;
|
||||
height: 300px;
|
||||
// min-height: calc(100% - 120px);
|
||||
background: linear-gradient(
|
||||
180deg,
|
||||
rgba(208, 229, 255, 0.44) 0%,
|
||||
rgba(255, 255, 255, 0) 100%
|
||||
),
|
||||
linear-gradient(146deg, #d3d7ff 0%, rgba(255, 255, 255, 0) 37%),
|
||||
linear-gradient(194deg, #dffff3 0%, #ffffff 30%);
|
||||
p {
|
||||
margin: 0 0 16px 0;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
.page-type-indicator {
|
||||
background-color: #f0f0f0;
|
||||
padding: 8px;
|
||||
border-radius: 4px;
|
||||
font-size: 12px;
|
||||
color: #666;
|
||||
margin-top: 20px;
|
||||
}
|
||||
.page-title {
|
||||
margin: 0;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
img {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
margin-right: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
.tab-content {
|
||||
padding: 15px 0 0 0;
|
||||
}
|
||||
.phone-button {
|
||||
padding: 4px 12px;
|
||||
border-radius: 4px;
|
||||
color: #fff;
|
||||
}
|
||||
.tabs-content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
.tab-item {
|
||||
padding: 5px 15px;
|
||||
border-radius: 4px;
|
||||
margin-right: 10px;
|
||||
color: #333;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.phone-footer {
|
||||
background-color: #f5f5f5;
|
||||
color: #666;
|
||||
padding: 12px;
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
border-top: 1px solid #e8e8e8;
|
||||
position: sticky;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
@media (max-width: 1200px) {
|
||||
.page-config-container {
|
||||
.ant-row {
|
||||
.ant-col {
|
||||
&[span='12'] {
|
||||
width: 100%;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -10,10 +10,12 @@ import CompanyUpdate from '../modals/CompanyUpdate';
|
||||
import CompanyApps from '../table/Apps';
|
||||
import Assets from '../table/Assets';
|
||||
import Brands from '../table/Brands';
|
||||
import CustomerEnd from '../table/CustomerEnd';
|
||||
import Employees from '../table/Employees';
|
||||
import Organizations from '../table/Organizations';
|
||||
import Positions from '../table/Positions';
|
||||
import ReceiptAccounts from '../table/ReceiptAccounts';
|
||||
import Roles from '../table/Roles';
|
||||
|
||||
export default function Show({ title }: { title?: string } = {}) {
|
||||
const { id } = useParams<{ id: string }>();
|
||||
@ -44,49 +46,60 @@ export default function Show({ title }: { title?: string } = {}) {
|
||||
|
||||
let items = [
|
||||
{
|
||||
label: '1-应用配置',
|
||||
label: '项目配置',
|
||||
key: '1',
|
||||
closable: false,
|
||||
children: <CompanyApps item={data} />,
|
||||
},
|
||||
|
||||
{
|
||||
label: '2-组织配置',
|
||||
label: '组织配置',
|
||||
key: '2',
|
||||
closable: false,
|
||||
children: <Organizations item={data} />,
|
||||
},
|
||||
{
|
||||
label: '3-岗位配置',
|
||||
label: '岗位配置',
|
||||
key: '3',
|
||||
closable: false,
|
||||
children: <Positions item={data} />,
|
||||
},
|
||||
{
|
||||
label: '4-员工管理',
|
||||
label: '员工配置',
|
||||
key: '4',
|
||||
closable: false,
|
||||
children: <Employees item={data} />,
|
||||
},
|
||||
{
|
||||
label: '5-收款账号添加',
|
||||
label: '账号配置',
|
||||
key: '5',
|
||||
closable: false,
|
||||
children: <ReceiptAccounts item={data} />,
|
||||
},
|
||||
|
||||
{
|
||||
label: '6-品牌配置',
|
||||
label: '应用配置',
|
||||
key: '6',
|
||||
closable: false,
|
||||
children: <Brands item={data} />,
|
||||
},
|
||||
{
|
||||
label: '7-项目配置',
|
||||
label: '品牌配置',
|
||||
key: '7',
|
||||
closable: false,
|
||||
children: <Assets item={data} />,
|
||||
},
|
||||
{
|
||||
label: '权限配置',
|
||||
key: '8',
|
||||
closable: false,
|
||||
children: <Roles item={data} />,
|
||||
},
|
||||
{
|
||||
label: '客户端配置',
|
||||
key: '9',
|
||||
closable: false,
|
||||
children: <CustomerEnd item={data} />,
|
||||
},
|
||||
];
|
||||
return (
|
||||
<MyPageContainer title={title}>
|
||||
@ -105,7 +118,7 @@ export default function Show({ title }: { title?: string } = {}) {
|
||||
}
|
||||
>
|
||||
<div>请按以下顺序配置:</div>
|
||||
<div>
|
||||
<div style={{ padding: '0 0 10px 0' }}>
|
||||
<span>
|
||||
应用配置 ➡️ 组织配置 ➡️ 岗位配置 ➡️ 员工配置 ➡️ 账号配置 ➡️ 品牌配置
|
||||
➡️ 项目配置;
|
||||
|
||||
58
src/pages/company/list/table/CustomerEnd.tsx
Normal file
58
src/pages/company/list/table/CustomerEnd.tsx
Normal file
@ -0,0 +1,58 @@
|
||||
import { MyBetaModalFormProps, MyButtons } from '@/common';
|
||||
import { ProCard } from '@ant-design/pro-components';
|
||||
import { useNavigate } from '@umijs/max';
|
||||
|
||||
export default function CustomerEnd(props: MyBetaModalFormProps) {
|
||||
const navigate = useNavigate();
|
||||
return (
|
||||
<div>
|
||||
<ProCard title="客户端小程序配置" bordered headerBordered gutter={16}>
|
||||
<ProCard
|
||||
title="品牌主色、全局渐变色配置"
|
||||
type="inner"
|
||||
bordered
|
||||
extra={
|
||||
<MyButtons.Default
|
||||
title="去配置"
|
||||
type="primary"
|
||||
size="small"
|
||||
onClick={() => {
|
||||
navigate(
|
||||
`/company/list/pages/set_page_info?id=${props?.item?.id}`,
|
||||
);
|
||||
}}
|
||||
/>
|
||||
}
|
||||
>
|
||||
<div style={{ height: '80px' }}>
|
||||
替换系统默认的颜色统一调整为机构主色,保持视觉格一致
|
||||
</div>
|
||||
</ProCard>
|
||||
<ProCard
|
||||
title="金刚区图标配置"
|
||||
type="inner"
|
||||
bordered
|
||||
extra={
|
||||
<MyButtons.Default title="去配置" type="primary" size="small" />
|
||||
}
|
||||
>
|
||||
<div style={{ height: '80px' }}>
|
||||
品牌主色是机构在小程序中最核心的视觉代表色。通过配置品牌主色,你可以让整个小程序的交互组件自动统一为机构专属风格,提升品牌识别度。
|
||||
</div>
|
||||
</ProCard>
|
||||
<ProCard
|
||||
title="小程序首屏底部菜单图标"
|
||||
type="inner"
|
||||
bordered
|
||||
extra={
|
||||
<MyButtons.Default title="去配置" type="primary" size="small" />
|
||||
}
|
||||
>
|
||||
<div style={{ height: '80px' }}>
|
||||
配置客户端小程序首屏底部菜单图标,请上传png格式图标
|
||||
</div>
|
||||
</ProCard>
|
||||
</ProCard>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
90
src/pages/company/list/table/Roles.tsx
Normal file
90
src/pages/company/list/table/Roles.tsx
Normal file
@ -0,0 +1,90 @@
|
||||
import { MyBetaModalFormProps, MyButtons } from '@/common';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
import { ProCard } from '@ant-design/pro-components';
|
||||
import { message, Space, Tree, TreeProps } from 'antd';
|
||||
import { DataNode } from 'antd/es/tree';
|
||||
import { useEffect, useState } from 'react';
|
||||
|
||||
export default function Index(props: MyBetaModalFormProps) {
|
||||
const [treeData, setTreeData] = useState<DataNode[]>([]);
|
||||
const [checkedKeys, setCheckedKeys] = useState<string[]>([]);
|
||||
|
||||
const processTree = (item: any): DataNode => {
|
||||
return {
|
||||
...item,
|
||||
key: item.id,
|
||||
title: item.id + '_' + item.name,
|
||||
children: item.children?.map(processTree),
|
||||
};
|
||||
};
|
||||
|
||||
const getPermissions = () => {
|
||||
//获取已经配置的,菜单
|
||||
Apis.Company.CompanyPermissions.GetPermissions({
|
||||
companies_id: props?.item?.id || 0,
|
||||
}).then((res: any) => {
|
||||
console.log('res', res);
|
||||
setCheckedKeys(res?.data?.permissions_ids);
|
||||
});
|
||||
};
|
||||
|
||||
const getPermissionTree = () => {
|
||||
//获取机构可配置菜单
|
||||
Apis.Company.CompanyPermissions.PermissionTree().then((res: any) => {
|
||||
const data = res.data?.map(processTree);
|
||||
setTreeData(data);
|
||||
getPermissions();
|
||||
});
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
getPermissionTree();
|
||||
}, []);
|
||||
|
||||
const onCheck: TreeProps['onCheck'] = (checkedKeys, info) => {
|
||||
console.log('onCheck', checkedKeys, info);
|
||||
const ids: string[] = [];
|
||||
info.checkedNodes?.forEach((item: DataNode) => {
|
||||
if (item.children?.length === 0) {
|
||||
ids.push(item.key as string);
|
||||
}
|
||||
});
|
||||
console.log('ids', ids);
|
||||
setCheckedKeys(ids);
|
||||
// props.onChange?.(ids);
|
||||
};
|
||||
|
||||
return (treeData?.length ?? 0) > 0 ? (
|
||||
<ProCard
|
||||
extra={[
|
||||
<MyButtons.Default
|
||||
title="保存"
|
||||
size="middle"
|
||||
type="primary"
|
||||
key="save"
|
||||
onClick={() => {
|
||||
Apis.Company.CompanyPermissions.SetPermissions({
|
||||
companies_id: props?.item?.id || 0,
|
||||
permissions_ids: checkedKeys || [],
|
||||
}).then(() => {
|
||||
message.success('保存成功');
|
||||
});
|
||||
}}
|
||||
/>,
|
||||
]}
|
||||
>
|
||||
<Space direction="vertical">
|
||||
<Tree
|
||||
checkable
|
||||
defaultExpandAll
|
||||
treeData={treeData}
|
||||
onCheck={onCheck}
|
||||
checkedKeys={checkedKeys || []}
|
||||
{...props}
|
||||
/>
|
||||
</Space>
|
||||
</ProCard>
|
||||
) : (
|
||||
<></>
|
||||
);
|
||||
}
|
||||
@ -3,7 +3,6 @@ import {
|
||||
MyColumns,
|
||||
MyPageContainer,
|
||||
MyProTableProps,
|
||||
usePageTabs,
|
||||
} from '@/common';
|
||||
import MyEnumRadioGroup from '@/common/components/formFields/MyEnumRadioGroup';
|
||||
import { Apis } from '@/gen/Apis';
|
||||
@ -20,12 +19,6 @@ export default function Index({ title = '功能' }) {
|
||||
const actionRef = useRef<ActionType>();
|
||||
const [guardName, setGuardName] = useState<string>('Admin');
|
||||
|
||||
// 注册当前页面为标签页
|
||||
usePageTabs({
|
||||
tabKey: 'system-permissions',
|
||||
tabLabel: title,
|
||||
});
|
||||
|
||||
const getData = async () => {
|
||||
let data = await Apis.Permission.SysPermissions.List({
|
||||
guard_name: guardName,
|
||||
|
||||
@ -24,15 +24,24 @@ export default function WorkOrderAssign(
|
||||
trigger={<MyButtons.Edit title={`派发`} />}
|
||||
key={new Date().getTime()}
|
||||
form={form}
|
||||
request={async () => {
|
||||
const res = await Apis.WorkOrder.HouseWorkOrders.Show({
|
||||
id: props.item.id,
|
||||
onOpenChange={(open: any) => {
|
||||
if (open && props.item) {
|
||||
form.setFieldsValue({
|
||||
title: props?.item?.title,
|
||||
content: props?.item?.content,
|
||||
assign_employee_id: props?.item?.assign_employee_id,
|
||||
});
|
||||
return {
|
||||
title: res.data.title,
|
||||
assign_employee_id: res.data.assign_employee_id,
|
||||
};
|
||||
}
|
||||
}}
|
||||
// request={async () => {
|
||||
// const res = await Apis.WorkOrder.HouseWorkOrders.Show({
|
||||
// id: props.item.id,
|
||||
// });
|
||||
// return {
|
||||
// title: res.data.title,
|
||||
// assign_employee_id: res.data.assign_employee_id,
|
||||
// };
|
||||
// }}
|
||||
onFinish={async (values) =>
|
||||
Apis.WorkOrder.HouseWorkOrders.Assign({
|
||||
...values,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user