spring
8 天以前 78c565e37520fad100693c4e298e30e7c916d1bb
src/pages/production/wire/report/wire.vue
@@ -22,7 +22,7 @@
        </template>
        <ProductionCard :data="cardAttr" :value="item" />
        <template #footer>
          <wd-button size="small" plain @click="toAttachment(item.id)" style="margin-right: 10px">
          <wd-button size="small" plain style="margin-right: 10px" @click="toAttachment(item)">
            附件
          </wd-button>
          <wd-button size="small" plain @click="toCheck(item.id)">自检</wd-button>
@@ -36,6 +36,13 @@
      </view>
      <WireForm ref="wireFormRef" />
    </wd-popup>
    <wd-popup v-model="drawFormRef.visible" position="bottom" custom-class="yl-popup">
      <Draw
        :wire-id="drawData.wireId"
        :pole-number="drawData.poleNumber"
        @close="handleDrawClose"
      />
    </wd-popup>
    <wd-toast />
  </view>
</template>
@@ -47,6 +54,7 @@
import zPaging from "@/components/z-paging/z-paging.vue";
import { onLoad } from "@dcloudio/uni-app";
import ManageApi from "@/api/product/manage";
import Draw from "./rawMaterial.vue";
const pagingRef = ref();
const wireFormRef = ref();
@@ -55,6 +63,45 @@
const dialog = reactive({
  visible: false,
});
const drawFormRef = reactive({
  visible: false,
});
// 处理draw组件关闭事件
const handleDrawClose = () => {
  // 确保弹窗被正确关闭
  drawFormRef.visible = false;
};
const drawData = ref({
  wireId: "",
  poleNumber: "",
});
const showDrawPopup = async () => {
  console.log("进入该方法!");
  try {
    const { data } = await ManageApi.queryWireRawMaterialInspect({
      wireId: paramsId.value,
      poleNumber: drawData.value.poleNumber,
    });
    console.log("data", data);
    // 适配不同的数据结构返回格式
    if (data == null) {
      drawData.value = {
        wireId: paramsId.value,
        poleNumber: drawData.value.poleNumber,
      };
      // 显示Draw弹窗
      drawFormRef.visible = true;
      toast.success("请填写领用信息!");
    } else {
      // toast.error("已存在领用信息,无需填报!");
    }
  } catch (error) {
    console.error("获取领用信息失败:", error);
    toast.error("获取信息失败,请重试");
  }
};
const cardAttr = ref<any[]>([
  {
@@ -113,8 +160,14 @@
  dialog.visible = true;
};
const submit = () => {
  dialog.visible = !wireFormRef.value.submit();
const submit = async () => {
  const result = await wireFormRef.value.submit();
  dialog.visible = !result.success;
  // 设置poleNumber到drawData中
  if (result.success) {
    drawData.value.poleNumber = result.poleNumber;
    showDrawPopup();
  }
  pagingRef.value.reload();
};
@@ -123,9 +176,13 @@
  dialog.visible = false;
};
const toAttachment = (id: number) => {
const toAttachment = (item: any) => {
  uni.navigateTo({
    url: `/pages/production/wire/attachment/index?reportId=${id}`,
    url: "/pages/production/wire/attachment/index",
    success: () => {
      // 页面跳转成功后发送事件传递数据
      uni.$emit("detailData", item);
    },
  });
};