马宇豪
2024-07-25 7a953239bfd43149c0ffbe66dd24b45eab0f401a
src/views/license/licenseInfo/index.vue
@@ -5,34 +5,19 @@
                <div class="basic_search" style="display:inline-block">
                    <span>区域:</span>
                    <el-select v-model="params.province" clearable filterable @change="changeArea('province')">
                        <el-option
                            v-for="item in provinceList"
                            :key="item.id"
                            :label="item.name"
                            :value="item.name"
                        >
                        <el-option v-for="item in provinceList" :key="item.id" :label="item.name" :value="item.name">
                        </el-option>
                    </el-select>
                </div>
                <div class="basic_search" style="display:inline-block">
                    <el-select v-model="params.city" prop="city" clearable filterable @change="changeArea('city')">
                        <el-option
                            v-for="item in cityList"
                            :key="item.id"
                            :label="item.name"
                            :value="item.name"
                        >
                        <el-option v-for="item in cityList" :key="item.id" :label="item.name" :value="item.name">
                        </el-option>
                    </el-select>
                </div>
                <div class="basic_search" style="display:inline-block">
                    <el-select v-model="params.district" clearable filterable>
                        <el-option
                            v-for="item in districtList"
                            :key="item.id"
                            :label="item.name"
                            :value="item.name"
                        >
                        <el-option v-for="item in districtList" :key="item.id" :label="item.name" :value="item.name">
                        </el-option>
                    </el-select>
                </div>
@@ -41,26 +26,14 @@
            <div style="margin-bottom: 10px">
                <div class="basic_search" style="display:inline-block">
                    <span>创建时间:</span>
                    <el-date-picker
                        value-format="yyyy-MM-dd HH:mm:ss"
                        v-model="validTime1"
                        type="datetimerange"
                        range-separator="-"
                        start-placeholder="开始日期"
                        end-placeholder="结束日期"
                    >
                    <el-date-picker value-format="yyyy-MM-dd HH:mm:ss" v-model="validTime1" type="datetimerange"
                        range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期">
                    </el-date-picker>
                </div>
                <div class="basic_search" style="display:inline-block">
                    <span>发证时间:</span>
                    <el-date-picker
                        value-format="yyyy-MM-dd HH:mm:ss"
                        v-model="validTime2"
                        type="datetimerange"
                        range-separator="-"
                        start-placeholder="开始日期"
                        end-placeholder="结束日期"
                    >
                    <el-date-picker value-format="yyyy-MM-dd HH:mm:ss" v-model="validTime2" type="datetimerange"
                        range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期">
                    </el-date-picker>
                </div>
            </div>
@@ -80,66 +53,44 @@
            <div class="carrier_search">
                <span>审核状态:</span>
                <el-select filterable clearable v-model="params.reviewstatus">
                    <el-option
                        v-for="item in reviewStatusList"
                        :key="item.id"
                        :label="item.name"
                        :value="item.id"
                    />
                    <el-option v-for="item in reviewStatusList" :key="item.id" :label="item.name" :value="item.id" />
                </el-select>
            </div>
            <div style="margin-top: 10px;">
                <span>许可证状态:</span>
                <el-select filterable clearable v-model="params.validstatus">
                    <el-option
                        v-for="item in validStatusList"
                        :key="item.id"
                        :label="item.name"
                        :value="item.id"
                    />
                    <el-option v-for="item in validStatusList" :key="item.id" :label="item.name" :value="item.id" />
                </el-select>
                <span>发证类型:</span>
                <el-select filterable clearable v-model="params.licensecode">
                    <el-option
                        v-for="item in licenseStatusList"
                        :key="item.id"
                        :label="item.name"
                        :value="item.id"
                    />
                    <el-option v-for="item in licenseStatusList" :key="item.id" :label="item.name" :value="item.id" />
                </el-select>
                <el-button  style="margin-left: 10px;" type="primary" v-if="isSupervision!=='null'"  @click="openLicenseForm('新增','')">添加</el-button>
                <el-button  style="margin-left: 10px;" type="primary"  @click="searchData()">查询</el-button>
                <el-button  style="margin-left: 10px;" type="primary"  @click="exportRetail()">零售许可证台账导出</el-button>
                <el-button  style="margin-left: 10px;" type="primary"  @click="exportWholesale()">批发许可证台账导出</el-button>
                <el-button style="margin-left: 10px;" type="primary" v-if="isSupervision!=='null'"
                    @click="openLicenseForm('新增','')">添加</el-button>
                <el-button style="margin-left: 10px;" type="primary" @click="searchData()">查询</el-button>
                <el-button style="margin-left: 10px;" type="primary" @click="exportRetail()">零售许可证台账导出</el-button>
                <el-button style="margin-left: 10px;" type="primary" @click="exportWholesale()">批发许可证台账导出</el-button>
            </div>
        </div>
        <div class="table_content">
            <el-table
                v-loading="listLoading"
                :key="tableKey"
                :data="licenseList"
                border
                fit
                @sort-change="sortChange"
                highlight-current-row
                style="width: 100%;"
            >
                <el-table-column label="序号" type="index" align="center" width="60"/>
                <el-table-column label="行政区划" prop="province" align="center"  sortable="custom">
            <el-table v-loading="listLoading" :key="tableKey" :data="licenseList" border fit @sort-change="sortChange"
                highlight-current-row style="width: 100%;">
                <el-table-column label="序号" type="index" align="center" width="60" />
                <el-table-column label="行政区划" prop="province" align="center" sortable="custom">
                    <template slot-scope="scope">
                        {{scope.row.province}}{{scope.row.city}}{{scope.row.district}}
                    </template>
                </el-table-column>
                <el-table-column label="单位名称" prop="name" align="center"  sortable="custom">
                <el-table-column label="单位名称" prop="name" align="center" sortable="custom">
                </el-table-column>
                <el-table-column label="主要负责人" prop="mainpersonname" align="center"  sortable="custom">
                <el-table-column label="主要负责人" prop="mainpersonname" align="center" sortable="custom">
                </el-table-column>
                <el-table-column label="许可证编号" prop="licensecode" align="center"  sortable="custom">
                <el-table-column label="许可证编号" prop="licensecode" align="center" sortable="custom">
                </el-table-column>
                <el-table-column label="许可证类型" prop="type" align="center"  sortable="custom">
                <el-table-column label="许可证类型" prop="type" align="center" sortable="custom">
                    <template slot-scope="scope">
                        <div v-for="item in typeList">
                            <div v-if="scope.row.type === item.id">
@@ -148,15 +99,15 @@
                        </div>
                    </template>
                </el-table-column>
                <el-table-column label="发证类型" prop="licensestatus" align="center"  sortable="custom">
                <el-table-column label="发证类型" prop="licensestatus" align="center" sortable="custom">
                </el-table-column>
                <el-table-column label="发证日期" prop="issuingdate" align="center"  sortable="custom">
                <el-table-column label="发证日期" prop="issuingdate" align="center" sortable="custom">
                </el-table-column>
                <el-table-column label="到期日期" prop="noeffectdate" align="center"  sortable="custom">
                <el-table-column label="到期日期" prop="noeffectdate" align="center" sortable="custom">
                </el-table-column>
                <el-table-column label="发证机关" prop="issuingunit" align="center"  sortable="custom">
                <el-table-column label="发证机关" prop="issuingunit" align="center" sortable="custom">
                </el-table-column>
                <el-table-column label="审批状态" prop="reviewstatus" align="center"  sortable="custom">
                <el-table-column label="审批状态" prop="reviewstatus" align="center" sortable="custom">
                    <template slot-scope="scope">
                        <div v-for="item in reviewStatusList">
                            <div v-if="scope.row.reviewstatus === item.id">
