diff --git a/app/admin/controller/ZjGoodsController.php b/app/admin/controller/ZjGoodsController.php index 031bd5e..eda8fa7 100644 --- a/app/admin/controller/ZjGoodsController.php +++ b/app/admin/controller/ZjGoodsController.php @@ -19,22 +19,178 @@ class ZjGoodsController extends AdminBaseController */ public function index(){ $where['g.delete_time']=0; + $where1=[]; $param=[]; if ($this->request->param()){ $param=input('param.'); - if (!empty($param['cate'])){ - $where['ca.id']=$param['cate']; + if (!empty($param['cate1'])){ + $where['ca.id']=$param['cate1']; } + if (!empty($param['cate2'])){ + $where['g.cid']=$param['cate2']; + } + if (!empty($param['id'])){ + $where['g.id']=$param['id']; + } + if (!empty($param['name'])){ + $name=$param['name']; + $where['g.name']=['like',"%$name%"]; + } + if (!empty($param['min'])){ + $where['g.price']=['egt',$param['min']]; + } + if (!empty($param['max'])){ + $where1['g.price']=['elt',$param['max']]; + } + if (!empty($param['zt'])){ + if ($param['zt']==1){ + $where['g.is_sta']=1; + }elseif ($param['zt']==2){ + $where['g.is_sta']=2; + }elseif ($param['zt']==3){ + $where['g.is_shove']=2; + }elseif ($param['zt']==4){ + $where['g.is_shove']=1; + } + } + } $all=Db::name('zj_goods')->alias('g')->join('zj_category c','g.cid=c.id')->join('zj_category ca','c.cid=ca.id') - ->where($where)->field('g.*,c.name as cname,ca.name as caname')->order('create_time','desc')->paginate(15); - + ->where($where)->where($where1)->field('g.*,c.name as cname,ca.name as caname,ca.id as caid')->order('create_time','desc')->paginate(15); + $cate=Db::name('zj_category')->where('delete_time','0')->field('id,name,grade,cid')->select(); + foreach ($cate as $k=>$v){ + if ($v['grade']==1){ + $cate1[$k]=$v; + }else{ + $cate2[$k]=$v; + } + } + $cate2=array_merge($cate2); + $cate1=array_merge($cate1); $all->appends($param); + $this->assign('zt',!empty($param['zt'])?$param['zt']:''); + $this->assign('max',!empty($param['max'])?$param['max']:''); + $this->assign('min',!empty($param['min'])?$param['min']:''); + $this->assign('name',!empty($param['name'])?$param['name']:''); + $this->assign('id',!empty($param['id'])?$param['id']:''); + $this->assign('cate2',!empty($param['cate2'])?$param['cate2']:''); + $this->assign('cate1',!empty($param['cate1'])?$param['cate1']:''); + $this->assign('cate3',$cate1); + $this->assign('cate4',$cate2); $this->assign('all',$all->items()); $this->assign('page',$all->render()); return $this->fetch(); } + /** + * 商品状态修改 + */ + public function state(){ + if ($this->request->isAjax()){ + $param=input('param.'); + $edit=Db::name('zj_goods')->update($param); + if (empty($edit)){ + $this->error('商品状态修改失败'); + }else{ + $this->success('商品状态修改成功'); + } + } + } + + /** + * 添加商品 + */ + public function add(){ + $cate=Db::name('zj_category')->where('delete_time','0')->field('id,name,grade,cid')->select(); + foreach ($cate as $k=>$v){ + if ($v['grade']==1){ + $cate1[$k]=$v; + }else{ + $cate2[$k]=$v; + } + } + $cate2=array_merge($cate2); + $cate1=array_merge($cate1); + $this->assign('cate3',$cate1); + $this->assign('cate4',$cate2); + return $this->fetch(); + } + /** + * 添加商品提交 + */ + public function addPost(){ + if ($this->request->param()){ + $param=input('param.'); + //检查商品详情是否为空 + if (empty($param['content'])){ + $this->error('商品详情不能为空'); + } + //检查商品的价格是否为小数 + if (strpos($param['price_cash'],'.')||strpos($param['price'],'.')||strpos($param['price_num'],'.')){ + $this->error('商品金额、积分、单价为整数'); + } + //检查商品缩略图 + if (empty($param['thumb'])){ + $this->error('请添加商品缩略图'); + } + //检查图片轮播图图片数量并转json + if (empty($param['photo_urls'])){ + $this->error('请至少上传1张商品轮播图'); + }elseif (!empty($param['photo_urls']['5'])){ + $this->error('最多上传五张商品轮播图','',$param); + }else{ + foreach ($param['photo_urls'] as $k=>$v){ + $param['more'][$k]=['url'=>$v,'name'=>$param['photo_names'][$k]]; + } + unset($param['photo_names']); + unset($param['photo_urls']); + $param['more']=json_encode($param['more']); + } + //检查商品的一级分类 + if ($param['cate']==2){ + + if (empty($param['is_type'])){ + $this->error('请选择组合支付方式'); + } + + //判断组合支付方式 + if ($param['is_type']==2){ + if ($param['price_num']!=0){ + $this->error('最低金额选项的商品积分应为‘0’'); + } + if ($param['price_cash']>=$param['price']){ + $this->error('商品单价应大于商品金额'); + } + }else if ($param['is_type']==1){ + if ($param['price']!=$param['price_cash']+$param['price_num']){ + $this->error('商品积分+商品金额=商品价格'); + } + }else{ + $this->error('组合支付方式出现未知错误'.$param['is_type']); + } + }else{ + //属性赋值 + $param['price_cash']='0'; + $param['price_num']='0'; + $param['is_type']='0'; + } + + //检查商品的价格是否大于等于0 + if ($param['price']<0||$param['price_num']<0||$param['price_cash']<0){ + $this->error('商品金额、商品积分、商品单价应大于等于0'); + } + $param['content']=htmlspecialchars(cmf_replace_content_file_url(htmlspecialchars_decode($param['content']))); + $param['create_time']=time(); + unset($param['cate']); + $add=Db::name('zj_goods')->insert($param); + if (empty($add)){ + $this->error('商品添加失败'); + }else{ + $this->success('商品添加成功'); + } + } + } + /** * 商品分类列表 @@ -45,7 +201,6 @@ class ZjGoodsController extends AdminBaseController $this->assign('all',$all); return $this->fetch(); } - /** * 添加商品分类 */ diff --git a/public/static/js/admin.js b/public/static/js/admin.js index 825754b..2bf178a 100644 --- a/public/static/js/admin.js +++ b/public/static/js/admin.js @@ -237,7 +237,7 @@ //$('<span class="tips_error">' + data.msg + '</span>').appendTo($btn.parent()).fadeIn('fast'); $btn.removeProp('disabled').removeClass('disabled'); - +console.log(data) new Noty({ text: data.msg, type: 'error', @@ -247,7 +247,7 @@ open: 'animated bounceInDown', // Animate.css class names close: 'animated bounceOutUp', // Animate.css class names }, - timeout: 1, + timeout: 2, callbacks: { afterClose: function () { _refresh(); @@ -835,7 +835,7 @@ function uploadOne(dialog_title, input_selector, filetype, extra_params, app) { */ function uploadOneImage(dialog_title, input_selector, extra_params, app) { openUploadDialog(dialog_title, function (dialog, files) { - $(input_selector).val(files[0].filepath); + $(input_selector).val(files[0].preview_url); $(input_selector + '-preview').attr('src', files[0].preview_url); $(input_selector + '-name').val(files[0].name); }, extra_params, 0, 'image', app); @@ -858,7 +858,7 @@ function uploadMultiImage(dialog_title, container_selector, item_tpl_wrapper_id, itemtpl = itemtpl.replace(/\{id\}/g, item.id); itemtpl = itemtpl.replace(/\{url\}/g, item.url); itemtpl = itemtpl.replace(/\{preview_url\}/g, item.preview_url); - itemtpl = itemtpl.replace(/\{filepath\}/g, item.filepath); + itemtpl = itemtpl.replace(/\{filepath\}/g, item.preview_url); itemtpl = itemtpl.replace(/\{name\}/g, item.name); html += itemtpl; }); diff --git a/public/themes/admin_simpleboot3/admin/zj_goods/add.html b/public/themes/admin_simpleboot3/admin/zj_goods/add.html new file mode 100644 index 0000000..7de641c --- /dev/null +++ b/public/themes/admin_simpleboot3/admin/zj_goods/add.html @@ -0,0 +1,190 @@ +<include file="public@header"/> +<style type="text/css"> + .pic-list li { + margin-bottom: 5px; + } +</style> +<script type="text/html" id="photos-item-tpl"> + <li id="saved-image{id}"> + <input id="photo-{id}" type="hidden" name="photo_urls[]" value="{filepath}"> + <input class="form-control" id="photo-{id}-name" type="text" name="photo_names[]" value="{name}" + style="width: 200px;" title="图片名称"> + <img id="photo-{id}-preview" src="{url}" style="height:36px;width: 36px;" + onclick="imagePreviewDialog(this.src);"> + <a href="javascript:uploadOneImage('图片上传','#photo-{id}');">替换</a> + <a href="javascript:(function(){$('#saved-image{id}').remove();})();">移除</a> + </li> +</script> +</head> +<body> +<div class="wrap js-check-wrap"> + <ul class="nav nav-tabs"> + <li><a href="{:url('index')}">商品列表</a></li> + <li class="active"><a href="{:url('add')}">添加商品</a></li> + </ul> + <div class="row margin-top-20"> + <form class="js-ajax-form" action="{:url('addPost')}" method="post"> + <div class="col-md-7"> + <div class="tab-content"> + <div class="tab-pane active" id="A"> + <div class="form-group"> + <label for="name"><span class="form-required">*</span>商品名称</label> + <div> + <input type="text" class="form-control" placeholder="请输入名称" id="name" name="name" maxlength="30" required> + </div> + </div> + <div class="form-group"> + <label for="name"><span class="form-required">*</span>商品简介</label> + <div> + <input type="text" name="intro" maxlength="50" class="form-control" placeholder="请输入简介" required> + </div> + </div> + <div class="form-group"> + <label><span class="form-required">*</span>一级分类</label> + <div> + <select class="form-control" name="cate" id="classo" onchange="teacherChange(this.options[this.selectedIndex].value)"> + <foreach name="cate3" item="vo"> + <option value="{$vo.id}">{$vo.name}</option> + </foreach> + </select> + </div> + </div> + <div class="form-group"> + <label><span class="form-required">*</span>二级分类</label> + <div> + <select name="cid" class="form-control" id="classobj"> + <foreach name="cate4" item="vo"> + <option value="{$vo.id}">{$vo.name}</option> + </foreach> + </select> + </div> + </div> + <div class="form-group"> + <label for="name"><span class="form-required">*</span>商品详情</label> + <div> + <script type="text/plain" id="content" name="content"></script> + </div> + </div> + </div> + </div> + <div class="form-group" style="text-align: right;"> + <button type="submit" class="btn btn-primary js-ajax-submit">{:lang('ADD')}</button> + <a class="btn btn-default" href="{:url('category')}">{:lang('BACK')}</a> + </div> + </div> + <div class="col-md-3"> + <div class="form-group"> + <label><span class="form-required">*</span>商品缩略图</label> + <div> + <div style="text-align: left;"> + <input type="hidden" name="thumb" id="thumbnail" value=""> + <a href="javascript:uploadOneImage('图片上传','#thumbnail');"> + <img src="__TMPL__/public/assets/images/default-thumbnail.png" + id="thumbnail-preview" + width="135" style="cursor: pointer"/> + </a> + <input type="button" class="btn btn-sm btn-cancel-thumbnail" value="取消图片"> + </div> + </div> + </div> + <div class="form-group"> + <label><span class="form-required">*</span>商品轮播图</label> + <div> + <ul id="photos" class="pic-list list-unstyled form-inline"></ul> + <a href="javascript:uploadMultiImage('图片上传','#photos','photos-item-tpl');" + class="btn btn-default btn-sm">选择图片</a> + </div> + </div> + <div class="form-group" id="xx" style="display: none"> + <label for="name"><span class="form-required">*</span>组合支付方式</label> + <div style="padding-left: 10px"> + 固定金额:<input type="radio" name="is_type" value="1" style="margin-right: 30px"> 最低金额:<input type="radio" name="is_type" value="2"> + </div> + </div> + <div class="form-group price" style="display: none"> + <label for="name"><span class="form-required">*</span>商品金额</label> + <div> + <input type="number" name="price_cash" maxlength="50" class="form-control" placeholder="请输入金额" required> + </div> + </div> + <div class="form-group price" style="display: none"> + <label for="name"><span class="form-required">*</span>商品积分</label> + <div> + <input type="number" name="price_num" maxlength="50" class="form-control" placeholder="请输入积分(最低金额支付此项请填'0')" required> + </div> + </div> + <div class="form-group"> + <label for="name"><span class="form-required">*</span>商品单价</label> + <div> + <input type="number" name="price" maxlength="50" class="form-control" placeholder="请输入单价" required> + </div> + </div> + </div> + </form> + </div> +</div> +<script type="text/javascript" src="__STATIC__/js/admin.js"></script> +<script type="text/javascript"> + //编辑器路径定义 + var editorURL = GV.WEB_ROOT; +</script> +<script type="text/javascript" src="__STATIC__/js/ueditor/ueditor.config.js"></script> +<script type="text/javascript" src="__STATIC__/js/ueditor/ueditor.all.min.js"></script> +<script type="text/javascript"> + $(function () { + + editorcontent = new baidu.editor.ui.Editor(); + editorcontent.render('content'); + try { + editorcontent.sync(); + } catch (err) { + } + + $('.btn-cancel-thumbnail').click(function () { + $('#thumbnail-preview').attr('src', '__TMPL__/public/assets/images/default-thumbnail.png'); + $('#thumbnail').val(''); + }); + }); + + var ar1={:json_encode($cate4)};//后台传入服务名称 + //当选择指向类时改变目标的下拉菜单 + function teacherChange(area){ + var tobj=document.getElementById('classobj'); + removeAllOptions(tobj); + if (area==2){ + $(".price").css('display','block') + $("#xx").css('display','block') + }else if (area==3){ + $(".price").css('display','none') + $("#xx").css('display','none') + }else if (area==1){ + $(".price").css('display','none') + $("#xx").css('display','none') + } + for(m=0;m<ar1.length;m++){ + if (ar1[m]['cid']==area&&area!=''){ + var option = document.createElement("option"); + option.text = ar1[m]['name']; + option.value = ar1[m]['id']; + tobj.add(option); + }else if(area==''){ + var option = document.createElement("option"); + option.text = ar1[m]['name']; + option.value = ar1[m]['id']; + tobj.add(option); + } + } + } + //移除option 当中所有元素 + function removeAllOptions(selectbox) + { + var i; + for(i=selectbox.options.length-1;i>=0;i--) + { + selectbox.remove(i); + } + } + +</script> +</body> +</html> \ No newline at end of file diff --git a/public/themes/admin_simpleboot3/admin/zj_goods/edit.html b/public/themes/admin_simpleboot3/admin/zj_goods/edit.html new file mode 100644 index 0000000..e40c0b8 --- /dev/null +++ b/public/themes/admin_simpleboot3/admin/zj_goods/edit.html @@ -0,0 +1,190 @@ +<include file="public@header"/> +<style type="text/css"> + .pic-list li { + margin-bottom: 5px; + } +</style> +<script type="text/html" id="photos-item-tpl"> + <li id="saved-image{id}"> + <input id="photo-{id}" type="hidden" name="photo_urls[]" value="{filepath}"> + <input class="form-control" id="photo-{id}-name" type="text" name="photo_names[]" value="{name}" + style="width: 200px;" title="图片名称"> + <img id="photo-{id}-preview" src="{url}" style="height:36px;width: 36px;" + onclick="imagePreviewDialog(this.src);"> + <a href="javascript:uploadOneImage('图片上传','#photo-{id}');">替换</a> + <a href="javascript:(function(){$('#saved-image{id}').remove();})();">移除</a> + </li> +</script> +</head> +<body> +<div class="wrap js-check-wrap"> + <ul class="nav nav-tabs"> + <li><a href="{:url('index')}">商品列表</a></li> + <li class="active"><a href="{:url('add')}">添加商品</a></li> + </ul> + <div class="row margin-top-20"> + <form class="js-ajax-form" action="{:url('addPost')}" method="post"> + <div class="col-md-7"> + <div class="tab-content"> + <div class="tab-pane active" id="A"> + <div class="form-group"> + <label for="name"><span class="form-required">*</span>商品名称</label> + <div> + <input type="text" class="form-control" placeholder="请输入名称" id="name" name="name" maxlength="30" required> + </div> + </div> + <div class="form-group"> + <label for="name"><span class="form-required">*</span>商品简介</label> + <div> + <input type="text" name="intro" maxlength="50" class="form-control" placeholder="请输入简介" required> + </div> + </div> + <div class="form-group"> + <label><span class="form-required">*</span>一级分类</label> + <div> + <select class="form-control" name="cate" id="classo" onchange="teacherChange(this.options[this.selectedIndex].value)"> + <foreach name="cate3" item="vo"> + <option value="{$vo.id}">{$vo.name}</option> + </foreach> + </select> + </div> + </div> + <div class="form-group"> + <label><span class="form-required">*</span>二级分类</label> + <div> + <select name="cid" class="form-control" id="classobj"> + <foreach name="cate4" item="vo"> + <option value="{$vo.id}">{$vo.name}</option> + </foreach> + </select> + </div> + </div> + <div class="form-group"> + <label for="name"><span class="form-required">*</span>商品详情</label> + <div> + <script type="text/plain" id="content" name="content"></script> + </div> + </div> + </div> + </div> + <div class="form-group" style="text-align: right;"> + <button type="submit" class="btn btn-primary js-ajax-submit">{:lang('ADD')}</button> + <a class="btn btn-default" href="{:url('category')}">{:lang('BACK')}</a> + </div> + </div> + <div class="col-md-3"> + <div class="form-group"> + <label><span class="form-required">*</span>商品缩略图</label> + <div> + <div style="text-align: left;"> + <input type="hidden" name="thumb" id="thumbnail" value=""> + <a href="javascript:uploadOneImage('图片上传','#thumbnail');"> + <img src="__TMPL__/public/assets/images/default-thumbnail.png" + id="thumbnail-preview" + width="135" style="cursor: pointer"/> + </a> + <input type="button" class="btn btn-sm btn-cancel-thumbnail" value="取消图片"> + </div> + </div> + </div> + <div class="form-group"> + <label><span class="form-required">*</span>商品轮播图</label> + <div> + <ul id="photos" class="pic-list list-unstyled form-inline"></ul> + <a href="javascript:uploadMultiImage('图片上传','#photos','photos-item-tpl');" + class="btn btn-default btn-sm">选择图片</a> + </div> + </div> + <div class="form-group" id="xx" style="display: none"> + <label for="name"><span class="form-required">*</span>组合支付方式</label> + <div style="padding-left: 10px"> + 固定金额:<input type="radio" name="is_type" value="1" style="margin-right: 30px"> 最低金额:<input type="radio" name="is_type" value="2"> + </div> + </div> + <div class="form-group price" style="display: none"> + <label for="name"><span class="form-required">*</span>商品金额</label> + <div> + <input type="number" name="price_cash" maxlength="50" class="form-control" placeholder="请输入金额" required> + </div> + </div> + <div class="form-group price" style="display: none"> + <label for="name"><span class="form-required">*</span>商品积分</label> + <div> + <input type="number" name="price_num" maxlength="50" class="form-control" placeholder="请输入积分(最低金额支付此项请填'0')" required> + </div> + </div> + <div class="form-group"> + <label for="name"><span class="form-required">*</span>商品单价</label> + <div> + <input type="number" name="price" maxlength="50" class="form-control" placeholder="请输入单价" required> + </div> + </div> + </div> + </form> + </div> +</div> +<script type="text/javascript" src="__STATIC__/js/admin.js"></script> +<script type="text/javascript"> + //编辑器路径定义 + var editorURL = GV.WEB_ROOT; +</script> +<script type="text/javascript" src="__STATIC__/js/ueditor/ueditor.config.js"></script> +<script type="text/javascript" src="__STATIC__/js/ueditor/ueditor.all.min.js"></script> +<script type="text/javascript"> + $(function () { + + editorcontent = new baidu.editor.ui.Editor(); + editorcontent.render('content'); + try { + editorcontent.sync(); + } catch (err) { + } + + $('.btn-cancel-thumbnail').click(function () { + $('#thumbnail-preview').attr('src', '__TMPL__/public/assets/images/default-thumbnail.png'); + $('#thumbnail').val(''); + }); + }); + + var ar1={:json_encode($cate4)};//后台传入服务名称 + //当选择指向类时改变目标的下拉菜单 + function teacherChange(area){ + var tobj=document.getElementById('classobj'); + removeAllOptions(tobj); + if (area==2){ + $(".price").css('display','block') + $("#xx").css('display','block') + }else if (area==3){ + $(".price").css('display','none') + $("#xx").css('display','none') + }else if (area==1){ + $(".price").css('display','none') + $("#xx").css('display','none') + } + for(m=0;m<ar1.length;m++){ + if (ar1[m]['cid']==area&&area!=''){ + var option = document.createElement("option"); + option.text = ar1[m]['name']; + option.value = ar1[m]['id']; + tobj.add(option); + }else if(area==''){ + var option = document.createElement("option"); + option.text = ar1[m]['name']; + option.value = ar1[m]['id']; + tobj.add(option); + } + } + } + //移除option 当中所有元素 + function removeAllOptions(selectbox) + { + var i; + for(i=selectbox.options.length-1;i>=0;i--) + { + selectbox.remove(i); + } + } + +</script> +</body> +</html> \ No newline at end of file diff --git a/public/themes/admin_simpleboot3/admin/zj_goods/index.html b/public/themes/admin_simpleboot3/admin/zj_goods/index.html index 1b5d7eb..a6e8c68 100644 --- a/public/themes/admin_simpleboot3/admin/zj_goods/index.html +++ b/public/themes/admin_simpleboot3/admin/zj_goods/index.html @@ -4,37 +4,42 @@ <div class="wrap"> <ul class="nav nav-tabs"> <li class="active"><a href="javascript:;">商品列表</a></li> + <li><a href="{:url('add')}">添加商品</a></li> </ul> <form class="well form-inline margin-top-20" method="post" action="{:url('index')}"> id: - <input class="form-control" type="text" name="id" style="width: 200px;" value="{$id|default=''}" + <input class="form-control" type="text" name="id" style="width: 100px;" value="{$id|default=''}" placeholder="请输入id"> 一级分类: - <select name="step" class="form-control" style="width: 120px;"> + <select name="cate1" class="form-control" style="width: 120px;" id="classo" onchange="teacherChange(this.options[this.selectedIndex].value)"> <option value>选择分类</option> + <foreach name="cate3" item="vo"> + <option value="{$vo.id}" <eq name="$cate1" value="$vo.id">selected</eq>>{$vo.name}</option> + </foreach> </select> 二级分类: - <select name="step" class="form-control" style="width: 120px;"> + <select name="cate2" class="form-control" style="width: 120px;" id="classobj"> <option value>选择分类</option> + <foreach name="cate4" item="vo"> + <option value="{$vo.id}" <eq name="$cate2" value="$vo.id">selected</eq>>{$vo.name}</option> + </foreach> </select> 商品名称: <input class="form-control" type="text" name="name" style="width: 200px;" value="{$name|default=''}" placeholder="请输入商品名称"> 单价: - <input class="form-control" type="number" name="min" style="width: 200px;" value="{$min|default=''}" - placeholder="请输入最低价">- - <input class="form-control" type="number" name="max" style="width: 200px;" value="{$max|default=''}" - placeholder="请输入最高价"> - <br/> + <input class="form-control" type="number" name="min" style="width: 100px;" value="{$min|default=''}" + placeholder="最低价">- + <input class="form-control" type="number" name="max" style="width: 100px;" value="{$max|default=''}" + placeholder="最高价"> 商品状态: <select name="zt" class="form-control" style="width: 120px;"> <option value>选择状态</option> - <option value="1">上架</option> - <option value="2">下架</option> - <option value="3">推荐</option> - <option value="4">未推荐</option> + <option value="1" <eq name="$zt" value="1">selected</eq>>上架</option> + <option value="2" <eq name="$zt" value="2">selected</eq>>下架</option> + <option value="3" <eq name="$zt" value="3">selected</eq>>推荐</option> + <option value="4" <eq name="$zt" value="4">selected</eq>>不推荐</option> </select> - <input type="hidden" name="uid" value="{$uid|default=''}"> <input type="submit" class="btn btn-primary" value="搜索"/> <a class="btn btn-danger" href="{:url('index')}">清空</a> </form> @@ -43,6 +48,7 @@ <thead> <tr> <th>id</th> + <th>商品名称</th> <th>一级分类</th> <th>二级分类</th> <th>添加时间</th> @@ -50,25 +56,60 @@ <th>金额售价</th> <th>总价</th> <th>商品状态</th> - <th>操作</th> + <th style="width: 200px;">操作</th> </tr> </thead> <tbody> <foreach name="all" item="vo"> <tr> <td>{$vo.id}</td> + <td>{$vo.name}</td> <td>{$vo.caname}</td> <td>{$vo.cname}</td> - <td>{:date('Y-m-d H:i'$vo.create_time)}</td> + <td>{:date('Y-m-d H:i',$vo.create_time)}</td> <td> - <if condition="$vo.price_num eq 0"> - + <if condition="$vo.caid eq 1||$vo.caid eq 3"> + {$vo.caname}专区商品 + <elseif condition="$vo.is_type eq 2"> + 最低现金商品 + <else> + {$vo.price_num} </if> - {$vo.price+num} </td> - <td>{$vo.id}</td> - <td>{$vo.id}</td> - <td>{$vo.id}</td> + <td> + <if condition="$vo.caid eq 1||$vo.caid eq 3"> + {$vo.caname}专区商品 + <else> + {$vo.price_cash} + </if> + + </td> + <td>{$vo.price}</td> + <td> + <eq name="$vo.is_shove" value="1"> + 不推荐 + <else> + 推荐 + </eq>, + <eq name="$vo.is_sta" value="1"> + 上架 + <else> + 下架 + </eq> + </td> + <td> + <eq name="$vo.is_shove" value="1"> + <a href="{:url('state',array('id'=>$vo['id'],'is_shove'=>'2'))}" class="js-ajax-dialog-btn" data-msg="确定推荐该商品">推荐</a> + <else> + <a href="{:url('state',array('id'=>$vo['id'],'is_shove'=>'1'))}" class="js-ajax-dialog-btn" data-msg="确定取消推荐">不推荐</a> + </eq> + <eq name="$vo.is_sta" value="1"> + <a href="{:url('state',array('id'=>$vo['id'],'is_sta'=>'2'))}" class="js-ajax-dialog-btn" data-msg="确定下架商品">下架</a> + <else> + <a href="{:url('state',array('id'=>$vo['id'],'is_sta'=>'1'))}" class="js-ajax-dialog-btn" data-msg="确定上架商品">上架</a> + </eq> + <a href="{:url('edit',array('id'=>$vo.id))}">编辑</a> + </td> </tr> </foreach> </tbody> @@ -77,5 +118,40 @@ </form> </div> <script src="__STATIC__/js/admin.js"></script> +<script> + var ar1={:json_encode($cate4)};//后台传入服务名称 + //当选择指向类时改变目标的下拉菜单 + function teacherChange(area){ + var tobj=document.getElementById('classobj'); + removeAllOptions(tobj); + var option = document.createElement("option"); + option.text = "选择分类"; + option.value = ""; + tobj.add(option); + + for(m=0;m<ar1.length;m++){ + if (ar1[m]['cid']==area&&area!=''){ + var option = document.createElement("option"); + option.text = ar1[m]['name']; + option.value = ar1[m]['id']; + tobj.add(option); + }else if(area==''){ + var option = document.createElement("option"); + option.text = ar1[m]['name']; + option.value = ar1[m]['id']; + tobj.add(option); + } + } + } + //移除option 当中所有元素 + function removeAllOptions(selectbox) + { + var i; + for(i=selectbox.options.length-1;i>=0;i--) + { + selectbox.remove(i); + } + } +</script> </body> </html> \ No newline at end of file diff --git a/public/themes/admin_simpleboot3/user/webuploader.html b/public/themes/admin_simpleboot3/user/webuploader.html index c9c77cb..b9447a2 100644 --- a/public/themes/admin_simpleboot3/user/webuploader.html +++ b/public/themes/admin_simpleboot3/user/webuploader.html @@ -102,7 +102,7 @@ } var multi = {$multi};//是否允许同时选多个文件 - var maxFiles = {$max_files};//允许上传多少文件 + var maxFiles = 5;//允许上传多少文件 var fileErrorMsg = {};