Browse Source

修改首页显示

caojunjie 3 years ago
parent
commit
1668ebdbe0
4 changed files with 101 additions and 27 deletions
  1. 8 0
      src/api/index.js
  2. 88 23
      src/views/index.vue
  3. 2 1
      src/views/purchaseIssue/index.vue
  4. 3 3
      src/views/warehouse/inStock/index.vue

+ 8 - 0
src/api/index.js

@@ -31,3 +31,11 @@ export function inquiry(data){
     data:data
     data:data
   })
   })
 }
 }
+//首页查询金额统计
+export function statistics(query){
+  return request({
+    url:'/anpin/stockControl/statistics',
+    method:'get',
+    params: query
+  })
+}

+ 88 - 23
src/views/index.vue

@@ -1,14 +1,14 @@
 <template>
 <template>
   <div class="app-container home">
   <div class="app-container home">
     <div>
     <div>
-      <div style="display: flex; margin-bottom: 40px">
+      <div style="display: flex; margin-bottom: 20px">
         <div style="width: 70%">
         <div style="width: 70%">
           <ul class="block">
           <ul class="block">
             <li @click="jump('/purchaseRequest')">
             <li @click="jump('/purchaseRequest')">
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-s-custom"
                   class="el-icon-s-custom"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>采购申请</p>
                 <p>采购申请</p>
               </div>
               </div>
@@ -17,7 +17,7 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-upload2"
                   class="el-icon-upload2"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>销售出库</p>
                 <p>销售出库</p>
               </div>
               </div>
@@ -26,7 +26,7 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-download"
                   class="el-icon-download"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>入库</p>
                 <p>入库</p>
               </div>
               </div>
@@ -35,7 +35,7 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-upload2"
                   class="el-icon-upload2"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>出库</p>
                 <p>出库</p>
               </div>
               </div>
@@ -44,7 +44,7 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-connection"
                   class="el-icon-connection"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>新增物资</p>
                 <p>新增物资</p>
               </div>
               </div>
@@ -53,7 +53,7 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-wallet"
                   class="el-icon-wallet"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>发票申请</p>
                 <p>发票申请</p>
               </div>
               </div>
@@ -62,7 +62,7 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-money"
                   class="el-icon-money"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>销项发票</p>
                 <p>销项发票</p>
               </div>
               </div>
@@ -71,7 +71,7 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-s-management"
                   class="el-icon-s-management"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>进项发票</p>
                 <p>进项发票</p>
               </div>
               </div>
@@ -80,7 +80,7 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-takeaway-box"
                   class="el-icon-takeaway-box"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>收款</p>
                 <p>收款</p>
               </div>
               </div>
@@ -89,17 +89,47 @@
               <div>
               <div>
                 <i
                 <i
                   class="el-icon-s-order"
                   class="el-icon-s-order"
-                  style="font-size: 50px; text-align: center"
+                  style="font-size: 25px; text-align: center"
                 ></i>
                 ></i>
                 <p>付款</p>
                 <p>付款</p>
               </div>
               </div>
             </li>
             </li>
           </ul>
           </ul>
+          <div style="width: 100%;margin-top: 20px;">
+            <div style="float: right;margin-right: 20px">
+              <el-button type="primary" :plain="choicePlain?false:true" size="mini" style="margin-left: 0;border-top-right-radius: 0;border-bottom-right-radius: 0" @click="choiceClick(0)">今日</el-button>
+              <el-button type="primary" :plain="!choicePlain?false:true" size="mini" style="margin-left: 0;border-top-left-radius: 0;border-bottom-left-radius: 0" @click="choiceClick(1)">本月</el-button>
+            </div>
+          </div>
+          <div style="width: 100%;background-color: #FFFFFF;display:flex;justify-content: space-between;">
+            <div v-for="item in statisList" style="width: 30vh;height: 15vh;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>
+                </div>
+              </div>
+              <div style="height: 100%;color:#909399;display: table;">
+                <div style="display: table-cell;vertical-align: middle;">
+                  <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>
+            <div v-if="statisList.length === 0" style="width: 100%;height: 170px;text-align: center">
+              <img src="https://cdn.uviewui.com/uview/empty/list.png" style="width: 140px;height: 140px;" alt="">
+              <p>暂无数据</p>
+            </div>
+          </div>
         </div>
         </div>
         <div style="width: 30%">
         <div style="width: 30%">
           <div style="width: 100%">
           <div style="width: 100%">
             <div style="display: flex">
             <div style="display: flex">
-              <div id="box" style="width: 100%; height: 350px"></div>
+              <div id="box" style="width: 100%; height: 250px"></div>
               <el-select
               <el-select
                 v-model="select"
                 v-model="select"
                 slot="prepend"
                 slot="prepend"
