|  |  | 
 |  |  |       <el-form-item label="施工批次" prop="constructionBatchId"> | 
 |  |  |         <construction-batch v-model="queryParams.constructionBatchId" :schoolId="schoolId"></construction-batch> | 
 |  |  |       </el-form-item> | 
 |  |  |       <el-form-item label="型号" prop="model"> | 
 |  |  |         <el-input | 
 |  |  |       <template v-if="showMoreCondition"> | 
 |  |  |         <el-form-item label="型号" prop="model"> | 
 |  |  |           <el-input | 
 |  |  |             v-model="queryParams.model" | 
 |  |  |             placeholder="请输入型号" | 
 |  |  |             clearable | 
 |  |  |             size="small" | 
 |  |  |             @keyup.enter.native="handleQuery" | 
 |  |  |         /> | 
 |  |  |       </el-form-item> | 
 |  |  |       <el-form-item label="生产厂商" prop="manufacturerId"> | 
 |  |  |         <manufacturer v-model="queryParams.manufacturerId"></manufacturer> | 
 |  |  |       </el-form-item> | 
 |  |  |           /> | 
 |  |  |         </el-form-item> | 
 |  |  |         <el-form-item label="生产厂商" prop="manufacturerId"> | 
 |  |  |           <manufacturer v-model="queryParams.manufacturerId"></manufacturer> | 
 |  |  |         </el-form-item> | 
 |  |  |       </template> | 
 |  |  |       <el-form-item> | 
 |  |  |         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> | 
 |  |  |         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> | 
 |  |  |         <div class="show-more-search"> | 
 |  |  |           <ShowMore :showMoreCondition.sync="showMoreCondition"></ShowMore> | 
 |  |  |           <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> | 
 |  |  |           <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> | 
 |  |  |         </div> | 
 |  |  |       </el-form-item> | 
 |  |  |     </el-form> | 
 |  |  |  | 
 |  |  | 
 |  |  |             icon="el-icon-plus" | 
 |  |  |             size="mini" | 
 |  |  |             @click="handleAdd" | 
 |  |  |             v-hasPermi="['oa:ai:add']" | 
 |  |  |         >新增 | 
 |  |  |         </el-button> | 
 |  |  |       </el-col> | 
 |  |  | 
 |  |  |             size="mini" | 
 |  |  |             :disabled="single" | 
 |  |  |             @click="handleUpdate" | 
 |  |  |             v-hasPermi="['oa:ai:edit']" | 
 |  |  |         >修改 | 
 |  |  |         </el-button> | 
 |  |  |       </el-col> | 
 |  |  | 
 |  |  |             size="mini" | 
 |  |  |             :disabled="multiple" | 
 |  |  |             @click="handleDelete" | 
 |  |  |             v-hasPermi="['oa:ai:remove']" | 
 |  |  |         >删除 | 
 |  |  |         </el-button> | 
 |  |  |       </el-col> | 
 |  |  | 
 |  |  |           <span>{{(queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1}}</span> | 
 |  |  |         </template> | 
 |  |  |       </el-table-column> | 
 |  |  |       <el-table-column label="部署名称" align="center" prop="deploymentName"/> | 
 |  |  |       <el-table-column label="支持通道" align="center" prop="passageway"> | 
 |  |  |         <template slot-scope="scope"> | 
 |  |  |           <dict-tag :options="dict.type.DICT112" :value="scope.row.passageway"/> | 
 |  |  |         </template> | 
 |  |  |       </el-table-column> | 
 |  |  |       <el-table-column label="LAN1" min-width="150" align="center" prop="lanOne"/> | 
 |  |  |       <el-table-column label="IP" width="120" align="center" prop="ipOne"/> | 
 |  |  |       <el-table-column label="LAN2" min-width="150" align="center" prop="lanTwo"/> | 
 |  |  |       <el-table-column label="IP" width="120" align="center" prop="ipTwo"/> | 
 |  |  |       <el-table-column label="登录账户" min-width="180" align="center" prop="loginAccount"/> | 
 |  |  |       <el-table-column label="安装位置" min-width="180" align="center" prop="buildingId_dictText"/> | 
 |  |  |       <el-table-column label="所属单位" min-width="180" align="center" prop="organizationId_dictText"/> | 
 |  |  |       <el-table-column label="施工批次" min-width="180" align="center" prop="constructionBatchId_dictText"/> | 
 |  |  |       <el-table-column label="部署名称" min-width="300" align="center" prop="deploymentName"/> | 
 |  |  | <!--      <el-table-column label="支持通道" align="center" prop="passageway">--> | 
 |  |  | <!--        <template slot-scope="scope">--> | 
 |  |  | <!--          <dict-tag :options="dict.type.DICT112" :value="scope.row.passageway"/>--> | 
 |  |  | <!--        </template>--> | 
 |  |  | <!--      </el-table-column>--> | 
 |  |  |       <el-table-column label="IP(LAN1)" width="130" align="center" prop="ipOne"/> | 
 |  |  | <!--      <el-table-column label="LAN1" min-width="150" align="center" prop="lanOne"/>--> | 
 |  |  |  | 
 |  |  | <!--      <el-table-column label="LAN2" min-width="150" align="center" prop="lanTwo"/>--> | 
 |  |  | <!--      <el-table-column label="IP" width="130" align="center" prop="ipTwo"/>--> | 
 |  |  |       <el-table-column label="账户/密码" min-width="220" align="center" prop="loginAccount"/> | 
 |  |  | <!--      <el-table-column label="所属单位" min-width="180" align="center" prop="organizationId_dictText"/>--> | 
 |  |  | <!--      <el-table-column label="施工批次" min-width="180" align="center" prop="constructionBatchId_dictText"/>--> | 
 |  |  |       <el-table-column label="序列号" min-width="150" align="center" prop="serialNumber"/> | 
 |  |  |       <el-table-column label="型号" min-width="120" align="center" prop="model"/> | 
 |  |  | <!--      <el-table-column label="型号" min-width="120" align="center" prop="model"/>--> | 
 |  |  |       <el-table-column label="生产厂商" min-width="220" align="center" prop="manufacturerId_dictText"/> | 
 |  |  |       <el-table-column label="安装位置" min-width="240" align="center" prop="buildingId_dictText"/> | 
 |  |  |       <el-table-column label="操作" align="center" fixed="right" width="180" class-name="small-padding fixed-width"> | 
 |  |  |         <template slot-scope="scope"> | 
 |  |  |           <el-button | 
 |  |  | 
 |  |  |               type="text" | 
 |  |  |               icon="el-icon-edit" | 
 |  |  |               @click="handleUpdate(scope.row)" | 
 |  |  |               v-hasPermi="['oa:ai:edit']" | 
 |  |  |           >修改 | 
 |  |  |           </el-button> | 
 |  |  |           <el-button | 
 |  |  | 
 |  |  |               class="del-btn" | 
 |  |  |               icon="el-icon-delete" | 
 |  |  |               @click="handleDelete(scope.row)" | 
 |  |  |               v-hasPermi="['oa:ai:remove']" | 
 |  |  |           >删除 | 
 |  |  |           </el-button> | 
 |  |  |         </template> | 
 |  |  | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="12"> | 
 |  |  |             <el-form-item label="通道" prop="passageway"> | 
 |  |  |               <el-select v-model="form.passageway" placeholder="请选择通道"> | 
 |  |  |               <el-select v-model="form.passageway" placeholder="请选择通道" style="width: 100%;"> | 
 |  |  |                 <el-option | 
 |  |  |                     v-for="dict in dict.type.DICT112" | 
 |  |  |                     :key="dict.value" | 
 |  |  | 
 |  |  |         <el-row> | 
 |  |  |           <el-col :span="12"> | 
 |  |  |             <el-form-item label="LAN1" prop="lanOne"> | 
 |  |  |               <el-input v-model="form.lanOne" placeholder="请输入LAN1"/> | 
 |  |  |               <el-input v-model="form.lanOne" placeholder="请输入校园网端口"/> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="12"> | 
 |  |  | 
 |  |  |         <el-row> | 
 |  |  |           <el-col :span="12"> | 
 |  |  |             <el-form-item label="LAN2" prop="lanTwo"> | 
 |  |  |               <el-input v-model="form.lanTwo" placeholder="请输入LAN2"/> | 
 |  |  |               <el-input v-model="form.lanTwo" placeholder="请输入局域网端口"/> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="12"> | 
 |  |  | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |         </el-row> | 
 |  |  |         <el-form-item label="登录账户" prop="loginAccount"> | 
 |  |  |           <el-input v-model="form.loginAccount" maxlength="64" show-word-limit placeholder="请输入登录账户"/> | 
 |  |  |         <el-form-item label="账户/密码" prop="loginAccount"> | 
 |  |  |           <el-input v-model="form.loginAccount" maxlength="64" show-word-limit placeholder="请输入账户/密码"/> | 
 |  |  |         </el-form-item> | 
 |  |  |         <el-form-item label="安装位置" prop="buildingId"> | 
 |  |  |           <building v-if="open" v-model="form.buildingId" :schoolId="schoolId"></building> | 
 |  |  | 
 |  |  | import constructionBatch from "../../components/constructionBatch"; | 
 |  |  | import manufacturer from "../../components/manufacturer"; | 
 |  |  | import nvr from "../../components/nvr"; | 
 |  |  | import ShowMore from "@/views/components/showMore"; | 
 |  |  |  | 
 |  |  | export default { | 
 |  |  |   name: "Ai", | 
 |  |  | 
 |  |  |     organization, | 
 |  |  |     constructionBatch, | 
 |  |  |     manufacturer, | 
 |  |  |     nvr | 
 |  |  |     nvr, | 
 |  |  |     ShowMore | 
 |  |  |   }, | 
 |  |  |   data() { | 
 |  |  |     return { | 
 |  |  | 
 |  |  |           {required: true, message: "通道不能为空", trigger: "change"} | 
 |  |  |         ], | 
 |  |  |         lanOne: [ | 
 |  |  |           {required: true, message: "LAN1不能为空", trigger: "blur"}, | 
 |  |  |           {required: true, message: "校园网端口不能为空", trigger: "blur"}, | 
 |  |  |           { | 
 |  |  |             pattern: /^[A-F0-9]{2}(-[A-F0-9]{2}){5}$|^[A-F0-9]{2}(:[A-F0-9]{2}){5}$|^[A-F0-9]{12}$|^[A-F0-9]{4}(\.[A-F0-9]{4}){2}$/, | 
 |  |  |             message: "请输入正确的LAN1", | 
 |  |  |             pattern: /^[0-9a-fA-F:]*$/, | 
 |  |  |             message: "请输入正确的校园网端口", | 
 |  |  |             trigger: "blur" | 
 |  |  |           } | 
 |  |  |         ], | 
 |  |  | 
 |  |  |           {required: true, message: "IP不能为空", trigger: "blur"}, | 
 |  |  |           { | 
 |  |  |             pattern: /^(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])$/, | 
 |  |  |             message: "请输入正确的ip地址", | 
 |  |  |             message: "请输入正确的ip地址,文本范围 0~9、.", | 
 |  |  |             trigger: "blur" | 
 |  |  |           } | 
 |  |  |         ], | 
 |  |  |         lanTwo: [ | 
 |  |  |           { | 
 |  |  |             pattern: /^[A-F0-9]{2}(-[A-F0-9]{2}){5}$|^[A-F0-9]{2}(:[A-F0-9]{2}){5}$|^[A-F0-9]{12}$|^[A-F0-9]{4}(\.[A-F0-9]{4}){2}$/, | 
 |  |  |             message: "请输入正确的LAN2", | 
 |  |  |             pattern: /^[0-9a-fA-F:]*$/, | 
 |  |  |             message: "请输入正确的局域网端口", | 
 |  |  |             trigger: "blur" | 
 |  |  |           } | 
 |  |  |         ], | 
 |  |  |         ipTwo: [ | 
 |  |  |           { | 
 |  |  |             pattern: /^(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])\.(\d|[1-9]\d|1\d{2}|2[0-5][0-5])$/, | 
 |  |  |             message: "请输入正确的ip地址", | 
 |  |  |             message: "请输入正确的ip地址,文本范围 0~9、.", | 
 |  |  |             trigger: "blur" | 
 |  |  |           } | 
 |  |  |         ], | 
 |  |  | 
 |  |  |           {required: true, message: "施工批次不能为空", trigger: "blur"} | 
 |  |  |         ], | 
 |  |  |       }, | 
 |  |  |       disabled: false | 
 |  |  |       disabled: false, | 
 |  |  |       showMoreCondition: false | 
 |  |  |     }; | 
 |  |  |   }, | 
 |  |  |   created() { | 
 |  |  | 
 |  |  |     /** 删除按钮操作 */ | 
 |  |  |     handleDelete(row) { | 
 |  |  |       const ids = row.id || this.ids; | 
 |  |  |       this.$modal.confirm('是否确认删除AI设备编号为"' + ids + '"的数据项?').then(() => { | 
 |  |  |       this.$modal.confirm('是否确认删除?').then(() => { | 
 |  |  |         this.loading = true; | 
 |  |  |         return delAi(ids); | 
 |  |  |       }).then(() => { |