@@ -165,48 +116,51 @@
                        </div>
                    </template>
                </el-table-column>
                <el-table-column label="许可证状态" prop="validstatus" align="center"  sortable="custom">
                <el-table-column label="许可证状态" prop="validstatus" align="center" sortable="custom">
                    <template slot-scope="scope">
                    <div v-for="item in validStatusList">
                        <div v-if="scope.row.validstatus === item.id">
                            {{item.name}}
                        <div v-for="item in validStatusList">
                            <div v-if="scope.row.validstatus === item.id">
                                {{item.name}}
                            </div>
                        </div>
                    </div>
                </template>
                    </template>
                </el-table-column>
                <el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width">
                    <template slot-scope="scope">
                        <el-button  type="text" @click="commit(scope.row.id)" v-if="isSupervision!=='null' && (scope.row.reviewstatus== 0||scope.row.reviewstatus===3) ?true:false">提交</el-button>
                        <el-button type="text" @click="openLicenseForm('修改',scope.row)" v-if="isSupervision==='null'?false:true">修改</el-button>
                        <el-button type="text" @click="openLicenseForm('审核',scope.row)" v-if="isSupervision ==='null' &&scope.row.reviewstatus !==2&&scope.row.reviewstatus !==3">审核</el-button>
                        <el-button type="text" @click="refuse(scope.row.id)" v-if="isSupervision ==='null'&&scope.row.reviewstatus !==3">驳回</el-button>
                        <el-button  type="text" @click="deleteById(scope.row.id)" v-if="isSupervision==='null'?false:true">删除</el-button>
                        <br><el-button  type="text" v-print="printObj1" @click="giveData(scope.row)"  v-if="isSupervision==='null' && scope.row.reviewstatus === 2?true:false">打印正本(新)</el-button>
                        <el-button  type="text" v-print="printObj2"  @click="giveDetail(scope.row)" v-if="isSupervision==='null' && scope.row.reviewstatus === 2?true:false">打印副本(新)</el-button>
                        <el-button  type="text" v-print="printObj3" @click="giveData(scope.row)"  v-if="isSupervision==='null' && scope.row.reviewstatus === 2?true:false">打印正本(旧)</el-button>
                        <el-button  type="text" v-print="printObj4"  @click="giveDetail(scope.row)" v-if="isSupervision==='null' && scope.row.reviewstatus === 2?true:false">打印副本(旧)</el-button>
                        <el-button type="text" @click="commit(scope.row.id)"
                            v-if="isSupervision!=='null' && (scope.row.reviewstatus== 0||scope.row.reviewstatus===3) ?true:false">提交</el-button>
                        <el-button type="text" @click="openLicenseForm('修改',scope.row)"
                            v-if="isSupervision==='null'?false:true">修改</el-button>
                        <el-button type="text" @click="openLicenseForm('审核',scope.row)"
                            v-if="isSupervision ==='null' &&scope.row.reviewstatus !==2&&scope.row.reviewstatus !==3">审核</el-button>
                        <el-button type="text" @click="refuse(scope.row.id)"
                            v-if="isSupervision ==='null'&&scope.row.reviewstatus !==3">驳回</el-button>
                        <el-button type="text" @click="deleteById(scope.row.id)"
                            v-if="isSupervision==='null'?false:true">删除</el-button>
                        <br><el-button type="text" v-print="printObj1" @click="giveData(scope.row)"
                            v-if="isSupervision==='null' && scope.row.reviewstatus === 2?true:false">打印正本(新)</el-button>
                        <el-button type="text" v-print="printObj2" @click="giveDetail(scope.row)"
                            v-if="isSupervision==='null' && scope.row.reviewstatus === 2?true:false">打印副本(新)</el-button>
                        <el-button type="text" v-print="printObj3" @click="giveData(scope.row)"
                            v-if="isSupervision==='null' && scope.row.reviewstatus === 2?true:false">打印正本(旧)</el-button>
                        <el-button type="text" v-print="printObj4" @click="giveDetail(scope.row)"
                            v-if="isSupervision==='null' && scope.row.reviewstatus === 2?true:false">打印副本(旧)</el-button>
                    </template>
                </el-table-column>
                <el-table-column label="其他操作" v-if="isSupervision === 'null'" align="center" width="180" class-name="small-padding fixed-width">
                <el-table-column label="其他操作" v-if="isSupervision === 'null'" align="center" width="180"
                    class-name="small-padding fixed-width">
                    <template slot-scope="scope">
                        <el-button  type="text" v-if="scope.row.reviewstatus === 2" @click="openDelayLicenseDialog(scope.row)">延期</el-button>
                        <el-button  type="text" v-if="scope.row.reviewstatus === 2" @click="openModLicenseDialog(scope.row)">变更</el-button>
                        <el-button type="text" v-if="scope.row.reviewstatus === 2"
                            @click="openDelayLicenseDialog(scope.row)">延期</el-button>
                        <el-button type="text" v-if="scope.row.reviewstatus === 2"
                            @click="openModLicenseDialog(scope.row)">变更</el-button>
                    </template>
                </el-table-column>
            </el-table>
            <br>
            <el-pagination
                v-show="recordTotal>0"
                :current-page="currentPage"
                :page-sizes="[10, 20, 30, 50]"
                :page-size="pageSize"
                :total="recordTotal"
                layout="total, sizes, prev, pager, next, jumper"
                background
                style="float:right;"
                @size-change="handleSizeChange"
                @current-change="handleCurrentChange"
            />
            <el-pagination v-show="recordTotal>0" :current-page="currentPage" :page-sizes="[10, 20, 30, 50]"
                :page-size="pageSize" :total="recordTotal" layout="total, sizes, prev, pager, next, jumper" background
                style="float:right;" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
            <br>
        </div>
        <div v-show="false">
@@ -219,7 +173,8 @@
                        <span style="display: inline-block;font-size: 20px;">&nbsp;&nbsp;{{code}}</span>
                    </el-col>
                    <el-col :span="6">
                        <div style="width: 40%;height: 40%;margin-left:65px;padding-top: 35px" id="qrcode" ref="qrcode"></div>
                        <div style="width: 40%;height: 40%;margin-left:65px;padding-top: 35px" id="qrcode" ref="qrcode">
                        </div>
                    </el-col>
                </el-row>
                <el-row style="text-align: center;height:35px;font-size: 20px;margin-top:70px">
@@ -231,62 +186,65 @@
                <el-row style="height:75px;margin-left:140px;margin-top:30px;">
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span v-if="type === 2">企业名称</span>
                        <span v-if="type === 3">单位名称</span>
                        <span v-if="type === 3 || type === 4">单位名称</span>
                    </el-col>
                    <el-col :span="11" style="font-size: 27px">
                        <span>{{name}}</span>
                    </el-col>
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span v-if="type === 2">主要负责人</span>
                        <span v-if="type === 3">许可类型</span>
                        <span v-if="type === 3 || type === 4">许可类型</span>
                    </el-col>
                    <el-col :span="5" style="font-size: 27px">
                        <span v-if="type === 2">{{mainpersonname}}</span>
                        <span v-if="type === 3">{{licensetype}}</span>
                        <span v-if="type === 3 || type === 4">{{licensetype}}</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 27px;">
                    <el-col :span="2" style="font-size: 27px;">
                        <span></span>
                    </el-col>
                </el-row >
                </el-row>
                <el-row style="height:75px;margin-left:140px;">
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span v-if="type === 2">注册地址</span>
                        <span v-if="type === 3">主要负责人</span>
                        <span v-if="type === 3  || type === 4">主要负责人</span>
                    </el-col>
                    <el-col :span="11"  style="font-size: 27px">
                        <span v-if="type === 2">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                        <span v-if="type === 3">{{mainpersonname}}</span>
                    <el-col :span="11" style="font-size: 27px">
                        <span
                            v-if="type === 2">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                        <span v-if="type === 3 || type === 4">{{mainpersonname}}</span>
                    </el-col>
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span v-if="type === 2">库区面积</span>
                        <span v-if="type === 3">经营方式</span>
                        <span v-if="type === 3 || type === 4">经营方式</span>
                    </el-col>
                    <el-col :span="5"  style="font-size: 27px">
                    <el-col :span="5" style="font-size: 27px">
                        <span v-if="type === 2">{{area}}㎡</span>
                        <span v-if="type === 3">{{dealingtype}}</span>
                        <span v-if="type === 3 || type === 4">{{dealingtype}}</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 27px;">
                    <el-col :span="2" style="font-size: 27px;">
                        <span></span>
                    </el-col>
                </el-row>
                <el-row style="height:75px;margin-left:140px;">
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span v-if="type === 2">仓储地址</span>
                        <span v-if="type === 3">单位地址</span>
                        <span v-if="type === 3 || type === 4">单位地址</span>
                    </el-col>
                    <el-col :span="11"  style="font-size: 27px">
                        <span v-if="type === 2">{{storageprovince === "新疆维吾尔自治区"? "新疆":storageprovince}}{{storagecity}}{{storagedistrict}}{{storageaddress}}</span>
                        <span v-if="type === 3">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                    <el-col :span="11" style="font-size: 27px">
                        <span
                            v-if="type === 2">{{storageprovince === "新疆维吾尔自治区"? "新疆":storageprovince}}{{storagecity}}{{storagedistrict}}{{storageaddress}}</span>
                        <span
                            v-if="type === 3 || type === 4">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                    </el-col>
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span v-if="type === 2">库房面积</span>
                        <span v-if="type === 3">经营面积</span>
                        <span v-if="type === 3 || type === 4">经营面积</span>
                    </el-col>
                    <el-col :span="5"  style="font-size: 27px">
                    <el-col :span="5" style="font-size: 27px">
                        <span v-if="type === 2">{{storagearea}}㎡</span>
                        <span v-if="type === 3">{{area}}㎡</span>
                        <span v-if="type === 3 || type === 4">{{area}}㎡</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 27px;">
                    <el-col :span="2" style="font-size: 27px;">
                        <span></span>
                    </el-col>
                </el-row>
@@ -294,18 +252,18 @@
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span>许可范围</span>
                    </el-col>
                    <el-col :span="11"  style="font-size: 27px;padding-right: 80px;">
                    <el-col :span="11" style="font-size: 22px;padding-right: 80px;">
                        <span>{{dealingrange}}</span>
                    </el-col>
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span v-if="type === 2">核定药量</span>
                        <span v-if="type === 3">核定储量</span>
                        <span v-if="type === 3 || type === 4">核定储量</span>
                    </el-col>
                    <el-col :span="5"  style="font-size: 27px;">
                    <el-col :span="5" style="font-size: 27px;">
                        <span>{{powder}}kg</span>
                        <span>({{reservebox}}箱)</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 27px;">
                    <el-col :span="2" style="font-size: 27px;">
                        <span></span>
                    </el-col>
                </el-row>
