|
@@ -97,8 +97,16 @@
|
|
|
</ul>
|
|
|
<div style="width: 100%;margin-top: 20px;">
|
|
|
<div style="float: right;margin-right: 20px">
|
|
|
- <el-button type="primary" :plain="choicePlain?choicePlain == null?true:false:true" size="mini" style="float: left;margin-left: 0;border-top-right-radius: 0;border-bottom-right-radius: 0" @click="choiceClick(0)">今日</el-button>
|
|
|
- <el-button type="primary" :plain="!choicePlain?choicePlain == null?true:false:true" size="mini" style="float: left;margin-left: 0;border-top-left-radius: 0;border-bottom-left-radius: 0" @click="choiceClick(1)">本月</el-button>
|
|
|
+ <el-button type="primary" :plain="choicePlain?choicePlain == null?true:false:true" size="mini"
|
|
|
+ style="float: left;margin-left: 0;border-top-right-radius: 0;border-bottom-right-radius: 0"
|
|
|
+ @click="choiceClick(0)"
|
|
|
+ >今日
|
|
|
+ </el-button>
|
|
|
+ <el-button type="primary" :plain="!choicePlain?choicePlain == null?true:false:true" size="mini"
|
|
|
+ style="float: left;margin-left: 0;border-top-left-radius: 0;border-bottom-left-radius: 0"
|
|
|
+ @click="choiceClick(1)"
|
|
|
+ >本月
|
|
|
+ </el-button>
|
|
|
<span style="display: block;float: left;padding-top: 0;margin-left: 5px">
|
|
|
<el-date-picker
|
|
|
v-model="choiceValue"
|
|
@@ -111,36 +119,53 @@
|
|
|
end-placeholder="结束日期"
|
|
|
value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
:default-time="['00:00:00', '23:59:59']"
|
|
|
- :picker-options="pickerOptions">
|
|
|
+ :picker-options="pickerOptions"
|
|
|
+ >
|
|
|
</el-date-picker>
|
|
|
</span>
|
|
|
- <el-button type="primary" icon="el-icon-search" circle @click="choiceClick(2)" size="mini" style="margin-left: 10px;"></el-button>
|
|
|
+ <el-button type="primary" icon="el-icon-search" circle @click="choiceClick(2)" size="mini"
|
|
|
+ style="margin-left: 10px;"
|
|
|
+ ></el-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div style="width: 100%;background-color: #FFFFFF;display:flex;justify-content: space-between;flex-wrap: wrap">
|
|
|
- <div v-for="item in statisList" style="width: 40%;height: 18vh;background-color: #f4f8ff;border-radius: 10px;margin: 20px auto;">
|
|
|
+ <div
|
|
|
+ style="width: 100%;background-color: #FFFFFF;display:flex;justify-content: space-between;flex-wrap: wrap"
|
|
|
+ >
|
|
|
+ <div v-for="item in statisList"
|
|
|
+ style="width: 40%;height: 18vh;background-color: #f4f8ff;border-radius: 10px;margin: 20px auto;"
|
|
|
+ >
|
|
|
<div style="height: 100%;display: table;float: left;width: 10vh;">
|
|
|
<div style="display: table-cell;vertical-align: middle;text-align: center">
|
|
|
<i class="el-icon-download" style="font-size: 5vh;color: #419eff" v-if="item.billType === 'RK' "></i>
|
|
|
- <i class="el-icon-upload2" style="font-size: 5vh;color: #419eff" v-else-if="item.billType === 'CK' "></i>
|
|
|
- <i class="el-icon-circle-plus" style="font-size: 5vh;color: #419eff" v-else-if="item.billType === 'SQ' "></i>
|
|
|
- <i class="el-icon-s-claim" style="font-size: 5vh;color: #419eff" v-else-if="item.billType === 'XS' "></i>
|
|
|
- <div style="text-align: center;font-weight:bold;color: #419eff;font-size: 2vh;">{{item.billTypeName}}</div>
|
|
|
+ <i class="el-icon-upload2" style="font-size: 5vh;color: #419eff" v-else-if="item.billType === 'CK' "
|
|
|
+ ></i>
|
|
|
+ <i class="el-icon-circle-plus" style="font-size: 5vh;color: #419eff"
|
|
|
+ v-else-if="item.billType === 'SQ' "
|
|
|
+ ></i>
|
|
|
+ <i class="el-icon-s-claim" style="font-size: 5vh;color: #419eff" v-else-if="item.billType === 'XS' "
|
|
|
+ ></i>
|
|
|
+ <div style="text-align: center;font-weight:bold;color: #419eff;font-size: 2vh;">
|
|
|
+ {{ item.billTypeName }}
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div style="height: 100%;color:#909399;display: table;margin-left: 10px;">
|
|
|
<div style="display: table-cell;vertical-align: middle;">
|
|
|
<div>数量</div>
|
|
|
- <div><span style="letter-spacing: 13px">全</span>部:<span style="font-size: 2vh;font-weight: bold">{{item.allNum}}</span></div>
|
|
|
- <div><span style="letter-spacing: 13px">入</span>账:<span style="font-size: 2vh;font-weight: bold">{{item.entryNum}}</span></div>
|
|
|
- <div>未入账:<span style="font-size: 2vh;font-weight: bold">{{item.notNum}}</span></div>
|
|
|
+ <div><span style="letter-spacing: 13px">全</span>部:<span style="font-size: 2.4vh;font-weight: bold"
|
|
|
+ >{{ item.allNum }}</span></div>
|
|
|
+ <div><span style="letter-spacing: 13px">入</span>账:<span style="font-size: 2.4vh;font-weight: bold"
|
|
|
+ >{{ item.entryNum }}</span></div>
|
|
|
+ <div>未入账:<span style="font-size: 2.4vh;font-weight: bold">{{ item.notNum }}</span></div>
|
|
|
</div>
|
|
|
<div style="width: 2px;height: 60%;background-color: #419eff82;margin: 3.2vh 1vh"></div>
|
|
|
<div style="display: table-cell;vertical-align: middle;">
|
|
|
<div>金额</div>
|
|
|
- <div><span style="letter-spacing: 13px">全</span>部:<span style="font-size: 2.4vh;font-weight: bold">{{item.allMoney}}</span>元</div>
|
|
|
- <div><span style="letter-spacing: 13px">入</span>账:<span style="font-size: 2.4vh;font-weight: bold">{{item.entryMoney}}</span>元</div>
|
|
|
- <div>未入账:<span style="font-size: 2.4vh;font-weight: bold">{{item.notMoney}}</span>元</div>
|
|
|
+ <div><span style="letter-spacing: 13px">全</span>部:<span style="font-size: 2.4vh;font-weight: bold">{{ item.allMoney }}</span>元
|
|
|
+ </div>
|
|
|
+ <div><span style="letter-spacing: 13px">入</span>账:<span style="font-size: 2.4vh;font-weight: bold">{{ item.entryMoney }}</span>元
|
|
|
+ </div>
|
|
|
+ <div>未入账:<span style="font-size: 2.4vh;font-weight: bold">{{ item.notMoney }}</span>元</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -153,22 +178,47 @@
|
|
|
<div style="width: 30%">
|
|
|
<div style="width: 100%">
|
|
|
<div style="display: flex">
|
|
|
- <div id="box" style="width: 100%;" :style="{height: statisList.length > 2?'450px':'300px'}"></div>
|
|
|
- <el-select
|
|
|
- v-model="select"
|
|
|
- slot="prepend"
|
|
|
- size="mini"
|
|
|
- :select="query()"
|
|
|
- placeholder="点击切换仓库"
|
|
|
- style="position: absolute; width: 8%; right: 1%"
|
|
|
+ <el-table
|
|
|
+ :data="daysList"
|
|
|
+ :header-cell-style="{ borderBottom: '1px dashed #dfe6ec' }"
|
|
|
+ :cell-style="cellStyle"
|
|
|
+ style="margin-left: 20px"
|
|
|
>
|
|
|
- <div v-for="(item, index) in warehouse" :key="index">
|
|
|
- <el-option
|
|
|
- :label="item.fName"
|
|
|
- :value="item.fWarehouseid"
|
|
|
- ></el-option>
|
|
|
- </div>
|
|
|
- </el-select>
|
|
|
+ <el-table-column
|
|
|
+ prop="issuingUnitName"
|
|
|
+ :show-overflow-tooltip="true"
|
|
|
+ label="签发单位"
|
|
|
+ />
|
|
|
+ <el-table-column
|
|
|
+ prop="creationDate"
|
|
|
+ :show-overflow-tooltip="true"
|
|
|
+ label="开始时间"
|
|
|
+ />
|
|
|
+ <el-table-column
|
|
|
+ prop="storagePeriodTime"
|
|
|
+ :show-overflow-tooltip="true"
|
|
|
+ label="结束时间"
|
|
|
+ />
|
|
|
+<!-- <el-table-column prop="address" label="操作" width="80">-->
|
|
|
+<!-- <template slot-scope="scope"></template>-->
|
|
|
+<!-- </el-table-column>-->
|
|
|
+ </el-table>
|
|
|
+<!-- <div id="box" style="width: 100%;" :style="{height: statisList.length > 2?'450px':'300px'}"></div>-->
|
|
|
+<!-- <el-select-->
|
|
|
+<!-- v-model="select"-->
|
|
|
+<!-- slot="prepend"-->
|
|
|
+<!-- size="mini"-->
|
|
|
+<!-- :select="query()"-->
|
|
|
+<!-- placeholder="点击切换仓库"-->
|
|
|
+<!-- style="position: absolute; width: 8%; right: 1%"-->
|
|
|
+<!-- >-->
|
|
|
+<!-- <el-option-->
|
|
|
+<!-- v-for="(item, index) in warehouse"-->
|
|
|
+<!-- :key="index"-->
|
|
|
+<!-- :label="item.fName"-->
|
|
|
+<!-- :value="item.fWarehouseid"-->
|
|
|
+<!-- ></el-option>-->
|
|
|
+<!-- </el-select>-->
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -190,7 +240,7 @@
|
|
|
>
|
|
|
<div class="home_stock_table">委托方</div>
|
|
|
<div class="home_stock_table">日期</div>
|
|
|
-<!-- <div class="home_stock_table">提单号</div>-->
|
|
|
+ <!-- <div class="home_stock_table">提单号</div>-->
|
|
|
<div class="home_stock_table">业务类型</div>
|
|
|
<div class="home_stock_table_right">
|
|
|
<div>操作</div>
|
|
@@ -214,7 +264,7 @@
|
|
|
<div class="home_stock_table" style="text-align: center">
|
|
|
{{ item.sendTime ? item.sendTime.slice(0, 10) : item.sendTime }}
|
|
|
</div>
|
|
|
-<!-- <div class="home_stock_table"><p>{{ item.refno1 }}</p></div>-->
|
|
|
+ <!-- <div class="home_stock_table"><p>{{ item.refno1 }}</p></div>-->
|
|
|
<div class="home_stock_table">
|
|
|
<span v-if="item.refno2 === 'SJRK'">入库</span>
|
|
|
<span v-else-if="item.refno2 === 'SJCK'">出库</span>
|
|
@@ -238,7 +288,9 @@
|
|
|
<span v-else-if="item.refno2 === 'XMGL'">项目管理</span>
|
|
|
<span v-else-if="item.refno2 === 'FYGL'">管理费用</span>
|
|
|
</div>
|
|
|
- <div class="home_stock_table_right" @click="item.audit === '审核通过'?$message.error('该单据已审批通过不允许再次审批'):approval(item)">
|
|
|
+ <div class="home_stock_table_right"
|
|
|
+ @click="item.audit === '审核通过'?$message.error('该单据已审批通过不允许再次审批'):approval(item)"
|
|
|
+ >
|
|
|
查看详情
|
|
|
</div>
|
|
|
</div>
|
|
@@ -322,7 +374,8 @@ import {
|
|
|
information,
|
|
|
warehouse,
|
|
|
inquiry,
|
|
|
- statistics
|
|
|
+ statistics,
|
|
|
+ expirationReminderDaysList
|
|
|
} from '../../src/api/index'
|
|
|
import Cookies from 'js-cookie'
|
|
|
import { getUserProfile } from '@/api/system/user'
|
|
@@ -342,36 +395,36 @@ export default {
|
|
|
version: '3.2.1',
|
|
|
select: '',
|
|
|
text: '',
|
|
|
- choiceValue:[],
|
|
|
- pickerOptions:{
|
|
|
+ choiceValue: [],
|
|
|
+ pickerOptions: {
|
|
|
shortcuts: [{
|
|
|
text: '最近一周',
|
|
|
onClick(picker) {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
|
|
|
- picker.$emit('pick', [start, end]);
|
|
|
+ const end = new Date()
|
|
|
+ const start = new Date()
|
|
|
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
|
|
|
+ picker.$emit('pick', [start, end])
|
|
|
}
|
|
|
}, {
|
|
|
text: '最近一个月',
|
|
|
onClick(picker) {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
|
|
|
- picker.$emit('pick', [start, end]);
|
|
|
+ const end = new Date()
|
|
|
+ const start = new Date()
|
|
|
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
|
|
|
+ picker.$emit('pick', [start, end])
|
|
|
}
|
|
|
}, {
|
|
|
text: '最近三个月',
|
|
|
onClick(picker) {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
|
|
|
- picker.$emit('pick', [start, end]);
|
|
|
+ const end = new Date()
|
|
|
+ const start = new Date()
|
|
|
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
|
|
|
+ picker.$emit('pick', [start, end])
|
|
|
}
|
|
|
}]
|
|
|
},
|
|
|
dialogVisible: false,
|
|
|
- choicePlain:true,
|
|
|
+ choicePlain: true,
|
|
|
tableData: [],
|
|
|
chart: [],
|
|
|
warehouse: [],
|
|
@@ -384,8 +437,9 @@ export default {
|
|
|
upperLeftCntrs: {},
|
|
|
sysType: '',
|
|
|
upperRights: [],
|
|
|
- statisList:[],
|
|
|
- fMblno:''
|
|
|
+ statisList: [],
|
|
|
+ fMblno: '',
|
|
|
+ daysList:[]
|
|
|
}
|
|
|
},
|
|
|
filters: {
|
|
@@ -426,7 +480,7 @@ export default {
|
|
|
}
|
|
|
this.upperLeftCntrs = response.data.upperLeftCntrs
|
|
|
})
|
|
|
- getUserProfile().then(res=>{
|
|
|
+ getUserProfile().then(res => {
|
|
|
this.fMblno = res.roleGroup
|
|
|
this.choiceClick(3)
|
|
|
})
|
|
@@ -439,48 +493,54 @@ export default {
|
|
|
this.getList()
|
|
|
this.warehouses()
|
|
|
this.inquiry()
|
|
|
- this.boxDistribution()
|
|
|
- this.ranking()
|
|
|
+ // this.boxDistribution()
|
|
|
+ // this.ranking()
|
|
|
+ this.queryExpiration()
|
|
|
},
|
|
|
methods: {
|
|
|
+ queryExpiration(){
|
|
|
+ expirationReminderDaysList().then(res=>{
|
|
|
+ this.daysList = res.data.tContractManagementList
|
|
|
+ })
|
|
|
+ },
|
|
|
//转换时间戳
|
|
|
timestampToTime(timestamp) {
|
|
|
- let date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000
|
|
|
- let Y = date.getFullYear() + '-';
|
|
|
- let M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1):date.getMonth()+1) + '-';
|
|
|
- let D = (date.getDate()< 10 ? '0'+date.getDate():date.getDate())+ ' ';
|
|
|
- let h = (date.getHours() < 10 ? '0'+date.getHours():date.getHours())+ ':';
|
|
|
- let m = (date.getMinutes() < 10 ? '0'+date.getMinutes():date.getMinutes()) + ':';
|
|
|
- let s = date.getSeconds() < 10 ? '0'+date.getSeconds():date.getSeconds();
|
|
|
- return Y+M+D+h+m+s;
|
|
|
+ let date = new Date(timestamp * 1000)//时间戳为10位需*1000,时间戳为13位的话不需乘1000
|
|
|
+ let Y = date.getFullYear() + '-'
|
|
|
+ let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
|
|
|
+ let D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '
|
|
|
+ let h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'
|
|
|
+ let m = (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + ':'
|
|
|
+ let s = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()
|
|
|
+ return Y + M + D + h + m + s
|
|
|
},
|
|
|
- choiceClick(type){
|
|
|
- let now = new Date(); //当前日期
|
|
|
- let nowMonth = now.getMonth(); //当前月
|
|
|
- let nowYear = now.getFullYear(); //当前年
|
|
|
+ choiceClick(type) {
|
|
|
+ let now = new Date() //当前日期
|
|
|
+ let nowMonth = now.getMonth() //当前月
|
|
|
+ let nowYear = now.getFullYear() //当前年
|
|
|
//本月的开始时间
|
|
|
- let monthStartDate = new Date(nowYear, nowMonth, 1);
|
|
|
+ let monthStartDate = new Date(nowYear, nowMonth, 1)
|
|
|
//本月的结束时间
|
|
|
- let monthEndDate = new Date(nowYear, nowMonth+1, 0);
|
|
|
- let timeStar=Date.parse(monthStartDate)/1000;//s
|
|
|
- let timeEnd=Date.parse(monthEndDate)/1000;//s
|
|
|
+ let monthEndDate = new Date(nowYear, nowMonth + 1, 0)
|
|
|
+ let timeStar = Date.parse(monthStartDate) / 1000//s
|
|
|
+ let timeEnd = Date.parse(monthEndDate) / 1000//s
|
|
|
let data = []
|
|
|
- if(type === 0){
|
|
|
+ if (type === 0) {
|
|
|
this.choicePlain = true
|
|
|
- data = [now.toLocaleDateString().replace(/\//g, '-')+ ' 00:00:00',now.toLocaleDateString().replace(/\//g, '-')+' 23:59:59']
|
|
|
+ data = [now.toLocaleDateString().replace(/\//g, '-') + ' 00:00:00', now.toLocaleDateString().replace(/\//g, '-') + ' 23:59:59']
|
|
|
this.choiceValue = data
|
|
|
- }else if (type === 1 || type === 3) {
|
|
|
+ } else if (type === 1 || type === 3) {
|
|
|
this.choicePlain = false
|
|
|
- data =[this.timestampToTime(timeStar).slice(0,10)+ ' 00:00:00',this.timestampToTime(timeEnd).slice(0,10)+' 23:59:59']
|
|
|
+ data = [this.timestampToTime(timeStar).slice(0, 10) + ' 00:00:00', this.timestampToTime(timeEnd).slice(0, 10) + ' 23:59:59']
|
|
|
this.choiceValue = data
|
|
|
- if(type === 3){
|
|
|
+ if (type === 3) {
|
|
|
this.choiceValue = data
|
|
|
}
|
|
|
- }else if(type === 2){
|
|
|
+ } else if (type === 2) {
|
|
|
data = this.choiceValue
|
|
|
this.choicePlain = null
|
|
|
}
|
|
|
- statistics({timeInterval:data,fMblno:this.fMblno}).then(res=>{
|
|
|
+ statistics({ timeInterval: data, fMblno: this.fMblno }).then(res => {
|
|
|
this.statisList = res.data
|
|
|
})
|
|
|
},
|
|
@@ -548,7 +608,7 @@ export default {
|
|
|
approval(row) {
|
|
|
console.log(row.refno2)
|
|
|
switch (row.refno2) {
|
|
|
- case "XS":
|
|
|
+ case 'XS':
|
|
|
this.$router.push({
|
|
|
path: '/purchaseIssue',
|
|
|
query: {
|
|
@@ -565,7 +625,7 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
break
|
|
|
- case "SQ":
|
|
|
+ case 'SQ':
|
|
|
this.$router.push({
|
|
|
path: '/purchaseRequest',
|
|
|
query: {
|
|
@@ -711,7 +771,7 @@ export default {
|
|
|
})
|
|
|
break
|
|
|
}
|
|
|
- case "FYGL":{
|
|
|
+ case 'FYGL': {
|
|
|
this.$router.push({
|
|
|
path: '/costManagement/index',
|
|
|
query: {
|
|
@@ -723,12 +783,12 @@ export default {
|
|
|
icon: 'el-icon-edit-outline',
|
|
|
name: '审批',
|
|
|
disabled: false,
|
|
|
- pendingPage:true
|
|
|
+ pendingPage: true
|
|
|
}
|
|
|
)
|
|
|
}
|
|
|
})
|
|
|
- break;
|
|
|
+ break
|
|
|
}
|
|
|
default: {
|
|
|
return this.$message.error('未知错误,无状态')
|
|
@@ -745,7 +805,7 @@ export default {
|
|
|
e.auditItem = e.auditItem.slice(0, 10)
|
|
|
}
|
|
|
})
|
|
|
- this.tableData = res.data.slice(0,5)
|
|
|
+ this.tableData = res.data.slice(0, 5)
|
|
|
})
|
|
|
},
|
|
|
querytoDo(res) {
|
|
@@ -771,7 +831,7 @@ export default {
|
|
|
this.commodity.push(index.fName)
|
|
|
this.commoditytwo.push(index.fGrossweightD)
|
|
|
}
|
|
|
- this.drawLine()
|
|
|
+ // this.drawLine()
|
|
|
// this.drawLinetwo();
|
|
|
// this.commoDity();
|
|
|
} else {
|
|
@@ -817,8 +877,8 @@ export default {
|
|
|
this.commoditytwo.push(index.fGrossweightD)
|
|
|
}
|
|
|
|
|
|
- this.drawLine()
|
|
|
- this.drawLinetwo()
|
|
|
+ // this.drawLine()
|
|
|
+ // this.drawLinetwo()
|
|
|
this.commoDity()
|
|
|
}
|
|
|
})
|
|
@@ -844,14 +904,14 @@ export default {
|
|
|
this.commodity.push(index.fName)
|
|
|
this.commoditytwo.push(index.fGrossweightD)
|
|
|
}
|
|
|
- this.drawLine()
|
|
|
+ // this.drawLine()
|
|
|
// this.drawLinetwo();
|
|
|
// this.commoDity();
|
|
|
})
|
|
|
}
|
|
|
},
|
|
|
jump(res) {
|
|
|
- this.$router.push({ path: res,query: { open: true}})
|
|
|
+ this.$router.push({ path: res, query: { open: true } })
|
|
|
},
|
|
|
//设置单元格边框
|
|
|
cellStyle({ row, column, rowIndex, columnIndex }) {
|
|
@@ -862,7 +922,7 @@ export default {
|
|
|
this.loading = true
|
|
|
listCorps(this.queryParams).then((response) => {
|
|
|
if (response.rows.length > 0) {
|
|
|
- this.tableDataTwo = response.rows.slice(0,10)
|
|
|
+ this.tableDataTwo = response.rows.slice(0, 10)
|
|
|
}
|
|
|
})
|
|
|
},
|
|
@@ -1135,6 +1195,7 @@ export default {
|
|
|
//margin-bottom: 15px;
|
|
|
div {
|
|
|
margin-top: 15px;
|
|
|
+
|
|
|
p {
|
|
|
font-size: 14px;
|
|
|
}
|