wu
2024-11-19 b092806a662b99310cdb050292de2721ba06acd9
Albania_Mes-ui/src/views/Electrical/AlbaniaServo.vue
@@ -9,36 +9,8 @@
        $t('Parameter')
      }}</router-link>
    </el-breadcrumb>
    <!-- <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb">
      <router-link to="/Electrical/Parameter2" tag="el-button" type="text" active-class="blue-button">
        {{ $t('Automatic State') }}</router-link>
      <router-link to="/Electrical/ManualonePosition" tag="el-button" type="text" active-class="blue-button">{{
        $t('ManualonePosition')
      }}</router-link>
      <router-link v-if="hasPermission" to="/Electrical/Servomanualone" tag="el-button" type="text"
        active-class="blue-button">
        {{ $t('Servomanualone') }}
      </router-link>
      <router-link v-if="hasPermission" to="/Electrical/Positioning1" tag="el-button" type="text"
        active-class="blue-button">{{
        $t('Address parameter settings')
      }}</router-link>
      <router-link v-if="hasPermission" to="/Electrical/AutomaticParameterSetting" tag="el-button" type="text"
        active-class="blue-button">{{
        $t('Speed parameter settings')
      }}</router-link>
      <router-link v-if="hasPermission" to="/Electrical/InteractionState" tag="el-button" type="text"
        active-class="blue-button">{{ $t("InteractionState") }}</router-link>
    </el-breadcrumb> -->
    <el-row :gutter="10">
    <!-- <el-row :gutter="10">
      <el-col :span="12" v-for="(dataGroup, groupIndex) in jsonData" :key="groupIndex">
        <div>{{ dataGroup[0] }}</div>
        <el-card class="json-block" style="width:670px;margin-bottom: 10px;">
