weaver_trunk_cli/pc4mobx/hrm/stores/constrpsubsearch.js

222 lines
5.6 KiB
JavaScript

import { observable, action } from 'mobx';
import * as API from '../apis/constrpsubsearch';
import * as Util from '../util/index';
import cloneDeep from 'lodash/cloneDeep'
import {Modal,message} from 'antd'
import {WeaTableNew,WeaForm} from 'comsMobx'
import { toJS } from 'mobx';
const {TableStore} = WeaTableNew;
const confirm = Modal.confirm;
import {WeaLocaleProvider} from 'ecCom';
const getLabel = WeaLocaleProvider.getLabel;
import {i18n} from '../public/i18n';
export class HrmConstRpSubSearch {
title = getLabel('15687',"个人信息");
@observable verified = false;
@observable hasRight = false;
@observable showResult = false;
@observable topTabkey = '15687';
@observable scopeId = '1';
@observable scopeCmd = '0';
@observable tabkey = '15687';
@observable templateid = "0";
@observable form = new WeaForm();
@observable table = new TableStore();
@observable tabDatas = [];
@observable config = []
@observable visible = false
@observable templeteValue = ''
@observable defaulttabkey = ''
@observable isReSave = false;
@observable isCustom = '';
@observable prePath = '';
@observable prePathName = '';
configbak = []
@action
getTabInfo(params={},cb){
this.title = "";
this.tabkey = '';
this.tabDatas = [];
this.verified = false;
params.scopeId = this.scopeId;
params.isCustom = this.isCustom;
API.getTabInfo(params).then(data=>{
this.verified = true;
if (data.status == '1') {
this.title = data.tabInfo[0].title;
this.topTabkey = data.tabInfo[0].key;
this.tabkey = data.tabInfo[0].key;
this.scopeCmd = data.tabInfo[0].key;
this.defaulttabkey = data.tabInfo[0].key;
this.tabDatas = data.tabInfo;
this.hasRight = true;
cb && cb();
} else {
this.hasRight = false;
//message.warning(data.message);
}
}, error=> {
message.warning(error.message);
})
}
changeTab(key) {
this.tabkey = key;
this.config=[];
this.configbak=[];
this.templateid = "0";
if(key&& key.split("_").length==3){
let tmpValue = key.split("_");
this.scopeCmd = tmpValue[1];
this.templateid = tmpValue[2];
}else{
this.scopeCmd = key;
}
this.getCondition();
}
changeTopTab(key) {
this.topTabkey = key;
this.changeTab(key)
}
updateTempleteValue(v) {
this.templeteValue = v;
}
updateVisible(bool) {
this.visible = bool;
}
getCondition(params = {}) {
params.scopeId = this.scopeId;
params.cmd = this.scopeCmd;
params.templateid = this.templateid;
params.isCustom = this.isCustom;
this.showResult = false;
this.config = [];
this.configbak = [];
API.getCondition(params).then(data=>{
if (data.status == '1') {
this.config = data.condition;
this.configbak = cloneDeep(data.condition);
} else {
message.warning(data.message);
}
}, error=> {
message.warning(error.message);
})
}
doSearch(params){
this.getSearchList(params);
}
reSearch(){
this.showResult = false;
}
reset(){
this.config=[];
let __this = this;
setTimeout(function () {
__this.config=cloneDeep(__this.configbak);
}, 0);
}
saveTemplete(params={}){
let doSave = params.doSave || false;
if(doSave){
params.templateid=this.templateid;
}else{
let templeteValue = this.templeteValue ||'';
if(templeteValue==''){
message.warning(i18n.message.requireFieldNone());
return;
}
}
if(this.isReSave){
params.cmd="ctrlc";
}
params.templateName = this.templeteValue;
params.isCustom = this.isCustom;
API.saveTemplete(params).then(data=>{
if (data.status == '1') {
if(doSave){
}else{
this.templateid = data.templateid;
let tmpTabKey = params.scopeId+"_"+params.scopeCmd+"_"+data.templateid;
this.updateVisible(false)
this.templeteValue='';
this.isReSave = false;
this.getTabInfo({},()=> {
this.topTabkey = params.scopeCmd;
this.changeTab(tmpTabKey);
});
}
message.success(i18n.message.saveSuccess());
} else {
message.warning(data.message);
}
}, error=> {
message.warning(error.message);
})
}
deleteTabs(){
let __this = this;
let params={};
params.cmd = "del";
params.scopeId=this.scopeId;
params.scopeCmd=this.scopeCmd;
params.templateid=this.templateid;
confirm({
title: '系统提示',
content: '确定要删除该页签吗?',
onOk(){
API.saveTemplete(params).then(data=>{
if (data.status == '1') {
scopeId:1
__this.getTabInfo({},()=>{
__this.changeTopTab(params.scopeCmd);
});
message.success("删除成功");
} else {
message.warning(data.message);
}
}, error=> {
message.warning(error.message);
})
},
onCancel(){},
});
}
importExcel(params = {}){
this.table.exportAll();
}
getSearchList(params = {}) {
params.scopeId = this.scopeId;
params.isCustom = this.isCustom;
if(this.isCustom=='1'){
params.scopeCmd = '0';
}else{
params.scopeCmd = this.scopeCmd;
}
API.getSearchList(params).then(data=>{
if (data.status == '1') {
this.table.getDatas(data.sessionkey,1);
this.showResult = true;
} else {
message.warning(data.message);
}
}, error=> {
message.warning(error.message);
})
}
}