Browse Source

日期设置

master
maochaoying 2 years ago
parent
commit
a706fa5184
  1. 1
      src/components/Operator.vue
  2. 6
      src/components/Setting/components/Date.vue
  3. 27
      src/components/Test.vue
  4. 4
      src/components/dialogs/DatePicker.vue
  5. 4
      src/components/dialogs/TimePicker.vue
  6. 5
      src/store/modules/setting.js
  7. 8
      src/store/modules/test.js
  8. 21
      src/store/modules/websocket.js

1
src/components/Operator.vue

@ -131,7 +131,6 @@ const startDisinfect = () => {
if (roomSize.value == 0) { if (roomSize.value == 0) {
showFailToast('请调整房间大小设置,不能为0') showFailToast('请调整房间大小设置,不能为0')
} else { } else {
console.log(roomSize.value)
webSocketStore.sendCommandMsg( webSocketStore.sendCommandMsg(
startDisinfectionJSON(logVal.value, roomSize.value), startDisinfectionJSON(logVal.value, roomSize.value),
) )

6
src/components/Setting/components/Date.vue

@ -2,12 +2,12 @@
<div class="date_container"> <div class="date_container">
<div class="row_wrap"> <div class="row_wrap">
<p class="title">当前日期</p> <p class="title">当前日期</p>
<p class="num">2023-8-23</p>
<p class="num">{{ settingStore.currentDate.join('-') }}</p>
<div class="btn" @click="showDatePicker">设置</div> <div class="btn" @click="showDatePicker">设置</div>
</div> </div>
<div class="row_wrap"> <div class="row_wrap">
<p class="title">当前时间</p> <p class="title">当前时间</p>
<p class="num">11:40</p>
<p class="num">{{ settingStore.currentTime.join(':') }}</p>
<div class="btn" @click="showTimePicker">设置</div> <div class="btn" @click="showTimePicker">设置</div>
</div> </div>
<DatePicker v-if="datePickerVisible" :hideDatePicker="hideDatePicker" /> <DatePicker v-if="datePickerVisible" :hideDatePicker="hideDatePicker" />
@ -18,8 +18,10 @@
<script setup> <script setup>
import DatePicker from 'cpns/dialogs/DatePicker' import DatePicker from 'cpns/dialogs/DatePicker'
import TimePicker from 'cpns/dialogs/TimePicker' import TimePicker from 'cpns/dialogs/TimePicker'
import { useSettingStore } from '@/store'
import { ref } from 'vue' import { ref } from 'vue'
const settingStore = useSettingStore()
const datePickerVisible = ref(false) const datePickerVisible = ref(false)
const timePickerVisible = ref(false) const timePickerVisible = ref(false)
const showDatePicker = () => { const showDatePicker = () => {

27
src/components/Test.vue

@ -91,14 +91,19 @@
</div> </div>
</div> </div>
<div class="common_set update_wrap"> <div class="common_set update_wrap">
<p class="title">水浸</p>
<p class="num">有水</p>
<div class="btn_wrap">更新读取水浸状态</div>
<p class="title">水浸1</p>
<p class="num">{{ testStore.waterImmersionSensor1 ? '有水' : '没水' }}</p>
<div class="btn_wrap" @click="handleUpdate">更新读取水浸状态</div>
</div>
<div class="common_set update_wrap">
<p class="title">水浸2</p>
<p class="num">{{ testStore.waterImmersionSensor2 ? '有水' : '没水' }}</p>
<div class="btn_wrap" @click="handleUpdate">更新读取水浸状态</div>
</div> </div>
<div class="common_set update_wrap"> <div class="common_set update_wrap">
<p class="title">液位</p> <p class="title">液位</p>
<p class="num">000 kPa/100g</p>
<div class="btn_wrap">更新读取液位状态</div>
<p class="num">{{ deviceStore.disinfectantCapacity }} kPa/100g</p>
<div class="btn_wrap" @click="handleUpdate">更新读取液位状态</div>
</div> </div>
<div class="common_set info_wrap"> <div class="common_set info_wrap">
<p class="title">仓内</p> <p class="title">仓内</p>
@ -129,13 +134,21 @@ import {
useWebSocketStore, useWebSocketStore,
useSettingStore, useSettingStore,
} from '@/store' } from '@/store'
import { someAirSwitchJSON, liquidpumpctrlJSON } from '@/mock/command'
import {
someAirSwitchJSON,
liquidpumpctrlJSON,
getStateJSON,
} from '@/mock/command'
const testStore = useTestStore() const testStore = useTestStore()
const deviceStore = useDeviceStore() const deviceStore = useDeviceStore()
const websocketStore = useWebSocketStore() const websocketStore = useWebSocketStore()
const settingStore = useSettingStore() const settingStore = useSettingStore()
const handleUpdate = () => {
websocketStore.sendCommandMsg(getStateJSON)
}
const changeFeedingStatus = flag => { const changeFeedingStatus = flag => {
if (flag == 1) { if (flag == 1) {
if (!testStore.feedingPeristalticPumpStatus) { if (!testStore.feedingPeristalticPumpStatus) {
@ -222,11 +235,11 @@ const changeDraughtStatus = flag => {
.test_container { .test_container {
margin-bottom: 30px; margin-bottom: 30px;
height: 580px; height: 580px;
overflow: scroll;
box-sizing: border-box; box-sizing: border-box;
background: #ffffff; background: #ffffff;
border-radius: 16px; border-radius: 16px;
padding: 20px; padding: 20px;
padding-bottom: 80px;
display: grid; display: grid;
row-gap: 20px; row-gap: 20px;
column-gap: 20px; column-gap: 20px;

4
src/components/dialogs/DatePicker.vue

@ -50,6 +50,7 @@
<script setup> <script setup>
import { ref } from 'vue' import { ref } from 'vue'
import { useSettingStore } from '@/store' import { useSettingStore } from '@/store'
import moment from 'moment'
const settingStore = useSettingStore() const settingStore = useSettingStore()
const props = defineProps({ const props = defineProps({
@ -57,7 +58,8 @@ const props = defineProps({
type: Function, type: Function,
}, },
}) })
const currentDate = ref(['2023', '08', '08'])
//
const currentDate = ref(moment().format('YYYY-MM-DD').split('-'))
const columnsType = ref(['year', 'month', 'day']) const columnsType = ref(['year', 'month', 'day'])
const formatter = (type, option) => { const formatter = (type, option) => {
if (type === 'year') { if (type === 'year') {

4
src/components/dialogs/TimePicker.vue

@ -49,6 +49,8 @@
<script setup> <script setup>
import { ref } from 'vue' import { ref } from 'vue'
import { useSettingStore } from '@/store' import { useSettingStore } from '@/store'
import moment from 'moment'
const settingStore = useSettingStore() const settingStore = useSettingStore()
const props = defineProps({ const props = defineProps({
hideTimePicker: { hideTimePicker: {
@ -56,7 +58,7 @@ const props = defineProps({
}, },
}) })
const currentTime = ref(['12', '00'])
const currentTime = ref(moment().utcOffset(8).format('HH:mm').split(':'))
const formatter = (type, option) => { const formatter = (type, option) => {
if (type === 'hour') { if (type === 'hour') {
option.text += '时' option.text += '时'

5
src/store/modules/setting.js

@ -1,13 +1,14 @@
import { defineStore } from 'pinia' import { defineStore } from 'pinia'
import moment from 'moment'
export const useSettingStore = defineStore({ export const useSettingStore = defineStore({
id: 'setting', // id必填,且需要唯一 id: 'setting', // id必填,且需要唯一
// state // state
state: () => { state: () => {
return { return {
// 设置当前日期 // 设置当前日期
currentDate: [],
currentDate: moment().format('YYYY-MM-DD').split('-'),
// 设置当前时间 // 设置当前时间
currentTime: [],
currentTime: moment().utcOffset(8).format('HH:mm').split(':'),
// 设置加液泵的参数 // 设置加液泵的参数
addLiquidConfigVal: 0, addLiquidConfigVal: 0,
// 设置喷液泵的参数 // 设置喷液泵的参数

8
src/store/modules/test.js

@ -19,10 +19,18 @@ export const useTestStore = defineStore({
airCompressorObj: {}, airCompressorObj: {},
airBlowerObj: {}, airBlowerObj: {},
heatingStripObj: {}, heatingStripObj: {},
waterImmersionSensor1: false,
waterImmersionSensor2: false,
} }
}, },
// actions // actions
actions: { actions: {
updateWaterImmersionSensor1(waterImmersionSensor1) {
this.waterImmersionSensor1 = waterImmersionSensor1
},
updateWaterImmersionSensor2(waterImmersionSensor2) {
this.waterImmersionSensor2 = waterImmersionSensor2
},
updateAirCompressorObj(airCompressorObj) { updateAirCompressorObj(airCompressorObj) {
const { io1, io2, currentVal } = airCompressorObj const { io1, io2, currentVal } = airCompressorObj
if (io1 == 1 && io2 == 1) { if (io1 == 1 && io2 == 1) {

21
src/store/modules/websocket.js

@ -30,7 +30,7 @@ export const useWebSocketStore = defineStore({
const operatorStore = useOperatorStore() const operatorStore = useOperatorStore()
init.connect() init.connect()
init.ws.onmessage = function (ev) { init.ws.onmessage = function (ev) {
// console.log(JSON.parse(ev.data))
console.log(JSON.parse(ev.data))
const { ackcode, messageId } = JSON.parse(ev.data) const { ackcode, messageId } = JSON.parse(ev.data)
switch (messageId) { switch (messageId) {
@ -65,7 +65,16 @@ export const useWebSocketStore = defineStore({
airBlower, airBlower,
sprinklerPump, sprinklerPump,
chargingPump, chargingPump,
waterImmersionSensor1,
waterImmersionSensor2,
} = sensor_data } = sensor_data
testStore.updateWaterImmersionSensor1(
waterImmersionSensor1 == 0 ? false : true,
)
testStore.updateWaterImmersionSensor2(
waterImmersionSensor2 == 0 ? false : true,
)
// 将sensor_data中的数据更新到store中 // 将sensor_data中的数据更新到store中
testStore.updateAirCompressorObj(airCompressor) testStore.updateAirCompressorObj(airCompressor)
testStore.updateAirBlowerObj(airBlower) testStore.updateAirBlowerObj(airBlower)
@ -86,7 +95,7 @@ export const useWebSocketStore = defineStore({
userStore.updatePermission(permissionLevel) userStore.updatePermission(permissionLevel)
settingStore.updateInitLoading() settingStore.updateInitLoading()
operatorStore.updateDisinfectStatus(workState)
operatorStore.updateDisinfectStatus(workState == 0 ? false : true)
operatorStore.updateEstimatedRemainingTimeS(estimatedRemainingTimeS) operatorStore.updateEstimatedRemainingTimeS(estimatedRemainingTimeS)
operatorStore.updateDisinfectionId(disinfection_id) operatorStore.updateDisinfectionId(disinfection_id)
// 将sensor_data中的数据更新到store中 // 将sensor_data中的数据更新到store中
@ -154,8 +163,16 @@ export const useWebSocketStore = defineStore({
airBlower, airBlower,
sprinklerPump, sprinklerPump,
chargingPump, chargingPump,
waterImmersionSensor1,
waterImmersionSensor2,
} = sensor_data } = sensor_data
// 将sensor_data中的数据更新到store中 // 将sensor_data中的数据更新到store中
testStore.updateWaterImmersionSensor1(
waterImmersionSensor1 == 0 ? false : true,
)
testStore.updateWaterImmersionSensor2(
waterImmersionSensor2 == 0 ? false : true,
)
testStore.updateAirCompressorObj(airCompressor) testStore.updateAirCompressorObj(airCompressor)
testStore.updateAirBlowerObj(airBlower) testStore.updateAirBlowerObj(airBlower)
testStore.updateHeatingStripObj(heatingStrip) testStore.updateHeatingStripObj(heatingStrip)

Loading…
Cancel
Save