Commit 750da478 authored by zhengke's avatar zhengke

1

parent 8ab1228c
...@@ -91,7 +91,7 @@ ...@@ -91,7 +91,7 @@
<img v-if="row.CheckState ==1" @click="Delete(row)" style="width:24px;height:24px" src="../../assets/img/qx.png" alt=""> <img v-if="row.CheckState ==1" @click="Delete(row)" style="width:24px;height:24px" src="../../assets/img/qx.png" alt="">
</el-tooltip> </el-tooltip>
<el-tooltip class="item" effect="dark" content="查看详情" placement="top" v-if="row.CheckState==2"> <el-tooltip class="item" effect="dark" content="查看详情" placement="top" v-if="row.CheckState==2">
<img v-if="row.CheckState==2" @click="SeeDetails(row,'/InventoryDetails')" style="width:24px;height:24px" src="../../assets/img/chakan.png" alt="" /> <img v-if="row.CheckState==2" @click="SeeDetails(row,'/InventoryView')" style="width:24px;height:24px" src="../../assets/img/chakan.png" alt="" />
</el-tooltip> </el-tooltip>
<el-tooltip class="item" effect="dark" content="盘点明细" placement="top" v-if="row.CheckState==1"> <el-tooltip class="item" effect="dark" content="盘点明细" placement="top" v-if="row.CheckState==1">
<img v-if="row.CheckState==1" @click="SeeDetails(row,'/InventoryDetail')" style="width:24px;height:24px" src="../../assets/img/shtg.png" alt="" /> <img v-if="row.CheckState==1" @click="SeeDetails(row,'/InventoryDetail')" style="width:24px;height:24px" src="../../assets/img/shtg.png" alt="" />
......
<template> <template>
<div class="assetsList InventoryDetail"> <div class="assetsList InventoryMan">
<div class="routerTitle"> <div class="routerTitle">
<span class="pageTitle">耗材盘点明细<span @click="Backto" style="position:relative;top:-5px" <span class="pageTitle">盘点单详情
class="backTo">返回</span></span> <span @click="Backto" style="position:relative;top:-5px" class="backTo">返回</span>
<span @click="morequery = !morequery" style="display:inline-flex;align-items:center;cursor: pointer;" </span>
class="f12 cd6"> <span
@click="morequery = !morequery"
style="display:inline-flex;align-items:center;cursor: pointer;"
class="f12 cd6"
>
<span style="margin-right:5px">高级查询</span> <span style="margin-right:5px">高级查询</span>
<img v-show="!morequery" style="width:12px;height:12px;" src="../../assets/img/more.png" alt="" /> <img
<img v-show="morequery" class="roatImg" style="width:12px;height:12px" src="../../assets/img/more.png" alt="" /> v-show="!morequery"
style="width:12px;height:12px;"
src="../../assets/img/more.png"
alt=""
/>
<img
v-show="morequery"
class="roatImg"
style="width:12px;height:12px"
src="../../assets/img/more.png"
alt=""
/>
</span> </span>
<span @click="getList" style="margin-left:20px" class="chaxunSpan">查询</span> <span style="margin-left:20px" class="chaxunSpan" @click="getList">查询</span>
<span @click="goBaosun('InventoryBosun')" style="margin-left:20px" class="chaxunSpan">查看报损</span> <span @click="Export" style="margin-left:20px;background:#fff;color:rgba(0,210,214,1);border:1px solid rgba(0,210,214,1)" class="chaxunSpan">导出</span>
<span @click="goBaosun('InventoryBoyi')" style="margin-left:20px" class="chaxunSpan">查看报溢</span> <span @click="SetEnd" style="margin-left:20px;background:#fff;color:rgba(0,210,214,1);border:1px solid rgba(0,210,214,1)" class="chaxunSpan">整单完成</span>
<!-- <span @click="addSupplier" style="margin-left:20px" class="addSpan">
<img
style="width:10px;height:10px;margin-right:6px"
src="../../assets/img/add.png"
alt=""
/>
新增</span> -->
</div> </div>
<div class="padContent"> <div class="padContent">
<ul v-show="morequery" class="queryul"> <ul v-show="morequery" class="queryul">
<li> <li>
<el-input class="w200" size="small" v-model="msg.SuppliesId" placeholder="物料Id" <el-input class="w200" size="small" v-model="msg.PropertyName" placeholder="资产名称" ></el-input>
@keyup.enter.native="msg.pageIndex=1,getList()"></el-input> </li>
</li> <li>
<li> <el-select size="small" v-model="msg.AuditStatus" placeholder="审核状态" >
<el-input class="w200" size="small" v-model="msg.SuppliesName" placeholder="物料名称" <el-option label="不限" :value="-1"></el-option>
@keyup.enter.native="msg.pageIndex=1,getList()"></el-input> <el-option label="未审核" :value="1"></el-option>
</li> <el-option label="已审核" :value="2"></el-option>
<li> <el-option label="审核驳回" :value="3"></el-option>
<el-select size="small" v-model="msg.CheckStatus" @change="msg.pageIndex=1,getList()"> </el-select>
<el-option label="不限" :value="0"> </el-option> </li>
<el-option v-for="item in getCheckStatusList" :key="item.Id" :label="item.Name" :value="item.Id"> <li>
</el-option> <el-select size="small" v-model="msg.CheckStatus" placeholder="盘点状态" >
</el-select> <el-option label="不限" :value="-1"></el-option>
</li> <el-option :key="index+10" v-for="(item,index) in checkList" :label="item.Name" :value="item.Id"></el-option>
</el-select>
</li>
<!-- <li>
<el-select size="small" v-model="msg.IsSelectCheckLoss" placeholder="是否查询盘亏盘盈" >
<el-option label="不限" :value="-1"></el-option>
<el-option label="是" :value="1"></el-option>
<el-option label="否" :value="2"></el-option>
</el-select>
</li> -->
</ul> </ul>
<vxe-table stripe style="margin-top:15px" :loading="loading" :data="tableData"> <vxe-table stripe style="margin-top:15px" :loading="loading"
<vxe-table-column field="Name" title="状态" width="120"> :data="tableData">
<template v-slot="{ row }"> <vxe-table-column field="Name" title="盘点状态">
<span class="ColorSpan huangSpan" v-if="row.CheckStatus == 1" :id="row.SuppliesId"></span> <template v-slot="{ row }">
<span class="ColorSpan greenSpan" v-if="row.CheckStatus == 2"></span> <span class="ColorSpan huangSpan" v-if="row.CheckStatus == 1"></span>
<span class="ColorSpan purpleSpan" v-if="row.CheckStatus == 3"></span> <span class="ColorSpan greenSpan" v-if="row.CheckStatus == 2"></span>
<span class="ColorSpan redSpan" v-if="row.CheckStatus == 4"></span> <span class="ColorSpan purpleSpan" v-if="row.CheckStatus == 3"></span>
<span>{{row.CheckStatusName}}</span> <span class="ColorSpan redSpan" v-if="row.CheckStatus == 4"></span>
</template> {{row.CheckStatusName}}
</vxe-table-column> </template>
<vxe-table-column field="SuppliesNo" title="物料编号" width="100"></vxe-table-column> </vxe-table-column>
<vxe-table-column field="SuppliesName" title="物料名称"></vxe-table-column> <vxe-table-column field="Name" title="审核状态">
<vxe-table-column field="SpecificationList" title="规格" width="220"> <template v-slot="{ row }">
<template v-slot="{ row }"> <span v-if="row.AuditStatus == 1">未审核</span>
<span v-for="(x,y) in row.SpecificationList" :key="y">{{x}} <span <span v-if="row.AuditStatus == 2">已审核</span>
v-if="row.SpecificationList.length !== y+1"> , </span></span> <span v-if="row.AuditStatus == 3">审核驳回</span>
</template> </template>
</vxe-table-column> </vxe-table-column>
<vxe-table-column field="InventoryNum" title="库存" width="80"></vxe-table-column>
<vxe-table-column field="RealityNum" title="实际数量" width="100"></vxe-table-column> <vxe-table-column field="PropertyName" title="资产名称"></vxe-table-column>
<vxe-table-column field="Remark" title="备注" width="200"></vxe-table-column> <vxe-table-column field="PropertyNum" title="资产编码">
<vxe-table-column field="CheckEmpName" title="盘点人/时间" width="200"> <template v-slot="{ row }">
<template v-slot="{ row }"> <span class="underline" @click="getCheckDes(row)">{{row.PropertyNum}}</span>
<div v-if="row.CheckEmpName">{{row.CheckEmpName}}</div> </template>
<div v-if="row.CheckDate">{{row.CheckDate}}</div>
</template> </vxe-table-column>
</vxe-table-column> <vxe-table-column field="PropertyStatusName" title="资产状态"></vxe-table-column>
<vxe-table-column field="ImageList" title="图片" width="200"> <vxe-table-column field="CategoryName" title="分类"></vxe-table-column>
<template v-slot="{row}"> <vxe-table-column field="BrandName" title="品牌"></vxe-table-column>
<div class="Inven_imgList" v-for="(item,index) in row.ImageList" :key="index" v-if="index<3"> <vxe-table-column field="AuditEmpName" title="审核人/时间">
<img :src="item" @click="getImgView(row.ImageList)" /> <template v-slot="{ row }">
</div> <p v-if="row.AuditEmpName!=''">{{row.AuditEmpName}}</p>
<div v-if="row.ImageList.length>3" class="Inventory_more">...</div> <p v-if="row.AuditDate!=''">{{row.AuditDate}}</p>
</template> </template>
</vxe-table-column>
<vxe-table-column field="ImageList" title="溢/损处理状态" width="200"> </vxe-table-column>
<template v-slot="{row}"> <vxe-table-column field="CheckEmpName" title="盘点人/时间">
<template v-if="row.CheckStatus==3||row.CheckStatus==4"> <template v-slot="{ row }">
<span v-if="row.DealStatus==1" style="color:green">已处理</span> <p v-if="row.CheckEmpName!=''">{{row.CheckEmpName}}</p>
<span v-if="row.DealStatus==2" style="color:red">未处理</span> <p v-if="row.CheckDate!=''">{{row.CheckDate}}</p>
</template> </template>
</template> </vxe-table-column>
</vxe-table-column> <vxe-table-column field="UpdateBy" title="操作人/时间">
</vxe-table> <template v-slot="{ row }">
<el-pagination @current-change="currentChange" background :page-size="msg.pageSize" layout="prev, pager, next" <p v-if="row.UpdateBy!=''">{{row.UpdateBy}}</p>
:total="total" :current-page.sync="msg.pageIndex"> <p v-if="row.UpdateDate!=''">{{row.UpdateDate}}</p>
</template>
</vxe-table-column>
<vxe-table-column field="address" title="操作">
<template v-slot="{ row }">
<el-tooltip class="item" effect="dark" content="盘点" placement="top" >
<img v-if="row.CheckStatus==1" @click="SetType(row,1,'盘点')" style="width:24px;height:24px" src="../../assets/img/pd.png" alt="" />
</el-tooltip>
<el-tooltip class="item" effect="dark" content="盘亏" placement="top" >
<img v-if="row.CheckStatus==1" @click="SetType(row,2,'盘亏')" style="width:24px;height:24px" src="../../assets/img/czrz.png" alt="" />
</el-tooltip>
<el-tooltip class="item" effect="dark" content="盘点并审核" placement="top" >
<img v-if="row.CheckStatus==1 && row.AuditStatus==1" @click="SetType(row,3,'盘点并审核')" style="width:24px;height:24px" src="../../assets/img/pdsh.png" alt="" />
</el-tooltip>
<el-tooltip class="item" effect="dark" content="审核通过" placement="top" >
<img v-if="row.AuditStatus==1" @click="SetType(row,4,'审核通过')" style="width:24px;height:24px" src="../../assets/img/shtg.png" alt="" />
</el-tooltip>
<el-tooltip class="item" effect="dark" content="审核驳回" placement="top" >
<img v-if="row.AuditStatus==1" @click="SetType(row,5,'审核驳回')" style="width:24px;height:24px" src="../../assets/img/shbh.png" alt="" />
</el-tooltip>
<el-tooltip class="item" effect="dark" content="取消盘点" placement="top" >
<img v-if="row.CheckStatus==2 || row.CheckStatus==3 || row.CheckStatus==4" @click="SetType(row,6,'取消盘点')" style="width:24px;height:24px" src="../../assets/img/qxpd.png" alt="" />
</el-tooltip>
</template>
</vxe-table-column>
</vxe-table>
<el-pagination
@current-change="currentChange"
background
:page-size="msg.pageSize"
layout="prev, pager, next"
:total="total"
>
</el-pagination> </el-pagination>
</div> </div>
<el-dialog :visible.sync="isShowImageDialog" @closed="clearImg"> <el-dialog
<el-carousel indicator-position="outside" height="600px"> :title="dialogtitle"
<el-carousel-item v-for="(src,index) in InvimageList" :key="index"> :visible.sync="dialogState"
<img :src="src" style="max-width: 100%;max-height: 100%;display: block; margin: 0 auto;" /> top="0"
</el-carousel-item> width="300px"
</el-carousel> >
<el-form
class="MyEditForm"
:model="addMsg"
:rules="rules"
ref="addMsg"
label-width="0px"
>
<div class="basefix">
<div class="baseform">
<el-form-item label="" prop="Type">
<span class="label">类型</span>
<el-select size="mini" v-model="addMsg.Type" placeholder="请选择" >
<el-option label="盘点" :value="1" > </el-option>
<el-option label="盘亏" :value="2" > </el-option>
<el-option label="盘点并审核" :value="3" > </el-option>
<el-option label="审核通过" :value="4" > </el-option>
<el-option label="审核驳回" :value="5" > </el-option>
<el-option label="取消盘点" :value="6" > </el-option>
<el-option label="处置" :value="7" > </el-option>
</el-select>
</el-form-item>
</div>
</div>
<div class="btnformItem">
<span class="submitBtn" type="primary" @click="submitForm('addMsg')"
>确定</span
>
<span class="exitBtn" @click="dialogState = false">取消</span>
</div>
</el-form>
</el-dialog>
<el-dialog top="0" title="资产详情" :visible.sync="CheckDetailState" width="1150px">
<CheckDetails ref="mychild"></CheckDetails>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
export default { import CheckDetails from "@/components/global/CheckDetails.vue";
name: "InventoryDetails", import Treeselect from "@riophae/vue-treeselect";
components: {}, import "@riophae/vue-treeselect/dist/vue-treeselect.css";
data() { export default {
return { name: "assetsList",
//预览图片弹窗 components: {
isShowImageDialog: false, Treeselect,CheckDetails
//预览图 },
InvimageList:[], data() {
morequery: true, return {
currentPage: 1, CheckDetailState: false,
tableData: [], addMsg: {
loading: false, CheckDetailId: 0,
total: 0, Type:1,
msg: { },
pageIndex: 1, normalizer(node) {
pageSize: 99999999, var obj = {
CheckId: 0, //盘点单id id: node.Id,
SuppliesId: '', //物料id label: node.Name
SuppliesName: '', //物料名称 };
CheckStatus: 0, //盘点状态 if (node.ChildList != null && node.ChildList.length > 0) {
// DealStatus:0,//盈亏处理状态 (在盈亏界面使用) obj.children = node.ChildList;
IsSelectCheckLoss: 0, //是否只查询盘点盈亏的 1是 0否 }
IsSelectHaveInventory: 0, //是否只查询有库存数量的 1是 0否 return obj;
},
morequery:false,
dateList: [],
currentPage: 1,
tableData: [],
loading: false,
total: 0,
msg: {
pageIndex: 1,
pageSize: 10,
Name: "",
CategoryId:null,
CheckId:'',
PropertyName:'',
AuditStatus:'',
CheckStatus:'',
IsSelectCheckLoss:'',
},
dialogtitle: "新增",
dialogState: false,
rules: {
Type: [
{ required: true, message: "请选择类型", trigger: "change" }
]
},
supplierList: [],
EmployeeList: [],
nodemsg: {
ParentId: -1,
Tier: "",
Name: "",
Type: 1
},
treedata: [],
BranchList: [],
PropertyId:'',
checkList:[],
};
},
created(){
if(this.$route.query.CheckId){
this.msg.CheckId=this.$route.query.CheckId;
}
},
mounted() {
this.getList();
this.getNode();
this.getBranch();
this.getCheckStatus();
},
methods: {
SetEnd(item){
let that=this;
let msg={};
this.$confirm("未盘资产将标记盘亏,是否继续?","提示", {
confirmButtonText:"确定",
cancelButtonText: "取消",
type: 'warning'
}).then(() => {
msg.CheckId = this.msg.CheckId;
msg.Type = 0;
this.apiJavaPost(
"/api/property/SetPropertyCheckStatus",
msg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
},
null
);
}).catch(() => {
});
},
Export(){
let msg = JSON.parse(JSON.stringify(this.msg));
this.JavaGetLocalFile(
"/api/property/GetPropertyCheckDetailToExcel",
msg,
"盘点报告.xls"
);
},
Backto(){
this.$router.push({
path: "/InventoryMan"
});
},
getCheckDes(item){
this.PropertyId=item.PropertyId;
this.CheckDetailState=true;
setTimeout(()=>{
this.$refs.mychild.InitData(this.PropertyId);
},10)
},
SetType(item,type,str){
let that=this;
this.$confirm(`确认${str}?`,"提示", {
confirmButtonText:"确定",
cancelButtonText: "取消",
type: 'warning'
}).then(() => {
this.addMsg.CheckDetailId = item.Id;
this.addMsg.Type = type;
that.SaveType();
}).catch(() => {
});
},
SetDetailStatus(item){
this.dialogState = true;
this.addMsg.CheckDetailId = item.Id;
this.addMsg.Type = "";
},
treeClick(data) {
this.addMsg.CategoryId = data.Id;
},
getCheckStatus() {
this.apiJavaPost(
"/api/property/GetPropertyCheckStatusEnumList",
{},
res => {
if (res.data.resultCode === 1) {
this.checkList = res.data.data;
} else {
this.Error(res.data.message);
}
},
null
);
},
getNode() {
this.apiJavaPost(
"/api/property/CateporyGetTreeList",
this.nodemsg,
res => {
if (res.data.resultCode === 1) {
this.treedata = res.data.data;
} else {
this.Error(res.data.message);
}
}, },
getCheckStatusList: [], null
//仓库id );
WarehouseId: 0, },
//CheckState用于管理操作按钮 addSupplier() {
CheckState:0 this.addMsg = {
CheckDetailId: 0,
Type:1,
}; };
this.dialogtitle = "设置";
this.dialogState = true;
}, },
mounted() { Edit(item) {
this.msg.CheckId = this.$route.query.CheckId; this.dialogtitle = "编辑";
this.WarehouseId = this.$route.query.WarehouseId; this.dialogState = true;
this.CheckState = this.$route.query.CheckState; this.addMsg = Object.assign({}, item);
this.getList(); this.dateList=[];
this.getCheckStatus(); this.dateList[0]=this.addMsg.StartDate;
this.dateList[1]=this.addMsg.EndDate;
}, },
methods: { Delete(item) {
let Id = item.Id;
currentChange(val) { this.$confirm("确认删除?", "提示", {
this.msg.pageIndex = val; confirmButtonText: "确定",
this.getList(); cancelButtonText: "取消",
}, type: "warning"
getList() { })
this.loading = true; .then(() => {
this.apiJavaPost(
"/api/property/DelPropertyCheckInfo",
{ CheckId: Id },
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
},
null
);
})
.catch(() => {
this.$message.info("已取消删除!");
});
},
SaveType() {
this.apiJavaPost( this.apiJavaPost(
"/api/supplies/GetSuppliesCheckDetailPageList", "/api/property/SetPropertyCheckDetailStatus",
this.msg, this.addMsg,
res => { res => {
this.loading = false;
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
this.tableData = res.data.data.pageData; this.getList();
this.total = res.data.data.count; this.Success(res.data.message);
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, },
null null
); );
}, },
getCheckStatus() { currentChange(val) {
this.apiJavaPost("/api/property/GetPropertyCheckStatusEnumList", {}, this.msg.pageIndex = val;
res => { this.getList();
if (res.data.resultCode === 1) { },
this.getCheckStatusList = res.data.data; getList() {
} else {
this.Error(res.data.message); this.loading = true;
} this.apiJavaPost(
}, "/api/property/GetPropertyCheckDetailPageList",
null this.msg,
); res => {
}, this.loading = false;
Backto() { if (res.data.resultCode === 1) {
this.$router.push({ this.tableData = res.data.data.pageData;
path: "/consumablesInventory" this.total = res.data.data.count;
}); } else {
}, this.Error(res.data.message);
//跳转至报损报溢
goBaosun(path) {
this.$router.push({
path: path,
query: {
CheckId: this.msg.CheckId,
WarehouseId: this.WarehouseId,
isFrom:1
} }
}); },
}, null
//点击图片进行预览 );
getImgView(imglist){ },
this.isShowImageDialog=true;
this.InvimageList=imglist;
},
//关闭预览图片
clearImg() {
this.InvimageList = null
},
getBranch() {
this.apiJavaPost(
"/api/User/GetBranchList",
{},
res => {
if (res.data.resultCode === 1) {
this.BranchList = res.data.data;
} else {
this.Error(res.data.message);
}
},
null
);
} }
}; }
};
</script> </script>
<style> <style>
.Inventory_more{ .InventoryMan .MyEditForm .dateList .el-input__inner{
display: inline-block; /* width:300px; */
width: 10px; }
height: 50px; .InventoryMan .dateList .el-date-editor .el-range__icon{
line-height: 50px;
position: relative;
top: -25px;
}
.InventoryDetail .dateList .el-date-editor .el-range__icon {
line-height: 24px; line-height: 24px;
} }
.InventoryMan .dateList .el-date-editor .el-range-separator{
.InventoryDetail .dateList .el-date-editor .el-range-separator {
line-height: 22px; line-height: 22px;
} }
.InventoryMan .MyEditForm .dateList.el-input__inner{
.InventoryDetail .MyEditForm .dateList.el-input__inner { width: 300px;
width: 300px; }
} .assetsList .MyEditForm .baseform .el-form-item:nth-child(4n) {
margin-right: 0;
}
.assetsList { .assetsList .zczt1 {
width: 100%; background: #ffe4d5;
height: 100%; color: #ffa87c;
} }
.assetsList .zczt2 {
.Inven_imgList { background: #beeff0;
width: 50px; color: #089bab;
height: 50px; }
display: inline-block; .assetsList .zczt3 {
margin-right: 5px; background: #ffd6d5;
} color: #ff7874;
}
.Inven_imgList img { .assetsList .zczt4 {
width: 100%; background: #d7d6ff;
height: 100%; color: #7b78ff;
} }
.assetsList .Commonzczt {
display: inline-block;
width: 24px;
height: 24px;
line-height: 24px;
text-align: center;
border-radius: 50%;
font-size: 12px;
font-family: "Microsoft YaHei";
}
.assetsList {
width: 100%;
height: 100%;
}
</style> </style>
...@@ -247,6 +247,12 @@ export default { ...@@ -247,6 +247,12 @@ export default {
name: 'InventoryBoyi', name: 'InventoryBoyi',
component: resolve => require(['@/components/Materialman/InventoryBoyi'], resolve), component: resolve => require(['@/components/Materialman/InventoryBoyi'], resolve),
}, },
//耗材预览
{
path: '/InventoryView',
name: 'InventoryView',
component: resolve => require(['@/components/Materialman/InventoryView'], resolve),
},
// 现存量查询 // 现存量查询
{ {
path: '/SpotQuery', path: '/SpotQuery',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment