{{Autograph()}}
<script>
    layui.use(['table', 'form', 'element', 'layer', 'admin', 'upload', 'laydate'], function () {
        let upload = layui.upload;
        let layer = layui.layer;
        let form = layui.form;
        let laydate = layui.laydate;
        let fileName = '';
        var loadIndex = 0;

        let fileType = '';

        //监听附件上传选择,有值才显示上传按钮
        form.on('select(file_type_selector)', function (data) {
            fileType = data.value;
            if (data.value) {
                $('#disable_upload_button').hide();
                $('#upload_button').show();
            } else {
                $('#disable_upload_button').show();
                $('#upload_button').hide();
            }
        });

        form.on('select(validity_period_selector)', function (data) {
            fileType = data.value;
            let validityPeriodTimeSelector = $(this).parents('.layui-col-md7')
                .find('.validity_period');
            if (data.value === '1') {
                validityPeriodTimeSelector.attr('disabled', true);
                validityPeriodTimeSelector.addClass('layui-disabled');
            } else {
                validityPeriodTimeSelector.attr('disabled', false);
                validityPeriodTimeSelector.removeClass('layui-disabled');
            }
        });

        upload.render({
            elem: '#upload_button',
            url: '{{config('website.UploadUrl')}}', //改成您自己的上传接口
            accept: 'file', //文件
            field: 'upload',
            data: {
                k1: k1,
                k2: k2,
                source: 1,
                cancel_time_verify: 1,
            },
            multiple: true,
            exts: 'jpg|png|bmp|jpeg|zip|pdf',
            size: 20000,
            before: function () {

            },
            choose: function (obj) {
                let files = this.files = obj.pushFile();
                let recentFile = files[Object.keys(files)[Object.keys(files).length - 1]]
                fileName = recentFile.name;
                loadIndex = layer.load(1);
            },
            done: function (res, index, upload) {
                fileName = this.files[index].name;
                if (res.code === 200) {
                    //动态添加js
                    let fileTemplateObj = $('#file_template')

                    fileTemplateObj.find('a').attr('href', res.data[0]);
                    fileTemplateObj.find('a').text(fileName);
                    fileTemplateObj.find('a').attr('value', fileName);

                    fileTemplateObj.find('#file_name').val(fileName);
                    fileTemplateObj.find('#file_url').val(res.data[0]);
                    fileTemplateObj.find('#field_name').val($('#file_type_select').val());
                    fileTemplateObj.find('#validity_period').addClass('layui-input validity_period layui-disabled');

                    let fileTemplate = fileTemplateObj.html();
                    $('#' + fileType + '_div').show();
                    $('#' + fileType + '_file_div').append(fileTemplate);
                    fileTemplateObj.find('#validity_period').removeClass('layui-input validity_period layui-disabled');
                    form.render();
                } else {
                    layer.msg('上传接口异常,请重试或者联系管理员 . ' + res.message);
                }
                lay('.validity_period').each(function () {
                    laydate.render({
                        elem: this,
                        type: 'date',
                        trigger: 'click',
                        range: '~', //或 range: '~' 来自定义分割字符,
                        value: '',
                    });
                });
                delete this.files[index];
                layer.close(loadIndex);
            },
        });

        //删除文件操作
        $(document).on('click', '.delete_file', function () {
            // layer.confirm('确定要删除该文件吗?', function (index) {
            //找出对应的div删除
            $(this).parents('.single_file_div').remove();
            // return false;
            // });
        });

    });
</script>