From 757ebcbdb3aa024793892a19606dff382ea3820e Mon Sep 17 00:00:00 2001
From: songshankun <songshankun@foxmail.com>
Date: 星期一, 27 十一月 2023 17:46:34 +0800
Subject: [PATCH] feat: 对接口
---
src/api/index.ts | 226 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 225 insertions(+), 1 deletions(-)
diff --git a/src/api/index.ts b/src/api/index.ts
index 336ce12..b45f15f 100644
--- a/src/api/index.ts
+++ b/src/api/index.ts
@@ -1 +1,225 @@
-export {}
+import { request } from '@/common/utils'
+import type { CraftParamsResponse, TasksGroupByChannel } from './task'
+import type { PLCResponse } from './plc'
+import type { Devices } from './device'
+import type { CraftModel } from './craftModel'
+import type { Problem } from './problem'
+import type { ReportingRecord } from './reporting'
+
+export interface BaseResponse<T = any> {
+ code: number
+ data: T
+ msg: string
+}
+
+export interface ListResponse<T = any> {
+ code: number
+ data: T
+ msg: string
+ total: number
+}
+
+export interface TaskListParams {
+ /** 1鏈畬鎴�2浠婂ぉ鏈畬鎴�3宸插畬鎴� */
+ type: 1 | 2 | 3
+ /** 閫氶亾鍙� 涓嶄紶鏌ユ墍鏈夐�氶亾鐨� */
+ channel?: number
+ /** 浠庣鍑犱釜寮�濮嬫煡锛屼粠0寮�濮� */
+ offset: number
+ /** 鏌ュ灏戞潯 */
+ limit: number
+}
+
+/**
+ * 鑾峰彇浠诲姟鍒楄〃
+ * @param params
+ */
+export function getTaskList(params: TaskListParams) {
+ return request<BaseResponse<TasksGroupByChannel>>({
+ url: '/v1/task/list',
+ method: 'get',
+ params
+ })
+}
+
+export interface ProductProgressParams {
+ channel: number
+ procedureId?: number
+}
+
+/**
+ * 鑾峰彇PLC杩愯鏁版嵁
+ * @param params
+ */
+export function getProductProgress(params: ProductProgressParams) {
+ return request<BaseResponse<PLCResponse>>({
+ url: '/v1/plc/productProgress',
+ method: 'post',
+ data: params
+ })
+}
+export interface CraftParamsParams {
+ id: number
+}
+
+/**
+ * 鑾峰彇宸ヨ壓鍙傛暟
+ * @param params
+ */
+export function getCraftParams(params: CraftParamsParams) {
+ return request<BaseResponse<CraftParamsResponse>>({
+ url: `v1/task/start/${params.id}`,
+ method: 'get',
+ data: params
+ })
+}
+
+export interface SendProcessParamsParams {
+ procedureId: number
+}
+
+/**
+ * 涓嬪彂宸ヨ壓鍙傛暟
+ * @param params
+ */
+export function sendProcessParams(params: SendProcessParamsParams) {
+ return request<BaseResponse>({
+ url: `v1/task/sendProcessParams`,
+ method: 'post',
+ data: params
+ })
+}
+
+export interface FinishTaskParams {
+ id: number
+}
+
+/**
+ * 缁撴潫浠诲姟
+ * @param params
+ */
+export function finishTask(params: FinishTaskParams) {
+ return request<BaseResponse>({
+ url: `v1/task/finish/${params.id}`,
+ method: 'put',
+ data: params
+ })
+}
+
+/**
+ * 鑾峰彇褰撳墠闈㈡澘缁戝畾鐨勮澶囧垪琛�
+ */
+export function getDeviceList() {
+ return request<BaseResponse<Devices>>({
+ url: `/v1/device/list`,
+ method: 'get'
+ })
+}
+
+export interface SetCurrentDeviceParams {
+ currentDeviceID: string
+}
+
+/**
+ * 璁惧畾褰撳墠璁惧
+ */
+export function apiSetCurrentDevice(data: SetCurrentDeviceParams) {
+ return request<BaseResponse>({
+ url: `/v1/device/setCurrentDeviceId`,
+ method: 'post',
+ data
+ })
+}
+
+export interface SetCurrentDeviceConfigParams {
+ needSetProcessParams: boolean
+}
+
+/**
+ * 璁惧畾褰撳墠璁惧閰嶇疆
+ */
+export function apiSetCurrentDeviceConfig(data: SetCurrentDeviceConfigParams) {
+ return request<BaseResponse>({
+ url: `/v1/device/config`,
+ method: 'post',
+ data
+ })
+}
+
+export interface CraftModelListParams {
+ procedureId: number
+ page: number
+ pageSize: number
+}
+
+/**
+ * 鑾峰彇宸ヨ壓妯″瀷鍒楄〃
+ * @param params
+ */
+export function apiGetCraftModelList(params: CraftModelListParams) {
+ return request<ListResponse<CraftModel[]>>({
+ url: '/v1/processModel/list',
+ method: 'get',
+ params
+ })
+}
+
+export interface UpdateCraftPrams {
+ procedureId: number
+}
+
+/**
+ * 鏇存柊宸ヨ壓妯″瀷
+ * @param params
+ */
+export function updateCraftParams(params: UpdateCraftPrams) {
+ return request<BaseResponse>({
+ url: '/v1/task/updateProcessParams',
+ method: 'post',
+ data: params
+ })
+}
+
+/**
+ * 鑾峰彇闂璇婃柇闂鍒楄〃
+ */
+export function apiGetProblemList() {
+ return request<BaseResponse<Problem[]>>({
+ url: '/v1/system/problemList',
+ method: 'get'
+ })
+}
+
+export interface ReportingRecordListParams {
+ page?: number
+ pageSize?: number
+ procedureId: number
+}
+
+/**
+ * 鑾峰彇鎶ュ伐璁板綍鍒楄〃
+ */
+export function apiGetReportingRecordList(params: ReportingRecordListParams) {
+ return request<ListResponse<ReportingRecord[]>>({
+ url: '/v1/reportWork/list',
+ method: 'get',
+ params
+ })
+}
+
+export interface ReportWorkParams {
+ procedureId: number
+ reportAmount: number
+ workerID: string
+}
+
+/**
+ * 鎶ュ伐
+ */
+export function apiReportWork(params: ReportWorkParams) {
+ return request<BaseResponse>({
+ url: '/v1/reportWork/report',
+ method: 'post',
+ data: params
+ })
+}
--
Gitblit v1.8.0