<template>
|
<view class="list">
|
<z-paging ref="pagingRef" v-model="wireReportList" :fixed="false" @query="getWireReportList">
|
<template #top>
|
<CardTitle title="报工信息" :hideAction="true" :full="false" @action="addReport" />
|
</template>
|
<wd-card
|
v-for="(item, index) in wireReportList"
|
:key="index"
|
type="rectangle"
|
custom-class="round"
|
>
|
<template #title>
|
<view class="flex justify-between">
|
<view>
|
<wd-icon name="user" color="#0D867F"></wd-icon>
|
<text class="text-[#0D867F] ml-2 font-medium">生产人</text>
|
<text class="text-[#333333] ml-2">{{ item.productUser }}</text>
|
</view>
|
<view class="text-[#A8A8A8]" @click="toEdit">编辑</view>
|
</view>
|
</template>
|
<ProductionCard :data="cardAttr" :value="item" />
|
<template #footer>
|
<wd-button size="small" plain @click="toCheck(item.id)">自检</wd-button>
|
</template>
|
</wd-card>
|
</z-paging>
|
<wd-popup v-model="dialog.visible" position="bottom" custom-class="yl-popup">
|
<view class="action px-3">
|
<wd-button type="text" @click="cancel">取消</wd-button>
|
<wd-button type="text" @click="submit">确定</wd-button>
|
</view>
|
<WireForm ref="wireFormRef" />
|
</wd-popup>
|
<wd-toast />
|
</view>
|
</template>
|
<script setup lang="ts">
|
import CardTitle from "@/components/card-title/index.vue";
|
import WireForm from "./wireForm.vue";
|
import { useToast } from "wot-design-uni";
|
import ProductionCard from "../../components/ProductionCard.vue";
|
import zPaging from "@/components/z-paging/z-paging.vue";
|
import { onLoad } from "@dcloudio/uni-app";
|
import ManageApi from "@/api/product/manage";
|
|
const pagingRef = ref();
|
const wireFormRef = ref();
|
const paramsId = ref();
|
const toast = useToast();
|
const dialog = reactive({
|
visible: false,
|
});
|
|
const cardAttr = ref<any[]>([
|
{
|
label: "领用杆号",
|
prop: "poleNumber",
|
},
|
{
|
label: "杆重(kg)",
|
prop: "poleWeight",
|
},
|
{
|
label: "单丝盘号",
|
prop: "monofilamentNumber",
|
},
|
{
|
label: "规格型号",
|
prop: "model",
|
},
|
{
|
label: "盘长(m)",
|
prop: "oneLength",
|
},
|
{
|
label: "理论重量(kg)",
|
prop: "theoryWeight",
|
},
|
{
|
label: "实际重量(kg)",
|
prop: "actuallyWeight",
|
},
|
]);
|
|
const wireReportList = ref<any[]>([]);
|
|
const toEdit = () => {
|
uni.navigateTo({
|
url: "/pages/production/wire/report/wireEdit",
|
});
|
};
|
|
const addReport = () => {
|
dialog.visible = true;
|
};
|
|
const submit = () => {
|
dialog.visible = wireFormRef.value.submit();
|
};
|
|
const cancel = () => {
|
toast.show("取消");
|
dialog.visible = false;
|
};
|
|
const toCheck = (id: number) => {
|
uni.navigateTo({
|
url: `/pages/production/wire/selfInspect/index?id=${id}`,
|
});
|
};
|
|
// 获取拉丝报工列表
|
const getWireReportList = async () => {
|
const { data } = await ManageApi.getReportList({
|
wireId: paramsId.value,
|
type: "拉丝",
|
});
|
pagingRef.value.complete(data);
|
};
|
|
onLoad((options: any) => {
|
paramsId.value = options.id;
|
});
|
</script>
|
|
<style lang="scss" scoped>
|
.list {
|
height: calc(100vh - 120px);
|
padding: 12px;
|
background: #f3f9f8;
|
|
:deep() {
|
.round {
|
border-radius: 4px;
|
}
|
}
|
}
|
|
.action {
|
display: flex;
|
justify-content: space-between;
|
}
|
</style>
|