| | |
| | | <div class="app-container"> |
| | | <el-card class="box-card"> |
| | | <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-form-item label-width="80" label="生产工单号" prop="workOrderNo"> |
| | | <el-input v-model="queryParams.workOrderNo" placeholder="请输入生产工单号" clearable @keyup.enter.native="handleQuery"/> |
| | | <el-form-item label-width="100" label="生产通知单" prop="productName"> |
| | | <el-input v-model="queryParams.productionNotice" placeholder="请输入生产通知单" clearable @keyup.enter.native="handleQuery"/> |
| | | </el-form-item> |
| | | <el-form-item label="产品名称" prop="productName"> |
| | | <el-input v-model="queryParams.productName" placeholder="请输入产品名称" clearable @keyup.enter.native="handleQuery"/> |
| | | <el-form-item label-width="80" label="生产订单" prop="workOrderNo"> |
| | | <el-input v-model="queryParams.workOrderNo" placeholder="请输入生产订单" clearable @keyup.enter.native="handleQuery"/> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="产品名称" prop="productName">--> |
| | | <!-- <el-input v-model="queryParams.productName" placeholder="请输入产品名称" clearable @keyup.enter.native="handleQuery"/>--> |
| | | <!-- </el-form-item>--> |
| | | <el-form-item label="工单状态" prop="orderStatus"> |
| | | <el-select v-model="queryParams.orderStatus" placeholder="请选择工单状态" clearable> |
| | | <el-option |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item style="float: right"> |
| | | <el-button type="warning" icon="el-icon-download" size="mini" @click="getProductionNotice">接收</el-button> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
| | | <el-button type="warning" icon="el-icon-copy-document" size="mini" @click="advancedQuery">高级查询</el-button> |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
| | |
| | | |
| | | <el-table border v-loading="loading" :data="productionOrdeList" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column label="生产工单号" width="160" align="center"> |
| | | <el-table-column label="生产通知单号" width="160" align="center" prop="productionNotice"> |
| | | </el-table-column> |
| | | <el-table-column label="生产订单" width="160" align="center"> |
| | | <template slot-scope="scope"> |
| | | <router-link :to="{path: '/main/workReport-data/index/', query: {workOrderNo: scope.row.workOrderNo} }" class="link-type"> |
| | | <span>{{ scope.row.workOrderNo }}</span> |
| | | </router-link> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="订单编号" width="140" align="center" prop="salesOrderCode"> |
| | | <el-table-column label="机型" width="160" align="center" prop="typeZ"> |
| | | </el-table-column> |
| | | <el-table-column label="产品编号" width="140" align="center" prop="productCode"> |
| | | <el-table-column label="需求数量" align="center" prop="planQty"> |
| | | </el-table-column> |
| | | <el-table-column label="产品名称" width="160" align="center" prop="productName"> |
| | | </el-table-column> |
| | | <el-table-column label="种类" width="160" align="center" prop="typeZ"> |
| | | <el-table-column label="物料类型" width="140" align="center" prop="productCode"> |
| | | </el-table-column> |
| | | <el-table-column label="实际数量" width="160" align="center" prop="actualQty"> |
| | | </el-table-column> |
| | |
| | | <dict-tag :options="dict.type.order_state" :value="scope.row.orderStatus"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="车间编号" align="center" prop="workshopCode"> |
| | | <el-table-column label="工厂" align="center" prop="workshopCode"> |
| | | </el-table-column> |
| | | <el-table-column label="产线编号" align="center" prop="lineCode"> |
| | | <el-table-column label="仓库" align="center"> |
| | | </el-table-column> |
| | | <el-table-column label="工艺流程" width="140" align="center" prop="routeCode"> |
| | | <el-table-column label="产线" align="center" prop="lineCode"> |
| | | </el-table-column> |
| | | <el-table-column label="产品BOM" width="140" align="center" prop="bomCode"> |
| | | <el-table-column label="订单类型" align="center"> |
| | | </el-table-column> |
| | | <el-table-column label="工艺配方" width="140" align="center" prop="recipeCode"> |
| | | <el-table-column label="ZWS" align="center"> |
| | | </el-table-column> |
| | | <el-table-column label="计划数量" align="center" prop="planQty"> |
| | | |
| | | <!-- <el-table-column label="工艺流程" width="140" align="center" prop="routeCode">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="产品BOM" width="140" align="center" prop="bomCode">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="工艺配方" width="140" align="center" prop="recipeCode">--> |
| | | <!-- </el-table-column>--> |
| | | |
| | | <!-- <el-table-column label="实际数量" align="center" prop="actualQty">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="实际上线数量" width="100" align="center" prop="actualOnlineQty">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="需求日期" align="center" prop="demandDate" width="180">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="计划开始时间" width="160" align="center" prop="planStartTime">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="计划结束时间" width="160" align="center" prop="planEndTime">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="实际开始时间" width="160" align="center" prop="actualStartTime">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="实际结束时间" width="160" align="center" prop="actualEndTime">--> |
| | | <!-- </el-table-column>--> |
| | | |
| | | <!-- <el-table-column width="160" label="更新时间" align="center" prop="updateTime">--> |
| | | <!-- </el-table-column>--> |
| | | <el-table-column label="通知单制单人" width="80" align="center" prop="createUser"> |
| | | </el-table-column> |
| | | <el-table-column label="实际数量" align="center" prop="actualQty"> |
| | | <el-table-column width="160" label="通知生成日期" align="center" prop="createTime"> |
| | | </el-table-column> |
| | | <el-table-column label="实际上线数量" width="100" align="center" prop="actualOnlineQty"> |
| | | <el-table-column label="成品描述" width="160" align="center" prop="productName"> |
| | | </el-table-column> |
| | | <el-table-column label="需求日期" align="center" prop="demandDate" width="180"> |
| | | </el-table-column> |
| | | <el-table-column label="计划开始时间" width="160" align="center" prop="planStartTime"> |
| | | </el-table-column> |
| | | <el-table-column label="计划结束时间" width="160" align="center" prop="planEndTime"> |
| | | </el-table-column> |
| | | <el-table-column label="实际开始时间" width="160" align="center" prop="actualStartTime"> |
| | | </el-table-column> |
| | | <el-table-column label="实际结束时间" width="160" align="center" prop="actualEndTime"> |
| | | </el-table-column> |
| | | <el-table-column width="160" label="创建时间" align="center" prop="createTime"> |
| | | </el-table-column> |
| | | <el-table-column width="160" label="更新时间" align="center" prop="updateTime"> |
| | | </el-table-column> |
| | | <el-table-column label="创建人" width="80" align="center" prop="createUser"> |
| | | </el-table-column> |
| | | <el-table-column label="修改人" width="80" align="center" prop="updateUser"> |
| | | </el-table-column> |
| | | <el-table-column label="备注" width="100" align="center" prop="remarks"> |
| | | </el-table-column> |
| | | <el-table-column label="流水号" align="center" prop="streamNumber"> |
| | | </el-table-column> |
| | | <el-table-column label="客户" width="80" align="center" prop="custom"> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" width="350" label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <!-- 工单状态(1创建、2已发布、3生产中、4已冻结、5已完工、6已关闭) --> |
| | | <el-button type="success" :disabled="scope.row.orderStatus !== '1'" style="width: 72px" plain @click="handleCommand('3',scope.row.id)" size="mini"> |
| | | 开始</el-button> |
| | | <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '2' && scope.row.orderStatus !== '3'" v-if="scope.row.orderStatus !== '2'&& scope.row.orderStatus !== '4'" plain @click="handleCommand('4',scope.row.id)" type="warning" size="mini"> |
| | | 冻结</el-button> |
| | | <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '4'" v-if="scope.row.orderStatus === '4'" plain @click="handleCommand('3',scope.row.id)" type="warning" size="mini"> |
| | | 解冻</el-button> |
| | | <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '1'" plain @click="handleCommand('6',scope.row.id)" v-if="scope.row.orderStatus === '1'||scope.row.orderStatus === '3'||scope.row.orderStatus === '4'||scope.row.orderStatus === '5'" type="danger" size="mini"> |
| | | 关闭</el-button> |
| | | <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini"> |
| | | 启用</el-button> |
| | | <el-button style="width: 72px" :disabled="scope.row.orderStatus === '4'||scope.row.orderStatus === '6'" v-if="scope.row.orderStatus !== '5'" @click="handleCommand('5',scope.row.id)" type="success" size="mini"> |
| | | 完成</el-button> |
| | | <el-button style="width: 72px" :disabled="scope.row.orderStatus === '5'" v-if="scope.row.orderStatus === '5'" type="success" size="mini">已完工</el-button> <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini"> |
| | | 启用</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- <el-table-column label="修改人" width="80" align="center" prop="updateUser">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="备注" width="100" align="center" prop="remarks">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="流水号" align="center" prop="streamNumber">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column label="客户" width="80" align="center" prop="custom">--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column fixed="right" width="350" label="操作" align="center" class-name="small-padding fixed-width">--> |
| | | <!-- <template slot-scope="scope">--> |
| | | <!-- <!– 工单状态(1创建、2已发布、3生产中、4已冻结、5已完工、6已关闭) –>--> |
| | | <!-- <el-button type="success" :disabled="scope.row.orderStatus !== '1'" style="width: 72px" plain @click="handleCommand('3',scope.row.id)" size="mini">--> |
| | | <!-- 开始</el-button>--> |
| | | <!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '2' && scope.row.orderStatus !== '3'" v-if="scope.row.orderStatus !== '2'&& scope.row.orderStatus !== '4'" plain @click="handleCommand('4',scope.row.id)" type="warning" size="mini">--> |
| | | <!-- 冻结</el-button>--> |
| | | <!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '4'" v-if="scope.row.orderStatus === '4'" plain @click="handleCommand('3',scope.row.id)" type="warning" size="mini">--> |
| | | <!-- 解冻</el-button>--> |
| | | <!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '1'" plain @click="handleCommand('6',scope.row.id)" v-if="scope.row.orderStatus === '1'||scope.row.orderStatus === '3'||scope.row.orderStatus === '4'||scope.row.orderStatus === '5'" type="danger" size="mini">--> |
| | | <!-- 关闭</el-button>--> |
| | | <!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini">--> |
| | | <!-- 启用</el-button>--> |
| | | <!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus === '4'||scope.row.orderStatus === '6'" v-if="scope.row.orderStatus !== '5'" @click="handleCommand('5',scope.row.id)" type="success" size="mini">--> |
| | | <!-- 完成</el-button>--> |
| | | <!-- <el-button style="width: 72px" :disabled="scope.row.orderStatus === '5'" v-if="scope.row.orderStatus === '5'" type="success" size="mini">已完工</el-button> <el-button style="width: 72px" :disabled="scope.row.orderStatus !== '6'" plain @click="handleCommand('1',scope.row.id)" v-if="scope.row.orderStatus === '6' " type="success" size="mini">--> |
| | | <!-- 启用</el-button>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | </el-table> |
| | | </el-card> |
| | | |
| | |
| | | </span> |
| | | <el-form ref="form" inline :model="form" :rules="rules" label-width="80px"> |
| | | <el-form-item label="工单号" prop="workOrderNo"> |
| | | <el-input v-model="form.workOrderNo" placeholder="请输入生产工单号" /> |
| | | <el-input v-model="form.workOrderNo" placeholder="请输入生产订单" /> |
| | | </el-form-item> |
| | | <el-form-item label="订单编号" prop="salesOrderCode"> |
| | | <el-input v-model="form.salesOrderCode" placeholder="请输入订单编号" /> |
| | |
| | | import { listProductBom } from "@/api/main/bs/ProductBom/ProductBom"; |
| | | import { listTechnologyRoute} from "@/api/main/bs/technologyRoute/technologyRoute"; |
| | | import ItemSelect from "@/components/itemSelect/single.vue"; |
| | | import { upDownMove, listProductionOrde, getProductionOrde, delProductionOrde, addProductionOrde, updateProductionOrde } from "@/api/main/om/productionOrde/productionOrde"; |
| | | import { getProductionNotice, upDownMove, listProductionOrde, getProductionOrde, delProductionOrde, addProductionOrde, updateProductionOrde } from "@/api/main/om/productionOrde/productionOrde"; |
| | | import { listOrderScheduling, getOrderScheduling, delOrderScheduling, addOrderScheduling, updateOrderScheduling,generateNumbers } from "@/api/main/bs/orderScheduling/orderScheduling"; |
| | | |
| | | export default { |
| | |
| | | typeZ: null, |
| | | flag: null, |
| | | adds:null, |
| | | productionNotice: null, |
| | | }, |
| | | |
| | | // 表单参数 |
| | |
| | | this.initWorkshop(); |
| | | }, |
| | | methods: { |
| | | getProductionNotice(){ |
| | | getProductionNotice(this.queryParams).then(response => { |
| | | this.$modal.msgSuccess("接收成功"); |
| | | this.queryParams = {} |
| | | this.getList(); |
| | | }); |
| | | }, |
| | | //数组生成 |
| | | |
| | | |
| | | |
| | | changeDay(day){ |
| | | this.change.day = day; |
| | | let adds =this.form.typeZ+this.change.year+this.change.month+this.change.day+this.form.actualQty; |
| | |
| | | let adds =this.form.typeZ+this.change.year+this.change.month+this.change.day+this.form.actualQty; |
| | | this.form.adds = adds |
| | | }, |
| | | |
| | | |
| | | moveUp(row, val){ |
| | | console.log(val) |
| | | const ids = row.id || this.ids |
| | |
| | | this.initWorkshop(); |
| | | this.reset(); |
| | | this.open = true; |
| | | this.titleName = "添加生产工单"; |
| | | this.titleName = "添加生产订单"; |
| | | }, |
| | | /** 同步按钮操作 */ |
| | | CreatehandleUpdate(Row) { |
| | |
| | | console.log(response.data) |
| | | this.form = response.data; |
| | | this.open = true; |
| | | this.titleName = "修改生产工单"; |
| | | this.titleName = "修改生产订单"; |
| | | }); |
| | | }, |
| | | /** 提交按钮 */ |
| | |
| | | /** 删除按钮操作 */ |
| | | handleDelete(row) { |
| | | const ids = row.id || this.ids; |
| | | this.$modal.confirm('是否确认删除生产工单编号为"' + ids + '"的数据项?').then(function() { |
| | | this.$modal.confirm('是否确认删除生产订单编号为"' + ids + '"的数据项?').then(function() { |
| | | return delProductionOrde(ids); |
| | | }).then(() => { |
| | | this.getList(); |