init(projects): 整体修改

master
xushilin 12 months ago
parent 56b17e1451
commit 130832bb21

@ -1,63 +1,63 @@
<template> <template>
<div> <div>
<my-card title="搜索条件" search> <my-card title="搜索条件" search>
<n-form inline> <n-form inline>
<n-form-item label="生产工单"> <n-form-item label="生产工单">
<n-input <n-input
v-model:value="searchForm.generateWorkOrderNumber" v-model:value="searchForm.generateWorkOrderNumber"
:style="{ width: formItemWidth }" :style="{ width: formItemWidth }"
type="text" type="text"
placeholder="请输入生产工单" placeholder="请输入生产工单"
/> />
</n-form-item> </n-form-item>
<n-form-item label="订单编号"> <n-form-item label="订单编号">
<n-input <n-input
v-model:value="searchForm.orderNumber" v-model:value="searchForm.orderNumber"
type="text" type="text"
:style="{ width: formItemWidth }" :style="{ width: formItemWidth }"
placeholder="请输入订单编号" placeholder="请输入订单编号"
/> />
</n-form-item> </n-form-item>
<n-form-item label="是否合格"> <n-form-item label="是否合格">
<n-select <n-select
v-model:value="searchForm.qualifiedOrNot" v-model:value="searchForm.qualifiedOrNot"
placeholder="请选择是否合格" placeholder="请选择是否合格"
:options="qualifiedOrNotList" :options="qualifiedOrNotList"
:style="{ width: formItemWidth }" :style="{ width: formItemWidth }"
></n-select> ></n-select>
</n-form-item> </n-form-item>
<n-form-item label="机台"> <n-form-item label="机台">
<n-select <n-select
v-model:value="machineId" v-model:value="machineId"
placeholder="请选择机台" placeholder="请选择机台"
:options="machineList" :options="machineList"
:style="{ width: formItemWidth }" :style="{ width: formItemWidth }"
@update-value="(val,item : any) => { @update-value="(val,item : any) => {
searchForm.deviceName = item.label searchForm.deviceName = item.label
}" }"
></n-select> ></n-select>
</n-form-item> </n-form-item>
<n-form-item> <n-form-item>
<component :is="useSearchBtn(search, reset)"></component> <component :is="useSearchBtn(search, reset)"></component>
</n-form-item> </n-form-item>
</n-form> </n-form>
</my-card> </my-card>
<my-card title="拉丝过程检列表"> <my-card title="拉丝过程检列表">
<template #right> <template #right>
<div> <div>
<CxColumns v-model:columns="columns" /> <CxColumns v-model:columns="columns" />
</div> </div>
</template> </template>
<n-data-table <n-data-table
:loading="loading" :loading="loading"
:columns="columns" :columns="columns"
:data="data" :data="data"
:max-height="dataTableConfig.maxHeight" :max-height="dataTableConfig.maxHeight"
:scroll-x="dataTableConfig.scrollWidth(columns)" :scroll-x="dataTableConfig.scrollWidth(columns)"
></n-data-table> ></n-data-table>
<my-pagination v-model:search-form="searchForm" @init="init"></my-pagination> <my-pagination v-model:search-form="searchForm" @init="init"></my-pagination>
</my-card> </my-card>
</div> </div>
</template> </template>
<script setup lang="tsx"> <script setup lang="tsx">
@ -70,210 +70,210 @@ import { useLoading } from '~/src/hooks';
import { useSearchBtn } from '~/src/hooks/common/useBtn'; import { useSearchBtn } from '~/src/hooks/common/useBtn';
import { getQcWireDrawingRecordList } from '~/src/service/api/quality/drawingProcessCheckRecord/index'; import { getQcWireDrawingRecordList } from '~/src/service/api/quality/drawingProcessCheckRecord/index';
const searchForm = ref<drawingProcessCheckRecord.searchForm>({ const searchForm = ref<drawingProcessCheckRecord.searchForm>({
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
total: 0, total: 0,
generateWorkOrderNumber: '', generateWorkOrderNumber: '',
orderNumber: '', orderNumber: '',
qualifiedOrNot: null, qualifiedOrNot: null,
deviceName: null deviceName: null
}); });
const { loading, startLoading, endLoading } = useLoading(); const { loading, startLoading, endLoading } = useLoading();
const formItemWidth = ref<string>('180px'); const formItemWidth = ref<string>('180px');
const machineList = ref<{ label: string; value: number }[]>([]); const machineList = ref<{ label: string; value: number }[]>([]);
const qualifiedOrNotList = ref<{ label: string; value: string }[]>([ const qualifiedOrNotList = ref<{ label: string; value: string }[]>([
{ label: '合格', value: '0' }, { label: '合格', value: '0' },
{ label: '不合格', value: '1' } { label: '不合格', value: '1' }
]); ]);
const machineId = ref<number | null>(null); const machineId = ref<number | null>(null);
const data = ref<drawingProcessCheckRecord.TableList[]>([]); const data = ref<drawingProcessCheckRecord.TableList[]>([]);
const columns: Ref<DataTableColumns<drawingProcessCheckRecord.TableList>> = ref([ const columns: Ref<DataTableColumns<drawingProcessCheckRecord.TableList>> = ref([
{ {
title: '序号', title: '序号',
key: 'index', key: 'index',
align: 'center', align: 'center',
width: 70, width: 70,
render: (_row, index) => (searchForm.value.pageNum - 1) * searchForm.value.pageSize + index + 1 render: (_row, index) => (searchForm.value.pageNum - 1) * searchForm.value.pageSize + index + 1
}, },
{ {
title: '工单类型', title: '工单类型',
key: 'workOrdeType', key: 'workOrdeType',
align: 'center', align: 'center',
width: 100, width: 100,
render: row => { render: row => {
return row.workOrdeType === '0' ? '板材' : '金属'; return row.workOrdeType === '0' ? '板材' : '金属';
} }
}, },
// { // {
// title: '线', // title: '线',
// key: 'attr1', // key: 'attr1',
// align: 'center', // align: 'center',
// width: 100 // width: 100
// }, // },
{ {
title: '机台', title: '机台',
key: 'deviceName', key: 'deviceName',
align: 'center', align: 'center',
width: 100 width: 100
}, },
{ {
title: '订单类型', title: '订单类型',
key: 'orderType', key: 'orderType',
width: 100, width: 100,
render: row => { render: row => {
return row.orderType === '0' ? '客户订单' : '备库订单'; return row.orderType === '0' ? '客户订单' : '备库订单';
} }
}, },
{ {
title: '订单编号', title: '订单编号',
key: 'orderNumber', key: 'orderNumber',
align: 'center', align: 'center',
width: 140, width: 140,
ellipsis: { ellipsis: {
tooltip: true tooltip: true
} }
}, },
// { // {
// title: '', // title: '',
// key: 'clientName', // key: 'clientName',
// align: 'center', // align: 'center',
// width: 140, // width: 140,
// ellipsis: { // ellipsis: {
// tooltip: true // tooltip: true
// } // }
// }, // },
{ {
title: '生产工单号', title: '生产工单号',
key: 'generateWorkOrderNumber', key: 'generateWorkOrderNumber',
align: 'center', align: 'center',
width: 100, width: 100,
ellipsis: { ellipsis: {
tooltip: true tooltip: true
} }
}, },
{ {
title: '产品规格', title: '产品规格',
key: 'productSpecifications', key: 'productSpecifications',
align: 'center', align: 'center',
width: 100 width: 100
}, },
{ {
title: '数量', title: '数量',
key: 'weight', key: 'weight',
align: 'center', align: 'center',
width: 100 width: 100
}, },
{ {
title: '单位', title: '单位',
key: 'measure', key: 'measure',
align: 'center', align: 'center',
width: 100 width: 100
}, },
{ {
title: '批号', title: '批号',
key: 'batchNumber', key: 'batchNumber',
align: 'center', align: 'center',
width: 100 width: 100
}, },
{ {
title: '日期', title: '日期',
key: 'createTime', key: 'createTime',
align: 'center', align: 'center',
width: 180 width: 180
}, },
{ {
title: '质检人', title: '质检人',
key: 'qualityInspector', key: 'qualityInspector',
align: 'center', align: 'center',
width: 100 width: 100
}, },
{ {
title: '是否合格', title: '是否合格',
key: 'qualifiedOrNot', key: 'qualifiedOrNot',
align: 'center', align: 'center',
width: 100, width: 100,
render: row => ( render: row => (
<n-tag type={row.qualifiedOrNot === '0' ? 'success' : 'error'}> <n-tag type={row.qualifiedOrNot === '0' ? 'success' : 'error'}>
{row.qualifiedOrNot === '0' ? '合格' : '不合格'} {row.qualifiedOrNot === '0' ? '合格' : '不合格'}
</n-tag> </n-tag>
) )
}, },
{ {
title: '缺陷项', title: '缺陷项',
key: '', key: '',
align: 'center', align: 'center',
width: 180, width: 180,
ellipsis: { ellipsis: {
tooltip: true tooltip: true
}, },
render: row => { render: row => {
let defectName = ''; let defectName = '';
if (row.qcDefectList) { if (row.qcDefectList) {
row.qcDefectList.forEach(item => { row.qcDefectList.forEach(item => {
defectName += `${item.defectName}, `; defectName += `${item.defectName}, `;
}); });
defectName = defectName.slice(0, -1); defectName = defectName.slice(0, -1);
} }
return defectName; return defectName;
} }
} }
]); ]);
function search() { function search() {
init(); init();
} }
function reset() { function reset() {
searchForm.value = { searchForm.value = {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
total: 0, total: 0,
generateWorkOrderNumber: '', generateWorkOrderNumber: '',
orderNumber: '', orderNumber: '',
qualifiedOrNot: null, qualifiedOrNot: null,
deviceName: null deviceName: null
}; };
init(); init();
} }
function getList() { function getList() {
getWorkbenchWiredrawingList({ pageSize: 999 }).then(res => { getWorkbenchWiredrawingList({ pageSize: 999 }).then(res => {
if (res.code === 200) { if (res.code === 200) {
res.rows.forEach((item: any) => { res.rows.forEach((item: any) => {
machineList.value.push({ machineList.value.push({
label: item.equipmentCode, label: item.equipmentCode,
value: item.id value: item.id
}); });
}); });
} }
}); });
} }
function init() { function init() {
startLoading(); startLoading();
getQcWireDrawingRecordList(searchForm.value).then(res => { getQcWireDrawingRecordList(searchForm.value).then(res => {
endLoading(); endLoading();
if (res.code === 200) { if (res.code === 200) {
data.value = res.rows; data.value = res.rows;
searchForm.value.total = res.total; searchForm.value.total = res.total;
} }
}); });
} }
onMounted(() => { onMounted(() => {
init(); init();
getList(); getList();
}); });
</script> </script>
<style scoped> <style scoped>
:deep(.n-data-table-td) { :deep(.n-data-table-td) {
text-align: center; text-align: center;
} }
:deep(.n-space) { :deep(.n-space) {
justify-content: center !important; justify-content: center !important;
} }
:deep(.n-data-table .n-data-table-th .n-data-table-th__title-wrapper) { :deep(.n-data-table .n-data-table-th .n-data-table-th__title-wrapper) {
text-align: center; text-align: center;
} }
</style> </style>

