add fix filed

main
chenshuichuan 2 years ago
parent a7a7e99607
commit bd7c44ffbf

@ -27,7 +27,7 @@ export const ProductApi = {
// 查询产品精简列表
getProductSimpleList: async () => {
return await request.get({ url: `/erp/product/simple-list-product` })
return await request.get({ url: `/erp/product/simple-list-all` })
},
// 查询原料精简列表
getItemSimpleList: async () => {
@ -37,7 +37,10 @@ export const ProductApi = {
getOrderSimpleList: async () => {
return await request.get({ url: `/erp/product/simple-list-order` })
},
// 查询所有商品精简列表
getMesProductSimpleList: async () => {
return await request.get({ url: `/erp/product/simple-list-product` })
},
// 查询产品详情
getProduct: async (id: number) => {

@ -7,6 +7,8 @@ export interface PlanVO {
productId: number // 产品ID
taskDetailId: number // 任务单明细ID
taskId: number // 任务单ID
productName: number // 产品
taskCode: number // 任务单
planNumber: number // 数量
finishNumber: number // 成品数量
status: number // 状态
@ -15,6 +17,7 @@ export interface PlanVO {
startTime: Date // 实际开始时间
endTime: Date // 实际结束时间
productionManagerId: number // 生产主管ID
productionManager: number // 生产主管
remark: string // 备注
isEnable: boolean // 是否启用
}
@ -50,4 +53,4 @@ export const PlanApi = {
exportPlan: async (params) => {
return await request.download({ url: `/mes/plan/export-excel`, params })
}
}
}

@ -35,54 +35,7 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="最大长度" prop="maxLength">
<el-input
v-model="queryParams.maxLength"
placeholder="请输入最大长度"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="是否补齐" prop="isPadded">
<el-select
v-model="queryParams.isPadded"
placeholder="请选择是否补齐"
clearable
class="!w-240px"
>
<el-option
v-for="dict in getStrDictOptions(DICT_TYPE.ERP_AUTOCODE_IS_PADDING)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="补齐字符" prop="paddedChar">
<el-input
v-model="queryParams.paddedChar"
placeholder="请输入补齐字符"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="补齐方式" prop="paddedMethod">
<el-select
v-model="queryParams.paddedMethod"
placeholder="请选择补齐方式"
clearable
class="!w-240px"
>
<el-option
v-for="dict in getStrDictOptions(DICT_TYPE.ERP_AUTOCODE_PADDING_TYPE)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input
v-model="queryParams.remark"
@ -107,17 +60,6 @@
/>
</el-select>
</el-form-item>
<el-form-item label="创建时间" prop="createTime">
<el-date-picker
v-model="queryParams.createTime"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
class="!w-240px"
/>
</el-form-item>
<el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
@ -177,14 +119,8 @@
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="scope.row.isEnable" />
</template>
</el-table-column>
<el-table-column
label="创建时间"
align="center"
prop="createTime"
:formatter="dateFormatter"
width="180px"
/>
<el-table-column label="操作" align="center" min-width="120px">
<el-table-column label="操作" align="center" fixed="right" width="180">
<template #default="scope">
<el-button
link
@ -332,4 +268,4 @@ const handleExport = async () => {
onMounted(() => {
getList()
})
</script>
</script>

@ -26,6 +26,22 @@
/>
</el-select>
</el-form-item>
<el-form-item label="分类" prop="categoryId">
<el-select
v-model="queryParams.categoryId"
clearable
filterable
placeholder="请选择产品"
class="!w-240px"
>
<el-option
v-for="item in categoryList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
<el-form-item label="仓库" prop="warehouseId">
<el-select
v-model="queryParams.warehouseId"
@ -96,6 +112,7 @@ import { StockApi, StockVO } from '@/api/erp/stock/stock'
import { ProductApi, ProductVO } from '@/api/erp/product/product'
import { WarehouseApi, WarehouseVO } from '@/api/erp/stock/warehouse'
import { erpCountTableColumnFormatter } from '@/utils'
import { ProductCategoryApi, ProductCategoryVO } from '@/api/erp/product/category'
/** ERP 产品库存列表 */
defineOptions({ name: 'ErpStock' })
@ -110,12 +127,14 @@ const queryParams = reactive({
pageNo: 1,
pageSize: 10,
productId: undefined,
warehouseId: undefined
warehouseId: undefined,
categoryId: undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //
const productList = ref<ProductVO[]>([]) //
const warehouseList = ref<WarehouseVO[]>([]) //
const categoryList = ref<ProductCategoryVO[]>([]) //
/** 查询列表 */
const getList = async () => {
@ -181,5 +200,6 @@ onMounted(async () => {
//
productList.value = await ProductApi.getProductSimpleList()
warehouseList.value = await WarehouseApi.getWarehouseSimpleList()
categoryList.value = await ProductCategoryApi.getProductCategorySimpleList()
})
</script>

@ -92,8 +92,9 @@
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
<el-table-column label="ID" align="center" prop="id"/>
<el-table-column label="机台" align="center" prop="machineName"/>
<el-table-column label="设备编码" align="center" prop="deviceCode"/>
<el-table-column label="设备名称" align="center" prop="deviceName"/>
<el-table-column
label="采集时间"
align="center"
@ -103,37 +104,9 @@
/>
<el-table-column label="时间戳" align="center" prop="deviceDataTimeLong"/>
<el-table-column label="数据" align="center" prop="deviceData"/>
<el-table-column label="设备编码" align="center" prop="deviceCode"/>
<el-table-column label="设备名称" align="center" prop="deviceName"/>
<el-table-column label="用户" align="center" prop="workerName"/>
<el-table-column label="网关" align="center" prop="gatewayCode"/>
<el-table-column
label="创建时间"
align="center"
prop="createTime"
:formatter="dateFormatter"
width="180px"
/>
<el-table-column label="操作" align="center">
<template #default="scope">
<el-button
link
type="primary"
@click="openForm('update', scope.row.id)"
v-hasPermi="['iot:mqtt-record:update']"
>
编辑
</el-button>
<el-button
link
type="danger"
@click="handleDelete(scope.row.id)"
v-hasPermi="['iot:mqtt-record:delete']"
>
删除
</el-button>
</template>
</el-table-column>
<el-table-column label="用户" align="center" prop="workerName"/>
</el-table>
<!-- 分页 -->
<Pagination

@ -90,10 +90,10 @@
/>
</el-select>
</el-form-item>
<el-form-item label="组织类型" prop="componentType">
<el-form-item label="类型" prop="componentType">
<el-select
v-model="queryParams.componentType"
placeholder="请选择组织类型"
placeholder="请选择类型"
clearable
class="!w-240px"
>
@ -108,7 +108,7 @@
<el-form-item label="机台类型" prop="machineType">
<el-select
v-model="queryParams.machineType"
placeholder="请选择机台类型"
placeholder="类型"
clearable
class="!w-240px"
>
@ -158,16 +158,20 @@
:default-expand-all="isExpandAll"
v-if="refreshTable"
>
<el-table-column label="装备id" align="center" prop="id" />
<el-table-column label="父装备" align="center" prop="parentId" />
<el-table-column label="装备名称" align="center" prop="name" />
<el-table-column label="装备SN号" align="center" prop="serialCode" />
<el-table-column label="显示顺序" align="center" prop="sort" />
<el-table-column label="组织类型" align="center" prop="componentType">
<el-table-column label="ID" align="center" prop="id" />
<el-table-column label="类型" align="center" prop="componentType">
<template #default="scope">
<dict-tag :type="DICT_TYPE.MES_MACHINE_TYPE" :value="scope.row.componentType" />
</template>
</el-table-column>
<el-table-column label="装备名称" align="center" prop="name" />
<el-table-column label="SN号" align="center" prop="serialCode" />
<el-table-column label="机台类型" align="center" prop="machineType">
<template #default="scope">
<dict-tag :type="DICT_TYPE.MES_ORG_TYPE" :value="scope.row.machineType" />
</template>
</el-table-column>
<el-table-column label="显示顺序" align="center" prop="sort" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column
label="创建时间"
@ -181,13 +185,7 @@
<dict-tag :type="DICT_TYPE.MES_MACHINE_STATUS" :value="scope.row.status" />
</template>
</el-table-column>
<el-table-column label="机台类型" align="center" prop="machineType">
<template #default="scope">
<dict-tag :type="DICT_TYPE.MES_ORG_TYPE" :value="scope.row.machineType" />
</template>
</el-table-column>
<el-table-column label="操作" align="center" fixed="right" min-width="120px" >
<el-table-column label="操作" align="center" fixed="right" min-width="150px" >
<template #default="scope">
<el-button
link
@ -197,6 +195,14 @@
>
编辑
</el-button>
<el-button
link
type="primary"
@click="openForm('update', scope.row.id)"
v-hasPermi="['mes:machine-component:update']"
>
替换
</el-button>
<el-button
link
type="danger"

@ -74,28 +74,7 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="实际开始" prop="startTime">
<el-date-picker
v-model="queryParams.startTime"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="实际结束" prop="endTime">
<el-date-picker
v-model="queryParams.endTime"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="生产主管" prop="productionManagerId">
<el-input
v-model="queryParams.productionManagerId"
@ -142,11 +121,9 @@
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
<el-table-column label="ID" align="center" prop="id" />
<el-table-column label="计划编码" align="center" prop="code" />
<el-table-column label="产品ID" align="center" prop="productId" />
<el-table-column label="任务单明细ID" align="center" prop="taskDetailId" />
<el-table-column label="任务单ID" align="center" prop="taskId" />
<el-table-column label="产品" align="center" prop="productName" min-width="150px"/>
<el-table-column label="任务单" align="center" prop="taskCode" />
<el-table-column label="数量" align="center" prop="planNumber" />
<el-table-column label="成品数量" align="center" prop="finishNumber" />
<el-table-column label="状态" align="center" prop="status">
@ -168,34 +145,23 @@
:formatter="dateFormatter"
width="180px"
/>
<el-table-column
label="实际开始时间"
align="center"
prop="startTime"
:formatter="dateFormatter"
width="180px"
/>
<el-table-column
label="实际结束时间"
align="center"
prop="endTime"
:formatter="dateFormatter"
width="180px"
/>
<el-table-column label="生产主管ID" align="center" prop="productionManagerId" />
<!-- <el-table-column-->
<!-- label="实际开始时间"-->
<!-- align="center"-->
<!-- prop="startTime"-->
<!-- :formatter="dateFormatter"-->
<!-- width="180px"-->
<!-- />-->
<!-- <el-table-column-->
<!-- label="实际结束时间"-->
<!-- align="center"-->
<!-- prop="endTime"-->
<!-- :formatter="dateFormatter"-->
<!-- width="180px"-->
<!-- />-->
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="是否启用" align="center" prop="isEnable">
<template #default="scope">
<dict-tag :type="DICT_TYPE.INFRA_BOOLEAN_STRING" :value="scope.row.isEnable" />
</template>
</el-table-column>
<el-table-column
label="创建时间"
align="center"
prop="createTime"
:formatter="dateFormatter"
width="180px"
/>
<el-table-column label="操作" align="center" fixed="right" width="150">
<template #default="scope">
<el-button

@ -9,45 +9,35 @@
label-width="68px"
>
<el-form-item label="生产计划ID" prop="planId">
<el-form-item label="计划" prop="planId">
<el-input
v-model="queryParams.planId"
placeholder="请输入生产计划ID"
placeholder="请输入生产计划"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="产品ID" prop="productId">
<el-form-item label="产品" prop="productId">
<el-input
v-model="queryParams.productId"
placeholder="请输入产品ID"
placeholder="请输入产品"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="组织ID" prop="orgId">
<el-form-item label="工位" prop="orgId">
<el-input
v-model="queryParams.orgId"
placeholder="请输入组织ID"
placeholder="请输入工位"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="废品原因" prop="wasteReason">
<el-input
v-model="queryParams.wasteReason"
placeholder="请输入废品原因"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input
v-model="queryParams.remark"
@ -57,18 +47,8 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="报工日期" prop="reportDate">
<el-date-picker
v-model="queryParams.reportDate"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="报工状态" prop="reportStatus">
<el-form-item label="状态" prop="reportStatus">
<el-select
v-model="queryParams.reportStatus"
placeholder="请选择报工状态"
@ -83,6 +63,17 @@
/>
</el-select>
</el-form-item>
<el-form-item label="日期" prop="reportDate">
<el-date-picker
v-model="queryParams.reportDate"
value-format="YYYY-MM-DD HH:mm:ss"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="[new Date('1 00:00:00'), new Date('1 23:59:59')]"
class="!w-240px"
/>
</el-form-item>
<el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
@ -92,7 +83,15 @@
@click="openForm('create')"
v-hasPermi="['mes:produce-report-detail:create']"
>
<Icon icon="ep:plus" class="mr-5px" /> 新增
<Icon icon="ep:plus" class="mr-5px" /> 报工
</el-button>
<el-button
type="primary"
plain
@click="openForm('create')"
v-hasPermi="['mes:produce-report-detail:create']"
>
<Icon icon="ep:plus" class="mr-5px" /> 代报工
</el-button>
<el-button
type="success"
@ -110,41 +109,41 @@
<!-- 列表 -->
<ContentWrap>
<el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
<el-table-column label="ID" align="center" prop="id" />
<el-table-column label="报工单id" align="center" prop="reportId" />
<el-table-column label="生产计划ID" align="center" prop="planId" />
<el-table-column label="产品ID" align="center" prop="productId" />
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="组织ID" align="center" prop="orgId" />
<el-table-column label="成品率" align="center" prop="qualityRate" />
<el-table-column label="备注" align="center" prop="wasteReason" />
<el-table-column label="总时长" align="center" prop="totalTime" />
<el-table-column label="打包数量" align="center" prop="packageNumber" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column
label="创建时间"
align="center"
prop="createTime"
:formatter="dateFormatter"
width="180px"
/>
<el-table-column label="报工单" align="center" prop="reportId" />
<el-table-column label="生产计划" align="center" prop="planId" />
<el-table-column label="产品" align="center" prop="productId" />
<el-table-column label="用户" align="center" prop="userId" />
<el-table-column label="工位" align="center" prop="orgId" />
<el-table-column label="成品数量" align="center" prop="qualityNumber" />
<el-table-column label="废品数量" align="center" prop="wasteNumber" />
<el-table-column label="总数量" align="center" prop="totalNumber" />
<el-table-column label="成品率%" align="center" prop="qualityRate" />
<el-table-column label="打包数量" align="center" prop="packageNumber" />
<el-table-column
label="报工日期"
align="center"
prop="reportDate"
:formatter="dateFormatter"
:formatter="dateFormatter2"
width="180px"
/>
<el-table-column
label="创建时间"
align="center"
prop="createTime"
:formatter="dateFormatter"
width="120px"
/>
<el-table-column label="总时长" align="center" prop="totalTime" />
<el-table-column label="计件时间" align="center" prop="reportTime" />
<el-table-column label="报工状态" align="center" prop="reportStatus">
<el-table-column label="状态" align="center" prop="reportStatus">
<template #default="scope">
<dict-tag :type="DICT_TYPE.MES_RECORD_STATUS" :value="scope.row.reportStatus" />
</template>
</el-table-column>
<el-table-column label="废品原因" align="center" prop="wasteReason" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="操作" align="center" fixed="right" width="150">
<template #default="scope">
<el-button
@ -181,7 +180,7 @@
<script setup lang="ts">
import { getIntDictOptions, DICT_TYPE } from '@/utils/dict'
import { dateFormatter } from '@/utils/formatTime'
import {dateFormatter, dateFormatter2} from '@/utils/formatTime'
import download from '@/utils/download'
import { ProduceReportDetailApi, ProduceReportDetailVO } from '@/api/mes/producereport'
import ProduceReportDetailForm from './ProduceReportDetailForm.vue'

@ -13,11 +13,6 @@
<el-input v-model="formData.code" placeholder="请输入编码" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="流程实例的编号" prop="processInstanceId">
<el-input v-model="formData.processInstanceId" placeholder="请输入流程实例的编号" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="备注" prop="remark">
<el-input v-model="formData.remark" placeholder="请输入备注" />

@ -37,9 +37,7 @@
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="流程实例的编号" prop="processInstanceId">
<el-input v-model="formData.processInstanceId" placeholder="请输入流程实例的编号" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="formData.remark" placeholder="请输入备注" />
</el-form-item>
@ -149,4 +147,4 @@ const resetForm = () => {
}
formRef.value?.resetFields()
}
</script>
</script>

@ -201,7 +201,7 @@ const dealOrder = async (e) => {
onMounted(async () => {
//
unitList.value = await ProductUnitApi.getProductUnitSimpleList()
productList.value = await ProductApi.getProductSimpleList()
productList.value = await ProductApi.getMesProductSimpleList()
//
if (formData.value.length === 0) {
handleAdd()

@ -164,7 +164,7 @@ const open = async (type: string, id?: number, taskId: number) => {
}
//
unitList.value = await ProductUnitApi.getProductUnitSimpleList()
productList.value = await ProductApi.getProductSimpleList()
productList.value = await ProductApi.getMesProductSimpleList()
}
defineExpose({ open }) // open

Loading…
Cancel
Save