From b9ffd276b4fa8ca1918f486e70d7e4d0d04d9d9f Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Wed, 10 Aug 2022 08:47:46 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/zhny-dsjdp
---
src/views/manage/index.vue | 3792 +++++++++++++++++++++++++++++-----------------------------
1 files changed, 1,873 insertions(+), 1,919 deletions(-)
diff --git a/src/views/manage/index.vue b/src/views/manage/index.vue
index f810ba4..c43eb9c 100644
--- a/src/views/manage/index.vue
+++ b/src/views/manage/index.vue
@@ -6,2017 +6,1971 @@
* 经营主体监管
*/
<template>
- <div class="container">
- <div class="toggle-plot">
- <el-select
- popper-class="manage-select"
- v-model="farmValue"
- @change="farmSelectChange"
- placeholder="请选择农场"
- :popper-append-to-body="false"
- >
- <el-option
- v-for="item in farmSelect"
- :key="item.id"
- :label="item.farmName"
- :value="item.id"
- class=".manage-option"
- >
- </el-option>
- </el-select>
- </div>
- <div class="main-content">
- <div class="t">
- <statistics-num
- :className="'td'"
- :totalRegion="znum"
- :imgUrl="'/img/icon/mj.png'"
- :unit="'亩'"
- :title="'土地面积'"
- :subOneTitle="'使用面积'"
- :subOneNum="landsnum"
- :subTwoTitle="'未使用面积'"
- :subTwoNum="landwnum"
- ></statistics-num>
- <statistics-num
- :className="'kc'"
- :totalRegion="stockTj"
- :imgUrl="'/img/icon/kc.png'"
- :unit="'公斤'"
- :title="'库存数量'"
- :subOneTitle="'农产品'"
- :subOneNum="stockNCP"
- :subTwoTitle="'加工产品'"
- :subTwoNum="stockJG"
- ></statistics-num>
- <statistics-num
- :className="'nz'"
- :totalRegion="jnStock"
- :imgUrl="'/img/icon/syl.png'"
- :unit="'公斤'"
- :title="'农资年使用量'"
- :subOneTitle="'去年使用'"
- :subOneNum="qnStock"
- :subTwoTitle="'本月使用'"
- :subTwoNum="byStock"
- ></statistics-num>
- <statistics-num
- :className="'cl'"
- :totalRegion="yieldTj"
- :imgUrl="'/img/icon/ncl.png'"
- :unit="'公斤'"
- :title="'年产量'"
- :subOneTitle="'农产品'"
- :subOneNum="yieldNCP"
- :subTwoTitle="'加工产品'"
- :subTwoNum="yieldJG"
- ></statistics-num>
- <statistics-num
- :className="'lt'"
- :totalRegion="salaNumBN"
- :imgUrl="'/img/icon/lt.png'"
- :unit="'公斤'"
- :title="'市场流通量'"
- :subOneTitle="'去年流通量'"
- :subOneNum="salaNumQN"
- :subTwoTitle="'本月流通量'"
- :subTwoNum="salaNumBY"
- ></statistics-num>
- </div>
- <div class="c">
- <div class="time-box">
- <time-box
- :imgUrl="'/img/icon/current.png'"
- :title="'溯源次数'"
- :currentNum="sweepList['todayNum']"
- :subTitle="'昨日溯源次数对比'"
- :contrast="sweepList['yesterdayNum']"
- :upDown="
+ <div class="container">
+ <div class="toggle-plot">
+ <el-select
+ popper-class="manage-select"
+ v-model="farmValue"
+ @change="farmSelectChange"
+ placeholder="请选择农场"
+ :popper-append-to-body="false"
+ >
+ <el-option
+ v-for="item in farmSelect"
+ :key="item.id"
+ :label="item.farmName"
+ :value="item.id"
+ class=".manage-option"
+ ></el-option>
+ </el-select>
+ </div>
+ <div class="main-content">
+ <div class="t">
+ <statistics-num
+ :className="'td'"
+ :totalRegion="znum"
+ :imgUrl="'/img/icon/mj.png'"
+ :unit="'亩'"
+ :title="'土地面积'"
+ :subOneTitle="'使用面积'"
+ :subOneNum="landsnum"
+ :subTwoTitle="'未使用面积'"
+ :subTwoNum="landwnum"
+ ></statistics-num>
+ <statistics-num
+ :className="'kc'"
+ :totalRegion="stockTj"
+ :imgUrl="'/img/icon/kc.png'"
+ :unit="'公斤'"
+ :title="'库存数量'"
+ :subOneTitle="'农产品'"
+ :subOneNum="stockNCP"
+ :subTwoTitle="'加工产品'"
+ :subTwoNum="stockJG"
+ ></statistics-num>
+ <statistics-num
+ :className="'nz'"
+ :totalRegion="jnStock"
+ :imgUrl="'/img/icon/syl.png'"
+ :unit="'公斤'"
+ :title="'农资年使用量'"
+ :subOneTitle="'去年使用'"
+ :subOneNum="qnStock"
+ :subTwoTitle="'本月使用'"
+ :subTwoNum="byStock"
+ ></statistics-num>
+ <statistics-num
+ :className="'cl'"
+ :totalRegion="yieldTj"
+ :imgUrl="'/img/icon/ncl.png'"
+ :unit="'公斤'"
+ :title="'年产量'"
+ :subOneTitle="'农产品'"
+ :subOneNum="yieldNCP"
+ :subTwoTitle="'加工产品'"
+ :subTwoNum="yieldJG"
+ ></statistics-num>
+ <statistics-num
+ :className="'lt'"
+ :totalRegion="salaNumBN"
+ :imgUrl="'/img/icon/lt.png'"
+ :unit="'公斤'"
+ :title="'市场流通量'"
+ :subOneTitle="'去年流通量'"
+ :subOneNum="salaNumQN"
+ :subTwoTitle="'本月流通量'"
+ :subTwoNum="salaNumBY"
+ ></statistics-num>
+ </div>
+ <div class="c">
+ <div class="time-box">
+ <time-box
+ :imgUrl="'/img/icon/current.png'"
+ :title="'溯源次数'"
+ :currentNum="sweepList['todayNum']"
+ :subTitle="'昨日溯源次数对比'"
+ :contrast="sweepList['yesterdayNum']"
+ :upDown="
sweepList['todayNum'] > sweepList['yesterdayNum'] ? 'up' : 'down'
"
- ></time-box>
- <time-box
- :imgUrl="'/img/icon/week.png'"
- :title="'溯源次数'"
- :currentNum="sweepList['thisWeekNum']"
- :subTitle="'上周溯源次数对比'"
- :contrast="sweepList['lastWeekNum']"
- :upDown="
+ ></time-box>
+ <time-box
+ :imgUrl="'/img/icon/week.png'"
+ :title="'溯源次数'"
+ :currentNum="sweepList['thisWeekNum']"
+ :subTitle="'上周溯源次数对比'"
+ :contrast="sweepList['lastWeekNum']"
+ :upDown="
sweepList['thisWeekNum'] > sweepList['lastWeekNum']
? 'up'
: 'down'
"
- ></time-box>
- <time-box
- :imgUrl="'/img/icon/month.png'"
- :title="'溯源次数'"
- :currentNum="sweepList['thisMonthNum']"
- :subTitle="'上月溯源次数对比'"
- :contrast="sweepList['lastMonthNum']"
- :upDown="
+ ></time-box>
+ <time-box
+ :imgUrl="'/img/icon/month.png'"
+ :title="'溯源次数'"
+ :currentNum="sweepList['thisMonthNum']"
+ :subTitle="'上月溯源次数对比'"
+ :contrast="sweepList['lastMonthNum']"
+ :upDown="
sweepList['thisMonthNum'] > sweepList['lastMonthNum']
? 'up'
: 'down'
"
- ></time-box>
- </div>
- <div class="task-box">
- <div class="title">任务总数</div>
-
- <date-select :type="'taskSelect'"></date-select>
-
- <div class="echarts-box" id="TaskNumEcharts"></div>
- </div>
- <div class="nz-ncp">
- <div class="title-box">
- <div>
- <div class="item" :class="{ on: nzOrNcp == 'ncp' }">
- <div @click="nzOrNcp = 'ncp'" class="title">农产品投入</div>
- <span></span>
- </div>
- </div>
- <div>
- <div class="item" :class="{ on: nzOrNcp == 'nz' }">
- <div @click="nzOrNcp = 'nz'" class="title">农资投入</div>
- <span></span>
- </div>
- </div>
- </div>
- <date-select
- :type="'ncptrSelect'"
- v-if="nzOrNcp == 'ncp'"
- ></date-select>
- <date-select
- :type="'nztrSelect'"
- v-if="nzOrNcp == 'nz'"
- ></date-select>
- <div v-if="nzOrNcp == 'ncp'" class="lists-box">
- <div v-for="(item, index) in ncptr" :key="index">
- <div>{{ index + 1 }}</div>
- <div>{{ item.strainName }}</div>
- <div>{{ item.area }}亩</div>
- </div>
- <!-- <div>-->
- <!-- <div>2</div>-->
- <!-- <div>玉米</div>-->
- <!-- <div>75.12亩</div>-->
- <!-- </div>-->
- </div>
- <div v-if="nzOrNcp == 'nz'" class="lists-box">
- <div v-for="(item, index) in nztr" :key="index">
- <div>{{ index + 1 }}</div>
- <div>{{ item.agrname }}</div>
- <div>{{ item.cnum }}公斤</div>
- </div>
- <!-- <div>-->
- <!-- <div>2</div>-->
- <!-- <div>复合肥料</div>-->
- <!-- <div>68公斤</div>-->
- <!-- </div>-->
- </div>
- </div>
- <div class="trp-ncp">
- <div class="title-box">
- <div>
- <div class="item" :class="{ on: trpOrNcp == 'trp' }">
- <div @click="trpOrNcpChange('trp')" class="title">
- 投入品监管
+ ></time-box>
</div>
- <span></span>
- </div>
- </div>
- <div>
- <div class="item" :class="{ on: trpOrNcp == 'ncp' }">
- <div @click="trpOrNcpChange('ncp')" class="title">
- 农产品监管
+ <div class="task-box">
+ <div class="title">任务总数</div>
+
+ <date-select :type="'taskSelect'"></date-select>
+
+ <div class="echarts-box" id="TaskNumEcharts"></div>
</div>
- <span></span>
- </div>
- </div>
+ <div class="nz-ncp">
+ <div class="title-box">
+ <div>
+ <div class="item" :class="{ on: nzOrNcp == 'ncp' }">
+ <div @click="nzOrNcp = 'ncp'" class="title">农产品投入</div>
+ <span></span>
+ </div>
+ </div>
+ <div>
+ <div class="item" :class="{ on: nzOrNcp == 'nz' }">
+ <div @click="nzOrNcp = 'nz'" class="title">农资投入</div>
+ <span></span>
+ </div>
+ </div>
+ </div>
+ <date-select :type="'ncptrSelect'" v-if="nzOrNcp == 'ncp'"></date-select>
+ <date-select :type="'nztrSelect'" v-if="nzOrNcp == 'nz'"></date-select>
+ <div v-if="nzOrNcp == 'ncp'" class="lists-box">
+ <div v-for="(item, index) in ncptr" :key="index">
+ <div>{{ index + 1 }}</div>
+ <div>{{ item.strainName }}</div>
+ <div>{{ item.area }}亩</div>
+ </div>
+ <!-- <div>-->
+ <!-- <div>2</div>-->
+ <!-- <div>玉米</div>-->
+ <!-- <div>75.12亩</div>-->
+ <!-- </div>-->
+ </div>
+ <div v-if="nzOrNcp == 'nz'" class="lists-box">
+ <div v-for="(item, index) in nztr" :key="index">
+ <div>{{ index + 1 }}</div>
+ <div>{{ item.agrname }}</div>
+ <div>{{ item.cnum }}公斤</div>
+ </div>
+ <!-- <div>-->
+ <!-- <div>2</div>-->
+ <!-- <div>复合肥料</div>-->
+ <!-- <div>68公斤</div>-->
+ <!-- </div>-->
+ </div>
+ </div>
+ <div class="trp-ncp">
+ <div class="title-box">
+ <div>
+ <div class="item" :class="{ on: trpOrNcp == 'trp' }">
+ <div @click="trpOrNcpChange('trp')" class="title">投入品监管</div>
+ <span></span>
+ </div>
+ </div>
+ <div>
+ <div class="item" :class="{ on: trpOrNcp == 'ncp' }">
+ <div @click="trpOrNcpChange('ncp')" class="title">农产品监管</div>
+ <span></span>
+ </div>
+ </div>
- <div class="more" @click="popDetailedSupervise">
- 明细
- <img src="/img/icon/more.png" alt />
- </div>
- </div>
+ <div class="more" @click="popDetailedSupervise">
+ 明细
+ <img src="/img/icon/more.png" alt />
+ </div>
+ </div>
- <div class="echarts-box" id="TrpEcharts"></div>
- <!-- <div v-show="trpOrNcp == 'ncp'" class="echarts-box" id="NcpEcharts"></div>-->
+ <div class="echarts-box" id="TrpEcharts"></div>
+ <!-- <div v-show="trpOrNcp == 'ncp'" class="echarts-box" id="NcpEcharts"></div>-->
+ </div>
+ </div>
+ <div class="b">
+ <div class="cl-sy">
+ <div class="title-box">
+ <div>
+ <div class="item" :class="{ on: cltjOrsym == 'cltj' }">
+ <div @click="cltjOrSymChange('cltj')" class="title">产量统计</div>
+ <span></span>
+ </div>
+ </div>
+ <div>
+ <div class="item" :class="{ on: cltjOrsym == 'sym' }">
+ <div @click="cltjOrSymChange('sym')" class="title">溯源查询趋势图</div>
+ <span></span>
+ </div>
+ </div>
+
+ <div class="date">
+ <date-select :type="'cltjSelect'" v-if="cltjOrsym == 'cltj'"></date-select>
+ <date-select :type="'symSelect'" v-if="cltjOrsym == 'sym'"></date-select>
+ </div>
+ </div>
+
+ <div class="echarts-box" id="ClSyEcharts"></div>
+ </div>
+ <div class="ns-nz">
+ <div class="title-box">
+ <div>
+ <div class="item" :class="{ on: nsjlOrnz == 'nsjl' }">
+ <div @click="nsjlOrnz = 'nsjl'" class="title">农事记录</div>
+ <span></span>
+ </div>
+ </div>
+ <div>
+ <div class="item" :class="{ on: nsjlOrnz == 'nzcr' }">
+ <div @click="nsjlOrnz = 'nzcr'" class="title">农资出入库记录</div>
+ <span></span>
+ </div>
+ </div>
+
+ <div class="more" @click="popDetailedFarming({ type: '', landId: '' })">
+ 更多
+ <img src="/img/icon/more.png" alt />
+ </div>
+ </div>
+
+ <div v-if="nsjlOrnz == 'nsjl'" class="lists-box">
+ <div v-for="(item, index) in farminList" :key="index">
+ <div class="t-border"></div>
+ <div class="t-item">
+ <div>{{ item.typeName }}</div>
+ <div>{{ item.time }}</div>
+ </div>
+ <div class="b-item">
+ <div>{{ item.strainName }}</div>
+ <div>{{ item.realName }}</div>
+ <div>{{ item.landName }}</div>
+ </div>
+ <div class="b-border"></div>
+ </div>
+ </div>
+ <div v-if="nsjlOrnz == 'nzcr'" class="lists-box">
+ <div v-for="(item, index) in stockrecordList" :key="index">
+ <div class="t-border"></div>
+ <div class="t-item">
+ <div>{{ item.agrname }}</div>
+ <div>{{ item.time1 }}</div>
+ </div>
+ <div class="b-item">
+ <div>{{ item.spn }}</div>
+ <div>{{ item.type1 }}</div>
+ <div>{{ item.czr }}</div>
+ </div>
+ <div class="b-border"></div>
+ </div>
+ </div>
+ </div>
+ </div>
</div>
- </div>
- <div class="b">
- <div class="cl-sy">
- <div class="title-box">
- <div>
- <div class="item" :class="{ on: cltjOrsym == 'cltj' }">
- <div @click="cltjOrSymChange('cltj')" class="title">
- 产量统计
+
+ <public-box
+ v-show="trpPopupFlag"
+ :closeFlag="'trpPopupFlag'"
+ :className="'public-farm-oper-table'"
+ >
+ <template slot="public-box-header">
+ <div class="logo"></div>
+ <div class="title">投入品监管明细</div>
+ <img
+ @click="trpPopupFlag = false"
+ src="/img/icon/public-close.png"
+ alt
+ class="close"
+ />
+ </template>
+ <template slot="public-box-content">
+ <div class="action-bar">
+ <div class="search">
+ <el-input
+ class="search-input"
+ size="small"
+ prefix-icon="el-icon-search"
+ placeholder="请输入农资"
+ v-model="inputTRP_nzname"
+ ></el-input>
+ </div>
+ <div class="btn-grounp">
+ <el-button
+ size="small"
+ class="search"
+ type="primary"
+ icon="el-icon-search"
+ @click="TRP_query"
+ >查询</el-button>
+ <el-button
+ size="small"
+ class="reset"
+ type="info"
+ icon="el-icon-refresh-right"
+ @click="TRP_refresh"
+ >重置</el-button>
+ </div>
</div>
- <span></span>
- </div>
- </div>
- <div>
- <div class="item" :class="{ on: cltjOrsym == 'sym' }">
- <div @click="cltjOrSymChange('sym')" class="title">
- 溯源查询趋势图
+ <div class="table-list">
+ <div class="t-header">
+ <div>农资</div>
+ <div>分类</div>
+ <div>规格</div>
+ <div>库存</div>
+ <div>数量</div>
+ <div>厂家</div>
+ </div>
+ <div class="t-body">
+ <div class="table-list" v-for="(item, index) in nztrAll" :key="index">
+ <div>{{ item.agrname }}</div>
+ <div>{{ item.stype }}</div>
+ <div>{{ item.spn }}</div>
+ <div>{{ item.amount }}{{ item.dic2 }}</div>
+ <div>{{ item.cnum }}{{ item.dic1 }}</div>
+ <div>{{ item.factoryName }}</div>
+ </div>
+ </div>
</div>
- <span></span>
- </div>
- </div>
+ </template>
+ </public-box>
- <div class="date">
- <date-select
- :type="'cltjSelect'"
- v-if="cltjOrsym == 'cltj'"
- ></date-select>
- <date-select
- :type="'symSelect'"
- v-if="cltjOrsym == 'sym'"
- ></date-select>
- </div>
- </div>
-
- <div class="echarts-box" id="ClSyEcharts"></div>
- </div>
- <div class="ns-nz">
- <div class="title-box">
- <div>
- <div class="item" :class="{ on: nsjlOrnz == 'nsjl' }">
- <div @click="nsjlOrnz = 'nsjl'" class="title">农事记录</div>
- <span></span>
- </div>
- </div>
- <div>
- <div class="item" :class="{ on: nsjlOrnz == 'nzcr' }">
- <div @click="nsjlOrnz = 'nzcr'" class="title">
- 农资出入库记录
+ <public-box
+ v-show="nzcrPopupFlag"
+ :closeFlag="'nzcrPopupFlag'"
+ :className="'public-farm-oper-table'"
+ >
+ <template slot="public-box-header">
+ <div class="logo"></div>
+ <div class="title">农资出入库记录</div>
+ <img
+ @click="nzcrPopupFlag = false"
+ src="/img/icon/public-close.png"
+ alt
+ class="close"
+ />
+ </template>
+ <template slot="public-box-content">
+ <div class="action-bar">
+ <div class="search">
+ <el-input
+ class="search-input"
+ size="small"
+ prefix-icon="el-icon-search"
+ placeholder="请输入农资"
+ v-model="inputNZ_nzname"
+ ></el-input>
+ </div>
+ <div class="btn-grounp">
+ <el-button
+ size="small"
+ class="search"
+ type="primary"
+ icon="el-icon-search"
+ @click="NZCR_query"
+ >查询</el-button>
+ <el-button
+ size="small"
+ class="reset"
+ type="info"
+ icon="el-icon-refresh-right"
+ @click="NZCR_refresh"
+ >重置</el-button>
+ </div>
</div>
- <span></span>
- </div>
- </div>
+ <div class="table-list">
+ <div class="t-header">
+ <div style="width: 225px">农资</div>
+ <div>分类</div>
+ <div>规格</div>
+ <div>类型</div>
+ <div>数量</div>
+ <div>操作时间</div>
+ <div>操作人</div>
+ </div>
+ <div class="t-body">
+ <div
+ class="table-list"
+ v-for="(item, index) in stockrecordAll"
+ :key="index"
+ >
+ <div style="width: 225px">{{ item.agrname }}</div>
+ <div>{{ item.stype == 0 ? "采购入库" : "调拨入库" }}</div>
+ <div>{{ item.spn }}</div>
+ <div>{{ item.type1 }}</div>
+ <div>{{ item.count }}</div>
+ <div>{{ item.createTime }}</div>
+ <div>{{ item.czr }}</div>
+ </div>
+ </div>
+ </div>
+ </template>
+ </public-box>
- <div
- class="more"
- @click="popDetailedFarming({ type: '', landId: '' })"
- >
- 更多
- <img src="/img/icon/more.png" alt />
- </div>
- </div>
+ <public-box
+ v-show="ncpPopupFlag"
+ :closeFlag="'ncpPopupFlag'"
+ :className="'public-farm-oper-table'"
+ >
+ <template slot="public-box-header">
+ <div class="logo"></div>
+ <div class="title">农产品监管</div>
+ <img
+ @click="ncpPopupFlag = false"
+ src="/img/icon/public-close.png"
+ alt
+ class="close"
+ />
+ </template>
+ <template slot="public-box-content">
+ <div class="action-bar">
+ <div class="search">
+ <el-input
+ class="search-input"
+ size="small"
+ prefix-icon="el-icon-search"
+ placeholder="请输入农产品"
+ v-model="inputNCP_nzname"
+ ></el-input>
+ </div>
+ <div class="btn-grounp">
+ <el-button
+ size="small"
+ class="search"
+ type="primary"
+ icon="el-icon-search"
+ @click="NCP_query"
+ >查询</el-button>
+ <el-button
+ size="small"
+ class="reset"
+ type="info"
+ icon="el-icon-refresh-right"
+ @click="NCP_refresh"
+ >重置</el-button>
+ </div>
+ </div>
+ <div class="table-list">
+ <div class="t-header">
+ <div>农产品</div>
+ <div>作业方式</div>
+ <div>采收地块</div>
+ <div>类型</div>
+ <div>采收数量</div>
+ <div>操作时间</div>
+ <div>操作人</div>
+ </div>
+ <div class="t-body">
+ <div class="table-list" v-for="(item, index) in ncpAll" :key="index">
+ <div>{{ item.strainName }}</div>
+ <div>{{ item.jobWay == 0 ? "人工" : "机械" }}</div>
+ <div>{{ item.landName }}</div>
+ <div>{{ Number(item.leaves) + 1 }}等品</div>
+ <div>{{ item.weight }}公斤</div>
+ <div>{{ item.createTime }}</div>
+ <div>{{ item.realName }}</div>
+ </div>
+ </div>
+ </div>
+ </template>
+ </public-box>
- <div v-if="nsjlOrnz == 'nsjl'" class="lists-box">
- <div v-for="(item, index) in farminList" :key="index">
- <div class="t-border"></div>
- <div class="t-item">
- <div>{{ item.typeName }}</div>
- <div>{{ item.time }}</div>
- </div>
- <div class="b-item">
- <div>{{ item.strainName }}</div>
- <div>{{ item.realName }}</div>
- <div>{{ item.landName }}</div>
- </div>
- <div class="b-border"></div>
- </div>
- </div>
- <div v-if="nsjlOrnz == 'nzcr'" class="lists-box">
- <div v-for="(item, index) in stockrecordList" :key="index">
- <div class="t-border"></div>
- <div class="t-item">
- <div>{{ item.agrname }}</div>
- <div>{{ item.time1 }}</div>
- </div>
- <div class="b-item">
- <div>{{ item.spn }}</div>
- <div>{{ item.type1 }}</div>
- <div>{{ item.czr }}</div>
- </div>
- <div class="b-border"></div>
- </div>
- </div>
- </div>
- </div>
+ <public-box
+ v-show="nsjlPopupFlag"
+ :closeFlag="'nsjlPopupFlag'"
+ :className="'public-farm-oper-table'"
+ >
+ <template slot="public-box-header">
+ <div class="logo"></div>
+ <div class="title">农事操作</div>
+ <img
+ @click="nsjlPopupFlag = false"
+ src="/img/icon/public-close.png"
+ alt
+ class="close"
+ />
+ </template>
+ <template slot="public-box-content">
+ <div class="action-bar">
+ <div class="search">
+ <el-select
+ class="select-type"
+ size="small"
+ v-model="farmOperType"
+ placeholder="选择农事类型"
+ >
+ <el-option
+ v-for="(item, index) in farmingList"
+ :key="index"
+ :label="item.name"
+ :value="item.type"
+ ></el-option>
+ </el-select>
+
+ <el-select
+ class="select-plot"
+ size="small"
+ v-model="farmPlotId"
+ placeholder="选择地块"
+ >
+ <el-option
+ v-for="(item, index) in plotNumArray"
+ :key="index"
+ :label="item.landName"
+ :value="item.id"
+ ></el-option>
+ </el-select>
+ </div>
+ <div class="btn-grounp">
+ <el-button
+ size="small"
+ class="search"
+ type="primary"
+ icon="el-icon-search"
+ @click="farmSelectList"
+ >查询</el-button>
+ <el-button
+ size="small"
+ class="reset"
+ type="info"
+ icon="el-icon-refresh-right"
+ @click="farmResetList"
+ >重置</el-button>
+ </div>
+ </div>
+ <div class="table-list">
+ <div class="t-header">
+ <div>农事类型</div>
+ <div>地块</div>
+ <div>备注</div>
+ <div>农资</div>
+ <div>作业方式</div>
+ <div>农事操作时间</div>
+ <div>创建时间</div>
+ <div>操作人</div>
+ </div>
+ <div class="t-body">
+ <div class="table-list" v-for="(item, index) in farmOperList" :key="index">
+ <div>{{ item.typeName }}</div>
+ <div>{{ item.landName }}</div>
+ <div>{{ item.remarks == "" ? "--" : item.remarks }}</div>
+ <div>{{ item.agriculturalName }}</div>
+ <div>{{ item.jobWay == 0 ? "人工" : "机械" }}</div>
+ <div>{{ item.time }}</div>
+ <div>{{ item.createTime.substr(0, 10) }}</div>
+ <div>{{ item.realName }}</div>
+ </div>
+ </div>
+ </div>
+ </template>
+ </public-box>
</div>
-
- <public-box
- v-show="trpPopupFlag"
- :closeFlag="'trpPopupFlag'"
- :className="'public-farm-oper-table'"
- >
- <template slot="public-box-header">
- <div class="logo"></div>
- <div class="title">投入品监管明细</div>
- <img
- @click="trpPopupFlag = false"
- src="/img/icon/public-close.png"
- alt
- class="close"
- />
- </template>
- <template slot="public-box-content">
- <div class="action-bar">
- <div class="search">
- <el-input
- class="search-input"
- size="small"
- prefix-icon="el-icon-search"
- placeholder="请输入农资"
- v-model="inputTRP_nzname"
- ></el-input>
- </div>
- <div class="btn-grounp">
- <el-button
- size="small"
- class="search"
- type="primary"
- icon="el-icon-search"
- @click="TRP_query"
- >查询</el-button
- >
- <el-button
- size="small"
- class="reset"
- type="info"
- icon="el-icon-refresh-right"
- @click="TRP_refresh"
- >重置</el-button
- >
- </div>
- </div>
- <div class="table-list">
- <div class="t-header">
- <div>农资</div>
- <div>分类</div>
- <div>规格</div>
- <div>库存</div>
- <div>数量</div>
- <div>厂家</div>
- </div>
- <div class="t-body">
- <div
- class="table-list"
- v-for="(item, index) in nztrAll"
- :key="index"
- >
- <div>{{ item.agrname }}</div>
- <div>{{ item.stype }}</div>
- <div>{{ item.spn }}</div>
- <div>{{ item.amount }}{{ item.dic2 }}</div>
- <div>{{ item.cnum }}{{ item.dic1 }}</div>
- <div>{{ item.factoryName }}</div>
- </div>
- </div>
- </div>
- </template>
- </public-box>
-
- <public-box
- v-show="nzcrPopupFlag"
- :closeFlag="'nzcrPopupFlag'"
- :className="'public-farm-oper-table'"
- >
- <template slot="public-box-header">
- <div class="logo"></div>
- <div class="title">农资出入库记录</div>
- <img
- @click="nzcrPopupFlag = false"
- src="/img/icon/public-close.png"
- alt
- class="close"
- />
- </template>
- <template slot="public-box-content">
- <div class="action-bar">
- <div class="search">
- <el-input
- class="search-input"
- size="small"
- prefix-icon="el-icon-search"
- placeholder="请输入农资"
- v-model="inputNZ_nzname"
- ></el-input>
- </div>
- <div class="btn-grounp">
- <el-button
- size="small"
- class="search"
- type="primary"
- icon="el-icon-search"
- @click="NZCR_query"
- >查询</el-button
- >
- <el-button
- size="small"
- class="reset"
- type="info"
- icon="el-icon-refresh-right"
- @click="NZCR_refresh"
- >重置</el-button
- >
- </div>
- </div>
- <div class="table-list">
- <div class="t-header">
- <div style="width: 225px">农资</div>
- <div>分类</div>
- <div>规格</div>
- <div>类型</div>
- <div>数量</div>
- <div>操作时间</div>
- <div>操作人</div>
- </div>
- <div class="t-body">
- <div
- class="table-list"
- v-for="(item, index) in stockrecordAll"
- :key="index"
- >
- <div style="width: 225px">{{ item.agrname }}</div>
- <div>{{ item.stype == 0 ? "采购入库" : "调拨入库" }}</div>
- <div>{{ item.spn }}</div>
- <div>{{ item.type1 }}</div>
- <div>{{ item.count }}</div>
- <div>{{ item.createTime }}</div>
- <div>{{ item.czr }}</div>
- </div>
- </div>
- </div>
- </template>
- </public-box>
-
- <public-box
- v-show="ncpPopupFlag"
- :closeFlag="'ncpPopupFlag'"
- :className="'public-farm-oper-table'"
- >
- <template slot="public-box-header">
- <div class="logo"></div>
- <div class="title">农产品监管</div>
- <img
- @click="ncpPopupFlag = false"
- src="/img/icon/public-close.png"
- alt
- class="close"
- />
- </template>
- <template slot="public-box-content">
- <div class="action-bar">
- <div class="search">
- <el-input
- class="search-input"
- size="small"
- prefix-icon="el-icon-search"
- placeholder="请输入农资"
- v-model="inputNCP_nzname"
- ></el-input>
- </div>
- <div class="btn-grounp">
- <el-button
- size="small"
- class="search"
- type="primary"
- icon="el-icon-search"
- @click="NCP_query"
- >查询</el-button
- >
- <el-button
- size="small"
- class="reset"
- type="info"
- icon="el-icon-refresh-right"
- @click="NCP_refresh"
- >重置</el-button
- >
- </div>
- </div>
- <div class="table-list">
- <div class="t-header">
- <div>农资</div>
- <div>作业方式</div>
- <div>采收地块</div>
- <div>类型</div>
- <div>采收数量</div>
- <div>操作时间</div>
- <div>操作人</div>
- </div>
- <div class="t-body">
- <div
- class="table-list"
- v-for="(item, index) in ncpAll"
- :key="index"
- >
- <div>{{ item.strainName }}</div>
- <div>{{ item.jobWay == 0 ? "人工" : "机械" }}</div>
- <div>{{ item.landName }}</div>
- <div>{{ Number(item.leaves) + 1 }}等品</div>
- <div>{{ item.weight }}公斤</div>
- <div>{{ item.createTime }}</div>
- <div>{{ item.realName }}</div>
- </div>
- </div>
- </div>
- </template>
- </public-box>
-
- <public-box
- v-show="nsjlPopupFlag"
- :closeFlag="'nsjlPopupFlag'"
- :className="'public-farm-oper-table'"
- >
- <template slot="public-box-header">
- <div class="logo"></div>
- <div class="title">农事操作</div>
- <img
- @click="nsjlPopupFlag = false"
- src="/img/icon/public-close.png"
- alt
- class="close"
- />
- </template>
- <template slot="public-box-content">
- <div class="action-bar">
- <div class="search">
- <el-select
- class="select-type"
- size="small"
- v-model="farmOperType"
- placeholder="选择农事类型"
- >
- <el-option
- v-for="(item, index) in farmingList"
- :key="index"
- :label="item.name"
- :value="item.type"
- ></el-option>
- </el-select>
-
- <el-select
- class="select-plot"
- size="small"
- v-model="farmPlotId"
- placeholder="选择地块"
- >
- <el-option
- v-for="(item, index) in plotNumArray"
- :key="index"
- :label="item.landName"
- :value="item.id"
- ></el-option>
- </el-select>
- </div>
- <div class="btn-grounp">
- <el-button
- size="small"
- class="search"
- type="primary"
- icon="el-icon-search"
- @click="farmSelectList"
- >查询</el-button
- >
- <el-button
- size="small"
- class="reset"
- type="info"
- icon="el-icon-refresh-right"
- @click="farmResetList"
- >重置</el-button
- >
- </div>
- </div>
- <div class="table-list">
- <div class="t-header">
- <div>农事类型</div>
- <div>地块</div>
- <div>备注</div>
- <div>农资</div>
- <div>作业方式</div>
- <div>农事操作时间</div>
- <div>创建时间</div>
- <div>操作人</div>
- </div>
- <div class="t-body">
- <div
- class="table-list"
- v-for="(item, index) in farmOperList"
- :key="index"
- >
- <div>{{ item.typeName }}</div>
- <div>{{ item.landName }}</div>
- <div>{{ item.remarks == "" ? "--" : item.remarks }}</div>
- <div>{{ item.agriculturalName }}</div>
- <div>{{ item.jobWay == 0 ? "人工" : "机械" }}</div>
- <div>{{ item.time }}</div>
- <div>{{ item.createTime.substr(0, 10) }}</div>
- <div>{{ item.realName }}</div>
- </div>
- </div>
- </div>
- </template>
- </public-box>
- </div>
</template>
<script>
-import { selectXCount } from "@/api/land/land";
+import { selectXCount } from "@/api/land/land"
// eslint-disable-next-line no-unused-vars
import {
- getStockCount,
- statisticsStockAndYield,
- pageCount,
- pageCountNz,
- selectMarketCirculate,
- countTaskNum,
- farmingRecords,
- statisticsStockMonth,
- productsSupervise,
- pageCountNzCrk,
- getSweepRecordStatistics,
- getSweepRecordStatisticsByDayOrMonthOrYear,
- getFarmingRecordList,
- getFarmingStatis,
- getLandList,
- productsSuperviseList,
- farmSelectQuery,
-} from "@/api/farm/farmingrecord";
+ getStockCount,
+ statisticsStockAndYield,
+ pageCount,
+ pageCountNz,
+ selectMarketCirculate,
+ countTaskNum,
+ farmingRecords,
+ statisticsStockMonth,
+ productsSupervise,
+ pageCountNzCrk,
+ getSweepRecordStatistics,
+ getSweepRecordStatisticsByDayOrMonthOrYear,
+ getFarmingRecordList,
+ getFarmingStatis,
+ getLandList,
+ productsSuperviseList,
+ farmSelectQuery,
+} from "@/api/farm/farmingrecord"
export default {
- data() {
- return {
- landsnum: 0,
- landwnum: 0,
- znum: 0,
- jnStock: 0,
- qnStock: 0,
- byStock: 0,
- // 库存数量统计
- stockTj: 0,
- // 农产品数量统计
- stockNCP: 0,
- // 加工产品数量统计
- stockJG: 0,
- // 产量按月统计
- yieldMonth: [],
- // 年产量统计
- yieldTj: 0,
- // 农产品年产量统计
- yieldNCP: 0,
- // 加工产品年产量统计
- yieldJG: 0,
- // 农产品投入
- ncptr: [],
- nztr: [],
- // 统计市场流通/去年流通量/本月流通量
- salaNumBN: [],
- salaNumBY: [],
- salaNumQN: [],
- // 统计任务总数
- taskNum: [],
- // 农事记录
- farminList: [],
- // 农资出入库记录
- stockrecordList: [],
- // 农产品监管
- NcpJg: [],
- // 溯源次数
- sweepList: {},
- // 溯源趋势
- sweepTrend: [],
- nzOrNcp: "ncp",
- trpOrNcp: "trp",
- nsjlOrnz: "nsjl",
- cltjOrsym: "cltj",
- // 投入品监管窗体控制
- trpPopupFlag: false,
- // 农事记录窗体控制
- nsjlPopupFlag: false,
- // 农资出入记录窗体控制
- nzcrPopupFlag: false,
- // 农产品监管窗体控制
- ncpPopupFlag: false,
- // 农事操作记录列表
- farmOperList: [],
- // 选择的农事类型
- farmOperType: "",
- // 农场地块id
- farmPlotId: "",
- // 地块下拉
- plotNumArray: [],
- // 农事类型下拉
- farmingList: [],
- // 农资投入记录窗体
- nztrAll: [],
- // 农资出入库记录弹窗
- stockrecordAll: [],
- // 农产品监管记录弹窗
- ncpAll: [],
- // 农场下拉
- farmSelect: [],
- // 所选值
- farmValue: 1,
- inputNZ_nzname: "",
- inputTRP_nzname: "",
- inputNCP_nzname: "",
- };
- },
- created() {
- // 农场下拉列表
- this.farmSelectQuery();
-
- // 默认查询第一个农场数据
- this.AllDataUpdate();
- },
- mounted() {},
- methods: {
- // 农场下拉选中事件
- farmSelectChange(e) {
- this.AllDataUpdate();
- },
- // 全局数据刷新事件
- AllDataUpdate() {
- // 获取当前时间
- var date = new Date();
- var y = date.getFullYear() + "-" + this.checkTime(date.getMonth() + 1);
- var n = date.getFullYear() + "";
- this.selectXCount();
- this.getStockCount();
- // 年产量与库存数量
- this.statisticsStockAndYield(n);
- // 按月统计产量
- this.statisticsStockMonth(y);
- // 农产品投入
- this.pageCount(y);
- // 农资投入
- this.pageCountNz(y);
- // 统计市场流通/去年流通量/本月流通量
- this.selectMarketCirculate(n);
- // 统计任务总数
- this.countTaskNum(y);
- // 溯源趋势统计
- this.getSweepRecordStatisticsByDayOrMonthOrYear(y);
- // 农事操作
- this.farmingRecords();
- // 农产品监管
- this.productsSupervise(n);
- // 农资出入库记录
- this.pageCountNzCrk();
- // 溯源次数统计
- this.getSweepRecordStatistics();
- },
- // 农场下拉列表
- farmSelectQuery() {
- var params = {};
- params.current = "1";
- params.size = "999";
- farmSelectQuery(Object.assign(params)).then((res) => {
- this.farmSelect = res.data.data.records;
- });
- },
- // 投入品监管明细弹窗
- popDetailedSupervise() {
- if (this.trpOrNcp == "trp") {
- this.trpPopupFlag = true;
- } else {
- var params = {};
- params.codes = "000000";
- params.farmId = this.farmValue;
- params.current = "1";
- params.size = "999";
- productsSuperviseList(Object.assign(params)).then((res) => {
- this.ncpPopupFlag = true;
- this.ncpAll = res.data.data.records;
- });
- }
- },
- // 农事记录明细弹窗
- popDetailedFarming(item) {
- if (this.nsjlOrnz == "nsjl") {
- this.getFarmingStatis();
- this.getLandList();
- getFarmingRecordList({ type: item.type, landId: item.landId }).then(
- (res) => {
- this.farmOperList = res.data.data;
- this.nsjlPopupFlag = true;
- }
- );
- } else {
- var params = {};
- params.codes = "000000";
- params.farmId = this.farmValue;
- params.current = "1";
- params.size = "999";
- pageCountNzCrk(Object.assign(params)).then((res) => {
- this.nzcrPopupFlag = true;
- this.stockrecordAll = res.data.data.records;
- });
- }
- },
- // 农事操作搜索
- farmSelectList() {
- this.farmOperClick({ type: this.farmOperType, landId: this.farmPlotId });
- },
- // 农事操作重置
- farmResetList() {
- this.farmOperType = "";
- this.farmPlotId = "";
- this.farmOperClick({ type: this.farmOperType, landId: this.farmPlotId });
- },
- farmOperClick(item) {
- getFarmingRecordList({ type: item.type, landId: item.landId }).then(
- (res) => {
- this.farmOperList = res.data.data;
- this.farmOperPopup = true;
+ data () {
+ return {
+ landsnum: 0,
+ landwnum: 0,
+ znum: 0,
+ jnStock: 0,
+ qnStock: 0,
+ byStock: 0,
+ // 库存数量统计
+ stockTj: 0,
+ // 农产品数量统计
+ stockNCP: 0,
+ // 加工产品数量统计
+ stockJG: 0,
+ // 产量按月统计
+ yieldMonth: [],
+ // 年产量统计
+ yieldTj: 0,
+ // 农产品年产量统计
+ yieldNCP: 0,
+ // 加工产品年产量统计
+ yieldJG: 0,
+ // 农产品投入
+ ncptr: [],
+ nztr: [],
+ // 统计市场流通/去年流通量/本月流通量
+ salaNumBN: [],
+ salaNumBY: [],
+ salaNumQN: [],
+ // 统计任务总数
+ taskNum: [],
+ // 农事记录
+ farminList: [],
+ // 农资出入库记录
+ stockrecordList: [],
+ // 农产品监管
+ NcpJg: [],
+ // 溯源次数
+ sweepList: {},
+ // 溯源趋势
+ sweepTrend: [],
+ nzOrNcp: "ncp",
+ trpOrNcp: "trp",
+ nsjlOrnz: "nsjl",
+ cltjOrsym: "cltj",
+ // 投入品监管窗体控制
+ trpPopupFlag: false,
+ // 农事记录窗体控制
+ nsjlPopupFlag: false,
+ // 农资出入记录窗体控制
+ nzcrPopupFlag: false,
+ // 农产品监管窗体控制
+ ncpPopupFlag: false,
+ // 农事操作记录列表
+ farmOperList: [],
+ // 选择的农事类型
+ farmOperType: "",
+ // 农场地块id
+ farmPlotId: "",
+ // 地块下拉
+ plotNumArray: [],
+ // 农事类型下拉
+ farmingList: [],
+ // 农资投入记录窗体
+ nztrAll: [],
+ // 农资出入库记录弹窗
+ stockrecordAll: [],
+ // 农产品监管记录弹窗
+ ncpAll: [],
+ // 农场下拉
+ farmSelect: [],
+ // 所选值
+ farmValue: 1,
+ inputNZ_nzname: "",
+ inputTRP_nzname: "",
+ inputNCP_nzname: "",
}
- );
},
- // 任务总数时间查询
- getTaskTime(e) {
- this.countTaskNum(e);
- },
- // 农产品投入时间查询
- getNcptrTime(e) {
- this.pageCount(e);
- },
- // 农资投入时间查询
- getNztrTime(e) {
- this.pageCountNz(e);
- },
- // 产量统计时间查询
- getCltjTime(e) {
- this.statisticsStockMonth(e);
- },
- // 溯源趋势时间查询
- getSymTime(e) {
- this.getSweepRecordStatisticsByDayOrMonthOrYear(e);
- },
- // 农资出库记录查询按钮
- NZCR_query() {
- var params = {};
- params.codes = "000000";
- params.farmId = this.farmValue;
- params.agrname = this.inputNZ_nzname;
- params.current = "1";
- params.size = "999";
- pageCountNzCrk(Object.assign(params)).then((res) => {
- this.nzcrPopupFlag = true;
- this.stockrecordAll = res.data.data.records;
- });
- },
- // 农资出库记录重置按钮
- NZCR_refresh() {
- var params = {};
- this.inputNZ_nzname = "";
- params.codes = "000000";
- params.farmId = this.farmValue;
- params.current = "1";
- params.size = "999";
- pageCountNzCrk(Object.assign(params)).then((res) => {
- this.nzcrPopupFlag = true;
- this.stockrecordAll = res.data.data.records;
- });
- },
- // 投入品监管查询按钮
- TRP_query() {
- var params = {};
- params.codes = "000000";
- params.agrname = this.inputTRP_nzname;
- params.farmId = this.farmValue;
- pageCountNz(Object.assign(params)).then((res) => {
- this.nztrAll = res.data.data.records;
- });
- },
- // 投入品监管重置按钮
- TRP_refresh() {
- var params = {};
- params.codes = "000000";
- this.inputTRP_nzname = "";
- params.farmId = this.farmValue;
- pageCountNz(Object.assign(params)).then((res) => {
- this.nztrAll = res.data.data.records;
- });
- },
- // 农产品监管查询按钮
- NCP_query() {
- var params = {};
- params.codes = "000000";
- params.strainName = this.inputNCP_nzname;
- params.farmId = this.farmValue;
- params.current = "1";
- params.size = "999";
- productsSuperviseList(Object.assign(params)).then((res) => {
- this.ncpPopupFlag = true;
- this.ncpAll = res.data.data.records;
- });
- },
- // 农产品监管重置按钮
- NCP_refresh() {
- var params = {};
- params.codes = "000000";
- this.inputNCP_nzname = "";
- params.farmId = this.farmValue;
- params.current = "1";
- params.size = "999";
- productsSuperviseList(Object.assign(params)).then((res) => {
- this.ncpPopupFlag = true;
- this.ncpAll = res.data.data.records;
- });
- },
- initBar(dom) {
- const that = this;
- const chartDom = document.getElementById(dom);
- const myChart = this.$echarts.init(chartDom);
- var y = [];
- for (let i = 0; i < that.taskNum.length; i++) {
- y.push(that.taskNum[i].count);
- }
+ created () {
+ // 农场下拉列表
+ this.farmSelectQuery()
- const option = {
- grid: {
- top: "14%",
- left: "2%",
- right: "2%",
- bottom: "2%",
- containLabel: true,
+ // 默认查询第一个农场数据
+ this.AllDataUpdate()
+ },
+ mounted () { },
+ methods: {
+ // 农场下拉选中事件
+ farmSelectChange (e) {
+ this.AllDataUpdate()
},
- xAxis: {
- type: "category",
- data: ["已完成", "未完成", "超期完成"],
- axisLine: {
- lineStyle: {
- color: "rgba(153,153,153,.4)",
- },
- },
- axisTick: {
- show: false,
- },
- axisLabel: {
- color: "rgba(255,255,255,.4)",
- rotate: 0,
- },
+ // 全局数据刷新事件
+ AllDataUpdate () {
+ // 获取当前时间
+ var date = new Date()
+ var y = date.getFullYear() + "-" + this.checkTime(date.getMonth() + 1)
+ var n = date.getFullYear() + ""
+ this.selectXCount()
+ this.getStockCount()
+ // 年产量与库存数量
+ this.statisticsStockAndYield(n)
+ // 按月统计产量
+ this.statisticsStockMonth(y)
+ // 农产品投入
+ this.pageCount(y)
+ // 农资投入
+ this.pageCountNz(y)
+ // 统计市场流通/去年流通量/本月流通量
+ this.selectMarketCirculate(n)
+ // 统计任务总数
+ this.countTaskNum(y)
+ // 溯源趋势统计
+ this.getSweepRecordStatisticsByDayOrMonthOrYear(y)
+ // 农事操作
+ this.farmingRecords()
+ // 农产品监管
+ this.productsSupervise(n)
+ // 农资出入库记录
+ this.pageCountNzCrk()
+ // 溯源次数统计
+ this.getSweepRecordStatistics()
},
- yAxis: {
- name: "(次)",
- nameTextStyle: {
- color: "rgba(255,255,255,.4)",
- },
- axisLine: {
- lineStyle: {
- color: "#657CA8",
- },
- },
- axisTick: {
- show: false,
- },
- splitLine: {
- show: true,
- lineStyle: {
- color: "rgba(62,81,97, .5)",
- type: "dashed",
- },
- },
- axisLabel: {
- color: "rgba(255,255,255,.4)",
- },
+ // 农场下拉列表
+ farmSelectQuery () {
+ var params = {}
+ params.current = "1"
+ params.size = "999"
+ farmSelectQuery(Object.assign(params)).then((res) => {
+ this.farmSelect = res.data.data.records
+ })
},
- series: [
- {
- type: "bar",
- barWidth: 32,
- data: y,
- label: {
- show: true,
- position: "top",
- textStyle: {
- color: "rgba(255,255,255,.4)",
- },
- },
- itemStyle: {
- normal: {
- color: function (params) {
- var colorList = [
- ["#24A5DF", "#01E2D2"],
- ["#E59438", "#FEF880 "],
- ["#E34C4C", "#E6945E"],
- ];
- var index = params.dataIndex;
- if (params.dataIndex >= colorList.length) {
- index = params.dataIndex - colorList.length;
- }
- return new that.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
- {
- offset: 0,
- color: colorList[index][0],
- },
- {
- offset: 0.5,
- color: colorList[index][0],
- },
- {
- offset: 1,
- color: colorList[index][1],
- },
- ]);
+ // 投入品监管明细弹窗
+ popDetailedSupervise () {
+ if (this.trpOrNcp == "trp") {
+ this.trpPopupFlag = true
+ } else {
+ var params = {}
+ params.codes = "000000"
+ params.farmId = this.farmValue
+ params.current = "1"
+ params.size = "999"
+ productsSuperviseList(Object.assign(params)).then((res) => {
+ this.ncpPopupFlag = true
+ this.ncpAll = res.data.data.records
+ })
+ }
+ },
+ // 农事记录明细弹窗
+ popDetailedFarming (item) {
+ if (this.nsjlOrnz == "nsjl") {
+ this.getFarmingStatis()
+ this.getLandList()
+ getFarmingRecordList({ type: item.type, landId: item.landId }).then(
+ (res) => {
+ this.farmOperList = res.data.data
+ this.nsjlPopupFlag = true
+ }
+ )
+ } else {
+ var params = {}
+ params.codes = "000000"
+ params.farmId = this.farmValue
+ params.current = "1"
+ params.size = "999"
+ pageCountNzCrk(Object.assign(params)).then((res) => {
+ this.nzcrPopupFlag = true
+ this.stockrecordAll = res.data.data.records
+ })
+ }
+ },
+ // 农事操作搜索
+ farmSelectList () {
+ this.farmOperClick({ type: this.farmOperType, landId: this.farmPlotId })
+ },
+ // 农事操作重置
+ farmResetList () {
+ this.farmOperType = ""
+ this.farmPlotId = ""
+ this.farmOperClick({ type: this.farmOperType, landId: this.farmPlotId })
+ },
+ farmOperClick (item) {
+ getFarmingRecordList({ type: item.type, landId: item.landId }).then(
+ (res) => {
+ this.farmOperList = res.data.data
+ this.farmOperPopup = true
+ }
+ )
+ },
+ // 任务总数时间查询
+ getTaskTime (e) {
+ this.countTaskNum(e)
+ },
+ // 农产品投入时间查询
+ getNcptrTime (e) {
+ this.pageCount(e)
+ },
+ // 农资投入时间查询
+ getNztrTime (e) {
+ this.pageCountNz(e)
+ },
+ // 产量统计时间查询
+ getCltjTime (e) {
+ this.statisticsStockMonth(e)
+ },
+ // 溯源趋势时间查询
+ getSymTime (e) {
+ this.getSweepRecordStatisticsByDayOrMonthOrYear(e)
+ },
+ // 农资出库记录查询按钮
+ NZCR_query () {
+ var params = {}
+ params.codes = "000000"
+ params.farmId = this.farmValue
+ params.agrname = this.inputNZ_nzname
+ params.current = "1"
+ params.size = "999"
+ pageCountNzCrk(Object.assign(params)).then((res) => {
+ this.nzcrPopupFlag = true
+ this.stockrecordAll = res.data.data.records
+ })
+ },
+ // 农资出库记录重置按钮
+ NZCR_refresh () {
+ var params = {}
+ this.inputNZ_nzname = ""
+ params.codes = "000000"
+ params.farmId = this.farmValue
+ params.current = "1"
+ params.size = "999"
+ pageCountNzCrk(Object.assign(params)).then((res) => {
+ this.nzcrPopupFlag = true
+ this.stockrecordAll = res.data.data.records
+ })
+ },
+ // 投入品监管查询按钮
+ TRP_query () {
+ var params = {}
+ params.codes = "000000"
+ params.agrname = this.inputTRP_nzname
+ params.farmId = this.farmValue
+ pageCountNz(Object.assign(params)).then((res) => {
+ this.nztrAll = res.data.data.records
+ })
+ },
+ // 投入品监管重置按钮
+ TRP_refresh () {
+ var params = {}
+ params.codes = "000000"
+ this.inputTRP_nzname = ""
+ params.farmId = this.farmValue
+ pageCountNz(Object.assign(params)).then((res) => {
+ this.nztrAll = res.data.data.records
+ })
+ },
+ // 农产品监管查询按钮
+ NCP_query () {
+ var params = {}
+ params.codes = "000000"
+ params.strainName = this.inputNCP_nzname
+ params.farmId = this.farmValue
+ params.current = "1"
+ params.size = "999"
+ productsSuperviseList(Object.assign(params)).then((res) => {
+ this.ncpPopupFlag = true
+ this.ncpAll = res.data.data.records
+ })
+ },
+ // 农产品监管重置按钮
+ NCP_refresh () {
+ var params = {}
+ params.codes = "000000"
+ this.inputNCP_nzname = ""
+ params.farmId = this.farmValue
+ params.current = "1"
+ params.size = "999"
+ productsSuperviseList(Object.assign(params)).then((res) => {
+ this.ncpPopupFlag = true
+ this.ncpAll = res.data.data.records
+ })
+ },
+ initBar (dom) {
+ const that = this
+ const chartDom = document.getElementById(dom)
+ const myChart = this.$echarts.init(chartDom)
+ var y = []
+ for (let i = 0; i < that.taskNum.length; i++) {
+ y.push(that.taskNum[i].count)
+ }
+
+ const option = {
+ grid: {
+ top: "14%",
+ left: "2%",
+ right: "2%",
+ bottom: "2%",
+ containLabel: true,
},
- },
- },
- },
- ],
- };
-
- option && myChart.setOption(option);
- },
-
- initTrpBar(dom) {
- const that = this;
- const chartDom = document.getElementById(dom);
- const myChart = this.$echarts.init(chartDom);
- myChart.clear();
- var nztrData = this.nztr;
- var nztrX = [];
- var nztrY = [];
- for (let i = 0; i < nztrData.length; i++) {
- nztrX.push(nztrData[i].agrname);
- nztrY.push(nztrData[i].cnum);
- }
- const option = {
- grid: {
- top: "14%",
- left: "2%",
- right: "2%",
- bottom: "2%",
- containLabel: true,
- },
- xAxis: {
- type: "category",
- data: nztrX,
- axisLine: {
- lineStyle: {
- color: "rgba(153,153,153,.4)",
- },
- },
- axisTick: {
- show: false,
- },
- axisLabel: {
- color: "rgba(255,255,255,.4)",
- rotate: 0,
- },
- },
- yAxis: {
- max: 600,
- name: "(公斤)",
- nameTextStyle: {
- color: "rgba(255,255,255,.4)",
- },
- axisLine: {
- lineStyle: {
- color: "#657CA8",
- },
- },
- axisTick: {
- show: false,
- },
- splitLine: {
- show: true,
- lineStyle: {
- color: "rgba(62,81,97, .5)",
- type: "dashed",
- },
- },
- axisLabel: {
- color: "rgba(255,255,255,.4)",
- },
- },
- series: [
- {
- type: "bar",
- barWidth: 32,
- data: nztrY,
- label: {
- show: true,
- position: "top",
- textStyle: {
- color: "rgba(255,255,255,.4)",
- },
- },
- itemStyle: {
- normal: {
- color: new that.$echarts.graphic.LinearGradient(
- // 前四个参数用于配置渐变色的起止位置,这四个参数依次对应 右下左上 四个方位。也就是从右边开始顺时针方向。
- // 通过修改前4个参数,可以实现不同的渐变方向
- /* 第五个参数则是一个数组,用于配置颜色的渐变过程。
- 每项为一个对象,包含offset和color两个参数
- */
- 0,
- 0,
- 0,
- 1,
- [
- {
- // 代表渐变色从正上方开始
- offset: 0, // offset范围是0~1,用于表示位置,0是指0%处的颜色
- color: "#24A5DF",
- }, // 柱图渐变色
- {
- offset: 1, // 指100%处的颜色
- color: "#01E2D2",
+ xAxis: {
+ type: "category",
+ data: ["已完成", "未完成", "超期完成"],
+ axisLine: {
+ lineStyle: {
+ color: "rgba(153,153,153,.4)",
+ },
},
- ]
- ),
- },
- },
- },
- ],
- };
+ axisTick: {
+ show: false,
+ },
+ axisLabel: {
+ color: "rgba(255,255,255,.4)",
+ rotate: 0,
+ },
+ },
+ yAxis: {
+ name: "(次)",
+ nameTextStyle: {
+ color: "rgba(255,255,255,.4)",
+ },
+ axisLine: {
+ lineStyle: {
+ color: "#657CA8",
+ },
+ },
+ axisTick: {
+ show: false,
+ },
+ splitLine: {
+ show: true,
+ lineStyle: {
+ color: "rgba(62,81,97, .5)",
+ type: "dashed",
+ },
+ },
+ axisLabel: {
+ color: "rgba(255,255,255,.4)",
+ },
+ },
+ series: [
+ {
+ type: "bar",
+ barWidth: 32,
+ data: y,
+ label: {
+ show: true,
+ position: "top",
+ textStyle: {
+ color: "rgba(255,255,255,.4)",
+ },
+ },
+ itemStyle: {
+ normal: {
+ color: function (params) {
+ var colorList = [
+ ["#24A5DF", "#01E2D2"],
+ ["#E59438", "#FEF880 "],
+ ["#E34C4C", "#E6945E"],
+ ]
+ var index = params.dataIndex
+ if (params.dataIndex >= colorList.length) {
+ index = params.dataIndex - colorList.length
+ }
+ return new that.$echarts.graphic.LinearGradient(0, 0, 0, 1, [
+ {
+ offset: 0,
+ color: colorList[index][0],
+ },
+ {
+ offset: 0.5,
+ color: colorList[index][0],
+ },
+ {
+ offset: 1,
+ color: colorList[index][1],
+ },
+ ])
+ },
+ },
+ },
+ },
+ ],
+ }
- option && myChart.setOption(option);
- },
-
- initNcpBar(dom) {
- const that = this;
- const chartDom = document.getElementById(dom);
- const myChart = this.$echarts.init(chartDom);
- myChart.clear();
-
- var data = that.NcpJg;
- var dj = ["一等品", "二等品", "三等品", "四等品", "五等品"];
- var echartData = [];
- var sum = 0;
- for (var i = 0; i < 5; i++) {
- sum += Number(data[i]);
- echartData.push({
- name: dj[i],
- value: data[i],
- });
- }
- const option = {
- tooltip: {
- trigger: "item",
+ option && myChart.setOption(option)
},
- legend: {
- top: "5%",
- padding: [50, 100, 0, 0],
- orient: "vertical",
- left: "right",
- },
- series: [
- {
- name: "品质",
- type: "pie",
- radius: ["40%", "70%"],
- avoidLabelOverlap: false,
- label: {
- normal: {
- show: true,
- formatter: "产品总数\n\n" + sum,
- position: "center",
- lineHight: 30,
- },
- },
- labelLine: {
- show: false,
- },
- data: echartData,
- },
- ],
- };
- option && myChart.setOption(option);
- },
+ initTrpBar (dom) {
+ const that = this
+ const chartDom = document.getElementById(dom)
+ const myChart = this.$echarts.init(chartDom)
+ myChart.clear()
+ var nztrData = this.nztr
+ var nztrX = []
+ var nztrY = []
+ for (let i = 0; i < nztrData.length; i++) {
+ nztrX.push(nztrData[i].agrname)
+ nztrY.push(nztrData[i].cnum)
+ }
+ const option = {
+ grid: {
+ top: "14%",
+ left: "2%",
+ right: "2%",
+ bottom: "2%",
+ containLabel: true,
+ },
+ xAxis: {
+ type: "category",
+ data: nztrX,
+ axisLine: {
+ lineStyle: {
+ color: "rgba(153,153,153,.4)",
+ },
+ },
+ axisTick: {
+ show: false,
+ },
+ axisLabel: {
+ color: "rgba(255,255,255,.4)",
+ rotate: 0,
+ },
+ },
+ yAxis: {
+ max: 600,
+ name: "(公斤)",
+ nameTextStyle: {
+ color: "rgba(255,255,255,.4)",
+ },
+ axisLine: {
+ lineStyle: {
+ color: "#657CA8",
+ },
+ },
+ axisTick: {
+ show: false,
+ },
+ splitLine: {
+ show: true,
+ lineStyle: {
+ color: "rgba(62,81,97, .5)",
+ type: "dashed",
+ },
+ },
+ axisLabel: {
+ color: "rgba(255,255,255,.4)",
+ },
+ },
+ series: [
+ {
+ type: "bar",
+ barWidth: 32,
+ data: nztrY,
+ label: {
+ show: true,
+ position: "top",
+ textStyle: {
+ color: "rgba(255,255,255,.4)",
+ },
+ },
+ itemStyle: {
+ normal: {
+ color: new that.$echarts.graphic.LinearGradient(
+ // 前四个参数用于配置渐变色的起止位置,这四个参数依次对应 右下左上 四个方位。也就是从右边开始顺时针方向。
+ // 通过修改前4个参数,可以实现不同的渐变方向
+ /* 第五个参数则是一个数组,用于配置颜色的渐变过程。
+ 每项为一个对象,包含offset和color两个参数
+ */
+ 0,
+ 0,
+ 0,
+ 1,
+ [
+ {
+ // 代表渐变色从正上方开始
+ offset: 0, // offset范围是0~1,用于表示位置,0是指0%处的颜色
+ color: "#24A5DF",
+ }, // 柱图渐变色
+ {
+ offset: 1, // 指100%处的颜色
+ color: "#01E2D2",
+ },
+ ]
+ ),
+ },
+ },
+ },
+ ],
+ }
- initClSyBar(dom) {
- const chartDom = document.getElementById(dom);
- const myChart = this.$echarts.init(chartDom);
- myChart.clear();
- var data = [];
- var data1 = ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"];
- var data2 = [];
- var ncp = this.yieldMonth;
- for (let i = 0; i < ncp.length; i++) {
- data.push(ncp[i].time);
- data2.push(ncp[i].num);
- }
+ option && myChart.setOption(option)
+ },
- const option = {
- grid: {
- top: "10%",
- right: "0%",
- left: "0%",
- bottom: "0%",
- containLabel: true,
- },
- tooltip: {
- trigger: "axis",
- axisPointer: {
- type: "shadow",
- },
- },
- legend: {
- left: "center",
- data: ["加工产品", "农产品"],
- textStyle: {
- color: "#A9D1D7",
- },
- },
- xAxis: {
- data: data,
- axisLabel: {
- interval: 0,
- show: true,
- textStyle: {
- color: "rgba(255,255,255,0.6)",
- },
- },
- axisTick: {
- show: false,
- },
- axisLine: {
- show: true,
- lineStyle: {
- color: "#697B89",
- width: 1,
- },
- },
- },
- yAxis: [
- {
- min: 0,
- type: "value",
- axisLabel: {
- interval: 0,
- show: true,
- textStyle: {
- color: "#B4B5BE",
- },
- },
- axisLine: {
- show: true,
- lineStyle: {
- color: "#697B89",
- width: 1,
- },
- },
- splitLine: {
- show: true,
- lineStyle: {
- color: "rgba(62,81,97, .5)",
- type: "dashed",
- },
- },
- },
- ],
- series: [
- {
- name: "加工产品",
- type: "bar",
- barWidth: 14,
- silent: true,
- itemStyle: {
- normal: {
- color: "#E29646",
- },
- },
- data: data1,
- },
- {
- name: "农产品",
- type: "bar",
- barWidth: 14,
- silent: true,
- itemStyle: {
- normal: {
- color: "#6AE081",
- },
- },
- data: data2,
- },
- ],
- };
+ initNcpBar (dom) {
+ const that = this
+ const chartDom = document.getElementById(dom)
+ const myChart = this.$echarts.init(chartDom)
+ myChart.clear()
- option && myChart.setOption(option);
- },
- initSymyBar(dom) {
- const chartDom = document.getElementById(dom);
- const myChart = this.$echarts.init(chartDom);
- myChart.clear();
+ var data = that.NcpJg
+ var dj = ["一等品", "二等品", "三等品", "四等品", "五等品"]
+ var echartData = []
+ var sum = 0
+ for (var i = 0; i < 5; i++) {
+ sum += Number(data[i])
+ echartData.push({
+ name: dj[i],
+ value: data[i],
+ })
+ }
+ const option = {
+ tooltip: {
+ trigger: "item",
+ },
+ legend: {
+ top: "5%",
+ padding: [50, 100, 0, 0],
+ orient: "vertical",
+ left: "right",
+ },
+ series: [
+ {
+ name: "品质",
+ type: "pie",
+ radius: ["40%", "70%"],
+ avoidLabelOverlap: false,
+ label: {
+ normal: {
+ show: true,
+ formatter: "产品总数\n\n" + sum,
+ position: "center",
+ lineHight: 30,
+ },
+ },
+ labelLine: {
+ show: false,
+ },
+ data: echartData,
+ },
+ ],
+ }
- var data = this.sweepTrend;
- var x = [];
- var y = [];
- for (var i = 0; i < data.length; i++) {
- y.push(data[i].num);
- x.push(data[i].time);
- }
-
- var option = {
- grid: {
- top: "10%",
- right: "0%",
- left: "0%",
- bottom: "0%",
- containLabel: true,
+ option && myChart.setOption(option)
},
- xAxis: {
- type: "category",
- boundaryGap: false,
- data: x,
- },
- yAxis: [
- {
- min: 0,
- type: "value",
- axisLabel: {
- interval: 0,
- show: true,
- textStyle: {
- color: "#B4B5BE",
- },
- },
- axisLine: {
- show: true,
- lineStyle: {
- color: "#697B89",
- width: 1,
- },
- },
- splitLine: {
- show: true,
- lineStyle: {
- color: "rgba(62,81,97, .5)",
- type: "dashed",
- },
- },
- },
- ],
- series: [
- {
- data: y,
- type: "line",
- smooth: true,
- areaStyle: {},
- },
- ],
- };
- option && myChart.setOption(option);
- },
- // 农场使用率
- selectXCount() {
- // eslint-disable-next-line no-unused-vars
- var that = this;
- var farmId = that.farmValue;
- selectXCount(farmId).then((res) => {
- that.landsnum = res.data.data.snum.toFixed(0);
- that.landwnum = res.data.data.wnum.toFixed(0);
- that.znum = res.data.data.num.toFixed(0);
- });
- },
- // 农资使用概况
- getStockCount() {
- var that = this;
- var farmId = that.farmValue;
- getStockCount(farmId).then((res) => {
- that.jnStock = res.data.data.jn.toFixed(0);
- that.qnStock = res.data.data.qn.toFixed(0);
- that.byStock = res.data.data.by.toFixed(0);
- });
- },
- // 大屏经营概况库存数量与年产量
- statisticsStockAndYield(year) {
- var params = {};
- params.tenantId = "000000";
- params.farmId = this.farmValue;
- params.year = year;
- statisticsStockAndYield(Object.assign(params)).then((res) => {
- this.stockNCP = res.data.data.sum;
- this.stockJG = res.data.data.jgsum;
- this.stockTj = res.data.data.jgsum + res.data.data.sum;
- this.yieldNCP = res.data.data.ncpNcl;
- this.yieldJG = res.data.data.jgNcl;
- this.yieldTj = res.data.data.ncpNcl + res.data.data.jgNcl;
- });
- },
- // 按月统计产量
- statisticsStockMonth(e) {
- var params = {};
- params.tenantId = "000000";
- params.farmId = this.farmValue;
- params.year = e;
- statisticsStockMonth(Object.assign(params)).then((res) => {
- this.yieldMonth = res.data.data;
- this.initClSyBar("ClSyEcharts");
- });
- },
- // 农产品监管
- productsSupervise(year) {
- var params = {};
- params.tenantId = "000000";
- params.farmId = this.farmValue;
- params.year = year;
- productsSupervise(Object.assign(params)).then((res) => {
- this.NcpJg = res.data.data;
- });
- },
- // 农产品投入
- pageCount(e) {
- var params = {};
- params.tenantId = "000000";
- params.farmId = this.farmValue;
- params.year = e;
- params.status = "1";
- pageCount(Object.assign(params)).then((res) => {
- this.ncptr = res.data.data;
- });
- },
- // 农资投入
- pageCountNz(e) {
- var params = {};
- params.codes = "000000";
- params.farmId = this.farmValue;
- params.year = e;
- pageCountNz(Object.assign(params)).then((res) => {
- this.nztr = res.data.data.records;
- this.nztrAll = res.data.data.records;
- // 投入品监管图表
- this.initTrpBar("TrpEcharts");
- });
- },
- // 统计市场流通/去年流通量/本月流通量
- selectMarketCirculate(year) {
- var params = {};
- params.codes = "000000";
- params.farmId = this.farmValue;
- params.year = year;
- selectMarketCirculate(Object.assign(params)).then((res) => {
- this.salaNumBN = res.data.data[0].num;
- this.salaNumQN = res.data.data[1].num;
- this.salaNumBY = res.data.data[2].num;
- });
- },
- // 统计任务总数
- countTaskNum(year) {
- var params = {};
- params.codes = "000000";
- params.farmId = this.farmValue;
- params.year = year;
- countTaskNum(Object.assign(params)).then((res) => {
- this.taskNum = res.data.data;
- this.initBar("TaskNumEcharts");
- });
- },
- // 农事记录
- farmingRecords() {
- var params = {};
- params.tenantId = "000000";
- params.farmId = this.farmValue;
- params.current = "1";
- params.size = "3";
- farmingRecords(Object.assign(params)).then((res) => {
- var data = [];
- for (var i = 0; i < res.data.data.length; i++) {
- data.push(res.data.data[i]);
- if (i == 3) {
- break;
- }
- }
- this.farminList = data;
- });
- },
- // 农资出入库记录
- pageCountNzCrk() {
- var params = {};
- params.codes = "000000";
- params.farmId = this.farmValue;
- params.current = "1";
- params.size = "3";
- pageCountNzCrk(Object.assign(params)).then((res) => {
- this.stockrecordList = res.data.data.records;
- });
- },
- // 溯源次数统计
- getSweepRecordStatistics() {
- var params = {};
- // 农场id
- params.farmId = this.farmValue;
- getSweepRecordStatistics(Object.assign(params)).then((res) => {
- this.sweepList = res.data.data;
- });
- },
- // 溯源趋势统计
- getSweepRecordStatisticsByDayOrMonthOrYear(year) {
- var params = {};
- // 农场id
- params.farmId = this.farmValue;
- params.time = year;
- getSweepRecordStatisticsByDayOrMonthOrYear(Object.assign(params)).then(
- (res) => {
- this.sweepTrend = res.data.data;
- if (this.cltjOrsym == "sym") {
- this.initSymyBar("ClSyEcharts");
- }
- }
- );
- },
- // 监管图表切换
- trpOrNcpChange(item) {
- var that = this;
- that.trpOrNcp = item;
- if (item == "trp") {
- that.initTrpBar("TrpEcharts");
- } else {
+ initClSyBar (dom) {
+ const chartDom = document.getElementById(dom)
+ const myChart = this.$echarts.init(chartDom)
+ myChart.clear()
+ var data = []
+ var data1 = ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"]
+ var data2 = []
+ var ncp = this.yieldMonth
+ for (let i = 0; i < ncp.length; i++) {
+ data.push(ncp[i].time)
+ data2.push(ncp[i].num)
+ }
+
+ const option = {
+ grid: {
+ top: "10%",
+ right: "0%",
+ left: "0%",
+ bottom: "0%",
+ containLabel: true,
+ },
+ tooltip: {
+ trigger: "axis",
+ axisPointer: {
+ type: "shadow",
+ },
+ },
+ legend: {
+ left: "center",
+ data: ["加工产品", "农产品"],
+ textStyle: {
+ color: "#A9D1D7",
+ },
+ },
+ xAxis: {
+ data: data,
+ axisLabel: {
+ interval: 0,
+ show: true,
+ textStyle: {
+ color: "rgba(255,255,255,0.6)",
+ },
+ },
+ axisTick: {
+ show: false,
+ },
+ axisLine: {
+ show: true,
+ lineStyle: {
+ color: "#697B89",
+ width: 1,
+ },
+ },
+ },
+ yAxis: [
+ {
+ min: 0,
+ type: "value",
+ axisLabel: {
+ interval: 0,
+ show: true,
+ textStyle: {
+ color: "#B4B5BE",
+ },
+ },
+ axisLine: {
+ show: true,
+ lineStyle: {
+ color: "#697B89",
+ width: 1,
+ },
+ },
+ splitLine: {
+ show: true,
+ lineStyle: {
+ color: "rgba(62,81,97, .5)",
+ type: "dashed",
+ },
+ },
+ },
+ ],
+ series: [
+ {
+ name: "加工产品",
+ type: "bar",
+ barWidth: 14,
+ silent: true,
+ itemStyle: {
+ normal: {
+ color: "#E29646",
+ },
+ },
+ data: data1,
+ },
+ {
+ name: "农产品",
+ type: "bar",
+ barWidth: 14,
+ silent: true,
+ itemStyle: {
+ normal: {
+ color: "#6AE081",
+ },
+ },
+ data: data2,
+ },
+ ],
+ }
+
+ option && myChart.setOption(option)
+ },
+ initSymyBar (dom) {
+ const chartDom = document.getElementById(dom)
+ const myChart = this.$echarts.init(chartDom)
+ myChart.clear()
+
+ var data = this.sweepTrend
+ var x = []
+ var y = []
+ for (var i = 0; i < data.length; i++) {
+ y.push(data[i].num)
+ x.push(data[i].time)
+ }
+
+ var option = {
+ grid: {
+ top: "10%",
+ right: "0%",
+ left: "0%",
+ bottom: "0%",
+ containLabel: true,
+ },
+ xAxis: {
+ type: "category",
+ boundaryGap: false,
+ data: x,
+ },
+ yAxis: [
+ {
+ min: 0,
+ type: "value",
+ axisLabel: {
+ interval: 0,
+ show: true,
+ textStyle: {
+ color: "#B4B5BE",
+ },
+ },
+ axisLine: {
+ show: true,
+ lineStyle: {
+ color: "#697B89",
+ width: 1,
+ },
+ },
+ splitLine: {
+ show: true,
+ lineStyle: {
+ color: "rgba(62,81,97, .5)",
+ type: "dashed",
+ },
+ },
+ },
+ ],
+ series: [
+ {
+ data: y,
+ type: "line",
+ smooth: true,
+ areaStyle: {},
+ },
+ ],
+ }
+ option && myChart.setOption(option)
+ },
+ // 农场使用率
+ selectXCount () {
+ // eslint-disable-next-line no-unused-vars
+ var that = this
+ var farmId = that.farmValue
+ selectXCount(farmId).then((res) => {
+ that.landsnum = res.data.data.snum.toFixed(0)
+ that.landwnum = res.data.data.wnum.toFixed(0)
+ that.znum = res.data.data.num.toFixed(0)
+ })
+ },
+ // 农资使用概况
+ getStockCount () {
+ var that = this
+ var farmId = that.farmValue
+ getStockCount(farmId).then((res) => {
+ that.jnStock = res.data.data.jn.toFixed(0)
+ that.qnStock = res.data.data.qn.toFixed(0)
+ that.byStock = res.data.data.by.toFixed(0)
+ })
+ },
+ // 大屏经营概况库存数量与年产量
+ statisticsStockAndYield (year) {
+ var params = {}
+ params.tenantId = "000000"
+ params.farmId = this.farmValue
+ params.year = year
+ statisticsStockAndYield(Object.assign(params)).then((res) => {
+ this.stockNCP = res.data.data.sum
+ this.stockJG = res.data.data.jgsum
+ this.stockTj = res.data.data.jgsum + res.data.data.sum
+
+ this.yieldNCP = res.data.data.ncpNcl
+ this.yieldJG = res.data.data.jgNcl
+ this.yieldTj = res.data.data.ncpNcl + res.data.data.jgNcl
+ })
+ },
+ // 按月统计产量
+ statisticsStockMonth (e) {
+ var params = {}
+ params.tenantId = "000000"
+ params.farmId = this.farmValue
+ params.year = e
+ statisticsStockMonth(Object.assign(params)).then((res) => {
+ this.yieldMonth = res.data.data
+ this.initClSyBar("ClSyEcharts")
+ })
+ },
// 农产品监管
- that.initNcpBar("TrpEcharts");
- }
+ productsSupervise (year) {
+ var params = {}
+ params.tenantId = "000000"
+ params.farmId = this.farmValue
+ params.year = year
+ productsSupervise(Object.assign(params)).then((res) => {
+ this.NcpJg = res.data.data
+ })
+ },
+ // 农产品投入
+ pageCount (e) {
+ var params = {}
+ params.tenantId = "000000"
+ params.farmId = this.farmValue
+ params.year = e
+ params.status = "1"
+ pageCount(Object.assign(params)).then((res) => {
+ this.ncptr = res.data.data
+ })
+ },
+ // 农资投入
+ pageCountNz (e) {
+ var params = {}
+ params.codes = "000000"
+ params.farmId = this.farmValue
+ params.year = e
+ pageCountNz(Object.assign(params)).then((res) => {
+ this.nztr = res.data.data.records
+ this.nztrAll = res.data.data.records
+ // 投入品监管图表
+ this.initTrpBar("TrpEcharts")
+ })
+ },
+ // 统计市场流通/去年流通量/本月流通量
+ selectMarketCirculate (year) {
+ var params = {}
+ params.codes = "000000"
+ params.farmId = this.farmValue
+ params.year = year
+ selectMarketCirculate(Object.assign(params)).then((res) => {
+ this.salaNumBN = res.data.data[0].num
+ this.salaNumQN = res.data.data[1].num
+ this.salaNumBY = res.data.data[2].num
+ })
+ },
+ // 统计任务总数
+ countTaskNum (year) {
+ var params = {}
+ params.codes = "000000"
+ params.farmId = this.farmValue
+ params.year = year
+ countTaskNum(Object.assign(params)).then((res) => {
+ this.taskNum = res.data.data
+ this.initBar("TaskNumEcharts")
+ })
+ },
+ // 农事记录
+ farmingRecords () {
+ var params = {}
+ params.tenantId = "000000"
+ params.farmId = this.farmValue
+ params.current = "1"
+ params.size = "3"
+ farmingRecords(Object.assign(params)).then((res) => {
+ var data = []
+ for (var i = 0; i < res.data.data.length; i++) {
+ data.push(res.data.data[i])
+ if (i == 3) {
+ break
+ }
+ }
+ this.farminList = data
+ })
+ },
+ // 农资出入库记录
+ pageCountNzCrk () {
+ var params = {}
+ params.codes = "000000"
+ params.farmId = this.farmValue
+ params.current = "1"
+ params.size = "3"
+ pageCountNzCrk(Object.assign(params)).then((res) => {
+ this.stockrecordList = res.data.data.records
+ })
+ },
+ // 溯源次数统计
+ getSweepRecordStatistics () {
+ var params = {}
+ // 农场id
+ params.farmId = this.farmValue
+ getSweepRecordStatistics(Object.assign(params)).then((res) => {
+ this.sweepList = res.data.data
+ })
+ },
+ // 溯源趋势统计
+ getSweepRecordStatisticsByDayOrMonthOrYear (year) {
+ var params = {}
+ // 农场id
+ params.farmId = this.farmValue
+ params.time = year
+ getSweepRecordStatisticsByDayOrMonthOrYear(Object.assign(params)).then(
+ (res) => {
+ this.sweepTrend = res.data.data
+ if (this.cltjOrsym == "sym") {
+ this.initSymyBar("ClSyEcharts")
+ }
+ }
+ )
+ },
+ // 监管图表切换
+ trpOrNcpChange (item) {
+ var that = this
+ that.trpOrNcp = item
+ if (item == "trp") {
+ that.initTrpBar("TrpEcharts")
+ } else {
+ // 农产品监管
+ that.initNcpBar("TrpEcharts")
+ }
+ },
+ // 产量统计图表切换
+ cltjOrSymChange (item) {
+ var that = this
+ that.cltjOrsym = item
+ if (item == "cltj") {
+ this.initClSyBar("ClSyEcharts")
+ } else {
+ // 溯源码
+ this.initSymyBar("ClSyEcharts")
+ }
+ },
+ // 本年农事操作记录,分组统计
+ getFarmingStatis () {
+ var that = this
+ var farmId = that.farmValue
+ getFarmingStatis(farmId).then((res) => {
+ that.farmingList = res.data.data
+ })
+ },
+ // 地块下拉
+ getLandList () {
+ var params = {}
+ // 农场id
+ params.farmId = this.farmValue
+ getLandList(Object.assign(params)).then((res) => {
+ this.plotNumArray = res.data.data
+ })
+ },
+ checkTime (i) {
+ if (i < 10) {
+ i = "0" + i
+ }
+ return i
+ },
},
- // 产量统计图表切换
- cltjOrSymChange(item) {
- var that = this;
- that.cltjOrsym = item;
- if (item == "cltj") {
- this.initClSyBar("ClSyEcharts");
- } else {
- // 溯源码
- this.initSymyBar("ClSyEcharts");
- }
- },
- // 本年农事操作记录,分组统计
- getFarmingStatis() {
- var that = this;
- var farmId = that.farmValue;
- getFarmingStatis(farmId).then((res) => {
- that.farmingList = res.data.data;
- });
- },
- // 地块下拉
- getLandList() {
- var params = {};
- // 农场id
- params.farmId = this.farmValue;
- getLandList(Object.assign(params)).then((res) => {
- this.plotNumArray = res.data.data;
- });
- },
- checkTime(i) {
- if (i < 10) {
- i = "0" + i;
- }
- return i;
- },
- },
};
</script>
<style scoped lang="scss">
.container {
- padding: 20px;
- position: relative;
- width: 100%;
- height: 100%;
- background: #08192e;
- box-sizing: border-box;
+ padding: 20px;
+ position: relative;
+ width: 100%;
+ height: 100%;
+ background: #08192e;
+ box-sizing: border-box;
- .toggle-plot {
- text-align: left;
- height: 36px;
- line-height: 36px;
- font-size: 24px;
- font-weight: bold;
- color: #fff;
+ .toggle-plot {
+ text-align: left;
+ height: 36px;
+ line-height: 36px;
+ font-size: 24px;
+ font-weight: bold;
+ color: #fff;
- /deep/.el-input__inner {
- background-color: #0e3960;
- color: #66dde9;
- border: 1px solid #00f5fe;
- }
-
- /deep/.popper__arrow::after {
- border-bottom-color: #00f5fe;
- top: 0px;
- }
- /deep/.el-select-dropdown {
- // background-color: transparent;
- border: 1px solid #00f5fe;
- }
- /deep/.el-icon-arrow-up:before {
- color: #00f5fe;
- }
- .el-select-dropdown__item:hover,
- .el-select-dropdown__item.hover {
- background-color: #00f5fe;
- }
- }
-
- .main-content {
- margin-top: 10px;
- height: calc(100% - 46px);
- display: flex;
- flex-direction: column;
-
- .t {
- display: flex;
- justify-content: space-between;
-
- & > div:first-child {
- margin-left: 0;
- }
- }
-
- .c {
- margin-top: 20px;
- display: flex;
- justify-content: space-between;
-
- & > div {
- margin-left: 20px;
- width: calc((100% - 80px) / 5);
- height: 346px;
- border-radius: 8px 8px 8px 8px;
- background: rgba(0, 52, 85, 0.4);
- }
-
- & > div:first-child {
- margin-left: 0;
- }
-
- & > div:last-child {
- width: calc((100% - 80px) / 5 * 2 + 20px);
- }
-
- .time-box {
- padding: 0 25px;
- display: flex;
- flex-direction: column;
- box-sizing: border-box;
-
- & > div:last-child {
- border: none;
- }
- }
-
- .task-box {
- padding: 20px;
- display: flex;
- flex-direction: column;
- box-sizing: border-box;
-
- .title {
- text-align: left;
- font-size: 18px;
- font-weight: bold;
- color: #7ccfd6;
+ /deep/.el-input__inner {
+ background-color: #0e3960;
+ color: #66dde9;
+ border: 1px solid #00f5fe;
}
- .echarts-box {
- margin-top: 16px;
- flex: 1;
+ /deep/.popper__arrow::after {
+ border-bottom-color: #00f5fe;
+ top: 0px;
}
- }
+ /deep/.el-select-dropdown {
+ // background-color: transparent;
+ border: 1px solid #00f5fe;
+ }
+ /deep/.el-icon-arrow-up:before {
+ color: #00f5fe;
+ }
+ .el-select-dropdown__item:hover,
+ .el-select-dropdown__item.hover {
+ background-color: #00f5fe;
+ }
+ }
- .nz-ncp {
- padding: 20px;
+ .main-content {
+ margin-top: 10px;
+ height: calc(100% - 46px);
display: flex;
flex-direction: column;
- box-sizing: border-box;
- .title-box {
- display: flex;
-
- & > div {
+ .t {
display: flex;
- align-items: flex-start;
- font-size: 18px;
- color: #a9d1d7;
-
- .title {
- cursor: pointer;
- }
-
- .on {
- position: relative;
- font-weight: bold;
- color: #7ccfd6;
-
- span {
- position: absolute;
- bottom: -8px;
- left: 0;
- width: 100%;
- height: 3px;
- border-radius: 3px;
- background: #66dde9;
- }
- }
- }
-
- & > div:nth-child(2) {
- margin-left: 60px;
- }
- }
-
- .lists-box {
- margin-top: 16px;
- flex: 1;
- overflow-y: auto;
-
- & > div:nth-child(even) {
- background: rgba(102, 221, 233, 0.1);
- }
-
- & > div {
- display: flex;
- align-items: center;
justify-content: space-between;
- line-height: 48px;
- font-size: 18px;
- color: #a9d1d7;
& > div:first-child {
- margin-left: 16px;
+ margin-left: 0;
+ }
+ }
+
+ .c {
+ margin-top: 20px;
+ display: flex;
+ justify-content: space-between;
+
+ & > div {
+ margin-left: 20px;
+ width: calc((100% - 80px) / 5);
+ height: 346px;
+ border-radius: 8px 8px 8px 8px;
+ background: rgba(0, 52, 85, 0.4);
+ }
+
+ & > div:first-child {
+ margin-left: 0;
}
& > div:last-child {
- margin-right: 18px;
- color: #66dde9;
- }
- }
- }
- }
-
- .trp-ncp {
- padding: 20px;
- display: flex;
- flex-direction: column;
- box-sizing: border-box;
-
- .title-box {
- position: relative;
- display: flex;
-
- & > div {
- display: flex;
- align-items: flex-start;
- font-size: 18px;
- color: #a9d1d7;
-
- .title {
- cursor: pointer;
+ width: calc((100% - 80px) / 5 * 2 + 20px);
}
- .on {
- position: relative;
- font-weight: bold;
- color: #7ccfd6;
+ .time-box {
+ padding: 0 25px;
+ display: flex;
+ flex-direction: column;
+ box-sizing: border-box;
- span {
- position: absolute;
- bottom: -8px;
- left: 0;
- width: 100%;
- height: 3px;
- border-radius: 3px;
- background: #66dde9;
- }
+ & > div:last-child {
+ border: none;
+ }
}
- }
- & > div:nth-child(2) {
- margin-left: 60px;
- }
+ .task-box {
+ padding: 20px;
+ display: flex;
+ flex-direction: column;
+ box-sizing: border-box;
- .more {
- position: absolute;
- top: 0;
- left: auto;
- right: 0;
- bottom: 0;
- margin: auto;
- display: flex;
- align-items: center;
- font-size: 16px;
- cursor: pointer;
- img {
- margin-left: 6px;
- vertical-align: middle;
+ .title {
+ text-align: left;
+ font-size: 18px;
+ font-weight: bold;
+ color: #7ccfd6;
+ }
+
+ .echarts-box {
+ margin-top: 16px;
+ flex: 1;
+ }
}
- }
+
+ .nz-ncp {
+ padding: 20px;
+ display: flex;
+ flex-direction: column;
+ box-sizing: border-box;
+
+ .title-box {
+ display: flex;
+
+ & > div {
+ display: flex;
+ align-items: flex-start;
+ font-size: 18px;
+ color: #a9d1d7;
+
+ .title {
+ cursor: pointer;
+ }
+
+ .on {
+ position: relative;
+ font-weight: bold;
+ color: #7ccfd6;
+
+ span {
+ position: absolute;
+ bottom: -8px;
+ left: 0;
+ width: 100%;
+ height: 3px;
+ border-radius: 3px;
+ background: #66dde9;
+ }
+ }
+ }
+
+ & > div:nth-child(2) {
+ margin-left: 60px;
+ }
+ }
+
+ .lists-box {
+ margin-top: 16px;
+ flex: 1;
+ overflow-y: auto;
+
+ & > div:nth-child(even) {
+ background: rgba(102, 221, 233, 0.1);
+ }
+
+ & > div {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ line-height: 48px;
+ font-size: 18px;
+ color: #a9d1d7;
+
+ & > div:first-child {
+ margin-left: 16px;
+ }
+
+ & > div:last-child {
+ margin-right: 18px;
+ color: #66dde9;
+ }
+ }
+ }
+ }
+
+ .trp-ncp {
+ padding: 20px;
+ display: flex;
+ flex-direction: column;
+ box-sizing: border-box;
+
+ .title-box {
+ position: relative;
+ display: flex;
+
+ & > div {
+ display: flex;
+ align-items: flex-start;
+ font-size: 18px;
+ color: #a9d1d7;
+
+ .title {
+ cursor: pointer;
+ }
+
+ .on {
+ position: relative;
+ font-weight: bold;
+ color: #7ccfd6;
+
+ span {
+ position: absolute;
+ bottom: -8px;
+ left: 0;
+ width: 100%;
+ height: 3px;
+ border-radius: 3px;
+ background: #66dde9;
+ }
+ }
+ }
+
+ & > div:nth-child(2) {
+ margin-left: 60px;
+ }
+
+ .more {
+ position: absolute;
+ top: 0;
+ left: auto;
+ right: 0;
+ bottom: 0;
+ margin: auto;
+ display: flex;
+ align-items: center;
+ font-size: 16px;
+ cursor: pointer;
+ img {
+ margin-left: 6px;
+ vertical-align: middle;
+ }
+ }
+ }
+
+ .echarts-box {
+ margin-top: 16px;
+ flex: 1;
+ }
+ }
}
- .echarts-box {
- margin-top: 16px;
- flex: 1;
- }
- }
- }
-
- .b {
- margin-top: 20px;
- flex: 1;
- display: flex;
- justify-content: space-between;
-
- & > div {
- margin-left: 20px;
- border-radius: 8px 8px 8px 8px;
- background: rgba(0, 52, 85, 0.4);
- }
-
- & > div:first-child {
- margin-left: 0;
- flex: 1;
- }
-
- & > div:last-child {
- width: 444px;
- }
-
- .cl-sy {
- padding: 20px;
- display: flex;
- flex-direction: column;
- box-sizing: border-box;
-
- .title-box {
- height: 34px;
- position: relative;
- display: flex;
-
- & > div {
- display: flex;
- align-items: flex-start;
- font-size: 18px;
- color: #a9d1d7;
-
- .on {
- position: relative;
- font-weight: bold;
- color: #7ccfd6;
-
- span {
- position: absolute;
- bottom: -8px;
- left: 0;
- width: 100%;
- height: 3px;
- border-radius: 3px;
- background: #66dde9;
- }
- }
- }
-
- & > div:nth-child(2) {
- margin-left: 60px;
- }
-
- .date {
- position: absolute;
- top: -20px;
- left: auto;
- right: 0;
- bottom: auto;
- margin: auto;
- width: 320px;
- }
- }
-
- .echarts-box {
- margin-top: 16px;
- flex: 1;
- }
- }
-
- .ns-nz {
- padding: 20px;
- display: flex;
- flex-direction: column;
- box-sizing: border-box;
-
- .title-box {
- position: relative;
- display: flex;
-
- & > div {
- display: flex;
- align-items: flex-start;
- font-size: 18px;
- color: #a9d1d7;
-
- .title {
- cursor: pointer;
- }
-
- .on {
- position: relative;
- font-weight: bold;
- color: #7ccfd6;
-
- span {
- position: absolute;
- bottom: -8px;
- left: 0;
- width: 100%;
- height: 3px;
- border-radius: 3px;
- background: #66dde9;
- }
- }
- }
-
- & > div:nth-child(2) {
- margin-left: 60px;
- }
-
- .more {
- position: absolute;
- top: 0;
- left: auto;
- right: 0;
- bottom: 0;
- margin: auto;
- display: flex;
- align-items: center;
- font-size: 16px;
- cursor: pointer;
- img {
- margin-left: 6px;
- vertical-align: middle;
- }
- }
- }
-
- .lists-box {
- margin-top: 16px;
- flex: 1;
-
- display: flex;
- flex-direction: column;
-
- & > div {
- position: relative;
+ .b {
+ margin-top: 20px;
flex: 1;
- margin-top: 10px;
- padding: 10px 20px;
display: flex;
- flex-direction: column;
justify-content: space-between;
- background: rgba(102, 221, 233, 0.1);
- border-radius: 8px;
- font-size: 18px;
- color: #a9d1d7;
-
- & > .t-item {
- display: flex;
- align-items: center;
- justify-content: space-between;
-
- & > div:first-child {
- font-weight: bold;
- color: #66dde9;
- }
+ & > div {
+ margin-left: 20px;
+ border-radius: 8px 8px 8px 8px;
+ background: rgba(0, 52, 85, 0.4);
}
- & > .b-item {
- display: flex;
- align-items: center;
- justify-content: space-between;
-
- & > div:first-child {
- color: #fff;
- }
+ & > div:first-child {
+ margin-left: 0;
+ flex: 1;
}
- .t-border {
- top: 0;
- bottom: auto;
+ & > div:last-child {
+ width: 444px;
}
- .b-border {
- top: auto;
- bottom: 0;
+ .cl-sy {
+ padding: 20px;
+ display: flex;
+ flex-direction: column;
+ box-sizing: border-box;
+
+ .title-box {
+ height: 34px;
+ position: relative;
+ display: flex;
+
+ & > div {
+ display: flex;
+ align-items: flex-start;
+ font-size: 18px;
+ color: #a9d1d7;
+
+ .on {
+ position: relative;
+ font-weight: bold;
+ color: #7ccfd6;
+
+ span {
+ position: absolute;
+ bottom: -8px;
+ left: 0;
+ width: 100%;
+ height: 3px;
+ border-radius: 3px;
+ background: #66dde9;
+ }
+ }
+ }
+
+ & > div:nth-child(2) {
+ margin-left: 60px;
+ }
+
+ .date {
+ position: absolute;
+ top: -20px;
+ left: auto;
+ right: 0;
+ bottom: auto;
+ margin: auto;
+ width: 320px;
+ }
+ }
+
+ .echarts-box {
+ margin-top: 16px;
+ flex: 1;
+ }
}
- .t-border,
- .b-border {
- position: absolute;
- left: 0;
- right: 0;
- margin: auto;
- width: 80%;
- height: 1px;
- background: linear-gradient(
- 89deg,
- rgba(102, 221, 233, 0) 0%,
- #66dde9 51%,
- rgba(102, 221, 233, 0) 100%
- );
- }
- }
+ .ns-nz {
+ padding: 20px;
+ display: flex;
+ flex-direction: column;
+ box-sizing: border-box;
- & > div:first-child {
- margin-top: 10px;
- }
+ .title-box {
+ position: relative;
+ display: flex;
+
+ & > div {
+ display: flex;
+ align-items: flex-start;
+ font-size: 18px;
+ color: #a9d1d7;
+
+ .title {
+ cursor: pointer;
+ }
+
+ .on {
+ position: relative;
+ font-weight: bold;
+ color: #7ccfd6;
+
+ span {
+ position: absolute;
+ bottom: -8px;
+ left: 0;
+ width: 100%;
+ height: 3px;
+ border-radius: 3px;
+ background: #66dde9;
+ }
+ }
+ }
+
+ & > div:nth-child(2) {
+ margin-left: 60px;
+ }
+
+ .more {
+ position: absolute;
+ top: 0;
+ left: auto;
+ right: 0;
+ bottom: 0;
+ margin: auto;
+ display: flex;
+ align-items: center;
+ font-size: 16px;
+ cursor: pointer;
+ img {
+ margin-left: 6px;
+ vertical-align: middle;
+ }
+ }
+ }
+
+ .lists-box {
+ margin-top: 16px;
+ flex: 1;
+
+ display: flex;
+ flex-direction: column;
+
+ & > div {
+ position: relative;
+ flex: 1;
+ margin-top: 10px;
+ padding: 10px 20px;
+ display: flex;
+ flex-direction: column;
+ justify-content: space-between;
+
+ background: rgba(102, 221, 233, 0.1);
+ border-radius: 8px;
+ font-size: 18px;
+ color: #a9d1d7;
+
+ & > .t-item {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+
+ & > div:first-child {
+ font-weight: bold;
+ color: #66dde9;
+ }
+ }
+
+ & > .b-item {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+
+ & > div:first-child {
+ color: #fff;
+ }
+ }
+
+ .t-border {
+ top: 0;
+ bottom: auto;
+ }
+
+ .b-border {
+ top: auto;
+ bottom: 0;
+ }
+
+ .t-border,
+ .b-border {
+ position: absolute;
+ left: 0;
+ right: 0;
+ margin: auto;
+ width: 80%;
+ height: 1px;
+ background: linear-gradient(
+ 89deg,
+ rgba(102, 221, 233, 0) 0%,
+ #66dde9 51%,
+ rgba(102, 221, 233, 0) 100%
+ );
+ }
+ }
+
+ & > div:first-child {
+ margin-top: 10px;
+ }
+ }
+ }
}
- }
}
- }
}
</style>
--
Gitblit v1.9.3