<template>
    <div>
        <el-form
            :model="queryParams"
            ref="queryForm"
            size="small"
            :inline="true"
            v-show="showSearch"
            label-width="80px"
        >
        </el-form>

        <el-table
            v-loading="loading"
            :data="equipmentList"
            @selection-change="handleSelectionChange"
        >
            <el-table-column
                type="selection"
                width="55"
                align="center"
                :selectable="selectable"
            />
            <el-table-column label="序号" align="center" type="index" />
            <el-table-column
                label="物资名称"
                align="center"
                prop="maTypeName"
                :show-overflow-tooltip="true"
            />
            <el-table-column
                label="规格型号"
                align="center"
                prop="typeName"
                :show-overflow-tooltip="true"
            />
            <el-table-column
                label="单位"
                align="center"
                prop="unitName"
                :show-overflow-tooltip="true"
            >
            </el-table-column>
            <el-table-column
                label="购置单价（元含税）"
                align="center"
                prop="supplier"
                :show-overflow-tooltip="true"
            />
            <el-table-column
                label="购置单价（元不含税）"
                align="center"
                prop="purchaseNum"
                :show-overflow-tooltip="true"
            />
            <el-table-column
                label="是否未固定资产"
                align="center"
                prop="checkNum"
                :show-overflow-tooltip="true"
            />
            <el-table-column
                label="出厂日期"
                align="center"
                prop="productionTime"
                :show-overflow-tooltip="true"
            />
            <el-table-column
                label="相关配套资料"
                align="center"
                prop="checkUrlName"
            >
                <template slot-scope="{ row }">
                    <!-- <div
                        v-for="(item, index) in scope.row.imgUrlList"
                        :key="index"
                        @click="openImg(item)"
                        style="color: #02a7f0; cursor: pointer"
                    >
                        {{ scope.row.imgNameList[index] }}
                    </div> -->

                    <div v-if="row.previewImgLimit === 0">-</div>
                    <div v-else class="accept-img">
                        <a @click.prevent="onPreviewImg(row)">
                            {{ row.previewImgLimit }}
                        </a>
                        <a
                            @click.prevent="onUploadImg(row)"
                            v-if="row.previewImgLimit < 5"
                            class="a-two"
                            >上传验收单</a
                        >
                    </div>
                </template>
            </el-table-column>

            <el-table-column
                label="操作"
                align="center"
                class-name="small-padding fixed-width"
                width="150"
                v-if="!isView"
            >
                <template slot-scope="scope">
                    <el-button
                        size="mini"
                        type="primary"
                        icon="el-icon-edit"
                        v-show="
                            scope.row.checkNum < scope.row.purchaseNum &&
                            (scope.row.status == 0 || scope.row.status == 1)
                        "
                        @click="handleCheck(scope.row)"
                        v-hasPermi="['newPurchase:tools:notice:accept']"
                    >
                        验收
                    </el-button>

                    <!-- <el-button
              size="mini"
              type="text"
              icon="el-icon-edit"
          >编码管理</el-button>-->
                </template>
            </el-table-column>
        </el-table>

        <!-- 验收弹窗 -->
        <el-dialog
            :title="title"
            :visible.sync="open"
            v-if="open"
            width="650px"
            append-to-body
            :close-on-click-modal="false"
        >
            <el-form
                ref="form"
                :model="form"
                :rules="rules"
                label-width="120px"
            >
                <el-form-item label="机具类型名称:" prop="machineTypeName">
                    <el-input
                        v-model="form.machineTypeName"
                        placeholder
                        disabled
                    />
                </el-form-item>
                <el-form-item label="规格型号" prop="specificationType">
                    <el-input
                        v-model="form.specificationType"
                        placeholder
                        disabled
                    />
                </el-form-item>
                <el-form-item label="采购数量" prop="purchaseNum">
                    <el-input v-model="form.purchaseNum" placeholder disabled />
                </el-form-item>
                <el-form-item label="验收结论" prop="checkResult">
                    <el-radio v-model="form.checkResult" label="通过"
                        >通过</el-radio
                    >
                    <!-- <el-radio v-model="form.checkResult" label="不通过">不通过</el-radio> -->
                </el-form-item>
                <el-form-item label="验收通过数量" prop="checkNum">
                    <el-input-number
                        v-model="form.checkNum"
                        style="width: 100%"
                        controls-position="right"
                        :min="1"
                        :max="form.purchaseNum"
                    />
                </el-form-item>
                <el-form-item label="验收图片" prop="fileListNew">
                    <UploadImg
                        :actionUrl="actionUrl"
                        :limit="5"
                        :file-list="form.fileListNew"
                        @remove="onHandleRemoveNew"
                        @success="onHandleSuccessNew"
                    />
                    <!-- <el-upload
                        :http-request="(obj) => imgUpLoad(obj, 'fileUrl')"
                        action="#"
                        :limit="5"
                        :file-list="fileList"
                        :show-file-list="true"
                        list-type="picture-card"
                        accept=".png, .jpg, .jpeg"
                        :class="{ disabled: uploadDisabled }"
                        :on-preview="handlePictureCardPreview"
                        :on-remove="handleRemove"
                        :before-upload="beforeUpload"
                    >
                        <i class="el-icon-plus avatar-uploader-icon"></i>
                        <div class="el-upload__tip" slot="tip"
                            >请上传png、jpg、jpeg类型文件，文件个数不能超过5个，且单个文件不能超过5M</div
                        >
                    </el-upload> -->
                </el-form-item>
            </el-form>
            <div slot="footer" class="dialog-footer" style="text-align: center">
                <el-button type="primary" @click="submitForm">确 定</el-button>
                <el-button @click="cancel">取 消</el-button>
            </div>
        </el-dialog>

        <!-- 批量验收弹窗 -->
        <el-dialog
            :title="title"
            :visible.sync="openAll"
            v-if="openAll"
            width="650px"
            append-to-body
        >
            <el-form
                ref="aform"
                :model="aform"
                :rules="arules"
                label-width="120px"
            >
                <el-form-item label="验收结论" prop="checkResult">
                    <el-radio v-model="aform.checkResult" label="通过"
                        >通过</el-radio
                    >
                    <!-- <el-radio v-model="aform.checkResult" label="不通过">不通过</el-radio> -->
                </el-form-item>
                <el-form-item label="验收图片" prop="fileListNew">
                    <UploadImg
                        :actionUrl="actionUrl"
                        :limit="5"
                        :file-list="aform.fileListNew"
                        @remove="onHandleRemoveNew"
                        @success="onHandleSuccessNew"
                    />

                    <!-- <el-upload
                        :http-request="(obj) => imgUpLoad(obj, 'fileUrl')"
                        action="#"
                        :limit="5"
                        :file-list="fileList1"
                        :show-file-list="true"
                        list-type="picture-card"
                        accept=".png, .jpg, .jpeg"
                        :on-preview="handlePictureCardPreview"
                        :class="{ disabled: uploadDisabled }"
                        :on-remove="handleRemove"
                        :before-upload="beforeUpload"
                    >
                        <i class="el-icon-plus avatar-uploader-icon"></i>
                        <div class="el-upload__tip" slot="tip"
                            >请上传png、jpg、jpeg类型文件，文件个数不能超过5个，且单个文件不能超过5M</div
                        >
                    </el-upload> -->
                </el-form-item>
            </el-form>
            <div slot="footer" class="dialog-footer" style="text-align: center">
                <el-button type="primary" @click="submitListForm"
                    >确 定</el-button
                >
                <el-button @click="openAll = false">取 消</el-button>
            </div>
        </el-dialog>

        <!--    通知弹窗  -->
        <el-dialog
            :title="title"
            :visible.sync="noticeOpen"
            width="900px"
            append-to-body
        >
            <el-form
                ref="nform"
                :model="nform"
                :rules="nrules"
                label-width="100px"
            >
                <el-form-item label="通知内容:" prop="notice">
                    <el-input
                        v-model="nform.notice"
                        type="textarea"
                        maxlength="100"
                        rows="3"
                        show-word-limit
                        placeholder="请输入通知内容"
                        style="width: 13vw"
                    />
                </el-form-item>
            </el-form>

            <el-table
                v-loading="loading"
                :data="noticeUserList"
                height="400"
                @selection-change="handleSelectionNotice"
            >
                <el-table-column type="selection" width="50" align="center" />
                <el-table-column label="序号" align="center" type="index" />
                <el-table-column
                    label="人员账号"
                    align="center"
                    key="userName"
                    prop="userName"
                    :show-overflow-tooltip="true"
                />
                <el-table-column
                    label="人员名称"
                    align="center"
                    key="nickName"
                    prop="nickName"
                    :show-overflow-tooltip="true"
                />
                <el-table-column
                    label="所属机构"
                    align="center"
                    key="deptName"
                    prop="deptName"
                    :show-overflow-tooltip="true"
                />
                <el-table-column
                    label="角色"
                    align="center"
                    key="roleName"
                    prop="roleName"
                    :show-overflow-tooltip="true"
                />
                <el-table-column
                    label="联系电话"
                    align="center"
                    key="telphone"
                    prop="telphone"
                    width="120"
                />
                <el-table-column
                    label="操作"
                    align="center"
                    width="160"
                    class-name="small-padding fixed-width"
                >
                    <template slot-scope="scope">
                        <el-button
                            size="mini"
                            type="text"
                            icon="el-icon-delete"
                            @click="delUser(scope.row)"
                            >删除</el-button
                        >
                    </template>
                </el-table-column>
            </el-table>
            <div slot="footer" class="dialog-footer" style="text-align: center">
                <el-button type="primary" @click="addUserOpen"
                    >人员添加</el-button
                >
                <el-button type="primary" @click="configNotice"
                    >消息通知</el-button
                >
            </div>
        </el-dialog>

        <!--    人员添加  -->
        <el-dialog
            :title="title"
            :visible.sync="peopleOpen"
            v-if="peopleOpen"
            width="1000px"
            append-to-body
        >
            <el-table
                v-loading="loading"
                :data="userList"
                @selection-change="handleSelectionUser"
                height="450"
            >
                <el-table-column type="selection" width="50" align="center" />
                <el-table-column label="序号" align="center" type="index" />
                <el-table-column
                    label="人员账号"
                    align="center"
                    key="userName"
                    prop="userName"
                    :show-overflow-tooltip="true"
                />
                <el-table-column
                    label="人员名称"
                    align="center"
                    key="nickName"
                    prop="nickName"
                    :show-overflow-tooltip="true"
                />
                <el-table-column
                    label="所属机构"
                    align="center"
                    key="deptName"
                    prop="deptName"
                    :show-overflow-tooltip="true"
                />
                <el-table-column
                    label="角色"
                    align="center"
                    key="roleName"
                    prop="roleName"
                    :show-overflow-tooltip="true"
                />
                <el-table-column
                    label="联系电话"
                    align="center"
                    key="telphone"
                    prop="telphone"
                    width="120"
                />
                <!-- <el-table-column
          label="操作"
          align="center"
          width="160"
          class-name="small-padding fixed-width"
        >
          <template slot-scope="scope" v-if="scope.row.userId !== 1">
            <el-button
              size="mini"
              type="text"
              icon="el-icon-plus"
              @click="addUser(scope.row)"
            >添加</el-button>

          </template>
        </el-table-column>-->
            </el-table>

            <div slot="footer" class="dialog-footer" style="text-align: center">
                <el-button type="primary" @click="addUser">添加</el-button>
            </div>
        </el-dialog>

        <el-dialog :visible.sync="dialogVisible">
            <img width="100%" height="650px" :src="dialogImageUrl" alt />
        </el-dialog>

        <!-- 图片查看以及上传等弹框 -->
        <el-dialog
            title="验收图片详情"
            :visible.sync="acceptImgVisible"
            v-if="acceptImgVisible"
            width="40%"
            append-to-body
        >
            <el-table :data="acceptImgList" border>
                <el-table-column
                    prop="img_name"
                    align="center"
                    label="图片名称"
                />
                <el-table-column
                    prop="img_type"
                    align="center"
                    label="图片格式"
                />
                <el-table-column align="center" label="查看">
                    <template slot-scope="{ row }">
                        <ImagePreview
                            :src="`${uploadUrlNew}/dev-api/system${row.img_src}`"
                            :width="`40px`"
                            :height="`40px`"
                        />
                    </template>
                </el-table-column>
            </el-table>
        </el-dialog>

        <!-- 上传弹框 -->
        <el-dialog
            title="验收图片上传"
            :visible.sync="acceptImgUploadVisible"
            v-if="acceptImgUploadVisible"
            width="60%"
            append-to-body
        >
            <el-row>
                <el-col :span="3" class="left-tip"> 请上传验收图片 </el-col>
                <el-col :span="21">
                    <UploadImg
                        :actionUrl="actionUrl"
                        :limit="imgLimit"
                        :file-list="fileListNew"
                        @remove="onHandleRemove"
                        @success="onHandleSuccess"
                    />
                </el-col>
            </el-row>

            <el-row style="text-align: right">
                <el-button size="small" type="primary" @click="onSubmit"
                    >确 定</el-button
                >
                <el-button size="small" @click="onCancel">取 消</el-button>
            </el-row>
        </el-dialog>
    </div>
