| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- import type { TransformData } from '#/api';
- import { http } from '#/api';
- import { fromDict, type DictItem } from '#/api/model/dict';
- export namespace DictModel {
- export type Item = DictItem;
- }
- function normalizeDictList(data: unknown): TransformData[] {
- if (Array.isArray(data)) return data;
- if (data && typeof data === 'object') {
- const record = data as TransformData;
- if (Array.isArray(record.rows)) return record.rows;
- if (Array.isArray(record.list)) return record.list;
- if (Array.isArray(record.items)) return record.items;
- }
- return [];
- }
- /** 按字典编码获取字典项列表 */
- export function listDictByCodeMethod(dictCode: string) {
- return http.get<DictItem[], TransformData>(
- `/manager/tcmp-pc/dict/list`,
- {
- params: { dictCode },
- cacheFor: 60_000,
- transform(data) {
- return normalizeDictList(data)
- .map((item) => fromDict(item))
- .sort((a, b) => (a.dictSort ?? 0) - (b.dictSort ?? 0));
- },
- },
- );
- }
- /** 机构类型字典(dept_type) */
- export function listDeptTypeDictMethod() {
- return listDictByCodeMethod('dept_type');
- }
- /** 企业类型字典(enterprise_type) */
- export function listEnterpriseTypeDictMethod() {
- return listDictByCodeMethod('enterprise_type');
- }
- /** 流程状态/流程节点字典(proccess_node) */
- export function listProcessNodeDictMethod() {
- return listDictByCodeMethod('proccess_node');
- }
- /** 配送方式字典(delivery_method) */
- export function listDeliveryMethodDictMethod() {
- return listDictByCodeMethod('delivery_method');
- }
- /** 物流公司字典(logistics_company) */
- export function listLogisticsCompanyDictMethod() {
- return listDictByCodeMethod('logistics_company');
- }
- /** 中药剂型字典(zyjx) */
- export function listZyjxDictMethod() {
- return listDictByCodeMethod('zyjx');
- }
- /** 用药途径字典(zy_route) */
- export function listZyRouteDictMethod() {
- return listDictByCodeMethod('zy_route');
- }
- /** 中药特殊煎煮法字典(mat_usage_name) */
- export function listMatUsageNameDictMethod() {
- return listDictByCodeMethod('mat_usage_name');
- }
- /** 物流配送状态字典(express_state) */
- export function listExpressStateDictMethod() {
- return listDictByCodeMethod('express_state');
- }
|