<template>
    <div>
        <el-card>
            <el-form :inline="true" :model="filterQuery" size="mini">

                <el-row>

                    <el-form-item class="query-form-item">
                        <el-select
                            v-model="filterQuery.companyName"
                            filterable
                            remote
                            clearable="true"
                            reserve-keyword
                            placeholder="供应商"
                            :remote-method="findMethod"
                            :loading="loading"
                        >
                            <el-option
                                v-for="item in fromOptions"
                                :key="item.companyName"
                                :label="item.companyName"
                                :value="item.companyName"
                            >
                                <span style="float: left">{{ item.companyName }}</span>
                            </el-option>
                        </el-select>
                    </el-form-item>

                    <el-form-item class="query-form-item">
                        <el-input v-model="filterQuery.unionCode" placeholder="DI/医保编码/商品条码"
                                  clearable="true"></el-input>
                    </el-form-item>
                    <el-form-item class="query-form-item">
                        <el-input v-model="filterQuery.cpmctymc" placeholder="产品通用名" clearable="true"></el-input>
                    </el-form-item>
                    <el-form-item class="query-form-item">
                        <el-input v-model="filterQuery.ggxh" placeholder="规格型号" clearable="true"></el-input>
                    </el-form-item>


                </el-row>

                <el-row>
                    <el-form-item class="query-form-item">
                        <el-select v-model="filterQuery.filterType" placeholder="请选择过滤对照条件">
                            <el-option
                                v-for="item in filterList"
                                :key="item.filterType"
                                :label="item.sysName"
                                :value="item.filterType">
                                <span style="float: left">{{ item.sysName }}</span>
                            </el-option>
                        </el-select>
                    </el-form-item>
                    <el-form-item class="query-form-item">
                        <el-input v-model="filterQuery.ylqxzcrbarmc" placeholder="生产企业/注册备案人"
                                  clearable="true"></el-input>
                    </el-form-item>
                    <el-form-item class="query-form-item">
                        <el-input v-model="filterQuery.thrPiId" placeholder="第三方产品编码" clearable="true"></el-input>
                    </el-form-item>
                    <el-form-item class="query-form-item" v-if="isSpCombine">
                        <el-select v-model="filterQuery.lockStatus" placeholder="状态">
                            <el-option label="全部" value=""></el-option>
                            <el-option label="未提交" value="1"></el-option>
                            <el-option label="已提交" value="2"></el-option>
                            <el-option label="已锁定" value="3"></el-option>
                        </el-select>
                    </el-form-item>
                    <el-form-item>
                        <el-button-group>
                            <el-button type="primary" icon="el-icon-refresh" @click="onReset"></el-button>
                            <el-button type="primary" icon="search" @click="search">查询</el-button>

                            <el-button type="primary" icon="search" @click="lockProducts('3')" v-if="isSpCombine"
                            >锁定
                            </el-button
                            >
                            <el-button type="primary" icon="search" @click="lockProducts('1')" v-if="isSpCombine"
                            >退回
                            </el-button
                            >
                            <!-- <el-button type="primary" icon="search" @click="uploadErpProduct"
                                          >更新下载ERP存货产品</el-button
                                        > -->
                        </el-button-group>
                    </el-form-item>
                </el-row>
            </el-form>
            <el-table
                v-loading="loading"
                :data="list"
                style="width: 100%"
                key="1"
                @selection-change="handleSelectionChange"
            >
                <el-table-column type="selection" width="55"></el-table-column>
                <el-table-column label="序号" type="index"></el-table-column>
                <el-table-column
                    label="供应商"
                    prop="companyName"
                    width="160"
                    show-overflow-tooltip
                ></el-table-column>
                <el-table-column
                    label="最小销售产品标识"
                    prop="nameCode"
                    width="140"
                    show-overflow-tooltip
                ></el-table-column>
                <el-table-column
                    label="主系统产品编码"
                    prop="mainId"
                    width="120"
                    show-overflow-tooltip
                ></el-table-column>
                <el-table-column
                    label="生产企业"
                    prop="ylqxzcrbarmc" width="160"
                    show-overflow-tooltip
                ></el-table-column>
                <el-table-column
                    label="产品通用名"
                    prop="cpmctymc" width="140"
                    show-overflow-tooltip
                ></el-table-column>
                <el-table-column
                    label="规格型号"
                    prop="ggxh" width="140"
                    show-overflow-tooltip
                ></el-table-column>
                <el-table-column
                    label="注册/备案凭证"
                    prop="zczbhhzbapzbh" width="140"
                    show-overflow-tooltip
                ></el-table-column>


                <el-table-column
                    label="器械类别"
                    prop="qxlb" width="80"
                    show-overflow-tooltip
                ></el-table-column>

                <el-table-column
                    v-if="isSpCombine"
                    label="状态"
                    prop="lockStatus"
                    width="80"
                    show-overflow-tooltip
                >
                    <template slot-scope="scope">
                        {{ lockStatusMap[scope.row.lockStatus] }}
                    </template>
                </el-table-column>

                <el-table-column width="80" label="操作" fixed="right">
                    <template slot-scope="scope">
                        <!--                        <el-button-->
                        <!--                            type="text"-->
                        <!--                            size="small"-->
                        <!--                            :disabled="scope.row.thirdId == null || scope.row.thirdId == '' || scope.row.flbm!=null"-->
                        <!--                            @click.native.stop="intentSelectUdi(scope.row)"-->
                        <!--                        >关联DI-->
                        <!--                        </el-button>-->
                        <!--<el-button-->
                        <!--type="text"-->
                        <!--size="small"-->
                        <!--@click.native.stop="intentSelectErp(scope.row)"-->
                        <!--&gt;关联ERP-->
                        <!--</el-button>-->
                        <!--:disabled="scope.row.tyshxydm == null"-->
                        <el-button
                            type="text"
                            size="small"
                            @click.native.stop="handleModifyClick(scope.row)"
                        >详情
                        </el-button>
                        <!--                        <el-button type="text" size="small" @click.native.stop="deleteDialog(scope.row)"-->
                        <!--                        >删除-->
                        <!--                        </el-button>-->
                    </template>
                </el-table-column>
            </el-table>
            <el-dialog
                title="产品信息编辑"
                :visible.sync="editDialogVisible"
                :close-on-click-modal="false"
                :close-on-press-escape="false"
                width="70%"
                v-if="editDialogVisible"
            >

                <el-table :data="sysList" style="width: 100%" key="2" border highlight-current-row>
                    <el-table-column label="序号" type="index"></el-table-column>
                    <el-table-column
                        label="系统名称"
                        prop="sysName"
                        show-overflow-tooltip
                    ></el-table-column>
                    <el-table-column
                        label="产品编码"
                        prop="thirdId"
                        show-overflow-tooltip
                    ></el-table-column>
                    <el-table-column
                        label="产品名称"
                        prop="thirdName"
                        show-overflow-tooltip
                    ></el-table-column>
                    <el-table-column label="规格型号" prop="spec" show-overflow-tooltip></el-table-column>
                    <el-table-column label="注册/备案凭证号" prop="registerNo" show-overflow-tooltip></el-table-column>
                    <el-table-column label="生产厂家" prop="manufactory" show-overflow-tooltip></el-table-column>

                </el-table>
                <el-table
                    v-loading="loading"
                    :data="detailList"
                    style="width: 100%; margin-top: 20px"
                    border
                    key="3"
                    @current-change="handleDetail"
                >
                    <el-table-column
                        label="产品标识"
                        prop="nameCode"
                        show-overflow-tooltip
                    ></el-table-column>

                    <el-table-column
                        label="产品通用名"
                        prop="cpmctymc"
                        show-overflow-tooltip
                    ></el-table-column>
                    <el-table-column
                        label="包装级别"
                        prop="packLevel"
                        show-overflow-tooltip
                    ></el-table-column>
                    <el-table-column
                        label="包装层级"
                        prop="bzcj"
                        show-overflow-tooltip
                    ></el-table-column>
                </el-table>

                <el-form
                    :model="editQuery"
                    :rules="rules"
                    ref="editQuery"
                    label-width="100px"
                    style="margin-top: 20px"
                >
                    <el-collapse v-model="activeNames">
                        <el-collapse-item name="1">
                            <template slot="title">
                                <p class="form-title">产品标识基本信息</p>
                            </template>
                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>产品标识:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.nameCode"
                                        ></el-input>
                                    </div>
                                </el-col>

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>最小包装单元内包含使用单元数量:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="!checked"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.zxxsbzbhsydysl"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>

                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>包含下级产品编码:&nbsp;</span>
                                        </div>

                                        <el-input
                                            style="width: 65%"
                                            size="small"
                                            :disabled="true"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.bhxjcpbm"

                                        ></el-input>
                                    </div>
                                </el-col>

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>包含最小销售包装数量:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            size="small"
                                            :disabled="true"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.bhzxxsbzsl"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>
                        </el-collapse-item>

                        <el-collapse-item name="2">
                            <template slot="title">
                                <p class="form-title">产品基本信息</p>
                            </template>
                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>产品名称:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            size="small"
                                            splaceholder="请输入内容"
                                            :disabled="true"
                                            v-model="editQuery.cpmctymc"
                                        ></el-input>
                                    </div>
                                </el-col>
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>产品标识:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.nameCode"
                                        ></el-input>
                                    </div>
                                </el-col>


                            </el-row>

                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>规格型号:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.ggxh"
                                        ></el-input>
                                    </div>
                                </el-col>

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>器械类别:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.qxlb"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>
                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>产品类别:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.cplb"
                                        ></el-input>
                                    </div>
                                </el-col>
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>分类编码:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.flbm"
                                        ></el-input>
                                    </div>
                                </el-col>

                            </el-row>
                            <el-row :gutter="20" class="el-row" type="flex">

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>商品条码:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.sptm"
                                        ></el-input>
                                    </div>
                                </el-col>
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>医保编码:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.ybbm"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>
                            <el-row :gutter="20" class="el-row" type="flex">

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>医疗器械注册人:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="ylqxzcrbarmc"
                                            v-model="editQuery.ylqxzcrbarmc"
                                        ></el-input>
                                    </div>
                                </el-col>
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>注册人英文名称:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.ylqxzcrbarywmc"
                                        ></el-input>
                                    </div>
                                </el-col>

                            </el-row>
                            <el-row :gutter="20" class="el-row" type="flex">

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>统一社会信用号:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.tyshxydm"
                                        ></el-input>
                                    </div>
                                </el-col>
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>注册证/备案号:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.zczbhhzbapzbh"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>

                            <el-row :gutter="20" class="el-row" type="flex">

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>生产厂家:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="!checked"
                                            size="small"
                                            splaceholder="请输入内容"
                                        ></el-input>
                                    </div>
                                </el-col>

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>产品描述:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="!checked"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.cpms"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>

                        </el-collapse-item>

                        <el-collapse-item name="3">
                            <template slot="title">
                                <p class="form-title">生产标识基本信息</p>
                            </template>
                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>是否包含批号:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="!checked"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.scbssfbhph"
                                        ></el-input>
                                    </div>
                                </el-col>
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>是否包含序列号:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="!checked"
                                            size="small"
                                            v-model="editQuery.scbssfbhxlh"
                                            splaceholder="请输入内容"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>
                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>是否包含生产日期:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="!checked"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.scbssfbhscrq"
                                        ></el-input>
                                    </div>
                                </el-col>
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>是否包含失效日期:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="!checked"
                                            v-model="editQuery.scbssfbhsxrq"
                                            size="small"
                                            splaceholder="请输入内容"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>
                        </el-collapse-item>

                        <el-collapse-item name="4">
                            <template slot="title">
                                <p class="form-title">包装标识信息</p>
                            </template>
                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>上级产品编码:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            :disabled="true"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.sjcpbm"
                                        ></el-input>
                                    </div>
                                </el-col>

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>包装级别:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            size="small"
                                            splaceholder="请输入内容"
                                            :disabled="true"
                                            v-model="editQuery.packLevel"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>
                            <el-row :gutter="20" class="el-row" type="flex">
                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>包装单位/包装级别:&nbsp;</span>
                                        </div>

                                        <el-input
                                            style="width: 65%"
                                            size="small"
                                            splaceholder="请输入内容"
                                            v-model="editQuery.bzcj"
                                            :disabled="true"

                                        ></el-input>
                                    </div>
                                </el-col>

                                <el-col :span="12" class="el-col">
                                    <div class="text item">
                                        <div class="itemTag">
                                            <span>包含下级包装数量:&nbsp;</span>
                                        </div>
                                        <el-input
                                            style="width: 65%"
                                            size="small"
                                            splaceholder="请输入内容"
                                            :disabled="true"
                                            v-model="editQuery.bhxjsl"
                                        ></el-input>
                                    </div>
                                </el-col>
                            </el-row>

                        </el-collapse-item>

                    </el-collapse>

                    <el-row :gutter="20" class="el-row" type="flex">
                        <el-col :span="24" class="el-col">
                            <div style="margin-top: 18px;margin-bottom: 18px">
                                <el-checkbox v-model="checked" disabled
                                >启用使用单元
                                </el-checkbox>
                                <el-checkbox v-model="editQuery.isDisable" disabled
                                >是否禁用
                                </el-checkbox>
                                <el-checkbox v-model="editQuery.isAdavence" disabled
                                >是否寄售
                                </el-checkbox>
                                <el-checkbox v-model="editQuery.allowNoBatch" class="" disabled
                                >允许无批次号
                                </el-checkbox>
                                <el-checkbox v-model="editQuery.allowNoExpire" class="" disabled
                                >允许无失效日期
                                </el-checkbox>
                                <el-checkbox v-model="editQuery.allowNoProduct" class="" disabled
                                >允许无生产日期
                                </el-checkbox>
                            </div>
                        </el-col>
                    </el-row>
                </el-form>

                <!--                <div style="text-align: center">-->
                <!--                    <el-button type="primary" size="small" icon="search" @click="onAddSubmit"-->
                <!--                    >提交-->
                <!--                    </el-button>-->
                <!--                    <el-button type="primary" size="small" icon="search" @click="cancelDialog"-->
                <!--                    >取消-->
                <!--                    </el-button>-->
                <!--                </div>-->
            </el-dialog>
            <el-dialog
                title="关联选入器械信息"
                :visible.sync="selectUdiDialogVisible"
                :close-on-click-modal="false"
                :close-on-press-escape="false"
                width="85%"
                v-if="selectUdiDialogVisible"
            >
                <selectUdi @closeUdi="closeUdi" :isImportUdi="isImportUdi"></selectUdi>
            </el-dialog>
            <el-dialog
                title="从指定系统选入器械信息"
                :visible.sync="selectErpDialogVisible"
                :close-on-click-modal="false"
                :close-on-press-escape="false"
                width="85%"
                v-if="selectErpDialogVisible"
            >
                <selectErp
                    :closeDialog="closeDialog"
                    :uuid="uuid"
                    :relId="relId"
                    :isImport="isImport"
                    :data="thisData"
                    :defaultSys="defaultSys"
                    @closeUdi="closeUdi"
                ></selectErp>
            </el-dialog>
            <el-dialog
                title="选入DI器械信息"
                :visible.sync="selectLocalVisible"
                :close-on-click-modal="false"
                :close-on-press-escape="false"
                width="85%"
                v-if="selectLocalVisible"
            >
                <selectLocalUdi
                    :closeDialog="closeDialog"
                    :relId="relId"
                    :isImportUdi="isImportUdi"
                    :data="thisData"
                    @closeUdi="closeUdi"
                ></selectLocalUdi>
            </el-dialog>
            <el-dialog
                title="选择DI版本"
                :visible.sync="selectVersionVisible"
                :close-on-click-modal="false"
                :close-on-press-escape="false"
                width="85%"
                v-if="selectVersionVisible"
            >
                <selectUdiVersion
                    :closeDialog="closeDialog"
                    :uuid="uuid"
                    :originUuid="originUuid"
                    @closeUdi="closeUdi"
                ></selectUdiVersion>
            </el-dialog>
            <el-pagination
                :page-size="filterQuery.limit"
                @current-change="handleCurrentChange"
                layout="prev, pager, next"
                :total="total"
                :current-page="filterQuery.page"
            ></el-pagination>
        </el-card>
    </div>
