移动系统liao
2025-02-17 557c2711a3e103ebc3d0492344eca9730d5e92b2
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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
<style>
    .clearfix:after, .clearfix:before { content: ""; display: table; }
    .clearfix:after { clear: both; }
    .clearfix { *zoom: 1; margin-bottom: 5px; }
    .layui-btn-group { vertical-align: text-top; }
</style>
 
<script type="text/html" template lay-done="layui.data.done(d);">
    <div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-CoreCmsStock-createForm" id="LAY-app-CoreCmsStock-createForm">
        <input type="hidden" name="id" value="{{layui.coreHelper.getSN('iin')}}" />
 
        <div class="layui-form-item">
            <label for="type" class="layui-form-label  layui-form-required">操作类型</label>
            <div class="layui-input-block">
                <!--{{# layui.each(d.params.data.stockType, function(index, item){ }}
            <input type="radio" name="type" value="{{ item.value }}" title="{{ item.description }}" lay-verify="required">
            {{# }); }}-->
                <select name="type" lay-verify="required" lay-reqText="请选择操作类型" lay-filter="cityFilter">
                    <option value="">请选择操作类型</option>
                    {{# layui.each(d.params.data.stockType, function(index, item){ }}
                    <option value="{{ item.value }}">{{ item.description }}</option>
                    {{# }); }}
                    <option value="3">经销商铺货</option>
                </select>
            </div>
        </div>
        <div class="layui-form-item">
            <label for="memo" class="layui-form-label  layui-form-required">备注</label>
            <div class="layui-input-block">
                <input name="memo" lay-verType="tips" lay-verify="required|verifymemo" class="layui-input" value="无" placeholder="请输入备注" />
            </div>
        </div>
 
 
        <div class="layui-form-item" id="jingxiaoshang" style="display:none;">
            <label for="distributionId" class="layui-form-label  layui-form-required">经销商</label>
            <div class="layui-input-block">
               
                <select name="distributionId" lay-verify="required" lay-reqText="请选择经销商"  lay-search>
                    {{# layui.each(d.params.data.distributions, function(index, item){ }}
                    <option value="{{ item.id }}">{{ item.name }}</option>
                    {{# }); }}
                </select>
            </div>
        </div>
 
        <div class="layui-form-item">
            <label for="memo" class="layui-form-label  layui-form-required">选择货品</label>
            <div class="layui-input-block" style="padding: 0 0 10px 10px;" id="father">
                <div id="element" class="clearfix myBox" data-id="0">
                    <label class="layui-form-label layui-form-required">选择货品</label>
                    <div class="pro clearfix">
                        <div class="layui-input-inline layui-inline-13">
                            <select name="item.productId[0]" id="productId" lay-verify="required" lay-search>
                                <option value="">根据商品名称、货品编号搜索</option>
                                {{# layui.each(d.params.data.products, function(index, item){ }}
                                <option value="{{ item.id }}">商品名称:{{ item.name }}{{ item.spesDesc ? '-'+item.spesDesc :''}},货品编号:{{ item.sn }},当前库存:{{ item.stock }}</option>
                                {{# }); }}
                            </select>
                        </div>
                        <div class="layui-input-inline layui-inline-2">
                            <input type="number" placeholder="数量" name="item.nums[0]" id="nums" class="layui-input" lay-verify="required|number">
                        </div>
                        <div class="layui-input-inline layui-inline-3">
                            <div class="layui-btn-group">
                                <button type="button" class="layui-btn layui-btn-primary layui-btn-sm add">
                                    <i class="layui-icon">&#xe654;</i>
                                </button>
                                <!--<button type="button" class="layui-btn layui-btn-primary layui-btn-sm del">
                                <i class="layui-icon">&#xe640;</i>
                            </button>-->
                            </div>
                        </div>
                    </div>
                </div>
 
 
            </div>
        </div>
 
 
        <div class="layui-form-item text-right core-hidden">
            <input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-CoreCmsStock-createForm-submit" id="LAY-app-CoreCmsStock-createForm-submit" value="确认添加">
        </div>
    </div>
</script>
 
 
 
<script id="tr_tpl" type="text/html">
    <div id="element" class="clearfix myBox" data-id="{{ d.id }}">
        <label class="layui-form-label layui-form-required">选择货品</label>
        <div class="pro clearfix">
            <div class="layui-input-inline layui-inline-13">
                <select name="item.productId[{{ d.id }}]" id="productId" lay-verify="required" lay-search>
                    <option value="">根据商品名称、货品编号搜索</option>
                    {{# layui.each(paramsData, function(index, item){ }}
                    <option value="{{ item.id }}">商品名称:{{ item.name }}{{ item.spesDesc ? '-'+item.spesDesc :''}},货品编号:{{ item.sn }},当前库存:{{ item.stock }}</option>
                    {{# }); }}
                </select>
            </div>
            <div class="layui-input-inline layui-inline-2">
                <input type="number" placeholder="数量" name="item.nums[{{ d.id }}]" value="1" id="nums" class="layui-input" lay-verify="required|number">
            </div>
            <div class="layui-input-inline layui-inline-3">
                <div class="layui-btn-group">
                    <button type="button" class="layui-btn layui-btn-primary layui-btn-sm add">
                        <i class="layui-icon">&#xe654;</i>
                    </button>
                    <button type="button" class="layui-btn layui-btn-primary layui-btn-sm del">
                        <i class="layui-icon">&#xe640;</i>
                    </button>
                </div>
            </div>
        </div>
    </div>
 
</script>
 
 
 
<script>
    var debug = layui.setter.debug;
    var paramsData;
    layui.data.done = function (d) {
        paramsData = d.params.data.products;
        //开启调试情况下获取接口赋值数据
        if (debug) { console.log(d.params.data); }
        layui.use(['admin', 'form', 'laydate', 'upload', 'coreHelper', 'cropperImg', 'laytpl'],
            function () {
                var $ = layui.$
                    , form = layui.form
                    , admin = layui.admin
                    , laydate = layui.laydate
                    , upload = layui.upload
                    , cropperImg = layui.cropperImg
                    , laytpl = layui.laytpl
                    , coreHelper = layui.coreHelper;
 
 
                $("#father").on('click', '.add', function (e) {
                    var getTpl = tr_tpl.innerHTML;
                    var lastId = $(this).parents("#element").parent().find('.myBox').last().attr('data-id');
                    console.log(lastId);
                    var tmpData = {};
                    tmpData.id = parseInt(lastId) + 1;
                    laytpl(getTpl).render(tmpData, function (html) {
                        $("#father").append(html);
                        form.render();
                    });
                });
 
                $("#father").on('click', '.del', function (e) {
                    if ($(".del").length >= 1) {
                        $(this).parents("#element").remove();
                        resetInputNameID();
                    } else {
                        layer.msg("至少保留1个表单字段");
                    }
                })
 
                //重置排序
                function resetInputNameID() {
                    $.each($("#father .myBox"), function (i, tr) {
                        $(this).attr('data-id', i);
                        $(this).find("#id").attr("name", "item.id[" + i + "]");
                        $(this).find("#nums").attr("name", "item.nums[" + i + "]");
                    });
                    form.render();
                }
 
                // 监听提交事件
                form.on('select(cityFilter)', function (data) {
                    //console.log(data.value); // 被选中的值
                    //console.log(data.elem); // 被选中的元素
                    //console.log(data.field); // 相关表单的字段名
                    // 在这里可以执行其他操作
                    if (data.value == '3') {
                        $('#jingxiaoshang').show();
                    } else {
                        $('#jingxiaoshang').hide();
                    }
                   
                });
 
                form.verify({
 
                    verifyid: [/^.{0,20}$/, '序列最大只允许输入20位字符'],
                    verifymemo: [/^.{0,200}$/, '备注最大只允许输入200位字符'],
                });
                //重载form
                form.render(null, 'LAY-app-CoreCmsStock-createForm');
            })
    };
 
</script>