Administrator
2025-08-01 600ea96a245bd5522c489fafc4993cafa0ce36db
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<div class="layui-fluid layui-anim febs-anim" id="product-set" lay-title="产品配置">
    <div class="layui-row febs-container">
        <div class="layui-col-md12">
            <div class="layui-fluid" id="product-type-set">
                <form class="layui-form" action="" lay-filter="product-type-set-form">
                    <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
                        <ul class="layui-tab-title">
                            <li class="layui-this">产品配置</li>
                        </ul>
                        <div class="layui-tab-content">
                            <input type="text" name="chooseId"
                                   placeholder="" autoComplete="off" class="layui-input febs-hide">
                            <div class="layui-tab-item layui-show">
                                <div class="layui-form-item">
                                    <div id="productSetMove"></div>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="layui-form-item febs-hide">
                        <button class="layui-btn" lay-submit="" lay-filter="product-type-set-form-submit" id="submit">保存</button>
                    </div>
                </form>
            </div>
        </div>
    </div>
</div>
 
<script data-th-inline="javascript">
    layui.use(['febs','form', 'transfer'], function () {
        var $ = layui.jquery,
            febs = layui.febs,
            layer = layui.layer,
            form = layui.form,
            transfer = layui.transfer,
            productTypeAll = [[${productAll}]],
            productTypeChoose = [[${productSelected}]],
            chooseId = [[${chooseId}]],
            $view = $('#product-set'),
 
            $productSetMoveQuery = $view.find('#productSetMoveQuery')
        ;
 
        // 查询按钮
        $productSetMoveQuery.on('click', function () {
            console.log(transfer.getData('productSetMove-set'))
 
            let data1 = transfer.getData('productSetMove-set');
            //获取data1中的value,返回一个数组
            let productIdList = data1.map(function(item){
                return item.value;
            });
 
            console.log(productIdList)
        });
 
 
        form.render();
 
        initProductTypeSet();
 
        function initProductTypeSet() {
            console.log("productTypeAll:", productTypeAll); // 调试信息
            console.log("productTypeChoose:", productTypeChoose); // 调试信息
            console.log("chooseId:", chooseId); // 调试信息
            form.val("product-type-set-form", {
                "chooseId": chooseId,
            });
            // 转换数据格式(假设接口返回的数据结构需要处理)
            var dataLeft = productTypeAll.map(function(item){
                return {
                    value: item.id,  // 值字段
                    title: item.name // 显示文本
                }
            });
            var dataRight = productTypeChoose.map(function(item){
                return {
                    value: item,  // 值字段
                }
            });
 
            // 渲染穿梭框
            transfer.render({
                elem: '#productSetMove',
                data: dataLeft,
                id: 'productSetMove-set', // 唯一标识
                title: ['待选择列表', '已选择列表'],
                width: 300,
                height: 400,
                showSearch: true,
                value: productTypeChoose,
            });
        }
 
        form.on('submit(product-type-set-form-submit)', function (data) {
            let data1 = transfer.getData('productSetMove-set');
            //获取data1中的value,返回一个数组
            let productIdList = data1.map(function(item){
                return item.value;
            });
            data.field.chooseIds = productIdList;
            data.field.chooseId = chooseId;
            $.ajax({
                'url':ctx + 'admin/memberRole/productSet',
                'type':'post',
                'dataType':'json',
                'headers' : {'Content-Type' : 'application/json;charset=utf-8'}, //接口json格式
                'traditional': true,//ajax传递数组必须添加属性
                'data':JSON.stringify(data.field),
                'success':function (data) {
                    if(data.code==200){
                        layer.closeAll();
                        febs.alert.success(data.message);
                        $('#febs-type').find('#query').click();
                    }else{
                        febs.alert.warn(data.message);
                    }
                },
                'error':function () {
                    febs.alert.warn('服务器繁忙');
                }
            })
            return false;
        });
 
 
    });
</script>