prom_order_info.html
16.4 KB
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
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
<include file="public/layout" />
<style>
dd.opt table{
width: 100%;
}
dd.opt tr{
border: 1px solid #f4f4f4;
padding: 8px;
}
dd.opt tr td{
border: 1px solid #f4f4f4;
}
</style>
<script type="text/javascript">
window.UEDITOR_Admin_URL = "__ROOT__/public/plugins/Ueditor/";
var URL_upload = "{$URL_upload}";
var URL_fileUp = "{$URL_fileUp}";
var URL_scrawlUp = "{$URL_scrawlUp}";
var URL_getRemoteImage = "{$URL_getRemoteImage}";
var URL_imageManager = "{$URL_imageManager}";
var URL_imageUp = "{$URL_imageUp}";
var URL_getMovie = "{$URL_getMovie}";
var URL_home = "{$URL_home}";
</script>
<load href="__ROOT__/public/plugins/Ueditor/ueditor.config.js"/>
<load href="__ROOT__/public/plugins/Ueditor/ueditor.all.js"/>
<script src="__PUBLIC__/static/js/layer/laydate/laydate.js"></script>
<style type="text/css">
html, body {
overflow: visible;
}
</style>
<body style="background-color: #FFF; overflow: auto;">
<div id="toolTipLayer" style="position: absolute; z-index: 9999; display: none; visibility: visible; left: 95px; top: 573px;"></div>
<div id="append_parent"></div>
<div id="ajaxwaitid"></div>
<div class="page">
<div class="fixed-bar">
<div class="item-title"><a class="back" href="javascript:history.back();" title="返回列表"><i class="fa fa-arrow-circle-o-left"></i></a>
<div class="subject">
<h3>优惠促销管理 - 编辑商品促销活动</h3>
<h5>系统编辑商品促销活动</h5>
</div>
</div>
</div>
<!-- 操作说明 -->
<div id="explanation" class="explanation" style="color: rgb(44, 188, 163); background-color: rgb(237, 251, 248); width: 99%; height: 100%; min-height: 30px;min-width: 100px;">
<div id="checkZoom" class="title"><i class="fa fa-lightbulb-o"></i>
<h4 title="提示相关设置操作时应注意的要点">操作提示</h4>
<span title="收起提示" id="explanationZoom" style="display: block;"></span>
</div>
<ul>
<li>1、每个商品只能参与一个促销活动,若选择不到要参与商品,请检查是否参与了其他活动
2、销售规则选择线下库存,秒杀活动的商品获取的还是线上库存.</li>
</ul>
</div>
<form class="form-horizontal" id="promotion" action="{:U('Admin/Promotion/prom_order_save')}" method="post">
<input type="hidden" name="id" value="{$info.id}">
<div class="ncap-form-default">
<dl class="row">
<dt class="tit">
<label><em>*</em>促销活动名称</label>
</dt>
<dd class="opt">
<input type="text" name="name" id="name" maxlength="100"
onkeydown="strkeydown(event, this, 'sumbitbtn')"
value="{$info.name}" class="input-txt">
<span class="err cr"></span>
<p class="notic">促销活动名称</p>
</dd>
</dl>
<dl class="row">
<dt class="tit">
<label><em>*</em>促销活动类型</label>
</dt>
<dd class="opt">
<select id="prom_type" name="type" onkeydown="strkeydown(event, this, 'sumbitbtn')">
<option value="0" <if condition="$info[type] eq 0">selected</if>>直接打折</option>
<option value="1" <if condition="$info[type] eq 1">selected</if>>减价优惠</option>
<!--<option value="2" <if condition="$info[type] eq 2">selected</if>>固定金额出售</option>-->
<!--<option value="3" <if condition="$info[type] eq 3">selected</if>>买就赠代金券</option>-->
</select>
<span class="err cr"></span>
<p class="notic">促销活动类型</p>
</dd>
</dl>
<dl class="row">
<dt class="tit">
<label><em>*</em>需要满足的金额</label>
</dt>
<dd class="opt">
<input type="text" name="money" id="money" value="{$info.money}"
onkeydown="strkeydown(event, this, 'sumbitbtn')"
onpaste="this.value=this.value.replace(/[^\d.]/g,'')"
onkeyup="this.value=this.value.replace(/[^\d.]/g,'')" class="input-txt">
<span class="err cr"></span>
<p class="notic">单位:元</p>
</dd>
</dl>
<dl class="row" id="expression_dl">
<dt class="tit">
<label><em>*</em>折扣</label>
</dt>
<dd class="opt">
<input type="text" id="expression" name="expression"
onkeydown="strkeydown(event, this, 'sumbitbtn')"
onkeyup="this.value=this.value.replace(/[^0-9.]/g,'')"
value="{$info.expression}" class="input-txt">
<span class="err cr"></span>
<p class="notic">% 折扣值(1-100 如果打9折,请输入90)</p>
</dd>
</dl>
<dl class="row">
<dt class="tit">
<label><em>*</em>开始时间</label>
</dt>
<dd class="opt">
<input type="text" id="start_time" name="start_time"
onkeydown="strkeydown(event, this, 'sumbitbtn')"
value="{$info.start_time}" class="input-txt">
<span class="err cr"></span>
<p class="notic">优惠开始时间</p>
</dd>
</dl>
<dl class="row">
<dt class="tit">
<label><em>*</em>结束时间</label>
</dt>
<dd class="opt">
<input type="text" id="end_time" name="end_time"
onkeydown="strkeydown(event, this, 'sumbitbtn')"
value="{$info.end_time}" class="input-txt">
<span class="err cr"></span>
<p class="notic">优惠结束时间</p>
</dd>
</dl>
<!--<dl class="row">-->
<!--<dt class="tit">适合用户范围</dt>-->
<!--<dd class="opt">-->
<!--<ul class="nc-row ncap-waybill-list">-->
<!--<foreach name="level" item="vo">-->
<!--<li>-->
<!--<input type="checkbox" -->
<!--onkeydown="strkeydown(event, this, 'sumbitbtn')"-->
<!--<if condition="strripos($info['group'],$vo['level_id'].'') nheq false">checked</if> name="group[]" value="{$vo.level_id}">-->
<!--<label class="label">{$vo.level_name}</label>-->
<!--</li>-->
<!--</foreach>-->
<!--</ul>-->
<!--</dd>-->
<!--</dl>-->
<dl class="row" style="display: none">
<dt class="tit">
<label>活动描述</label>
</dt>
<dd class="opt">
<textarea class="span12 ckeditor" placeholder="请输入活动介绍" id="post_content" name="description" rows="6">{$info.description}</textarea>
<p class="notic">活动描述</p>
</dd>
</dl>
<neq name="info.is_end" value="1">
<div class="bot"><a id="sumbitbtn" onclick="$('#promotion').submit();" class="ncap-btn-big ncap-btn-green">确认提交</a></div>
</neq>
</div>
</form>
</div>
<script type="text/javascript">
var url="{:url('Ueditor/index',array('savepath'=>'prom_order_info'))}";
var editor;
$(function () {
//具体参数配置在 editor_config.js 中
var options = {
zIndex: 999,
initialFrameWidth: "100%", //初化宽度
initialFrameHeight: 350, //初化高度
focus: false, //初始化时,是否让编辑器获得焦点true或false
maximumWords: 99999, removeFormatAttributes: 'class,style,lang,width,height,align,hspace,valign',//允许的最大字符数 'fullscreen',
pasteplain: true, autoHeightEnabled: true,
autotypeset: {
mergeEmptyline: true, //合并空行
removeClass: true, //去掉冗余的class
removeEmptyline: false, //去掉空行
textAlign: "left", //段落的排版方式,可以是 left,right,center,justify 去掉这个属性表示不执行排版
imageBlockLine: 'center', //图片的浮动方式,独占一行剧中,左右浮动,默认: center,left,right,none 去掉这个属性表示不执行排版
pasteFilter: false, //根据规则过滤没事粘贴进来的内容
clearFontSize: false, //去掉所有的内嵌字号,使用编辑器默认的字号
clearFontFamily: false, //去掉所有的内嵌字体,使用编辑器默认的字体
removeEmptyNode: false, //去掉空节点
removeTagNames: {"font": 1},
indent: false, // 行首缩进
indentValue: '0em' //行首缩进的大小
},
toolbars: [
['fullscreen', 'source', '|', 'undo', 'redo','|', 'bold', 'italic', 'underline', 'fontborder',
'strikethrough', 'superscript', 'subscript','removeformat', 'formatmatch', 'autotypeset',
'blockquote', 'pasteplain', '|', 'forecolor','backcolor', 'insertorderedlist',
'insertunorderedlist', 'selectall', 'cleardoc', '|','rowspacingtop', 'rowspacingbottom', 'lineheight', '|',
'customstyle', 'paragraph', 'fontfamily', 'fontsize','|', 'directionalityltr', 'directionalityrtl',
'indent', '|', 'justifyleft', 'justifycenter','justifyright', 'justifyjustify', '|', 'touppercase',
'tolowercase', '|', 'link', 'unlink', 'anchor', '|','imagenone', 'imageleft', 'imageright', 'imagecenter',
'|', 'insertimage', 'emotion', 'insertvideo','attachment', 'map', 'gmap', 'insertframe',
'insertcode', 'webapp', 'pagebreak', 'template','background', '|', 'horizontal', 'date', 'time',
'spechars', 'wordimage', '|','inserttable', 'deletetable','insertparagraphbeforetable', 'insertrow', 'deleterow',
'insertcol', 'deletecol', 'mergecells', 'mergeright','mergedown', 'splittocells', 'splittorows',
'splittocols', '|', 'print', 'preview', 'searchreplace']
]
,serverUrl:url
};
editor = new UE.ui.Editor(options);
editor.render("post_content");
$('#start_time').layDate();
$('#end_time').layDate();
});
// function adsubmit(){
// if($('#name').val() ==''){
// layer.msg('活动名称不能为空');return false;
// }
// if($('input[name=expression]').val() ==''){
// layer.msg('优惠不能为空');return false;
// }
// $('#promotion').submit();
// }
function selectGoods(){
var goods_id = [];
//过滤选择重复商品
$('input[name*="goods_id"]').each(function(i,o){
goods_id.push($(o).val());
});
var url = '/index.php?m=Admin&c=Promotion&a=search_goods&goods_id='+goods_id+'&t='+Math.random();
layer.open({
type: 2,
title: '选择商品',
shadeClose: true,
shade: 0.3,
area: ['96%', '80%'],
content: url,
});
}
$("#prom_type").on("change",function(){
var type = parseInt($("#prom_type").val());
var expression = '';
switch(type){
case 0:{
expression = '<dt class="tit"><label><em>*</em>折扣</label></dt>'
+ '<dd class="opt"><input type="text" name="expression" onkeyup="this.value=this.value.replace(/[^0-9.]/g,'')" value="" class="input-txt">'
+ '<p class="notic">% 折扣值(1-100 如果打9折,请输入90)</p></dd>';
break;
}
case 1:{
expression = '<dt class="tit"><label><em>*</em>优惠金额</label></dt>'
+ '<dd class="opt"><input type="text" name="expression" onkeyup="this.value=this.value.replace(/[^0-9.]/g,'')" value="" class="input-txt">'
+ '<p class="notic">立减金额(元)</p></dd>';
break;
}
case 2:{
expression = '<dt class="tit"><label><em>*</em>积分</label></dt>'
+ '<dd class="opt"><input type="text" name="expression" onkeyup="this.value=this.value.replace(/[^0-9]/g,'')" value="" class="input-txt">'
+ '<p class="notic">订单送积分额度</p></dd>';
break;
}
case 3:{
expression = '<dt class="tit"><label><em>*</em>代金券</label></dt><dd class="opt"><select name="expression">'
+ '<tpshop sql="select * from __PREFIX__coupon where type=0" item="v"><option value="{$v.id}" <if condition="$v[id] eq $info[expression]">selected</if>>{$v.name}</option></tpshop></select>'
+ '</dd>';
break;
}
case 4:{
expression = '';
break;
}
}
$("#expression_dl").html(expression);
});
$(function () {
$("#promotion").validate({
debug: false, //调试模式取消submit的默认提交功能
focusInvalid: false, //当为false时,验证无效时,没有焦点响应
onkeyup: false,
submitHandler: function(form){ //表单提交句柄,为一回调函数,带一个参数:form
layer.msg('加载中...', {icon: 16,shade: [0.5, '#f5f5f5'],scrollbar: false,offset: '10px', time:100000}) ;
if( parseFloat($('input[name=expression]').val())<=0){
layer.closeAll();
layer.msg("优惠必须大于0",{icon:2,time:1000});
$('input[name=expression]').focus();
$('input[name=expression]').parent().find("span").text("优惠必须大于0");
return false;
}
/*---时间---*/
var startdate = new Date($('#start_time').val().replace(/-/g,"/"));
var enddate = new Date($('#end_time').val().replace(/-/g,"/"));
if(enddate <= startdate)
{
layer.closeAll();
$('#end_time').parent().find("span").text("结束时间必须大于开始时间");
layer.msg('结束时间必须大于开始时间',{icon:2,time:1000});return;
}
form.submit(); //提交表单
},
ignore:":button", //不验证的元素
rules:{
name:{
required:true
},
money:{
required:true
},
expression:{
required:true
},
start_time:{
required:true
},
end_time:{
required:true
},
},
messages:{
name:{
required:"请填写名称"
},
money:{
required:"请填写金额"
},
expression:{
required:"请选择选项"
},
start_time:{
required:"请选择时间"
},
end_time:{
required:"请选择时间"
},
}
});
})
$(document).ready(function(){
$("#prom_type").trigger('change');
$('input[name=expression]').val("{$info.expression}");
$('#start_time').layDate();
$('#end_time').layDate();
})
</script>
</body>
</html>