</template>

<script>
import {
    getUdiInfos,
    deletetUdiInfos,
    updatetUdiInfos,
    updateErpProduct,
    uploadSmp,
    thirdSysDetail,
    removeRl, sysFilter, spcombie, lockStatus
} from "../../api/basic/udiRelevance";
import {selectSysParamByKey} from "../../api/param/systemParamConfig";
import {filterByUuid, filterCompany} from "../../api/basic/udiInfo";
import {filterCompanyProductRelevance} from "../../api/warehouse/companyProductRelevance";
import {filterCustomers} from "../../api/auth/customer"

import selectUdi from "./UdiInfoRelevance.vue";
import selectErp from "./UdiInfoselectErpUdi";
import selectLocalUdi from "./UdiInfoSelectLocalUdi";
import selectUdiVersion from "./UdiinfoSelectVersion";

export default {
    data() {
        return {
            filterQuery: {
                lockStatus: null,
                unionCode: null,
                udiCode: null,
                ylqxzcrbarmc: "",
                cpmctymc: "",
                nameCode: "",
                ggxh: null,
                page: 1,
                limit: 20,
                addType: 1,
                thrPiId: null,
                filterType: null,
                companyName: null,
            },
            fromOptions: [],
            editQuery: null,
            relevanceEdit: {
                id: null,
                thirdId: "",
                isDisable: null,
                isUseDy: false,
                isLock: null,
                isAdavence: null,
                pId: null,
            },
            pId: 0,
            defaultSys: null,
            isImport: false,
            isImportUdi: false,
            isUploadSmp: false,
            isSpCombine: false,
            isImportFile: false,
            uploadFileUrl: null,
            checked: false,
            list: [],
            detailList: [],
            sysList: [],
            filterList: [],
            total: 0,
            thirdNo: "",
            uuid: "111",
            originUuid: null,
            thirdId: null,
            relId: "",
            thisData: {
                nameCode: null,
                cpmctymc: null,
                ggxh: null
            },
            multipleSelection: [],
            editDialogVisible: false,       //详情
            selectUdiDialogVisible: false,  //关联选入
            selectErpDialogVisible: false,  //选入ERP产品
            selectLocalVisible: false,      //关联UDI
            selectVersionVisible: false,
            isUseDyCheck: false,
            lockStatusMap: {"1": "未提交", "2": "已提交", "3": "已锁定"},
            loading: false,
            activeNames: ['1']
        };
    },

    methods: {
        onReset() {
            this.$router.push({
                path: "",
            });
            this.filterQuery = {
                lockStatus: null,
                unionCode: null,
                udiCode: null,
                ylqxzcrbarmc: "",
                cpmctymc: "", thrPiId: null,
                nameCode: "",
                ggxh: null,
                page: 1,
                limit: 20,
                addType: 1,
            };
            this.getList();
        },
        search() {
            this.filterQuery.page = 1;
            this.getList();
        },
        getList() {
            this.loading = true;
            filterCompanyProductRelevance(this.filterQuery)
                .then((response) => {
                    this.loading = false;
                    this.list = response.data.list || [];
                    this.total = response.data.total || 0;
                })
                .catch(() => {
                    this.loading = false;
                    this.list = [];
                    this.total = 0;
                });
        },
        keyup_submit(event) {
            this.filterQuery.page = 1;
            this.getList();
            event.target.select();
        },
        getDetailList(detailQuery) {
            this.loading = true;
            filterByUuid(detailQuery)
                .then((response) => {
                    this.isUseDyCheck = false;
                    this.loading = false;
                    this.detailList = response.data || [];
                    this.detailList.forEach((item, index, array) => {
                        if (item.zxxsbzbhsydysl > 1) {
                            this.isUseDyCheck = true;
                        }
                    });
                })
                .catch(() => {
                    this.loading = false;
                    this.detailList = [];
                });
        },

        handleDetail(row) {
            this.editQuery = row;
        },
        deleteOrders(data) {
            this.loading = true;
            let tquery = {
                id: data.id + "",
            };

            deletetUdiInfos(tquery)
                .then((response) => {
                    if (response.code == 20000) {
                        this.getList();
                        this.$message({
                            type: "success",
                            message: "删除成功！",
                        });
                    } else {
                        this.$message.error(response.message);
                    }
                })
                .catch(() => {
                });
        },

        deleteDialog(rowId) {
            this.$confirm("此操作将永久删除该产品信息, 是否继续?", "提示", {
                confirmButtonText: "确定",
                cancelButtonText: "取消",
                type: "warning",
            })
                .then(() => {
                    this.deleteOrders(rowId);
                })
                .catch(() => {
                });
        },

        intentDetail() {
            this.isImportUdi = false;
            this.selectUdiDialogVisible = true;
        },
        addSelectErp(row) {
            this.defaultSys = row.sysId;
            this.isImport = false;
            this.selectErpDialogVisible = true;
        },

        removeErp(row) {
            this.$confirm("此操作将解除该绑定产品信息, 是否继续?", "提示", {
                confirmButtonText: "确定",
                cancelButtonText: "取消",
                type: "warning",
            })
                .then(() => {
                    let query = {
                        relId: this.editQuery.id,
                        thirdSys: row.sysId
                    };
                    removeRl(query)
                        .then((response) => {
                            if (response.code == 20000) {
                                this.getThirdSysDetail()();
                                this.$message({
                                    type: "success",
                                    message: "删除成功！",
                                });
                            } else {
                                this.$message.error(response.message);
                            }
                        })
                        .catch(() => {
                        });
                })
                .catch(() => {
                });
        },

        intentSelectErp(val) {
            this.uuid = val.uuid;
            this.relId = val.id;
            this.isImport = false;
            this.thisData = val;
            this.selectErpDialogVisible = true;
        },

        intentImportErp(val) {
            this.defaultSys = null;
            this.uuid = val.uuid;
            this.relId = val.id;
            this.isImport = true;
            this.thisData = val;
            this.selectErpDialogVisible = true;
        },
        uploadSMP() {
            var selectData = this.multipleSelection;
            var keys = [];
            selectData.forEach((obj) => {
                keys.push(obj.id);
            });
            var tquery = {
                keys: keys,
            };
            uploadSmp(tquery)
                .then((response) => {
                    if (response.code == 20000) {
                        this.$message({
                            type: "success",
                            message: "上传成功！",
                        });
                    } else {
                        this.$message({
                            type: "error",
                            message: response.message,
                        });
                    }
                })
                .catch(() => {
                    this.$message({
                        type: "error",
                        message: "上传失败",
                    });
                });
        },
        intentSelectUdi(val) {
            this.relId = val.id;
            this.isImportUdi = true;
            this.thisData = val;
            this.selectLocalVisible = true;
        },


        intentImportUdi() {
            this.relId = null;
            this.selectLocalVisible = true;
        },


        handleSelectionChange(val) {
            this.multipleSelection = val;
        },

        cancelDialog() {
            this.editDialogVisible = false;
        },
        handleCurrentChange(val) {
            this.filterQuery.page = val;
            this.getList();
        },
        handleModifyClick(row) {
            this.uuid = row.uuid;
            this.relId = row.rlId;
            this.isImport = false;
            this.thisData = row;
            this.editDialogVisible = true;
            this.editQuery = row;
            this.pId = row.id;
            this.relevanceEdit = {
                id: row.rlId,
                // thirdId: row.thirdId,
                isUseDy: row.isUseDy,
                isDisable: row.isDisable,
                isLock: row.isLock,
                isAdavence: row.isAdavence,
            };
            this.checked = row.isUseDy == 1;

            let ttquery = {
                uuid: row.uuid,
                page: 1,
                limit: 10,
            };

            this.getDetailList(ttquery);
            this.getThirdSysDetail();
        },


        lockProducts(status) {
            let selectData = this.multipleSelection;
            if (selectData.length === 0) {
                this.$message.warning("请选择需要操作的器械信息！");
                return;
            }
            let postQuery = {
                ids: [],
                lockStatus: status,
            };
            selectData.forEach((row) => {
                postQuery.ids.push(row.rlId);
            });
            lockStatus(postQuery)
                .then((response) => {
                    if (response.code == 20000) {
                        this.loading = false;
                        this.$message.success(response.data);
                        this.getList();
                    } else {
                        this.$message.error(response.message);
                    }

                })
                .catch(() => {
                    this.loading = false;
                });
        },
        closeUdi(val) {
            this.selectUdiDialogVisible = false;
            this.selectErpDialogVisible = false;
            this.selectLocalVisible = false;
            this.getThirdSysDetail();
            if (val) {
                this.getList();
            }
        },
        getThirdSysDetail() {
            let query = {
                id: this.relevanceEdit.id,
            };

            thirdSysDetail(query)
                .then((response) => {
                    this.loading = false;
                    this.sysList = response.data.list || [];
                })
                .catch(() => {
                    this.loading = false;
                    this.sysList = [];
                });
        },
        getSysFilter() {
            sysFilter()
                .then((response) => {
                    this.loading = false;
                    this.filterList = response.data.list || [];
                })
                .catch(() => {
                    this.loading = false;
                    this.filterList = [];
                });

        },


        uploadErpProduct() {
            updateErpProduct()
                .then((response) => {
                    if (response.code == 20000) {
                        this.$message({
                            type: "success",
                            message: response.data,
                        });
                    } else {
                        this.$message.error(response.message);
                    }
                })
                .catch(() => {
                });
        },
        selectVersion() {
            this.selectVersionVisible = true;
            this.uuid = this.editQuery.uuid;
            this.originUuid = this.editQuery.originUuid;
        },
        closeDialog() {
            this.selectErpDialogVisible = false;
            this.selectLocalVisible = false;
            this.selectVersionVisible = false;
        },
        onAddSubmit() {
            if (this.checked == true) {
                this.relevanceEdit.isUseDy = 1;
            } else {
                this.relevanceEdit.isUseDy = 0;
            }
            this.relevanceEdit.isDisable = this.editQuery.isDisable;
            this.relevanceEdit.isLock = this.editQuery.isLock;
            this.relevanceEdit.isAdavence = this.editQuery.isAdavence;
            this.relevanceEdit.pid = this.pId;
            updatetUdiInfos(this.relevanceEdit)
                .then((response) => {
                    this.loading = false;
                    this.getList();
                    this.cancelDialog();
                })
                .catch(() => {
                    this.loading = false;
                    this.cancelDialog();
                });
        },

        selectSysParam() {
            let query = {
                paramKey: "smp_isUploadProuct",
            };

            spcombie().then((response) => {
                if (response.code == 20000) {
                    if (response.data.paramValue == "1") {
                        this.isSpCombine = true;
                    } else {
                        this.isSpCombine = false;
                    }
                }
            });

            selectSysParamByKey(query).then((response) => {
                if (response.code == 20000) {
                    if (response.data.paramValue == "1") {
                        this.isUploadSmp = true;
                    } else {
                        this.isUploadSmp = false;
                    }
                }
            });
            let query1 = {
                paramKey: "upload_pi_file_enabled",
            };
            selectSysParamByKey(query1).then((response) => {
                if (response.code == 20000) {
                    if (response.data.paramValue == "1") {
                        this.isImportFile = true;
                    }
                }
            });
            let query2 = {
                paramKey: "upload_pi_file_url",
            };
            selectSysParamByKey(query2).then((response) => {
                if (response.code == 20000) {
                    this.uploadFileUrl = response.data.paramValue;
                }
            });
        },

        findMethod(query) {
            let cQuery = {
                companyName: query,
                page: 1,
                limit: 10,
            };
            filterCustomers(cQuery)
                .then((response) => {
                    this.loading = false;
                    this.fromOptions = response.data.list || [];
                })
                .catch(() => {
                    this.loading = false;
                    this.options = [];
                });
        },

    },
    mounted() {
    },
    components: {
        selectUdi,
        selectErp,
        selectLocalUdi,
    },
    created() {
        this.getList();
        this.selectSysParam();
        this.getSysFilter();
        this.findMethod();
    },
};
</script>
<style scoped>
.itemTag {
    float: left;
    text-align: left;
    margin-top: 10px;
    width: 25%;
}

.text {
    font-size: 13px;
    font-family: "Microsoft YaHei";
}

.query-form-item {
    display: block !important;
    margin-right: 10px;
    margin-bottom: 5px;
}

.el-row {
    display: flex;
    flex-wrap: wrap;
}

.el-col {
    border-radius: 4px;
    flex-wrap: wrap;
}

.form-title {
    font-size: 16px;
    font-family: Noto Sans SC;
    font-weight: bold;
    color: #303133;
    padding-bottom: 17px;
    padding-top: 17px;
}
</style>
