import type { InjectionKey, UnwrapNestedRefs, Ref } from 'vue';
|
import { inject } from 'vue';
|
import {
|
OrderStatus,
|
HireType,
|
SexRequirement,
|
SalaryTimeTypeEnum,
|
SalaryType,
|
ExternalcontactType,
|
} from '@12333/constants';
|
import { UseStepperReturn } from 'senin-mini/hooks';
|
import { OrderOperateBtnStatus } from '@12333/constants';
|
import { FileItem } from '@nutui/nutui-taro/dist/types/__VUE/uploader/type';
|
|
type PublishOrderSteps = 'step1' | 'step2' | 'step3';
|
|
export interface PublishOrderContext
|
extends UseStepperReturn<PublishOrderSteps, PublishOrderSteps[], PublishOrderSteps> {
|
form: UnwrapNestedRefs<{
|
name: string;
|
hireType: HireType;
|
hireNumber: number;
|
hireEndNumber: number;
|
ageStart: number;
|
ageEnd: number;
|
sexRequirement: SexRequirement;
|
salaryTimeType: SalaryTimeTypeEnum;
|
salaryType: SalaryType;
|
externalcontactType: ExternalcontactType;
|
externalcontactNumber: string;
|
areaList: number[];
|
src: FileItem[];
|
jobIntroduction: string;
|
supplierRefundList: API.SupplierRefundList[];
|
//-----------------------------
|
/** 运费模式 10限时返费 20一次性返费 30 长期返费 */
|
rebateMode: number;
|
/** 运费时长 0连续合作 其他数值就代表时长月份 */
|
rebateTime: number;
|
/** 供应商利润 */
|
supplierProfit: number;
|
/** 10 一次性利润 20 xx元/每人/每小时 30 xx元/每人/每月 */
|
supplierProfitUint: number;
|
/** 返费周期 10 按月,20按日,30按时 */
|
cycleType: number;
|
//-----------------------------
|
manNumber: number;
|
womanNumber: number;
|
industryTypeId: string;
|
integratedSalary: string;
|
provinceCode: number;
|
cityCode: number;
|
countyCode: number;
|
isSyncCircleFriend: boolean;
|
status: OrderStatus;
|
checkRemark: string;
|
}>;
|
orderId: string;
|
orderOperateBtnStatus: OrderOperateBtnStatus;
|
isEdit: Ref<boolean>;
|
}
|
|
export const PublishOrderContextKey: InjectionKey<PublishOrderContext> =
|
Symbol('PublishOrderContextKey');
|
|
export function usePublishOrderContext() {
|
return inject(PublishOrderContextKey);
|
}
|