<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>添加/修改商品</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
    <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
    <link rel="stylesheet" type="text/css" href="../../layuiadmin/style/formSelects-v4.css"/>
    <link rel="stylesheet" type="text/css" href="../../layuiadmin/layui/ueditor/themes/default/css/umeditor.css"/>
    <script type="text/javascript" src="../../layuiadmin/layui/ueditor/third-party/jquery.min.js"></script>
    <script type="text/javascript" charset="utf-8" src="../../layuiadmin/layui/ueditor/umeditor.config.js"></script>
    <script type="text/javascript" charset="utf-8" src="../../layuiadmin/layui/ueditor/umeditor.js"></script>
    <script type="text/javascript" src="../../layuiadmin/layui/ueditor/lang/zh-cn/zh-cn.js"></script>
</head>
<style>


</style>
<body>

<div class="layui-fluid">
    <div class="layui-card">

        <div class="layui-card-body" pad15>
            <form class="layui-form" action="" lay-filter="component-form-element">
                <div class="layui-row layui-col-space10 layui-form-item">
                    <div>
                        <label class="layui-form-label"><font color='red' size="4">*</font>类别：</label>
                        <div class="layui-input-block">
                            <select id="id_category" name="category" lay-verify="required">
                            </select>
                        </div>
                    </div>
                    <div>
                        <label class="layui-form-label"><font color='red' size="4">*</font>名称：</label>
                        <div class="layui-input-block">
                            <input type="text" name="name" lay-verify="required" placeholder="请输入名称" autocomplete="off" class="layui-input">
                        </div>
                    </div>
                    <div>
                        <label class="layui-form-label"><font color='red' size="4">*</font>价格：</label>
                        <div class="layui-input-block">
                            <input type="text" name="price_f" lay-verify="required|numberGtZ" placeholder="请输入价格" autocomplete="off" class="layui-input">
                        </div>
                    </div>
                    <div >
                        <label class="layui-form-label">在用：</label>
                        <div class="layui-input-block">
                            <input type="checkbox" name="enabled" lay-skin="switch" lay-text="是|否" checked="" value="1">
                        </div>
                    </div>
                    <div>
                        <label class="layui-form-label">简介：</label>
                        <div class="layui-input-block">
                            <input type="text" name="describe" placeholder="请输入简介" autocomplete="off" class="layui-input">
                        </div>
                    </div>
                    <div>
                        <label class="layui-form-label">备注：</label>
                        <div class="layui-input-block">
                            <input type="text" name="notes" placeholder="请输入备注" autocomplete="off" class="layui-input">
                        </div>
                    </div>
                    <div>
                        <label class="layui-form-label"><font color='red' size="4">*</font>封面图：</label>
                        <div class="layui-input-block">
                            <button type="button" class="layui-btn-sm" id="test1">上传图片</button><br><br>
                            <img class="layui-upload-img" id="demo1" style="max-height: 250px;max-width: 300px;">
                        </div>
                    </div>
                    <button class="layui-btn" id="id_save" lay-submit lay-filter="component-form-element" style="display: none">保存</button>
                    <button class="layui-btn" type="button" id="upload_image" style="display: none"></button>
                </div>
            </form>
        </div>
    </div>
</div>


<script src="../../layuiadmin/layui/layui.js"></script>
<script type="text/javascript">
    layui.config({
        base: '../../../layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index',
        formSelects: 'formSelects-v4'
    }).use(['index', 'form', 'utils', 'upload'], function(){
        var $ = layui.$
            ,admin = layui.admin
            ,upload = layui.upload
            ,form = layui.form;

        var id = layui.view.getParameterByName('id');

        admin.req({
            url: '/foundation/option/?type=2',
            done: function (res) {
                var categorys = res.data;
                var category_node = $('#id_category');
                for (var i in categorys) {
                    var pid = categorys[i].id;
                    var value = categorys[i].name;
                    category_node.append("<option value='" + pid + "'>" + value + "</option>");
                }
                form.render();
                loadData()
            }
        });

        var loadData = function () {
            if(id){
                var editdata = JSON.parse(JSON.stringify(parent.layui.table.editdata)); // 框架有Bug所以这么转换
                form.val("component-form-element", editdata);
                if(editdata.cover_url){
                    $('#demo1').attr('src', editdata.cover_url);
                }
            }
        };


        form.render(null, 'component-form-element');

        var form_data = {field:{}};
        if (id){
            var url = '/product/' +id + '/update_obj/';
        }else{
            url =  '/product/';
        }
        upload.render({
            elem: '#test1',
            url: url,
            auto: false,
            field: 'image',
            bindAction: '#upload_image',
            choose: function(obj) {
                obj.preview(
                    function(index, file, result) {
                        $('#demo1').attr('src', result);
                    }
                );
            },
            data:{
                category: function() {return form_data.field.category},
                name: function(){return form_data.field.name;},
                price: function(){return form_data.field.price_f;},
                enabled: function(){
                    if (form_data.field.enabled){
                        return form_data.field.enabled;
                    }else{
                        return '0';
                    }
                },
                describe: function(){return form_data.field.describe;},
                notes: function(){return form_data.field.notes;}
            },
            done: function (res) {
                if (res.code !== 0) {
                    layer.msg(res.msg);
                }else {
                    parent.layui.onSubmitChild(res.data);
                }
            },
            error: function () {
                layer.msg('保存失败');
            }
        });

        form.on('submit(component-form-element)', function (data) {
            if (!id && !data.field.image) {
                layer.msg('商品封面图片是必填项',{icon: 5});
                return false;
            }
            if (data.field.image){
                form_data = data;
                $('#upload_image').click();
            } else {
                var save_data = data.field;
                save_data['price'] = data.field.price_f;
                admin.req({
                    url: url
                    ,data: save_data
                    ,type: 'post'
                    ,done: function(res){
                        parent.layui.onSubmitChild(res.data);
                    }
                });
            }
            return false;
        });

        parent.layui.submitChild = function () {
            $("#id_save").click();
        };
    });
</script>
</body>
</html>