| | |
| | | <!-- |
| | | * @Date: 2024-04-18 21:52:18 |
| | | * @LastEditors: Sneed |
| | | * @LastEditTime: 2024-04-20 11:31:18 |
| | | * @LastEditTime: 2024-06-04 21:40:52 |
| | | * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/mdc/components/Shift.vue |
| | | --> |
| | | <template> |
| | | <el-row> |
| | | <el-col> |
| | | <el-button-group> |
| | | <el-button :type="btnListActive == item.id ? 'primary' : ''" v-for="item in btnList" :key="item.id">{{ |
| | | item.title }}</el-button> |
| | | <el-button size="small" @click="btnListActive = item.id" |
| | | :type="btnListActive == item.id ? 'primary' : ''" v-for="item in btnList" :key="item.id">{{ |
| | | item.title }}</el-button> |
| | | </el-button-group> |
| | | </el-col> |
| | | <el-col> |
| | | <el-col style="margin-top: 12px;"> |
| | | <el-card shadow="never"> |
| | | <scEcharts height="300px" :option="option2"></scEcharts> |
| | | </el-card> |
| | |
| | | <span>{{ scope.row.nameData['1'] }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="" label="效率"> |
| | | <el-table-column prop="" :label="colname"> |
| | | <template #default="scope"> |
| | | <span>{{ scope.row.data['1'] }}</span> |
| | | </template> |
| | |
| | | <span>{{ scope.row.nameData['2'] }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="" label="效率"> |
| | | <el-table-column prop="" :label="colname"> |
| | | <template #default="scope"> |
| | | <span>{{ scope.row.data['2'] }}</span> |
| | | </template> |
| | |
| | | <script> |
| | | import scEcharts from '@/components/scEcharts'; |
| | | export default { |
| | | props: { |
| | | url: { |
| | | default: '/api/blade-mdc/efficiency-analysis', |
| | | type: String, |
| | | }, |
| | | colname: { |
| | | default: '', |
| | | type: String, |
| | | }, |
| | | options: { |
| | | default() { |
| | | return {} |
| | | }, |
| | | }, |
| | | datasetNum: { |
| | | type: Number, |
| | | default: 100 |
| | | } |
| | | }, |
| | | components: { |
| | | scEcharts |
| | | }, |
| | |
| | | btnList: [], |
| | | btnListActive: '', |
| | | chartsData: [], |
| | | option2: { |
| | | title: { |
| | | text: '统计图表', |
| | | subtext: '基础折线图', |
| | | }, |
| | | grid: { |
| | | top: '80px' |
| | | }, |
| | | tooltip: { |
| | | trigger: 'axis' |
| | | }, |
| | | xAxis: { |
| | | type: 'category', |
| | | data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] |
| | | }, |
| | | yAxis: { |
| | | type: 'value' |
| | | }, |
| | | series: [{ |
| | | data: [120, 200, 150, 80, 70, 110, 130], |
| | | type: 'line', |
| | | }, |
| | | { |
| | | data: [110, 180, 120, 120, 60, 90, 110], |
| | | type: 'line', |
| | | }] |
| | | }, |
| | | option2: null, |
| | | } |
| | | }, |
| | | watch: { |
| | | btnListActive(val) { |
| | | this.query({ |
| | | ...this.params, |
| | | startDate: val, |
| | | endDate: val |
| | | }) |
| | | this.queryChart({ |
| | | ...this.params, |
| | | startDate: val, |
| | | endDate: val |
| | | }) |
| | | } |
| | | }, |
| | | methods: { |
| | | init(params) { |
| | | this.params = params |
| | | this.getTime({ |
| | | endDate: params.endDate, |
| | | startDate: params.startDate, |
| | |
| | | ...data |
| | | }).then(res => { |
| | | if (res.code === 200) { |
| | | this.btnList = res.data |
| | | this.btnList = res.data.reverse() |
| | | this.btnListActive = res?.data?.[0]?.id |
| | | } |
| | | }) |
| | |
| | | queryType: 0, |
| | | statisticalMethod: this.statisticalMethod |
| | | } |
| | | return this.$HTTP.post('/api/blade-mdc/efficiency-analysis', dataSend, { params }).then(res => { |
| | | return this.$HTTP.post(this.url, dataSend, { params }).then(res => { |
| | | this.chartsData = res.data.items.records |
| | | let option2 = { |
| | | ...this.options |
| | | } |
| | | option2.dataset.source = [['product', '班次1', '班次2']] |
| | | res.data.items.records.forEach(v => { |
| | | option2.dataset.source.push([v.workstationName, v.data[1] === '-' ? 0 : v.data[1] * this.datasetNum, v.data[2] === '-' ? 0 : v.data[2] * this.datasetNum]) |
| | | }); |
| | | this.option2 = option2 |
| | | console.log(option2) |
| | | }) |
| | | }, |
| | | query(params) { |
| | |
| | | delete dataSend.size |
| | | delete dataSend.order |
| | | delete dataSend.prop |
| | | return await this.$HTTP.post('/api/blade-mdc/efficiency-analysis', dataSend, { params }).then(res => { |
| | | return await this.$HTTP.post(this.url, dataSend, { params }).then(res => { |
| | | return { |
| | | ...res, |
| | | data: res.data.items |