| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-tabs v-model="activeTab" @tab-change="handleTabChange"> |
| | | <el-tab-pane label="生产出库" name="production"> |
| | | <el-tab-pane label="成品出库" name="production"> |
| | | <div class="search_form"> |
| | | <div> |
| | | <span class="search_title">客户名称:</span> |
| | | <el-input |
| | | v-model="searchForm.customerName" |
| | | style="width: 240px" |
| | | placeholder="请输入" |
| | | @change="handleQuery" |
| | | clearable |
| | | prefix-icon="Search" |
| | | /> |
| | | <!-- <span class="search_title">客户名称:</span>--> |
| | | <!-- <el-input--> |
| | | <!-- v-model="searchForm.customerName"--> |
| | | <!-- style="width: 240px"--> |
| | | <!-- placeholder="请输入"--> |
| | | <!-- @change="handleQuery"--> |
| | | <!-- clearable--> |
| | | <!-- prefix-icon="Search"--> |
| | | <!-- />--> |
| | | <span class="search_title ml10">出库日期:</span> |
| | | <el-date-picker |
| | | v-model="searchForm.timeStr" |
| | |
| | | format="YYYY-MM-DD" |
| | | clearable |
| | | @change="handleQuery" |
| | | /> |
| | | <span class="search_title ml10">产品大类:</span> |
| | | <el-input |
| | | v-model="searchForm.productCategory" |
| | | style="width: 240px" |
| | | placeholder="请输入" |
| | | clearable |
| | | /> |
| | | <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> |
| | | </div> |
| | |
| | | > |
| | | <el-table-column align="center" type="selection" width="55" /> |
| | | <el-table-column align="center" label="序号" type="index" width="60" /> |
| | | <el-table-column label="出库日期" prop="createTime" min-width="250" show-overflow-tooltip /> |
| | | <el-table-column label="客户名称" prop="customerName" width="250" show-overflow-tooltip /> |
| | | <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="specificationModel" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="出库日期" prop="createTime" min-width="120" show-overflow-tooltip /> |
| | | <!-- <el-table-column label="客户名称" prop="customerName" width="250" show-overflow-tooltip />--> |
| | | <el-table-column label="产品大类" prop="productCategory" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="specificationModel" show-overflow-tooltip /> |
| | | <el-table-column label="单位" prop="unit" width="80" show-overflow-tooltip /> |
| | | <el-table-column label="出库数量" prop="inboundNum" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip /> |
| | | <el-table-column label="单价(元)" prop="unitPrice" width="150"></el-table-column> |
| | | <el-table-column label="总价(元)" prop="totalPrice" width="150"></el-table-column> |
| | | <!-- <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip />--> |
| | | <!-- <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip />--> |
| | | <!-- <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip />--> |
| | | <!-- <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip />--> |
| | | <el-table-column label="出库人" prop="createBy" width="80" show-overflow-tooltip /> |
| | | </el-table> |
| | | <pagination |
| | |
| | | </div> |
| | | </el-tab-pane> |
| | | |
| | | <el-tab-pane label="采购出库" name="purchase"> |
| | | <el-tab-pane label="原料出库" name="purchase"> |
| | | <div class="search_form"> |
| | | <div> |
| | | <span class="search_title">供应商名称:</span> |
| | | <el-input |
| | | v-model="searchForm.supplierName" |
| | | style="width: 240px" |
| | | placeholder="请输入" |
| | | @change="handleQuery" |
| | | clearable |
| | | prefix-icon="Search" |
| | | /> |
| | | <!--<!– <span class="search_title">供应商名称:</span>–>--> |
| | | <!--<!– <el-input–>--> |
| | | <!--<!– v-model="searchForm.supplierName"–>--> |
| | | <!--<!– style="width: 240px"–>--> |
| | | <!--<!– placeholder="请输入"–>--> |
| | | <!--<!– @change="handleQuery"–>--> |
| | | <!--<!– clearable–>--> |
| | | <!--<!– prefix-icon="Search"–>--> |
| | | <!--<!– />–>--> |
| | | <span class="search_title ml10">出库日期:</span> |
| | | <el-date-picker |
| | | v-model="searchForm.timeStr" |
| | |
| | | format="YYYY-MM-DD" |
| | | clearable |
| | | @change="handleQuery" |
| | | /> |
| | | <span class="search_title ml10">产品大类:</span> |
| | | <el-input |
| | | v-model="searchForm.productCategory" |
| | | style="width: 240px" |
| | | placeholder="请输入" |
| | | clearable |
| | | /> |
| | | <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> |
| | | </div> |
| | |
| | | > |
| | | <el-table-column align="center" type="selection" width="55" /> |
| | | <el-table-column align="center" label="序号" type="index" width="60" /> |
| | | <el-table-column label="出库日期" prop="createTime" min-width="250" show-overflow-tooltip /> |
| | | <el-table-column label="供应商名称" prop="supplierName" width="250" show-overflow-tooltip /> |
| | | <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="specificationModel" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="出库日期" prop="createTime" min-width="120" show-overflow-tooltip /> |
| | | <!--<!– <el-table-column label="供应商名称" prop="supplierName" width="250" show-overflow-tooltip />–>--> |
| | | <el-table-column label="产品大类" prop="productCategory" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="specificationModel" show-overflow-tooltip /> |
| | | <el-table-column label="单位" prop="unit" width="80" show-overflow-tooltip /> |
| | | <el-table-column label="出库数量" prop="inboundNum" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip /> |
| | | <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="150"></el-table-column> |
| | | <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="150"></el-table-column> |
| | | <el-table-column label="出库人" prop="createBy" width="80" show-overflow-tooltip /> |
| | | </el-table> |
| | | <pagination |
| | |
| | | </div> |
| | | </el-tab-pane> |
| | | |
| | | <el-tab-pane label="自定义出库" name="manual"> |
| | | <el-tab-pane label="材料出库" name="manual"> |
| | | <div class="search_form"> |
| | | <div> |
| | | <span class="search_title">供应商名称:</span> |
| | | <el-input |
| | | v-model="searchForm.supplierName" |
| | | style="width: 240px" |
| | | placeholder="请输入" |
| | | @change="handleQuery" |
| | | clearable |
| | | prefix-icon="Search" |
| | | /> |
| | | <!-- <span class="search_title">供应商名称:</span>--> |
| | | <!-- <el-input--> |
| | | <!-- v-model="searchForm.supplierName"--> |
| | | <!-- style="width: 240px"--> |
| | | <!-- placeholder="请输入"--> |
| | | <!-- @change="handleQuery"--> |
| | | <!-- clearable--> |
| | | <!-- prefix-icon="Search"--> |
| | | <!-- />--> |
| | | <span class="search_title ml10">出库日期:</span> |
| | | <el-date-picker |
| | | v-model="searchForm.timeStr" |
| | |
| | | format="YYYY-MM-DD" |
| | | clearable |
| | | @change="handleQuery" |
| | | /> |
| | | <span class="search_title ml10">产品大类:</span> |
| | | <el-input |
| | | v-model="searchForm.productCategory" |
| | | style="width: 240px" |
| | | placeholder="请输入" |
| | | clearable |
| | | /> |
| | | <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> |
| | | </div> |
| | |
| | | > |
| | | <el-table-column align="center" type="selection" width="55" /> |
| | | <el-table-column align="center" label="序号" type="index" width="60" /> |
| | | <el-table-column label="出库日期" prop="createTime" min-width="250" show-overflow-tooltip /> |
| | | <el-table-column label="供应商名称" prop="supplierName" width="250" show-overflow-tooltip /> |
| | | <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="specificationModel" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="单位" prop="unit" width="80" show-overflow-tooltip /> |
| | | <el-table-column label="物品类型" prop="itemType" width="120" show-overflow-tooltip /> |
| | | <el-table-column label="出库数量" prop="inboundNum" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip /> |
| | | <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip /> |
| | | <el-table-column label="出库人" prop="createBy" width="80" show-overflow-tooltip /> |
| | | <el-table-column label="出库日期" prop="createTime" show-overflow-tooltip /> |
| | | <!-- <el-table-column label="供应商名称" prop="supplierName" width="250" show-overflow-tooltip /> --> |
| | | <el-table-column label="产品大类" prop="productCategory" show-overflow-tooltip /> |
| | | <el-table-column label="规格型号" prop="specificationModel" show-overflow-tooltip /> |
| | | <el-table-column label="单位" prop="unit" show-overflow-tooltip /> |
| | | <el-table-column label="物品类型" prop="itemType" show-overflow-tooltip /> |
| | | <el-table-column label="出库数量" prop="inboundNum" show-overflow-tooltip /> |
| | | <el-table-column label="单价(元)" prop="taxInclusiveUnitPrice" width="150"></el-table-column> |
| | | <el-table-column label="总价(元)" prop="taxInclusiveTotalPrice" width="150"></el-table-column> |
| | | <!-- <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip />--> |
| | | <!-- <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip />--> |
| | | <!-- <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip />--> |
| | | <!-- <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip />--> |
| | | <el-table-column label="出库人" prop="createBy" show-overflow-tooltip /> |
| | | </el-table> |
| | | <pagination |
| | | v-show="total > 0" |
| | |
| | | searchForm: { |
| | | supplierName: "", |
| | | customerName: "", |
| | | timeStr: "", |
| | | productCategory:'', |
| | | timeStr: getCurrentDate(), |
| | | }, |
| | | form: { |
| | | supplierId: null, |
| | |
| | | params.supplierName = searchForm.value.supplierName |
| | | params.timeStr = searchForm.value.timeStr |
| | | } |
| | | params.productCategory = searchForm.value.productCategory |
| | | |
| | | // 根据不同的 tab 类型调用不同的接口 |
| | | const apiCall = activeTab.value === 'production' |
| | |
| | | tableData.value = res.data.records; |
| | | tableData.value.map((item) => { |
| | | item.children = []; |
| | | // 前端计算总价 |
| | | const inboundNum = Number(item.inboundNum) || 0; |
| | | if (activeTab.value === 'production') { |
| | | // 成品出库:总价 = unitPrice × inboundNum |
| | | const unitPrice = Number(item.unitPrice) || 0; |
| | | item.totalPrice = (unitPrice * inboundNum).toFixed(2); |
| | | } else { |
| | | // 原料和材料出库:总价 = taxInclusiveUnitPrice × inboundNum |
| | | const taxInclusiveUnitPrice = Number(item.taxInclusiveUnitPrice) || 0; |
| | | item.taxInclusiveTotalPrice = (taxInclusiveUnitPrice * inboundNum).toFixed(2); |
| | | } |
| | | }); |
| | | total.value = res.data.total; |
| | | }) |
| | |
| | | searchForm.value.customerName = '' |
| | | searchForm.value.timeStr = '' |
| | | selectedRows.value = [] |
| | | searchForm.value.productCategory = '' |
| | | getList() |
| | | }; |
| | | |
| | |
| | | } |
| | | } |
| | | </style> |
| | | |
| | | |