@@ -313,59 +271,62 @@
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span>有效期</span>
                    </el-col>
                    <el-col :span="4"  style="font-size: 27px">
                    <el-col :span="4" style="font-size: 27px">
                        <span>{{effectdate}}</span>
                    </el-col>
                    <el-col :span="1" style="font-size: 27px;font-weight: bold">
                        <span>至</span>
                    </el-col>
                    <el-col :span="5"  style="font-size: 27px">
                    <el-col :span="5" style="font-size: 27px">
                        <span>{{noeffectdate}}</span>
                    </el-col>
                    <el-col :span="11"  style="font-size: 27px">
                    <el-col :span="11" style="font-size: 27px">
                        <span></span>
                    </el-col>
<!--                    <el-col :span="8"  style="font-size: 27px;margin-top:38px;">-->
<!--                        <span>{{issuingunit}}</span>-->
<!--                    </el-col>-->
                    <!--                    <el-col :span="8"  style="font-size: 27px;margin-top:38px;">-->
                    <!--                        <span>{{issuingunit}}</span>-->
                    <!--                    </el-col>-->
                </el-row>
                <el-row style="height:60px;margin-left:140px;">
                    <el-col :span="14"  style="font-size: 1px">
                    <el-col :span="14" style="font-size: 1px">
                        <span>{{"."}}</span>
                    </el-col>
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span>发证机关</span>
                    </el-col>
                    <el-col :span="5"  style="font-size: 27px;">
                    <el-col :span="5" style="font-size: 27px;">
                        <span>{{issuingunit}}</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 27px;">
                    <el-col :span="2" style="font-size: 27px;">
                        <span></span>
                    </el-col>
                </el-row>
                <el-row style="height:60px;margin-left:140px;">
                    <el-col :span="14"  style="font-size: 1px">
                    <el-col :span="14" style="font-size: 1px">
                        <span>{{"."}}</span>
                    </el-col>
                    <el-col :span="3" style="font-size: 27px;font-weight: bold">
                        <span>发证日期</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 27px;">
                    <el-col :span="2" style="font-size: 27px;">
                        <span>{{year}}</span>
                        <span style="font-size: 27px;font-weight: bold">&nbsp;年</span>
                    </el-col>
                    <el-col :span="3"  style="font-size: 27px;">
                    <el-col :span="3" style="font-size: 27px;">
                        <span>{{month}}</span>
                        <span style="font-size: 27px;font-weight: bold">月</span>
                        <span>&nbsp;{{day}}</span>
                        <span style="font-size: 27px;font-weight: bold">日</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 27px;">
                    <el-col :span="2" style="font-size: 27px;">
                        <span></span>
                    </el-col>
                </el-row>
            </div>
        </div>
        <div v-show="false">
            <div id="printMe2">
                <el-row>
@@ -385,7 +346,8 @@
                                <span v-if="type === 3">主要负责人</span>
                            </el-col>
                            <el-col :span="18">
                                <span v-if="type === 2">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                                <span
                                    v-if="type === 2">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                                <span v-if="type === 3">{{mainpersonname}}</span>
                            </el-col>
                        </el-row>
