schangxiang@126.com
2024-09-02 3b3e3bcf1345197670c82988ceb3e8d34be3b5f1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<template>
  <div>
    <a-card>
      <a-form :label-col="labelCol" :wrapper-col="wrapperCol">
        <a-row>
          <a-col :span="24">
            <a-row>
              <a-col :span="inputSpan">
                <a-form-item label="大屏刷新频率">
                  <a-input-number
                    style="width: 100%"
                    v-model="queryParam.screenRefreshFrequency"
                    placeholder="请输入大屏刷新频率"
                  />
                </a-form-item>
              </a-col>
              <a-col :span="btnSpan">
                <a-button :loading="btnLoading.loading1" type="primary" @click="saveData('screen_refresh_frequency')">保存</a-button>
              </a-col>
            </a-row>
          </a-col>
          <a-col :span="24">
            <a-row>
              <a-col :span="inputSpan">
                <a-form-item label="安全生产时间">
                  <a-date-picker
                    style="width: 100%"
                    v-model="queryParam.lastFailureTime"
                    placeholder="请选择安全生产时间"
                    format="YYYY-MM-DD"
                    :disabled-date="disabledDate"
                  />
                </a-form-item>
              </a-col>
              <a-col :span="btnSpan">
                <a-button :loading="btnLoading.loading2" type="primary" @click="saveData('last_failure_time')">保存</a-button>
              </a-col>
            </a-row>
          </a-col>
        </a-row>
      </a-form>
    </a-card>
  </div>
</template>
 
<script>
import moment from 'moment'
import { GetBasicInfo, saveBasicInfo } from '@/api/modular/main/BasicDataMaintenance'
export default {
  name: 'BasicDataMaintenance',
  data() {
    return {
      labelCol: {
        xs: { span: 24 },
        sm: { span: 6 }
      },
      wrapperCol: {
        xs: { span: 24 },
        sm: { span: 15 }
      },
      inputSpan: 6,
      btnSpan: 1,
      queryParam: {},
      btnLoading: {
        loading1: false,
        loading2: false
      }
    }
  },
  created() {
    this.getBasicInfo()
  },
  methods: {
    // 获取现有数据
    async getBasicInfo() {
      try {
        const { data } = await GetBasicInfo()
        const res = data.filter((item) => item.code == 'screen_refresh_frequency' || item.code == 'last_failure_time')
        if (res.length == 2) {
          this.$set(this.queryParam, 'screenRefreshFrequency', res[0].remark)
          this.$set(this.queryParam, 'lastFailureTime', moment(res[1].remark, 'YYYY-MM-DD'))
        }
      } catch (error) {
        console.log(error)
      }
    },
    // 保存
    async saveData(code) {
      let data = {}
      switch (code) {
        case 'screen_refresh_frequency': {
          if (this.queryParam.screenRefreshFrequency < 1) {
            return this.$message.error('大屏刷新频率必须大于0')
          }
          data = { code: 'screen_refresh_frequency', remark: this.queryParam.screenRefreshFrequency }
          this.btnLoading.loading1 = true
          break
        }
        case 'last_failure_time': {
          data = { code: 'last_failure_time', remark: moment(this.queryParam.lastFailureTime).format('YYYY/MM/DD') }
          this.btnLoading.loading2 = true
          break
        }
      }
        try {
          await saveBasicInfo(data)
          this.$message.success('保存成功')
          this.btnLoading = { loading1: false, loading2: false }
          this.getBasicInfo()
        } catch (error) {
          console.log(error)
        }
    },
    // 不可选择的时间
    disabledDate(current) {
      return current > moment().endOf('day')
    }
  }
}
</script>
 
<style>
</style>