Commit 3fff060a authored by 张锡奇's avatar 张锡奇
parents 817b8a0e ad41ad53
......@@ -81,5 +81,8 @@ const methodMap = {
getTipProcessProgress:{url:"/pssubcontract/getlist/",method:"post",host:"default"},
getTipProcurementProgress:{url:"/pbcontracthdr/",method:"post",host:"default"},
//tiip 收发存
getTiipReceiveStorage:{url:"/boss/stock/",method:"post",host:"default"},
};
export default Object.assign(methodMap,healthApi);
......@@ -345,6 +345,37 @@ let tipRoutes = [
},
},
]
},
{//贸易 收发存
name:"main",
component:()=>import("@/view/main.vue"),
path:"/main",
children:[
{
path:"/tiip/receive/:userId/:sUserNo",
name:"receive",
component:()=>import("@/view/tiip/receive/index.vue"),
meta:{
title:"收发存"
}
},
{
path:"/tiip/receive_varieties",
name:"receive_varieties",
component:()=>import("@/view/tiip/receive/varieties.vue"),
meta:{
title:"品种"
}
},
{
path:"/tiip/receive_varieties_detail",
name:"receive_varieties_detail",
component:()=>import("@/view/tiip/receive/varietiesDetail.vue"),
meta:{
title:"接单详情"
}
},
]
}
];
......
<style lang="less">
#receive{
table{
width:100%;
>thead{
width:calc(100% - 1em);
>tr{
height:35px;
}
}
>tbody{
display: block;
height: 200px;
overflow-y: scroll;
height: calc(100vh - 160px);
>tr{
height:30px;
&.user{
background:#fff;
>td{
color:#5E9AFE;
text-align: left;
padding-left:20px;
}
}
&.addr{
>td{
color:#068FCA;
text-align: left;
padding-left:20px;
}
}
&.num{
height:35px;
background:#fff;
}
}
}
>tbody tr,>thead{
display: table;
width: 100%;
// table-layout: fixed; /**表格列的宽度由表格宽度决定,不由内容决定*/
text-align: center;
}
>thead th,>tbody td{
width:50px;
}
}
}
</style>
<template>
<div id="receive">
<div class="search">
<searchComponent :search="search" :status="status"/>
</div>
<tab
v-model="tabValue"
prevent-default
@on-before-index-change="switchTabItem"
active-color="#5E9AFE"
bar-active-color="#5E9AFE">
<tab-item v-for="(v,k) in tabList" :key="k">{{v.sStoreName}}</tab-item>
</tab>
<table align="center" v-if="list.length>0">
<thead>
<tr>
<th>地点</th>
<th>匹数</th>
<th>米数</th>
<th>码数</th>
<th>重量</th>
</tr>
</thead>
<tbody>
<template v-for="(v,k) in list">
<tr class="user" :key="k+'_user'">
<td @click="toDetail(v.sProviderName)" style="text-decoration: underline;">{{v.sProviderName}}</td>
<td/>
<td/>
</tr>
<tr class="addr" :key="k+'_addr1'">
<td colspan="5">期初库存</td>
</tr>
<tr class="num" :key="k+'_num1'">
<td></td>
<td>{{v.nOldPieceQty||0}}</td>
<td style="color:#64B18B;">{{v.nOldLengthM||0}}</td>
<td style="color:#64B18B;">{{v.nOldLengthYD||0}}</td>
<td>{{v.nOldWeight||0}}</td>
</tr>
<tr class="addr" :key="k+'_addr2'">
<td colspan="5">本期入库</td>
</tr>
<tr class="num" :key="k+'_num2'">
<td></td>
<td>{{v.nInPieceQty||0}}</td>
<td style="color:#64B18B;">{{v.nInLengthM||0}}</td>
<td style="color:#64B18B;">{{v.nInLengthYD||0}}</td>
<td>{{v.nInWeight||0}}</td>
</tr>
<tr class="addr" :key="k+'_addr3'">
<td colspan="5">本期出库</td>
</tr>
<tr class="num" :key="k+'_num3'">
<td></td>
<td>{{v.nOutPieceQty||0}}</td>
<td style="color:#64B18B;">{{v.nOutLengthM||0}}</td>
<td style="color:#64B18B;">{{v.nOutLengthYD||0}}</td>
<td>{{v.nOutWeight||0}}</td>
</tr>
<tr class="addr" :key="k+'_addr4'">
<td colspan="5">本期库存</td>
</tr>
<tr class="num" :key="k+'_num4'">
<td></td>
<td>{{v.nStockPieceQty||0}}</td>
<td style="color:#64B18B;">{{v.nStockLengthM||0}}</td>
<td style="color:#64B18B;">{{v.nStockLengthYD||0}}</td>
<td>{{v.nStockWeight||0}}</td>
</tr>
<tr :key="k+'_5'" style="height:10px;background:transparent;"/>
</template>
</tbody>
</table>
<img v-else src="@/assets/noData.jpg" class="_img" alt="" />
</div>
</template>
<script>
import Util from "@/libs/util.js"
import searchComponent from '@/components/search'
import { Tab, TabItem } from 'vux'
export default {
name:"receive",
components:{searchComponent,Tab,TabItem},
data(){
return{
tabList:[],
list:[],
search:{
dBeginDate:Util.dateFormat(new Date(),'yyyy-MM-01'),
dEndDate:Util.dateFormat(new Date(),'yyyy-MM-dd'),
page:1,
per_page:30,
sStatus:'全部'
},
status:[],
tabValue:0,
}
},
created(){
this.init();
this.global.$off('searchData');
this.global.$on('searchData',async ()=>{
this.searchData();
});
},
methods:{
switchTabItem(index){
this.tabValue=index
this.searchData()
},
toDetail(name){
this.$router.push({
path:"/tiip/receive_varieties",
query:{
sStockPlace:name,
sStoreNo:this.tabList[this.tabValue].sStoreNo
}
})
},
async init(){
var value=await this.request("getTiipReceiveStorage",{
data:[
{key:"url",value:"mmStore"},
{key:"sUserNo",value:this.$route.params.sUserNo}
]
},"加载中",{})
this.tabList=value
this.searchData()
},
async searchData(){
var value=await this.request("getTiipReceiveStorage",{
data:[
{key:"url",value:"All"},
{key:"dStartDate",value:this.search.dBeginDate},
{key:"dEndDate",value:this.search.dEndDate},
{key:"sStoreNo",value:this.tabList[this.tabValue].sStoreNo},
]
},"加载中",{})
this.list=value
},
},
}
</script>
<style lang="less">
#varieties{
table{
>thead{
width:calc(100% - 1em);
>tr{
height:35px;
}
}
>tbody{
display: block;
height: 200px;
overflow-y: scroll;
height: calc(100vh - 160px);
>tr{
height:30px;
background:#fff;
&.name{
text-align: left;
>td{
padding-left:15px;
&:first-child{
color:#5E9AFE;
text-decoration: underline;
}
}
}
&:not(.name){
>td:not(:first-child){
border-top:1px solid #eef4fe;
}
}
}
}
>tbody tr,>thead{
display: table;
width: 100%;
table-layout: fixed; /**表格列的宽度由表格宽度决定,不由内容决定*/
text-align: center;
}
>thead th,>tbody td{
width:50px;
}
}
}
</style>
<template>
<div id="varieties">
<div class="search">
<searchComponent :search="search" :status="[]"/>
</div>
<table align="center" v-if="list.length>0">
<thead>
<tr>
<th>品种</th>
<th>匹数</th>
<th>米数</th>
<th>码数</th>
<th>重量</th>
</tr>
</thead>
<tbody>
<template v-for="(v,k) in list">
<tr class="name" :key="k+'_name'">
<td @click="toDetail(k)">{{v.sSampleMaterialNo}}</td>
<td/>
<td/>
</tr>
<tr :key="k+'_1'">
<td style="color:#048ECA;">期初库存</td>
<td>{{v.nOldPieceQty||0}}</td>
<td style="color:#53A97E;">{{v.nOldLengthM||0}}</td>
<td style="color:#53A97E;">{{v.nOldLengthYD||0}}</td>
<td>{{v.nOldWeight||0}}</td>
</tr>
<tr :key="k+'_2'">
<td style="color:#048ECA;">本期入库</td>
<td>{{v.nInPieceQty||0}}</td>
<td style="color:#53A97E;">{{v.nInLengthM||0}}</td>
<td style="color:#53A97E;">{{v.nInLengthYD||0}}</td>
<td>{{v.nInWeight||0}}</td>
</tr>
<tr :key="k+'_3'">
<td style="color:#048ECA;">本期出库</td>
<td>{{v.nOutPieceQty||0}}</td>
<td style="color:#53A97E;">{{v.nOutLengthM||0}}</td>
<td style="color:#53A97E;">{{v.nOutLengthYD||0}}</td>
<td>{{v.nOutWeight||0}}</td>
</tr>
<tr :key="k+'_4'">
<td style="color:#048ECA;">本期库存</td>
<td>{{v.nStockPieceQty||0}}</td>
<td style="color:#53A97E;">{{v.nStockLengthM||0}}</td>
<td style="color:#53A97E;">{{v.nStockLengthYD||0}}</td>
<td>{{v.nStockWeight||0}}</td>
</tr>
<tr :key="k+'_5'" style="height:10px;background:transparent;"/>
</template>
</tbody>
</table>
<img v-else src="@/assets/noData.jpg" class="_img" alt="" />
</div>
</template>
<script>
import Util from "@/libs/util.js"
import searchComponent from '@/components/search'
export default {
name:"varieties",
components:{searchComponent},
data(){
return{
search:{
dBeginDate:Util.dateFormat(new Date(),'yyyy-MM-01'),
dEndDate:Util.dateFormat(new Date(),'yyyy-MM-dd'),
page:1,
per_page:30,
sStatus:'全部'
},
list:[],
}
},
created(){
this.global.$off('searchData');
this.global.$on('searchData',()=>{
this.searchData();
});
},
async activated(){
this.searchData()
},
methods:{
toDetail(index){
this.$router.push({
path:"/tiip/receive_varieties_detail",
query:{
sStockPlace:this.list[index].sProviderName,
sStoreNo:this.$route.query.sStoreNo,
sSampleMaterialNo:this.list[index].sSampleMaterialNo,
}
})
},
async searchData(){
var value=await this.request("getTiipReceiveStorage",{
data:[
{key:"url",value:"sMaterial"},
{key:"dStartDate",value:this.search.dBeginDate},
{key:"dEndDate",value:this.search.dEndDate},
{key:"sStoreNo",value:this.$route.query.sStoreNo},
{key:"sStockPlace",value:this.$route.query.sStockPlace},
]
},"加载中",{})
this.list=value
},
}
}
</script>
<style lang="less">
#varietiesDetail{
table{
width:100%;
>thead{
width:calc(100% - 1em);
>tr{
height:35px;
}
}
>tbody{
display: block;
height: 200px;
overflow-y: scroll;
height: calc(100vh - 160px);
>tr{
height:30px;
&.user{
background:#fff;
>td{
color:#5E9AFE;
text-align: left;
padding-left:20px;
}
}
&.addr{
>td{
color:#068FCA;
text-align: left;
padding-left:20px;
}
}
&.num{
height:35px;
background:#fff;
}
}
}
>tbody tr,>thead{
display: table;
width: 100%;
// table-layout: fixed; /**表格列的宽度由表格宽度决定,不由内容决定*/
text-align: center;
}
>thead th,>tbody td{
width:50px;
}
}
}
</style>
<template>
<div id="varietiesDetail">
<div class="search">
<searchComponent :search="search" :status="[]"/>
</div>
<table align="center" v-if="list.length>0">
<thead>
<tr>
<th>地点</th>
<th>匹数</th>
<th>米数</th>
<th>码数</th>
<th>重量</th>
</tr>
</thead>
<tbody>
<template v-for="(v,k) in list">
<tr class="user" :key="k+'_user'">
<td @click="toDetail(v.sProviderName)" style="text-decoration: underline;">{{v.sProviderName}}</td>
<td/>
<td/>
</tr>
<tr class="addr" :key="k+'_addr1'">
<td colspan="5">期初库存</td>
</tr>
<tr class="num" :key="k+'_num1'">
<td></td>
<td>{{v.nOldPieceQty||0}}</td>
<td style="color:#64B18B;">{{v.nOldLengthM||0}}</td>
<td style="color:#64B18B;">{{v.nOldLengthYD||0}}</td>
<td>{{v.nOldWeight||0}}</td>
</tr>
<tr class="addr" :key="k+'_addr2'">
<td colspan="5">本期入库</td>
</tr>
<tr class="num" :key="k+'_num2'">
<td></td>
<td>{{v.nInPieceQty||0}}</td>
<td style="color:#64B18B;">{{v.nInLengthM||0}}</td>
<td style="color:#64B18B;">{{v.nInLengthYD||0}}</td>
<td>{{v.nInWeight||0}}</td>
</tr>
<tr class="addr" :key="k+'_addr3'">
<td colspan="5">本期出库</td>
</tr>
<tr class="num" :key="k+'_num3'">
<td></td>
<td>{{v.nOutPieceQty||0}}</td>
<td style="color:#64B18B;">{{v.nOutLengthM||0}}</td>
<td style="color:#64B18B;">{{v.nOutLengthYD||0}}</td>
<td>{{v.nOutWeight||0}}</td>
</tr>
<tr class="addr" :key="k+'_addr4'">
<td colspan="5">本期库存</td>
</tr>
<tr class="num" :key="k+'_num4'">
<td></td>
<td>{{v.nStockPieceQty||0}}</td>
<td style="color:#64B18B;">{{v.nStockLengthM||0}}</td>
<td style="color:#64B18B;">{{v.nStockLengthYD||0}}</td>
<td>{{v.nStockWeight||0}}</td>
</tr>
<tr :key="k+'_5'" style="height:10px;background:transparent;"/>
</template>
</tbody>
</table>
</div>
</template>
<script>
import Util from "@/libs/util.js"
import searchComponent from '@/components/search'
export default {
name:"varietiesDetail",
components:{ searchComponent },
data(){
return{
search:{
dBeginDate:Util.dateFormat(new Date(),'yyyy-MM-01'),
dEndDate:Util.dateFormat(new Date(),'yyyy-MM-dd'),
page:1,
per_page:30,
sStatus:'全部'
},
list:[],
}
},
created(){
this.global.$off('searchData');
this.global.$on('searchData',()=>{
this.searchData();
});
},
async activated(){
this.searchData()
},
methods:{
switchTabItem(index){
this.tabValue=index
},
async searchData(){
var value=await this.request("getTiipReceiveStorage",{
data:[
{key:"url",value:"Dtl"},
{key:"dStartDate",value:this.search.dBeginDate},
{key:"dEndDate",value:this.search.dEndDate},
{key:"sStoreNo",value:this.$route.query.sStoreNo},
{key:"sStockPlace",value:this.$route.query.sStockPlace},
{key:"sSampleMaterialNo",value:this.$route.query.sSampleMaterialNo},
]
},"加载中",{})
this.list=value
},
},
}
</script>
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