jiangping
2023-08-24 64b3ee8aebe765c668b7f04b2bc1ee9a3919bdfb
h5_standard/src/views/plannedProgress/details.vue
@@ -51,12 +51,33 @@
                        <div class="content_list_item_content_item_label">计划人员:</div>
                        <div class="content_list_item_content_item_nr">{{info.usermodel.realname}}</div>
                    </div>
                    <div class="content_list_item_content_item">
                        <div class="content_list_item_content_item_label">分配数量:</div>
                        <div class="content_list_item_content_item_nr">{{info.createTime}}</div>
                    </div>
                    <div class="content_list_item_content_item">
                        <div class="content_list_item_content_item_label">完工数量:</div>
                        <div class="content_list_item_content_item_nr" v-if="info.umodel">{{info.doneNum}}{{info.umodel.name}}</div>
                    </div>
                </div>
            </div>
        </div>
        <NotFound info="暂未分配工单" v-if="info.workorderList && info.workorderList.length === 0" />
        <template v-else>
            <div class="details_timeline" v-for="(item, i) in info.workorderList" :key="i">
            <div class="details_list">
                <div class="details_list_item" v-for="(item, i) in info.workorderList" :key="i" @click="jump(item.id)">
                    <div class="details_list_item_top">
                        <span>{{ item.createUserName }}</span><span>{{ item.code }}</span>
                    </div>
                    <div class="details_list_item_center">
                        <span>良品数:{{ item.qualifiedNum }}</span><span>不良数:<span class="red">{{ item.unqualifiedNum }}</span></span>
                    </div>
                    <div class="details_list_item_bottom">
                        <span>{{ item.createTime }}</span>
                    </div>
                </div>
            </div>
            <!-- <div class="details_timeline" v-for="(item, i) in info.workorderList" :key="i">
                <div class="details_timeline_header">
                    <div class="details_timeline_header_code">
                        <span>工单编号:{{item.code}}</span>
@@ -68,10 +89,10 @@
                    <span v-if="item.status === 3" class="purple">已检验</span>
                    <span v-if="item.status === 4">已报工</span>
                    <span v-if="item.status === 5">已入库</span>
                    <span v-if="item.status === 6">已取消</span>
                    <span v-if="item.status === 6">已取消</span> -->
                    <!--                <span v-if="item.status === 7">已取消</span>-->
                    <!--                <span v-if="item.status === 8">已关闭</span>-->
                </div>
                <!-- </div>
                <div class="details_timeline_item" v-if="item.produceDate">
                    <div class="activedian"></div>
                    <div class="dian active"></div>
@@ -132,21 +153,22 @@
                        </div>
                    </div>
                </div>
            </div>
            </div> -->
        </template>
    </div>
</template>
<script setup lang="ts">
    import { ref, onMounted, watch } from 'vue'
    import { useRoute } from "vue-router"
    import { useRoute, useRouter } from "vue-router"
    import { queryByID } from '@/apis/PlanningAPI'
    import NotFound from '@/components/common/NotFound.vue'
    const route = useRoute()
    const router = useRouter()
    // 详情数据
    let info = ref({})
    let info:any = ref({})
    let loading = ref<boolean>(true)
@@ -158,6 +180,10 @@
                    info.value = res.data
                }
            })
    }
    const jump = (id: any) => {
        router.push({ name: 'workOrderReporting', query: { id } })
    }
    const proUserStr = (item: any) => {
@@ -296,6 +322,72 @@
            }
        }
    }
    .details_list {
        width: 100%;
        height: auto;
        background-color: #FFFFFF;
        margin-top: 20px;
        .details_list_item {
            width: 100%;
            padding: 24px 30px;
            box-sizing: border-box;
            background-color: #FFFFFF;
            border-bottom: 2px solid #F7F7F7;
            &:last-child {
                border: none !important;
            }
            .details_list_item_top {
                width: 100%;
                display: flex;
                align-items: center;
                span {
                    &:first-child {
                        font-size: 30px;
                        font-family: PingFangSC-Medium, PingFang SC;
                        font-weight: 500;
                        color: #222222;
                        margin-right: 16px;
                    }
                    &:last-child {
                        font-size: 24px;
                        font-family: PingFangSC-Regular, PingFang SC;
                        font-weight: 400;
                        color: #666666;
                    }
                }
            }
            .details_list_item_center {
                width: 100%;
                margin: 16px 0 20px 0;
                .red {
                    color: #DE5243;
                }
                span {
                    &:first-child {
                        font-size: 26px;
                        font-family: PingFangSC-Regular, PingFang SC;
                        font-weight: 400;
                        color: #333333;
                        margin-right: 100px;
                    }
                    &:last-child {
                        font-size: 26px;
                        font-family: PingFangSC-Regular, PingFang SC;
                        font-weight: 400;
                        color: #333333;
                    }
                }
            }
            .details_list_item_bottom {
                span {
                    font-size: 24px;
                    font-family: PingFangSC-Regular, PingFang SC;
                    font-weight: 400;
                    color: #999999;
                }
            }
        }
    }
    .details_timeline {
        padding: 30px;
        background: #ffffff;