1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- import { usePagging } from "@/hook/pagging";
- import { SceneType, getScenePagging } from "@/store/scene";
- import { computed, reactive, watch, watchEffect } from "vue";
- export const useScenePaggingParams = () => {
- const pagging = usePagging({
- get: getScenePagging,
- paramsTemlate: {
- isObj: 1,
- sceneType: 0, //SceneType.SWKK,
- sceneName: "",
- modelTitle: "",
- deptId: "",
- snCode: "",
- },
- });
- const isSwmx = computed(() => pagging.state.query.type === SceneType.SWMX);
- const keyword = computed({
- get: () =>
- isSwmx.value
- ? pagging.state.query.modelTitle
- : pagging.state.query.sceneName,
- set: (val: string) => {
- pagging.state.query.modelTitle = val;
- pagging.state.query.sceneName = val;
- },
- });
- const sceneType = computed({
- get: () => pagging.state.query.sceneType,
- set: (val) => {
- pagging.state.query.sceneType = val;
- },
- });
- let oldSnCode = pagging.state.query.snCode;
- watchEffect(() => {
- if (isSwmx.value) {
- oldSnCode = pagging.state.query.snCode;
- pagging.state.query.snCode = "";
- } else {
- pagging.state.query.snCode = oldSnCode;
- }
- });
- watch(
- () => pagging.state.query.type,
- () => {
- pagging.state.pag.currentPage = 1;
- }
- );
- const queryResetRaw = pagging.queryReset;
- pagging.queryReset = () => {
- const type = pagging.state.query.type;
- queryResetRaw();
- pagging.state.query.type = type;
- };
- return reactive({ pagging, keyword, isSwmx, sceneType });
- };
- export type ScenePagging = ReturnType<typeof useScenePaggingParams>["pagging"];
|