feat:导航栏添加扫描按钮,扫描二维码查看打印详情

This commit is contained in:
shijing 2024-10-29 10:15:46 +08:00
parent 8e5f258d1a
commit af24f1f4cf
2 changed files with 902 additions and 3 deletions

View File

@ -0,0 +1,868 @@
<template>
<el-drawer
title="详情"
:size="'90%'"
destroy-on-close
v-model="visible"
@closed="$emit('closed')"
>
<!-- <div> -->
<div v-if="mType=='101'">
<el-card style="width: 100%" header="基本信息" shadow="never">
<el-descriptions>
<el-descriptions-item label="工艺路线">{{
itemObj.routepack_name
}}</el-descriptions-item>
<el-descriptions-item label="任务编号">{{
itemObj.material_in_name
}}</el-descriptions-item>
<el-descriptions-item label="部门/车间">{{
itemObj.material_out_name
}}</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card
style="width: 100%; margin: 1vh 0"
header="日志列表"
shadow="never"
>
<scTable
ref="tableIn"
:apiObj="apiObj"
row-key="id"
stripe
:params="params12"
hidePagination
>
<el-table-column type="index" width="50"></el-table-column>
<el-table-column type="expand">
<template #default="props">
<div style="padding-left: 50px">
<el-descriptions :column="2">
<template v-for="item in props.row.mlogb_full" :key="item.id">
<el-descriptions-item :label="item.material_out!==null?'输出物料':'输入物料'">
<span v-if="item.material_out!==null">{{item.batch}}</span>
<span v-else>{{item.batch}}</span>
</el-descriptions-item>
</template>
</el-descriptions>
<el-divider></el-divider>
<el-descriptions :column="4">
<el-descriptions-item label="划伤" v-if="props.row.count_n_hs>0">
{{props.row.count_n_hs}}
</el-descriptions-item>
<el-descriptions-item label="气泡" v-if="props.row.count_n_qp>0">
{{props.row.count_n_qp}}
</el-descriptions-item>
<el-descriptions-item label="水纹" v-if="props.row.count_n_swen>0">
{{props.row.count_n_swen}}
</el-descriptions-item>
<el-descriptions-item label="崩边" v-if="props.row.count_n_bb>0">
{{props.row.count_n_bb}}
</el-descriptions-item>
<el-descriptions-item label="小崩边" v-if="props.row.count_n_xbb>0">
{{props.row.count_n_xbb}}
</el-descriptions-item>
<el-descriptions-item label="雾面" v-if="props.row.count_n_wm>0">
{{props.row.count_n_wm}}
</el-descriptions-item>
<el-descriptions-item label="麻点" v-if="props.row.count_n_md>0">
{{props.row.count_n_md}}
</el-descriptions-item>
<el-descriptions-item label="线痕" v-if="props.row.count_n_xh>0">
{{props.row.count_n_xh}}
</el-descriptions-item>
<el-descriptions-item label="破损" v-if="props.row.count_n_ps>0">
{{props.row.count_n_ps}}
</el-descriptions-item>
<el-descriptions-item label="产品外径" v-if="props.row.count_n_wj>0">
{{props.row.count_n_wj}}
</el-descriptions-item>
<el-descriptions-item label="产品圆度" v-if="props.row.count_n_xh>0">
{{props.row.count_n_xh}}
</el-descriptions-item>
<el-descriptions-item label="产品同心度" v-if="props.row.count_n_yd>0">
{{props.row.count_n_yd}}
</el-descriptions-item>
<el-descriptions-item label="其它" v-if="props.row.count_n_qt>0">
{{props.row.count_n_ps}}
</el-descriptions-item>
</el-descriptions>
</div>
</template>
</el-table-column>
<el-table-column label="操作员" prop="handle_user_name" min-width="80"></el-table-column>
<el-table-column label="设备" prop="equipment_name" min-width="150"></el-table-column>
<el-table-column label="领料数" prop="count_use"></el-table-column>
<el-table-column label="加工数" prop="count_real"></el-table-column>
<el-table-column label="加工前不良" prop="count_pn_jgqbl"></el-table-column>
<el-table-column label="合格数" prop="count_ok"></el-table-column>
<el-table-column label="不合格数" prop="count_notok"></el-table-column>
<el-table-column label="开始时间" prop="work_start_time"></el-table-column>
<el-table-column label="结束时间" prop="work_end_time"></el-table-column>
<el-table-column label="班次" prop="shift_name"></el-table-column>
</scTable>
</el-card>
<!-- 输出物料 -->
<el-card style="width: 100%" header="输出物料" shadow="never">
<scTable
ref="tableOut"
:apiObj="apiObj"
row-key="id"
stripe
:params="paramsOut"
hidePagination
>
<el-table-column type="index" width="50" />
<el-table-column type="expand">
<template #default="props">
<div style="padding-left: 50px" v-if="props.row.count_notok_json.length>0">
<el-descriptions :column="4" v-for="item in props.row.count_notok_json" :key="item">
<el-descriptions-item label="层数">
{{item.floor}}
</el-descriptions-item>
<el-descriptions-item label="抽检数">
{{item.count_sampling}}
</el-descriptions-item>
<el-descriptions-item label="总数">
{{item.count}}
</el-descriptions-item>
</el-descriptions>
</div>
<div style="padding-left: 50px" v-else>
<el-descriptions :column="4">
<el-descriptions-item label="划伤">{{
props.row.count_n_hs
}}</el-descriptions-item>
<el-descriptions-item label="气泡">{{
props.row.count_n_qp
}}</el-descriptions-item>
<el-descriptions-item label="水纹">{{
props.row.count_n_swen
}}</el-descriptions-item>
<el-descriptions-item label="崩边">{{
props.row.count_n_bb
}}</el-descriptions-item>
<el-descriptions-item label="小崩边">{{
props.row.count_n_xbb
}}</el-descriptions-item>
<el-descriptions-item label="雾面">{{
props.row.count_n_wm
}}</el-descriptions-item>
<el-descriptions-item label="麻点">{{
props.row.count_n_md
}}</el-descriptions-item>
<el-descriptions-item label="线痕">{{
props.row.count_n_xh
}}</el-descriptions-item>
</el-descriptions>
</div>
</template>
</el-table-column>
<el-table-column
label="产出物料"
prop="material_out_name"
show-overflow-tooltip
></el-table-column>
<el-table-column label="批次号" prop="batch">
</el-table-column>
<el-table-column label="数量" prop="count_real">
</el-table-column>
<el-table-column label="合格数" prop="count_ok">
</el-table-column>
<el-table-column label="不合格数量" prop="count_notok">
</el-table-column>
<el-table-column
label="创建时间"
prop="create_time"
show-overflow-tooltip
>
</el-table-column>
</scTable>
</el-card>
</div>
<div v-if="mType=='102'">
<el-card style="width: 100%" header="基本信息" shadow="never">
<el-descriptions>
<el-descriptions-item label="工艺路线">{{
itemObj.routepack_name
}}</el-descriptions-item>
<el-descriptions-item label="输入物料">{{
itemObj.material_in_name
}}</el-descriptions-item>
<el-descriptions-item label="输出物料">{{
itemObj.material_out_name
}}</el-descriptions-item>
<el-descriptions-item label="工段名称">{{
itemObj.mgroup_name
}}</el-descriptions-item>
<el-descriptions-item label="生产设备">{{
itemObj.equipment_name
}}</el-descriptions-item>
<el-descriptions-item label="预计工时">{{
itemObj.hour_work
}}</el-descriptions-item>
<el-descriptions-item label="部门/车间">{{
itemObj.belong_dept_name
}}</el-descriptions-item>
<el-descriptions-item label="处理人">{{
itemObj.handle_user_name
}}</el-descriptions-item>
<el-descriptions-item label="开始时间">{{
itemObj.work_start_time
}}</el-descriptions-item>
<el-descriptions-item label="创建时间">{{
itemObj.create_time
}}</el-descriptions-item>
<el-descriptions-item label="工单状态" v-if="itemObj.mgroup_name=='退火'">
<el-tag v-if="itemObj.ticket_">{{act_states[itemObj.ticket_.act_state]}}</el-tag>
</el-descriptions-item>
<el-descriptions-item label="检验表单" v-if="itemObj.mgroup_name=='退火'||itemObj.mgroup_name=='黑化'">
<el-link :href="itemObj.test_file" target="_blank" type="primary" :underline="false">{{itemObj.test_file}}</el-link>
</el-descriptions-item>
</el-descriptions>
</el-card>
<!-- 输入物料 -->
<el-card
style="width: 100%; margin: 1vh 0"
header="输入物料"
shadow="never"
>
<scTable
ref="tableIn"
:apiObj="apiObj"
row-key="id"
stripe
:params="paramsIn"
hidePagination
>
<el-table-column type="index" width="50" />
<el-table-column
label="物料"
prop="material_in_name"
show-overflow-tooltip
></el-table-column>
<el-table-column label="批次号" prop="batch">
</el-table-column>
<el-table-column label="领用数量" prop="count_use">
</el-table-column>
<el-table-column label="加工前不良" prop="count_pn_jgqbl">
</el-table-column>
<el-table-column
label="创建时间"
prop="create_time"
show-overflow-tooltip
>
</el-table-column>
</scTable>
</el-card>
<!-- 输出物料 -->
<el-card style="width: 100%" header="输出物料" shadow="never">
<scTable
ref="tableOut"
:apiObj="apiObj"
row-key="id"
stripe
:params="paramsOut"
hidePagination
>
<el-table-column type="index" width="50" />
<el-table-column type="expand">
<template #default="props">
<div style="padding-left: 50px" v-if="props.row.count_notok_json.length>0">
<el-descriptions :column="4" v-for="item in props.row.count_notok_json" :key="item">
<el-descriptions-item label="层数">
{{item.floor}}
</el-descriptions-item>
<el-descriptions-item label="抽检数">
{{item.count_sampling}}
</el-descriptions-item>
<el-descriptions-item label="总数">
{{item.count}}
</el-descriptions-item>
</el-descriptions>
</div>
<div style="padding-left: 50px" v-else>
<el-descriptions :column="4">
<el-descriptions-item label="划伤">{{
props.row.count_n_hs
}}</el-descriptions-item>
<el-descriptions-item label="气泡">{{
props.row.count_n_qp
}}</el-descriptions-item>
<el-descriptions-item label="水纹">{{
props.row.count_n_swen
}}</el-descriptions-item>
<el-descriptions-item label="崩边">{{
props.row.count_n_bb
}}</el-descriptions-item>
<el-descriptions-item label="小崩边">{{
props.row.count_n_xbb
}}</el-descriptions-item>
<el-descriptions-item label="雾面">{{
props.row.count_n_wm
}}</el-descriptions-item>
<el-descriptions-item label="麻点">{{
props.row.count_n_md
}}</el-descriptions-item>
<el-descriptions-item label="线痕">{{
props.row.count_n_xh
}}</el-descriptions-item>
</el-descriptions>
</div>
</template>
</el-table-column>
<el-table-column
label="产出物料"
prop="material_out_name"
show-overflow-tooltip
></el-table-column>
<el-table-column label="批次号" prop="batch">
</el-table-column>
<el-table-column label="数量" prop="count_real">
</el-table-column>
<el-table-column label="合格数" prop="count_ok">
</el-table-column>
<el-table-column label="不合格数量" prop="count_notok">
</el-table-column>
<el-table-column
label="创建时间"
prop="create_time"
show-overflow-tooltip
>
</el-table-column>
</scTable>
</el-card>
</div>
<div v-if="mType=='handover'">
<el-card style="width: 100%" header="基本信息" shadow="never">
<el-descriptions>
<el-descriptions-item label="交送工序">{{
itemObj.send_mgroup_name
}}</el-descriptions-item>
<el-descriptions-item label="交送人">{{
itemObj.send_user_name
}}</el-descriptions-item>
<el-descriptions-item label="接收工序">{{
itemObj.recive_mgroup_name
}}</el-descriptions-item>
<el-descriptions-item label="接收人">{{
itemObj.recive_user_name
}}</el-descriptions-item>
<el-descriptions-item label="交送日期">{{
itemObj.send_date
}}</el-descriptions-item>
<el-descriptions-item label="接收日期">{{
itemObj.recive_date
}}</el-descriptions-item>
<el-descriptions-item label="备注">{{
itemObj.note
}}</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card style="width: 100%" header="交送物料" shadow="never">
<scTable
:data="itemObj.handoverb"
ref="tableOut"
row-key="id"
stripe
hideDo
hidePagination
>
<el-table-column type="index" width="50" />
<el-table-column label="批次号" prop="batch">
</el-table-column>
<el-table-column label="数量" prop="count">
</el-table-column>
<el-table-column label="不合格标记" prop="notok_sign">
</el-table-column>
</scTable>
</el-card>
</div>
<div v-if="mType=='do_in'||mType=='do_out'||mType=='pur_in'||mType=='sale_out'">
<el-card style="width: 100%" header="基本信息" shadow="never" v-if="mType=='sale_out'">
<el-descriptions>
<el-descriptions-item label="编号">{{
itemObj.number
}}</el-descriptions-item>
<el-descriptions-item label="出入库类型">{{
typeDict[itemObj.type]
}}</el-descriptions-item>
<el-descriptions-item label="状态">{{
stateDict[itemObj.state]
}}</el-descriptions-item>
<el-descriptions-item label="部门/车间">
{{itemObj.belong_dept_name}}-{{ itemObj.mgroup_name }}
</el-descriptions-item>
<el-descriptions-item label="执行人">{{
itemObj.do_user_name
}}</el-descriptions-item>
<el-descriptions-item label="创建时间">{{
itemObj.create_time
}}</el-descriptions-item>
<el-descriptions-item label="销售订单">
{{ itemObj.order_number }}
</el-descriptions-item>
<el-descriptions-item label="客户">
{{ itemObj.customer_name }}
</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card style="width: 100%" header="基本信息" shadow="never" v-else>
<el-descriptions>
<el-descriptions-item label="编号">{{
itemObj.number
}}</el-descriptions-item>
<el-descriptions-item label="出入库类型">{{
typeDict[itemObj.type]
}}</el-descriptions-item>
<el-descriptions-item label="状态">{{
stateDict[itemObj.state]
}}</el-descriptions-item>
<el-descriptions-item label="部门/车间">
{{itemObj.belong_dept_name}}-{{ itemObj.mgroup_name }}
</el-descriptions-item>
<el-descriptions-item label="执行人">{{
itemObj.do_user_name
}}</el-descriptions-item>
<el-descriptions-item label="创建日期">{{
itemObj.create_time
}}</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card style="width: 100%" shadow="never">
<scTable
:apiObj="apiObj"
row-key="id"
stripe
:params="params"
hideDo
hidePagination
>
<el-table-column type="index" width="50" />
<el-table-column label="批次号" prop="batch">
</el-table-column>
<el-table-column label="数量" prop="count">
</el-table-column>
<el-table-column label="不合格标记" prop="notok_sign">
</el-table-column>
</scTable>
</el-card>
</div>
<div v-if="mType=='ptest_gx'||mType=='ptest_cj'">
<el-card style="width: 100%" header="基本信息" shadow="never">
<el-descriptions v-if="mType=='ptest_gx'">
<el-descriptions-item label="物料">
{{itemObj.material_out_name}}
</el-descriptions-item>
<el-descriptions-item label="工序">
{{itemObj.mgroup_name}}
</el-descriptions-item>
<el-descriptions-item label="生产数">
{{itemObj.count_real}}
</el-descriptions-item>
<el-descriptions-item label="合格数">
{{itemObj.count_ok}}
</el-descriptions-item>
<el-descriptions-item label="不合格数">
{{itemObj.count_notok}}
</el-descriptions-item>
<el-descriptions-item label="班组">
{{ itemObj.shift_name }}
</el-descriptions-item>
<el-descriptions-item label="所属车间">
{{itemObj.belong_dept_name}}
</el-descriptions-item>
<el-descriptions-item label="处理人">
{{ itemObj.handle_user_name }}
</el-descriptions-item>
<el-descriptions-item label="操作时间">
{{ itemObj.handle_date }}
</el-descriptions-item>
</el-descriptions>
<el-descriptions v-if="mType=='ptest_cj'">
<el-descriptions-item label="物料">
{{itemObj.material_name}}
</el-descriptions-item>
<el-descriptions-item label="检验数">
{{itemObj.count}}
</el-descriptions-item>
<el-descriptions-item label="抽检数">
{{itemObj.count_sampling}}
</el-descriptions-item>
<el-descriptions-item label="合格数">
{{itemObj.count_ok}}
</el-descriptions-item>
<el-descriptions-item label="不合格数">
{{itemObj.count_notok}}
</el-descriptions-item>
<el-descriptions-item label="抽检时间">
{{ itemObj.test_date }}
</el-descriptions-item>
</el-descriptions>
<el-descriptions v-if="mType=='ptest_gx'">
<el-descriptions-item label="厚度">
{{itemObj.count_n_hd}}
</el-descriptions-item>
<el-descriptions-item label="气泡">
{{itemObj.count_n_qp}}
</el-descriptions-item>
<el-descriptions-item label="水纹">
{{itemObj.count_n_swen}}
</el-descriptions-item>
<el-descriptions-item label="崩边">
{{itemObj.count_n_bb}}
</el-descriptions-item>
<el-descriptions-item label="划伤">
{{itemObj.count_n_hs}}
</el-descriptions-item>
<el-descriptions-item label="麻点">
{{itemObj.count_n_md}}
</el-descriptions-item>
<el-descriptions-item label="小崩边">
{{itemObj.count_n_xbb}}
</el-descriptions-item>
<el-descriptions-item label="产品外径">
{{itemObj.count_n_wj}}
</el-descriptions-item>
<el-descriptions-item label="产品圆度">
{{itemObj.count_n_yd}}
</el-descriptions-item>
<el-descriptions-item label="产品同心度">
{{itemObj.count_n_txd}}
</el-descriptions-item>
</el-descriptions>
<el-descriptions v-else>
<el-descriptions-item label="厚度">
{{itemObj.count_notok_json.count_n_hd}}
</el-descriptions-item>
<el-descriptions-item label="气泡">
{{itemObj.count_notok_json.count_n_qp}}
</el-descriptions-item>
<el-descriptions-item label="水纹">
{{itemObj.count_notok_json.count_n_swen}}
</el-descriptions-item>
<el-descriptions-item label="崩边">
{{itemObj.count_notok_json.count_n_bb}}
</el-descriptions-item>
<el-descriptions-item label="划伤">
{{itemObj.count_notok_json.count_n_hs}}
</el-descriptions-item>
<el-descriptions-item label="麻点">
{{itemObj.count_notok_json.count_n_md}}
</el-descriptions-item>
<el-descriptions-item label="小崩边">
{{itemObj.count_notok_json.count_n_xbb}}
</el-descriptions-item>
<el-descriptions-item label="产品外径">
{{itemObj.count_notok_json.count_n_cpwj}}
</el-descriptions-item>
<el-descriptions-item label="产品圆度">
{{itemObj.count_notok_json.count_n_cpyd}}
</el-descriptions-item>
<el-descriptions-item label="产品同心度">
{{itemObj.count_notok_json.count_n_cptxd}}
</el-descriptions-item>
</el-descriptions>
</el-card>
</div>
<div v-if="mType=='productstest_cc'||mType=='productstest_wg'">
<el-card style="width: 100%" header="基本信息" shadow="never">
<el-descriptions>
<el-descriptions-item label="物料名">
{{itemObj.material_name}}
</el-descriptions-item>
<el-descriptions-item label="批次号">
{{itemObj.batch}}
</el-descriptions-item>
<el-descriptions-item label="总数">
{{itemObj.count}}
</el-descriptions-item>
<el-descriptions-item label="检验数">
{{itemObj.count_sampling}}
</el-descriptions-item>
<el-descriptions-item label="检验人">
{{ itemObj.test_user_name }}
</el-descriptions-item>
<el-descriptions-item label="检验日期">
{{ itemObj.test_date }}
</el-descriptions-item>
<el-descriptions-item label="班次">
{{ itemObj.shift }}
</el-descriptions-item>
<el-descriptions-item label="合格数">
{{itemObj.count_ok}}
</el-descriptions-item>
<el-descriptions-item label="不合格数">{{
itemObj.count_notok
}}</el-descriptions-item>
</el-descriptions>
<el-descriptions v-if="mType=='productstest_cc'">
<el-descriptions-item label="黑圈内径" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_hqnj}}
</el-descriptions-item>
<el-descriptions-item label="黑圈内径圆度" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_hqnjyd}}
</el-descriptions-item>
<el-descriptions-item label="黑圈外径" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_hqwj}}
</el-descriptions-item>
<el-descriptions-item label="黑圈外径圆度" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_hqwjyd}}
</el-descriptions-item>
<el-descriptions-item label="产品外径" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_wj}}
</el-descriptions-item>
<el-descriptions-item label="产品圆度" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_yd}}
</el-descriptions-item>
<el-descriptions-item label="产品同心度" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_txd}}
</el-descriptions-item>
<el-descriptions-item label="厚度" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_hd}}
</el-descriptions-item>
<el-descriptions-item label="准合格" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_zhg}}
</el-descriptions-item>
<el-descriptions-item label="圆准" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_yz}}
</el-descriptions-item>
</el-descriptions>
<el-descriptions v-if="mType=='productstest_wg'">
<el-descriptions-item label="脏" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_z}}
</el-descriptions-item>
<el-descriptions-item label="气泡" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_qp}}
</el-descriptions-item>
<el-descriptions-item label="水纹" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_swen}}
</el-descriptions-item>
<el-descriptions-item label="崩边" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_bb}}
</el-descriptions-item>
<el-descriptions-item label="棕边" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_zb}}
</el-descriptions-item>
<el-descriptions-item label="棕圈" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_zq}}
</el-descriptions-item>
<el-descriptions-item label="划伤" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_hs}}
</el-descriptions-item>
<el-descriptions-item label="麻点" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_md}}
</el-descriptions-item>
<el-descriptions-item label="黑圈变形" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_hqbx}}
</el-descriptions-item>
<el-descriptions-item label="倒角" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_dj}}
</el-descriptions-item>
<el-descriptions-item label="破损" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_ps}}
</el-descriptions-item>
<el-descriptions-item label="蓝圈" v-if="itemObj.count_notok_json">
{{itemObj.count_notok_json.count_n_lq}}
</el-descriptions-item>
</el-descriptions>
</el-card>
</div>
<div v-if="mType=='mtask'">
<el-card style="width: 100%" header="基本信息" shadow="never">
<el-descriptions>
<el-descriptions-item label="任务编号">{{
itemObj.number
}}</el-descriptions-item>
<el-descriptions-item label="所在工段">{{
itemObj.mgroup_name
}}</el-descriptions-item>
<el-descriptions-item label="产品名称">{{
itemObj.material_out_name
}}</el-descriptions-item>
<el-descriptions-item label="任务总数量">{{
itemObj.count
}}</el-descriptions-item>
</el-descriptions>
</el-card>
<el-card style="width: 100%" header="任务分解表" shadow="never">
<scTable
:data="itemObj.mtaskb"
ref="tableOut"
row-key="id"
stripe
hideDo
hidePagination
>
<el-table-column type="index" width="50" />
<el-table-column label="人员" prop="handle_user_name">
</el-table-column>
<el-table-column label="数量" prop="count">
</el-table-column>
</scTable>
</el-card>
</div>
</el-drawer>
</template>
<script>
export default {
props: {
mlogId: {
type: String,
default: "",
},
// mType: {
// type: String,
// default: "",
// },
},
emits: ["success", "closed"],
data() {
return {
loading: false,
apiObj: null,
paramsIn: {
page: 0,
mlog: "",
material_in__isnull: 0,
},
paramsOut: {
page: 0,
mlog: "",
material_out__isnull: 0,
},
params:{
page: 0,
mio:''
},
params12:{
fmlog:'',
page:0
},
mgroup: "",
itemObj: {},
oinfo_json:{
退火炉号:'',
退火时间:'',
退火温度:'',
抽检结果:'',
抽检数:'',
强度落球:'',
},
act_states: {
0: "草稿中",
1: "进行中",
2: "被退回",
3: "被撤回",
4: "已完成",
5: "已关闭",
},
stateDict: {10: "创建中",20: "已提交",},
typeDict:{
'do_in':'生产入库',
'do_out':'生产领料',
'sale_out': "销售发货",
'pur_in': "采购入库",
},
fileList:[],
test_file:'',
deptId: "",
visible: false,
};
},
mounted() {
// let that = this;
// this.paramsIn.mlog = this.mlogId;
// this.paramsOut.mlog = this.mlogId;
// this.apiObj = this.$API.wpm.mlogb.list;
// that.getMlogItem();
},
methods: {
open(type) {
console.log('type',type);
let that = this;
that.mType = type;
that.visible = true;
if(type=='101'){
that.params12.fmlog = that.mlogId;
that.apiObj = that.$API.wpm.mlog.list;
that.getfmlogItem();
}else if(type=='102'){
that.paramsIn.mlog = that.mlogId;
that.paramsOut.mlog = that.mlogId;
that.apiObj = that.$API.wpm.mlogb.list;
that.getMlogItem();
}else if(type=='handover'){
that.getHandoverItem();
}else if(type=='do_in'||type=='pur_in'||type=='do_out'||type=='sale_out'){
that.params.mio = that.mlogId;
that.apiObj = that.$API.inm.mioitem.list;
that.getInItem();
}else if(type=='sale_out'){
that.params.mio = that.mlogId;
that.apiObj = that.$API.inm.mioitem.list;
that.getInItem();
}else if(type=='ptest_gx'){
that.getMlogItem();
}else if(type=='ptest_cj'||type=='productstest_cc'||type=='productstest_wg'){
that.getftestworkItem();
}else if(type=='mtask'){
that.getMtaskItem();
}
},
getfmlogItem() {
let that = this;
that.$API.wpm.fmlog.item.req(that.mlogId).then((res) => {
that.itemObj = res;
});
},
getMlogItem() {
let that = this;
that.$API.wpm.mlog.item.req(that.mlogId).then((res) => {
that.itemObj = res;
// if(res.test_file!==null){
// that.fileList = [{name:res.test_file,url:res.test_file}];
// that.form.test_file = res.test_file;
// }
});
},
getHandoverItem(){
let that = this;
console.log('getHandoverItem')
that.$API.wpm.handover.list.req({id:that.mlogId,page:0}).then((res) => {
that.itemObj = res[0];
})
},
getInItem(){
let that = this;
that.$API.inm.mio.list.req({id:that.mlogId,page:0}).then((res) => {
that.itemObj = res[0];
})
},
getsaleOutItem(){
let that = this;
that.$API.inm.mio.list.req({id:that.mlogId,page:0}).then((res) => {
that.itemObj = res[0];
})
},
getftestworkItem(){
let that = this;
that.$API.qm.ftestwork.item.req(that.mlogId).then((res) => {
that.itemObj = res;
})
},
getMtaskItem(){
let that = this;
that.$API.pm.mtask.list.req({id:that.mlogId,page:0}).then((res) => {
that.itemObj = res[0];
})
},
},
};
</script>
<style></style>

