Merge remote-tracking branch 'origin/master'
| | |
| | | <div class="main_head"> |
| | | <div class="main_head_title"> |
| | | <span>入园人员统计总览</span> |
| | | <el-radio-group v-model="isGroupBy" size="mini" @change="getData(), getRataLists(), getReportLists()"> |
| | | <el-radio-group v-model="isGroupBy" @change="getData(), getRataLists(), getReportLists()"> |
| | | <el-radio-button :label="0">按人次统计</el-radio-button> |
| | | <el-radio-button :label="1">按人员统计</el-radio-button> |
| | | </el-radio-group> |
| | |
| | | <div class="dept_wrap"> |
| | | <div class="title"> |
| | | <span>人员分类统计</span> |
| | | <el-radio-group style="margin-left: 20px;" v-model="dateType" size="mini" @change="changeDateType"> |
| | | <el-radio-button label="month">月</el-radio-button> |
| | | <el-radio-button label="year">年</el-radio-button> |
| | | <el-radio-group style="margin-left: 43px;" v-model="dateType" @change="changeDateType"> |
| | | <el-radio-button label="month">月度</el-radio-button> |
| | | <el-radio-button label="year">年度</el-radio-button> |
| | | </el-radio-group> |
| | | <el-date-picker |
| | | v-model="value" |
| | | :type="dateType" |
| | | size="mini" |
| | | :clearable="false" |
| | | @change="getRataLists()" |
| | | :value-format="dateType === 'month' ? 'yyyy-MM' : 'yyyy'" |
| | | style="margin-left: 20px; width: 130px;" |
| | | style="margin-left: 10px; width: 130px;" |
| | | placeholder="请选择"> |
| | | </el-date-picker> |
| | | </div> |
| | |
| | | <div class="main_table"> |
| | | <div class="main_table_list"> |
| | | <div class="title" style="display: flex; align-items: center; justify-content: space-between;"> |
| | | <div> |
| | | <div style="display: flex; align-items: center;"> |
| | | <span>入园人员统计表</span> |
| | | <el-radio-group style="margin-left: 20px;" v-model="radio" size="mini" @change="changeBB"> |
| | | <el-radio-button label="month">月</el-radio-button> |
| | | <el-radio-button label="year">年</el-radio-button> |
| | | <el-radio-group style="margin-left: 43px;" v-model="radio" @change="changeBB"> |
| | | <el-radio-button label="month">月度</el-radio-button> |
| | | <el-radio-button label="year">年度</el-radio-button> |
| | | </el-radio-group> |
| | | <el-date-picker |
| | | v-model="date1" |
| | | :type="radio" |
| | | :clearable="false" |
| | | size="mini" |
| | | @change="getReportLists()" |
| | | :value-format="radio === 'month' ? 'yyyy-MM' : 'yyyy'" |
| | | style="margin-left: 20px; width: 130px;" |
| | | style="margin-left: 10px; width: 130px;" |
| | | placeholder="请选择"> |
| | | </el-date-picker> |
| | | </div> |
| | | <el-button type="primary" size="mini" style="margin-left: 20px;" @click="daochu">导出</el-button> |
| | | <el-button type="primary" icon="el-icon-upload2" style="margin-left: 20px;" @click="daochu">导出</el-button> |
| | | </div> |
| | | <div class="list_head"> |
| | | <div class="list_head_item" v-for="(item, index) in column" :key="index">{{item}}</div> |
| | |
| | | |
| | | let option = { |
| | | grid: { |
| | | left: '5%', |
| | | right: '10%', |
| | | bottom: '0%', |
| | | top: '20%', |
| | | left: '0%', |
| | | right: '5%', |
| | | bottom: '10%', |
| | | top: '10%', |
| | | containLabel: true |
| | | }, |
| | | tooltip: { |
| | |
| | | series: [ |
| | | { |
| | | data: datas, |
| | | type: 'line' |
| | | type: 'line', |
| | | areaStyle: { |
| | | normal: { |
| | | color: { |
| | | x: 0, |
| | | y: 0, |
| | | x2: 0, |
| | | y2: 1, |
| | | colorStops: [{ |
| | | offset: 0, |
| | | color: '#207FF7' // 0% 处的颜色 |
| | | }, { |
| | | offset: 1, |
| | | color: 'rgba(255,255,255,.2)' // 100% 处的颜色 |
| | | }], |
| | | globalCoord: false // 缺省为 false |
| | | } |
| | | } |
| | | }, |
| | | lineStyle: { // 线条样式 |
| | | color: { |
| | | type: 'linear', |
| | | x: 0, |
| | | y: 0, |
| | | x2: 0, |
| | | y2: 1, |
| | | colorStops: [{ |
| | | offset: 0, color: '#207FF7' // 0% 处的颜色 |
| | | }, { |
| | | offset: 1, color: '#207FF7' // 100% 处的颜色 |
| | | }] |
| | | }, |
| | | width: 2 // 线条粗细 |
| | | }, |
| | | symbol: 'circle', |
| | | symbolSize: 10, |
| | | itemStyle: { |
| | | borderWidth: 1, |
| | | borderColor: '#fff', |
| | | color: '#207FF7' |
| | | }, |
| | | smooth: false |
| | | } |
| | | ] |
| | | } |
| | |
| | | { |
| | | name: '访问来源', |
| | | type: 'pie', |
| | | radius: '55%', |
| | | radius: ['34%', '50%'], |
| | | labelLine: { |
| | | normal: { |
| | | length: 30, |
| | | length2: 100, |
| | | } |
| | | }, |
| | | label: { |
| | | formatter: "{a|{b}} {d}%", |
| | | rich: { |
| | | a: { |
| | | color: '#333333', |
| | | fontSize: 14, |
| | | fontWeight: 500 |
| | | } |
| | | }, |
| | | padding: [0,-50,20,-100] |
| | | }, |
| | | data: data |
| | | } |
| | | ] |
| | |
| | | overflow-x: hidden; |
| | | padding: 15px; |
| | | box-sizing: border-box; |
| | | background-color: #ffffff; |
| | | background-color: #F4F7FC; |
| | | .main_head { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-direction: column; |
| | | margin-bottom: 20px; |
| | | margin-bottom: 10px; |
| | | background-color: #ffffff; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | .main_head_title { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 20px; |
| | | span { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | font-size: 18px; |
| | | color: #222222; |
| | | margin-right: 30px; |
| | | } |
| | |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | .blue { |
| | | border-left: 5px solid blue; |
| | | border-left: 8px solid #12BB8B; |
| | | } |
| | | .red { |
| | | border-left: 5px solid red; |
| | | border-left: 8px solid #F6CF46; |
| | | } |
| | | .yellow { |
| | | border-left: 5px solid yellow; |
| | | border-left: 8px solid #5DC9FB; |
| | | } |
| | | .orange { |
| | | border-left: 5px solid orange; |
| | | border-left: 8px solid #FF9E56; |
| | | } |
| | | .darkBlue { |
| | | border-left: 5px solid #0000a8; |
| | | border-left: 8px solid #6B6EFF; |
| | | } |
| | | .main_head_item { |
| | | width: 19%; |
| | | height: 70px; |
| | | height: 112px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | box-sizing: border-box; |
| | | border-radius: 5px; |
| | | background-color: #ffffff; |
| | | background-color: #F4F7FC; |
| | | span { |
| | | &:nth-child(1) { |
| | | font-size: 22px; |
| | | color: black; |
| | | font-weight: bold; |
| | | font-weight: 600; |
| | | font-size: 30px; |
| | | color: #222222; |
| | | } |
| | | &:nth-child(2) { |
| | | font-size: 16px; |
| | | color: black; |
| | | font-weight: 400; |
| | | font-size: 14px; |
| | | color: #222222; |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | .main_table { |
| | | display: flex; |
| | | align-items: center; |
| | | align-items: start; |
| | | justify-content: space-between; |
| | | height: 300px; |
| | | margin-top: 10px; |
| | | .main_table_list { |
| | | margin-left: 20px; |
| | | background-color: #ffffff; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | flex: 1; |
| | | .title { |
| | | display: flex; |
| | | align-items: center; |
| | | span { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | font-size: 18px; |
| | | color: #222222; |
| | | } |
| | | } |
| | | .list_head { |
| | | width: 100%; |
| | | height: 35px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | background-color: #ececec; |
| | | background-color: #F7F7F7; |
| | | border-left: 1px solid #DFE2E8; |
| | | border-top: 1px solid #DFE2E8; |
| | | margin-top: 15px; |
| | | .list_head_item { |
| | | flex: 1; |
| | |
| | | justify-content: center; |
| | | font-size: 13px; |
| | | color: #222222; |
| | | font-weight: 500; |
| | | border-right: 1px solid #DFE2E8; |
| | | } |
| | | } |
| | | .table_box { |
| | | width: 100%; |
| | | height: 234px; |
| | | border-bottom: 1px solid #DFE2E8; |
| | | .list_content { |
| | | width: 100%; |
| | | height: 40px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | border-left: 1px solid #DFE2E8; |
| | | border-top: 1px solid #DFE2E8; |
| | | .list_head_item { |
| | | flex: 1; |
| | | height: 100%; |
| | | display: flex; |
| | | border-right: 1px solid #DFE2E8; |
| | | align-items: center; |
| | | justify-content: center; |
| | | font-size: 13px; |
| | |
| | | } |
| | | } |
| | | .main_table_list1 { |
| | | margin-left: 20px; |
| | | width: 300px; |
| | | margin-left: 10px; |
| | | width: 520px; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | flex-shrink: 0; |
| | | background-color: #ffffff; |
| | | .title { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | font-size: 18px; |
| | | color: #222222; |
| | | } |
| | | .list_head { |
| | | width: 100%; |
| | | height: 35px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | background-color: #ececec; |
| | | background-color: #F7F7F7; |
| | | border-left: 1px solid #DFE2E8; |
| | | border-top: 1px solid #DFE2E8; |
| | | margin-top: 15px; |
| | | .list_head_item { |
| | | flex: 1; |
| | | flex: 1.8; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | font-size: 13px; |
| | | color: #222222; |
| | | font-weight: 500; |
| | | border-right: 1px solid #DFE2E8; |
| | | &:last-child { |
| | | flex: 1; |
| | | } |
| | | } |
| | | } |
| | | .table_box { |
| | | width: 100%; |
| | | height: 234px; |
| | | border-bottom: 1px solid #DFE2E8; |
| | | .list_content { |
| | | width: 100%; |
| | | height: 40px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | border-left: 1px solid #DFE2E8; |
| | | border-top: 1px solid #DFE2E8; |
| | | .list_head_item { |
| | | flex: 1; |
| | | flex: 1.8; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | border-right: 1px solid #DFE2E8; |
| | | justify-content: center; |
| | | text-align: center; |
| | | font-size: 13px; |
| | | color: #222222; |
| | | &:last-child { |
| | | flex: 1; |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | .main_content { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | height: 400px; |
| | | |
| | | .title { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | font-size: 18px; |
| | | color: #222222; |
| | | /*margin-bottom: 20px;*/ |
| | | margin-top: 20px; |
| | | } |
| | | |
| | | .type_wrap { |
| | | flex: 11; |
| | | flex-shrink: 0; |
| | | height: calc(100% - 20px); |
| | | flex: 1; |
| | | height: 100%; |
| | | background-color: #ffffff; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | /*border-right: 12px solid #f7f7f7;*/ |
| | | |
| | | |
| | | .echart1 { |
| | | width: 100%; |
| | | height: calc(100% - 60px); |
| | | height: 100%; |
| | | } |
| | | } |
| | | |
| | | .dept_wrap { |
| | | flex: 8; |
| | | width: 520px; |
| | | flex-shrink: 0; |
| | | height: calc(100% - 20px); |
| | | padding-left: 20px; |
| | | |
| | | height: 100%; |
| | | background-color: #ffffff; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | margin-left: 10px; |
| | | .echart2 { |
| | | width: 100%; |
| | | height: calc(100% - 60px); |
| | | height: 100%; |
| | | } |
| | | } |
| | | } |
| | |
| | | <div class="main_head"> |
| | | <div class="main_head_title"> |
| | | <span>入园车辆统计总览</span> |
| | | <el-radio-group v-model="isGroupBy" size="mini" @change="getData(), getRataLists(), getReportLists()"> |
| | | <el-radio-group v-model="isGroupBy" @change="getData(), getRataLists(), getReportLists()"> |
| | | <el-radio-button :label="0">按车次统计</el-radio-button> |
| | | <el-radio-button :label="1">按车辆统计</el-radio-button> |
| | | </el-radio-group> |
| | |
| | | <div class="dept_wrap"> |
| | | <div class="title"> |
| | | <span>车辆分类统计</span> |
| | | <el-radio-group style="margin-left: 20px;" v-model="dateType" size="mini" @change="changeDateType"> |
| | | <el-radio-button label="month">月</el-radio-button> |
| | | <el-radio-button label="year">年</el-radio-button> |
| | | <el-radio-group style="margin-left: 20px;" v-model="dateType" @change="changeDateType"> |
| | | <el-radio-button label="month">月度</el-radio-button> |
| | | <el-radio-button label="year">年度</el-radio-button> |
| | | </el-radio-group> |
| | | <el-date-picker |
| | | v-model="value" |
| | | :type="dateType" |
| | | size="mini" |
| | | :clearable="false" |
| | | @change="getRataLists()" |
| | | :value-format="dateType === 'month' ? 'yyyy-MM' : 'yyyy'" |
| | |
| | | <div class="main_table"> |
| | | <div class="main_table_list"> |
| | | <div class="title" style="display: flex; align-items: center; justify-content: space-between;"> |
| | | <div> |
| | | <div style="display: flex; align-items: center;"> |
| | | <span>入园车辆统计表</span> |
| | | <el-radio-group style="margin-left: 20px;" v-model="radio" size="mini" @change="changeBB"> |
| | | <el-radio-button label="month">月</el-radio-button> |
| | | <el-radio-button label="year">年</el-radio-button> |
| | | <el-radio-group style="margin-left: 20px;" v-model="radio" @change="changeBB"> |
| | | <el-radio-button label="month">月度</el-radio-button> |
| | | <el-radio-button label="year">年度</el-radio-button> |
| | | </el-radio-group> |
| | | <el-date-picker |
| | | v-model="date1" |
| | | :type="radio" |
| | | size="mini" |
| | | :clearable="false" |
| | | @change="getReportLists()" |
| | | :value-format="radio === 'month' ? 'yyyy-MM' : 'yyyy'" |
| | |
| | | placeholder="请选择"> |
| | | </el-date-picker> |
| | | </div> |
| | | <el-button type="primary" size="mini" style="margin-left: 20px;" @click="daochu">导出</el-button> |
| | | <el-button type="primary" style="margin-left: 20px;" icon="el-icon-upload2" @click="daochu">导出</el-button> |
| | | </div> |
| | | <div class="list_head"> |
| | | <div class="list_head_item" v-for="(item, index) in column" :key="index">{{item}}</div> |
| | |
| | | left: 'left' |
| | | }, |
| | | grid: { |
| | | left: '5%', |
| | | right: '10%', |
| | | bottom: '0%', |
| | | left: '0%', |
| | | right: '5%', |
| | | bottom: '10%', |
| | | top: '20%', |
| | | containLabel: true |
| | | }, |
| | |
| | | series: [ |
| | | { |
| | | data: datas, |
| | | type: 'line' |
| | | type: 'line', |
| | | areaStyle: { |
| | | normal: { |
| | | color: { |
| | | x: 0, |
| | | y: 0, |
| | | x2: 0, |
| | | y2: 1, |
| | | colorStops: [{ |
| | | offset: 0, |
| | | color: '#207FF7' // 0% 处的颜色 |
| | | }, { |
| | | offset: 1, |
| | | color: 'rgba(255,255,255,.2)' // 100% 处的颜色 |
| | | }], |
| | | globalCoord: false // 缺省为 false |
| | | } |
| | | } |
| | | }, |
| | | lineStyle: { // 线条样式 |
| | | color: { |
| | | type: 'linear', |
| | | x: 0, |
| | | y: 0, |
| | | x2: 0, |
| | | y2: 1, |
| | | colorStops: [{ |
| | | offset: 0, color: '#207FF7' // 0% 处的颜色 |
| | | }, { |
| | | offset: 1, color: '#207FF7' // 100% 处的颜色 |
| | | }] |
| | | }, |
| | | width: 2 // 线条粗细 |
| | | }, |
| | | symbol: 'circle', |
| | | symbolSize: 10, |
| | | itemStyle: { |
| | | borderWidth: 1, |
| | | borderColor: '#fff', |
| | | color: '#207FF7' |
| | | }, |
| | | smooth: false |
| | | } |
| | | ] |
| | | } |
| | |
| | | { |
| | | name: '访问来源', |
| | | type: 'pie', |
| | | radius: '55%', |
| | | radius: ['34%', '50%'], |
| | | labelLine: { |
| | | normal: { |
| | | length: 30, |
| | | length2: 100, |
| | | } |
| | | }, |
| | | label: { |
| | | formatter: "{a|{b}} {d}%", |
| | | rich: { |
| | | a: { |
| | | color: '#333333', |
| | | fontSize: 14, |
| | | fontWeight: 500 |
| | | } |
| | | }, |
| | | padding: [0,-50,20,-100] |
| | | }, |
| | | data: data |
| | | } |
| | | ] |
| | |
| | | overflow-x: hidden; |
| | | padding: 15px; |
| | | box-sizing: border-box; |
| | | background-color: #ffffff; |
| | | background-color: #F4F7FC; |
| | | .main_head { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | flex-direction: column; |
| | | margin-bottom: 20px; |
| | | margin-bottom: 10px; |
| | | background-color: #ffffff; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | .main_head_title { |
| | | width: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | margin-bottom: 20px; |
| | | span { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | font-size: 18px; |
| | | color: #222222; |
| | | margin-right: 30px; |
| | | } |
| | |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | .blue { |
| | | border-left: 5px solid blue; |
| | | border-left: 8px solid #12BB8B; |
| | | } |
| | | .red { |
| | | border-left: 5px solid red; |
| | | border-left: 8px solid #F6CF46; |
| | | } |
| | | .yellow { |
| | | border-left: 5px solid yellow; |
| | | border-left: 8px solid #5DC9FB; |
| | | } |
| | | .orange { |
| | | border-left: 5px solid orange; |
| | | border-left: 8px solid #FF9E56; |
| | | } |
| | | .darkBlue { |
| | | border-left: 5px solid #0000a8; |
| | | border-left: 8px solid #6B6EFF; |
| | | } |
| | | .main_head_item { |
| | | width: 19%; |
| | | height: 70px; |
| | | height: 112px; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | justify-content: center; |
| | | box-sizing: border-box; |
| | | border-radius: 5px; |
| | | background-color: #ffffff; |
| | | background-color: #F4F7FC; |
| | | span { |
| | | &:nth-child(1) { |
| | | font-size: 22px; |
| | | color: black; |
| | | font-weight: bold; |
| | | font-weight: 600; |
| | | font-size: 30px; |
| | | color: #222222; |
| | | } |
| | | &:nth-child(2) { |
| | | font-size: 16px; |
| | | color: black; |
| | | font-weight: 400; |
| | | font-size: 14px; |
| | | color: #222222; |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | .main_table { |
| | | display: flex; |
| | | align-items: center; |
| | | align-items: start; |
| | | justify-content: space-between; |
| | | height: 300px; |
| | | margin-top: 10px; |
| | | .main_table_list { |
| | | margin-left: 20px; |
| | | background-color: #ffffff; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | flex: 1; |
| | | .title { |
| | | display: flex; |
| | | align-items: center; |
| | | span { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | font-size: 18px; |
| | | color: #222222; |
| | | } |
| | | } |
| | | .list_head { |
| | | width: 100%; |
| | | height: 35px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | background-color: #ececec; |
| | | background-color: #F7F7F7; |
| | | border-left: 1px solid #DFE2E8; |
| | | border-top: 1px solid #DFE2E8; |
| | | margin-top: 15px; |
| | | .list_head_item { |
| | | flex: 1; |
| | |
| | | justify-content: center; |
| | | font-size: 13px; |
| | | color: #222222; |
| | | font-weight: 500; |
| | | border-right: 1px solid #DFE2E8; |
| | | } |
| | | } |
| | | .table_box { |
| | | width: 100%; |
| | | height: 234px; |
| | | border-bottom: 1px solid #DFE2E8; |
| | | .list_content { |
| | | width: 100%; |
| | | height: 40px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | border-left: 1px solid #DFE2E8; |
| | | border-top: 1px solid #DFE2E8; |
| | | .list_head_item { |
| | | flex: 1; |
| | | height: 100%; |
| | | display: flex; |
| | | border-right: 1px solid #DFE2E8; |
| | | align-items: center; |
| | | justify-content: center; |
| | | font-size: 13px; |
| | |
| | | } |
| | | } |
| | | .main_table_list1 { |
| | | margin-left: 20px; |
| | | width: 300px; |
| | | margin-left: 10px; |
| | | width: 520px; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | flex-shrink: 0; |
| | | background-color: #ffffff; |
| | | .title { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | font-size: 18px; |
| | | color: #222222; |
| | | } |
| | | .list_head { |
| | | width: 100%; |
| | | height: 35px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | background-color: #ececec; |
| | | background-color: #F7F7F7; |
| | | border-left: 1px solid #DFE2E8; |
| | | border-top: 1px solid #DFE2E8; |
| | | margin-top: 15px; |
| | | .list_head_item { |
| | | flex: 1; |
| | | flex: 1.8; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | font-size: 13px; |
| | | color: #222222; |
| | | font-weight: 500; |
| | | border-right: 1px solid #DFE2E8; |
| | | &:last-child { |
| | | flex: 1; |
| | | } |
| | | } |
| | | } |
| | | .table_box { |
| | | width: 100%; |
| | | height: 234px; |
| | | border-bottom: 1px solid #DFE2E8; |
| | | .list_content { |
| | | width: 100%; |
| | | height: 40px; |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | border-left: 1px solid #DFE2E8; |
| | | border-top: 1px solid #DFE2E8; |
| | | .list_head_item { |
| | | flex: 1; |
| | | flex: 1.8; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | border-right: 1px solid #DFE2E8; |
| | | justify-content: center; |
| | | text-align: center; |
| | | font-size: 13px; |
| | | color: #222222; |
| | | &:last-child { |
| | | flex: 1; |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | .main_content { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | height: 400px; |
| | | |
| | | .title { |
| | | font-weight: 600; |
| | | font-size: 16px; |
| | | font-weight: 500; |
| | | font-size: 18px; |
| | | color: #222222; |
| | | /*margin-bottom: 20px;*/ |
| | | margin-top: 20px; |
| | | } |
| | | |
| | | .type_wrap { |
| | | flex: 11; |
| | | flex-shrink: 0; |
| | | height: calc(100% - 20px); |
| | | flex: 1; |
| | | height: 100%; |
| | | background-color: #ffffff; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | /*border-right: 12px solid #f7f7f7;*/ |
| | | |
| | | |
| | | #echart1 { |
| | | width: 100%; |
| | | height: calc(100% - 60px); |
| | | height: 100%; |
| | | } |
| | | } |
| | | |
| | | .dept_wrap { |
| | | flex: 8; |
| | | width: 520px; |
| | | flex-shrink: 0; |
| | | height: calc(100% - 20px); |
| | | padding-left: 20px; |
| | | |
| | | height: 100%; |
| | | background-color: #ffffff; |
| | | padding: 20px; |
| | | box-sizing: border-box; |
| | | margin-left: 10px; |
| | | .echart_2 { |
| | | width: 100%; |
| | | height: calc(100% - 60px); |
| | | height: 100%; |
| | | } |
| | | } |
| | | } |
| | |
| | | filed: 'companyName', |
| | | type: 'input', |
| | | label: '公司名称' |
| | | }, |
| | | { |
| | | filed: 'date', |
| | | type: 'daterange', |
| | | label: '起始日期' |
| | | } |
| | | ], |
| | | online: true |
| | |
| | | }, |
| | | getList (page) { |
| | | const { pagination, filters } = this |
| | | console.log(filters) |
| | | if (filters.date && filters.date.length === 2) { |
| | | filters.queryStarttime = filters.date[0] |
| | | filters.queryEndtime = filters.date[1] |
| | | } else { |
| | | filters.queryStarttime = '' |
| | | filters.queryEndtime = '' |
| | | } |
| | | pagination.page = page || pagination.page |
| | | fetchList({ |
| | | model: { ...filters }, |
| | |
| | | <el-form-item label="组织" prop="companyName"> |
| | | <el-input v-model="searchForm.companyName" placeholder="请输入组织名称" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="车辆类型" prop="carType"> |
| | | <el-select v-model="searchForm.carType" placeholder="请选择"> |
| | | <el-option label="内部车辆" value="0"></el-option> |
| | | <el-option label="相关方车辆" value="1"></el-option> |
| | | <el-option label="访客车辆" value="2"></el-option> |
| | | <el-option label="内运物流车" value="3"></el-option> |
| | | <el-option label="外协车辆" value="4"></el-option> |
| | | <el-option label="市公司卸货车" value="5"></el-option> |
| | | <el-option label="未登记车辆" value="6"></el-option> |
| | | </el-select> |
| | | <el-form-item label="车辆分类" prop="categoryName"> |
| | | <el-input v-model="searchForm.categoryName" placeholder="请输入车辆分类" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="起止时间" prop="startTime"> |
| | | <!-- <el-date-picker @change="seleTime" v-model="time" type="datetimerange" format="yyyy-MM-dd HH:mm:ss" |
| | |
| | | <span>{{ row.companyName || row.visitCompanyName || '' }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="carType" label="车辆类型" min-width="100px"> |
| | | <template slot-scope="{ row }"> |
| | | <span v-if="row.carType == 0">内部车辆</span> |
| | | <span v-else-if="row.carType == 1">相关方车辆</span> |
| | | <span v-else-if="row.carType == 2">访客车辆</span> |
| | | <span v-else-if="row.carType == 3">内运物流车</span> |
| | | <span v-else-if="row.carType == 4">外协车辆</span> |
| | | <span v-else-if="row.carType == 5">市公司卸货车</span> |
| | | <span v-else-if="row.carType == 6">未登记车辆</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="categoryName" label="车辆分类" min-width="100px"></el-table-column> |
| | | <el-table-column prop="name" label="姓名" min-width="100px"></el-table-column> |
| | | <el-table-column prop="phone" label="手机号" min-width="100px"></el-table-column> |
| | | <!-- <el-table-column label="进场门禁" min-width="100px"> |
| | |
| | | keyWords: '', |
| | | startTime: '', |
| | | endTime: '', |
| | | categoryName: '', |
| | | radio: 0 |
| | | }, |
| | | time: [] |
| | |
| | | getAppHeaderNav(4).then(res => { |
| | | window.open(res, '_blank') |
| | | }) |
| | | return |
| | | } |
| | | if (item.name == '食堂消费入口') { |
| | | if (item.name == '食堂消费') { |
| | | getAppHeaderNav(6).then(res => { |
| | | window.open(res, '_blank') |
| | | }) |
| | | return |
| | | } |
| | | this.$router.push(item.path) |
| | | }, |
| | |
| | | <div>${params[0].name}</div> |
| | | <div style="display: flex;align-items: center;"> |
| | | <div style="width: 10px;height: 10px;border-radius: 50%;background-color: #6feef0;"></div> |
| | | <span style="margin-left: 6px;">${params[0].value}</span> |
| | | <span style="margin-left: 6px;">${params[0].value || 0}</span> |
| | | <div>辆</div> |
| | | </div> |
| | | </div> |
| | |
| | | width: 100%; |
| | | height: 100%; |
| | | overflow: auto; |
| | | padding: 20px; |
| | | padding: 20px 20px 40px 20px; |
| | | padding-top: 92px; |
| | | |
| | | .home_header { |
| | |
| | | this.$nextTick(() => { |
| | | this.$refs.operaCarsWindow.open(str, row) |
| | | if (row && row.id) { |
| | | let form = { ...row, cateId: [] } |
| | | if (row.catePId) { form.cateId.push(row.catePId) } |
| | | if (row.cateId) { form.cateId.push(row.cateId) } |
| | | // let form = { ...row, cateId: [] } |
| | | let form = { ...row } |
| | | // if (row.catePId) { form.cateId.push(row.catePId) } |
| | | // if (row.cateId) { form.cateId.push(row.cateId) } |
| | | this.$refs.operaCarsWindow.form = form |
| | | this.$refs.operaCarsWindow.loadMember() |
| | | } |
| | |
| | | package com.doumee.api; |
| | | |
| | | import com.doumee.core.annotation.pr.PreventRepeat; |
| | | import com.doumee.service.business.third.model.ApiResponse; |
| | | import com.doumee.service.business.PlatformJobService; |
| | | import io.swagger.annotations.Api; |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | @PreventRepeat(interval = 2000) |
| | | @ApiOperation("月台今日作业未完成通知定时") |
| | | @GetMapping("/sendUnFinishNotice") |
| | | public ApiResponse sendUnFinishNotice() { |
| | | public synchronized ApiResponse sendUnFinishNotice() { |
| | | log.error("========月台今日作业未完成通知定时============开始"+System.currentTimeMillis()+""); |
| | | platformJobService.sendUnFinishNotice(); |
| | | log.error("========月台今日作业未完成通知定时============结束"+System.currentTimeMillis()+""); |
| | |
| | | @PostMapping("/exportExcel") |
| | | @RequiresPermissions("business:inoutrecord:exportExcel") |
| | | public void exportExcel (@RequestBody PageWrap<InoutRecord> pageWrap, HttpServletResponse response) { |
| | | ExcelExporter.build(InoutRecord.class).export(inoutRecordService.findPage(pageWrap).getRecords(), "出入场人次车次每日统计表", response); |
| | | ExcelExporter.build(InoutRecord.class).export(inoutRecordService.findPage(pageWrap).getRecords(), "厂区进出记录", response); |
| | | } |
| | | |
| | | @ApiOperation("根据ID查询") |
| | |
| | | @PostMapping("/exportExcel") |
| | | @CloudRequiredPermission("business:inoutrecord:exportExcel") |
| | | public void exportExcel (@RequestBody PageWrap<InoutRecord> pageWrap, HttpServletResponse response) { |
| | | ExcelExporter.build(InoutRecord.class).export(inoutRecordService.findPage(pageWrap).getRecords(), "出入场人次车次每日统计表", response); |
| | | ExcelExporter.build(InoutRecord.class).export(inoutRecordService.findPage(pageWrap).getRecords(), "出入场人次车次统计表_"+System.currentTimeMillis(), response); |
| | | } |
| | | |
| | | @ApiOperation("根据ID查询") |
| | |
| | | |
| | | @TableId(type = IdType.AUTO) |
| | | @ApiModelProperty(value = "主键", example = "1") |
| | | @ExcelColumn(name="主键") |
| | | private Integer id; |
| | | |
| | | @ApiModelProperty(value = "创建人编码", example = "1") |
| | | @ExcelColumn(name="创建人编码") |
| | | private Integer creator; |
| | | |
| | | @ApiModelProperty(value = "创建时间") |
| | | @ExcelColumn(name="创建时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | @ExcelColumn(name="创建时间",index = 9,width = 18,dateFormat = "yyyy-MM-dd HH:mm:ss") |
| | | private Date createDate; |
| | | |
| | | @ApiModelProperty(value = "更新人编码", example = "1") |
| | | @ExcelColumn(name="更新人编码") |
| | | private Integer editor; |
| | | |
| | | @ApiModelProperty(value = "更新时间") |
| | | @ExcelColumn(name="更新时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date editDate; |
| | | |
| | | @ApiModelProperty(value = "是否删除0否 1是", example = "1") |
| | | @ExcelColumn(name="是否删除0否 1是") |
| | | private Integer isdeleted; |
| | | |
| | | @ApiModelProperty(value = "备注") |
| | | @ExcelColumn(name="备注") |
| | | @ExcelColumn(name="备注",index = 10,width = 16) |
| | | private String remark; |
| | | |
| | | @ApiModelProperty(value = "对象类型 0车辆 1人员", example = "1") |
| | | @ExcelColumn(name="对象类型 0车辆 1人员") |
| | | private Integer type; |
| | | |
| | | @ApiModelProperty(value = "海康事件编码") |
| | | @ExcelColumn(name="海康事件编码") |
| | | private String hkEventId; |
| | | |
| | | @ApiModelProperty(value = "海康事件对象编码") |
| | | @ExcelColumn(name="海康事件对象编码") |
| | | private String hkId; |
| | | |
| | | @ApiModelProperty(value = "关联人员编码(关联member)", example = "1") |
| | | @ExcelColumn(name="关联人员编码(关联member)") |
| | | private Integer memberId; |
| | | |
| | | @ApiModelProperty(value = "关联人员编码(关联cars)", example = "1") |
| | | @ExcelColumn(name="关联人员编码(关联cars)") |
| | | private Integer carId; |
| | | |
| | | @ApiModelProperty(value = "关联分类编码(关联category)", example = "1") |
| | | @ExcelColumn(name="关联分类编码(关联category)") |
| | | private Integer categoryId; |
| | | |
| | | @ApiModelProperty(value = "关联分类名称") |
| | | @ExcelColumn(name="关联分类名称") |
| | | @ExcelColumn(name="车辆分类",index = 6,width = 16) |
| | | private String categoryName; |
| | | |
| | | @ApiModelProperty(value = "关联父级分类编码(关联category)", example = "1") |
| | | @ExcelColumn(name="关联父级分类编码(关联category)") |
| | | private Integer categoryParentId; |
| | | |
| | | @ApiModelProperty(value = "关联分类名称") |
| | | @ExcelColumn(name="关联分类名称") |
| | | private String categoryParentName; |
| | | |
| | | @ApiModelProperty(value = "业务类型 业务类型 0=访客车辆-访客车辆 ;" + |
| | |
| | | "2=wms市公司的预约入园车辆:货运车辆-市公司卸货车辆;" + |
| | | "3=wms、安泰的预约入园车辆:货运车辆-加工烟卸货车辆 ;" + |
| | | "4=wms安泰公务车:公务车-安泰物流公务用车;" + |
| | | "5=wms安泰自有车:货运车辆-安泰物流货运车辆' ", example = "1") |
| | | @ExcelColumn(name="车辆业务类型") |
| | | "5=wms安泰自有车:货运车辆-安泰物流货运车辆;" + |
| | | "6=未知车辆; ", example = "1") |
| | | // @ExcelColumn(name="车辆业务类型",index = 5,width = 16,valueMapping = "0=访客车辆-访客车辆;1=货运车辆-外协运输车辆;2=货运车辆-市公司卸货车辆;3=货运车辆-加工烟卸货车辆;4=公务车-安泰物流公务用车;5=货运车辆-安泰物流货运车辆;6=未知车辆;") |
| | | private Integer carBizType; |
| | | |
| | | @ApiModelProperty(value = "用户类型 0劳务访客 1普通访客 2内部员工 3车辆信息 4相关方人员 5货运司机 ", example = "1") |
| | | @ExcelColumn(name="用户类型 0劳务访客 1普通访客 2内部员工 3车辆信息 4相关方人员 5货运司机 ") |
| | | @ExcelColumn(name="用户类型",index = 3,width = 16,valueMapping = "0=劳务访客;1=普通访客;2=内部员工;3=车辆信息;4=相关方人员;5=货运司机;") |
| | | private Integer memberType; |
| | | |
| | | @ApiModelProperty(value = "人员名称") |
| | | @ExcelColumn(name="人员名称") |
| | | @ExcelColumn(name="人员名称",index = 0,width = 16) |
| | | private String memberName; |
| | | @ApiModelProperty(value = "人员手机号") |
| | | @ExcelColumn(name="人员手机号") |
| | | @ExcelColumn(name="人员手机号",index = 1,width = 16) |
| | | private String memberPhone; |
| | | @ApiModelProperty(value = "组织名称") |
| | | @ExcelColumn(name="组织名称") |
| | | @ExcelColumn(name="组织名称",index = 2,width = 16) |
| | | private String companyName; |
| | | @ApiModelProperty(value = "关联组织编码") |
| | | @ExcelColumn(name="关联组织编码") |
| | | private Integer companyId; |
| | | |
| | | @ApiModelProperty(value = "车牌号") |
| | | @ExcelColumn(name="车牌号") |
| | | @ExcelColumn(name="车牌号",index = 4,width = 16) |
| | | private String carCode; |
| | | |
| | | @ApiModelProperty(value = "关联对象类型 0车辆 1人员 2访客申请记录 3访客报备申请记录 4月台作业记录", example = "1") |
| | | @ExcelColumn(name="关联对象类型 0车辆 1人员 2访客申请记录 3访客报备申请记录 4月台作业记录") |
| | | private Integer objType; |
| | | @ApiModelProperty(value = "统计日期(2024-10-12 00:00:00)") |
| | | @ExcelColumn(name="统计日期(2024-10-12 00:00:00)") |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date timeInfo; |
| | | |
| | | @ApiModelProperty(value = "关联对象编码", example = "1") |
| | | @ExcelColumn(name="关联对象编码") |
| | | private Integer objId; |
| | | |
| | | @ApiModelProperty(value = "进出类型 0进 1出", example = "1") |
| | | @ExcelColumn(name="进出类型 0进 1出") |
| | | @ExcelColumn(name="进出类型",index = 7,width = 10,valueMapping = "0=进;1=出;") |
| | | private Integer inOrOut; |
| | | |
| | | @ApiModelProperty(value = "进出设备名称") |
| | | @ExcelColumn(name="进出设备名称") |
| | | @ExcelColumn(name="进出类型",index = 8,width = 10) |
| | | private String deviceName; |
| | | |
| | | @ApiModelProperty(value = "人脸照片") |
| | |
| | | @ApiModelProperty(value = "证件显示信息") |
| | | @TableField(exist = false) |
| | | private String memberCode; |
| | | |
| | | @ApiModelProperty(value = "创建时间 开始") |
| | | @TableField(exist = false) |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date startDate; |
| | | |
| | | @ApiModelProperty(value = "创建时间 结束") |
| | | @TableField(exist = false) |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private Date endDate; |
| | | |
| | | } |
| | |
| | | import com.doumee.dao.business.dto.InParkDataDTO; |
| | | import com.doumee.dao.business.model.Category; |
| | | import com.doumee.dao.business.model.InoutRecord; |
| | | import com.doumee.dao.business.model.Member; |
| | | import com.doumee.dao.business.vo.GeneralDataVO; |
| | | import com.doumee.dao.business.vo.InParkUserDataVO; |
| | | import com.doumee.service.business.InoutRecordService; |
| | |
| | | @Override |
| | | public PageData<InoutRecord> findPage(PageWrap<InoutRecord> pageWrap) { |
| | | IPage<InoutRecord> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<InoutRecord> queryWrapper = new QueryWrapper<>(); |
| | | MPJLambdaWrapper<InoutRecord> queryWrapper = new MPJLambdaWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getId() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getId, pageWrap.getModel().getId()); |
| | | } |
| | | if (pageWrap.getModel().getCreator() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getCreator, pageWrap.getModel().getCreator()); |
| | | } |
| | | if (pageWrap.getModel().getCreateDate() != null) { |
| | | queryWrapper.lambda().ge(InoutRecord::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.lambda().le(InoutRecord::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); |
| | | } |
| | | if (pageWrap.getModel().getEditor() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getEditor, pageWrap.getModel().getEditor()); |
| | | } |
| | | if (pageWrap.getModel().getEditDate() != null) { |
| | | queryWrapper.lambda().ge(InoutRecord::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); |
| | | queryWrapper.lambda().le(InoutRecord::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); |
| | | } |
| | | if (pageWrap.getModel().getIsdeleted() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getIsdeleted, pageWrap.getModel().getIsdeleted()); |
| | | } |
| | | if (pageWrap.getModel().getRemark() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getRemark, pageWrap.getModel().getRemark()); |
| | | } |
| | | if (pageWrap.getModel().getType() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getType, pageWrap.getModel().getType()); |
| | | } |
| | | if (pageWrap.getModel().getHkEventId() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getHkEventId, pageWrap.getModel().getHkEventId()); |
| | | } |
| | | if (pageWrap.getModel().getHkId() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getHkId, pageWrap.getModel().getHkId()); |
| | | } |
| | | if (pageWrap.getModel().getMemberId() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getMemberId, pageWrap.getModel().getMemberId()); |
| | | } |
| | | if (pageWrap.getModel().getCarId() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getCarId, pageWrap.getModel().getCarId()); |
| | | } |
| | | if (pageWrap.getModel().getCategoryId() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getCategoryId, pageWrap.getModel().getCategoryId()); |
| | | } |
| | | if (pageWrap.getModel().getCategoryName() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getCategoryName, pageWrap.getModel().getCategoryName()); |
| | | } |
| | | if (pageWrap.getModel().getCarBizType() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getCarBizType, pageWrap.getModel().getCarBizType()); |
| | | } |
| | | if (pageWrap.getModel().getMemberType() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getMemberType, pageWrap.getModel().getMemberType()); |
| | | } |
| | | if (pageWrap.getModel().getMemberName() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getMemberName, pageWrap.getModel().getMemberName()); |
| | | } |
| | | if (pageWrap.getModel().getCarCode() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getCarCode, pageWrap.getModel().getCarCode()); |
| | | } |
| | | if (pageWrap.getModel().getObjType() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getObjType, pageWrap.getModel().getObjType()); |
| | | } |
| | | if (pageWrap.getModel().getObjId() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getObjId, pageWrap.getModel().getObjId()); |
| | | } |
| | | if (pageWrap.getModel().getInOrOut() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getInOrOut, pageWrap.getModel().getInOrOut()); |
| | | } |
| | | if (pageWrap.getModel().getDeviceName() != null) { |
| | | queryWrapper.lambda().eq(InoutRecord::getDeviceName, pageWrap.getModel().getDeviceName()); |
| | | } |
| | | InoutRecord model = pageWrap.getModel(); |
| | | queryWrapper.selectAll(InoutRecord.class) |
| | | .eq(InoutRecord::getIsdeleted,Constants.ZERO) |
| | | .eq(Objects.nonNull(model.getType()),InoutRecord::getType, model.getType()) |
| | | .eq(Objects.nonNull(model.getInOrOut()),InoutRecord::getInOrOut, model.getInOrOut()) |
| | | .eq(Objects.nonNull(model.getObjType()),InoutRecord::getObjType, model.getObjType()) |
| | | .eq(Objects.nonNull(model.getCarBizType()),InoutRecord::getCarBizType, model.getCarBizType()) |
| | | .eq(Objects.nonNull(model.getMemberType()),InoutRecord::getMemberType, model.getMemberType()) |
| | | .ge(Objects.nonNull(model.getStartDate()),InoutRecord::getCreateDate, Utils.Date.getStart(model.getStartDate())) |
| | | .le(Objects.nonNull(model.getEndDate()),InoutRecord::getCreateDate, Utils.Date.getEnd(model.getEndDate())) |
| | | .and(StringUtils.isNotBlank(model.getCategoryName()),i->i.like(InoutRecord::getCategoryName,model.getCategoryName()).or().like(InoutRecord::getCategoryParentName,model.getCategoryName())) |
| | | .and(StringUtils.isNotBlank(model.getMemberName()),i->i.like(InoutRecord::getMemberName,model.getMemberName()).or().like(InoutRecord::getMemberPhone,model.getMemberName())) |
| | | .and(StringUtils.isNotBlank(model.getCarCode()),i->i.like(InoutRecord::getCarCode,model.getCarCode()).or().like(InoutRecord::getRemark,model.getCarCode())) |
| | | .like(StringUtils.isNotBlank(model.getCompanyName()),InoutRecord::getCompanyName,model.getCompanyName()) |
| | | .like(StringUtils.isNotBlank(model.getDeviceName()),InoutRecord::getDeviceName,model.getDeviceName()) |
| | | .orderByDesc(InoutRecord::getId) |
| | | ; |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | | queryWrapper.orderByDesc(sortData.getProperty()); |
| | |
| | | .eq(pageWrap.getModel().getYpos() != null, Platform::getYpos, pageWrap.getModel().getYpos()) |
| | | .eq(pageWrap.getModel().getWidth() != null, Platform::getWidth, pageWrap.getModel().getWidth()) |
| | | .eq(pageWrap.getModel().getHeight() != null, Platform::getHeight, pageWrap.getModel().getHeight()) |
| | | .eq(pageWrap.getModel().getAngle() != null, Platform::getAngle, pageWrap.getModel().getAngle()); |
| | | .eq(pageWrap.getModel().getAngle() != null, Platform::getAngle, pageWrap.getModel().getAngle()) |
| | | .orderByAsc(Platform::getSortnum) |
| | | ; |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | | queryWrapper.orderByDesc(sortData.getProperty()); |
| | |
| | | List<PlatformJob> monthNum = platformJobMapper.selectJoinList(PlatformJob.class, |
| | | new MPJLambdaWrapper<PlatformJob>() |
| | | .selectAs(PlatformJob::getId,PlatformJob::getId) |
| | | .select(PlatformJob::getType,PlatformJob::getType) |
| | | .select(PlatformJob::getTotalNum,PlatformJob::getTotalNum) |
| | | .selectAs(PlatformJob::getTotalNum,PlatformJob::getTotalNum) |
| | | .selectAs(PlatformJob::getDoneDate,PlatformJob::getDoneDate) |
| | | .select(PlatformJob::getStatus,PlatformJob::getStatus) |
| | | .select(PlatformJob::getType,PlatformJob::getType) |
| | | .eq(PlatformJob::getIsdeleted,Constants.ZERO) |
| | | .in(PlatformJob::getType,Constants.ONE,Constants.THREE) |
| | | .in(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey(), |
| | |
| | | } |
| | | if(CollectionUtils.isNotEmpty(jobList)){ |
| | | //获取任务数据 |
| | | List<String> jobDataList = list.stream().filter(i->Objects.nonNull(i.getDoneDate())).map(i->DateUtil.formatDate(i.getDoneDate(),"yyyy-MM-dd")).collect(Collectors.toList()); |
| | | List<String> jobDataList = jobList.stream().filter(i->Objects.nonNull(i.getDoneDate())) |
| | | .map(i->DateUtil.formatDate(i.getDoneDate(),"yyyy-MM-dd")).collect(Collectors.toList()); |
| | | if(CollectionUtils.isNotEmpty(jobDataList)){ |
| | | for (String jobDate:jobDataList) { |
| | | //过滤当天的数据 |
| | | List<PlatformJob> platformJobList = list.stream(). |
| | |
| | | //获取今天的 |
| | | r = r.add(this.getDayTotalRata(getSumTotalByList(platformJobList,type,null),jobDate)); |
| | | } |
| | | } |
| | | r = r.divide(new BigDecimal(Integer.toString(jobList.size())),2,BigDecimal.ROUND_HALF_UP); |
| | | } |
| | | } |
| | | return r; |
| | |
| | | //查询今日最早/最晚的作业数据 |
| | | List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>() |
| | | .lambda() |
| | | .apply(" ( to_days(param1) = '"+today+"' or to_days(param2) = '"+today+"' ) ") |
| | | .apply(" ( DATE_FORMAT( param1 ,'%Y-%m-%d' ) = '"+today+"' or DATE_FORMAT( param2 ,'%Y-%m-%d' ) = '"+today+"' ) ") |
| | | ); |
| | | if(totalAmount.compareTo(BigDecimal.ZERO)==0||CollectionUtils.isEmpty(platformLogList)){ |
| | | return BigDecimal.ZERO; |