</template>

<script>
// import {
//     listType,
//     getType,
//     delType,
//     addType,
//     updateType,
//     refreshCache,
// } from '@/api/system/dict/type'
import {
    getPurchaseCheckInfo,
    // bmNoticeInfo,
    // updatePurchaseCheckDetails,
    // getNoticeUserList,
    // getAllNotificationList,
    // addNoticeUser,
    // delNoticeUser,
    // postAcceptImgUploadApi,
} from '@/api/baseGround/newBuy'
// import { imgUpLoad, fileUpLoad } from '@/api/system/upload'
// import UploadImg from './upload-img.vue'

export default {
    name: 'QueryTools',
    dicts: ['sys_normal_disable'],
    components: {
        // UploadImg,
    },
    props: {
        isView: {
            type: Boolean,
            default: () => {
                return false
            },
        },
        queryTaskId: {
            type: [String, Number],
            default: () => {
                return ''
            },
        },
    },
    data() {
        return {
            //任务ID
            taskId: '',
            // 遮罩层
            loading: true,
            // 选中数组
            ids: [],
            // 非单个禁用
            single: true,
            // 非多个禁用
            multiple: true,
            // 显示搜索条件
            showSearch: true,
            // 总条数
            total: 0,
            //人员添加-列表数据
            userList: [],
            //通知人员数组
            noticeUserList: [],
            //选择人员
            chosenUserList: [],
            //确认消息通知人员-勾选的通知人员
            configUserList: [],
            //任务数据
            taskInfo: {},
            // 表格数据
            equipmentList: [],
            // 弹出层标题
            title: '',
            // 是否显示弹出层
            open: false,
            openAll: false,
            // isView: false,
            // 日期范围
            dateRange: [],
            // 查询参数
            queryParams: {
                pageNum: 1,
                pageSize: 10,
                keyWord: undefined,
            },
            //图片上传参数---
            imageUrl: '',
            imageName: '',
            fileList: [],
            checkUrlList: [],
            checkUrlNameList: [],
            fileList1: [],
            checkUrlList1: [],
            checkUrlNameList1: [],
            //上传地址
            // uploadUrl:'http://192.168.0.14:21624/system',//线上服务器地址+system
            // uploadUrl:'http://112.29.103.165:21624/system',//线上服务器地址+system
            uploadUrl: process.env.VUE_APP_BASE_API + '/system', // 上传的图片服务器地址
            dialogImageUrl: '',
            dialogVisible: false,
            //--------------
            // 表单参数
            form: {},
            // 表单校验
            rules: {
                checkResult: [
                    {
                        required: true,
                        message: '验收结论不能为空',
                        trigger: 'blur',
                    },
                ],
                checkNum: [
                    {
                        required: true,
                        message: '验收通过数量不能为空',
                        trigger: 'blur',
                    },
                ],
                checkUrl: [
                    {
                        required: true,
                        message: '验收图片不能为空',
                        trigger: 'blur',
                    },
                ],

                fileListNew: [
                    {
                        required: true,
                        message: '验收图片不能为空',
                        trigger: 'blur',
                    },
                ],
            },
            // 表单参数
            aform: {},
            // 表单校验
            arules: {
                checkResult: [
                    {
                        required: true,
                        message: '验收结论不能为空',
                        trigger: 'blur',
                    },
                ],
                checkUrl: [
                    {
                        required: true,
                        message: '验收图片不能为空',
                        trigger: 'blur',
                    },
                ],
            },
            peopleOpen: false,
            noticeOpen: false,
            nform: {
                notice: '',
            },
            nrules: {
                notice: [
                    {
                        required: true,
                        message: '通知内容不能为空',
                        trigger: 'blur',
                    },
                ],
            },
            deptName: undefined,

            /* 验收图片等数据源 */
            acceptImgVisible: false,
            acceptImgUploadVisible: false,
            fileListNew: [],
            actionUrl: process.env.VUE_APP_BASE_API + '/system/sys/file/upload',
            /* 参数 */
            uploadImgParams: {
                id: '',
                checkUrlName: '',
                checkUrl: '',
            },
            acceptImgList: [],
            checkUrlNew: '',
            checkUrlNameNew: '',
            imgLimit: 1,
            uploadUrlNew: window.location.origin,
        }
    },
    computed: {
        // //图片上传1张后，隐藏上传框
        // uploadDisabled() {
        //     return this.checkUrlList.length > 4
        // },
    },
    mounted() {
        // const taskId = this.$route.query && this.$route.query.taskId
        // this.taskId = taskId
        // console.log(this.taskId)
        // const isView = this.$route.query && this.$route.query.isView
        // if (isView && isView == 'true') {
        //     this.isView = true
        // } else {
        //     this.isView = false
        // }
        this.id = this.queryTaskId

        this.getTaskInfo()
        // this.getAllUserList()
        // this.getNoticeUserList()
    },
    methods: {
        //获取任务详情-列表数据
        getTaskInfo() {
            this.loading = true
            getPurchaseCheckInfo(this.id).then((response) => {
                this.taskInfo = response.data
                this.equipmentList = response.data.purchaseCheckDetailsList
                // this.equipmentList.forEach((item) => {
                //     if (item.checkUrl) {
                //         item.imgUrlList = item.checkUrl.split(',')
                //         item.imgNameList = item.checkUrlName.split(',')
                //         item.previewImgLimit = item.checkUrl.split(',').length
                //     } else {
                //         item.previewImgLimit = 0
                //     }
                // })
                this.loading = false
            })
        },

        // 返回列表页
        jumpList() {
            const obj = { path: '/store/newBuy/newDevicesList' }
            this.$tab.closeOpenPage(obj)
        },
        // 取消按钮
        cancel() {
            this.open = false
            this.reset()
        },
        // 表单重置
        reset() {
            this.form = {
                machineTypeName: undefined,
                specificationType: undefined,
                checkNum: undefined,
                checkResult: '通过',
                inputNum: undefined,
                checkUrl: undefined,
                fileListNew: [],
            }
            this.imageUrl = ''
            this.resetForm('form')
        },

        /** 搜索按钮操作 */
        handleQuery() {
            this.queryParams.pageNum = 1
            this.getTaskInfo()
        },
        /** 重置按钮操作 */
        resetQuery() {
            this.dateRange = []
            this.resetForm('queryForm')
            this.handleQuery()
        },

        //----消息通知
        getNowTime() {
            var today = new Date()
            var year = today.getFullYear() //获取年份
            var month = today.getMonth() + 1 //获取月份
            var day = today.getDate() //获取日期
            return year + '-' + month + '-' + day
            // console.log(year + "-" + month + "-" + day);
        },
        //通知按钮
        handleNotice() {
            this.noticeOpen = true
            this.resetForm('nform')
            this.$set(
                this.nform,
                'notice',
                '各位同事您好，请于' +
                    this.getNowTime() +
                    '进行机具验收。验收单号：' +
                    this.taskInfo.code,
            )
        },
        //查询短信通知人员
        getNoticeUserList() {
            getNoticeUserList().then((response) => {
                this.noticeUserList = response.data
            })
        },
        /** 查询所有用户列表--可添加人员 */
        getAllUserList() {
            getAllNotificationList().then((response) => {
                this.userList = response.data
            })
        },
        addUserOpen() {
            this.getAllUserList()
            this.peopleOpen = true
        },
        // 多选框选中-添加人员
        handleSelectionUser(selection) {
            // console.log(selection)
            this.chosenUserList = selection
        },
        //添加人员
        addUser() {
            if (this.chosenUserList.length < 1) {
                this.$message.error('请选择人员！')
                return
            }
            // console.log(this.chosenUserList,"chosenUserList")
            addNoticeUser(this.chosenUserList).then((response) => {
                if (response.code == 200) {
                    this.getNoticeUserList()
                    this.peopleOpen = false
                }
            })
        },
        delUser(row) {
            delNoticeUser(row.userId).then((response) => {
                if (response.code == 200) {
                    this.getNoticeUserList()
                }
            })
        },
        // 多选框选中-添加消息通知
        handleSelectionNotice(selection) {
            this.configUserList = selection
        },
        //确认消息通知
        configNotice() {
            this.$refs['nform'].validate((valid) => {
                if (valid) {
                    this.configUserList.forEach((item, index) => {
                        item.noticeUser = item.userId
                        item.phone = item.telphone
                    })
                    let param = {
                        message: this.nform.notice,
                        // message: `${this.getNowTime()},${this.taskInfo.code}`,
                        taskId: this.taskInfo.taskId,
                        bmNoticeInfoList: this.configUserList,
                    }
                    if (this.configUserList.length > 0) {
                        bmNoticeInfo(param).then((response) => {
                            console.log(response)
                            if (response.code == 200) {
                                this.$message({
                                    message: '操作成功',
                                    type: 'success',
                                })
                                this.noticeOpen = false
                                this.getTaskInfo()
                            }
                        })
                    } else {
                        this.$message({
                            message: '请选择通知人员！',
                            type: 'error',
                        })
                    }
                }
            })
        },
        // 多选框选中数据
        handleSelectionChange(selection) {
            this.ids = selection.map((item) => item)
            this.single = selection.length != 1
            this.multiple = !selection.length
        },
        /** 验收按钮操作 */
        handleCheck(row) {
            // console.log(row)
            this.$set(this.form, 'code', row.code)
            this.$set(this.form, 'companyId', row.companyId)
            this.$set(this.form, 'createBy', row.createBy)
            this.$set(this.form, 'createTime', row.createTime)
            this.$set(this.form, 'id', row.id)
            this.$set(this.form, 'machineTypeName', row.machineTypeName)
            this.$set(this.form, 'manageType', row.manageType)
            this.$set(this.form, 'specificationType', row.specificationType)
            this.$set(this.form, 'typeName', row.typeName)
            this.$set(this.form, 'machineTypeName', row.machineTypeName)
            this.$set(this.form, 'taskId', row.taskId)
            this.$set(this.form, 'typeId', row.typeId)
            this.$set(this.form, 'checkResult', row.checkResult || '通过')
            // this.$set(this.form,'machineTypeName',row.machineTypeName)
            this.$set(this.form, 'purchaseNum', row.purchaseNum)
            this.$set(this.form, 'checkNum', row.purchaseNum)
            this.$set(this.form, 'checkUrl', '')
            this.$set(this.form, 'checkUrlName', '')
            this.$set(this.form, 'fileListNew', [])
            this.fileList = []
            this.checkUrlList = []
            this.checkUrlNameList = []
            this.open = true
            this.title = '验收'
        },
        /** 批量验收按钮操作 */
        handleListCheck() {
            // console.log(this.ids)
            this.fileList1 = []
            this.checkUrlList1 = []
            this.checkUrlNameList1 = []
            this.aform = {
                checkResult: '通过',
                checkUrl: '',
                checkUrlName: '',
                fileListNew: [],
            }
            this.imageUrl = ''
            this.openAll = true
            this.title = '批量验收'
        },
        /** 提交按钮 */
        submitForm: function () {
            // console.log(this.form)
            // this.form.checkUrl = this.checkUrlList.join(',')
            // this.form.checkUrlName = this.checkUrlNameList.join(',')

            let fileUrl = ''
            let fileName = ''

            this.form.fileListNew.forEach((e) => {
                fileUrl += e.fileUrl + ','
                fileName += e.fileName + ','
            })
            this.form.checkUrl = fileUrl.slice(0, -1)
            this.form.checkUrlName = fileName.slice(0, -1)
            let equipments = [this.form]
            console.log(equipments)
            this.$refs['form'].validate((valid) => {
                if (valid) {
                    updatePurchaseCheckDetails(equipments).then((response) => {
                        if (response.code == 200) {
                            this.$message({
                                message: '操作成功',
                                type: 'success',
                            })
                            this.open = false
                            this.fileList = []
                            this.checkUrlList = []
                            this.checkUrlNameList = []
                            this.getTaskInfo()
                        }
                    })
                }
            })
        },
        submitListForm: function () {
            let fileUrl = ''
            let fileName = ''
            this.aform.fileListNew.map((e) => {
                fileUrl += e.fileUrl + ','
                fileName += e.fileName + ','
            })
            this.aform.checkUrl = fileUrl.substring(fileUrl.length - 1, ',')
            this.aform.checkUrlName = fileName.substring(
                fileName.length - 1,
                ',',
            )
            this.$refs['aform'].validate((valid) => {
                if (valid) {
                    this.ids.forEach((item) => {
                        item.checkNum = item.purchaseNum
                        item.checkResult = this.aform.checkResult
                        item.checkUrl = this.aform.checkUrl
                        item.checkUrlName = this.aform.checkUrlName
                    })

                    let equipments = this.ids
                    updatePurchaseCheckDetails(equipments).then((response) => {
                        if (response.code == 200) {
                            this.$message({
                                message: '验收成功',
                                type: 'success',
                            })
                            this.openAll = false
                            this.open = false
                            this.fileList1 = []
                            this.checkUrlList1 = []
                            this.checkUrlNameList1 = []
                            this.getTaskInfo()
                        }
                    })
                }
            })
        },
        // 图片上传
        imgUpLoad(param, name, index) {
            param.type = 'ma'
            imgUpLoad(param)
                .then((res) => {
                    if (res.code == 200) {
                        // console.log(res.data)
                        if (this.open) {
                            this.checkUrlList.push(res.data.fileUrl)
                            this.checkUrlNameList.push(res.data.fileName)
                        }
                        if (this.openAll) {
                            this.checkUrlList1.push(res.data.fileUrl)
                            this.checkUrlNameList1.push(res.data.fileName)
                            // this.aform.checkUrl = res.data.fileUrl;
                            // this.aform.checkUrlName = res.data.fileName;
                        }
                    } else {
                        // this.$msgError(res.msg)
                        this.$modal.msgError(res.msg)
                    }
                })
                .catch((error) => {
                    // this.$msgError(error)
                    this.$modal.msgError(error)
                })
        },
        handleAvatarSuccess(res, file) {
            // console.log("success")
        },
        handleRemove(file, fileList) {
            if (this.open) {
                let sum = 0
                this.checkUrlNameList.forEach((item, index) => {
                    if (item == file.name) {
                        sum = index
                    }
                })
                this.checkUrlNameList.splice(sum, 1)
                this.checkUrlList.splice(sum, 1)
            }
            if (this.openAll) {
                let sum1 = 0
                this.checkUrlNameList1.forEach((item, index) => {
                    if (item == file.name) {
                        sum1 = index
                    }
                })
                this.checkUrlNameList1.splice(sum1, 1)
                this.checkUrlList1.splice(sum1, 1)
            }
        },
        //图片点击查看
        handlePictureCardPreview(file) {
            // console.log(file)
            this.dialogImageUrl = file.url
            this.dialogVisible = true
        },
        //图片查看
        openImg(url) {
            this.dialogImageUrl = this.uploadUrl + url
            this.dialogVisible = true
        },
        //验收后禁止勾选
        selectable(row, index) {
            if (row.status == 0) {
                return true
            } else {
                return false
            }
        },

        /** 导出按钮操作 */
        handleExport() {
            this.download(
                'system/dict/type/export',
                {
                    ...this.queryParams,
                },
                `type_${new Date().getTime()}.xlsx`,
            )
        },
        /** 刷新缓存按钮操作 */
        handleRefreshCache() {
            refreshCache().then(() => {
                this.$modal.msgSuccess('刷新成功')
                this.$store.dispatch('dict/cleanDict')
            })
        },
        // 图片上传前校验 限制图片大小
        beforeUpload(file) {
            const isLt5M = file.size / 1024 / 1024 < 5
            if (!isLt5M) {
                this.$message.error('上传图片大小不能超过 5MB!')
            }
            return isLt5M
        },

        /* 查看图片详情 */
        onPreviewImg(row) {
            let previewImgList = []
            previewImgList = row.imgUrlList.map((e) => {
                return {
                    img_src: e,
                    img_name: '',
                    img_type: '',
                }
            })
            row.imgNameList.forEach((e, index) => {
                previewImgList[index].img_name = e.split('.')[0]
                previewImgList[index].img_type = e.split('.')[1]
            })
            this.acceptImgList = previewImgList
            this.acceptImgVisible = true
        },
        /* 上传图片 */
        onUploadImg(row) {
            this.imgLimit = 5 - row.previewImgLimit
            this.uploadImgParams.id = row.id
            this.checkUrlNew = row.checkUrl
            this.checkUrlNameNew = row.checkUrlName
            this.acceptImgUploadVisible = true
        },

        /* 移除文件 */
        onHandleRemove(file) {
            if (file.response) {
                this.fileListNew = this.fileListNew.filter(
                    (e) => e.id !== file.response.data.id,
                )
            }
        },
        /* 文件上传成功 */
        onHandleSuccess(res, file) {
            if (res.code === 200) {
                console.log(file.response, '---')
                this.fileListNew.push(file.response.data)
            }
        },
        /* 确定按钮 */
        async onSubmit() {
            if (this.fileListNew.length < 1) {
                this.$message.closeAll()
                this.$message.error('请上传图片！')
                return
            }
            let fileName = ''
            let fileUrl = ''
            this.fileListNew.forEach((e) => {
                fileName += e.fileName + ','
                fileUrl += e.fileUrl + ','
            })
            this.uploadImgParams.checkUrlName = `${
                this.checkUrlNameNew
            },${fileName.slice(0, -1)}`
            this.uploadImgParams.checkUrl = `${
                this.checkUrlNew
            },${fileUrl.slice(0, -1)}`
            const res = await postAcceptImgUploadApi(this.uploadImgParams)
            if (res.code === 200) {
                this.$message.success('上传成功！')
                this.acceptImgUploadVisible = false
                this.fileListNew = []
                this.getTaskInfo()
            }
        },
        /* 取消按钮 */
        onCancel() {
            this.acceptImgUploadVisible = false
            this.fileListNew = []
        },

        onHandleRemoveNew(file) {
            if (this.open && file.response) {
                this.form.fileListNew = this.form.fileListNew.filter(
                    (e) => e.id !== file.response.data.id,
                )
            }
        },
        onHandleSuccessNew(res, file) {
            if (res.code === 200) {
                if (this.openAll) {
                    this.aform.fileListNew.push(file.response.data)
                    this.$refs.aform.clearValidate('fileListNew')
                }
                if (this.open) {
                    this.form.fileListNew.push(file.response.data)
                    this.$refs.form.clearValidate('fileListNew')
                }
            }
        },
    },
}
</script>
<style lang="scss" scoped>
::v-deep.el-table .fixed-width .el-button--mini {
    width: 60px !important;
    margin-bottom: 10px;
}
//隐藏图片上传框的css
::v-deep.disabled {
    .el-upload--picture-card {
        display: none;
    }
}

.accept-img {
    color: #409eff;

    .a-two {
        margin-left: 20px;
    }
}

.left-tip {
    font-size: 16px;
    letter-spacing: 1px;
}
</style>
