@@ -1,59 +1,28 @@
< template >
< div class = "app-container" >
< el-form :model = "queryParams" ref = "queryRef" v-show = "showSearch" >
<!-- < el-form-item label = "所属仓库" prop = "cangku" > -- >
<!-- < el-input-- >
<!-- v - model = "queryParams.cangku" -- >
<!-- placeholder = "请输入所属仓库" -- >
<!-- clearable -- >
<!-- @ keyup . enter = "handleQuery" -- >
<!-- / > - - >
<!-- < / el-form-item > -- >
< el -row :gutter = "40" >
< el-col :span = "5" >
< el-form-item label = "借用时间" prop = "borrowTime" >
< el-date-picker
v-model = "borrowTime "
type = "datetimerange"
range -separator = " 至 "
start -placeholder = " 开始日期 "
end -placeholder = " 结束日期 "
clearable
placeholder = "请选择出库时间"
format = "YYYY/MM/DD HH:mm:ss"
value -format = " YYYY -MM -DD HH : mm : ss "
>
< el-date-picker v-model = "borrowTime" type="datetimerange" range-separator="至" start-placeholder="开始日期"
end -placeholder = " 结束日期 " clearable placeholder = "请选择借用时间" format = "YYYY/MM/DD HH:mm:ss "
value -format = " YYYY -MM -DD HH : mm : ss " >
< / el-date-picker >
< / el-form-item >
< / el-col >
< el-col :span = "5" >
< el-form-item label = "项目号" prop = "xmNo" >
< el-input
v-model = "queryParams.xmNo"
placeholder = "请输入项目号"
clearable
@keyup.enter ="handleQuery"
/ >
< el-input v-model = "queryParams.xmNo" placeholder="请输入项目号" clearable @keyup.enter="handleQuery" / >
< / el-form-item >
< / el-col >
< el-col :span = "5" >
< el-form-item label = "订单编号" prop = "sapNo" >
< el-input
v-model = "queryParams.sapNo"
placeholder = "请输入订单编号"
clearable
@keyup.enter ="handleQuery"
/ >
< el-input v-model = "queryParams.sapNo" placeholder="请输入订单编号" clearable @keyup.enter="handleQuery" / >
< / el-form-item >
< / el-col >
< el-col :span = "5" >
< el-form-item label = "单据号" prop = "billNo" >
< el-input
v-model = "queryParams.billNo"
placeholder = "请输入订单编号"
clearable
@keyup.enter ="handleQuery"
/ >
< el-input v-model = "queryParams.billNo" placeholder="请输入单据号" clearable @keyup.enter="handleQuery" / >
< / el-form-item >
< / el-col >
< el-col :span = "4" >
@@ -67,50 +36,24 @@
< el-row :gutter = "10" class = "mb8" >
< el-col :span = "1.5" >
< el-button
type = "primary"
plain
icon = "Plus"
@click ="handleAdd"
v-hasPermi = "['wisdom:borrow:add']"
> 新增借料 < / el-button >
< el-button type = "primary" plain icon = "Plus" @click ="handleAdd"
v-hasPermi = "['wisdom:borrow:add']" > 新增借料 < / el -button >
< / el-col >
<!-- < el-col :span = "1.5" >
< el-button
type = "warning"
plain
icon = "Download"
@click ="handleExport"
v-hasPermi = "['wisdom:borrow:export']"
> 导出 < / el-button >
< / el-col > -- >
< el-col :span = "1.5" >
< el-button
type = "success"
plain
icon = "Printer"
@click ="handlePrint"
v-print = "printViewInfo"
v-hasPermi = "['wisdom:borrow:print']"
> 打印单据 < / el-button >
< el-button type = "success" plain icon = "Printer" @click ="handlePrint" v-print = "printViewInfo"
v-hasPermi = "['wisdom:borrow:print']" > 打印单据 < / el -button >
< / el-col >
<!-- < el-col :span = "1.5" >
< el-button
type = "primary"
plain
icon = "Plus"
@click ="handleReturnAll"
> 一键还料 < / el-button >
< / el-col > -- >
< right-toolbar v -model :showSearch = "showSearch" @queryTable ="getList" > < / right -toolbar >
< / el-row >
< el-table v-loading = "loading" :data="outboundList" @selection-change="printSelectionChange" border show -overflow -tooltip >
< el-table v-loading = "loading" :data="outboundList" @selection-change="printSelectionChange" border
show -overflow -tooltip >
< el-table-column type = "selection" width = "55" align = "center" / >
<!-- < el-table-column label = "主键ID" align = "center" prop = "id" / > -- >
< el-table-column label = "单据号" align = "center" prop = "billNoCk " width = "180" / >
< el-table-column label = "单据号" align = "center" prop = "billNo" width = "180" / >
< el-table-column label = "状态" align = "center" >
< template # default = "scope" >
< dict-tag :options = "dictTagData()" :value = "scope.row.isBorrowed" / >
@@ -125,44 +68,33 @@
< el-table-column label = "物料描述" align = "center" prop = "wlMs" width = "150" / >
< el-table-column label = "供应商编码" align = "center" prop = "gysNo" width = "150" / >
< el-table-column label = "供应商名称" align = "center" prop = "gysMc" width = "150" / >
<!-- < el-table-column label = "计划交货金额" align = "center" prop = "jhAmt" width = "120" / > -- >
< el-table-column label = "合同单价" align = "center" prop = "htDj" / >
<!-- < el-table-column label = "计划交货数量" align = "center" prop = "jhQty" width = "120" / > -- >
<!-- < el-table-column label = "合同数量" align = "center" prop = "htQty" / > -- >
< el-table-column label = "计量单位" align = "center" prop = "dw" / >
< el-table-column label = "借用数量" align = "center" prop = "realQty" width = "120" / >
< el-table-column label = "所属大库" align = "center" prop = "parentWarehouseName" width = "150" / >
< el-table-column label = "所属小库" align = "center" prop = "cangku Name" width = "150" / >
< el-table-column label = "所属小库" align = "center" prop = "warehouse Name" width = "150" / >
< el-table-column label = "库位码" align = "center" prop = "pcode" width = "120" / >
< el-table-column label = "托盘码" align = "center" prop = "trayCode" / >
< el-table-column label = "身份码" align = "center" prop = "entityId" width = "150" / >
< el-table-column label = "出库类型" align = "center" prop = "ck TypeName" / >
<!-- < el-table-column label = "物资类型" align = "center" prop = "wlTypeName" / > -- >
< el-table-column label = "出库类型" align = "center" prop = "operation TypeName" / >
< el-table-column label = "借用时间" align = "center" width = "100" >
< template # default = "scope" >
< span > { { parseTime ( scope . row . borrowTime , '{y}-{m}-{d}' ) } } < / span >
< / template >
< / el-table-column >
<!-- < el-table-column label = "库龄 " align = "center" prop = "stockAge " / > -- >
< el-table-column label = "理货员 " align = "center" prop = "ckLihuoY " / >
<!-- < el-table-column label = "是否已出库" align = "center" prop = "isChuku" / > -- >
< el-table-column label = "备注" align = "center" prop = "ckRemark" width = "150" / >
<!-- < el-table-column label = "是否删除" align = "center" prop = "isDelete" / > -- >
< el-table-column label = "理货员 " align = "center" prop = "operator " / >
< el-table-column label = "备注 " align = "center" prop = "remark" width = "150 " / >
< el-table-column label = "操作" align = "center" class -name = " small -padding fixed -width " >
< template # default = "scope" >
< el-button v-show = "scope.row.isBorrowed==1" link type="primary" icon="Edit" @click="handleReturn(scope.row)" > 还料 < / el-button >
< el-button v-show = "scope.row.isBorrowed == 1" link type="primary" icon="Edit"
@click ="handleReturn(scope.row)" > 还料 < / el -button >
< / template >
< / el-table-column >
< / el-table >
< pagination
v-show = "total>0"
:total = "total"
v -model :page = "queryParams.pageNum"
v -model :limit = "queryParams.pageSize"
@pagination ="getList"
/ >
< pagination v-show = "total > 0" :total="total" v-model:page="queryParams.pageNum"
v -model :limit = "queryParams.pageSize" @pagination ="getList" / >
<!-- 打印 -- >
< div id = "printMe" class = "printMeBox" v-show = "showContent" >
< printBill :billAllObj = "printList" / >
@@ -171,11 +103,6 @@
< el-dialog :title = "title" v-model = "open" append-to-body width="70%" >
< el -form ref = "stockRef" :model = "storeData" :rules = "rules" >
< el-row :gutter = "20" >
<!-- < el-col :span = "12" >
< el-form-item label = "关键字" >
< el-input v-model = "orderNum" placeholder="请输入项目编号或者订单号" / >
< / el-form-item >
< / el-col > -- >
< el-col :span = "6" >
< el-form-item label = "项目号" >
< el-input v-model = "outQueryParams.xmNo" placeholder="请输入项目号" / >
@@ -205,25 +132,23 @@
< / el-col >
< el-col :span = "6" >
< el-form-item label = "施工队" prop = "teamCode" >
< el-select v-model = "storeData.teamCode" placeholder="请选择物资类型 " clearable >
< el-select v-model = "storeData.teamCode" placeholder="请选择施工队 " clearable >
< el-option v-for = "dict in wzTypeList" :key="dict.id" :label="dict.teamName" :value="dict.teamCode" / >
< / el-select >
< / el-form-item >
< / el-col >
< el-col :span = "6" >
< el-form-item label = "理货员" prop = "ckLihuoY " >
< el-select v-model = "storeData.ckLihuoY " placeholder="请选择理货员" clearable >
< el-option v-for = "dict in personList" :key="dict.userId" :label="dict.userName" :value="dict.userName" / >
< el-form-item label = "理货员" prop = "operator " >
< el-select v-model = "storeData.operator " placeholder="请选择理货员" clearable >
< el-option v-for = "dict in personList" :key="dict.userId" :label="dict.userName"
:value = "dict.userId" / >
< / el-select >
< / el-form-item >
< / el-col >
< el-col :span = "6" >
< el-form-item label = "借用时间" prop = "borrowTime" >
< el-date-picker clearable
v-model = "storeData.borrowTime"
type = "date"
value -format = " YYYY -MM -DD "
< el-date-picker clearable v-model = "storeData.borrowTime" type="date" value-format="YYYY-MM-DD"
placeholder = "请选择借用时间" >
< / el-date-picker >
< / el-form-item >
@@ -232,10 +157,7 @@
< el-row :gutter = "20" >
< el-col :span = "6" >
< el-form-item label = "归还时间" >
< el-date-picker clearable
v-model = "storeData.returnTime"
type = "date"
value -format = " YYYY -MM -DD "
< el-date-picker clearable v-model = "storeData.returnTime" type="date" value-format="YYYY-MM-DD"
placeholder = "请选择归还时间" >
< / el-date-picker >
< / el-form-item >
@@ -247,12 +169,13 @@
< / el-col >
< el-col :span = "12" >
< el-form-item label = "项目名称" >
< el-input v-model = "storeData.xmMsCk" placeholder="请输入项目描述 " / >
< el-input v-model = "storeData.xmMsCk" placeholder="请输入项目名称 " / >
< / el-form-item >
< / el-col >
< / el-row >
< / el-form >
< el-table :data = "planList" height = "400" show -overflow -tooltip style = "width: 100%" @ selection -change = " handleSelectionChange " >
< el-table :data = "planList" height = "400" show -overflow -tooltip style = "width: 100%"
@ selection -change = " handleSelectionChange " >
< el-table-column type = "selection" width = "55" align = "center" / >
< el-table-column label = "物料号" align = "center" prop = "wlNo" width = "100" / >
< el-table-column label = "订单号" align = "center" prop = "sapNo" width = "100" / >
@@ -274,7 +197,7 @@
< el-table-column label = "供应商" align = "center" prop = "gysMc" width = "200" / >
< el-table-column label = "备注" align = "center" width = "200" >
< template # default = "scope" >
< el-input v-model = "scope.row.ckR emark" placeholder="请输入备注" > < / el -input >
< el-input v-model = "scope.row.r emark" placeholder="请输入备注" > < / el -input >
< / template >
< / el-table-column >
< / el-table >
@@ -289,7 +212,9 @@
< el-dialog title = "还料" v-model = "returnOpen" append-to-body width="40%" >
< el -form ref = "returnRef" :model = "returnData" label -width = " 100px " >
< el-form-item label = "所属仓库" prop = "warehouseCode" >
< el-cascader :options = "warehouseData" style = "width: 100%;" v-model = "returnData.warehouseCode" @change="pcodeList" :props="{children: 'children', label: 'warehouseName', value: 'warehouseCode'}" clearable / >
< el-cascader :options = "warehouseData" style = "width: 100%;" v-model = "returnData.warehouseCode"
@change ="pcodeList" : props = "{ children: 'children', label: 'warehouseName', value: 'warehouseCode' }"
clearable / >
< / el-form-item >
< el-form-item label = "库位" >
< el-select v-model = "returnData.pcode" clearable :filterable="true" placeholder="请选择库位" >
@@ -308,18 +233,16 @@
< / template >
< script setup name = "outbound" >
// import { listOutbound,addOutbound} from "@/api/wisdom/outbound"; //列表
import { listOutbound , addOutbound , returnSubmit } from "@/api/wisdom/borrow" ; //列表
import { returnSubmit , listStockByXm } from "@/api/wisdom/borrow" ; //列表
import { warehouseAll } from "@/api/information/warehouseinfo" ;
import { listOuttype } from "@/api/information/outtype" ; //出库类型
import { listConstruction } from "@/api/information/construction" ; //施工队
// import {warehouseDict} from "@/api/information/warehouseinfo"; //所属仓库
import { personListDict } from "@/api/system/user" ; //理货员
import { getKwList , getKwAllList } from "@/api/information/pcdedetail" ; //库位下拉数据
import { getKwAllList } from "@/api/information/pcdedetail" ; //库位下拉数据
import printBill from '@/components/printBill/bill.vue'
import { ref } from "vue" ;
// import { Plus } from '@element-plus/icons-vue'
import { listStock } from "@/api/wisdom/record"
import { addOutbound } from "@/api/wisdom/outbound"
const { proxy } = getCurrentInstance ( ) ;
@@ -329,11 +252,10 @@ import { ref } from "vue";
const loading = ref ( true ) ;
const showSearch = ref ( true ) ;
const ids = ref ( [ ] ) ;
const single = ref ( true ) ;
const multiple = ref ( true ) ;
const total = ref ( 0 ) ;
const title = ref ( "" ) ;
const planLoading = ref ( true ) ;
const planList = ref ( [ ] ) ; //从供应计划中添加列表
const storeTypeList = ref ( [ ] ) ; //出库类型下拉数据
@@ -359,8 +281,6 @@ import { ref } from "vue";
queryParams : {
pageNum : 1 ,
pageSize : 10 ,
isChuku : 3 , //出库, 固定传1 后来改成传3
ckType : "JLCK" , //出库类型:借料出库
isBorrowed : "1" ,
// borrowTime:[], //借料时间
xmNo : "" ,
@@ -380,11 +300,11 @@ import { ref } from "vue";
ckType : [ { required : true , message : "出库类型不能为空" , trigger : "change" } ] ,
teamCode : [ { required : true , message : "施工队不能为空" , trigger : "change" } ] ,
borrowTime : [ { required : true , message : "借用时间不能为空" , trigger : "change" } ] ,
ckLihuoY : [ { required : true , message : "理货员不能为空" , trigger : "change" } ]
operator : [ { required : true , message : "理货员不能为空" , trigger : "change" } ]
} ,
printViewInfo : {
id : "printMe" , //打印区域的唯一的id属性
popTitle : '入库信息打印' , // 页眉文字 ( 不设置时显示undifined) ( 页眉页脚可以在打印页面的更多设置的选项中取消勾选)
popTitle : '入库信息打印' ,
beforeOpenCallback ( ) {
@@ -416,7 +336,7 @@ const dictTagData = () => {
/** 查询库存单据主列表 */
function getList ( ) {
loading . value = true ;
listOutbound ( queryParams . value ) . then ( response => {
listStock ( { ... queryParams . value , bizType : '2' } ). then ( response => {
outboundList . value = response . rows ;
total . value = response . total ;
loading . value = false ;
@@ -510,69 +430,31 @@ const dictTagData = () => {
}
//查询库存中数据 搜索
function searchPlan ( ) {
// if(!orderNum.value){
// proxy.$modal.msgWarning("请输入项目编号或者订单号");
// return
// }
//查库存
// let params = {
// pageNum:1,
// pageSize:50,
// isChuku:0,
// // xmNo:orderNum.value
// keyword:orderNum.value
// }
if ( ! outQueryParams . value . xmNo && ! outQueryParams . value . wlNo && ! outQueryParams . value . sapNo ) {
proxy . $modal . msgWarning ( "查询条件不能为空" ) ;
return
}
listOutbound ( outQueryParams . value ) . then ( response => {
listStockByXm ( outQueryParams . value ) . then ( response => {
response . rows . forEach ( e => {
e . ckR emark = e . remark
e . r emark = e . remark
} ) ;
// let planData = response.rows
if ( response . rows . length == 0 ) {
proxy . $modal . msgWarning ( "库存无数据" ) ;
planList . value = [ ]
} else {
planList . value = response . rows
}
// console.log(planData)
// planLoading.value = false
} )
}
// function selectKw(row){
// console.log(row)
// }
/** 修改按钮操作 */
// function handleUpdate(row) {
// reset();
// const _id = row.id || ids.value
// getStock(_id).then(response => {
// form.value = response.data;
// open.value = true;
// title.value = "修改库存单据主";
// });
// }
/** 借料出库 提交按钮 */
function submitForm ( ) {
// console.log(submitData);return
// // /pc/wisdom/stock/add
// console.log(planList);return
proxy . $refs [ "stockRef" ] . validate ( valid => {
if ( valid ) {
// if(planList.value.filter(x=>x.realQty=="").length>0){
// proxy.$modal.msgError("入库数量不能为空");
// return
// }
// console.log(ids.value)
if ( ids . value . length == 0 ) {
proxy . $modal . msgError ( "请勾选数据" ) ;
return
@@ -580,23 +462,21 @@ const dictTagData = () => {
let dataList = planList . value . filter ( x => ids . value . includes ( x . id ) ) . map ( info => ( {
id : info . id ,
realQty : info . realQty ,
ckR emark : info . ckR emark
r emark : info . r emark
} ) )
// console.log(3333)
// return
let submitData = {
rkBill : {
borrowTime : storeData . value . borrowTime , //借用时间
returnTime : storeData . value . returnTime , // 归还时间
returnTime : storeData . value ? . returnTime , // 归还时间
teamCode : storeData . value . teamCode , //施工队
ckType : storeData . value . ckType , //出库类型
ckLihuoY : storeData . value . ckLihuoY , //理货员
xmNo Ck : storeData . value . xmNo Ck ? storeData . value . xmNo Ck : "" , //原本要出的项目号
xmMsCk : storeData . value . xmMsCk ? storeData . value . xmMsCk : "" , //原本要出的项目描述
// rkList:planList.value
ckList : dataList
operator : storeData . value . operator , //理货员
xmNoCk : storeData . value . xmNoCk ? storeData . value . xmNoCk : "" , //原本要出的项目号-借用方项目
xmMs Ck : storeData . value . xmMs Ck ? storeData . value . xmMs Ck : "" , //原本要出的项目描述-借用方项目 号
bizType : '2' ,
operationType : 'JLCK'
} ,
rkInfoList : dataList ,
}
// console.log(submitData)
// return
addOutbound ( submitData ) . then ( response => {
proxy . $modal . msgSuccess ( "操作成功" ) ;
open . value = false ;
@@ -607,7 +487,6 @@ const dictTagData = () => {
}
//打开还料弹框
function handleReturn ( row ) {
// console.log(row)
returnData . value . pcode = row . pcode
returnData . value . warehouseCode = [ row . parentWarehouseCode , row . warehouseCode ]
returnData . value . originalId = row . id
@@ -629,21 +508,7 @@ const dictTagData = () => {
} ) ;
}
// //库位字典
// function pcodeList(){
// getKwList().then(response=>{
// kwOptions.value = response.data
// })
// }
/** 删除按钮操作 */
// function handleDelete(row) {
// const _ids = row.id || ids.value;
// proxy.$modal.confirm('是否确认删除库存单据主编号为"' + _ids + '"的数据项?').then(function() {
// return delStock(_ids);
// }).then(() => {
// getList();
// proxy.$modal.msgSuccess("删除成功");
// }).catch(() => {});
// }
/** 导出按钮操作 */
function handleExport ( ) {
@@ -670,43 +535,50 @@ function pcodeList(value){
}
getList ( ) ;
//库位下拉数据
// pcodeList()
< / script >
< style scoped lang = "scss" >
. el - table . warning - row {
-- el - table - tr - bg - color : var ( -- el - color - warning - light - 9 ) ;
}
. el - table . success - row {
-- el - table - tr - bg - color : var ( -- el - color - success - light - 9 ) ;
}
. titleBox {
text - align : center ;
margin - bottom : 20 px ;
}
. printMeBox {
div {
line - height : 30 px ;
}
}
. topBox {
display : flex ;
flex - wrap : wrap ;
}
. topEveryBox {
width : 50 % ;
}
. tableBox {
margin - top : 10 px ;
}
. oneLineBox {
display : flex ;
}
. everyBox {
width : 25 % ;
}
. bottomBox {
margin - top : 10 px ;
}
< / style >