trunk/pc4public/stores/workflow/listStore.js

81 lines
2.0 KiB
JavaScript
Raw Normal View History

2023-12-05 15:40:33 +08:00
import { observable, action } from 'mobx';
import { WeaForm } from 'comsMobx';
import { WeaTableNew } from 'comsMobx';
const { TableStore } = WeaTableNew;
/**
* @author liuzy 2017-10-18
* 流程列表通用store模板适应于树+列表+高级查询模式实例待办/已办/我的请求/查询流程/流程回收站等等
*/
export class ListStore {
/** 列表store */
@observable loading = false;
title = '';
@observable tableStore = new TableStore();
/** 高级查询store */
@observable form = new WeaForm();
@observable showSearchAd = false;
condition = [];
/** 左侧树store */
leftTree = [];
leftTreeCount = {};
leftTreeCountType = [];
selectedTreeKey = '';
/** 顶部Tab组件store */
topTab = [];
topTabCount = {};
constructor() {
this.setLoading = this.setLoading.bind(this);
this.setTitle = this.setTitle.bind(this);
this.setShowSearchAd = this.setShowSearchAd.bind(this);
this.setFormFields = this.setFormFields.bind(this);
this.appendFormFields = this.appendFormFields.bind(this);
this.clearFormFields = this.clearFormFields.bind(this);
this.setSelectedTreeKey = this.setSelectedTreeKey.bind(this);
this.resetForm = this.resetForm.bind(this);
this.resetTable = this.resetTable.bind(this);
}
@action
setLoading(bool = false) {
this.loading = bool;
}
setTitle(title) {
this.title = title;
}
setShowSearchAd(bool) {
this.showSearchAd = bool;
}
setFormFields(value) {
this.form.updateFields(value, true); // true代表完全覆盖方式更新条件值
}
appendFormFields(value) {
this.form.updateFields(value, false);
}
clearFormFields() {
this.form.resetConditionValue(); // 清除查询条件值
}
setSelectedTreeKey(key) {
this.selectedTreeKey = key;
}
resetForm() {
this.form = new WeaForm();
}
resetTable() {
this.tableStore = new TableStore();
}
}