Commit 5148b22b authored by 黄媛媛's avatar 黄媛媛

111

parent a8a46577
...@@ -13,7 +13,7 @@ export default { ...@@ -13,7 +13,7 @@ export default {
</script> </script>
<style> <style>
@import "//at.alicdn.com/t/font_1544586_7oud8n0q1m.css"; @import "//at.alicdn.com/t/font_1544586_83779r3l1dg.css";
@import "./assets/css/common.css"; @import "./assets/css/common.css";
body,html{ body,html{
padding: 0px; padding: 0px;
......
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
display: none; display: none;
} }
.myTable tr{ .myTable tr{
height:60px; height:50px;
background:#fff; background:#fff;
border-bottom: 4px solid #F8FAFB; border-bottom: 4px solid #F8FAFB;
cursor: pointer; cursor: pointer;
...@@ -145,6 +145,9 @@ ...@@ -145,6 +145,9 @@
.c11{ .c11{
color:#111111; color:#111111;
} }
.c99{
color:#999999;
}
.cd6{ .cd6{
color:#00D2D6; color:#00D2D6;
} }
...@@ -152,7 +155,7 @@ ...@@ -152,7 +155,7 @@
font-family: "PingFangSC" font-family: "PingFangSC"
} }
.clearfix:after {content: "\0020";display: block;height: 0;clear: both;}
.basefix:after { .basefix:after {
clear: both; clear: both;
...@@ -191,7 +194,7 @@ ...@@ -191,7 +194,7 @@
margin-left: 20px; margin-left: 20px;
color:#B8C4C4; color:#B8C4C4;
} }
.huangSpan{ .ColorSpan{
display: inline-block; display: inline-block;
width: 24px; width: 24px;
height: 24px; height: 24px;
...@@ -200,42 +203,28 @@ ...@@ -200,42 +203,28 @@
border-radius: 50%; border-radius: 50%;
font-size: 12px; font-size: 12px;
font-family: "宋体"; font-family: "宋体";
}
.huangSpan{
background: #FFE4D5; background: #FFE4D5;
color: #FFA87C; color: #FFA87C;
} }
.greenSpan{ .greenSpan{
display: inline-block;
width: 24px;
height: 24px;
line-height: 24px;
text-align: center;
border-radius: 50%;
font-size: 12px;
font-family: "宋体";
background: #BEEFF0; background: #BEEFF0;
color: #28CACC; color: #28CACC;
} }
.PickSpan{ .greenSpan{
display: inline-block; background: #BEEFF0;
width: 24px; color: #28CACC;
height: 24px; }
line-height: 24px; .purpleSpan{
text-align: center; background: #D7D6FF;
border-radius: 50%; color: #7B78FF;
font-size: 12px;
font-family: "宋体";
background: #FFE1EE;
color: #FF9CC6;
} }
.buleSpan{ .buleSpan{
display: inline-block;
width: 24px;
height: 24px;
line-height: 24px;
text-align: center;
border-radius: 50%;
font-size: 12px;
font-family: "宋体";
background: #D4EAFF; background: #D4EAFF;
color: #73B8FF; color: #73B8FF;
} }
.redSpan{
background: #FFD6D5;
color: #FF7874;
}
...@@ -191,8 +191,8 @@ ...@@ -191,8 +191,8 @@
.MyEditForm .btnformItem span{ .MyEditForm .btnformItem span{
display: inline-block; display: inline-block;
width:120px; width:120px;
height:44px; height:40px;
line-height:44px; line-height:40px;
border-radius:22px; border-radius:22px;
cursor: pointer; cursor: pointer;
......
...@@ -4,6 +4,11 @@ ...@@ -4,6 +4,11 @@
font-size: 12px; font-size: 12px;
font-family: '宋体'; font-family: '宋体';
} }
.vxe-table .vxe-body--column:not(.col--ellipsis),
.vxe-table .vxe-footer--column:not(.col--ellipsis),
.vxe-table .vxe-header--column:not(.col--ellipsis){
padding:7px 0;
}
.vxe-table:after, .vxe-table:before{ .vxe-table:after, .vxe-table:before{
background-color:transparent; background-color:transparent;
......
...@@ -88,7 +88,7 @@ ...@@ -88,7 +88,7 @@
:visible.sync="dialogState" :visible.sync="dialogState"
:before-close="closeChangeMachie" :before-close="closeChangeMachie"
top="3%" top="3%"
width="850px"> width="975px">
<el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0"> <el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0">
<el-form-item prop="Name"> <el-form-item prop="Name">
<span class="label">档案名称</span> <span class="label">档案名称</span>
...@@ -426,6 +426,9 @@ export default { ...@@ -426,6 +426,9 @@ export default {
</script> </script>
<style scoped> <style scoped>
.Archivesmaterials .MyEditForm .el-form-item:nth-child(4n){
margin-right:0;
}
.Archivesmaterials .hoverSpan1{ .Archivesmaterials .hoverSpan1{
left: -20px; left: -20px;
} }
......
...@@ -79,8 +79,8 @@ ...@@ -79,8 +79,8 @@
<tr :class="index==0?'trNobottom':''" v-for="(delist,index) in item.DetailList" :key="delist.Id"> <tr :class="index==0?'trNobottom':''" v-for="(delist,index) in item.DetailList" :key="delist.Id">
<td :rowspan="item.DetailList.length" v-if="index==0"> <td :rowspan="item.DetailList.length" v-if="index==0">
<!-- <span class="commonStyle hoverSpan1"></span> --> <!-- <span class="commonStyle hoverSpan1"></span> -->
<span class="PickSpan" v-if="item.StockOutState==2"></span> <span class="ColorSpan redSpan" v-if="item.StockOutState==2"></span>
<span class="buleSpan" v-if="item.StockOutState==1"></span> <span class="ColorSpan greenSpan" v-if="item.StockOutState==1"></span>
{{item.StockOutStateStr}} {{item.StockOutStateStr}}
</td> </td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.StockOutNum}}</td> <td :rowspan="item.DetailList.length" v-if="index==0">{{item.StockOutNum}}</td>
...@@ -130,7 +130,7 @@ ...@@ -130,7 +130,7 @@
title="出库管理" title="出库管理"
:visible.sync="dialogState" :visible.sync="dialogState"
top="2%" top="2%"
width="815px"> width="1004px">
<el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0px"> <el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0px">
<div class="basefix"> <div class="basefix">
<el-form-item label="" prop="WarehouseId"> <el-form-item label="" prop="WarehouseId">
...@@ -177,7 +177,7 @@ ...@@ -177,7 +177,7 @@
</span> </span>
<span @click="ycwuitemList" style="margin-left:20px"> <span @click="ycwuitemList" style="margin-left:20px">
<span class="f20">-</span> <span class="f20">-</span>
物料 物料
</span> </span>
</div> </div>
<div class="myScroll" style="overflow:scroll;max-height:300px;margin-top:20px"> <div class="myScroll" style="overflow:scroll;max-height:300px;margin-top:20px">
...@@ -425,7 +425,7 @@ export default { ...@@ -425,7 +425,7 @@ export default {
if(this.ItemCheckList.length==0){ if(this.ItemCheckList.length==0){
return; return;
} }
this.$confirm("确认移物料?","提示", { this.$confirm("确认移物料?","提示", {
confirmButtonText:"确定", confirmButtonText:"确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: 'warning' type: 'warning'
...@@ -670,7 +670,7 @@ export default { ...@@ -670,7 +670,7 @@ export default {
<style> <style>
.chooseDiv>span{ .chooseDiv>span{
color:#00D2D6; color:#00D2D6;
padding:10px 20px; padding:6px 12px;
border:1px solid #00D2D6; border:1px solid #00D2D6;
border-radius:20px; border-radius:20px;
cursor: pointer; cursor: pointer;
...@@ -701,7 +701,7 @@ export default { ...@@ -701,7 +701,7 @@ export default {
width:100%; width:100%;
height:100%; height:100%;
} }
.chukudan .MyEditForm .el-form-item:nth-child(3n){ .chukudan .MyEditForm .el-form-item:nth-child(4n){
margin-right:0; margin-right:0;
} }
.chukudan::-webkit-scrollbar{ .chukudan::-webkit-scrollbar{
......
...@@ -69,8 +69,8 @@ ...@@ -69,8 +69,8 @@
<tr :class="index==0?'trNobottom':''" v-for="(delist,index) in item.DetailList" :key="delist.Id"> <tr :class="index==0?'trNobottom':''" v-for="(delist,index) in item.DetailList" :key="delist.Id">
<td class="ImgTd" :rowspan="item.DetailList.length" v-if="index==0"> <td class="ImgTd" :rowspan="item.DetailList.length" v-if="index==0">
<!-- <span class="commonStyle hoverSpan1"></span> --> <!-- <span class="commonStyle hoverSpan1"></span> -->
<span class="huangSpan" v-if="item.StockInState==2"></span> <span class="ColorSpan huangSpan" v-if="item.StockInState==2"></span>
<span class="greenSpan" v-if="item.StockInState==1"></span> <span class="ColorSpan greenSpan" v-if="item.StockInState==1"></span>
{{item.StockInStateStr}} {{item.StockInStateStr}}
</td> </td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.StockInNum}}</td> <td :rowspan="item.DetailList.length" v-if="index==0">{{item.StockInNum}}</td>
...@@ -165,7 +165,7 @@ ...@@ -165,7 +165,7 @@
</span> </span>
<span @click="ycwuitemList" style="margin-left:20px"> <span @click="ycwuitemList" style="margin-left:20px">
<span class="f20">-</span> <span class="f20">-</span>
物料 物料
</span> </span>
</div> </div>
<div class="myScroll" style="overflow:scroll;max-height:300px;margin-top:20px"> <div class="myScroll" style="overflow:scroll;max-height:300px;margin-top:20px">
...@@ -400,7 +400,7 @@ export default { ...@@ -400,7 +400,7 @@ export default {
if(this.ItemCheckList.length==0){ if(this.ItemCheckList.length==0){
return; return;
} }
this.$confirm("确认移物料?","提示", { this.$confirm("确认移物料?","提示", {
confirmButtonText:"确定", confirmButtonText:"确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: 'warning' type: 'warning'
...@@ -652,7 +652,7 @@ export default { ...@@ -652,7 +652,7 @@ export default {
<style> <style>
.chooseDiv>span{ .chooseDiv>span{
color:#00D2D6; color:#00D2D6;
padding:10px 20px; padding:6px 12px;
border:1px solid #00D2D6; border:1px solid #00D2D6;
border-radius:20px; border-radius:20px;
cursor: pointer; cursor: pointer;
......
<template>
<div class="approvalDetails">
<div style="border-bottom:1px solid #E2E4EB;padding-bottom:10px">
<span class="pageTitle" style="float:inherit">详情</span>
</div>
<div style="margin-top:30px;background:rgba(255,255,255,1);border-radius:10px;padding:20px;position:relative;">
<el-row style="border-bottom:1px solid #E2E4EB;padding-bottom:20px">
<span class="underline"></span>
<el-col :span="12" style="position:relative;padding-left:50px">
<span class="titleSpan">
<span></span>
</span>
<p class="c11 f14" style="padding-top:12px">{{GetDetail.TemplateName}}</p>
</el-col>
<el-col class="StateCol" :span="12" style="text-align:right;padding-top:15px">
<span v-if="GetDetail.AuditStatus==1" class="spz">{{GetDetail.AuditStatusName}}</span>
<span v-if="GetDetail.AuditStatus==2 || GetDetail.AuditStatus==4" class="ytg">{{GetDetail.AuditStatusName}}</span>
<span v-if="GetDetail.AuditStatus==3 || GetDetail.AuditStatus==5" class="wtg">{{GetDetail.AuditStatusName}}</span>
</el-col>
</el-row>
<el-row class="zcInfo">
<el-col :span="12">
<span>来源 :</span>
<span>{{GetDetail.SourceName}}</span>
</el-col>
<el-col :span="12">
<span>申请人 :</span>
<span>{{GetDetail.EmName}}</span>
</el-col>
<el-col :span="12">
<span>公司 :</span>
<span>{{GetDetail.BranchName}}</span>
</el-col>
<el-col :span="12">
<span>部门 :</span>
<span>{{GetDetail.DepartmentName}}</span>
</el-col>
<el-col :span="12">
<span>单号 :</span>
<span>{{GetDetail.OrderCode}}</span>
</el-col>
<el-col :span="12">
<span>时间 :</span>
<span>{{GetDetail.Time}}</span>
</el-col>
<el-col :span="12">
<span>备注 :</span>
<span>{{GetDetail.Remark}}</span>
</el-col>
</el-row>
<p class="f12 c11" style="margin-top:25px">派发清单</p>
<table style="margin-top:10px" class="myTable noHoverTable" border="0" cellspacing="0" cellpadding="0">
<thead>
<th>资产名称</th>
<th>品牌名称</th>
<th>资产编号</th>
<th>分类名称</th>
</thead>
<tbody>
<tr v-for="(item,index) in GetDetail.DetailList" :key="index">
<td>{{item.PropertyName}}</td>
<td>{{item.BrandName}}</td>
<td>{{item.PropertyNum}}</td>
<td>{{item.CategoryName}}</td>
</tr>
<tr v-show="GetDetail.DetailList.length==0">
<td colspan="4" align="center">暂无数据</td>
</tr>
</tbody>
</table>
</div>
<div style="margin-top:30px;background:rgba(255,255,255,1);border-radius:10px;padding:20px;position:relative;">
<ul class="allStep" style="position:relative;">
<li v-for="(item,index) in GetDetail.AuditSteps" :key="index">
<div>
<span v-if="index!=0" class="line"></span>
<span class="circle">
<img src="../../assets/img/step2.png" alt="">
</span>
<span style="display:inline-block;position:relative;top:20px">
<div>{{item.AuditDescription}}</div>
<div style="margin-top:10px;color:#28CACC">{{item.AuditWayName}}</div>
</span>
</div>
</li>
<!-- <li>
<div>
<span class="line"></span>
<span class="circle">
<img src="../../assets/img/step2.png" alt="">
</span>
<span style="display:inline-block;position:relative;top:20px">
<div>张小芳</div>
<div style="margin-top:10px">审批中</div>
</span>
</div>
</li>
<li>
<div>
<span class="line"></span>
<span class="circle">
<span class="circleSpan"></span>
</span>
<span style="display:inline-block;position:relative;top:20px">
<div>张小芳</div>
<div style="margin-top:10px">未审批</div>
</span>
</div>
</li> -->
<el-popover
popper-class="approvalDetailspopover"
placement="left"
trigger="click">
<el-table size="mini" :data="danjuList" style="font-size:12px">
<el-table-column width="100" property="UpdateBy" label="操作人"></el-table-column>
<el-table-column width="150" property="Content" label="内容"></el-table-column>
<el-table-column width="100" property="UpdateDate" label="操作时间"></el-table-column>
</el-table>
<span slot="reference" class="rizhi">单据操作日志</span>
</el-popover>
</ul>
<div class="_process clearfix">
<div class="_process_box">
<template v-for="(item,index) in GetDetail.AuditSteps">
<div class="_pb_son" :class="{_none_after:(item.NextStep==1||item.Status==4),_bohui_after:(GetDetail.Status==3 && !IsBoHui && index===GetDetail.AuditSteps.length-1)}" v-if="item.Sort==0 || (item.Status==1 && item.NextStep==1) || (item.Status==2 && item.Sort!=0) || (item.Status==4)">
<div class="_left_radius" v-if="item.Sort==0">发起</div>
<div class="_left_radius _left_radius_sus" v-if="item.NextStep==1">待审</div>
<div class="_left_radius" v-if="item.Sort!=0 && item.Status==2">通过</div>
<div class="_left_radius _left_radius_err" v-else-if="item.Status==4">驳回</div>
<div class="_right_content" v-if="item.AuditWay==2 || item.AuditWay==3">
<p class="_name">
<span class="_n">{{item.AuditDescription}}<span class="_sm">({{item.AuditWay==2?'会签':'或签'}})</span></span>
</p>
<div class="_more _mgt_15" v-for="(son,sindex) in item.AuditRecordList" v-if="son.AuditStatus==2">
<div class="_right_content">
<p class="_name">
<span class="_n PingFangSC">{{son.AuditName}}</span>
<span class="_sn" v-if="son.AuditStatus==2">通过</span>
<span class="_time _time_n">{{son.AduitDate}}</span>
</p>
<template v-if="son.CareOfRemarks">
<div class="_zhuan_msg" v-for="(z,zIndex) in JSON.parse(son.CareOfRemarks)">
<p><span></span>{{z.BeFrom}}<span><i class="_color_green">转交</i></span>{{z.Target}}</p>
<p class="_pp_info">转交备注:{{z.Remarks?z.Remarks:'无'}}</p>
</div>
</template>
<div class="_pp_info" v-if="son.AuditStatus!=1">
<p>{{son.Remark!=''?son.Remark:'无'}}</p>
<div class="_info_img" v-if="son.Image!=null&&son.AuditStatus==2" >
<ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1">
<li v-for="(img,imgI) in son.Image">
<img v-if="!img" src="../../assets/img/Travelslider.png" alt="">
<img v-else :src="img" alt="">
<!-- <div class="_see_img" @click="showImg(img,2)">
<i class="iconfont icon-sousuo"></i>
</div> -->
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="_more _mgt_15" v-for="(son,sindex) in item.AuditRecordList" v-if="son.AuditStatus!=2">
<div class="_right_content" v-if="item.AuditWay==2&&son.AuditStatus!=2">
<p class="_name">
<span class="_n PingFangSC">{{son.AuditName}}</span>
<span class="_sn" v-if="son.AuditStatus==2">通过</span>
<span class="_m" v-else-if="son.AuditStatus==4">驳回</span>
<span class="_sm" v-else-if="son.AuditStatus==1">待审</span>
<span class="_time _time_n" v-if="item.Status!=1">{{son.AduitDate}}</span>
</p>
<template v-if="son.CareOfRemarks">
<div class="_zhuan_msg" v-for="(z,zIndex) in JSON.parse(son.CareOfRemarks)">
<p><span></span>{{z.BeFrom}}<span><i class="_color_green">转交</i></span>{{z.Target}}</p>
<p class="_pp_info">转交备注:{{z.Remarks?z.Remarks:'无'}}</p>
</div>
</template>
<div class="_pp_info" v-if="item.Status!=1">
<p>{{son.Remark!=''?son.Remark:'无'}}</p>
<div class="_info_img" v-if="son.Image!=null&&item.Status!=1" >
<ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1">
<li v-for="(img,imgI) in son.Image">
<img v-if="!img" src="../../assets/img/Travelslider.png" alt="">
<img v-else :src="img" alt="">
<!-- <div class="_see_img" @click="showImg(img,2)">
<i class="iconfont icon-sousuo"></i>
</div> -->
</li>
</ul>
</div>
</div>
</div>
<div class="_right_content" v-else-if="item.AuditWay==3 && son.AuditStatus==1">
<p class="_name">
<span class="_n PingFangSC">{{son.AuditName}}</span>
<span class="_sm" v-if="item.Status==2 && item.Sort!=0">通过</span>
<span class="_m" v-else-if="item.Status==4">驳回</span>
<span class="_sm _left_radius_sus" v-else-if="son.AuditStatus==1">待审</span>
<span class="_time _time_n" v-if="item.Status!=1">{{son.AduitDate}}</span>
</p>
<template v-if="son.CareOfRemarks">
<div class="_zhuan_msg" v-for="(z,zIndex) in JSON.parse(son.CareOfRemarks)">
<p><span></span>{{z.BeFrom}}<span><i class="_color_green">转交</i></span>{{z.Target}}</p>
<p class="_pp_info">转交备注:{{z.Remarks?z.Remarks:'无'}}</p>
</div>
</template>
<div class="_pp_info" v-if="item.Status!=1">
<p>{{son.Remark!=''?son.Remark:'无'}}</p>
<div class="_info_img" v-if="son.Image!=null&&item.Status!=1" >
<ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1">
<li v-for="(img,imgI) in son.Image">
<img v-if="!img" src="../../assets/img/Travelslider.png" alt="">
<img v-else :src="img" alt="">
<!-- <div class="_see_img" @click="showImg(img)">
<i class="iconfont icon-sousuo"></i>
</div> -->
</li>
</ul>
</div>
</div>
</div>
<div class="_right_content" v-else-if="item.AuditWay==3 && son.AuditStatus==4">
<p class="_name">
<span class="_n PingFangSC">{{son.AuditName}}</span>
<span class="_sm" v-if="item.Status==2 && item.Sort!=0">通过</span>
<span class="_m" v-else-if="item.Status==4">驳回</span>
<span class="_sm _left_radius_sus" v-else-if="son.AuditStatus==1">待审</span>
<span class="_time _time_n" v-if="item.Status!=1">{{son.AduitDate}}</span>
</p>
<template v-if="son.CareOfRemarks">
<div class="_zhuan_msg" v-for="(z,zIndex) in JSON.parse(son.CareOfRemarks)">
<p><span></span>{{z.BeFrom}}<span><i class="_color_green">转交</i></span>{{z.Target}}</p>
<p class="_pp_info">转交备注:{{z.Remarks?z.Remarks:'无'}}</p>
</div>
</template>
<div class="_pp_info" v-if="item.Status!=1">
<p>{{son.Remark!=''?son.Remark:'无'}}</p>
<div class="_info_img" v-if="son.Image!=null&&item.Status!=1" >
<ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1">
<li v-for="(img,imgI) in son.Image">
<img v-if="!img" src="../../assets/img/Travelslider.png" alt="">
<img v-else :src="img" alt="">
<!-- <div class="_see_img" @click="showImg(img)">
<i class="iconfont icon-sousuo"></i>
</div> -->
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="_right_content" v-else>
<div class="_more" v-for="(son,sindex) in item.AuditRecordList">
<p class="_name">
<span class="_n">{{son.AuditName}}<span class="_sm">{{item.AuditDescription}}</span></span>
<span class="_time _time_n" v-if="item.NextStep!=1">{{son.AduitDate}}</span>
</p>
<div class="_right_content">
<div class="_pp_info" v-if="item.NextStep!=1">
<p>{{son.Remark==''?'无':son.Remark}}</p>
<div class="_info_img" v-if="son.Image!=null" >
<ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1">
<li v-for="(img,imgI) in son.Image">
<img v-if="!img" src="../../assets/img/Travelslider.png" alt="">
<img v-else :src="img" alt="">
<!-- <div class="_see_img" @click="showImg(img)">
<i class="iconfont icon-sousuo"></i>
</div> -->
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<textarea v-if="item.NextStep==1 && compType=='shenpi'" class="_textareaNew" v-model="addMsg.Description" placeholder="请输入..."></textarea>
</div>
</template>
<div v-if="GetDetail.Is_CanAudit==1 && compType=='shenpi'" class="_upload_box" style="margin-bottom:20px;padding-left:70px">
<ul class="clearfix">
<li v-for="(img,imgIndex) in uploadImgList" :key="imgIndex">
<img :src="img.src" alt="">
<div class="_delete_img" @click="deleteImg(imgIndex)">
<i style="color:#FFA475" class="iconfont icon-shanchu"></i>
</div>
</li>
<li v-if="uploadImgList.length<10">
<el-upload
action=""
class="avatar-uploader"
:http-request="uploadFileBtn"
:show-file-list="false"
:multiple="true"
:limit="10">
<i class="el-icon-plus avatar-uploader-icon"></i>
<span class="_upload_tips f12">最多可上传10张图片</span>
</el-upload>
</li>
</ul>
</div>
<div v-if="GetDetail.Is_CanAudit==1 && compType=='shenpi'" class="button" style="padding-left:15px">
<span @click="approvalOrder(1)" class="tongguo" >通过</span>
<span @click="approvalOrder(2)" class="bohui" >驳回</span>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
name: 'approvalDetails',
data(){
return{
danjuList:[],
tableData:[],
GetDetail:{
AuditSteps:[],
DetailList:[],
},
IsBoHui:false,
uploadImgList:[],
addMsg:{
AuditDescription:'',
ImageList:[],
UseReceiveId:'',
AuditType:'',
},
compType:'',
danjuMsg:{
pageIndex:1,
pageSize:20,
ResourceId:'',
Type:1,
},
}
},
created(){
if(this.$route.query.compType){
this.compType=this.$route.query.compType;
}
if(this.$route.query.Id){
this.addMsg.UseReceiveId=this.$route.query.Id;
this.danjuMsg.ResourceId=this.$route.query.Id;
}
this.getDetail();
this.getdanjuList();
},
mounted(){
},
methods:{
getdanjuList(){
this.apiJavaPost("/api/property/GetAuditChangeLogPageList",this.danjuMsg,
res => {
if (res.data.resultCode === 1) {
this.danjuList=res.data.data.pageData;
} else {
this.Error(res.data.message);
}
},
null
);
},
approvalOrder(num){
if(this.GetDetail.Is_AuditSelf==1){
this.Error("制单人跟审核人不能相同哟,请转交!");
return;
}
this.addMsg.AuditType=num;
this.addMsg.ImageList=this.uploadImgList;
this.apiJavaPost("/api/property/AuditOrRefund",this.addMsg,
res => {
if (res.data.resultCode === 1) {
this.success(res.data.message);
} else {
this.Error(res.data.message);
}
},
null
);
},
deleteImg(i){ // 删除
this.uploadImgList.splice(i,1)
},
uploadFileBtn(file) { //上传
if(file.file.size > 1024 * 1024 * 10) {
this.$message.warning('文件大小不能超过10M!')
return
}
// 1 文档 2 数据 3 图片
let typeArr=[
{stringArr:'GIF|JPG|JPEG|PNG|BMP',type:3},
{stringArr:'DOCX|DOC|XLSX|XLS|PPT|PPTX|PDF',type:1},
]
let ft=file.file.name.substring(file.file.name.lastIndexOf('.')+1,file.file.name.length).toUpperCase();
let fileTypeNumber = 2;
let typeOk = false;
typeArr.forEach(x=>{
if(x.stringArr.indexOf(ft)!='-1')
{
fileTypeNumber=x.type;
typeOk = true;
}
})
if (!typeOk) return this.$message.error('请上传图片、word、excel类型的文件!');
let newArr = [];
newArr.push(file.file)
let path = "/Upload/Temporary/"
this.$message.info('上传中...')
this.UploadSelfFileT(path, newArr, x => {
let obj = {
src: this.domainManager().ViittoFileUrl + x.data.FilePath
}
this.uploadImgList.push(obj)
this.$message.success('上传成功')
}, 1);
},
getDetail(){
this.apiJavaPost("/api/property/GetPropertyAuditDetail",{UseReceiveId:this.addMsg.UseReceiveId},
res => {
if (res.data.resultCode === 1) {
this.GetDetail=res.data.data;
let list = [];
for ( let i = 0; i < this.GetDetail.AuditSteps.length ; i++ ){
list.push(this.GetDetail.AuditSteps[i]);
if(this.GetDetail.AuditSteps[i].Status==4){
this.IsBoHui = true;
break;
}
}
this.GetDetail.AuditSteps = list;
} else {
this.Error(res.data.message);
}
},
null
);
},
},
}
</script>
<style>
.approvalDetailspopover .el-table td, .approvalDetailspopover .el-table th.is-leaf{
border:none;
}
.approvalDetailspopover{
padding:0;
}
.popoverTable .vxe-table table{
width:100%!important;
}
.approvalDetails ._textareaNew{
width: 100%;
height: 50px;
background-color: white;
border-radius: 4px;
border: 1px solid #E5E5E5;
font-size: 12px;
color: #333333;
padding: 12px 14px;
margin-top: 13px;
position: relative;
}
.approvalDetails ._upload_tips{font-size: 12px;position: absolute;top: 71%;width: 100%;left: 0;text-align: center;color: #949494;}
.approvalDetails ._pb_son:last-child{
padding-bottom: 5px!important;
}
.approvalDetails .avatar-uploader-icon {
font-size: 28px;
color: #8c939d;
width: 143px;
height: 82px;
line-height: 82px;
text-align: center;
}
.approvalDetails .avatar-uploader .el-upload {
border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
}
.approvalDetails ._delete_img{position: absolute;top: 20px;height:82px;width:143px;line-height: 34px;text-align: center;background-color: rgba(2, 2, 2, 0.6);display: inherit;opacity: 0;transition: all linear .5s}
.approvalDetails ._delete_img i.iconfont{display: inline-block;width: 32px;height: 32px;border-radius: 50%;color: #E95252 !important;background-color:rgba(251, 251, 251, 0.9); margin-top: 26px;}
.approvalDetails ._upload_box ul li{float: left;height:82px;width:143px;padding:20px 20px 20px 0;text-align: center;position: relative;cursor: pointer;margin-right: 10px;}
.approvalDetails ._upload_box ul li img{height:82px;width:143px;}
.approvalDetails ._upload_box ul li:hover ._delete_img{opacity: 1;}
.approvalDetails .button span{
display: inline-block;
width:120px;
height:40px;
line-height:40px;
border-radius:22px;
text-align: center;
cursor: pointer;
font-size: 12px;
font-family: "宋体";
margin-right: 20px;
}
.tongguo{
background:rgba(0,210,214,1);
color:#fff;
}
.bohui{
border:1px solid rgba(0,210,214,1);
color:rgba(0,210,214,1);
}
.approvalDetails ._zhuan_msg{
font-size: 12px;
margin-top:10px;
padding-bottom: 10px;
}
.approvalDetails ._zhuan_msg span{
display: inline-block;
margin-right: 5px;
color: #696969;
}
.approvalDetails ._zhuan_msg span:last-child{
margin-left: 5px;
}
.approvalDetails ._zhuan_msg p:nth-child(2){
color: #696969;
}
.approvalDetails ._zhuan_msg ._color_green{
color: #00D2D6
}
.approvalDetails ._right_content ._name ._n{font-size: 14px;color: #333333;font-weight: bold;}
.approvalDetails ._right_content ._name ._m{color: #FFFFFF;font-size: 12px;display: inline-block;padding: 2px 5px;background-color: #E95252;margin-left: 5px;border-radius: 4px;}
.approvalDetails ._right_content ._name ._sm{color: #FFFFFF;font-size: 12px;display: inline-block;padding: 2px 5px;background-color: #FF9600;margin-left: 5px;border-radius: 4px;font-weight: 100;}
.approvalDetails ._right_content ._name ._sn{color: #FFFFFF;font-size: 12px;display: inline-block;padding: 2px 5px;background-color: #00D2D6;margin-left: 5px;border-radius: 4px;}
.approvalDetails ._right_content ._time,._time{font-size: 12px;color: #666666;padding-top: 5px;}
.approvalDetails ._right_content ._pp_info,._textarea{border-radius: 10px; background:rgba(245,245,245,1);font-size: 12px;color: #333333;padding: 12px 14px;margin-top: 13px;position: relative;}
.approvalDetails ._right_content ._pp_info:before{display:block;content:'';border-width:8px 8px 8px 8px;border-style:solid;border-color: transparent transparent rgba(245,245,245,1) transparent;position:absolute;left:10px;top:-16px;}
.approvalDetails ._mgt_15{margin-top: 15px;}
.approvalDetails ._more ._right_content .iconfont{color: #AAAAAA}
.approvalDetails ._more ._right_content ._name ._n{font-size: 14px;color: #333333;font-weight: bold;padding-left: 3px;}
.approvalDetails ._pb_son{position: relative;padding-left: 75px;min-height: 100px;padding-bottom: 30px}
.approvalDetails ._left_radius{width: 40px;height: 40px;border-radius: 50%;text-align: center;line-height: 40px;background-color: #00D2D6;color: white;font-size: 12px;position: absolute;left: 15px;z-index: 2;}
.approvalDetails ._left_radius_err{background-color: #E95252 !important;}
.approvalDetails ._left_radius_sus{background-color: #FFA475 !important;}
.approvalDetails ._pb_son::after{content: '';width: 4px;height: 100%;background-color: #00D2D6;display: inline-block;position: absolute;clear: both;left: 33px;top: 0;z-index: 1}
.approvalDetails ._pb_son._none_after::after{content: '';display: none}
.approvalDetails ._pb_son._bohui_after::after{background-color: #E95252 !important;display: inline-block}
.approvalDetails ._process_box{padding-top: 30px;padding-bottom: 40px;}
.approvalDetails ._process{margin-top: 20px}
.approvalDetails .rightDiv .FirstName{
width:40px;
height:40px;
line-height:40px;
background:rgba(40,202,204,0.3);
color:#28CACC;
border-radius:50%;
text-align: center;
display: inline-block;
font-size: 18px;
}
.approvalDetails .stepItem .rightDiv{
width: 100%;
background:rgba(255,255,255,1);
box-shadow:0px 2px 5px 0px rgba(176,176,176,0.1);
border-radius:10px;
}
.approvalDetails .stepItem ._left_radius{
width: 16px;
height: 16px;
border-radius: 50%;
text-align: center;
position: absolute;
left: 0;
z-index: 2;
}
.approvalDetails .stepItem{
position: relative;
padding-left: 75px;
min-height: 100px;
padding-bottom: 30px;
}
.approvalDetails .rizhi{
font-size:12px;
font-family:"宋体";
font-weight:400;
text-decoration:underline;
color:rgba(166,198,198,1);
position: absolute;
right: 0;
cursor: pointer;
}
.approvalDetails .allStep li .line{
width:57px;
display: inline-block;
border-bottom: 1px dashed #FFA475;
margin:0 10px;
position: relative;
top: -7px;
}
.approvalDetails .allStep li{
display: inline-block;
font-size: 12px;
font-family: "宋体";
}
.approvalDetails .allStep .circle img{
width: 100%;
height: 100%;
}
.approvalDetails .allStep .circle .circleSpan{
display: inline-block;
width:16px;
height:16px;
background:rgba(232,232,232,1);
border-radius:50%;
}
.approvalDetails .allStep .circle{
display: inline-block;
width:16px;
height:16px;
border-radius:50%;
}
.approvalDetails .zcInfo .el-col {
font-size: 12px;
margin-top: 20px;
color:#111111;
}
.approvalDetails .zcInfo .el-col span:nth-child(1){
color:#999999;
display: inline-block;
width: 85px;
}
.approvalDetails .underline{
display: block;
width:101px;
height:2px;
background:rgba(40,202,204,1);
position: absolute;
bottom: 0;
}
.approvalDetails .titleSpan{
position: absolute;
left: 0;
}
.approvalDetails .titleSpan span{
display: inline-block;
width:44px;
height:44px;
line-height:44px;
background:rgba(40,202,204,0.3);
border-radius:50%;
font-size: 20px;
color: #28CACC;
text-align: center;
}
.approvalDetails .StateCol span{
width:60px;
height:26px;
line-height:26px;
border-radius:8px;
display: inline-block;
color:#fff;
text-align: center;
font-size: 12px;
font-family: "宋体";
}
.approvalDetails .StateCol .spz{
background:rgba(114,184,255,1);
}
.approvalDetails .StateCol .ytg{
background:#00D2D6;
}
.approvalDetails .StateCol .wtg{
background:#FFA475;
}
</style>
<template>
<div class="spotquery">
<div style="text-align:right;border-bottom:1px solid #E2E4EB;padding-bottom:10px">
<span class="pageTitle">审批管理</span>
<span class="ChangeTable">
<span @click="showTable=1,getList()" :class="showTable==1?'spanActive':''">待审核</span>
<span @click="showTable=2,getList()" :class="showTable==2?'spanActive':''">已审核</span>
<span @click="showTable=3,getList()" :class="showTable==3?'spanActive':''">我发起</span>
</span>
<span @click="morequery=!morequery" style="display:inline-flex;align-items:center;cursor: pointer;" class="f12 cd6">
<span style="margin-right:5px">高级查询</span>
<img 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 @click="getList" style="margin-left:20px" class="chaxunSpan">查询</span>
<!-- <span @click="chongzhi" style="margin-left:20px" class="addSpan">重置</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>
<ul v-show="morequery" class="queryul">
<li style="float:left">
<!-- :alwaysOpen="true" -->
<treeselect style="height:50px;width:215px;" :options="treedata" v-model="msg.CategoryId" placeholder="分类"
:normalizer="normalizer" />
</li>
<li>
<el-input class="w200" size="small" v-model="msg.OrderCode" placeholder="派发单编号"></el-input>
</li>
<li>
<el-input class="w200" size="small" v-model="msg.PropertyNum" placeholder="资产编码"></el-input>
</li>
<li>
<el-input class="w200" size="small" v-model="msg.PropertyName" placeholder="资产名称"></el-input>
</li>
<li>
<el-select size="small" v-model="msg.AuditStatus" placeholder="状态">
<el-option
v-for="item in StateEnumList"
:key="item.Id"
:label="item.Name"
:value="item.Id">
</el-option>
</el-select>
</li>
<li>
<el-select filterable size="small" v-model="msg.EmployeeId" placeholder="领取人" :filter-method="getEmployee1">
<el-option
v-for="item in EmployeeList1"
:key="item.EmployeeId"
:label="item.EmName"
:value="item.EmployeeId">
</el-option>
</el-select>
</li>
<li>
<el-select filterable size="small" v-model="msg.Source" placeholder="来源">
<el-option
v-for="item in SourceList"
:key="item.Id"
:label="item.Name"
:value="item.Id">
</el-option>
</el-select>
</li>
<li>
<el-date-picker
v-model="dateList"
type="daterange"
range-separator="至"
value-format="yyyy-MM-dd"
start-placeholder="派发开始时间"
end-placeholder="派发结束日期">
</el-date-picker>
</li>
</ul>
<table v-loading="loading" style="margin-top:10px" class="myTable noHoverTable" border="0" cellspacing="0" cellpadding="0">
<thead>
<th>状态</th>
<th>领用公司</th>
<th>领用部门</th>
<th>领用人</th>
<th>领用时间</th>
<th>分类名称</th>
<th>资产名称</th>
<th>资产编号</th>
<th>品牌名称</th>
<th>操作人</th>
<th width="150px">操作</th>
</thead>
<tbody>
<template v-for="item in tableData">
<tr :class="index==0?'trNobottom':''" v-for="(delist,index) in item.DetailList" :key="delist.Id">
<td :rowspan="item.DetailList.length" v-if="index==0">
<span class="ColorSpan huangSpan" v-if="item.AuditStatus==2"></span>
<span class="ColorSpan greenSpan" v-if="item.AuditStatus==1"></span>
<span class="ColorSpan purpleSpan" v-if="item.AuditStatus==3"></span>
<span class="ColorSpan buleSpan" v-if="item.AuditStatus==4"></span>
<span class="ColorSpan redSpan" v-if="item.AuditStatus==5"></span>
{{item.AuditStatusName}}
</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.BranchName}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.DepartmentName}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.EmName}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.Time}}</td>
<td>{{delist.CategoryName}}</td>
<td>{{delist.PropertyName}}</td>
<td>{{delist.PropertyNum}}</td>
<td>{{delist.BrandName}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.UpdateBy}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">
<el-tooltip class="item" effect="dark" content="查看" placement="top">
<img @click="See(item,'approvalDetails','chakan')" style="width:24px;height:24px" src="../../assets/img/chakan.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="审批" placement="top">
<img v-show="showTable==1" @click="See(item,'approvalDetails','shenpi')" style="width:24px;height:24px" src="../../assets/img/shenpi.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="转交" placement="top">
<img v-show="showTable==1" @click="ZhuanJiao(item)" style="width:24px;height:24px" src="../../assets/img/huifu.png" alt="">
</el-tooltip>
<!-- <span class="commonStyle hoverSpan2"></span> -->
</td>
</tr>
</template>
<tr v-show="tableData.length==0">
<td colspan="12" align="center">暂无数据</td>
</tr>
</tbody>
</table>
<el-pagination
@current-change="currentChange"
background
:page-size="msg.pageSize"
layout="prev, pager, next"
:total="total">
</el-pagination>
<el-dialog
title="转交"
:visible.sync="dialogState"
width="530px">
<el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0px">
<div class="basefix">
<el-form-item label="" prop="AuditEmId">
<span class="label">转交人</span>
<el-select filterable size="small" v-model="addMsg.AuditEmId" placeholder="转交人" :filter-method="getEmployee2">
<el-option
v-for="item in EmployeeList2"
:key="item.EmployeeId"
:label="item.EmName"
:value="item.EmployeeId">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="">
<span class="label">备注</span>
<el-input v-model="addMsg.Description"></el-input>
</el-form-item>
</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>
</div>
</template>
<script>
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default {
name: 'Supplierman',
components: {
Treeselect
},
data(){
return{
EmployeeList1:[],
EmployeeList2:[],
StateEnumList:[],
showTable:1,
morequery:false,
currentPage:1,
tableData: [],
loading:false,
total:0,
treedata:[],
SourceList:[],
normalizer(node) {
var obj = {
id: node.Id,
label: node.Name,
};
if (node.ChildList != null && node.ChildList.length > 0) {
obj.children = node.ChildList;
}
return obj;
},
msg:{
pageIndex:1,
pageSize:10,
OrderCode:'',
PropertyNum:'',
PropertyName:'',
CategoryId:null,
AuditStatus:'',
EmployeeId:'',
StartTime:'',
EndTime:'',
Source:'',
},
addMsg:{
AuditEmId:'',
WorkFlowId:'',
TransferEmpId:'',
Description:'',
},
dialogtitle:'新增',
dialogState:false,
AuditList:[],
SignList:[],
rules:{
AuditEmId: [
{ required: true, message: '请选择转交人', trigger: 'change' }
]
},
nodemsg:{
ParentId:-1,
Tier:'',
Name:'',
Type:1,
},
dateList:[],
EmName:'',
}
},
mounted(){
this.getList();
this.getNode();
this.getSource();
this.getStateEnum();
let userInfo = this.getLocalStorage();
this.addMsg.TransferEmpId=userInfo.EmployeeId;
},
methods:{
submitForm(formName) {
let arr=[];
arr.push(this.addMsg);
this.$refs[formName].validate((valid) => {
if (valid) {
this.apiJavaPost("/api/property/AuditCareOf",arr,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.dialogState=false;
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
ZhuanJiao(item){
this.dialogState=true;
console.log("item",item);
this.addMsg.WorkFlowId=item.Id;
},
See(item,path,type){
let shenpistr=type;
this.$router.push({
path: "/" + path,
query: {
Id:item.Id,
compType:shenpistr,
}
});
},
currentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
getEmployee1(val){
if(val!=''){
this.EmName=val;
this.getEmployee(1);
}
},
getEmployee2(val){
if(val!=''){
this.EmName=val;
this.getEmployee(2);
}
},
getEmployee(num){
this.apiJavaPost("/api/User/GetEmployeeList",{EmName:this.EmName},
res => {
if (res.data.resultCode === 1) {
if(num==1){
this.EmployeeList1=res.data.data;
}else{
this.EmployeeList2=res.data.data;
}
} else {
this.Error(res.data.message);
}
},
null
);
},
getStateEnum(){
this.apiJavaPost("/api/property/GetPropertyOrderStateEnumList",{},
res => {
if (res.data.resultCode === 1) {
this.StateEnumList=res.data.data;
console.log("this.StateEnumList",this.StateEnumList)
} else {
this.Error(res.data.message);
}
},
null
);
},
getList(){
if(this.dateList&&this.dateList.length>0){
this.msg.StartTime=this.dateList[0];
this.msg.EndTime=this.dateList[1];
}
else{
this.msg.StartTime='';
this.msg.EndTime='';
}
if(this.showTable==1){
this.getDaishenpi();
}
else if(this.showTable==2){
this.getYishenpi();
}
else if(this.showTable==3){
this.getMyFrom();
}
},
getDaishenpi(){
this.loading=true;
this.apiJavaPost("/api/property/GetPropertyWaitMyAuditPageList",this.msg,
res => {
this.loading=false;
// console.log("res",res);
if (res.data.resultCode === 1) {
this.tableData=res.data.data.pageData;
this.total=res.data.data.count;
} else {
this.Error(res.data.message);
}
},
null
);
},
getYishenpi(){
this.loading=true;
this.apiJavaPost("/api/property/GetPropertyMyAuditedPageList",this.msg,
res => {
this.loading=false;
// console.log("res",res);
if (res.data.resultCode === 1) {
this.tableData=res.data.data.pageData;
this.total=res.data.data.count;
} else {
this.Error(res.data.message);
}
},
null
);
},
getMyFrom(){
this.loading=true;
this.apiJavaPost("/api/property/GetPropertyMyStartedPageList",this.msg,
res => {
this.loading=false;
// console.log("res",res);
if (res.data.resultCode === 1) {
this.tableData=res.data.data.pageData;
this.total=res.data.data.count;
} 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);
}
},
null
);
},
getSource(){
this.apiJavaPost("/api/property/GetPropertySourceEnumList",{},
res => {
if (res.data.resultCode === 1) {
this.SourceList=res.data.data;
console.log("this.SourceList",this.SourceList)
} else {
this.Error(res.data.message);
}
},
null
);
},
},
}
</script>
<style scoped>
.spotquery{
padding:20px 30px;
box-sizing: border-box;
background: #F8FAFB;
}
</style>
...@@ -152,8 +152,23 @@ export default { ...@@ -152,8 +152,23 @@ export default {
ChangeAble(item,num){ ChangeAble(item,num){
this.addMsg.Type=item.Type; this.addMsg.Type=item.Type;
this.addMsg.Enabled=num; this.addMsg.Enabled=num;
let title='';
if(num==1){
title="启用";
}else{
title="禁用";
}
this.addMsg.AuditType=this.showTable; this.addMsg.AuditType=this.showTable;
this.$confirm(`确认${title}该流程?`,"提示", {
confirmButtonText:"确定",
cancelButtonText: "取消",
type: 'warning'
}).then(() => {
this.Save(); this.Save();
}).catch(() => {
});
}, },
currentChange(val) { currentChange(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
......
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
<div style="text-align:right;border-bottom:1px solid #E2E4EB;padding-bottom:10px"> <div style="text-align:right;border-bottom:1px solid #E2E4EB;padding-bottom:10px">
<span class="pageTitle">派发&退库</span> <span class="pageTitle">派发&退库</span>
<span class="ChangeTable"> <span class="ChangeTable">
<span @click="showTable=1" :class="showTable==1?'spanActive':''">派发</span> <span @click="showTable=1,morequery=false,getList()" :class="showTable==1?'spanActive':''">派发</span>
<span @click="showTable=2" :class="showTable==2?'spanActive':''">退库</span> <span @click="showTable=2,morequery=false,getList()" :class="showTable==2?'spanActive':''">退库</span>
</span> </span>
<span @click="morequery=!morequery" style="display:inline-flex;align-items:center;cursor: pointer;" 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>
...@@ -17,23 +17,27 @@ ...@@ -17,23 +17,27 @@
<img style="width:10px;height:10px;margin-right:6px" src="../../assets/img/add.png" alt=""> <img style="width:10px;height:10px;margin-right:6px" src="../../assets/img/add.png" alt="">
新增</span> 新增</span>
</div> </div>
<!-- 派发 -->
<div v-show="showTable==1">
<ul v-show="morequery" class="queryul"> <ul v-show="morequery" class="queryul">
<li> <li style="float:left">
<el-input class="w200" size="small" v-model="msg.StockInNum" placeholder="入库单编码"></el-input> <!-- :alwaysOpen="true" -->
<treeselect style="height:50px;width:200px;" :options="treedata" v-model="msg.CategoryId" placeholder="分类"
:normalizer="normalizer" />
</li> </li>
<li> <li>
<el-input class="w200" size="small" v-model="msg.SuppliesNum" placeholder="耗材编码"></el-input> <el-input class="w200" size="small" v-model="msg.OrderCode" placeholder="派发单编号"></el-input>
</li> </li>
<li> <li>
<el-input class="w200" size="small" v-model="msg.SuppliesName" placeholder="耗材名称"></el-input> <el-input class="w200" size="small" v-model="msg.PropertyNum" placeholder="资产编码"></el-input>
</li> </li>
<li> <li>
<el-input class="w200" size="small" v-model="msg.SupplierName" placeholder="供应商"></el-input> <el-input class="w200" size="small" v-model="msg.PropertyName" placeholder="资产名称"></el-input>
</li> </li>
<li> <li>
<el-select size="small" v-model="msg.WarehouseId" placeholder="仓库"> <el-select size="small" v-model="msg.AuditStatus" placeholder="状态">
<el-option <el-option
v-for="item in getWareHouseList" v-for="item in StateEnumList"
:key="item.Id" :key="item.Id"
:label="item.Name" :label="item.Name"
:value="item.Id"> :value="item.Id">
...@@ -57,8 +61,8 @@ ...@@ -57,8 +61,8 @@
type="daterange" type="daterange"
range-separator="至" range-separator="至"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
start-placeholder="购置开始日期" start-placeholder="派发开始时间"
end-placeholder="购置结束日期"> end-placeholder="派发结束日期">
</el-date-picker> </el-date-picker>
</li> </li>
</ul> </ul>
...@@ -66,49 +70,45 @@ ...@@ -66,49 +70,45 @@
<div class="overflowY"> <div class="overflowY">
<table style="margin-top:10px" class="myTable noHoverTable" v-loading="loading" border="0" cellspacing="0" cellpadding="0"> <table style="margin-top:10px" class="myTable noHoverTable" v-loading="loading" border="0" cellspacing="0" cellpadding="0">
<thead> <thead>
<th>出库状态</th> <th>状态</th>
<th>出库单编码</th> <th>领用公司</th>
<th>仓库名称</th> <th>领用部门</th>
<!-- <th>供应商名称</th> --> <th>领用人</th>
<th>出库时间</th> <th>领用时间</th>
<th>分类名称</th> <th>分类名称</th>
<th>耗材名称</th> <th>资产名称</th>
<th>资产编号</th>
<th>品牌名称</th> <th>品牌名称</th>
<th>库存</th> <th>操作人</th>
<th>数量</th>
<th width="150px">操作</th> <th width="150px">操作</th>
</thead> </thead>
<tbody> <tbody>
<template v-for="item in tableData"> <template v-for="item in tableData">
<tr :class="index==0?'trNobottom':''" v-for="(delist,index) in item.DetailList" :key="delist.Id"> <tr :class="index==0?'trNobottom':''" v-for="(delist,index) in item.DetailList" :key="delist.Id">
<td :rowspan="item.DetailList.length" v-if="index==0"> <td :rowspan="item.DetailList.length" v-if="index==0">
<!-- <span class="commonStyle hoverSpan1"></span> --> <span class="ColorSpan huangSpan" v-if="item.AuditStatus==2"></span>
{{item.StockOutStateStr}} <span class="ColorSpan greenSpan" v-if="item.AuditStatus==1"></span>
<span class="ColorSpan purpleSpan" v-if="item.AuditStatus==3"></span>
<span class="ColorSpan buleSpan" v-if="item.AuditStatus==4"></span>
<span class="ColorSpan redSpan" v-if="item.AuditStatus==5"></span>
{{item.AuditStatusName}}
</td> </td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.StockOutNum}}</td> <td :rowspan="item.DetailList.length" v-if="index==0">{{item.BranchName}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.WareHouseName}}</td> <td :rowspan="item.DetailList.length" v-if="index==0">{{item.DepartmentName}}</td>
<!-- <td :rowspan="item.DetailList.length" v-if="index==0">{{item.SupplierName}}</td> --> <td :rowspan="item.DetailList.length" v-if="index==0">{{item.EmName}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.StockOutDate}}</td> <td :rowspan="item.DetailList.length" v-if="index==0">{{item.Time}}</td>
<td>{{delist.CategoryName}}</td> <td>{{delist.CategoryName}}</td>
<td>{{delist.SuppliesName}}</td> <td>{{delist.PropertyName}}</td>
<td>{{delist.PropertyNum}}</td>
<td>{{delist.BrandName}}</td> <td>{{delist.BrandName}}</td>
<td>{{delist.InventoryNum}}</td> <td :rowspan="item.DetailList.length" v-if="index==0">{{delist.UpdateBy}}</td>
<td>{{delist.Number}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0"> <td :rowspan="item.DetailList.length" v-if="index==0">
<!-- <el-tooltip class="item" effect="dark" content="编辑" placement="top">
<img @click="Edit(item)" style="width:24px;height:24px" src="../../assets/img/edit.png" alt="">
</el-tooltip> -->
<el-tooltip class="item" effect="dark" content="删除" placement="top"> <el-tooltip class="item" effect="dark" content="删除" placement="top">
<img @click="Delete(item)" style="width:24px;height:24px" src="../../assets/img/delete.png" alt=""> <img @click="Delete(item)" style="width:24px;height:24px" src="../../assets/img/delete.png" alt="">
</el-tooltip> </el-tooltip>
<el-tooltip class="item" effect="dark" content="取消出库单" placement="top"> <el-tooltip class="item" effect="dark" content="终止" placement="top">
<img v-show="item.StockOutState==1" @click="Quxiao(item)" style="width:24px;height:24px" src="../../assets/img/qx.png" alt=""> <img @click="End(item)" style="width:24px;height:24px" src="../../assets/img/jinyong.png" alt="">
</el-tooltip> </el-tooltip>
<!-- <el-tooltip class="item" effect="dark" content="恢复出库单" placement="top">
<span v-show="item.StockOutState==2" @click="Huifu(item)">恢复入库单</span>
</el-tooltip> -->
<!-- <span class="commonStyle hoverSpan2"></span> -->
</td> </td>
</tr> </tr>
...@@ -127,28 +127,214 @@ ...@@ -127,28 +127,214 @@
layout="prev, pager, next" layout="prev, pager, next"
:total="total"> :total="total">
</el-pagination> </el-pagination>
</div>
<!-- 退库 -->
<div v-show="showTable==2">
<ul v-show="morequery" class="queryul">
<li style="float:left">
<!-- :alwaysOpen="true" -->
<treeselect style="height:50px;width:200px;" :options="treedata" v-model="tuimsg.CategoryId" placeholder="分类"
:normalizer="normalizer" />
</li>
<li>
<el-input class="w200" size="small" v-model="tuimsg.OrderCode" placeholder="派发单编号"></el-input>
</li>
<li>
<el-input class="w200" size="small" v-model="tuimsg.PropertyNum" placeholder="资产编码"></el-input>
</li>
<li>
<el-input class="w200" size="small" v-model="tuimsg.PropertyName" placeholder="资产名称"></el-input>
</li>
<li>
<el-select size="small" v-model="tuimsg.AuditStatus" placeholder="状态">
<el-option
v-for="item in getWareHouseList"
:key="item.Id"
:label="item.Name"
:value="item.Id">
</el-option>
</el-select>
</li>
<li>
<el-select filterable size="small" v-model="tuimsg.EmployeeId" placeholder="领取人" :filter-method="getEmployee3">
<el-option
v-for="item in EmployeeList1"
:key="item.EmployeeId"
:label="item.EmName"
:value="item.EmployeeId">
</el-option>
</el-select>
</li>
<li>
<el-date-picker
v-model="dateList3"
type="daterange"
range-separator="至"
value-format="yyyy-MM-dd"
start-placeholder="退库开始时间"
end-placeholder="退库结束日期">
</el-date-picker>
</li>
</ul>
<!-- :style='{"height":tableHeight+"px"}' -->
<div class="overflowY">
<table style="margin-top:10px" class="myTable noHoverTable" v-loading="loading" border="0" cellspacing="0" cellpadding="0">
<thead>
<th>状态</th>
<th>退库时间</th>
<th>分类名称</th>
<th>资产名称</th>
<th>资产编号</th>
<th>品牌名称</th>
<th>使用人</th>
<th width="150px">操作</th>
</thead>
<tbody>
<template v-for="item in tableData2">
<tr :class="index==0?'trNobottom':''" v-for="(delist,index) in item.DetailList" :key="delist.Id">
<td :rowspan="item.DetailList.length" v-if="index==0">
<span class="ColorSpan huangSpan" v-if="item.AuditStatus==2"></span>
<span class="ColorSpan greenSpan" v-if="item.AuditStatus==1"></span>
<span class="ColorSpan purpleSpan" v-if="item.AuditStatus==3"></span>
<span class="ColorSpan buleSpan" v-if="item.AuditStatus==4"></span>
<span class="ColorSpan redSpan" v-if="item.AuditStatus==5"></span>
{{item.AuditStatusName}}
</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{item.Time}}</td>
<td>{{delist.CategoryName}}</td>
<td>{{delist.PropertyName}}</td>
<td>{{delist.PropertyNum}}</td>
<td>{{delist.BrandName}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">{{delist.CancelStockEmployeeName}}</td>
<td :rowspan="item.DetailList.length" v-if="index==0">
<el-tooltip class="item" effect="dark" content="删除" placement="top">
<img @click="DeleteTuiku(item)" style="width:24px;height:24px" src="../../assets/img/delete.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="终止" placement="top">
<img @click="EndTuiku(item)" style="width:24px;height:24px" src="../../assets/img/jinyong.png" alt="">
</el-tooltip>
</td>
</tr>
</template>
<tr v-show="tableData2.length==0">
<td colspan="12" align="center">暂无数据</td>
</tr>
</tbody>
</table>
</div>
<el-pagination class="myPageBottom"
@current-change="currentChange2"
background
:page-size="msg.pageSize"
layout="prev, pager, next"
:total="total">
</el-pagination>
</div>
<el-dialog <el-dialog
title="出库管理" title="派发单"
:visible.sync="dialogState" :visible.sync="dialogState"
top="2%" top="2%"
width="815px"> width="815px">
<el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0px"> <el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0px">
<div class="basefix"> <div class="basefix">
<el-form-item label="" prop="WarehouseId">
<span class="label">仓库</span> <el-form-item label="" prop="EmployeeId">
<el-select size="mini" v-model="addMsg.WarehouseId" placeholder="请选择"> <span class="label">领取人</span>
<el-select filterable size="small" v-model="addMsg.EmployeeId" placeholder="领取人" :filter-method="getEmployee2">
<el-option <el-option
v-for="item in getWareHouseList" v-for="item in EmployeeList2"
:key="item.Id" :key="item.EmployeeId"
:label="item.Name" :label="item.EmName"
:value="item.Id"> :value="item.EmployeeId">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="" prop="Time">
<span class="label">领用时间</span>
<el-date-picker
size="mini"
v-model="addMsg.Time"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择日期">
</el-date-picker>
</el-form-item>
<el-form-item label=""> <el-form-item label="">
<span class="label">备注</span>
<el-input size="small" v-model="addMsg.Remark" placeholder="请输入"></el-input>
</el-form-item>
</div>
<div class="chooseDiv">
<span @click="OpenWldig">
<img style="width:10px;height:10px" src="../../assets/img/add.png" alt="">
选择资产
</span>
<span @click="ycwuitemList" style="margin-left:20px">
<span class="f20">-</span>
移除资产
</span>
</div>
<div class="myScroll" style="overflow:scroll;max-height:300px;margin-top:20px">
<table style="width:1250px;" class="myTable" border="0" cellspacing="0" cellpadding="0">
<thead>
<th><input class="color-input-red" type="checkbox" v-model="ItemisCkedAll" @click='ItemcheckAll()'></th>
<th>资产状态</th>
<th>资产编码</th>
<th>资产名称</th>
<th>分类名称</th>
<th>品牌名称</th>
<th>金额</th>
<th>购置日期</th>
<th>使用状态</th>
<th>型号</th>
<th>使用人名称</th>
</thead>
<tbody>
<tr v-for="(item,index) in wlItemList" :key="index">
<td>
<input class="color-input-red" type="checkbox" v-model="ItemCheckList" :value="item" @change="ItemcheckOne">
</td>
<td>{{item.PropertyStatusName}}</td>
<td>{{item.PropertyNum}}</td>
<td>{{item.Name}}</td>
<td>{{item.CategoryName}}</td>
<td>{{item.BrandName}}</td>
<td>{{item.Money}}</td>
<td>{{item.BuyDate}}</td>
<td>{{item.UseStatusName}}</td>
<td>{{item.PropertyModel}}</td>
<td>{{item.EmName}}</td>
</tr>
<tr v-show="wlItemList.length==0">
<td colspan="12" align="center">暂无数据</td>
</tr>
</tbody>
</table>
</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
title="退库单"
:visible.sync="dialogState1"
top="2%"
width="815px">
<el-form class="MyEditForm" :model="addMsg1" :rules="rules2" ref="addMsg1" label-width="0px">
<div class="basefix">
<!-- <el-form-item label="" prop="EmployeeId">
<span class="label">领取人</span> <span class="label">领取人</span>
<el-select filterable size="small" v-model="addMsg.EmployeeId" placeholder="使用人" :filter-method="getEmployee2"> <el-select filterable size="small" v-model="addMsg1.EmployeeId" placeholder="领取人" :filter-method="getEmployee2">
<el-option <el-option
v-for="item in EmployeeList2" v-for="item in EmployeeList2"
:key="item.EmployeeId" :key="item.EmployeeId"
...@@ -156,12 +342,12 @@ ...@@ -156,12 +342,12 @@
:value="item.EmployeeId"> :value="item.EmployeeId">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<el-form-item label="" prop="StockOutDate"> <el-form-item label="" prop="BackTime">
<span class="label">出库日期</span> <span class="label">退库时间</span>
<el-date-picker <el-date-picker
size="mini" size="mini"
v-model="addMsg.StockOutDate" v-model="addMsg1.BackTime"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="选择日期"> placeholder="选择日期">
...@@ -169,43 +355,49 @@ ...@@ -169,43 +355,49 @@
</el-form-item> </el-form-item>
<el-form-item label=""> <el-form-item label="">
<span class="label">备注</span> <span class="label">备注</span>
<el-input size="small" v-model="addMsg.Remark" placeholder="请输入"></el-input> <el-input size="small" v-model="addMsg1.Remark" placeholder="请输入"></el-input>
</el-form-item> </el-form-item>
</div> </div>
<div class="chooseDiv"> <div class="chooseDiv">
<span @click="OpenWldig"> <span @click="OpenWldig">
<img style="width:10px;height:10px" src="../../assets/img/add.png" alt=""> <img style="width:10px;height:10px" src="../../assets/img/add.png" alt="">
选择物料 选择资产
</span> </span>
<span @click="ycwuitemList" style="margin-left:20px"> <span @click="ycwuitemList" style="margin-left:20px">
<span class="f20">-</span> <span class="f20">-</span>
出物料 除资产
</span> </span>
</div> </div>
<div class="myScroll" style="overflow:scroll;max-height:300px;margin-top:20px"> <div class="myScroll" style="overflow:scroll;max-height:300px;margin-top:20px">
<table class="myTable" border="0" cellspacing="0" cellpadding="0"> <table style="width:1250px;" class="myTable" border="0" cellspacing="0" cellpadding="0">
<thead> <thead>
<th><input class="color-input-red" type="checkbox" v-model="ItemisCkedAll" @click='ItemcheckAll()'></th> <th><input class="color-input-red" type="checkbox" v-model="ItemisCkedAll" @click='ItemcheckAll()'></th>
<th>档案编码</th> <th>资产状态</th>
<th>物料名称</th> <th>资产编码</th>
<th>资产名称</th>
<th>分类名称</th> <th>分类名称</th>
<th>品牌</th> <th>品牌名称</th>
<th>当前库存</th> <th>金额</th>
<th width="80px"><span class="cred">*出库数量</span></th> <th>购置日期</th>
<th width="120px">备注</th> <th>使用状态</th>
<th>型号</th>
<th>使用人名称</th>
</thead> </thead>
<tbody> <tbody>
<tr v-for="(item,index) in wlItemList" :key="index"> <tr v-for="(item,index) in wlItemList" :key="index">
<td> <td>
<input class="color-input-red" type="checkbox" v-model="ItemCheckList" :value="item" @change="ItemcheckOne"> <input class="color-input-red" type="checkbox" v-model="ItemCheckList" :value="item" @change="ItemcheckOne">
</td> </td>
<td>{{item.SuppliesNum}}</td> <td>{{item.PropertyStatusName}}</td>
<td>{{item.SuppliesName}}</td> <td>{{item.PropertyNum}}</td>
<td>{{item.Name}}</td>
<td>{{item.CategoryName}}</td> <td>{{item.CategoryName}}</td>
<td>{{item.BrandName}}</td> <td>{{item.BrandName}}</td>
<td>{{item.InventoryNum}}</td> <td>{{item.Money}}</td>
<td><el-input @input="changeNUmber(item,index)" v-model="item.Number"></el-input></td> <td>{{item.BuyDate}}</td>
<td><el-input v-model="item.Remark"></el-input></td> <td>{{item.UseStatusName}}</td>
<td>{{item.PropertyModel}}</td>
<td>{{item.EmName}}</td>
</tr> </tr>
<tr v-show="wlItemList.length==0"> <tr v-show="wlItemList.length==0">
<td colspan="12" align="center">暂无数据</td> <td colspan="12" align="center">暂无数据</td>
...@@ -216,14 +408,14 @@ ...@@ -216,14 +408,14 @@
</div> </div>
<div class="btnformItem"> <div class="btnformItem">
<span class="submitBtn" type="primary" @click="submitForm('addMsg')">确定出库</span> <span class="submitBtn" type="primary" @click="submitForm1('addMsg1')">确定</span>
<span class="exitBtn" @click="dialogState=false">取消</span> <span class="exitBtn" @click="dialogState1=false">取消</span>
</div> </div>
</el-form> </el-form>
</el-dialog> </el-dialog>
<!-- 选择物料 --> <!-- 选择资产 -->
<el-dialog <el-dialog
title="选择物料" title="选择资产"
:visible.sync="wuliaodig" :visible.sync="wuliaodig"
top="3%" top="3%"
width="750px"> width="750px">
...@@ -232,34 +424,32 @@ ...@@ -232,34 +424,32 @@
<table style="width:1250px;" class="myTable" border="0" cellspacing="0" cellpadding="0"> <table style="width:1250px;" class="myTable" border="0" cellspacing="0" cellpadding="0">
<thead> <thead>
<th><input class="color-input-red" type="checkbox" v-model="wlisCkedAll" @click='wlcheckAll()'></th> <th><input class="color-input-red" type="checkbox" v-model="wlisCkedAll" @click='wlcheckAll()'></th>
<th>物料名称</th> <th>资产状态</th>
<th><span class="cred">库存</span></th> <th>资产编码</th>
<th>资产名称</th>
<th>分类名称</th> <th>分类名称</th>
<th>品牌名</th> <th>品牌名</th>
<th>成本价</th> <th>金额</th>
<th>供应商名称</th> <th>购置日期</th>
<th>条形码号</th> <th>使用状态</th>
<th>型号</th> <th>型号</th>
<th>档案编码</th> <th>使用人名称</th>
<th>操作人</th>
<th>备注</th>
</thead> </thead>
<tbody> <tbody>
<tr v-for="(item,index) in wuliaoList" :key="index"> <tr v-for="(item,index) in wuliaoList" :key="index">
<td> <td>
<input class="color-input-red" type="checkbox" v-model="wlcheckList" :value="item" @change="wlcheckOne"> <input class="color-input-red" type="checkbox" v-model="wlcheckList" :value="item" @change="wlcheckOne">
</td> </td>
<td>{{item.PropertyStatusName}}</td>
<td>{{item.PropertyNum}}</td>
<td>{{item.Name}}</td> <td>{{item.Name}}</td>
<td class="cred">{{item.InventoryNum}}</td>
<td>{{item.CategoryName}}</td> <td>{{item.CategoryName}}</td>
<td>{{item.BrandName}}</td> <td>{{item.BrandName}}</td>
<td>{{item.Money}}</td> <td>{{item.Money}}</td>
<td>{{item.SupplierName}}</td> <td>{{item.BuyDate}}</td>
<td>{{item.Barcode}}</td> <td>{{item.UseStatusName}}</td>
<td>{{item.SuppliesModel}}</td> <td>{{item.PropertyModel}}</td>
<td>{{item.SuppliesNum}}</td> <td>{{item.EmName}}</td>
<td>{{item.UpdateBy}}</td>
<td>{{item.Remark}}</td>
</tr> </tr>
<tr v-show="wuliaoList.length==0"> <tr v-show="wuliaoList.length==0">
...@@ -285,44 +475,74 @@ ...@@ -285,44 +475,74 @@
</template> </template>
<script> <script>
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default { export default {
name: 'Supplierman', name: 'Supplierman',
components: {
Treeselect
},
data(){ data(){
return{ return{
StateEnumList:[],
showTable:1, showTable:1,
morequery:false, morequery:false,
currentPage:1, currentPage:1,
tableData: [], tableData: [],
loading:false, loading:false,
total:0, total:0,
tableData2: [],
total2:0,
msg:{ msg:{
pageIndex:1, pageIndex:1,
pageSize:10, pageSize:10,
StockOutNum:'', OrderCode:'',
SuppliesNum:'', PropertyNum:'',
SuppliesName:'', PropertyName:'',
SupplierName:'', CategoryId:null,
AuditStatus:'',
EmployeeId:'',
StartTime:'', StartTime:'',
EndTime:'', EndTime:'',
WarehouseId:'',
EmployeeId:'',
}, },
addMsg:{ addMsg:{
Id:0, Id:0,
WarehouseId:'', EmployeeId:'',
StockOutDate:'', Time:'',
Remark:'',
DetailList:[],
},
addMsg1:{
Id:0,
EmployeeId:'',
Time:'',
Remark:'', Remark:'',
DetailList:[], DetailList:[],
}, },
dialogState:false, dialogState:false,
dialogState1:false,
rules:{ rules:{
StockOutDate: [ Time: [
{ type: 'string', required: true, message: '请选择日期', trigger: 'change' }
],
EmployeeId: [
{ required: true, message: '请选择领取人', trigger: 'change' }
],
},
rules1:{
Time: [
{ type: 'string', required: true, message: '请选择日期', trigger: 'change' } { type: 'string', required: true, message: '请选择日期', trigger: 'change' }
], ],
WarehouseId: [ EmployeeId: [
{ required: true, message: '请选择仓库', trigger: 'change' } { required: true, message: '请选择领取人', trigger: 'change' }
], ],
}, },
rules2:{
BackTime: [
{ type: 'string', required: true, message: '请选择日期', trigger: 'change' }
]
},
getWareHouseList:[], getWareHouseList:[],
dateList:[], dateList:[],
wuliaototal:0, wuliaototal:0,
...@@ -348,6 +568,54 @@ export default { ...@@ -348,6 +568,54 @@ export default {
EmployeeList1:[], EmployeeList1:[],
EmployeeList2:[], EmployeeList2:[],
EmName:'', EmName:'',
treedata:[],
nodemsg:{
ParentId:-1,
Tier:'',
Name:'',
Type:1,
},
normalizer(node) {
var obj = {
id: node.Id,
label: node.Name,
};
if (node.ChildList != null && node.ChildList.length > 0) {
obj.children = node.ChildList;
}
return obj;
},
zichanmsg:{
pageIndex:1,
pageSize:10,
Name:'',
PropertyNum:'',
SerialNumber:'',
CategoryId:'',
PropertyStatus:'',
EmployeeId:'',
SupplierId:'',
StartTime:'',
EndTime:'',
},
zctotal:0,
zctableData:[],
EmployeeList3:[],
EmployeeList4:[],
dateList3:[],
tuimsg:{
pageIndex:1,
pageSize:10,
OrderCode:'',
PropertyNum:'',
PropertyName:'',
CategoryId:null,
AuditStatus:'',
EmployeeId:'',
BackSTime:'',
BackETime:'',
},
} }
}, },
created(){ created(){
...@@ -355,14 +623,23 @@ export default { ...@@ -355,14 +623,23 @@ export default {
}, },
mounted(){ mounted(){
this.getList(); this.getList();
this.getWareHouse(); this.getNode();
// this.getEmployee(); this.getStateEnum();
}, },
methods:{ methods:{
changeNUmber(item,index){
this.$forceUpdate() 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);
}
},
null
);
}, },
getEmployee1(val){ getEmployee1(val){
if(val!=''){ if(val!=''){
...@@ -376,15 +653,33 @@ export default { ...@@ -376,15 +653,33 @@ export default {
this.getEmployee(2); this.getEmployee(2);
} }
}, },
getEmployee3(val){
if(val!=''){
this.EmName=val;
this.getEmployee(3);
}
},
getEmployee4(val){
if(val!=''){
this.EmName=val;
this.getEmployee(4);
}
},
getEmployee(num){ getEmployee(num){
this.apiJavaPost("/api/User/GetEmployeeList",{EmName:this.EmName}, this.apiJavaPost("/api/User/GetEmployeeList",{EmName:this.EmName},
res => { res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
if(num==1){ if(num==1){
this.EmployeeList1=res.data.data; this.EmployeeList1=res.data.data;
}else{ }
else if(num==2){
this.EmployeeList2=res.data.data; this.EmployeeList2=res.data.data;
}
else if(num==3){
this.EmployeeList3=res.data.data;
}
else if(num==4){
this.EmployeeList4=res.data.data;
} }
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
...@@ -393,6 +688,18 @@ export default { ...@@ -393,6 +688,18 @@ export default {
null null
); );
}, },
getStateEnum(){
this.apiJavaPost("/api/property/GetPropertyOrderStateEnumList",{},
res => {
if (res.data.resultCode === 1) {
this.StateEnumList=res.data.data;
} else {
this.Error(res.data.message);
}
},
null
);
},
Huifu(item){ Huifu(item){
this.apiJavaPost("/api/Supplies/RecoverStockInInfo",{StockInId:item.Id}, this.apiJavaPost("/api/Supplies/RecoverStockInInfo",{StockInId:item.Id},
res => { res => {
...@@ -428,13 +735,13 @@ export default { ...@@ -428,13 +735,13 @@ export default {
if(this.ItemCheckList.length==0){ if(this.ItemCheckList.length==0){
return; return;
} }
this.$confirm("确认移出物料?","提示", { this.$confirm("确认移出资产?","提示", {
confirmButtonText:"确定", confirmButtonText:"确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
var set=this.ItemCheckList.map(item=>item.Id) var set=this.ItemCheckList.map(item=>item.Id)
var resArr=this.wlItemList.filter(item=>!set.includes(item.SuppliesId)) var resArr=this.wlItemList.filter(item=>!set.includes(item.PropertyId))
this.wlItemList=resArr; this.wlItemList=resArr;
this.addMsg.Money=0; this.addMsg.Money=0;
this.wlItemList.forEach(x=>{ this.wlItemList.forEach(x=>{
...@@ -445,10 +752,6 @@ export default { ...@@ -445,10 +752,6 @@ export default {
}); });
}, },
OpenWldig(){ OpenWldig(){
if(this.addMsg.WarehouseId==''){
this.Error("请先选择仓库!");
return;
}
this.getWuliao(); this.getWuliao();
this.wuliaodig=true; this.wuliaodig=true;
this.wlcheckList=[]; this.wlcheckList=[];
...@@ -460,7 +763,7 @@ export default { ...@@ -460,7 +763,7 @@ export default {
}) })
let obj = {}; let obj = {};
let peon = this.wlItemList.reduce((cur,next) => { let peon = this.wlItemList.reduce((cur,next) => {
obj[next.SuppliesId] ? "" : obj[next.SuppliesId] = true && cur.push(next); obj[next.PropertyId] ? "" : obj[next.PropertyId] = true && cur.push(next);
return cur; return cur;
},[]) },[])
this.wlItemList=peon this.wlItemList=peon
...@@ -490,8 +793,13 @@ export default { ...@@ -490,8 +793,13 @@ export default {
this.getWuliao(); this.getWuliao();
}, },
getWuliao(){ getWuliao(){
this.wuliaomsg.WareHouseId=this.addMsg.WarehouseId; if(this.showTable==1){
this.apiJavaPost("/api/Supplies/GetMaterialPageList",this.wuliaomsg, this.zichanmsg.PropertyStatus=1;
}
else if(this.showTable==2){
this.zichanmsg.PropertyStatus=2;
}
this.apiJavaPost("/api/property/PropertyGetPageList",this.zichanmsg,
res => { res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
this.wuliaoList=res.data.data.pageData; this.wuliaoList=res.data.data.pageData;
...@@ -500,7 +808,7 @@ export default { ...@@ -500,7 +808,7 @@ export default {
data.forEach(item=>{ data.forEach(item=>{
item.Number=''; item.Number='';
item.Remark=''; item.Remark='';
item.SuppliesId=item.Id; item.PropertyId=item.Id;
}) })
this.wlcheckAllList=data; this.wlcheckAllList=data;
...@@ -511,51 +819,79 @@ export default { ...@@ -511,51 +819,79 @@ export default {
null null
); );
}, },
// 仓库列表
getWareHouse(){ addSupplier(){
this.apiJavaPost("/api/Supplies/GetWareHouseList",{Name:''}, if(this.showTable==1){
this.addMsg={
Id:0,
EmployeeId:'',
Time:'',
Remark:'',
DetailList:[],
}
this.wlItemList=[];
this.dialogState=true;
}else{
this.addMsg1={
Id:0,
BackTime:'',
Remark:'',
DetailList:[],
}
this.wlItemList=[];
this.dialogState1=true;
}
},
submitForm1(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
this.addMsg1.DetailList=[];
if(this.wlItemList.length==0){
this.Error("请选择资产!");
return;
}
for(let i=0;i<this.wlItemList.length;i++){
let obj={
PropertyId:this.wlItemList[i].PropertyId,
};
this.addMsg1.DetailList.push(obj);
}
this.apiJavaPost("/api/property/SetPropertyCancellingStocks",this.addMsg1,
res => { res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
this.getWareHouseList=res.data.data; this.getList();
this.Success(res.data.message)
this.dialogState1=false;
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
}, },
null null
); );
}, } else {
addSupplier(){ return false;
this.addMsg={
Id:0,
WarehouseId:'',
StockOutDate:'',
Remark:'',
DetailList:[],
} }
this.wlItemList=[]; });
this.dialogState=true;
}, },
submitForm(formName) { submitForm(formName) {
this.$refs[formName].validate((valid) => { this.$refs[formName].validate((valid) => {
if (valid) { if (valid) {
this.addMsg.DetailList=[]; this.addMsg.DetailList=[];
if(this.wlItemList.length==0){ if(this.wlItemList.length==0){
this.Error("请选择物料!"); this.Error("请选择资产!");
return; return;
} }
for(let i=0;i<this.wlItemList.length;i++){ for(let i=0;i<this.wlItemList.length;i++){
if(this.wlItemList[i].Number=='' || this.wlItemList[i].Number==0){
this.Error("出库数量不能为0!");
return;
}
let obj={ let obj={
SuppliesId:this.wlItemList[i].SuppliesId, PropertyId:this.wlItemList[i].PropertyId,
Number:this.wlItemList[i].Number,
Remark:this.wlItemList[i].Remark,
}; };
this.addMsg.DetailList.push(obj); this.addMsg.DetailList.push(obj);
} }
this.apiJavaPost("/api/Supplies/SetStockOutInfo",this.addMsg, this.apiJavaPost("/api/property/SetPropertyReceive",this.addMsg,
res => { res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
this.getList(); this.getList();
...@@ -577,7 +913,20 @@ export default { ...@@ -577,7 +913,20 @@ export default {
this.msg.pageIndex = val; this.msg.pageIndex = val;
this.getList(); this.getList();
}, },
currentChange2(val) {
this.tuimsg.pageIndex = val;
this.getList();
},
getList(){ getList(){
if(this.showTable==1){
this.getData1();
}
else if(this.showTable==2){
this.getData2 ();
}
},
getData1(){
if(this.dateList&&this.dateList.length>0){ if(this.dateList&&this.dateList.length>0){
this.msg.StartTime=this.dateList[0]; this.msg.StartTime=this.dateList[0];
this.msg.EndTime=this.dateList[1]; this.msg.EndTime=this.dateList[1];
...@@ -587,7 +936,7 @@ export default { ...@@ -587,7 +936,7 @@ export default {
this.msg.EndTime=''; this.msg.EndTime='';
} }
this.loading=true; this.loading=true;
this.apiJavaPost("/api/Supplies/GetStockOutPageList",this.msg, this.apiJavaPost("/api/property/GetPropertyReceivePageList",this.msg,
res => { res => {
this.loading=false; this.loading=false;
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
...@@ -600,24 +949,80 @@ export default { ...@@ -600,24 +949,80 @@ export default {
null null
); );
}, },
// Edit(item){ getData2(){
// if(item.StockInState==1){ if(this.dateList3&&this.dateList3.length>0){
// this.Error("入库单已完成,无法修改!") this.tuimsg.BackSTime=this.dateList[0];
// return; this.tuimsg.BackETime=this.dateList[1];
// } }
// this.dialogState=true; else{
// this.addMsg={ this.tuimsg.BackSTime='';
// Id:item.Id, this.tuimsg.BackETime='';
// WarehouseId:item.WarehouseId, }
// Remark:item.Remark, this.loading=true;
// StockOutDate:item.StockOutDate, this.apiJavaPost("/api/property/GetPropertyCancellingStocksPageList",this.tuimsg,
// Money:item.Money, res => {
// SupplierName:item.SupplierName, this.loading=false;
// SuppliesId:item.SuppliesId, if (res.data.resultCode === 1) {
// DetailList:[], this.tableData2=res.data.data.pageData;
// } this.total2=res.data.data.count;
// this.wlItemList=item.DetailList; } else {
// }, this.Error(res.data.message);
}
},
null
);
},
EndTuiku(item){
let Id=item.Id;
this.apiJavaPost("/api/property/CancelPropertyCancellingStocks",{ReceiveId:Id},
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
},
End(item){
let Id=item.Id;
this.apiJavaPost("/api/property/CancelPropertyReceive",{ReceiveId:Id},
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
},
DeleteTuiku(item){
let Id=item.Id;
this.$confirm("确认删除?","提示", {
confirmButtonText:"确定",
cancelButtonText: "取消",
type: 'warning'
}).then(() => {
this.apiJavaPost("/api/property/DelPropertyCancellingStocks",{ReceiveId: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('已取消删除!')
});
},
Delete(item){ Delete(item){
let Id=item.Id; let Id=item.Id;
this.$confirm("确认删除?","提示", { this.$confirm("确认删除?","提示", {
...@@ -625,7 +1030,7 @@ export default { ...@@ -625,7 +1030,7 @@ export default {
cancelButtonText: "取消", cancelButtonText: "取消",
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
this.apiJavaPost("/api/Supplies/DelStockOutInfo",{StockOutId:Id}, this.apiJavaPost("/api/property/DelPropertyReceive",{ReceiveId:Id},
res => { res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
this.getList(); this.getList();
...@@ -673,7 +1078,7 @@ export default { ...@@ -673,7 +1078,7 @@ export default {
<style> <style>
.chooseDiv>span{ .chooseDiv>span{
color:#00D2D6; color:#00D2D6;
padding:10px 20px; padding:6px 12px;
border:1px solid #00D2D6; border:1px solid #00D2D6;
border-radius:20px; border-radius:20px;
cursor: pointer; cursor: pointer;
......
...@@ -82,10 +82,11 @@ ...@@ -82,10 +82,11 @@
<tr v-for="(item,index) in tableData" :key="index"> <tr v-for="(item,index) in tableData" :key="index">
<td> <td>
<span class="commonStyle hoverSpan1"></span> <span class="commonStyle hoverSpan1"></span>
<span v-if="item.PropertyStatus==1" :class="`zczt${item.PropertyStatus}`" class="Commonzczt">空</span> <span class="ColorSpan huangSpan" v-if="item.PropertyStatus==1"></span>
<!-- <span v-if="item.PropertyStatus==2" :class="`zczt${item.PropertyStatus}`" class="Commonzczt">领</span> <span class="ColorSpan greenSpan" v-if="item.PropertyStatus==2"></span>
<span v-if="item.PropertyStatus==3" :class="`zczt${item.PropertyStatus}`" class="Commonzczt">借</span> <span class="ColorSpan redSpan" v-if="item.PropertyStatus==3"></span>
<span v-if="item.PropertyStatus==4" :class="`zczt${item.PropertyStatus}`" class="Commonzczt">调</span> --> <span class="ColorSpan buleSpan" v-if="item.PropertyStatus==4"></span>
<span class="ColorSpan purpleSpan" v-if="item.PropertyStatus==5 || item.PropertyStatus==7 || item.PropertyStatus==9 || item.PropertyStatus==6 || item.PropertyStatus==8"></span>
{{item.PropertyStatusName}} {{item.PropertyStatusName}}
</td> </td>
<td>{{item.PropertyNum}}</td> <td>{{item.PropertyNum}}</td>
...@@ -134,7 +135,7 @@ ...@@ -134,7 +135,7 @@
:title="dialogtitle" :title="dialogtitle"
:visible.sync="dialogState" :visible.sync="dialogState"
top="2%" top="2%"
width="770px"> width="975px">
<el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0px"> <el-form class="MyEditForm" :model="addMsg" :rules="rules" ref="addMsg" label-width="0px">
<div class="basefix"> <div class="basefix">
<el-form-item label="" prop="Name"> <el-form-item label="" prop="Name">
...@@ -636,6 +637,7 @@ export default { ...@@ -636,6 +637,7 @@ export default {
res => { res => {
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
this.PropertyStatusList=res.data.data; this.PropertyStatusList=res.data.data;
console.log("状态",this.PropertyStatusList)
} else { } else {
this.Error(res.data.message); this.Error(res.data.message);
} }
...@@ -671,7 +673,6 @@ export default { ...@@ -671,7 +673,6 @@ export default {
getEmployee(num){ getEmployee(num){
this.apiJavaPost("/api/User/GetEmployeeList",{EmName:this.EmName}, this.apiJavaPost("/api/User/GetEmployeeList",{EmName:this.EmName},
res => { res => {
this.loading=false;
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
if(num==1){ if(num==1){
this.EmployeeList1=res.data.data; this.EmployeeList1=res.data.data;
...@@ -729,7 +730,10 @@ export default { ...@@ -729,7 +730,10 @@ export default {
} }
</script> </script>
<style scoped> <style>
.assetsList .MyEditForm .el-form-item:nth-child(4n){
margin-right:0;
}
.assetsList .zczt1{ .assetsList .zczt1{
background: #FFE4D5; background: #FFE4D5;
color:#FFA87C; color:#FFA87C;
......
...@@ -104,7 +104,7 @@ export default { ...@@ -104,7 +104,7 @@ export default {
color:#333333; color:#333333;
padding:0; padding:0;
} }
.login .loginContent .el-input.is-active .el-input__inner, .el-input__inner:focus{ .login .loginContent .el-input.is-active .el-input__inner,.login .loginContent .el-input__inner:focus{
border-bottom: 2px solid #00D2D6!important; border-bottom: 2px solid #00D2D6!important;
} }
.loginDiv{ .loginDiv{
......
...@@ -6,18 +6,15 @@ ...@@ -6,18 +6,15 @@
<div style="margin-top:60px"> <div style="margin-top:60px">
<el-menu <el-menu
:unique-opened="true" :unique-opened="true"
@select="selectActive"
:default-active="defaulActive" :default-active="defaulActive"
class="el-menu-vertical-demo"> class="el-menu-vertical-demo">
<el-menu-item index="0" route="/home"> <el-menu-item index="0" route="/home">
<div class="menuDiv"> <div class="menuDiv">
<img v-if="defaulActive!=0" class="icon" src="../../assets/img/home.png" alt=""> <i class="iconfont icon-shouye"></i>
<img v-if="defaulActive==0" class="icon" src="../../assets/img/home1.png" alt="">
<span slot="title">首页</span> <span slot="title">首页</span>
</div> </div>
</el-menu-item> </el-menu-item>
<el-submenu index="1"> <!-- <el-submenu index="1">
<template slot="title"> <template slot="title">
<div class="menuDiv"> <div class="menuDiv">
<img v-if="defaulActive!=1" class="icon" src="../../assets/img/zc1.png" alt=""> <img v-if="defaulActive!=1" class="icon" src="../../assets/img/zc1.png" alt="">
...@@ -74,9 +71,23 @@ ...@@ -74,9 +71,23 @@
</div> </div>
</template> </template>
<el-menu-item-group class="itemgroup"> <el-menu-item-group class="itemgroup">
<el-menu-item index="4-1"><span>审批</span></el-menu-item> <el-menu-item index="4-1"><span>流程设置</span></el-menu-item>
<el-menu-item index="4-2"><span>审批管理</span></el-menu-item>
</el-menu-item-group>
</el-submenu> -->
<el-submenu :index="String(index+1)" v-for="(item,index) in menuList" :key="index">
<template slot="title">
<div class="menuDiv">
<i :class="[fontPub,idonfontList[index]]" ></i>
<span slot="title">{{item.MenuName}}</span>
</div>
</template>
<el-menu-item-group class="itemgroup">
<el-menu-item @click="goUrl(child)" v-for="(child,childIndex) in item.ChildMenu" :key="childIndex" :index="String(index+1)+'-'+String(childIndex+1)"><span>{{child.MenuName}}</span></el-menu-item>
</el-menu-item-group> </el-menu-item-group>
</el-submenu> </el-submenu>
</el-menu> </el-menu>
</div> </div>
...@@ -88,6 +99,8 @@ export default { ...@@ -88,6 +99,8 @@ export default {
name: '', name: '',
data(){ data(){
return{ return{
fontPub: "iconfont",
idonfontList:['icon-zichanguanli','icon-shu','icon-xitong','icon-shenpi'],
defaulActive:'0', defaulActive:'0',
route:{ route:{
'0':'/home', '0':'/home',
...@@ -104,7 +117,9 @@ export default { ...@@ -104,7 +117,9 @@ export default {
'3-1':'/AssetsClassification', '3-1':'/AssetsClassification',
'3-2':'/MaterialClassification', '3-2':'/MaterialClassification',
'3-3':'/Supplierman', '3-3':'/Supplierman',
'4-1':'/approval', '4-1':'/approvalset',
'4-2':'/approvalMan',
}, },
} }
...@@ -115,26 +130,24 @@ export default { ...@@ -115,26 +130,24 @@ export default {
this.defaulActive=key; this.defaulActive=key;
} }
}); });
this.getMenu();
}, },
methods:{ methods:{
selectActive(val){ goUrl(child){
this.defaulActive=val; this.$router.push({path: child.MenuUrl})
console.log("defaulActive",this.defaulActive)
console.log("route",this.route[val])
this.$router.push({path: this.route[val]})
}, },
handleOpen(key, keyPath) { getMenu(){
console.log(key, keyPath); let menu= this.getLocalStorage().UserMenu
this.menuList =menu[0].ChildMenu;
}, },
handleClose(key, keyPath) {
console.log(key, keyPath);
}
}, },
} }
</script> </script>
<style> <style>
.HeadNav .is-active .el-submenu__title i{
color:#fff!important;
}
.HeadNav .el-menu>.is-active .menuDiv{ .HeadNav .el-menu>.is-active .menuDiv{
width:146px; width:146px;
height:34px; height:34px;
...@@ -151,12 +164,12 @@ export default { ...@@ -151,12 +164,12 @@ export default {
.HeadNav .el-menu{ .HeadNav .el-menu{
border: none; border: none;
} }
.HeadNav .el-submenu__title i{ /* .HeadNav .el-submenu__title i{
color: #111111; color: #111111;
font-weight: bold; font-weight: bold;
font-size: 10px; font-size: 10px;
font-family: "宋体"; font-family: "宋体";
} } */
.HeadNav .el-submenu__title{ .HeadNav .el-submenu__title{
color: #111111; color: #111111;
font-size: 12px; font-size: 12px;
......
...@@ -13,8 +13,22 @@ ...@@ -13,8 +13,22 @@
</div> </div>
<div class="personDiv"> <div class="personDiv">
<img style="width:18px;height:22px" src="../../assets/img/news.png" alt=""> <img style="width:18px;height:22px" src="../../assets/img/news.png" alt="">
<el-popover
placement="bottom"
trigger="click">
<ul>
<li @click="LoginOut" style="cursor: pointer;">
<i style="color:#FFA475" class="iconfont icon-tuichudenglu"></i>
<span style="margin-left:6px">退出登录</span>
</li>
</ul>
<span slot="reference" style="display: inline-flex;align-items: center;cursor: pointer;">
<span style="margin-left:30px" class="f14"><span style="color:#BEBEBE">Hello</span>,{{zcuserInfo.emName}}</span> <span style="margin-left:30px" class="f14"><span style="color:#BEBEBE">Hello</span>,{{zcuserInfo.emName}}</span>
<img v-if="zcuserInfo.GroupPic!='' " :src="zcuserInfo.GroupPic" :onerror="defaultHeadImg" style="width:44px;height:44px;margin-left:29px" alt=""> <img v-if="zcuserInfo.GroupPic!='' " :src="zcuserInfo.GroupPic" :onerror="defaultHeadImg" style="width:44px;height:44px;margin-left:29px" alt="">
</span>
</el-popover>
</div> </div>
</div> </div>
...@@ -54,6 +68,12 @@ export default { ...@@ -54,6 +68,12 @@ export default {
this.$router.push({path: 'Home'}) this.$router.push({path: 'Home'})
} }
}, },
methods:{
LoginOut(){
localStorage.removeItem("zcuserInfo");
location.href='/'
},
},
} }
</script> </script>
...@@ -61,10 +81,11 @@ export default { ...@@ -61,10 +81,11 @@ export default {
@import "../../assets/css/reset.css"; @import "../../assets/css/reset.css";
@import "../../assets/css/vxetable.css"; @import "../../assets/css/vxetable.css";
.appContent .routerContent{ .appContent .routerContent{
padding-top: 70px; padding-top: 90px;
position: relative; position: relative;
box-sizing: border-box; box-sizing: border-box;
background: #F8FAFB; background: #F8FAFB;
} }
.appContent .routerContent>div{ .appContent .routerContent>div{
position: relative; position: relative;
...@@ -80,10 +101,12 @@ export default { ...@@ -80,10 +101,12 @@ export default {
z-index: 100; z-index: 100;
} }
.appContent .HeadDiv{ .appContent .HeadDiv{
position: absolute; position: fixed;
width: calc(100% - 214px); width: calc(100% - 214px);
top: 0; top: 0;
z-index: 200; z-index: 200;
background: #fff;
padding:20px 0;
} }
.appContent{ .appContent{
width: 100%; width: 100%;
......
...@@ -13,7 +13,7 @@ export default { ...@@ -13,7 +13,7 @@ export default {
Vue.prototype.domainManager = function () { Vue.prototype.domainManager = function () {
// var domainUrl = "http://test_reborn.oytour.com";//主域名 // var domainUrl = "http://test_reborn.oytour.com";//主域名
// var domainUrl = "http://reborn.oytour.com"; //主域名 // var domainUrl = "http://reborn.oytour.com"; //主域名
var domainUrl = "http://192.168.2.16:8083"; //主域名 var domainUrl = "http://192.168.2.18:8083"; //主域名
let locationName = window.location.hostname; let locationName = window.location.hostname;
if (this.isOnline()) { if (this.isOnline()) {
if (window.location.host.indexOf('testb2b.oytour.com') != -1) if (window.location.host.indexOf('testb2b.oytour.com') != -1)
...@@ -29,7 +29,7 @@ export default { ...@@ -29,7 +29,7 @@ export default {
// javaUrl: locationName.indexOf('oytour') !== -1 || locationName.indexOf('testb2b.oytour.com') !== -1 ? (locationName.indexOf('oytour') !== -1 ? "http://efficient.oytour.com" : "http://47.96.12.235:9001") : "http://192.168.2.215:9000", // javaUrl: locationName.indexOf('oytour') !== -1 || locationName.indexOf('testb2b.oytour.com') !== -1 ? (locationName.indexOf('oytour') !== -1 ? "http://efficient.oytour.com" : "http://47.96.12.235:9001") : "http://192.168.2.215:9000",
// javaUrl: locationName.indexOf('testb2b') == -1 ? "http://efficient.oytour.com" : locationName.indexOf('testb2b.oytour.com') !== -1 ? "http://47.96.12.235:9001" : "http://192.168.2.215:9000", // javaUrl: locationName.indexOf('testb2b') == -1 ? "http://efficient.oytour.com" : locationName.indexOf('testb2b.oytour.com') !== -1 ? "http://47.96.12.235:9001" : "http://192.168.2.215:9000",
javaUrl: "http://192.168.2.16:8087", javaUrl: "http://192.168.2.18:8087",
ViittoFileUrl: locationName.indexOf('oytour') !== -1 || locationName.indexOf('testb2b.oytour.com') !== -1 ? "http://staticfile.oytour.com" : 'http://192.168.2.214:8130', ViittoFileUrl: locationName.indexOf('oytour') !== -1 || locationName.indexOf('testb2b.oytour.com') !== -1 ? "http://staticfile.oytour.com" : 'http://192.168.2.214:8130',
UploadUrl: locationName.indexOf('oytour') !== -1 || locationName.indexOf('testb2b.oytour.com') !== -1 ? "http://uploadfile.oytour.com" : "http://192.168.2.214:8120", UploadUrl: locationName.indexOf('oytour') !== -1 || locationName.indexOf('testb2b.oytour.com') !== -1 ? "http://uploadfile.oytour.com" : "http://192.168.2.214:8120",
// UploadUrl: "http://uploadfile.oytour.com", // UploadUrl: "http://uploadfile.oytour.com",
......
...@@ -98,10 +98,23 @@ export default { ...@@ -98,10 +98,23 @@ export default {
}, },
// 审批 // 审批
{ {
path: '/approval', path: '/approvalset',
name: 'approval', name: 'approvalset',
component: resolve => require(['@/components/approval/approval'], resolve), component: resolve => require(['@/components/approval/approvalset'], resolve),
}, },
// 审批管理
{
path: '/approvalMan',
name: 'approvalMan',
component: resolve => require(['@/components/approval/approvalMan'], resolve),
},
// 审批管理
{
path: '/approvalDetails',
name: 'approvalDetails',
component: resolve => require(['@/components/approval/approvalDetails'], resolve),
},
......
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