Browse Source

添加清洗、预充、除湿接口

master
zhangjiming 5 months ago
parent
commit
8498c8134f
  1. 9
      src/components/Dialog.vue
  2. 10
      src/services/globalCmd/globalCmd.ts
  3. 84
      src/views/PreSpray.vue

9
src/components/Dialog.vue

@ -13,13 +13,16 @@
</div> </div>
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
const props = defineProps<{
title: string;
export type DialogParam = {
title: string;
desc: string; desc: string;
type: "alert" | "confirm"; // alert confirm type: "alert" | "confirm"; // alert confirm
okText: string; okText: string;
cancelText: string; cancelText: string;
}>();
_brand?: string;
}
const props = defineProps<DialogParam>();
const emit = defineEmits<{ const emit = defineEmits<{
(e: "onCancel"): void; (e: "onCancel"): void;
(e: "onOk"): void; (e: "onOk"): void;

10
src/services/globalCmd/globalCmd.ts

@ -73,3 +73,13 @@ export type SprayParam = {
export function startSpray(params: SprayParam) { export function startSpray(params: SprayParam) {
return httpRequest<BaseResponse>({ url: "/api/cmd/startWork", params, method: "POST" }); return httpRequest<BaseResponse>({ url: "/api/cmd/startWork", params, method: "POST" });
} }
export function startWash(params: Record<string, any>) {
return httpRequest<BaseResponse>({ url: "/api/cmd/startWash", params, method: "POST" });
}
export function startPrefill(params: Record<string, any>) {
return httpRequest<BaseResponse>({ url: "/api/cmd/startPrefill", params, method: "POST" });
}
export function startDehumidify(params: { humidity: number }) {
return httpRequest<BaseResponse>({ url: "/api/cmd/startDehumidify", params, method: "POST" });
}

84
src/views/PreSpray.vue

@ -4,7 +4,7 @@
<main class="mt-[43px] border border-[#D6D6D6] bg-white rounded-b-md rounded-tr-md px-6 py-6"> <main class="mt-[43px] border border-[#D6D6D6] bg-white rounded-b-md rounded-tr-md px-6 py-6">
<div class="flex items-center gap-6"> <div class="flex items-center gap-6">
<p class="text-lg">清洗管道</p> <p class="text-lg">清洗管道</p>
<button class="btn-dark px-8 py-2 text-lg">开始清洗</button>
<button class="btn-dark px-8 py-2 text-lg" @click="onStartWash">开始清洗</button>
</div> </div>
</main> </main>
<header <header
@ -18,7 +18,7 @@
<main class="mt-[43px] border border-[#D6D6D6] bg-white rounded-b-md rounded-tr-md px-6 py-6"> <main class="mt-[43px] border border-[#D6D6D6] bg-white rounded-b-md rounded-tr-md px-6 py-6">
<div class="flex items-center gap-6"> <div class="flex items-center gap-6">
<p class="text-lg">预充管道</p> <p class="text-lg">预充管道</p>
<button class="btn-dark px-8 py-2 text-lg">开始预充</button>
<button class="btn-dark px-8 py-2 text-lg" @click="onStartPrefill">开始预充</button>
</div> </div>
</main> </main>
<header <header
@ -35,10 +35,11 @@
<p class="text-lg mx-6"> <p class="text-lg mx-6">
要求湿度<input 要求湿度<input
type="number" type="number"
v-model.number="humidity"
class="border-none outline-none h-[32px] w-[60px] mx-2 bg-[#E8ECF7] text-primary font-medium rounded-md text-lg text-center" />%RH class="border-none outline-none h-[32px] w-[60px] mx-2 bg-[#E8ECF7] text-primary font-medium rounded-md text-lg text-center" />%RH
</p> </p>
<button class="btn-dark px-8 py-2 text-lg" @click="startDry">开始除湿</button>
<button class="btn-dark px-8 py-2 text-lg" @click="onStartDehumidify">开始除湿</button>
</div> </div>
</main> </main>
<header <header
@ -59,7 +60,7 @@
ul ul
</p> </p>
<p class="text-lg mx-6"> <p class="text-lg mx-6">
流速<input
基质流速<input
type="number" type="number"
class="border-none outline-none h-[32px] w-[64px] mx-2 bg-[#E8ECF7] text-primary font-medium rounded-md text-lg text-center" /> class="border-none outline-none h-[32px] w-[64px] mx-2 bg-[#E8ECF7] text-primary font-medium rounded-md text-lg text-center" />
ul/min ul/min
@ -82,6 +83,7 @@
<p class="text-lg font-medium text-primary">注射器设置</p> <p class="text-lg font-medium text-primary">注射器设置</p>
</header> </header>
</section> --> </section> -->
<section class="flex items-center justify-end mt-6"> <section class="flex items-center justify-end mt-6">
<button class="btn-dark px-8 py-2 text-lg" @click="onGoSpray">设置喷涂区域</button> <button class="btn-dark px-8 py-2 text-lg" @click="onGoSpray">设置喷涂区域</button>
</section> </section>
@ -90,11 +92,11 @@
<van-overlay v-if="showDialog" :show="true"> <van-overlay v-if="showDialog" :show="true">
<div class="flex justify-center items-center h-full"> <div class="flex justify-center items-center h-full">
<Dialog <Dialog
title="已完成"
desc="湿度已达到50%RH,氮气已置换完毕。"
type="confirm"
ok-text="去喷涂"
cancel-text="关闭"
:title="dialogContent.title"
:desc="dialogContent.desc"
:type="dialogContent.type"
:ok-text="dialogContent.okText"
:cancel-text="dialogContent.cancelText"
@on-ok="onOk" @on-ok="onOk"
@on-cancel="showDialog = false"></Dialog> @on-cancel="showDialog = false"></Dialog>
</div> </div>
@ -102,13 +104,45 @@
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import { ref } from "vue"; import { ref } from "vue";
import Dialog from "@/components/Dialog.vue";
import Dialog, { type DialogParam } from "@/components/Dialog.vue";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
import { ElMessage } from "element-plus";
import { startDehumidify, startPrefill, startWash } from "@/services/globalCmd/globalCmd";
const router = useRouter(); const router = useRouter();
const dialogContent = ref<DialogParam>({
title: "已完成",
desc: "湿度已达到50%RH,氮气已置换完毕。",
type: "confirm",
okText: "去喷涂",
cancelText: "关闭",
_brand: "humidity_complete",
});
const showDialog = ref(false); const showDialog = ref(false);
const humidity = ref<number | undefined>();
function onStartDehumidify() {
if (typeof humidity.value !== "number") {
ElMessage.error("请输入要求湿度");
return;
}
function startDry() {
startDehumidify({ humidity: humidity.value }).then(res => {
if (res.success) {
} else {
ElMessage.error(res.msg);
}
});
dialogContent.value = {
title: "已完成",
desc: "湿度已达到50%RH,氮气已置换完毕。",
type: "confirm",
okText: "去喷涂",
cancelText: "关闭",
_brand: "humidity_complete",
};
showDialog.value = true; showDialog.value = true;
} }
function onOk() { function onOk() {
@ -116,7 +150,33 @@ function onOk() {
router.push("/spray"); router.push("/spray");
} }
function onGoSpray() { function onGoSpray() {
router.push("/spray");
dialogContent.value = {
title: "提示",
desc: "请确认 清洗、预充、除湿均已完成",
type: "confirm",
okText: "确认",
cancelText: "取消",
_brand: "goSpray",
};
showDialog.value = true;
}
function onStartWash() {
startWash({}).then(res => {
if (res.success) {
} else {
ElMessage.error(res.msg);
}
});
}
function onStartPrefill() {
startPrefill({}).then(res => {
if (res.success) {
} else {
ElMessage.error(res.msg);
}
});
} }
</script> </script>
<style lang="scss" scoped></style> <style lang="scss" scoped></style>
Loading…
Cancel
Save