|
@@ -1,7 +1,6 @@
|
|
|
<template>
|
|
|
<div class="SuppliesInventory-all">
|
|
|
- <el-dialog top="10vh
|
|
|
- " width="1200px" title="入库物品" :visible.sync="warehousingsVisible">
|
|
|
+ <el-dialog top="10vh" width="1200px" title="入库物品" :visible.sync="warehousingsVisible">
|
|
|
<el-form :model="warehousingsruleForm" :rules="warehousingsrules" ref="warehousingsruleForm" label-width="100px" class="demo-ruleForm">
|
|
|
<div class="warehousingsrule-input">
|
|
|
<el-form-item label="入库数量" prop="quantity">
|
|
@@ -33,67 +32,78 @@
|
|
|
<el-button size="small" @click="resetForm('warehousingsruleForm')">清空</el-button>
|
|
|
<el-button size="small" type="primary" @click="submitForm('warehousingsruleForm')">保存</el-button>
|
|
|
</el-form-item>
|
|
|
- <div class="warehousingsrule-table">
|
|
|
- <el-table
|
|
|
- height="400"
|
|
|
- :data="warehousingslist"
|
|
|
- border
|
|
|
- style="width: 100%">
|
|
|
- <el-table-column
|
|
|
- prop="unitPrice"
|
|
|
- label="物品单价"
|
|
|
- width="80">
|
|
|
- <template slot-scope="scope">
|
|
|
- {{townum(scope.row.unitPrice)}}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="quantity"
|
|
|
- label="物品数量"
|
|
|
- width="80">
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="totalPrice"
|
|
|
- label="物品总价"
|
|
|
- width="80">
|
|
|
- <template slot-scope="scope">
|
|
|
- {{townum(scope.row.totalPrice)}}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="supplierName"
|
|
|
- label="供应商名称"
|
|
|
- width="180">
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="supplierTel"
|
|
|
- label="供应商电话">
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="supplierAddress"
|
|
|
- label="供应商地址">
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- prop="supplierSource"
|
|
|
- label="供应商来源">
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- label="操作"
|
|
|
- width="155">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button size="mini" title="编辑">编辑</el-button>
|
|
|
- <el-button size="mini" title="删除" type="danger" @click="Deleteintolibrary(scope.row)">删除</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </div>
|
|
|
</el-form>
|
|
|
+ <div class="warehousingsrule-table">
|
|
|
+ <el-table
|
|
|
+ height="400"
|
|
|
+ :data="warehousingslist"
|
|
|
+ border
|
|
|
+ style="width: 100%">
|
|
|
+ <el-table-column
|
|
|
+ prop="unitPrice"
|
|
|
+ label="物品单价"
|
|
|
+ width="80">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{townum(scope.row.unitPrice)}}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="quantity"
|
|
|
+ label="物品数量"
|
|
|
+ width="80">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="totalPrice"
|
|
|
+ label="物品总价"
|
|
|
+ width="80">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{townum(scope.row.totalPrice)}}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="supplierName"
|
|
|
+ label="供应商名称"
|
|
|
+ width="180">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="supplierTel"
|
|
|
+ label="供应商电话">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="supplierAddress"
|
|
|
+ label="供应商地址">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="supplierSource"
|
|
|
+ label="供应商来源">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ label="操作"
|
|
|
+ width="155">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button size="mini" title="编辑" @click="Editentry(scope.row)">编辑</el-button>
|
|
|
+ <el-button size="mini" title="删除" type="danger" @click="Deleteintolibrary(scope.row)">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <div v-if="WScount>WSpagesize" class="block">
|
|
|
+ <el-pagination
|
|
|
+ @size-change="WShandleSizeChange"
|
|
|
+ @current-change="WShandleCurrentChange"
|
|
|
+ :current-page="WScurrentPage"
|
|
|
+ :page-sizes="[6, 10, 15, 40]"
|
|
|
+ :page-size="WSpagesize"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="WScount">
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</el-dialog>
|
|
|
- <el-dialog title="添加物品" :visible.sync="AddItemsVisible">
|
|
|
+ <el-dialog width="400px" title="添加物品" :visible.sync="AddItemsVisible">
|
|
|
<div class="additems-ul">
|
|
|
<div class="additems-li">
|
|
|
<label>物资类型:</label>
|
|
|
- <el-select style="width:220px" @change="AddMaterialTypechange(0)" v-model="AddMaterialType" clearable filterable
|
|
|
+ <el-select style="width:250px" @change="AddMaterialTypechange(0)" v-model="AddMaterialType" clearable filterable
|
|
|
placeholder="请选择">
|
|
|
<el-option v-for="item in AddMaterialTypearr" :key="item.id" :label="item.name"
|
|
|
:value="item.id">
|
|
@@ -102,7 +112,7 @@
|
|
|
</div>
|
|
|
<div class="additems-li">
|
|
|
<label>物资详细类型:</label>
|
|
|
- <el-select style="width:220px" v-model="AddMaterialinfoType" clearable filterable
|
|
|
+ <el-select style="width:250px" v-model="AddMaterialinfoType" clearable filterable
|
|
|
placeholder="请选择">
|
|
|
<el-option v-for="item in AddMaterialinfoTypearr" :key="item.id" :label="item.name"
|
|
|
:value="item.id">
|
|
@@ -112,7 +122,7 @@
|
|
|
<div class="additems-li">
|
|
|
<label>物资名称:</label>
|
|
|
<el-input
|
|
|
- style="width:220px"
|
|
|
+ style="width:250px"
|
|
|
placeholder="请输入物资名称"
|
|
|
v-model="AdditemsName"
|
|
|
clearable>
|
|
@@ -134,6 +144,28 @@
|
|
|
<el-button @click="GoodsOP" type="primary">保存</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
+ <el-dialog title="领用物品" :visible.sync="ClaimitemVisible">
|
|
|
+ <el-form :model="ClaimsruleForm" :rules="Claimrules" ref="ClaimsruleForm" label-width="100px" class="demo-ruleForm">
|
|
|
+ <div class="Claimitem-input">
|
|
|
+ <el-form-item label="关联团组" prop="groupId">
|
|
|
+ <el-input-number size="small" :precision="2" :controls="false" v-model="ClaimsruleForm.groupId"></el-input-number>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="领用数量" prop="quantity">
|
|
|
+ <el-input-number size="small" :precision="2" :controls="false" v-model="ClaimsruleForm.quantity"></el-input-number>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="领用原因" prop="reason">
|
|
|
+ <el-input size="small" placeholder="请输入领用原因" v-model="ClaimsruleForm.reason"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <el-form-item label="备注" prop="remark">
|
|
|
+ <el-input size="small" placeholder="请输入备注" v-model="ClaimsruleForm.remark"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item style="text-align: right;">
|
|
|
+ <el-button size="small" @click="ClaimresetForm('ClaimsruleForm')">清空</el-button>
|
|
|
+ <el-button size="small" type="primary" @click="ClaimsubmitForm('ClaimsruleForm')">保存</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ </el-dialog>
|
|
|
<div class="SuppliesInventory-head">
|
|
|
<div class="SuppliesInventory-head-ul">
|
|
|
<div class="SuppliesInventory-head-li">
|
|
@@ -207,14 +239,26 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
label="操作"
|
|
|
- width="220">
|
|
|
+ width="300">
|
|
|
<template slot-scope="scope">
|
|
|
<el-button size="mini" title="编辑" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
|
|
|
<el-button size="mini" @click="instorage(scope.row)" type="primary">入库</el-button>
|
|
|
+ <el-button size="mini" type="success">领用</el-button>
|
|
|
<el-button size="mini" title="删除" type="danger" @click="handleDelete(scope.$index, scope.row)">删除</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
+ <div v-if="count>pagesize" class="block">
|
|
|
+ <el-pagination
|
|
|
+ @size-change="handleSizeChange"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page="currentPage"
|
|
|
+ :page-sizes="[10, 15, 30, 40]"
|
|
|
+ :page-size="pagesize"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="count">
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -232,6 +276,12 @@ export default {
|
|
|
Materialname:'',
|
|
|
tableData:[],
|
|
|
AddItemsVisible:false,
|
|
|
+ currentPage:1,
|
|
|
+ pagesize:10,
|
|
|
+ count:0,
|
|
|
+ WScurrentPage:1,
|
|
|
+ WSpagesize:6,
|
|
|
+ WScount:0,
|
|
|
//新增物品参数
|
|
|
AddMaterialType:"",
|
|
|
AddMaterialTypearr:[],
|
|
@@ -279,6 +329,29 @@ export default {
|
|
|
remark: [
|
|
|
{ required: true, message: '请输入', trigger: 'blur' },
|
|
|
],
|
|
|
+ },
|
|
|
+ //领用参数
|
|
|
+ ClaimitemVisible:true,
|
|
|
+ ClaimsruleForm:{
|
|
|
+ id:0,
|
|
|
+ groupId:'',
|
|
|
+ quantity:0,
|
|
|
+ reason:'',
|
|
|
+ remark:'',
|
|
|
+ },
|
|
|
+ Claimrules:{
|
|
|
+ groupId: [
|
|
|
+ { required: true, message: '请选择', trigger: 'change' },
|
|
|
+ ],
|
|
|
+ quantity: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ reason: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
+ remark: [
|
|
|
+ { required: true, message: '请输入', trigger: 'blur' },
|
|
|
+ ],
|
|
|
}
|
|
|
}
|
|
|
},
|
|
@@ -351,19 +424,39 @@ export default {
|
|
|
},
|
|
|
data: {
|
|
|
portType: 1,
|
|
|
- pageIndex: 1,
|
|
|
- pageSize: 10,
|
|
|
+ pageIndex: that.currentPage,
|
|
|
+ pageSize: that.pagesize,
|
|
|
typeIds: that.MaterialinfoTypes,
|
|
|
goodsName: that.Materialname,
|
|
|
}
|
|
|
}).then(function (res) {
|
|
|
if (res.data.code == 200) {
|
|
|
+ that.count=res.data.count;
|
|
|
that.tableData=res.data.data;
|
|
|
}
|
|
|
}).catch(function (error) {
|
|
|
that.$message.error("操作错误,联系信息部!");
|
|
|
});
|
|
|
},
|
|
|
+ //分页
|
|
|
+ handleSizeChange(val) {
|
|
|
+ this.currentPage=1;
|
|
|
+ this.pagesize=val;
|
|
|
+ this.GoodsList();
|
|
|
+ },
|
|
|
+ handleCurrentChange(val) {
|
|
|
+ this.currentPage=val;
|
|
|
+ this.GoodsList();
|
|
|
+ },
|
|
|
+ WShandleSizeChange(val) {
|
|
|
+ this.WScurrentPage=1;
|
|
|
+ this.WSpagesize=val;
|
|
|
+ this.instorage({'id':this.ID});
|
|
|
+ },
|
|
|
+ WShandleCurrentChange(val) {
|
|
|
+ this.WScurrentPage=val;
|
|
|
+ this.instorage({'id':this.ID});
|
|
|
+ },
|
|
|
//新增按钮
|
|
|
addbtnclick(){
|
|
|
this.ID=0;
|
|
@@ -493,12 +586,13 @@ export default {
|
|
|
},
|
|
|
data:{
|
|
|
portType:1,
|
|
|
- pageIndex:1,
|
|
|
- pageSize:10,
|
|
|
+ pageIndex:that.WScurrentPage,
|
|
|
+ pageSize:that.WSpagesize,
|
|
|
goodsId:row.id,
|
|
|
}
|
|
|
}).then(function (res) {
|
|
|
if (res.data.code == 200) {
|
|
|
+ that.WScount=res.data.count;
|
|
|
that.warehousingslist=res.data.data;
|
|
|
}else{
|
|
|
that.$message.error(res.data.msg);
|
|
@@ -536,6 +630,36 @@ export default {
|
|
|
type: 'success'
|
|
|
});
|
|
|
that.instorage({'id':that.ID});
|
|
|
+ that.resetForm('warehousingsruleForm');
|
|
|
+ }else{
|
|
|
+ that.$message.error(res.data.msg);
|
|
|
+ }
|
|
|
+ }).catch(function (error) {
|
|
|
+ that.$message.error("操作错误,联系信息部!");
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //编辑入库
|
|
|
+ Editentry(val){
|
|
|
+ var url = "/api/PersonnelModule/GoodsStorageInfo/"+val.id+"?portType=1"
|
|
|
+ var that = this
|
|
|
+ this.$axios({
|
|
|
+ method: 'get',
|
|
|
+ url: url,
|
|
|
+ headers: {
|
|
|
+ Authorization: 'Bearer '
|
|
|
+ }
|
|
|
+ }).then(function (res) {
|
|
|
+ if (res.data.code == 200) {
|
|
|
+ var datainfo=res.data.data;
|
|
|
+ that.warehousingsruleForm.id=datainfo.id;
|
|
|
+ that.warehousingsruleForm.quantity=datainfo.quantity;
|
|
|
+ that.warehousingsruleForm.unitPrice=datainfo.unitPrice;
|
|
|
+ that.warehousingsruleForm.totalPrice=datainfo.totalPrice;
|
|
|
+ that.warehousingsruleForm.supplierName=datainfo.supplierName;
|
|
|
+ that.warehousingsruleForm.supplierTel=datainfo.supplierTel;
|
|
|
+ that.warehousingsruleForm.supplierAddress=datainfo.supplierAddress;
|
|
|
+ that.warehousingsruleForm.supplierSource=datainfo.supplierSource;
|
|
|
+ that.warehousingsruleForm.remark=datainfo.remark;
|
|
|
}else{
|
|
|
that.$message.error(res.data.msg);
|
|
|
}
|
|
@@ -579,7 +703,7 @@ export default {
|
|
|
});
|
|
|
});
|
|
|
},
|
|
|
- //
|
|
|
+ //入库
|
|
|
submitForm(formName) {
|
|
|
this.$refs[formName].validate((valid) => {
|
|
|
if (valid) {
|
|
@@ -591,8 +715,24 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
resetForm(formName) {
|
|
|
+ this.warehousingsruleForm.id=0;
|
|
|
this.$refs[formName].resetFields();
|
|
|
- }
|
|
|
+ },
|
|
|
+ //领用
|
|
|
+ ClaimsubmitForm(formName) {
|
|
|
+ this.$refs[formName].validate((valid) => {
|
|
|
+ if (valid) {
|
|
|
+ console.log('嗷嗷');
|
|
|
+ } else {
|
|
|
+ console.log('error submit!!');
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ ClaimresetForm(formName) {
|
|
|
+ this.ClaimsruleForm.id=0;
|
|
|
+ this.$refs[formName].resetFields();
|
|
|
+ },
|
|
|
},
|
|
|
mounted(){
|
|
|
this.Userid=JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
|
|
@@ -627,11 +767,6 @@ export default {
|
|
|
.SuppliesInventory-head-ul{
|
|
|
display: flex;
|
|
|
}
|
|
|
-.additems-ul{
|
|
|
- display: flex;
|
|
|
- justify-content: space-between;
|
|
|
- flex-wrap: wrap;
|
|
|
-}
|
|
|
.additems-li{
|
|
|
margin-bottom: 10px;
|
|
|
}
|
|
@@ -663,4 +798,33 @@ export default {
|
|
|
.warehousingsrule-table .el-table td.el-table__cell div{
|
|
|
font-size: 12px;
|
|
|
}
|
|
|
+.SuppliesInventory-table .block{
|
|
|
+ text-align: center;
|
|
|
+ margin-top: 10px;
|
|
|
+}
|
|
|
+.warehousingsrule-table .block{
|
|
|
+ text-align: center;
|
|
|
+ margin-top: 10px;
|
|
|
+}
|
|
|
+.additems-li label{
|
|
|
+ display: inline-block;
|
|
|
+ width: 105px;
|
|
|
+}
|
|
|
+.Claimitem-input{
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ justify-content: space-between;
|
|
|
+}
|
|
|
+.Claimitem-input .el-form-item{
|
|
|
+ width: 33%;
|
|
|
+}
|
|
|
+.Claimitem-input .el-input-number{
|
|
|
+ width: 100%;
|
|
|
+}
|
|
|
+.Claimitem-input .el-form-item{
|
|
|
+ margin-bottom: 10px;
|
|
|
+}
|
|
|
+.Claimitem-input .el-form-item__error{
|
|
|
+ top: 82%;
|
|
|
+}
|
|
|
</style>
|