@@ -85,18 +57,744 @@
                v-model="item.button.value"
                :class="{ 'action-button': true, 'error-button': item.button.CNname === '故障' && item.button.value === 1, 'error-button2': item.button.CNname === '未回零' && item.button.value === 0, 'error-button3': item.button.CNname === '已回零' && item.button.value === 1, 'greenbutton': item.button.CNname !== '未回零' && item.button.CNname !== '故障' && item.button.value === 1 }"
                @click="updateButtonValue(dataGroup, itemIndex);">{{ language=='en-US'?item.button.USname:item.button.CNname}}</el-button>
            </div>
            </div>
          </div>
        </el-card>
      </el-col>
    </el-row>
    <!-- <div class="container">
    <component :is="embeddedComponent"></component>
    <component :is="embeddedComponent2"></component>
  </div>  -->
    <!-- <el-button @click="submitDataToBackend">提交数据到后端</el-button> -->
    </el-row> -->
    <div style="display: flex;">
      <div class="demo-input-suffix">
        <el-card class="box-card">
          <div slot="header" class="clearfix">
            <span>A01</span>
          </div>
          <div style="display: flex;">
            <div>
              <div>
                A01输送高速<el-input style="width: 30%;" v-model="plcSigns[0].value" @focus="refresh()" @blur="writeValue(plcSigns[0])"
                  @keyup.enter.native="writeValue(plcSigns[0])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                A01输送低速<el-input style="width: 30%;" v-model="plcSigns[1].value" @focus="refresh()" @blur="writeValue(plcSigns[1])"
                  @keyup.enter.native="writeValue(plcSigns[1])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                A01输送手动<el-input style="width: 30%;" v-model="plcSigns[2].value" @focus="refresh()" @blur="writeValue(plcSigns[2])"
                  @keyup.enter.native="writeValue(plcSigns[2])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                A01最大速度<el-input style="width: 30%;" v-model="plcSigns[3].value" @focus="refresh()" @blur="writeValue(plcSigns[3])"
                  @keyup.enter.native="writeValue(plcSigns[3])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
            </div>
            <div>
              <div>
                上片输送启动延迟<el-input type="text" style="width: 30%;" v-model="plcSigns[4].value"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`" @focus="refresh()" @blur="writeValue(plcSigns[4])"
                  @keyup.enter.native="writeValue(plcSigns[4])"></el-input>ms
              </div>
              <div>
                LOW-E检测上升滤波<el-input style="width: 30%;" v-model="plcSigns[5].value"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`" @focus="refresh()" @blur="writeValue(plcSigns[5])"
                  @keyup.enter.native="writeValue(plcSigns[5])"></el-input>ms
              </div>
              <div>
                出口减速信号上升滤波<el-input style="width: 30%;" v-model="plcSigns[6].value"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`" @focus="refresh()" @blur="writeValue(plcSigns[6])"
                  @keyup.enter.native="writeValue(plcSigns[6])"></el-input>ms
              </div>
              <div>
                出口到位信号上升滤波<el-input style="width: 30%;" v-model="plcSigns[7].value"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`" @focus="refresh()" @blur="writeValue(plcSigns[7])"
                  @keyup.enter.native="writeValue(plcSigns[7])"></el-input>ms
              </div>
              <div>
                出口到位信号下降滤波<el-input style="width: 30%;" v-model="plcSigns[8].value"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`" @focus="refresh()" @blur="writeValue(plcSigns[8])"
                  @keyup.enter.native="writeValue(plcSigns[8])"></el-input>ms
              </div>
              <div>
                出口输送超时时间<el-input style="width: 30%;" v-model="plcSigns[9].value"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`" @focus="refresh()" @blur="writeValue(plcSigns[9])"
                  @keyup.enter.native="writeValue(plcSigns[9])"></el-input>ms
              </div>
              <div>
                出片输送启动延迟<el-input style="width: 30%;" v-model="plcSigns[10].value"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`" @focus="refresh()" @blur="writeValue(plcSigns[10])"
                  @keyup.enter.native="writeValue(plcSigns[10])"></el-input>ms
              </div>
            </div>
          </div>
        </el-card>
        <el-card class="box-card">
          <div slot="header" class="clearfix">
            <span>A02</span>
            <span style="float: right; padding: 3px 0"> Y轴当前位置<el-input style="width: 30%;" v-model="plcSigns[11].value"
                oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                @keyup.enter.native="writeValue(plcSigns[11])" @focus="refresh()" @blur="writeValue(plcSigns[11])"></el-input>mm</span>
            <!-- <el-button style="float: right; padding: 3px 0" type="text">操作按钮</el-button> -->
          </div>
          <div style="display: flex;">
            <div>
              <div>
                X轴输送高速<el-input style="width: 30%;" v-model="plcSigns[12].value"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                  @keyup.enter.native="writeValue(plcSigns[12])" @focus="refresh()" @blur="writeValue(plcSigns[12])"></el-input>m/min
              </div>
              <div>
                X轴输送低速<el-input style="width: 30%;" v-model="plcSigns[13].value"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                  @keyup.enter.native="writeValue(plcSigns[13])" @focus="refresh()" @blur="writeValue(plcSigns[13])"></el-input>m/min
              </div>
              <div>
                X轴输送手动<el-input style="width: 30%;" v-model="plcSigns[14].value"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                  @keyup.enter.native="writeValue(plcSigns[14])" @focus="refresh()" @blur="writeValue(plcSigns[14])"></el-input>m/min
              </div>
              <div>
                X轴回退速度<el-input style="width: 30%;" v-model="plcSigns[15].value"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                  @keyup.enter.native="writeValue(plcSigns[15])" @focus="refresh()" @blur="writeValue(plcSigns[15])"></el-input>m/min
              </div>
              <div>
                Y轴输送高速<el-input style="width: 30%;" v-model="plcSigns[16].value"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                  @keyup.enter.native="writeValue(plcSigns[16])" @focus="refresh()" @blur="writeValue(plcSigns[16])"></el-input>m/min
              </div>
              <div>
                Y轴输送低速<el-input style="width: 30%;" v-model="plcSigns[17].value"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                  @keyup.enter.native="writeValue(plcSigns[17])" @focus="refresh()" @blur="writeValue(plcSigns[17])"></el-input>m/min
              </div>
              <div>
                Y轴输送手动<el-input style="width: 30%;" v-model="plcSigns[18].value"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                  @keyup.enter.native="writeValue(plcSigns[18])" @focus="refresh()" @blur="writeValue(plcSigns[18])"></el-input>m/min
              </div>
              <div>
                Y轴回退速度<el-input style="width: 30%;" v-model="plcSigns[19].value"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"
                  @keyup.enter.native="writeValue(plcSigns[19])" @focus="refresh()" @blur="writeValue(plcSigns[19])"></el-input>m/min
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[20])">Y轴定位设置1</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[21].value" @focus="refresh()" @blur="writeValue(plcSigns[21])"
                  @keyup.enter.native="writeValue(plcSigns[21])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[22])">Y轴定位设置2</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[23].value" @focus="refresh()" @blur="writeValue(plcSigns[23])"
                  @keyup.enter.native="writeValue(plcSigns[23])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
            </div>
            <div>
              <div>
                入片输送启动延迟<el-input type="text" style="width: 30%;" v-model="plcSigns[24].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[24])" @keyup.enter.native="writeValue(plcSigns[24])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                入片信号上升沿滤波<el-input style="width: 30%;" v-model="plcSigns[25].value" @focus="refresh()" @blur="writeValue(plcSigns[25])"
                  @keyup.enter.native="writeValue(plcSigns[25])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                入片信号下降沿滤波<el-input style="width: 30%;" v-model="plcSigns[26].value" @focus="refresh()" @blur="writeValue(plcSigns[26])"
                  @keyup.enter.native="writeValue(plcSigns[26])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                Y轴粗定位上升沿滤波<el-input style="width: 30%;" v-model="plcSigns[27].value" @focus="refresh()" @blur="writeValue(plcSigns[27])"
                  @keyup.enter.native="writeValue(plcSigns[27])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                X轴测量总长度<el-input style="width: 30%;" v-model="plcSigns[28].value" @focus="refresh()" @blur="writeValue(plcSigns[28])"
                  @keyup.enter.native="writeValue(plcSigns[28])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>mm
              </div>
              <div>
                Y轴测量总长度<el-input style="width: 30%;" v-model="plcSigns[29].value" @focus="refresh()" @blur="writeValue(plcSigns[29])"
                  @keyup.enter.native="writeValue(plcSigns[29])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>mm
              </div>
              <div>
                出口输送超时时间<el-input style="width: 30%;" v-model="plcSigns[30].value" @focus="refresh()" @blur="writeValue(plcSigns[30])"
                  @keyup.enter.native="writeValue(plcSigns[30])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                出片输送启动延时<el-input style="width: 30%;" v-model="plcSigns[31].value" @focus="refresh()" @blur="writeValue(plcSigns[31])"
                  @keyup.enter.native="writeValue(plcSigns[31])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[32])">Y轴定位设置3</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[33].value" @focus="refresh()" @blur="writeValue(plcSigns[33])"
                  @keyup.enter.native="writeValue(plcSigns[33])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[34])">Y轴定位设置4</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[35].value" @focus="refresh()" @blur="writeValue(plcSigns[35])"
                @keyup.enter.native="writeValue(plcSigns[35])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
            </div>
          </div>
        </el-card>
        <el-card class="box-card">
          <div slot="header" class="clearfix">
            <span>系统参数</span>
          </div>
          <div style="display: flex;">
            <div>
              <div>
                测量台标识号<el-input style="width: 30%;" v-model="plcSigns[36].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[36])"
                  @keyup.enter.native="writeValue(plcSigns[36])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>
              </div>
              <div>
                1#出口标识号<el-input style="width: 30%;" v-model="plcSigns[37].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[37])"
                  @keyup.enter.native="writeValue(plcSigns[37])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>
              </div>
            </div>
            <div>
              <div>
                片台最大玻璃数<el-input style="width: 30%;" v-model="plcSigns[38].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[38])"
                  @keyup.enter.native="writeValue(plcSigns[38])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>
              </div>
              <div>
                2#出口标识号<el-input style="width: 30%;" v-model="plcSigns[39].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[39])"
                  @keyup.enter.native="writeValue(plcSigns[39])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>
              </div>
            </div>
          </div>
        </el-card>
      </div>
      <div class="demo-input-suffix">
        <el-card class="box-card">
          <div slot="header" class="clearfix">
            <span>B01</span>
          </div>
          <div style="display: flex;">
            <div>
              <div>
                B01输送高速<el-input style="width: 30%;" v-model="plcSigns[40].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[40])"
                  @keyup.enter.native="writeValue(plcSigns[40])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                b01输送低速<el-input style="width: 30%;" v-model="plcSigns[41].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[41])"
                  @keyup.enter.native="writeValue(plcSigns[41])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                b01输送手动<el-input style="width: 30%;" v-model="plcSigns[42].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[42])"
                  @keyup.enter.native="writeValue(plcSigns[42])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                B01最大速度<el-input style="width: 30%;" v-model="plcSigns[43].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[43])"
                  @keyup.enter.native="writeValue(plcSigns[43])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
            </div>
            <div>
              <div>
                B01行走高速<el-input type="text" style="width: 30%;" v-model="plcSigns[44].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[44])"
                  @keyup.enter.native="writeValue(plcSigns[44])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>ms
              </div>
              <div>
                B01行走低速<el-input style="width: 30%;" v-model="plcSigns[45].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[45])"
                  @keyup.enter.native="writeValue(plcSigns[45])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>ms
              </div>
              <div>
                B01行走加速度<el-input style="width: 30%;" v-model="plcSigns[46].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[46])"
                  @keyup.enter.native="writeValue(plcSigns[46])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>ms
              </div>
              <div>
                B01行走减速度<el-input style="width: 30%;" v-model="plcSigns[47].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[47])"
                  @keyup.enter.native="writeValue(plcSigns[47])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>ms
              </div>
              <div>
                B01行走加加速<el-input style="width: 30%;" v-model="plcSigns[48].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[48])"
                  @keyup.enter.native="writeValue(plcSigns[48])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>ms
              </div>
            </div>
            <div>
              <div>
                B01翻转自动<el-input type="text" style="width: 30%;" v-model="plcSigns[49].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[49])"
                  @keyup.enter.native="writeValue(plcSigns[49])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>*/s
              </div>
              <div>
                B01翻转手动<el-input style="width: 30%;" v-model="plcSigns[50].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[50])"
                  @keyup.enter.native="writeValue(plcSigns[50])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>*/s
              </div>
              <div>
                高低速距离界限<el-input style="width: 30%;" v-model="plcSigns[51].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[51])"
                  @keyup.enter.native="writeValue(plcSigns[51])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
            </div>
          </div>
          <div style="display: flex;">
            <div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[52])">1#笼子角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[53].value" @focus="refresh()" @blur="writeValue(plcSigns[53])"
                  @keyup.enter.native="writeValue(plcSigns[53])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[54])">2#笼子角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[55].value" @focus="refresh()" @blur="writeValue(plcSigns[55])"
                  @keyup.enter.native="writeValue(plcSigns[55])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[56])">3#笼子角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[57].value" @focus="refresh()" @blur="writeValue(plcSigns[57])"
                  @keyup.enter.native="writeValue(plcSigns[57])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[58])">4#笼子角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[59].value" @focus="refresh()" @blur="writeValue(plcSigns[59])"
                  @keyup.enter.native="writeValue(plcSigns[59])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[60])">测量台角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[61].value" @focus="refresh()" @blur="writeValue(plcSigns[61])"
                  @keyup.enter.native="writeValue(plcSigns[61])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[62])">1#出口角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[63].value" @focus="refresh()" @blur="writeValue(plcSigns[63])"
                  @keyup.enter.native="writeValue(plcSigns[63])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[64])">2#出口角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[65].value" @focus="refresh()" @blur="writeValue(plcSigns[65])"
                  @keyup.enter.native="writeValue(plcSigns[65])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                入片输送启动延迟
                <el-input style="width: 30%;" v-model="plcSigns[66].value" @focus="refresh()" @blur="writeValue(plcSigns[66])"
                  @keyup.enter.native="writeValue(plcSigns[66])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                出片输送启动延迟
                <el-input style="width: 30%;" v-model="plcSigns[67].value" @focus="refresh()" @blur="writeValue(plcSigns[67])"
                  @keyup.enter.native="writeValue(plcSigns[67])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                光电滤波延时
                <el-input style="width: 30%;" v-model="plcSigns[68].value" @focus="refresh()" @blur="writeValue(plcSigns[68])"
                  @keyup.enter.native="writeValue(plcSigns[68])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
            </div>
            <div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[69])">1#笼子距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[70].value" @focus="refresh()" @blur="writeValue(plcSigns[70])"
                  @keyup.enter.native="writeValue(plcSigns[70])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[71])">2#笼子距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[72].value" @focus="refresh()" @blur="writeValue(plcSigns[72])"
                  @keyup.enter.native="writeValue(plcSigns[72])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[73])">3#笼子距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[74].value" @focus="refresh()" @blur="writeValue(plcSigns[74])"
                  @keyup.enter.native="writeValue(plcSigns[74])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[75])">4#笼子距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[76].value" @focus="refresh()" @blur="writeValue(plcSigns[76])"
                  @keyup.enter.native="writeValue(plcSigns[76])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[77])">测量台距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[78].value" @focus="refresh()" @blur="writeValue(plcSigns[78])"
                  @keyup.enter.native="writeValue(plcSigns[78])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[79])">1#出口距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[80].value" @focus="refresh()" @blur="writeValue(plcSigns[80])"
                  @keyup.enter.native="writeValue(plcSigns[80])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[81])">2#出口距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[82].value" @focus="refresh()" @blur="writeValue(plcSigns[82])"
                  @keyup.enter.native="writeValue(plcSigns[82])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                入片输送超时时间
                <el-input style="width: 30%;" v-model="plcSigns[83].value" @focus="refresh()" @blur="writeValue(plcSigns[83])"
                  @keyup.enter.native="writeValue(plcSigns[83])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                出片输送超时时间
                <el-input style="width: 30%;" v-model="plcSigns[84].value" @focus="refresh()" @blur="writeValue(plcSigns[84])"
                  @keyup.enter.native="writeValue(plcSigns[84])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
            </div>
            <div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[85])">远距离角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[86].value" @focus="refresh()" @blur="writeValue(plcSigns[86])"
                  @keyup.enter.native="writeValue(plcSigns[86])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[87])">近距离角度</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[88].value" @focus="refresh()" @blur="writeValue(plcSigns[88])"
                  @keyup.enter.native="writeValue(plcSigns[88])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>°
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[89])">大车原点设定</el-button>
                <el-button type="primary" @click="writeValue(plcSigns[90])">油泵自动维护</el-button>
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[91])">翻转原点设定</el-button>
              </div>
              <div>
                油泵维护周期
                <el-input style="width: 30%;" v-model="plcSigns[92].value" @focus="refresh()" @blur="writeValue(plcSigns[92])"
                  @keyup.enter.native="writeValue(plcSigns[92])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>天
              </div>
              <div>
                油泵开启时长
                <el-input style="width: 30%;" v-model="plcSigns[93].value" @focus="refresh()" @blur="writeValue(plcSigns[93])"
                  @keyup.enter.native="writeValue(plcSigns[93])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>天
              </div>
              <div>
                最大取片格子
                <el-input style="width: 30%;" v-model="plcSigns[94].value" @focus="refresh()" @blur="writeValue(plcSigns[94])"
                  @keyup.enter.native="writeValue(plcSigns[94])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>格
              </div>
              <div>
                最小取片格子
                <el-input style="width: 30%;" v-model="plcSigns[95].value" @focus="refresh()" @blur="writeValue(plcSigns[95])"
                  @keyup.enter.native="writeValue(plcSigns[95])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>格
              </div>
            </div>
          </div>
        </el-card>
        <el-card class="box-card">
          <div slot="header" class="clearfix">
            <span>笼子参数</span>
          </div>
          <div style="display: flex;">
            <div>
              <div>
                1#笼子栅格数<el-input style="width: 30%;" v-model="plcSigns[96].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[96])"
                  @keyup.enter.native="writeValue(plcSigns[96])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>格
              </div>
              <div>
                1#笼子间距<el-input style="width: 30%;" v-model="plcSigns[97].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[97])"
                  @keyup.enter.native="writeValue(plcSigns[97])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>mm
              </div>
              <div>
                2#笼子栅格数<el-input style="width: 30%;" v-model="plcSigns[98].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[98])"
                  @keyup.enter.native="writeValue(plcSigns[98])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>格
              </div>
              <div>
                2#笼子间距<el-input style="width: 30%;" v-model="plcSigns[99].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[99])"
                  @keyup.enter.native="writeValue(plcSigns[99])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>mm
              </div>
            </div>
            <div>
              <div>
                3#笼子栅格数<el-input style="width: 30%;" v-model="plcSigns[100].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[100])"
                  @keyup.enter.native="writeValue(plcSigns[100])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>格
              </div>
              <div>
                3#笼子间距<el-input style="width: 30%;" v-model="plcSigns[101].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[101])"
                  @keyup.enter.native="writeValue(plcSigns[101])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>mm
              </div>
              <div>
                4#笼子栅格数<el-input style="width: 30%;" v-model="plcSigns[102].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[102])"
                  @keyup.enter.native="writeValue(plcSigns[102])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>格
              </div>
              <div>
                4#笼子间距<el-input style="width: 30%;" v-model="plcSigns[103].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[103])"
                  @keyup.enter.native="writeValue(plcSigns[103])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>mm
              </div>
              <div>
                笼子数量<el-input style="width: 30%;" v-model="plcSigns[104].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[104])"
                  @keyup.enter.native="writeValue(plcSigns[104])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>个
              </div>
            </div>
          </div>
        </el-card>
      </div>
      <div class="demo-input-suffix">
        <el-card class="box-card">
          <div slot="header" class="clearfix">
            <span>C01</span>
          </div>
          <div style="display: flex;">
            <div>
              <div>
                C01输送高速<el-input style="width: 30%;" v-model="plcSigns[105].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[105])"
                  @keyup.enter.native="writeValue(plcSigns[105])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                C01输送低速<el-input style="width: 30%;" v-model="plcSigns[106].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[106])"
                  @keyup.enter.native="writeValue(plcSigns[106])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                C01输送手动<el-input style="width: 30%;" v-model="plcSigns[107].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[107])"
                  @keyup.enter.native="writeValue(plcSigns[107])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                C01最大速度<el-input style="width: 30%;" v-model="plcSigns[108].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[108])"
                  @keyup.enter.native="writeValue(plcSigns[108])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[109])">1#笼子距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[109].value" @focus="refresh()" @blur="writeValue(plcSigns[109])"
                  @keyup.enter.native="writeValue(plcSigns[109])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[109])">2#笼子距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[1].value" @focus="refresh()" @blur="writeValue(plcSigns[18])"
                  @keyup.enter.native="writeValue(plcSigns[104])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                入片输送启动延时<el-input style="width: 30%;" v-model="plcSigns[1].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[110])"
                  @keyup.enter.native="writeValue(plcSigns[110])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                出片输送启动延时<el-input style="width: 30%;" v-model="plcSigns[1].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[111])"
                  @keyup.enter.native="writeValue(plcSigns[111])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
            </div>
            <div>
              <div>
                C01行走高速<el-input type="text" style="width: 30%;" v-model="plcSigns[112].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[112])"
                  @keyup.enter.native="writeValue(plcSigns[112])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>ms
              </div>
              <div>
                C01行走手动<el-input style="width: 30%;" v-model="plcSigns[113].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[113])"
                  @keyup.enter.native="writeValue(plcSigns[113])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>ms
              </div>
              <div>
                最大取片格子<el-input style="width: 30%;" v-model="plcSigns[114].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[114])"
                  @keyup.enter.native="writeValue(plcSigns[114])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                最小取片格子<el-input style="width: 30%;" v-model="plcSigns[115].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[115])"
                  @keyup.enter.native="writeValue(plcSigns[115])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[116])" >3#笼子距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[117].value" @focus="refresh()" @blur="writeValue(plcSigns[117])"
                  @keyup.enter.native="writeValue(plcSigns[117])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                入片输送超时时间<el-input style="width: 30%;" v-model="plcSigns[118].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[118])"
                  @keyup.enter.native="writeValue(plcSigns[118])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                出片输送超时时间<el-input style="width: 30%;" v-model="plcSigns[119].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[119])"
                  @keyup.enter.native="writeValue(plcSigns[119])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
            </div>
          </div>
        </el-card>
        <el-card class="box-card">
          <div slot="header" class="clearfix">
            <span>C02</span>
          </div>
          <div style="display: flex;">
            <div>
              <div>
                C02输送高速<el-input style="width: 30%;" v-model="plcSigns[120].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[120])"
                  @keyup.enter.native="writeValue(plcSigns[120])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                C02输送低速<el-input style="width: 30%;" v-model="plcSigns[121].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[121])"
                  @keyup.enter.native="writeValue(plcSigns[121])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/min
              </div>
              <div>
                C02输送手动<el-input style="width: 30%;" v-model="plcSigns[122].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[122])"
                  @keyup.enter.native="writeValue(plcSigns[122])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>m/min
              </div>
              <div>
                C02最大速度<el-input style="width: 30%;" v-model="plcSigns[123].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[123])"
                  @keyup.enter.native="writeValue(plcSigns[123])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>m/min
              </div>
              <div>
                <el-button type="primary" @click="writeValue(plcSigns[124])">4#笼子距离</el-button>
                <el-input style="width: 30%;" v-model="plcSigns[125].value" @focus="refresh()" @blur="writeValue(plcSigns[125])"
                  @keyup.enter.native="writeValue(plcSigns[125])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>mm
              </div>
              <div>
                入片输送启动延时<el-input style="width: 30%;" v-model="plcSigns[126].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[126])"
                  @keyup.enter.native="writeValue(plcSigns[126])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                出片输送启动延时<el-input style="width: 30%;" v-model="plcSigns[1].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[126])"
                  @keyup.enter.native="writeValue(plcSigns[126])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
            </div>
            <div>
              <div>
                C02行走高速<el-input type="text" style="width: 30%;" v-model="plcSigns[127].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[127])"
                  @keyup.enter.native="writeValue(plcSigns[127])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/s
              </div>
              <div>
                C02行走手动<el-input style="width: 30%;" v-model="plcSigns[128].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[128])"
                  @keyup.enter.native="writeValue(plcSigns[128])"
                  oninput="value=value.replace(/^(-?)(\D*)(\d*(?:\.\d{0,2})?).*$/g, '$1$3')"></el-input>m/s
              </div>
              <div>
                最大取片格子<el-input style="width: 30%;" v-model="plcSigns[129].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[129])"
                  @keyup.enter.native="writeValue(plcSigns[129])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>格
              </div>
              <div>
                最小取片格子<el-input style="width: 30%;" v-model="plcSigns[130].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[130])"
                  @keyup.enter.native="writeValue(plcSigns[130])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>格
              </div>
              <div>
                入片输送超时时间<el-input style="width: 30%;" v-model="plcSigns[131].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[131])"
                  @keyup.enter.native="writeValue(plcSigns[131])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
              <div>
                出片输送超时时间<el-input style="width: 30%;" v-model="plcSigns[132].value"
                  @focus="refresh()" @blur="writeValue(plcSigns[132])"
                  @keyup.enter.native="writeValue(plcSigns[132])"
                  :oninput="`value=value.replace(/[^-\\d]/g, '')`"></el-input>ms
              </div>
            </div>
          </div>
        </el-card>
      </div>
    </div>
  </div>
</template>
@@ -109,7 +807,7 @@
// import ManualonePosition2 from './ManualonePosition2.vue';
// import ManualJog from './ManualJog.vue';
import {
  SelectPermissionByUserName, currentUsername, WriteWord, WriteBit
   writeValue
} from "../../api/home";
// import { createWebSocket } from '../../api/websocket.js';
let socket;
@@ -117,9 +815,12 @@
  name: "AlbaniaServo",
  mixins: [LanguageMixin],
  data() {
    return {
    return { // 存储临时输入值
      updates: false,
      isEditing: false,
      jsonData: data,
      language: this.$i18n.locale,
      plcSigns: [],
      // embeddedComponent: ManualonePosition2,
      // embeddedComponent2: ManualJog,
      hasPermission: false // 默认没有权限
@@ -135,59 +836,81 @@
    //   this.replaceChineseWithEnglish();
    // }
    this.$forceUpdate();
    currentUsername().then(res => {
      SelectPermissionByUserName(res.data).then(res => {
        res.data.permission.forEach(item => {
          if (item.permissionId == "36" && item.state == 1) {
            this.hasPermission = true;
          }
    // currentUsername().then(res => {
    //   SelectPermissionByUserName(res.data).then(res => {
    //     res.data.permission.forEach(item => {
    //       if (item.permissionId == "36" && item.state == 1) {
    //         this.hasPermission = true;
    //       }
        });
      });
    //     });
    //   });
    });
    // });
  },
  methods: {
    handleInput(groupIndex, itemIndex) {
      this.jsonData[groupIndex][itemIndex].value2 = 1;
    refresh(){
      this.updates = true;
    },
    // handleInput(groupIndex, itemIndex) {
    //   this.jsonData[groupIndex][itemIndex].value2 = 1;
    // },
    onFocus() {
      this.isEditing = true;
    },
    onBlur() {
      this.isEditing = false;
      this.plcSigns[0].value = this.inputValue; // 在失去焦点时更新实际值
    },
    onInput(value) {
      if (this.isEditing) {
        this.inputValue = value; // 仅在编辑时更新临时值
      }
    },
    closeSocket() {
      // 关闭 WebSocket 连接
      socket.close();
    },
    updateButtonValue(dataGroup, itemIndex) {
      // 将当前按钮的值设为1
      if (dataGroup[itemIndex].button.value === 0) {
        // 如果当前按钮的值是 0,将其设为 1
        this.$set(dataGroup[itemIndex].button, 'value', 1);
      } else {
        // 否则将其设为 0
        this.$set(dataGroup[itemIndex].button, 'value', 0);
      }
      WriteBit(dataGroup[itemIndex].button.address, dataGroup[itemIndex].button.value).then(res => {
    writeValue(plcSign) {
      writeValue(plcSign.addressIndex, plcSign.value, plcSign.ratio).then(res => {
        if (res.data.message == 200) {
          this.$message.success(this.$t('Operation successful'));
        }
      });
      this.updates = false;
    },
    WriteWord(dataGroup, itemIndex, index) {
      if (isNaN(dataGroup[itemIndex].value)) {
        this.$message.success(this.$t('Operation Please enter number'));
      } else {
        WriteWord(dataGroup[itemIndex].address, dataGroup[itemIndex].value, dataGroup[itemIndex].type).then(res => {
          if (res.data.message == 200) {
            this.$message.success(this.$t('Operation successful'));
          }
        });
      }
      if (index == 1) {
        this.$set(dataGroup[itemIndex], 'value2', 0);
      }
    // updateButtonValue(dataGroup, itemIndex) {
    //   // 将当前按钮的值设为1
    //   if (dataGroup[itemIndex].button.value === 0) {
    //     // 如果当前按钮的值是 0,将其设为 1
    //     this.$set(dataGroup[itemIndex].button, 'value', 1);
    //   } else {
    //     // 否则将其设为 0
    //     this.$set(dataGroup[itemIndex].button, 'value', 0);
    //   }
    //   WriteBit(dataGroup[itemIndex].button.address, dataGroup[itemIndex].button.value).then(res => {
    //     if (res.data.message == 200) {
    //       this.$message.success(this.$t('Operation successful'));
    //     }
    //   });
    },
    // },
    // WriteWord(dataGroup, itemIndex, index) {
    //   if (isNaN(dataGroup[itemIndex].value)) {
    //     this.$message.success(this.$t('Operation Please enter number'));
    //   } else {
    //     WriteWord(dataGroup[itemIndex].address, dataGroup[itemIndex].value, dataGroup[itemIndex].type).then(res => {
    //       if (res.data.message == 200) {
    //         this.$message.success(this.$t('Operation successful'));
    //       }
    //     });
    //   }
    //   if (index == 1) {
    //     this.$set(dataGroup[itemIndex], 'value2', 0);
    //   }
    // },
    initWebSocket() {
@@ -235,81 +958,9 @@
          let obj = JSON.parse(msg.data);
          // const weihuiling = obj.weihuiling;
          this.jsonData.forEach((item, index) => {
            item.forEach((item2, index2) => {
              if (item2.button !== undefined) {
                switch (index) {
                  case 0:
                    item2.button.value = obj.listPlcSysparam[0][index2];
                    break;
                  case 1:
                    item2.button.value = obj.listPlcCountparam[0][index2];
                    break;
                  case 2:
                    item2.button.value = obj.listPlcTimerparam[0][index2];
                    break;
                  case 3:
                    item2.button.value = obj.listHollowparam[0][index2];
                    break;
                  case 4:
                    item2.button.value = obj.listA01param[0][index2];
                    break;
                  case 5:
                    item2.button.value = obj.listA02param[0][index2];
                    break;
                  case 6:
                    item2.button.value = obj.listB01param[0][index2];
                    break;
                  case 7:
                    item2.button.value = obj.listC01param[0][index2];
                    break;
                  case 8:
                    item2.button.value = obj.listC02param[0][index2];
                    break;
                  default:
                    break;
                }
              } else {
                if (item2.value2 !== 1) {
                  switch (index) {
                    case 0:
                    item2.value = obj.listPlcSysparam[0][index2];
                    break;
                  case 1:
                    item2.value = obj.listPlcCountparam[0][index2];
                    break;
                  case 2:
                    item2.value = obj.listPlcTimerparam[0][index2];
                    break;
                  case 3:
                    item2.value = obj.listHollowparam[0][index2];
                    break;
                  case 4:
                    item2.value = obj.listA01param[0][index2];
                    break;
                  case 5:
                    item2.value = obj.listA02param[0][index2];
                    break;
                  case 6:
                    item2.value = obj.listB01param[0][index2];
                    break;
                  case 7:
                    item2.value = obj.listC01param[0][index2];
                    break;
                  case 8:
                    item2.value = obj.listC02param[0][index2];
                    break;
                  default:
                    break;
                  }
                }
              }
            });
          });
          if (obj.plcSigns != null&&this.updates==false) {
            this.plcSigns = obj.plcSigns[0];
          }
          // if (obj.zuhe1) {
          //   console.log(obj);
@@ -358,7 +1009,6 @@
  display: flex;
  align-items: center;
  margin-bottom: 2px;
  /* 调整每个项目之间的间距 */
}
.action-button {
@@ -392,4 +1042,8 @@
  background-color: green;
}
div {
  padding: 2px;
}
</style>