You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
896 B
TypeScript
36 lines
896 B
TypeScript
4 years ago
|
/**
|
||
|
* 工作区模块
|
||
|
*/
|
||
|
import { Module, VuexModule, getModule } from 'vuex-module-decorators';
|
||
|
import store from '@/store';
|
||
|
import { session } from '@/store/modules/session';
|
||
|
|
||
|
export interface Area {
|
||
|
loginName: string | null;
|
||
|
warehouseCode: string;
|
||
|
warehouseName: string;
|
||
|
warehouseType: '1' | '2';
|
||
|
regionCode: string;
|
||
|
regionDesc: string;
|
||
|
workareaCode: string;
|
||
|
workareaName: string;
|
||
|
}
|
||
|
|
||
|
@Module({ dynamic: true, store, namespaced: true, name: 'area' })
|
||
|
class AreaService extends VuexModule {
|
||
|
// 工作区列表
|
||
|
get areas(): Array<Area> {
|
||
|
if (session.user && session.getUser.list) {
|
||
|
return session.getUser.list.map((area) => ({
|
||
|
...area,
|
||
|
formattedWarehouseType:
|
||
|
area.warehouseType === '1' ? 'RAW' : area.warehouseType === '2' ? 'FG' : 'SFG',
|
||
|
}));
|
||
|
} else {
|
||
|
return [];
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export const area = getModule(AreaService);
|