You've already forked qlg.tsgz.moe
Init Repo
This commit is contained in:
184
hyhproject/admin/view/adgoods/admgrs.js
Executable file
184
hyhproject/admin/view/adgoods/admgrs.js
Executable file
@ -0,0 +1,184 @@
|
||||
var mmg;
|
||||
function initGrid(){
|
||||
var h = WST.pageHeight();
|
||||
var cols = [
|
||||
{title:'图标', name:'' ,width:50, align:'center', renderer: function(val,item,rowIndex){
|
||||
var adGoodsImg = item['adGoodsImg'].split(',');
|
||||
return'<img src="'+WST.conf.IMGURL+'/'+adGoodsImg[0]+'" height="28px" width="100"/>';
|
||||
}},
|
||||
{title:'广告名称', name:'adName' ,width:80},
|
||||
{title:'商品名称', name:'goodsName' ,width:130},
|
||||
{title:'商品种类', name:'adGoodsStatus' ,width:30,renderer: function(val,item,rowIndex){
|
||||
if(item['adGoodsStatus']==1){return "精选"}
|
||||
if(item['adGoodsStatus']==2){return "推荐"}
|
||||
if(item['adGoodsStatus']==3){return "热卖"}
|
||||
}},
|
||||
{title:'广告开始日期', name:'startDate' ,width:50},
|
||||
{title:'广告结束日期', name:'endDate' ,width:50},
|
||||
{title:'操作', name:'' ,width:80, align:'center', renderer: function(val,item,rowIndex){
|
||||
var h = "";
|
||||
if(WST.GRANT.GGGL_02)h += "<a class='btn btn-blue' href='javascript:toEdit("+item['adGoodsId']+")'><i class='fa fa-pencil'></i>修改</a> ";
|
||||
if(WST.GRANT.GGGL_03)h += "<a class='btn btn-red' href='javascript:toDel(" + item['adGoodsId'] + ")'><i class='fa fa-trash-o'></i>删除</a> ";
|
||||
return h;
|
||||
}}
|
||||
];
|
||||
|
||||
mmg = $('.mmg').mmGrid({height: h-155,indexCol: true, cols: cols,method:'POST',
|
||||
url: WST.U('admin/adgoods/pageQuery'), fullWidthRows: true, autoLoad: true,
|
||||
plugins: [
|
||||
$('#pg').mmPaginator({})
|
||||
]
|
||||
});
|
||||
$('#headTip').WSTTips({width:90,height:35,callback:function(v){
|
||||
if(v){
|
||||
mmg.resize({height:h-155});
|
||||
}else{
|
||||
mmg.resize({height:h-128});
|
||||
}
|
||||
}});
|
||||
}
|
||||
function toEdit(id){
|
||||
location.href = WST.U('admin/adgoods/toEdit','id='+id);
|
||||
}
|
||||
function toDel(id){
|
||||
var box = WST.confirm({content:"您确定要删除该记录吗?",yes:function(){
|
||||
var loading = WST.msg('正在提交数据,请稍后...', {icon: 16,time:60000});
|
||||
$.post(WST.U('admin/Adgoods/del'),{id:id},function(data,textStatus){
|
||||
layer.close(loading);
|
||||
var json = WST.toAdminJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg("操作成功",{icon:1});
|
||||
layer.close(box);
|
||||
loadQuery();
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2});
|
||||
}
|
||||
});
|
||||
}});
|
||||
}
|
||||
function loadQuery(){
|
||||
var query = WST.getParams('.query');
|
||||
query.page = 1;
|
||||
mmg.load(query);
|
||||
}
|
||||
var oldSort;
|
||||
function changeSort(t,id){
|
||||
$(t).attr('ondblclick'," ");
|
||||
var html = "<input type='text' id='sort-"+id+"' style='width:30px;padding:2px;' onblur='doneChange(this,"+id+")' value='"+$(t).html()+"' />";
|
||||
$(t).html(html);
|
||||
$('#sort-'+id).focus();
|
||||
$('#sort-'+id).select();
|
||||
oldSort = $(t).html();
|
||||
}
|
||||
function doneChange(t,id){
|
||||
var sort = ($(t).val()=='')?0:$(t).val();
|
||||
if(sort==oldSort){
|
||||
$(t).parent().attr('ondblclick','changeSort(this,'+id+')');
|
||||
$(t).parent().html(parseInt(sort));
|
||||
return;
|
||||
}
|
||||
$.post(WST.U('admin/adgoods/changeSort'),{id:id,adSort:sort},function(data){
|
||||
var json = WST.toAdminJson(data);
|
||||
if(json.status==1){
|
||||
$(t).parent().attr('ondblclick','changeSort(this,'+id+')');
|
||||
$(t).parent().html(parseInt(sort));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
//查询
|
||||
function adsQuery(){
|
||||
var query = WST.getParams('.query');
|
||||
grid.set('url',WST.U('admin/adgoods/pageQuery',query));
|
||||
}
|
||||
|
||||
function editInit(){
|
||||
var laydate = layui.laydate;
|
||||
form = layui.form;
|
||||
laydate.render({
|
||||
elem: '#startDate'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#endDate'
|
||||
});
|
||||
//文件上传
|
||||
WST.upload({
|
||||
pick:'#adFilePicker',
|
||||
formData: {dir:'adspic'},
|
||||
compress:false,//默认不对图片进行压缩
|
||||
accept: {extensions: 'gif,jpg,jpeg,png',mimeTypes: 'image/jpg,image/jpeg,image/png,image/gif'},
|
||||
callback:function(f){
|
||||
var json = WST.toAdminJson(f);
|
||||
if(json.status==1){
|
||||
$('#uploadMsg').empty().hide();
|
||||
var html = '<img src="'+WST.conf.IMGURL+'/'+json.savePath+json.thumb+'" />';
|
||||
$('#preview').html(html);
|
||||
// 图片路径
|
||||
$('#adGoodsImg').val(json.savePath+json.name);
|
||||
}
|
||||
},
|
||||
progress:function(rate){
|
||||
$('#uploadMsg').show().html('已上传'+rate+"%");
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
/* 表单验证 */
|
||||
$('#adsForm').validator({
|
||||
fields: {
|
||||
adGoodsStatus: {
|
||||
rule:"required",
|
||||
msg:{required:"请选择广告商品类型"},
|
||||
tip:"请选择广告商品类型",
|
||||
ok:"验证通过",
|
||||
},
|
||||
adId: {
|
||||
rule:"required;",
|
||||
msg:{required:"广告名称不能为空"},
|
||||
tip:"请输入广告名称",
|
||||
ok:"验证通过",
|
||||
},
|
||||
adGoodsImg: {
|
||||
rule:"required;",
|
||||
msg:{required:"请上传广告图片"},
|
||||
tip:"请上传广告图片",
|
||||
ok:"",
|
||||
},
|
||||
goodsId: {
|
||||
rule:"required;",
|
||||
msg:{required:"请上传广告商品"},
|
||||
tip:"请上传广告商品",
|
||||
ok:"",
|
||||
},
|
||||
startDate: {
|
||||
rule:"required;match(lt, endDate, date)",
|
||||
msg:{required:"请选择广告开始时间",match:"必须小于广告结束时间"},
|
||||
ok:"验证通过",
|
||||
},
|
||||
endDate: {
|
||||
rule:"required;match(gt, startDate, date)",
|
||||
msg:{required:"请选择广告结束时间",match:"必须大于广告开始时间"},
|
||||
ok:"验证通过",
|
||||
}
|
||||
},
|
||||
valid: function(form){
|
||||
var params = WST.getParams('.ipt');
|
||||
var loading = WST.msg('正在提交数据,请稍后...', {icon: 16,time:60000});
|
||||
$.post(WST.U('admin/Adgoods/'+((params.adGoodsId==0)?"add":"edit")),params,function(data,textStatus){
|
||||
layer.close(loading);
|
||||
var json = WST.toAdminJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg("操作成功",{icon:1});
|
||||
location.href=WST.U('Admin/Adgoods/index');
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
//
|
189
hyhproject/admin/view/adgoods/ads.js
Executable file
189
hyhproject/admin/view/adgoods/ads.js
Executable file
@ -0,0 +1,189 @@
|
||||
var grid;
|
||||
function initGrid(){
|
||||
grid = $("#maingrid").ligerGrid({
|
||||
url:WST.U('admin/Ads/pageQuery'),
|
||||
pageSize:WST.pageSize,
|
||||
pageSizeOptions:WST.pageSizeOptions,
|
||||
height:'99%',
|
||||
width:'100%',
|
||||
minColToggle:6,
|
||||
rownumbers:true,
|
||||
columns: [
|
||||
{ display: '标题', name: 'adName', isSort: false},
|
||||
{ display: '广告位置', name: 'adPositionId', isSort: false,render:function(rowdata, rowindex, value){
|
||||
return rowdata['positionName'];
|
||||
}},
|
||||
{ display: '广告网址', name: 'adURL', isSort: false},
|
||||
{ display: '广告开始日期', name: 'adStartDate', isSort: false},
|
||||
{ display: '广告结束日期', name: 'adEndDate', isSort: false},
|
||||
{ display: '图标', name: 'adFile', height: '300', isSort: false,render:function(rowdata, rowindex, value){
|
||||
var adFile = rowdata['adFile'].split(',');
|
||||
return'<img src="'+WST.conf.IMGURL+'/'+adFile[0]+'" height="28px" />';
|
||||
}},
|
||||
{ display: '点击数', name: 'adClickNum', isSort: false},
|
||||
{ display: '排序号', name: 'adSort', isSort: false,render:function(rowdata, rowindex, value){
|
||||
return '<span style="cursor:pointer;" ondblclick="changeSort(this,'+rowdata["adId"]+');">'+value+'</span>';
|
||||
}},
|
||||
{ display: '操作', name: 'op',isSort: false,render: function (rowdata, rowindex, value){
|
||||
var h = "";
|
||||
if(WST.GRANT.GGGL_02)h += "<a href='"+WST.U('admin/Ads/toEdit','id='+rowdata['adId'])+"'>修改</a> ";
|
||||
if(WST.GRANT.GGGL_03)h += "<a href='javascript:toDel(" + rowdata['adId'] + ")'>删除</a> ";
|
||||
return h;
|
||||
}}
|
||||
]
|
||||
});
|
||||
}
|
||||
function toDel(id){
|
||||
var box = WST.confirm({content:"您确定要删除该记录吗?",yes:function(){
|
||||
var loading = WST.msg('正在提交数据,请稍后...', {icon: 16,time:60000});
|
||||
$.post(WST.U('admin/Ads/del'),{id:id},function(data,textStatus){
|
||||
layer.close(loading);
|
||||
var json = WST.toAdminJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg("操作成功",{icon:1});
|
||||
layer.close(box);
|
||||
grid.reload();
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2});
|
||||
}
|
||||
});
|
||||
}});
|
||||
}
|
||||
|
||||
var oldSort;
|
||||
function changeSort(t,id){
|
||||
$(t).attr('ondblclick'," ");
|
||||
var html = "<input type='text' id='sort-"+id+"' style='width:30px;' onblur='doneChange(this,"+id+")' value='"+$(t).html()+"' />";
|
||||
$(t).html(html);
|
||||
$('#sort-'+id).focus();
|
||||
$('#sort-'+id).select();
|
||||
oldSort = $(t).html();
|
||||
}
|
||||
function doneChange(t,id){
|
||||
var sort = ($(t).val()=='')?0:$(t).val();
|
||||
if(sort==oldSort){
|
||||
$(t).parent().attr('ondblclick','changeSort(this,'+id+')');
|
||||
$(t).parent().html(parseInt(sort));
|
||||
return;
|
||||
}
|
||||
$.post(WST.U('admin/ads/changeSort'),{id:id,adSort:sort},function(data){
|
||||
var json = WST.toAdminJson(data);
|
||||
if(json.status==1){
|
||||
$(t).parent().attr('ondblclick','changeSort(this,'+id+')');
|
||||
$(t).parent().html(parseInt(sort));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
//查询
|
||||
function adsQuery(){
|
||||
var query = WST.getParams('.query');
|
||||
grid.set('url',WST.U('admin/ads/pageQuery',query));
|
||||
}
|
||||
|
||||
function editInit(){
|
||||
//文件上传
|
||||
WST.upload({
|
||||
pick:'#adFilePicker',
|
||||
formData: {dir:'adspic'},
|
||||
compress:false,//默认不对图片进行压缩
|
||||
accept: {extensions: 'gif,jpg,jpeg,png',mimeTypes: 'image/jpg,image/jpeg,image/png,image/gif'},
|
||||
callback:function(f){
|
||||
var json = WST.toAdminJson(f);
|
||||
if(json.status==1){
|
||||
$('#uploadMsg').empty().hide();
|
||||
var html = '<img src="'+WST.conf.IMGURL+'/'+json.savePath+json.thumb+'" />';
|
||||
$('#preview').html(html);
|
||||
// 图片路径
|
||||
$('#adFile').val(json.savePath+json.name);
|
||||
}
|
||||
},
|
||||
progress:function(rate){
|
||||
$('#uploadMsg').show().html('已上传'+rate+"%");
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
/* 表单验证 */
|
||||
$('#adsForm').validator({
|
||||
fields: {
|
||||
adPositionId: {
|
||||
rule:"required",
|
||||
msg:{required:"请选择广告位置"},
|
||||
tip:"请选择广告位置",
|
||||
ok:"验证通过",
|
||||
},
|
||||
adName: {
|
||||
rule:"required;",
|
||||
msg:{required:"广告标题不能为空"},
|
||||
tip:"请输入广告标题",
|
||||
ok:"验证通过",
|
||||
},
|
||||
adFile: {
|
||||
rule:"required;",
|
||||
msg:{required:"请上传广告图片"},
|
||||
tip:"请上传广告图片",
|
||||
ok:"",
|
||||
},
|
||||
adStartDate: {
|
||||
rule:"required;match(lt, adEndDate, date)",
|
||||
msg:{required:"请选择广告开始时间",match:"必须小于广告结束时间"},
|
||||
ok:"验证通过",
|
||||
},
|
||||
adEndDate: {
|
||||
rule:"required;match(gt, adStartDate, date)",
|
||||
msg:{required:"请选择广告结束时间",match:"必须大于广告开始时间"},
|
||||
ok:"验证通过",
|
||||
}
|
||||
},
|
||||
valid: function(form){
|
||||
var params = WST.getParams('.ipt');
|
||||
var loading = WST.msg('正在提交数据,请稍后...', {icon: 16,time:60000});
|
||||
$.post(WST.U('admin/Ads/'+((params.adId==0)?"add":"edit")),params,function(data,textStatus){
|
||||
layer.close(loading);
|
||||
var json = WST.toAdminJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg("操作成功",{icon:1});
|
||||
location.href=WST.U('Admin/Ads/index');
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
var positionInfo;
|
||||
/*获取地址*/
|
||||
function addPosition(pType, val, getSize)
|
||||
{
|
||||
$.post(WST.U('admin/Adpositions/getPositon'),{'positionType':pType},function(data,textStatus){
|
||||
positionInfo = data;
|
||||
var html='<option value="">请选择</option>';
|
||||
$(data).each(function(k,v){
|
||||
var selected;
|
||||
if(v.positionId==val){
|
||||
selected = 'selected="selected"';
|
||||
getPhotoSize(v.positionId);
|
||||
}
|
||||
html +='<option '+selected+' value="'+v.positionId+'">'+v.positionName+'</option>';
|
||||
});
|
||||
$('#adPositionId').html(html);
|
||||
})
|
||||
}
|
||||
/*获取图片尺寸 以及设置图片显示方式*/
|
||||
function getPhotoSize(pType)
|
||||
{
|
||||
$(positionInfo).each(function(k,v){
|
||||
if(v.positionId==pType){
|
||||
$('#img_size').html(v.positionWidth+'x'+v.positionHeight);
|
||||
if(v.positionWidth>v.positionHeight){
|
||||
$('.ads-h-list').removeClass('ads-h-list').addClass('ads-w-list');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
}
|
92
hyhproject/admin/view/adgoods/edit.html
Executable file
92
hyhproject/admin/view/adgoods/edit.html
Executable file
@ -0,0 +1,92 @@
|
||||
{extend name="base" /}
|
||||
{block name="css"}
|
||||
<style>
|
||||
#preview img{max-width: 600px;max-height:150px;}
|
||||
</style>
|
||||
<link rel="stylesheet" type="text/css" href="__STATIC__/plugins/webuploader/webuploader.css?v={$v}" />
|
||||
{/block}
|
||||
{block name="js"}
|
||||
<script type='text/javascript' src='__STATIC__/plugins/webuploader/webuploader.js?v={$v}'></script>
|
||||
<script src="__ADMIN__/adgoods/admgrs.js?v={$v}" type="text/javascript"></script>
|
||||
{/block}
|
||||
{block name="main"}
|
||||
<form id="adsForm">
|
||||
<table class='wst-form wst-box-top'>
|
||||
<tr>
|
||||
<th width='150'>广告名称<font color='red'>*</font>:</th>
|
||||
<td>
|
||||
<select id="adId" name="adId" class='ipt' maxLength='20'>
|
||||
<option value=''>请选择</option>
|
||||
{volist name="result" id='vo'}
|
||||
<option {if $data['adName'] == $vo['adName']}selected{/if} value="{$vo['adId']}">{$vo['adName']}</option>
|
||||
{/volist}
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>广告商品类型<font color='red'>*</font>:</th>
|
||||
<td>
|
||||
<select id="adGoodsStatus" name="adGoodsStatus" class='ipt' maxLength='20'>
|
||||
<option value="">-请选择-</option>
|
||||
|
||||
<option {if $data['adGoodsStatus'] == 1}selected{/if} value="1">-精选-</option>
|
||||
<option {if $data['adGoodsStatus'] == 2}selected{/if} value="2">-推荐-</option>
|
||||
<option {if $data['adGoodsStatus'] == 3}selected{/if} value="3">-热卖-</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<tr>
|
||||
<tr>
|
||||
<th>广告商品ID<font color='red'>*</font>:</th>
|
||||
<td><input type='text' id='goodsId' name="goodsId" value="{$data['goodsId']}" class='ipt' maxLength='20'/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>广告图片<font color='red'>*</font>:</th>
|
||||
<td><div id='adFilePicker'>上传广告图</div><span id='uploadMsg'></span>
|
||||
<div>
|
||||
图片大小:<span id="img_size">300x300</span>(px),格式为 gif, jpg, jpeg, png
|
||||
</div>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<th>预览图<font color='red'> </font>:</th>
|
||||
<td>
|
||||
<div id="preview" style="min-height:30px;">
|
||||
{if ($data['adGoodsImg']!='')}
|
||||
<img src="__IMGURL__/{$data['adGoodsImg']}">
|
||||
{/if}
|
||||
</div>
|
||||
<input type="hidden" name="adGoodsImg" id="adGoodsImg" class="ipt" value="{$data['adGoodsImg']}" />
|
||||
</td>
|
||||
</tr>
|
||||
<th >广告开始时间<font color='red'>*</font>:</th>
|
||||
<td>
|
||||
<input type="text" style="margin:0px;vertical-align:baseline;" id="startDate" name="startDate" class="laydate-icon ipt" maxLength="20" value="{$data['startDate']}" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>广告结束时间<font color='red'>*</font>:</th>
|
||||
<td>
|
||||
<input type="text" style="margin:0px;vertical-align:baseline;" id="endDate" name="endDate" class="laydate-icon ipt" maxLength="20" value="{$data['endDate']}" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='2' align='center' class='wst-bottombar'>
|
||||
<input type="hidden" name="id" id="adGoodsId" class="ipt" value="{$data['adGoodsId']+0}" />
|
||||
<button type="submit" class="btn btn-primary btn-mright" ><i class="fa fa-check"></i>提交</button>
|
||||
<button type="button" class="btn" onclick="javascript:history.go(-1)"><i class="fa fa-angle-double-left"></i>返回</button>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<script>
|
||||
$(function(){
|
||||
editInit();
|
||||
//初始化位置类型
|
||||
});
|
||||
|
||||
</script>
|
||||
{/block}
|
||||
|
40
hyhproject/admin/view/adgoods/list.html
Executable file
40
hyhproject/admin/view/adgoods/list.html
Executable file
@ -0,0 +1,40 @@
|
||||
{extend name="base" /}
|
||||
{block name="css"}
|
||||
<link rel="stylesheet" type="text/css" href="__ADMIN__/js/mmgrid/mmGrid.css?v={$v}" />
|
||||
{/block}
|
||||
{block name="js"}
|
||||
<script src="__ADMIN__/js/mmgrid/mmGrid.js?v={$v}" type="text/javascript"></script>
|
||||
<script src="__ADMIN__/adgoods/admgrs.js?v={$v}" type="text/javascript"></script>
|
||||
{/block}
|
||||
{block name="main"}
|
||||
<div id='alertTips' class='alert alert-success alert-tips fade in'>
|
||||
<div id='headTip' class='head'><i class='fa fa-lightbulb-o'></i>操作说明</div>
|
||||
<ul class='body'>
|
||||
<li>广告位置类型主要用于确定广告在商城里的位置,调用时把广告代码放入相应位置即可显示广告</li>
|
||||
</ul>
|
||||
</div>
|
||||
<form autocomplete="off" >
|
||||
<div class="wst-toolbar">
|
||||
<select name="adId" id="adId" class="query">
|
||||
<option value="">请选择广告名称</option>
|
||||
<option value=''>请选择</option>
|
||||
{volist name="result" id='vo'}
|
||||
<option value="{$vo['adId']}">{$vo['adName']}</option>
|
||||
{/volist}
|
||||
</select>
|
||||
<button class="btn btn-primary" type='button' onclick="javascript:loadQuery()"><i class='fa fa-search'></i>查询</button>
|
||||
{if WSTGrant('GGGL_01')}
|
||||
<button class="btn btn-success f-right btn-fixtop" type='button' onclick="javascript:location.href='<?=url("admin/adgoods/toEdit")?>'"><i class='fa fa-plus'></i>新增</button>
|
||||
{/if}
|
||||
<div style="clear:both"></div>
|
||||
</div>
|
||||
</form>
|
||||
<div class='wst-grid'>
|
||||
<div id="mmg" class="mmg"></div>
|
||||
<div id="pg" style="text-align: right;"></div>
|
||||
</div>
|
||||
<script>
|
||||
$(function(){initGrid()});
|
||||
</script>
|
||||
|
||||
{/block}
|
Reference in New Issue
Block a user