@@ -396,8 +358,10 @@
                                <span v-if="type === 3">单位地址</span>
                            </el-col>
                            <el-col :span="18">
                                <span v-if="type === 2">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{storageaddress}}</span>
                                <span v-if="type === 3">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                                <span
                                    v-if="type === 2">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{storagedistrict}}{{storageaddress}}</span>
                                <span
                                    v-if="type === 3">{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                            </el-col>
                        </el-row>
                        <el-row style="height: 60px;margin-top: 4px">
@@ -444,18 +408,19 @@
                                </el-row>
                            </el-col>
                            <el-col :span="10">
                                <div style="width:20px;height:20px;margin-top: 14px;margin-left: 28px" class="qrcode" id="qrcode2" ref="qrcode"></div>
                                <div style="width:20px;height:20px;margin-top: 14px;margin-left: 28px" class="qrcode"
                                    id="qrcode2" ref="qrcode"></div>
                            </el-col>
                        </el-row>
                        <el-row style="margin-top: 92px;padding-left: 120px">
                            <el-col :span="4" style="font-weight: bold;">
                                <span v-if="type === 2">主要负责人</span>
                                <span v-if="type === 3">许可类型</span>
                                <span v-if="type === 3 || type === 4">许可类型</span>
                            </el-col>
                            <el-col :span="8">
                                <span v-if="type === 2">{{mainpersonname}}</span>
                                <span v-if="type === 3">{{licensetype}}</span>
                                <span v-if="type === 3 || type === 4">{{licensetype}}</span>
                            </el-col>
                        </el-row>
                        <el-row style="margin-top: 48px;margin-left: 120px;">
@@ -501,11 +466,11 @@
                            <el-col :span="4" style="font-weight: bold;">
                                <span>发证日期</span>
                            </el-col>
                            <el-col :span="3" >
                            <el-col :span="3">
                                <span>{{year}}&emsp;</span>
                                <span style="font-weight: bold;">年</span>
                            </el-col>
                            <el-col :span="3" >
                            <el-col :span="3">
                                <span>{{month}}</span>
                                <span style="font-weight: bold;">月</span>
                                <span>&nbsp;{{day}}</span>
@@ -524,7 +489,8 @@
                        <span style="display: inline-block;font-size: 25px;"></span>
                    </el-col>
                    <el-col :span="6">
                        <div style="width: 40%;height: 40%;margin-left:20%;padding-top: 10px" id="qrcode3" ref="qrcode"/>
                        <div style="width: 40%;height: 40%;margin-left:20%;padding-top: 10px" id="qrcode3"
                            ref="qrcode" />
                    </el-col>
                </el-row>
                <el-row style="height:50px;font-size: 20px;margin-top:280px;margin-left:1050px;">
@@ -539,15 +505,15 @@
                    <el-col :span="8" style="font-size: 22px;padding-left: 50px">
                        <span>{{mainpersonname}}</span>
                    </el-col>
                </el-row >
                </el-row>
                <el-row style="height:80px;margin-left:470px;">
                    <el-col :span="13"  style="font-size: 22px;height: 90px;padding-right: 200px;">
                    <el-col :span="13" style="font-size: 22px;height: 90px;padding-right: 200px;">
                        <span>{{province === "新疆维吾尔自治区"? "新疆":province}}{{city}}{{district}}{{address}}</span>
                    </el-col>
                    <!--<el-col :span="8"  style="font-size: 27px">
                        <span>{{area}}㎡</span>
                    </el-col>-->
                    <el-col :span="7"  style="font-size: 22px;padding-left: 50px;padding-top: 10px">
                    <el-col :span="7" style="font-size: 22px;padding-left: 50px;padding-top: 10px">
                        <span>{{economictype}}</span>
                    </el-col>
                </el-row>
@@ -560,12 +526,12 @@
                    </el-col>
                </el-row>-->
                <el-row style="height:100px;margin-left:470px;">
                    <el-col :span="13"  style="font-size: 22px;padding-right: 200px;">
                    <el-col :span="13" style="font-size: 22px;padding-right: 200px;">
                        <span>{{dealingrange}}</span><br>
                        <span>核定药量:{{powder}}kg</span>
                        <span>({{reservebox}}箱)</span>
                    </el-col>
                    <el-col :span="8"  style="font-size: 22px;padding-left: 50px;height: 80px">
                    <el-col :span="8" style="font-size: 22px;padding-left: 50px;height: 80px">
                        <span>{{storageprovince === "新疆维吾尔自治区"? "新疆":storageprovince}}{{storagecity}}{{storagedistrict}}{{storageaddress}}</span><br>
                        <span>库区面积{{area}}㎡</span>;
                        <span>库房面积{{storagearea}}㎡</span>
@@ -575,39 +541,39 @@
                    </el-col>-->
                </el-row>
                <el-row style="height:80px;margin-left:400px;">
                    <el-col :span="10"  style="font-size: 1px">
                    <el-col :span="10" style="font-size: 1px">
                        <span>.</span>
                    </el-col>
                    <el-col :span="7"  style="font-size: 18px;margin-top:24px;padding-left: 180px;">
                    <el-col :span="7" style="font-size: 18px;margin-top:24px;padding-left: 180px;">
                        <span>{{issuingunit}}</span>
                    </el-col>
                </el-row>
                <el-row style="height:75px;margin-left:290px;">
                    <el-col :span="2"  style="font-size: 22px;margin-top: 15px;margin-left:45px">
                    <el-col :span="2" style="font-size: 22px;margin-top: 15px;margin-left:45px">
                        <span>{{year1}}</span>
                    </el-col>
                    <el-col :span="1"  style="font-size: 22px;margin-top: 15px;margin-left:0px">
                    <el-col :span="1" style="font-size: 22px;margin-top: 15px;margin-left:0px">
                        <span>{{month1}}</span>
                    </el-col>
                    <el-col :span="1"  style="font-size: 22px;margin-top: 15px;margin-left:20px">
                    <el-col :span="1" style="font-size: 22px;margin-top: 15px;margin-left:20px">
                        <span>{{day1}}</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 22px;margin-top: 15px;margin-left:40px">
                    <el-col :span="2" style="font-size: 22px;margin-top: 15px;margin-left:40px">
                        <span>{{year2}}</span>
                    </el-col>
                    <el-col :span="1"  style="font-size: 22px;margin-top: 15px;margin-left:7px">
                    <el-col :span="1" style="font-size: 22px;margin-top: 15px;margin-left:7px">
                        <span>{{month2}}</span>
                    </el-col>
                    <el-col :span="1"  style="font-size: 22px;margin-top: 15px;margin-left:20px">
                    <el-col :span="1" style="font-size: 22px;margin-top: 15px;margin-left:20px">
                        <span>{{day2}}</span>
                    </el-col>
                    <el-col :span="2"  style="font-size: 22px;margin-top: 15px;margin-left:210px">
                    <el-col :span="2" style="font-size: 22px;margin-top: 15px;margin-left:210px">
                        <span>{{year}}</span>
                    </el-col>
                    <el-col :span="1"  style="font-size: 22px;margin-top: 15px;margin-left:35px">
                    <el-col :span="1" style="font-size: 22px;margin-top: 15px;margin-left:35px">
                        <span>{{month}}</span>
                    </el-col>
                    <el-col :span="1"  style="font-size: 22px;margin-top: 15px;margin-left:35px">
                    <el-col :span="1" style="font-size: 22px;margin-top: 15px;margin-left:35px">
                        <span>{{day}}</span>
                    </el-col>
                </el-row>
@@ -617,7 +583,7 @@
            <div id="printMe4">
                <el-row>
                    <el-col :span="8" style="margin-top:666px;margin-left: 170px">
                        <el-row >
                        <el-row>
                            <el-col :span="24" style="margin-top: 140px;margin-left: 70px">
                                {{value}}
                            </el-col>
@@ -628,10 +594,10 @@
                                <el-col :span="2" style="margin-top: 17px;">
                                    <span>{{year}}</span>
                                </el-col>
                                <el-col :span="1"  style="margin-top: 17px;margin-left:18px">
                                <el-col :span="1" style="margin-top: 17px;margin-left:18px">
                                    <span>{{month}}</span>
                                </el-col>
                                <el-col :span="1"  style="margin-top: 17px;margin-left:20px">
                                <el-col :span="1" style="margin-top: 17px;margin-left:20px">
                                    <span>{{day}}</span>
                                </el-col>
                            </el-col>
@@ -640,7 +606,7 @@
                    <el-col :span="12" style="margin-top: 386px;">
                        <el-row style="margin-left: 225px">
                            <el-col :span="8">
                                <div style="width:20px;height:20px;" class="qrcode" id="qrcode4" ref="qrcode"/>
                                <div style="width:20px;height:20px;" class="qrcode" id="qrcode4" ref="qrcode" />
                            </el-col>
                        </el-row>
                        <el-row style="margin-top: 58px;margin-left: 75px;padding-top: 20px;">
@@ -678,22 +644,22 @@
                            </el-col>
                        </el-row>
                        <el-row style="margin-top: 89px;margin-left: 8px">
                            <el-col :span="2"  style="font-size: 16px;margin-left:5px">
                            <el-col :span="2" style="font-size: 16px;margin-left:5px">
                                <span>{{year1}}</span>
                            </el-col>
                            <el-col :span="1"  style="font-size: 16px;margin-left:0px">
                            <el-col :span="1" style="font-size: 16px;margin-left:0px">
                                <span>{{month1}}</span>
                            </el-col>
                            <el-col :span="1"  style="font-size: 16px;margin-left:1px">
                            <el-col :span="1" style="font-size: 16px;margin-left:1px">
                                <span>{{day1}}</span>
                            </el-col>
                            <el-col :span="1"  style="font-size: 16px;margin-left:17px">
                            <el-col :span="1" style="font-size: 16px;margin-left:17px">
                                <span>{{year2}}</span>
                            </el-col>
                            <el-col :span="1"  style="font-size: 16px;margin-left:22px">
                            <el-col :span="1" style="font-size: 16px;margin-left:22px">
                                <span>{{month2}}</span>
                            </el-col>
                            <el-col :span="1"  style="font-size: 16px;margin-left:5px">
                            <el-col :span="1" style="font-size: 16px;margin-left:5px">
                                <span>{{day2}}</span>
                            </el-col>
                        </el-row>
@@ -701,18 +667,13 @@
                </el-row>
            </div>
        </div>
        <el-dialog
            :visible.sync="refuseVisible"
            append-to-body
            :close-on-click-modal="false"
            width="30%"
        >
            <el-form ref="refuseForm" :model="refuseForm" label-position="right" label-width="80px" >
        <el-dialog :visible.sync="refuseVisible" append-to-body :close-on-click-modal="false" width="30%">
            <el-form ref="refuseForm" :model="refuseForm" label-position="right" label-width="80px">
                <el-form-item label="驳回理由:" prop="name">
                    <el-input type="textarea" :rows="2" v-model="refuseForm.rejectnote"/>
                    <el-input type="textarea" :rows="2" v-model="refuseForm.rejectnote" />
                </el-form-item>
            </el-form>
            <div  align="right">
            <div align="right">
                <el-button type="primary" @click="submitRefuse()">确认</el-button>
            </div>
        </el-dialog>
@@ -723,656 +684,769 @@
</template>
<script>
    import licenseInfoForm from "./components/licenseInfoForm";
    import {
        computePageCount
    } from '@/utils'
    import {
        getLicenseList,
        getExportLicense,
        reviewLicenseInfo,
        deleteById
    } from "@/api/license";
    import Cookies from "js-cookie";
    import LicenseInfoForm from "./components/licenseInfoForm";
    import {
        deleteCertificate
    } from "../../../api/tranportList";
    import {
        parseError
    } from "../../../utils/messageDialog";
    import {
        getCityListData,
        getProvinceListData,
    } from "@/api/area";
    import QRCode from "qrcodejs2";
    import {
        formatDateDay
    } from "../../../utils";
    import {
        refuseLicense
    } from "../../../api/license";
    import LicenseDelayForm from "./components/licenseDelayForm"
    import LicenseModForm from "./components/licenseModForm"
import licenseInfoForm from "./components/licenseInfoForm";
import { computePageCount } from '@/utils'
import {getLicenseList ,getExportLicense,reviewLicenseInfo ,deleteById} from "@/api/license";
import Cookies from "js-cookie";
import LicenseInfoForm from "./components/licenseInfoForm";
import {deleteCertificate} from "../../../api/tranportList";
import {parseError} from "../../../utils/messageDialog";
import {getCityListData, getProvinceListData , } from "@/api/area";
import QRCode from "qrcodejs2";
import {formatDateDay} from "../../../utils";
import {refuseLicense} from "../../../api/license";
import LicenseDelayForm  from "./components/licenseDelayForm"
import LicenseModForm  from "./components/licenseModForm"
    export default {
        name: "carrier",
        data() {
            return {
export default {
    name: "carrier",
    data(){
        return{
            cityList:[],
            provinceList:[],
            districtList:[],
            streetList:[],
            committeeList:[],
            validTime1:[],
            validTime2:[],
            refuseVisible:false,
            enterprisenumber:'',
            value:'',
            code:'',
            name:'',
            mainpersonname:'11',
            province:'',
            city:'',
            district:'',
            address:'',
            area:'',
            storageaddress:'',
            storagearea:'',
            storageprovince:'',
            storagecity:'',
            storagedistrict:'',
            economictype:'',
            dealingrange:'',
            reservebox:'',
            powder:'',
            effectdate:'',
            noeffectdate:'',
            issuingunit:'',
            year:'',
            month:'',
            day:'',
            year1:'',
            month1:'',
            day1:'',
            year2:'',
            month2:'',
            day2:'',
            type:'',
            licensetype:'',
            dealingtype:'',
            tableKey:0,
            listLoading:false,
            approveVisible:false,
            pageSize: 10,
            recordTotal: 0,
            currentPage: 1,
            pageTotal: 0,
            ruleForm:{},
            isSupervision:'',
            roleType:'',
            params:{
                pageIndex:1,
                pageSize:10,
                sort:'',
                order:"ASC",
                name:'',
                type:'',
                province:'',
                city:'',
                district:'',
                starttime1:'',
                endtime1:'',
                starttime2:'',
                endtime2:'',
                reviewstatus:'',
                validstatus:'',
                licensecode:'',
            },
            dataForm:{
                signperson:'',
                issueperson:'',
                issuepersonphone:'',
                id:'',
            },
            listQuery:{
                filter:{
                    code:"",
                    page:"approve",
                cityList: [],
                provinceList: [],
                districtList: [],
                streetList: [],
                committeeList: [],
                validTime1: [],
                validTime2: [],
                refuseVisible: false,
                enterprisenumber: '',
                value: '',
                code: '',
                name: '',
                mainpersonname: '11',
                province: '',
                city: '',
                district: '',
                address: '',
                area: '',
                storageaddress: '',
                storagearea: '',
                storageprovince: '',
                storagecity: '',
                storagedistrict: '',
                economictype: '',
                dealingrange: '',
                reservebox: '',
                powder: '',
                effectdate: '',
                noeffectdate: '',
                issuingunit: '',
                year: '',
                month: '',
                day: '',
                year1: '',
                month1: '',
                day1: '',
                year2: '',
                month2: '',
                day2: '',
                type: '',
                licensetype: '',
                dealingtype: '',
                tableKey: 0,
                listLoading: false,
                approveVisible: false,
                pageSize: 10,
                recordTotal: 0,
                currentPage: 1,
                pageTotal: 0,
                ruleForm: {},
                isSupervision: '',
                roleType: '',
                params: {
                    pageIndex: 1,
                    pageSize: 10,
                    sort: '',
                    order: "ASC",
                    name: '',
                    type: '',
                    province: '',
                    city: '',
                    district: '',
                    starttime1: '',
                    endtime1: '',
                    starttime2: '',
                    endtime2: '',
                    reviewstatus: '',
                    validstatus: '',
                    licensecode: '',
                },
                pageIndex:1,
                pageSize:100,
            },
            refuseForm:{
                id:'',
                rejectnote:'',
            },
            searchContent:'',
            licenseList:[],
            reviewStatusList:[
                {id:0,name:'等待提交'},
                {id:1,name:'等待审核'},
                {id:2,name:'审核通过'},
                {id:3,name:'审核驳回'},
            ],
          licenseStatusList:[
            {id:'NEW',name:'新发'},
            {id:'POSTP',name:'延期'},
            {id:'MOD',name:'变更'},
          ],
          validStatusList:[
            {id:-1,name:'已注销'},
            {id:1,name:'有效'},
          ],
            typeList:[
                {id:1,name:'烟花爆竹经营(生产)许可证'},
                {id:2,name:'烟花爆竹经营(批发)许可证'},
                {id:3,name:'烟花爆竹经营(长期零售)许可证'},
                {id:4,name:'烟花爆竹经营(短期零售)许可证'}
            ],
            licensetypeList:[
                {id:1,name:'长期'},
                {id:2,name:'临时'}
            ],
              dealingtypeList:[
                {id:1,name:'专柜'},
                {id:2,name:'专店'}
              ],
            printObj1:{
                id:'printMe1',
                extraHead:'<meta  http-equiv="Content-Language" content="zh-cn"/>'
            },
            printObj2:{
                id:'printMe2',
                extraHead:'<meta  http-equiv="Content-Language" content="zh-cn"/>'
            },
            printObj3:{
                id:'printMe3',
                extraHead:'<meta  http-equiv="Content-Language" content="zh-cn"/>'
            },
            printObj4:{
                id:'printMe4',
                extraHead:'<meta  http-equiv="Content-Language" content="zh-cn"/>'
            },
        }
    },
    components:{
        LicenseInfoForm,
        LicenseDelayForm,
        LicenseModForm
    },
    created(){
        this.getProvince()
        this.getLicenseListData()
    },
    methods:{
        giveDetail(val){
            this.code = val.code
            this.name =val.name
            this.mainpersonname = val.mainpersonname
            this.province = val.province
            this.city = val.city
            this.district = val.district
            this.address = val.address
            if (val.type === 2){
                this.area = JSON.parse(val.licenseStorage)[0].area
                this.storagearea = JSON.parse(val.licenseStorage)[0].storagearea
                this.powder =  JSON.parse(val.licenseStorage)[0].powder
            } else if (val.type === 3){
                this.area = val.dealingarea
                this.powder =  val.reservekg
                if (val.licensetype === 2){
                    this.licensetype = '临时零售'
                } else {
                    this.licensetype = '长期零售'
                }
                if (val.dealingtype === 2){
                    this.dealingtype = '专店'
                } else {
                    this.dealingtype = '专柜'
                }
            }
            this.reservebox = val.reservebox
            this.storageaddress =val.storageaddress
            this.storageprovince =val.storageprovince
            this.storagecity =val.storagecity
            this.storagedistrict =val.storagedistrict
            this.dealingrange = val.dealingRangeStr
            this.effectdate = formatDateDay(val.effectdate)
            this.noeffectdate = formatDateDay(val.noeffectdate)
            this.issuingunit = val.issuingunit
            this.value = val.licensecode
            this.type = val.type
            this.enterprisenumber = val.enterprisenumber
            this.year = val.issuingdate.split('-')[0]
            this.month = val.issuingdate.split('-')[1]
            this.day= val.issuingdate.split('-')[2]
            this.year1 = val.effectdate.split('-')[0]
            this.month1 = val.effectdate.split('-')[1]
            this.day1= val.effectdate.split('-')[2]
            this.year2 = val.noeffectdate.split('-')[0]
            this.month2 = val.noeffectdate.split('-')[1]
            this.day2= val.noeffectdate.split('-')[2]
            this.economictype = val.economictype
            this.$nextTick(() => {
                this.qrcode()
            })
        },
        giveData(val){
            this.code = val.code
            this.name =val.name
            this.mainpersonname = val.mainpersonname
            this.province = val.province
            this.city = val.city
            this.district = val.district
            this.address = val.address
            if (val.type === 2){
                this.area = JSON.parse(val.licenseStorage)[0].area
                this.storagearea = JSON.parse(val.licenseStorage)[0].storagearea
                this.powder =  JSON.parse(val.licenseStorage)[0].powder
            } else if (val.type === 3){
                this.area = val.dealingarea
                this.powder =  val.reservekg
                if (val.licensetype === 2){
                    this.licensetype = '临时'
                } else {
                    this.licensetype = '长期'
                }
                if (val.dealingtype === 2){
                    this.dealingtype = '专店'
                } else {
                    this.dealingtype = '专柜'
                }
            }
            this.storageaddress =val.storageaddress
            this.storageprovince =val.storageprovince
            this.storagecity =val.storagecity
            this.storagedistrict =val.storagedistrict
            this.dealingrange = val.dealingRangeStr
            this.reservebox = val.reservebox
            this.effectdate = formatDateDay(val.effectdate)
            this.noeffectdate = formatDateDay(val.noeffectdate)
            this.issuingunit = val.issuingunit
            this.value = val.licensecode
            this.type = val.type
            this.enterprisenumber = val.enterprisenumber
            this.year = val.issuingdate.split('-')[0]
            this.month = val.issuingdate.split('-')[1]
            this.day= val.issuingdate.split('-')[2]
            this.year1 = val.effectdate.split('-')[0]
            this.month1 = val.effectdate.split('-')[1]
            this.day1= val.effectdate.split('-')[2]
            this.year2 = val.noeffectdate.split('-')[0]
            this.month2 = val.noeffectdate.split('-')[1]
            this.day2= val.noeffectdate.split('-')[2]
            this.economictype = val.economictype
            this.$nextTick(() => {
                this.qrcode()
            })
        },
        qrcode(){
            if(this.enterprisenumber != ''){
                document.getElementById("qrcode").innerHTML = ""
                let qrcode = new QRCode('qrcode', {
                    width: 125,
                    height: 125,        // 高度
                    text:  this.enterprisenumber,   // 二维码内容
                    // render: 'canvas' ,   // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
                    background: '#f0f',   // 背景色
                    // foreground: '#ff0'    // 前景色
                })
                document.getElementById("qrcode2").innerHTML = ""
                let qrcode2 = new QRCode('qrcode2', {
                    width: 90,
                    height: 90,        // 高度
                    text:  this.enterprisenumber,   // 二维码内容
                    // render: 'canvas' ,   // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
                    background: '#f0f',   // 背景色
                    // foreground: '#ff0'    // 前景色
                })
                document.getElementById("qrcode3").innerHTML = ""
                let qrcode3 = new QRCode('qrcode3', {
                    width: 125,
                    height: 125,        // 高度
                    text:  this.enterprisenumber,   // 二维码内容
                    // render: 'canvas' ,   // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
                    background: '#f0f',   // 背景色
                    // foreground: '#ff0'    // 前景色
                })
                document.getElementById("qrcode4").innerHTML = ""
                let qrcode4 = new QRCode('qrcode4', {
                    width: 75,
                    height: 75,        // 高度
                    text:  this.enterprisenumber,   // 二维码内容
                    // render: 'canvas' ,   // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
                    background: '#f0f',   // 背景色
                    // foreground: '#ff0'    // 前景色
                })
            }
        },
        async getLicenseListData(){
            this.isSupervision = Cookies.get('isSupervision')
            this.roleType = Cookies.get('roleType')
            this.listLoading = true
            if (this.validTime1 != null && this.validTime1.length > 0){
              this.params.starttime1 = this.validTime1[0]
              this.params.endtime1 = this.validTime1[1]
            }else {
              this.params.starttime1 = ''
              this.params.endtime1 = ''
            }
          if (this.validTime2 != null && this.validTime2.length > 0){
            this.params.starttime2 = this.validTime2[0]
            this.params.endtime2 = this.validTime2[1]
          }else{
            this.params.starttime2 = ''
            this.params.endtime2 = ''
          }
            let res = await getLicenseList(this.params)
            if(res.data.code === "200"){
                this.recordTotal = res.data.result.totalCount
                this.pageSize = res.data.result.pageSize
                this.pageTotal = computePageCount(res.data.result.totalCount, res.data.result.pageSize)
                this.currentPage = res.data.result.current
                this.licenseList = res.data.result.result
            }
            this.listLoading = false
        },
        openLicenseForm(title,value){
            this.$refs.form.showLicenseForm(title,value,this.isSupervision,this.roleType)
        },
        searchData(){
            this.getLicenseListData()
        },
        handleSizeChange: function(val) {
            this.params.pageSize = val
            this.getLicenseListData()
        },
        handleCurrentChange: function(val) {
            this.params.pageIndex = val
            this.getLicenseListData()
        },
        commit(val){
            this.$confirm('提交此条信息,是否继续','提示',{
                confirmButtonText:'确定',
                cancelButtonText:'取消',
                type:'warning',
            }).then(()=> {
                reviewLicenseInfo({id:val,reviewstatus:1}).then( ()=>{
                    this.getLicenseListData()
                    this.$notify({
                        title:'成功',
                        message:'提交成功',
                        type:'success',
                        duration:2000,
                    })
                }).catch(error => {
                    parseError({error: error, vm: this})
                })
            })
        },
        deleteById(val){
            this.$confirm('删除此条信息,是否继续','提示',{
                confirmButtonText:'确定',
                cancelButtonText:'取消',
                type:'warning',
            }).then(()=> {
                deleteById(val).then( response=>{
                    const res = response.data;
                    if (res.code === "200") {
                        this.$message({
                            message: '删除成功',
                            type: 'success'
                        });
                        this.getLicenseListData()
                    } else {
                        parseError({error: res.message, vm: this})
                dataForm: {
                    signperson: '',
                    issueperson: '',
                    issuepersonphone: '',
                    id: '',
                },
                listQuery: {
                    filter: {
                        code: "",
                        page: "approve",
                    },
                    pageIndex: 1,
                    pageSize: 100,
                },
                refuseForm: {
                    id: '',
                    rejectnote: '',
                },
                searchContent: '',
                licenseList: [],
                reviewStatusList: [{
                        id: 0,
                        name: '等待提交'
                    },
                    {
                        id: 1,
                        name: '等待审核'
                    },
                    {
                        id: 2,
                        name: '审核通过'
                    },
                    {
                        id: 3,
                        name: '审核驳回'
                    },
                ],
                licenseStatusList: [{
                        id: 'NEW',
                        name: '新发'
                    },
                    {
                        id: 'POSTP',
                        name: '延期'
                    },
                    {
                        id: 'MOD',
                        name: '变更'
                    },
                ],
                validStatusList: [{
                        id: -1,
                        name: '已注销'
                    },
                    {
                        id: 1,
                        name: '有效'
                    },
                    {
                        id: -2,
                        name: '已过期'
                    }
                }).catch(error => {
                    parseError({error: error, vm: this})
                })
            })
        },
        sortChange(){
        },
      async changeArea(value){
        if(value === 'province'){
          this.params.city = ''
          this.params.district = ''
          this.areaListQuery = {
            type: 2,
            parenttype: 1,
            parentname: this.params.province,
          }
          let res = await getCityListData(this.areaListQuery)
          if(res.data.code === "200"){
            this.cityList = res.data.result
          }
        }else if(value === 'city'){
          this.params.district = ''
          this.areaListQuery = {
            type: 3,
            parenttype: 2,
            parentname: this.params.city,
          }
          let res = await getCityListData(this.areaListQuery)
          if(res.data.code === "200"){
            this.districtList = res.data.result
          }
        }
      },//市、镇、街道、委员会
      async getProvince(){
        let res = await getProvinceListData()
        if(res.data.code === "200"){
          this.provinceList = res.data.result.provinceList
        }
      },//获取省
      async exportRetail(){
         let params = {...this.params}
        params.type = 3
        params.reviewstatus = 2
         getExportLicense(params).then(res=>{
           if(res.data.code === '200'){
             if(res.data.result === null ||res.data.result === [] || res.data.result.length === 0){
               this.$message({
                 type:'warning',
                 message:'无数据可导出'
               })
             }else{
               let allData = res.data.result
               import('@/vendor/Export2Excel').then((excel) => {
                 const tHeader = [
                   '证照编号',
                   '颁发单位',
                   '颁发单位统一社会信用代码',
                   '持有人姓名',
                   '持有人类型',
                   '持有人证件类型',
                   '持有人证件号码',
                   '颁证日期',
                   '有效期(起始)',
                   '有效期(截止)',
                   '有效期起',
                   '单位地址',
                   '发证日期',
                   '统一社会信用代码',
                   '核定储量',
                   '有效期至',
                   '编号',
                   '许可类型',
                   '许可范围',
                   '经营面积',
                   '主要负责人',
                   '发证机关',
                   '单位名称',
                   '经营方式'
                 ]
                 const data = allData.map(item=>{
                   return [
                     item.licensecode,
                     item.issuingunit,
                     item.issuingcode,
                     item.mainpersonname,
                     '自然人',
                     '身份证',
                     item.mainpersonidcardnum,
                     item.issuingdate,
                     item.effectdate,
                     item.noeffectdate,
                     item.effectdate,
                     item.address,
                     item.issuingdate,
                     item.code,
                     item.reservekg,
                     item.noeffectdate,
                     item.licensecode,
                     this.licensetypeList.filter(it=>it.id === item.licensetype).name,
                     item.dealingRangeStr,
                     item.dealingarea,
                     item.mainpersonname,
                     item.issuingunit,
                     item.name,
                     this.dealingtypeList.filter(it=>it.id === item.dealingtype).name
                   ]
                 })
                 excel.export_json_to_excel({
                   header: tHeader,
                   data,
                   filename: '烟花爆竹经营(零售)许可证台账'
                 })
               })
             }
           }else{
             this.$message({
               message:res.data.message,
               type:'warning'
             })
           }
         })
      },
      async exportWholesale(){
        let params = {...this.params}
        params.type = 2
        params.reviewstatus = 2
        getExportLicense(params).then(res=>{
          if(res.data.code === '200'){
            if(res.data.result === null ||res.data.result === [] || res.data.result.length === 0){
              this.$message({
                type:'warning',
                message:'无数据可导出'
              })
            }else{
              let allData = res.data.result
              import('@/vendor/Export2Excel').then((excel) => {
                const tHeader = [
                  '证照编号',
                  '颁发单位',
                  '颁发单位统一社会信用代码',
                  '持有人姓名',
                  '持有人类型',  //自然人
                  '持有人证件类型',
                  '持有人证件号码',
                  '颁证日期',
                  '有效期(起始)',
                  '有效期(截止)',
                  '许可范围',
                  '主要负责人',
                  '仓储地址',
                  '库区面积',
                  '注册地址',
                  '发证日期',
                  '编号',
                  '企业名称',
                  '有效期至',
                  '核定药量',
                  '统一社会信用代码',
                  '有效期起',
                  '库房面积',
                  '发证机关'
                ]
                const data = allData.map(item=>{
                  return [
                    item.licensecode,
                    item.issuingunit,
                    item.issuingcode,
                    item.mainpersonname,
                    '自然人',
                    '身份证',
                    item.mainpersonidcardnum,
                    item.issuingdate,
                    item.effectdate,
                    item.noeffectdate,
                    item.dealingRangeStr,
                    item.mainpersonname,
                    [item.province,item.city,item.district].join("-"),
                    eval(item.licenseStorage).reduce((sum,e)=>sum+Number(e.area || 0),0),
                    item.address,
                    item.issuingdate,
                    item.licensecode,
                    item.name,
                    item.noeffectdate,
                    item.reservekg,
                    item.code,
                    item.effectdate,
                    eval(item.licenseStorage).reduce((sum,e)=>sum+Number(e.storagearea || 0),0),
                    item.issuingunit,
                  ]
                })
                excel.export_json_to_excel({
                  header: tHeader,
                  data,
                  filename: '烟花爆竹经营(批发)许可证台账'
                })
              })
                ],
                typeList: [{
                        id: 1,
                        name: '烟花爆竹经营(生产)许可证'
                    },
                    {
                        id: 2,
                        name: '烟花爆竹经营(批发)许可证'
                    },
                    {
                        id: 3,
                        name: '烟花爆竹经营(长期零售)许可证'
                    },
                    {
                        id: 4,
                        name: '烟花爆竹经营(短期零售)许可证'
                    }
                ],
                licensetypeList: [{
                        id: 1,
                        name: '长期'
                    },
                    {
                        id: 2,
                        name: '临时'
                    }
                ],
                dealingtypeList: [{
                        id: 1,
                        name: '专柜'
                    },
                    {
                        id: 2,
                        name: '专店'
                    }
                ],
                printObj1: {
                    id: 'printMe1',
                    extraHead: '<meta  http-equiv="Content-Language" content="zh-cn"/>'
                },
                printObj2: {
                    id: 'printMe2',
                    extraHead: '<meta  http-equiv="Content-Language" content="zh-cn"/>'
                },
                printObj3: {
                    id: 'printMe3',
                    extraHead: '<meta  http-equiv="Content-Language" content="zh-cn"/>'
                },
                printObj4: {
                    id: 'printMe4',
                    extraHead: '<meta  http-equiv="Content-Language" content="zh-cn"/>'
                },
            }
          }else{
            this.$message({
              message:res.data.message,
              type:'warning'
            })
          }
        })
      },
        refuse(val){
            this.refuseForm.id = val
            this.refuseVisible = true
        },
        submitRefuse(){
            refuseLicense(this.refuseForm).then((res) =>{
                if(res.data.code === '200'){
                    this.getLicenseListData()
                    this.refuseVisible = false
                    this.$notify({
                        title:'成功',
                        duration:2000,
                        message:'驳回成功',
                        type:'success'
                    })
        components: {
            LicenseInfoForm,
            LicenseDelayForm,
            LicenseModForm
        },
        created() {
            this.getProvince()
            this.getLicenseListData()
        },
        methods: {
            giveDetail(val) {
                console.log(val)
                this.code = val.code
                this.name = val.name
                this.mainpersonname = val.mainpersonname
                this.province = val.province
                this.city = val.city
                this.district = val.district
                this.address = val.address
                if (val.type === 2) {
                    this.area = JSON.parse(val.licenseStorage)[0].area
                    this.storagearea = JSON.parse(val.licenseStorage)[0].storagearea
                    this.powder = JSON.parse(val.licenseStorage)[0].powder
                } else if (val.type === 3 || val.type === 4) {
                    this.area = val.dealingarea
                    this.powder = val.reservekg
                    if (val.licensetype === 1) {
                        this.licensetype = '长期零售'
                    } else{
                        this.licensetype = '短期零售'
                    }
                    if (val.dealingtype === 2 || val.dealingtype === 4) {
                        this.dealingtype = '专店'
                    } else {
                        this.dealingtype = '专柜'
                    }
                }
                this.reservebox = val.reservebox
                this.storageaddress = val.storageaddress
                this.storageprovince = val.storageprovince
                this.storagecity = val.storagecity
                this.storagedistrict = val.storagedistrict
                //带出口的特殊情况
                if (val.remark.indexOf("批发出口")!= -1 ){
                    this.dealingrange = val.dealingRangeStr+" (批发出口) ★★★"
                }else{
                    this.$message({
                        type:'warning',
                        message:res.data.message
                    this.dealingrange = val.dealingRangeStr+"  ★★★"
                }
                // 乌鲁木齐局临时自定义许可范围
                // this.dealingrange="烟花类(C级、D级)、爆竹类(C级)、喷花类(C级、D级)、旋转类(C级、D级)、吐珠类(C级)、玩具类(C级、D级)、组合烟花类(C级、D级),储存能力76吨;烟花类储存(A类储存能力2吨、B类储存能力5吨,仅限于储存,储存库为4号库)  ★★★"
                this.effectdate = formatDateDay(val.effectdate)
                this.noeffectdate = formatDateDay(val.noeffectdate)
                this.issuingunit = val.issuingunit
                this.value = val.licensecode
                this.type = val.type
                this.enterprisenumber = val.enterprisenumber
                this.year = val.issuingdate.split('-')[0]
                this.month = val.issuingdate.split('-')[1]
                this.day = val.issuingdate.split('-')[2]
                this.year1 = val.effectdate.split('-')[0]
                this.month1 = val.effectdate.split('-')[1]
                this.day1 = val.effectdate.split('-')[2]
                this.year2 = val.noeffectdate.split('-')[0]
                this.month2 = val.noeffectdate.split('-')[1]
                this.day2 = val.noeffectdate.split('-')[2]
                this.economictype = val.economictype
                this.$nextTick(() => {
                    this.qrcode()
                })
            },
            //打印正本
            giveData(val) {
                console.log(val)
                this.code = val.code
                this.name = val.name
                this.mainpersonname = val.mainpersonname
                this.province = val.province
                this.city = val.city
                this.district = val.district
                this.address = val.address
                if (val.type === 2) {
                    this.area = JSON.parse(val.licenseStorage)[0].area
                    this.storagearea = JSON.parse(val.licenseStorage)[0].storagearea
                    this.powder = JSON.parse(val.licenseStorage)[0].powder
                } else if (val.type === 3 || val.type === 4) {
                    this.area = val.dealingarea
                    this.powder = val.reservekg
                    if (val.licensetype === 1) {
                        this.licensetype = '长期零售'
                    } else{
                        this.licensetype = '短期零售'
                    }
                    if (val.dealingtype === 2 || val.dealingtype === 4) {
                        this.dealingtype = '专店'
                    } else {
                        this.dealingtype = '专柜'
                    }
                }
                this.storageaddress = val.storageaddress
                this.storageprovince = val.storageprovince
                this.storagecity = val.storagecity
                this.storagedistrict = val.storagedistrict
                // 带出口的特殊情况
                if (val.remark.indexOf("批发出口")!= -1 ){
                    this.dealingrange = val.dealingRangeStr+" (批发出口) ★★★"
                }else{
                    this.dealingrange = val.dealingRangeStr+"  ★★★"
                }
                // 乌鲁木齐局临时自定义许可范围
                // this.dealingrange="烟花类(C级、D级)、爆竹类(C级)、喷花类(C级、D级)、旋转类(C级、D级)、吐珠类(C级)、玩具类(C级、D级)、组合烟花类(C级、D级),储存能力76吨;烟花类储存(A类储存能力2吨、B类储存能力5吨,仅限于储存,储存库为4号库)  ★★★"
                this.reservebox = val.reservebox
                this.effectdate = formatDateDay(val.effectdate)
                this.noeffectdate = formatDateDay(val.noeffectdate)
                this.issuingunit = val.issuingunit
                this.value = val.licensecode
                this.type = val.type
                this.enterprisenumber = val.enterprisenumber
                this.year = val.issuingdate.split('-')[0]
                this.month = val.issuingdate.split('-')[1]
                this.day = val.issuingdate.split('-')[2]
                this.year1 = val.effectdate.split('-')[0]
                this.month1 = val.effectdate.split('-')[1]
                this.day1 = val.effectdate.split('-')[2]
                this.year2 = val.noeffectdate.split('-')[0]
                this.month2 = val.noeffectdate.split('-')[1]
                this.day2 = val.noeffectdate.split('-')[2]
                this.economictype = val.economictype
                this.$nextTick(() => {
                    this.qrcode()
                })
            },
            qrcode() {
                if (this.enterprisenumber != '') {
                    document.getElementById("qrcode").innerHTML = ""
                    let qrcode = new QRCode('qrcode', {
                        width: 125,
                        height: 125, // 高度
                        text: this.enterprisenumber, // 二维码内容
                        // render: 'canvas' ,   // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
                        background: '#f0f', // 背景色
                        // foreground: '#ff0'    // 前景色
                    })
                    document.getElementById("qrcode2").innerHTML = ""
                    let qrcode2 = new QRCode('qrcode2', {
                        width: 90,
                        height: 90, // 高度
                        text: this.enterprisenumber, // 二维码内容
                        // render: 'canvas' ,   // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
                        background: '#f0f', // 背景色
                        // foreground: '#ff0'    // 前景色
                    })
                    document.getElementById("qrcode3").innerHTML = ""
                    let qrcode3 = new QRCode('qrcode3', {
                        width: 125,
                        height: 125, // 高度
                        text: this.enterprisenumber, // 二维码内容
                        // render: 'canvas' ,   // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
                        background: '#f0f', // 背景色
                        // foreground: '#ff0'    // 前景色
                    })
                    document.getElementById("qrcode4").innerHTML = ""
                    let qrcode4 = new QRCode('qrcode4', {
                        width: 75,
                        height: 75, // 高度
                        text: this.enterprisenumber, // 二维码内容
                        // render: 'canvas' ,   // 设置渲染方式(有两种方式 table和canvas,默认是canvas)
                        background: '#f0f', // 背景色
                        // foreground: '#ff0'    // 前景色
                    })
                }
            })
        },
      openDelayLicenseDialog(value){
        this.$refs['delay-form'].showLicenseForm('延期',value,this.isSupervision,this.roleType)
      },
      openModLicenseDialog(value){
        this.$refs['mod-form'].showLicenseForm('变更',value,this.isSupervision,this.roleType)
      },
            },
            async getLicenseListData() {
                this.isSupervision = Cookies.get('isSupervision')
                this.roleType = Cookies.get('roleType')
                this.listLoading = true
                if (this.validTime1 != null && this.validTime1.length > 0) {
                    this.params.starttime1 = this.validTime1[0]
                    this.params.endtime1 = this.validTime1[1]
                } else {
                    this.params.starttime1 = ''
                    this.params.endtime1 = ''
                }
                if (this.validTime2 != null && this.validTime2.length > 0) {
                    this.params.starttime2 = this.validTime2[0]
                    this.params.endtime2 = this.validTime2[1]
                } else {
                    this.params.starttime2 = ''
                    this.params.endtime2 = ''
                }
                let res = await getLicenseList(this.params)
                if (res.data.code === "200") {
                    this.recordTotal = res.data.result.totalCount
                    this.pageSize = res.data.result.pageSize
                    this.pageTotal = computePageCount(res.data.result.totalCount, res.data.result.pageSize)
                    this.currentPage = res.data.result.current
                    this.licenseList = res.data.result.result
                }
                this.listLoading = false
            },
            openLicenseForm(title, value) {
                this.$refs.form.showLicenseForm(title, value, this.isSupervision, this.roleType)
            },
            searchData() {
                this.getLicenseListData()
            },
            handleSizeChange: function(val) {
                this.params.pageSize = val
                this.getLicenseListData()
            },
            handleCurrentChange: function(val) {
                this.params.pageIndex = val
                this.getLicenseListData()
            },
            commit(val) {
                this.$confirm('提交此条信息,是否继续', '提示', {
                    confirmButtonText: '确定',
                    cancelButtonText: '取消',
                    type: 'warning',
                }).then(() => {
                    reviewLicenseInfo({
                        id: val,
                        reviewstatus: 1
                    }).then(() => {
                        this.getLicenseListData()
                        this.$notify({
                            title: '成功',
                            message: '提交成功',
                            type: 'success',
                            duration: 2000,
                        })
                    }).catch(error => {
                        parseError({
                            error: error,
                            vm: this
                        })
                    })
                })
            },
            //删除
            deleteById(val) {
                this.$confirm('删除此条信息,是否继续', '提示', {
                    confirmButtonText: '确定',
                    cancelButtonText: '取消',
                    type: 'warning',
                }).then(() => {
                    deleteById(val).then(response => {
                        const res = response.data;
                        if (res.code === "200") {
                            this.$message({
                                message: '删除成功',
                                type: 'success'
                            });
                            this.getLicenseListData()
                        } else {
                            parseError({
                                error: res.message,
                                vm: this
                            })
                        }
                    }).catch(error => {
                        parseError({
                            error: error,
                            vm: this
                        })
                    })
                })
            },
            sortChange() {
            },
            //获取地区
            async changeArea(value) {
                if (value === 'province') {
                    this.params.city = ''
                    this.params.district = ''
                    this.areaListQuery = {
                        type: 2,
                        parenttype: 1,
                        parentname: this.params.province,
                    }
                    let res = await getCityListData(this.areaListQuery)
                    if (res.data.code === "200") {
                        this.cityList = res.data.result
                    }
                } else if (value === 'city') {
                    this.params.district = ''
                    this.areaListQuery = {
                        type: 3,
                        parenttype: 2,
                        parentname: this.params.city,
                    }
                    let res = await getCityListData(this.areaListQuery)
                    if (res.data.code === "200") {
                        this.districtList = res.data.result
                    }
                }
            }, //市、镇、街道、委员会
            async getProvince() {
                let res = await getProvinceListData()
                if (res.data.code === "200") {
                    this.provinceList = res.data.result.provinceList
                }
            },
            //导出excel
            async exportRetail() {
                let params = {
                    ...this.params
                }
                params.type = 3
                params.reviewstatus = 2
                getExportLicense(params).then(res => {
                    if (res.data.code === '200') {
                        if (res.data.result === null || res.data.result === [] || res.data.result.length ===
                            0) {
                            this.$message({
                                type: 'warning',
                                message: '无数据可导出'
                            })
                        } else {
                            let allData = res.data.result
                            import('@/vendor/Export2Excel').then((excel) => {
                                const tHeader = [
                                    '证照编号',
                                    '颁发单位',
                                    '颁发单位统一社会信用代码',
                                    '持有人姓名',
                                    '持有人类型',
                                    '持有人证件类型',
                                    '持有人证件号码',
                                    '颁证日期',
                                    '有效期(起始)',
                                    '有效期(截止)',
                                    '有效期起',
                                    '单位地址',
                                    '发证日期',
                                    '统一社会信用代码',
                                    '核定储量',
                                    '有效期至',
                                    '编号',
                                    '许可类型',
                                    '许可范围',
                                    '经营面积',
                                    '主要负责人',
                                    '发证机关',
                                    '单位名称',
                                    '经营方式'
                                ]
                                const data = allData.map(item => {
                                    return [
                                        item.licensecode,
                                        item.issuingunit,
                                        item.issuingcode,
                                        item.mainpersonname,
                                        '自然人',
                                        '身份证',
                                        item.mainpersonidcardnum,
                                        item.issuingdate,
                                        item.effectdate,
                                        item.noeffectdate,
                                        item.effectdate,
                                        item.address,
                                        item.issuingdate,
                                        item.code,
                                        item.reservekg,
                                        item.noeffectdate,
                                        item.licensecode,
                                        this.licensetypeList.filter(it => it.id === item
                                            .licensetype).name,
                                        item.dealingRangeStr,
                                        item.dealingarea,
                                        item.mainpersonname,
                                        item.issuingunit,
                                        item.name,
                                        this.dealingtypeList.filter(it => it.id === item
                                            .dealingtype).name
                                    ]
                                })
                                excel.export_json_to_excel({
                                    header: tHeader,
                                    data,
                                    filename: '烟花爆竹经营(零售)许可证台账'
                                })
                            })
                        }
                    } else {
                        this.$message({
                            message: res.data.message,
                            type: 'warning'
                        })
                    }
                })
            },
            async exportWholesale() {
                let params = {
                    ...this.params
                }
                params.type = 2
                params.reviewstatus = 2
                getExportLicense(params).then(res => {
                    if (res.data.code === '200') {
                        if (res.data.result === null || res.data.result === [] || res.data.result.length ===
                            0) {
                            this.$message({
                                type: 'warning',
                                message: '无数据可导出'
                            })
                        } else {
                            let allData = res.data.result
                            import('@/vendor/Export2Excel').then((excel) => {
                                const tHeader = [
                                    '证照编号',
                                    '颁发单位',
                                    '颁发单位统一社会信用代码',
                                    '持有人姓名',
                                    '持有人类型', //自然人
                                    '持有人证件类型',
                                    '持有人证件号码',
                                    '颁证日期',
                                    '有效期(起始)',
                                    '有效期(截止)',
                                    '许可范围',
                                    '主要负责人',
                                    '仓储地址',
                                    '库区面积',
                                    '注册地址',
                                    '发证日期',
                                    '编号',
                                    '企业名称',
                                    '有效期至',
                                    '核定药量',
                                    '统一社会信用代码',
                                    '有效期起',
                                    '库房面积',
                                    '发证机关'
                                ]
                                const data = allData.map(item => {
                                    return [
                                        item.licensecode,
                                        item.issuingunit,
                                        item.issuingcode,
                                        item.mainpersonname,
                                        '自然人',
                                        '身份证',
                                        item.mainpersonidcardnum,
                                        item.issuingdate,
                                        item.effectdate,
                                        item.noeffectdate,
                                        item.dealingRangeStr,
                                        item.mainpersonname,
                                        [item.province, item.city, item.district].join(
                                            "-"),
                                        eval(item.licenseStorage).reduce((sum, e) =>
                                            sum + Number(e.area || 0), 0),
                                        item.address,
                                        item.issuingdate,
                                        item.licensecode,
                                        item.name,
                                        item.noeffectdate,
                                        item.reservekg,
                                        item.code,
                                        item.effectdate,
                                        eval(item.licenseStorage).reduce((sum, e) =>
                                            sum + Number(e.storagearea || 0), 0),
                                        item.issuingunit,
                                    ]
                                })
                                excel.export_json_to_excel({
                                    header: tHeader,
                                    data,
                                    filename: '烟花爆竹经营(批发)许可证台账'
                                })
                            })
                        }
                    } else {
                        this.$message({
                            message: res.data.message,
                            type: 'warning'
                        })
                    }
                })
            },
            refuse(val) {
                this.refuseForm.id = val
                this.refuseVisible = true
            },
            submitRefuse() {
                refuseLicense(this.refuseForm).then((res) => {
                    if (res.data.code === '200') {
                        this.getLicenseListData()
                        this.refuseVisible = false
                        this.$notify({
                            title: '成功',
                            duration: 2000,
                            message: '驳回成功',
                            type: 'success'
                        })
                    } else {
                        this.$message({
                            type: 'warning',
                            message: res.data.message
                        })
                    }
                })
            },
            openDelayLicenseDialog(value) {
                this.$refs['delay-form'].showLicenseForm('延期', value, this.isSupervision, this.roleType)
            },
            openModLicenseDialog(value) {
                this.$refs['mod-form'].showLicenseForm('变更', value, this.isSupervision, this.roleType)
            },
        }
    }
}
</script>
<style scoped>
.carrier_search{
    display: inline-block;
}
.carrier_search_input{
    width:200px;
}
    .carrier_search {
        display: inline-block;
    }
    .carrier_search_input {
        width: 200px;
    }
</style>