石广澎
2023-11-29 b8dc4ccc6ee580b084aa860e64af2d90d1cb5979
admin-web/src/views/dashboard/index.vue
@@ -7,24 +7,29 @@
            <span class="font-18 font-bold">待办名称</span>
          </div>
          <div class="f-r f-r-between m-b-10">
            <el-radio-group v-model="waitType" size="medium">
            <el-radio-group v-model="waitType" size="mini">
              <el-radio-button label="1">全部</el-radio-button>
            </el-radio-group>
            <div class="to-more" @click="nav('/stock/transfer/transferissue')">查看更多 ></div>
          </div>
          <el-table :data="waitWorkData" class="top-tb" :show-header="false" size="medium">
            <el-table-column prop="number" align="center"></el-table-column>
            <el-table-column prop="type" align="center" width="100"></el-table-column>
            <el-table-column prop="orgName" align="center" width="100"></el-table-column>
            <el-table-column prop="name" align="center" width="80"></el-table-column>
            <el-table-column prop="createTime" align="center" width="180">
            <el-table-column prop="businessFormCode" align="center" width="130"></el-table-column>
            <el-table-column prop="inWarehouseName" align="center" min-width="130">
              <template slot-scope="{row}">
                <el-tooltip class="item" effect="dark" :content="row.inWarehouseName " placement="top-start">
                  <div class="font-14 color-333" style="width: 100%;white-space:nowrap;text-overflow: ellipsis;overflow: hidden">{{ row.inWarehouseName }}</div>
                </el-tooltip>
              </template>
            </el-table-column>
            <el-table-column prop="operatorName" align="center" width="80"></el-table-column>
            <el-table-column prop="createTime" align="center" width="160">
              <template slot-scope="scope">
                <span class="font-14 color-333">{{ formattTime(scope.row.createTime) }}</span>
              </template>
            </el-table-column>
            <el-table-column prop="date" label="操作" align="center" width="120">
            <el-table-column prop="date" label="操作" fixed="right" align="center" width="80">
              <template slot-scope="scope">
                <el-button @click.native.prevent="aduitThis(scope.row.id)" size="small" type="primary">处理</el-button>
                <el-button @click.native.prevent="aduitThis(scope.row.id)" type="primary">处理</el-button>
              </template>
            </el-table-column>
          </el-table>
@@ -36,7 +41,7 @@
            <span class="font-18 font-bold">预警通知</span>
          </div>
          <div class="f-r f-r-between m-b-10">
            <el-radio-group  size="medium" v-model="earlyWarningType" @change="changeEarlyWarning">
            <el-radio-group size="mini" v-model="earlyWarningType" @change="changeEarlyWarning">
              <el-radio-button label="1">全部</el-radio-button>
              <el-radio-button label="2">缺货(12)</el-radio-button>
              <el-radio-button label="3">超出(3)</el-radio-button>
@@ -70,42 +75,44 @@
    <div class="f-r f-r-between total-list">
      <div class="total-item">
        <div class="font-14 color-666">物品数量</div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">1200</span></div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.totalNum}}</span></div>
      </div>
      <div class="total-item">
        <div class="font-14 color-666">资产总金额</div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">120.88</span>万元</div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.totalPrice}}</span>万元</div>
      </div>
      <div class="total-item">
        <div class="font-14 color-666">物品占用率</div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">80%</span></div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.zhanYouPercent}}%</span></div>
      </div>
      <div class="total-item">
        <div class="font-14 color-666">A类物品数量</div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">120</span></div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.aTotalNum}}</span></div>
      </div>
      <div class="total-item">
        <div class="font-14 color-666">B类物品数量</div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">123</span></div>
        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.bTotalNum}}</span></div>
      </div>
    </div>
  <!-- 类别金额统计/类别数量统计 -->
    <!-- 类别金额统计/类别数量统计 -->
    <el-row :gutter="20">
      <el-col :span="12">
        <LBSLTJ></LBSLTJ>
        <LBSLTJ :num="goodsNumPrice"></LBSLTJ>
      </el-col>
      <el-col :span="12">
        <LBJETJ></LBJETJ>
        <LBJETJ :num="goodsNumPrice"></LBJETJ>
      </el-col>
    </el-row>
  <!--  资产增长/报废统计图(数量)-->
    <!--  资产增长/报废统计图(数量)-->
    <XYZC></XYZC>
  </div>
</template>
<script>
import {getGoodsNumPrice} from '@/api/dashboard'
// 创建Context
import {LongToDateTime} from "@/utils/DateFormatter";
import {transferList} from "@/api/stock/transfer";
const ComponentContext = require.context('./components', false, /\.vue$/i);
let res_components = {};
@@ -119,14 +126,21 @@
  components: {...res_components},
  data() {
    return {
      goodsNumPrice: {
        aTotalNum: 0,
        aTotalPrice: 0,
        bTotalNum: 0,
        bTotalPrice: 0,
        cTotalNum: 0,
        cTotalPrice: 0,
        tenantId: 0,
        totalNum: 0,
        totalPrice: 0,
        xiaFaNum: 0,
        zhanYouPercent: 0,
      },
      waitType: '1',
      waitWorkData: [
        {number: 'SJQ12345', type: '物品申领', orgName: '金融业务部', name: '张三丰', createTime: 20231127150606, id: 1},
        {number: 'SJQ12345', type: '物品申领', orgName: '金融业务部', name: '张三丰', createTime: 20231127150606, id: 2},
        {number: 'SJQ12345', type: '物品申领', orgName: '金融业务部', name: '张三丰', createTime: 20231127150606, id: 3},
        {number: 'SJQ12345', type: '物品申领', orgName: '金融业务部', name: '张三丰', createTime: 20231127150606, id: 4},
        {number: 'SJQ12345', type: '物品申领', orgName: '金融业务部', name: '张三丰', createTime: 20231127150606, id: 5},
      ], // 待办工作
      waitWorkData: [], // 待办工作
      earlyWarningType: '1',
      earlyWarningData: [
        {type: '施乐复印机碳粉', name: '施乐c2201', surplus: 4, createTime: 20231127150606, id: 1},
@@ -137,9 +151,21 @@
    };
  },
  created() {
    this.init()
    getGoodsNumPrice().then(res => {
      this.goodsNumPrice = res
    })
  },
  methods: {
    init(){
      transferList({
        qryType: 0,
        pageNum: 1,
        pageSize: 5,
      }).then((res) => {
        this.waitWorkData = res.datas;
      });
    },
    // 格式化时间
    formattTime(time) {
      return LongToDateTime(time)
@@ -170,8 +196,8 @@
        earlyWarningType: this.earlyWarningType
      }
    },
  //  跳转
    nav(url){
    //  跳转
    nav(url) {
      this.$router.push(url)
    }
  }
@@ -196,9 +222,11 @@
.top-tb {
  width: 100%;
}
>>>.el-table__body{
> > > .el-table__body {
  min-height: 265px;
}
.total-list {
  padding: 15px 0;
}