import { defineStore } from 'pinia';
/**
 * @description AppConfig 系统配置信息
 * @methods getAppInfo 获取系统信息
 * @methods setAppConfigInfo 设置系统信息
 */
export const useAppConfig = defineStore('AppConfig', {
	state: (): AppConfigState => ({
		AppConfigInfo: {
			isRestApproval: false, // 电话控件小休是否要进行审批
			talkingDealTime: 0, // 呼叫中心自动事后处理时间
			isNeedTelNo: false, // 分机签入是否需要选择号码
			isTelNeedVerify: false, // 分机签入是否需要输入密码
			isCustomEvent: false, // 是否开启自定义事件
			isTranspondCity: false, // 是否开启市州互转
			isAverageSendOrder: false, // 是否开启平均派单
			isOpenRepeatedWorkOrders: false, // 是否开启重复工单
			noSignOrgCode: [], // 不参与会签的机构code
			applyDelayTime: 99, // 延期申请限制最大时间
			oldHotlineUrl: '', // 老系统的跳转地址
			fileExt: '', // 限制文件上传的格式
			nationalPlatformWordLimit: 500, // 国家政务服务平台的发布整理字数限制
			handleOpinionWordLimit:2000,  // 办理意见字数限制
			callInOpenType: 2, // 电话呼入弹单方式  1：接通弹屏  2：振铃弹屏
			snapshot:false, // 随手拍开关
		},
	}),
	actions: {
		// 设置系统信息
		setAppConfigInfo(data: object) {
			this.AppConfigInfo = {
				...this.AppConfigInfo,
				...data,
			};
		},
	},
	// 开启数据缓存
	persist: {
		enabled: true,
		strategies: [
			{
				//key的名称
				key: `${import.meta.env.VITE_STORAGE_NAME}_appConfig`,
				//更改默认存储，我更改为localStorage
				storage: localStorage,
				// 可以选择哪些进入local存储，这样就不用全部都进去存储了
				// 默认是全部进去存储
			},
			// {
			// 	key: `${import.meta.env.VITE_STORAGE_NAME}_base`,
			// 	storage: localStorage,
			// 	paths: ['isDutyOn','isRest']
			// },
			// {
			// 	key: `${import.meta.env.VITE_STORAGE_NAME}_base2`,
			// 	storage: sessionStorage,
			// 	paths: ['telsNo']
			// },
		],
	},
});