@@ -266,7 +296,8 @@ import {
   listCorps,
   listCorps,
   information,
   information,
   warehouse,
   warehouse,
-  inquiry
+  inquiry,
+  statistics
 } from '../../src/api/index'
 } from '../../src/api/index'
 import Cookies from 'js-cookie'
 import Cookies from 'js-cookie'
 
 
@@ -286,6 +317,7 @@ export default {
       select: '',
       select: '',
       text: '',
       text: '',
       dialogVisible: false,
       dialogVisible: false,
+      choicePlain:true,
       tableData: [],
       tableData: [],
       chart: [],
       chart: [],
       warehouse: [],
       warehouse: [],
@@ -297,7 +329,8 @@ export default {
       fleetData: '',
       fleetData: '',
       upperLeftCntrs: {},
       upperLeftCntrs: {},
       sysType: '',
       sysType: '',
-      upperRights: []
+      upperRights: [],
+      statisList:[]
     }
     }
   },
   },
   filters: {
   filters: {
@@ -338,8 +371,8 @@ export default {
       }
       }
       this.upperLeftCntrs = response.data.upperLeftCntrs
       this.upperLeftCntrs = response.data.upperLeftCntrs
     })
     })
+    this.choiceClick(3)
     this.sysType = Cookies.get('sysType')
     this.sysType = Cookies.get('sysType')
-    console.log(this.sysType)
     this.getList()
     this.getList()
     this.warehouses()
     this.warehouses()
     this.inquiry()
     this.inquiry()
@@ -352,6 +385,40 @@ export default {
     this.ranking()
     this.ranking()
   },
   },
   methods: {
   methods: {
+    //转换时间戳
+    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;
+    },
+    choiceClick(type){
+      let now = new Date(); //当前日期
+      let nowMonth = now.getMonth(); //当前月
+      let nowYear = now.getFullYear(); //当前年
+      //本月的开始时间
+      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 data = []
+      this.choicePlain = !this.choicePlain
+      if(type === 0){
+        this.choicePlain = true
+        data = [now.toLocaleDateString().replace(/\//g, '-')+ ' 00:00:00',now.toLocaleDateString().replace(/\//g, '-')+' 23:59:59']
+      }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']
+      }
+      statistics({timeInterval:data}).then(res=>{
+        this.statisList = res.data
+      })
+    },
     //箱分布图表
     //箱分布图表
     ranking() {
     ranking() {
       // 基于准备好的dom,初始化echarts实例,所以只能在mounted中调用
       // 基于准备好的dom,初始化echarts实例,所以只能在mounted中调用
@@ -973,21 +1040,19 @@ export default {
   }
   }
 
 
   li {
   li {
-    width: 18%;
-    height: 150px;
+    width: 8%;
+    //height: 150px;
     background-color: #1c84c6;
     background-color: #1c84c6;
-    margin-left: 10px;
+    //margin-left: 10px;
     text-align: center;
     text-align: center;
     color: #ffffff;
     color: #ffffff;
     border-radius: 10px;
     border-radius: 10px;
     cursor: pointer;
     cursor: pointer;
-    margin-bottom: 15px;
-
+    //margin-bottom: 15px;
     div {
     div {
-      margin-top: 40px;
-
+      margin-top: 15px;
       p {
       p {
-        font-size: 20px;
+        font-size: 14px;
       }
       }
     }
     }
   }
   }

+ 2 - 1
src/views/purchaseIssue/index.vue

@@ -2241,13 +2241,14 @@ export default {
           }
           }
           break;
           break;
         case "导出":
         case "导出":
+          let dataForm = this.$refs.avatar.form
           this.$confirm("是否确认导出销售出库?", "警告", {
           this.$confirm("是否确认导出销售出库?", "警告", {
             confirmButtonText: "确定",
             confirmButtonText: "确定",
             cancelButtonText: "取消",
             cancelButtonText: "取消",
             type: "warning",
             type: "warning",
           })
           })
             .then(function () {
             .then(function () {
-              return getExport();
+              return getExport(dataForm);
             })
             })
             .then((response) => {
             .then((response) => {
               this.download(response.msg);
               this.download(response.msg);

+ 3 - 3
src/views/warehouse/inStock/index.vue

@@ -2354,13 +2354,13 @@ export default {
           this.dialogVisible = true;
           this.dialogVisible = true;
           break;
           break;
         case "导出":
         case "导出":
+          let dataForm = this.$refs.MainForm.form
           this.$confirm("是否确认导出仓库入库?", "警告", {
           this.$confirm("是否确认导出仓库入库?", "警告", {
             confirmButtonText: "确定",
             confirmButtonText: "确定",
             cancelButtonText: "取消",
             cancelButtonText: "取消",
             type: "warning",
             type: "warning",
-          })
-            .then(function () {
-              return getExport();
+          }).then(function () {
+              return getExport(dataForm);
             })
             })
             .then((response) => {
             .then((response) => {
               this.download(response.msg);
               this.download(response.msg);