智慧农业大数据平台
zengh
2022-07-11 98eef5b98d7ce0fabfbf19814ac67d6f40c8d800
市场流通
2 files modified
229 ■■■■■ changed files
src/api/farm/farmingrecord.js 18 ●●●●● patch | view | raw | blame | history
src/views/manage/index.vue 211 ●●●● patch | view | raw | blame | history
src/api/farm/farmingrecord.js
@@ -124,6 +124,15 @@
        }
    })
}
export const productsSupervise = (params) => {
    return request({
        url: '/farmProductStock/productsSupervise',
        method: 'get',
        params: {
            ...params
        }
    })
}
export const pageCount = (params) => {
    return request({
@@ -144,6 +153,15 @@
        }
    })
}
export const pageCountNzCrk = (params) => {
    return request({
        url: '/stockrecord/stockrecord/page',
        method: 'get',
        params: {
            ...params
        }
    })
}
export const selctSaletCount = (params) => {
    return request({
        url: '/sale/sale/selctSaletCount',
src/views/manage/index.vue
@@ -120,7 +120,7 @@
                    </div>
                    <date-select></date-select>
                    <div v-if="nzOrNcp == 'ncp'" class="lists-box">
                        <div v-for="(item,index) in ncptr" :key="index" >
                        <div v-for="(item,index) in ncptr" :key="index">
                            <div>{{index + 1}}</div>
                            <div>{{item.strainName}}</div>
                            <div>{{item.area}}亩</div>
@@ -132,29 +132,29 @@
                        <!--                        </div>-->
                    </div>
                    <div v-if="nzOrNcp == 'nz'" class="lists-box">
                        <div v-for="(item,index) in nztr" :key="index" >
                        <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>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="trpOrNcp = 'trp'" class="title">投入品监管</div>
                                <div @click="trpOrNcpChange('trp')" class="title">投入品监管</div>
                                <span></span>
                            </div>
                        </div>
                        <div>
                            <div class="item" :class="{on: trpOrNcp == 'ncp'}">
                                <div @click="trpOrNcp = 'ncp'" class="title">农产品监管</div>
                                <div @click="trpOrNcpChange('ncp')" class="title">农产品监管</div>
                                <span></span>
                            </div>
                        </div>
@@ -165,8 +165,8 @@
                        </div>
                    </div>
                    <div v-if="trpOrNcp == 'trp'" class="echarts-box" id="TrpEcharts"></div>
                    <div v-if="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">
@@ -195,14 +195,14 @@
                <div class="ns-nz">
                    <div class="title-box">
                        <div>
                            <div class="item on">
                                <div class="title">农事记录</div>
                            <div  class="item" :class="{on : nsjlOrnz == 'nsjl'}">
                                <div @click="nsjlOrnz='nsjl'" class="title">农事记录</div>
                                <span></span>
                            </div>
                        </div>
                        <div>
                            <div class="item">
                                <div class="title">农资出入库记录</div>
                            <div  class="item" :class="{on : nsjlOrnz == 'nzcr'}">
                                <div @click="nsjlOrnz='nzcr'" class="title">农资出入库记录</div>
                                <span></span>
                            </div>
                        </div>
@@ -213,8 +213,8 @@
                        </div>
                    </div>
                    <div class="lists-box">
                        <div  v-for="(item,index) in farminList" :key="index">
                    <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>
@@ -224,6 +224,21 @@
                                <div>水稻</div>
                                <div>管理员</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>
@@ -247,7 +262,9 @@
        selectMarketCirculate,
        countTaskNum,
        farmingRecords,
        statisticsStockMonth
        statisticsStockMonth,
        productsSupervise,
        pageCountNzCrk
    } from '@/api/farm/farmingrecord'
    export default {
@@ -285,8 +302,13 @@
                taskNum: [],
                // 农事记录
                farminList: [],
                // 农资出入库记录
                stockrecordList: [],
                // 农产品监管
                NcpJg: [],
                nzOrNcp: 'ncp',
                trpOrNcp: 'trp'
                trpOrNcp: 'trp',
                nsjlOrnz: 'nsjl'
            }
        },
        created () {
@@ -307,16 +329,20 @@
            this.countTaskNum()
            // 农事操作
            this.farmingRecords()
            // 农产品监管
            this.productsSupervise()
            // 农资出入库记录
            this.pageCountNzCrk()
        },
        mounted () {
            // this.initNcpBar('NcpEcharts')
        },
        methods: {
            initBar (dom) {
                const that = this
                const chartDom = document.getElementById(dom)
                const myChart = this.$echarts.init(chartDom)
               var y = []
                var y = []
                for (let i = 0; i < that.taskNum.length; i++) {
                    y.push(that.taskNum[i].count)
                }
@@ -526,94 +552,47 @@
                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 = {
                    grid: {
                        top: '14%',
                        left: '2%',
                        right: '2%',
                        bottom: '2%',
                        containLabel: true
                    tooltip: {
                        trigger: 'item'
                    },
                    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: {
                        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)'
                        }
                    legend: {
                        top: '5%',
                        padding: [50, 100, 0, 0],
                        orient: 'vertical',
                        left: 'right'
                    },
                    series: [
                        {
                            type: 'bar',
                            barWidth: 32,
                            data: [500, 60],
                            name: '品质',
                            type: 'pie',
                            radius: ['40%', '70%'],
                            avoidLabelOverlap: false,
                            label: {
                                show: true,
                                position: 'top',
                                textStyle: {
                                    color: 'rgba(255,255,255,.4)'
                                normal: {
                                    show: true,
                                    formatter: '产品总数\n\n' + sum,
                                    position: 'center',
                                    lineHight: 30
                                }
                            },
                            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'
                                                }
                                            ]
                                        )
                                }
                            }
                            labelLine: {
                                show: false
                            },
                            data: echartData
                        }
                    ]
                }
@@ -814,6 +793,16 @@
                    this.initClSyBar('ClSyEcharts')
                })
            },
            // 农产品监管
            productsSupervise () {
                var params = {}
                params.tenantId = '000000'
                params.deptId = '1123598813738675201'
                params.year = '2022'
                productsSupervise(Object.assign(params)).then((res) => {
                    this.NcpJg = res.data.data
                })
            },
            // 农产品投入
            pageCount () {
                var params = {}
@@ -869,6 +858,28 @@
                farmingRecords(Object.assign(params)).then((res) => {
                    this.farminList = res.data.data.records
                })
            },
            // 农资出入库记录
            pageCountNzCrk () {
                var params = {}
                params.codes = '000000'
                params.deptId = '1123598813738675201'
                params.current = '1'
                params.size = '3'
                pageCountNzCrk(Object.assign(params)).then((res) => {
                    this.stockrecordList = res.data.data.records
                })
            },
            // 监管图表切换
            trpOrNcpChange (item) {
                var that = this
                that.trpOrNcp = item
                if (item == 'trp') {
                    that.initTrpBar('TrpEcharts')
                } else {
                    // 农产品监管
                    that.initNcpBar('TrpEcharts')
                }
            }
        }
    }