From 39864dcc835f1e75efd3f20a99d50a7edae4a94f Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期一, 06 十一月 2023 17:59:51 +0800
Subject: [PATCH] Merge branch 'wn' of http://192.168.5.5:10010/r/web/bulletin-board-style1 into dev
---
src/views/dashboard/index.vue | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 50 insertions(+), 3 deletions(-)
diff --git a/src/views/dashboard/index.vue b/src/views/dashboard/index.vue
index 49b5c8e..4b3975b 100644
--- a/src/views/dashboard/index.vue
+++ b/src/views/dashboard/index.vue
@@ -26,8 +26,11 @@
<ProcessInfo
v-for="item in craftModelStore.craftModelList"
:key="item.ID"
+ :task="activeTask"
+ :active-arr="activeArr"
:craft-model="item"
@detail="openCraftModelDetailModal"
+ @update="updateCraft"
></ProcessInfo>
</div>
<div class="craft-loaded-tip">
@@ -80,13 +83,21 @@
<BigButton class="btn" bg-color="red">绾㈢伅鍛煎彨</BigButton>
</template>
</DashboardLayout>
- <CraftDetailModal v-model="showCraftModelDetail" @close="showCraftModelDetail = false"></CraftDetailModal>
+ <CraftDetailModal
+ v-model="showCraftModelDetail"
+ :active-arr="activeArr"
+ :craft-model="currentCraftModelInfo"
+ @renew="updateCraft"
+ @close="showCraftModelDetail = false"
+ ></CraftDetailModal>
<MaterialDetails v-model="showMaterialDetail" :material="currentMaterialInfo"></MaterialDetails>
</template>
<script setup lang="ts">
import { computed, ref } from 'vue'
import ChannelCollapse from '@/views/dashboard/components/ChannelCollapse.vue'
-import type { Task, Material } from '@/api/task'
+
+import type { Worker, Order, Task, Material } from '@/api/task'
+import type { CraftModel } from '@/api/craftModel'
import PersonInfo from '@/views/dashboard/components/PersonInfo.vue'
import ProcessInfo from '@/views/dashboard/components/ProcessInfo.vue'
import ColorInfo from '@/views/dashboard/components/ColorInfo.vue'
@@ -110,6 +121,8 @@
import { useCraftModelStore } from '@/stores/craftModel'
import CraftDetailModal from '@/views/dashboard/components/CraftDetailModal.vue'
import MaterialDetails from '@/views/dashboard/components/MaterialDetails.vue'
+
+import { updateCraftParams } from '@/api'
import { Loading } from '@element-plus/icons-vue'
defineOptions({
@@ -170,9 +183,43 @@
craftModelStore.getCraftModelList()
const showCraftModelDetail = ref(false)
-function openCraftModelDetailModal() {
+// 褰撳墠瑕佸睍绀虹殑宸ヨ壓璇︽儏
+const currentCraftModelInfo = ref<CraftModel>()
+const activeArr = ref([])
+function openCraftModelDetailModal(craftModel: CraftModel) {
+ currentCraftModelInfo.value = craftModel
showCraftModelDetail.value = true
}
+// 鏇存柊宸ヨ壓
+function updateCraft(craftModel: CraftModel) {
+ if (activeTask?.value?.Procedure?.ID) {
+ activeArr.value.push(craftModel.number)
+ updateCraftParams({ procedureId: activeTask!.value.Procedure.ID }).then(
+ (res) => {
+ if (res.code == 200) {
+ editActive(craftModel)
+ ElMessage({
+ message: '鏇存柊鎴愬姛锛�',
+ type: 'success'
+ })
+ }
+ },
+ (err) => {
+ console.error(err, '----err')
+ setTimeout(() => {
+ editActive(craftModel)
+ }, 500)
+ }
+ )
+ }
+}
+function editActive(craftModel: CraftModel) {
+ for (let i in activeArr.value) {
+ if (activeArr.value[i] == craftModel.number) {
+ activeArr.value.splice(i, 1)
+ }
+ }
+}
// 鏄惁灞曠ず鐗╂枡璇︽儏寮圭獥
const showMaterialDetail = ref(false)
--
Gitblit v1.8.0