| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- import service from '/@/utils/request';
- import { withAidopTenantParams } from './aidopTenant';
- export interface Paged<T> {
- total: number;
- page: number;
- pageSize: number;
- list: T[];
- }
- export interface WorkOrderSchedulingRow {
- id: number;
- priority?: string | null;
- workOrd?: string | null;
- lotSerial?: string | null;
- issueSite?: string | null;
- itemNum?: string | null;
- descr?: string | null;
- descr1?: string | null;
- qtyOrded?: number | null;
- locationStock?: number | null;
- qtyCompleted?: number | null;
- planDate?: string | null;
- prodDate?: string | null;
- status?: string | null;
- domain?: string | null;
- urgent?: number | null;
- }
- /** 生成生产排程计划 */
- export function productionSchedule(domain: string) {
- return service
- .post('/api/Production/scheduling/generate', null, { params: { domain }, timeout: 300000 })
- .then((r) => r.data);
- }
- /** 同步物料需求 */
- export function syncMaterialRequirement(domain: string) {
- return service
- .post('/api/WorkOrder/material-requirement/generate', null, { params: { domain } })
- .then((r) => r.data);
- }
- /** 优先级调整保存并重做资源检查 */
- export async function replenishmentWorkOrdCheckChangePriority(params: {
- workord: string;
- qty: string | number;
- instockdate: string;
- priority: string;
- domain: string;
- userAccount: string;
- lotSerial: string;
- }): Promise<void> {
- const res = await service.post('/api/Production/scheduling/update-priority-and-recheck', {
- workord: params.workord,
- qty: String(params.qty ?? ''),
- instockdate: params.instockdate ?? '',
- priority: params.priority ?? '',
- domain: params.domain,
- userAccount: params.userAccount,
- lotSerial: params.lotSerial ?? '',
- });
- const data = res.data as { message?: string } | undefined;
- const msg = String(data?.message ?? '').trim().toLowerCase();
- if (msg && msg !== 'ok') throw new Error(`接口返回异常:${data?.message}`);
- }
- export function fetchWorkOrderSchedulingList(params: Record<string, unknown>) {
- return service.get<Paged<WorkOrderSchedulingRow>>('/api/Production/scheduling/list', { params: withAidopTenantParams(params) }).then((r) => r.data);
- }
- export function closeWorkOrders(ids: string) {
- return service.post('/api/Production/scheduling/close', { ids }).then((r) => r.data);
- }
- export function saveWorkOrderScheduling(body: {
- workOrd: string;
- domain: string;
- qtyOrded?: number | null;
- priority?: string | null;
- lotSerial?: string | null;
- urgent?: number | null;
- }) {
- return service.post('/api/Production/scheduling/save', body).then((r) => r.data);
- }
- export function patchWorkOrderStatus(body: { id: number; domain: string; status: string }) {
- return service.post('/api/Production/scheduling/status', body).then((r) => r.data);
- }
- export function syncWorkRouting(body: { workOrd: string; domain: string }) {
- return service.post('/api/Production/scheduling/sync-routing', body).then((r) => r.data);
- }
- export function setWorkOrderUrgent(body: { workOrd: string; domain: string; urgent: number }) {
- return service.post('/api/Production/scheduling/urgent', body).then((r) => r.data);
- }
- export function fetchSchedulingEditPreview(workOrd: string, domain: string) {
- return service
- .get<{
- workOrd: string;
- itemNum: string;
- qtyOrded: number;
- priority: string;
- lotSerial: string;
- urgent: number;
- ordDate?: string | null;
- }>('/api/Production/scheduling/edit-preview', { params: { workOrd, domain } })
- .then((r) => r.data);
- }
- export function fetchSchedulingView(workOrd: string, domain: string) {
- return service
- .get<{
- master: Record<string, unknown>;
- routings: unknown[];
- details: unknown[];
- }>('/api/Production/scheduling/view', { params: { workOrd, domain } })
- .then((r) => r.data);
- }
- export function fetchSchedulingMaterials(workOrd: string, domain: string) {
- return service
- .get<{ list: unknown[] }>('/api/Production/scheduling/materials', { params: { workOrd, domain } })
- .then((r) => r.data);
- }
- export function fetchSchedulingRoutings(workOrd: string, domain: string) {
- return service
- .get<{ list: unknown[] }>('/api/Production/scheduling/routings', { params: { workOrd, domain } })
- .then((r) => r.data);
- }
- export function fetchSchedulingTrace(workOrd: string, domain: string) {
- return service.get<Record<string, unknown>>('/api/Production/scheduling/trace', { params: { workOrd, domain } }).then((r) => r.data);
- }
|