View File

@ -1,5 +1,6 @@
<template>
<div class="user-bar">
<scan-dialog ref="scanDialog" :type="'info'" @closed="scanClose"> </scan-dialog>
<div class="screen panel-item hidden-sm-and-down" @click="screen">
<el-icon>
<el-icon-full-screen />
@ -94,19 +95,22 @@
>
<search @success="searchVisible = false"></search>
</el-dialog>
<scan-detail ref="scanDetails" v-if="scanVisible" :mlogId="scanId"></scan-detail>
</template>
<script>
import search from "./search.vue";
export default {
import scanDetail from "./scan_detail.vue";
import scanDialog from "./../../views/template/scan.vue";
export default {
components: {
search,
search,scanDialog,scanDetail
},
data() {
return {
userName: "",
userNameF: "",
visible:false,
searchVisible: false,
msg: false,
msgList: {},
@ -114,6 +118,11 @@ export default {
lang: this.$TOOL.data.get("APP_LANG") || this.$CONFIG.LANG,
dark: this.$TOOL.data.get("APP_DARK") || false,
},
apiObj:null,
params:{},
scanId:'',
scanType:'',
scanVisible:false,
};
},
watch: {
@ -233,6 +242,28 @@ export default {
search() {
this.searchVisible = true;
},
scanClose(data){
let that = this;
let arr = [];
if(data.indexOf(':')>-1){
arr = data.split(":");
}else{
arr = data.split("");
}
that.scanId = arr[1];
let scanType = that.scanType = arr[0];
console.log(data);
console.log('arr',arr);
console.log('scanType',scanType);
console.log('this.scanId',that.scanId);
that.scanVisible = true;
that.$nextTick(() => {
// that.$refs.saveDialog.open("add");
that.$refs.scanDetails.open(scanType);
});
// dataidid
},
},
};
</script>