@ -69,8 +69,12 @@ import {
useEditBtn useEditBtn
} from '@/hooks/common/useBtn'; } from '@/hooks/common/useBtn';
// import { download } from '@/service/request/helpers'; // import { download } from '@/service/request/helpers';
import { useSocketStore } from '@/store/modules/socket/index';
import type { ModalType } from './components/table-action-modal.vue'; import type { ModalType } from './components/table-action-modal.vue';
import TableActionModal from './components/table-action-modal.vue'; import TableActionModal from './components/table-action-modal.vue';
const socketStore = useSocketStore();
const router = useRouter(); const router = useRouter();
const { proxy } = getCurrentInstance() as any; const { proxy } = getCurrentInstance() as any;
const { wms_item_recpt_status } = proxy.useDict('wms_item_recpt_status', 'wms_item_recpt_type'); const { wms_item_recpt_status } = proxy.useDict('wms_item_recpt_status', 'wms_item_recpt_type');
@ -265,6 +269,13 @@ const columns: Ref<DataTableColumns<wms.recptRawType.columns>> = ref([
align: 'center', align: 'center',
render: row => { render: row => {
console.log(wms_item_recpt_status.value, row.status, '----'); console.log(wms_item_recpt_status.value, row.status, '----');
if (row.status === 'FINISHED') {
return (
<n-button size="small" type="info" onClick={() => print(row)}>
补打标签
</n-button>
);
}
const Btn: JSX.Element[] = []; const Btn: JSX.Element[] = [];
if (row.status !== 'FINISHED') { if (row.status !== 'FINISHED') {
Btn.push( Btn.push(
@ -280,29 +291,6 @@ const columns: Ref<DataTableColumns<wms.recptRawType.columns>> = ref([
) )
); );
} }
// Btn.push(
// useInfoBtn(
// () => {
// router.push({
// name: 'storage_auxiliaryProduceinfo',
// query: { id: row.recptId, warehouseId: row.warehouseId, info: 'true' }
// });
// },
// 'tiny',
// ''
// )
// );
// Btn.push(
// useDelBtn(() => {
// delWmsItemRecpt(row.recptId as number).then(res => {
// if (res.code === 200) {
// window.$message?.success('');
// init();
// }
// });
// }, 'tiny')
// );
return Btn; return Btn;
} }
} }
@ -328,6 +316,15 @@ function reset() {
getWmsItemRecptData(); getWmsItemRecptData();
} }
function print(row: wms.recptRawType.columns) {
socketStore.setMsg(
JSON.stringify({
templateType: 'YL-MB',
printValue: row.lineList
})
);
window.$message?.success('已发送打印命令');
}
// async function handleEditTable(issueId: number) { // async function handleEditTable(issueId: number) {
// console.log('', issueId); // console.log('', issueId);
// } // }

Loading…
Cancel
Save