first commit
This commit is contained in:
@@ -0,0 +1,226 @@
|
||||
{layout name="layout2" /}
|
||||
<style>
|
||||
.layui-form-label {
|
||||
color: #6a6f6c;
|
||||
width: 100px;
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="/static/admin/css/goods.css" media="all">
|
||||
|
||||
<div class="layui-form" lay-filter="layuiadmin-form-comment" id="layuiadmin-form-comment" style="padding: 20px 30px 0 0;">
|
||||
|
||||
<input type="hidden" name="goods_id" value="{$goods_id}">
|
||||
|
||||
<!--会员头像-->
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="form-label-asterisk">*</span>会员头像:</label>
|
||||
<div style="height:80px;line-height:80px">
|
||||
<div class="master-image"></div>
|
||||
<div class="goods-img-add goods-image" lay-verify="image" lay-verType="tips" switch-tab="0"
|
||||
verify-msg="选择图片"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--会员昵称-->
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="form-label-asterisk">*</span>会员昵称:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="nickname" lay-verify="required" lay-verType="tips" placeholder="请输入会员昵称"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--会员等级-->
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="form-label-asterisk">*</span>会员等级:</label>
|
||||
<div class="layui-inline">
|
||||
<div class="layui-input-inline">
|
||||
<select id="level" name="level" style="height:80px;width: 80px">
|
||||
<option value=" ">请选择会员等级</option>
|
||||
{foreach $user_level as $item}
|
||||
<option value="{$item.id}">{$item.name}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--评价时间-->
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="form-label-asterisk">*</span>评价时间:</label>
|
||||
<div class="layui-input-inline">
|
||||
<input type="text" name="comment_time" class="layui-input time" autocomplete="off">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--评价等级-->
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="form-label-asterisk">*</span>评价等级:</label>
|
||||
<div class="layui-input-block">
|
||||
<legend type="text" id="star"></legend>
|
||||
<input type="hidden" name="score" id="score">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--评价图片-->
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">评价图片:</label>
|
||||
<div class="" style="height:80px;line-height:80px">
|
||||
<ul></ul>
|
||||
<div class="goods-img-add" lay-verify="goods_image" lay-verType="tips" switch-tab="0"
|
||||
verify-msg="至少选择一张图片"></div>
|
||||
<br><br>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--评价内容-->
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label"><span class="form-label-asterisk">*</span>评价内容:</label>
|
||||
<div class="layui-input-inline" style="width: 350px">
|
||||
<textarea name="comment" placeholder="请输入评价内容" class="layui-textarea"></textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item layui-hide">
|
||||
<input type="button" lay-submit lay-filter="add-submit" id="add-submit" value="确认">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script type="text/html" id="template-goods-image">
|
||||
<li class="goods-li">
|
||||
<input name="comment_image[]" type="hidden" value="{image-src}">
|
||||
<img class="goods-img goods_image" src="{image-src}">
|
||||
<a class="goods-img-del-x" style="display: none;">x</a></li>
|
||||
</script>
|
||||
<script>
|
||||
layui.config({
|
||||
version: "{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/'
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'form', 'like', 'laydate', 'rate'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, rate = layui.rate
|
||||
, like = layui.like
|
||||
, laydate = layui.laydate;
|
||||
|
||||
// 星级评分
|
||||
rate.render({
|
||||
elem: '#star',
|
||||
choose: function (value) {
|
||||
$('#score').val(value);
|
||||
},
|
||||
text: true,
|
||||
setText: function (value) {
|
||||
if (value < 3 && value > 0) {
|
||||
this.span.text("差评")
|
||||
} else if (value === 3) {
|
||||
this.span.text("中评")
|
||||
} else if (value > 3) {
|
||||
this.span.text("好评")
|
||||
} else {
|
||||
this.span.text("")
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// 日期选择
|
||||
lay('.time').each(function () {
|
||||
laydate.render({
|
||||
elem: this,
|
||||
type: 'datetime',
|
||||
trigger: 'click',
|
||||
format: 'yyyy-MM-dd HH:mm:ss',
|
||||
max : getCurrentDate()
|
||||
});
|
||||
});
|
||||
|
||||
// 主图显示删除按钮
|
||||
$(document).on('mouseenter', '.master-image', function () {
|
||||
$(this).children('.goods-image-del').show();
|
||||
})
|
||||
$(document).on('mouseleave', '.master-image', function () {
|
||||
$(this).children('.goods-image-del').hide();
|
||||
});
|
||||
$(document).on('click', '.master-image', function () {
|
||||
var src = $(this).children('img').attr('src');
|
||||
like.showImg(src, 400);
|
||||
});
|
||||
|
||||
// 多图显示删除按钮
|
||||
$(document).on('mouseenter', '.goods-li', function () {
|
||||
$(this).children().last().show();
|
||||
});
|
||||
$(document).on('mouseleave', '.goods-li', function () {
|
||||
$(this).children().last().hide();
|
||||
});
|
||||
$(document).on('click', '.goods-li', function () {
|
||||
var src = $(this).children('img').attr('src');
|
||||
like.showImg(src, 400);
|
||||
});
|
||||
|
||||
// 删除图片
|
||||
$(document).on('click', '.goods-img-del-x', function () {
|
||||
if ($(this).hasClass('goods-image-del')) {
|
||||
$(this).parent().next().show();
|
||||
$(this).parent().children().remove();
|
||||
}
|
||||
$(this).parent().remove();
|
||||
return false;
|
||||
});
|
||||
|
||||
// 上传图片
|
||||
like.imageUpload('.goods-img-add', function (uris, element) {
|
||||
if (element.hasClass('goods-image')) {
|
||||
if (uris.length > 1) {
|
||||
layer.msg('最多最能选中1张图片');
|
||||
return;
|
||||
}
|
||||
var html = '' +
|
||||
'<input name="avatar" type="hidden" value="' + like.getUrlFileName(uris[0], '{$storageUrl}') + '">' +
|
||||
' <img class="goods-img" src="' + uris[0] + '">\n' +
|
||||
'<a class="goods-img-del-x goods-image-del">x</a>';
|
||||
element.prev().append(html);
|
||||
element.css('display', 'none');
|
||||
return 0;
|
||||
}
|
||||
var count = element.prev().children().length;
|
||||
count = !count ? 0 : count;
|
||||
if (count + uris.length > 8) {
|
||||
layer.msg('最多最能选中8张图片');
|
||||
return;
|
||||
}
|
||||
uris = uris.reverse();
|
||||
for (var i in uris) {
|
||||
var uri = uris[i];
|
||||
var template_goods_image = $('#template-goods-image').html();
|
||||
element.prev().append(template_goods_image.replace('{image-src}', like.getUrlFileName(uri, '{$storageUrl}')).replace('{image-src}', uri));
|
||||
}
|
||||
}, true);
|
||||
|
||||
|
||||
|
||||
function getCurrentDate() {
|
||||
var date = new Date();
|
||||
var seperator1 = "-";
|
||||
var seperator2 = ":";
|
||||
var month = date.getMonth() + 1;
|
||||
var nowDate = date.getDate();
|
||||
if (month >= 1 && month <= 9) {
|
||||
month = "0" + month;
|
||||
}
|
||||
if (nowDate >= 0 && nowDate <= 9) {
|
||||
nowDate = "0" + nowDate;
|
||||
}
|
||||
|
||||
var strDate = date.getFullYear() + seperator1 + month + seperator1 + nowDate;
|
||||
var strTime = date.getHours() + seperator2 + date.getMinutes() + seperator2 + date.getSeconds();
|
||||
var currentDate = strDate + " " + strTime;
|
||||
return currentDate;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
@@ -0,0 +1,213 @@
|
||||
{layout name="layout1" /}
|
||||
<style>
|
||||
.layui-table-cell {
|
||||
height: auto;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="layui-fluid">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<div class="layui-collapse like-layui-collapse" lay-accordion="" style="border:1px dashed #c4c4c4">
|
||||
<div class="layui-colla-item">
|
||||
<h2 class="layui-colla-title like-layui-colla-title" style="background-color: #fff">操作提示</h2>
|
||||
<div class="layui-colla-content layui-show">
|
||||
<p>*虚拟评价。</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-tab layui-tab-card" lay-filter="tab-all">
|
||||
<div class="layui-tab-item layui-show">
|
||||
<div class="layui-card">
|
||||
<div class="layui-form layui-card-header layuiadmin-card-header-auto">
|
||||
<div class="layui-form-item type">
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">商品名称:</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="keyword" id="keyword" placeholder="请输入关键词"
|
||||
autocomplete="off" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">商品分类:</label>
|
||||
<div class="layui-input-block">
|
||||
<select name="category_id" id="category_id" placeholder="请选择商品分类">
|
||||
<option value="">全部</option>
|
||||
{foreach $category_list as $val }
|
||||
<option value="{$val.id}">{$val.html}{$val.name}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<label class="layui-form-label">商品状态:</label>
|
||||
<div class="layui-input-block">
|
||||
<select name="status" id="status" placeholder="请选择商品状态">
|
||||
<option value="">全部</option>
|
||||
{foreach $status_list as $key => $val}
|
||||
<option value="{$key}">{$val}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-goods {$view_theme_color}"
|
||||
lay-submit lay-filter="goods-search">查询
|
||||
</button>
|
||||
<button class="layui-btn layui-btn-sm layuiadmin-btn-goods layui-btn-primary "
|
||||
lay-submit lay-filter="goods-clear-search">清空查询
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-card-body">
|
||||
<table id="goods-lists" lay-filter="goods-lists"></table>
|
||||
<script type="text/html" id="goods-info">
|
||||
<img src="{{d.image}}" style="height:60px;width: 60px;margin-right: 5px;"
|
||||
class="image-show"> {{d.name}}
|
||||
</script>
|
||||
<script type="text/html" id="like-operation">
|
||||
<a class="layui-btn layui-btn-normal layui-btn-sm" lay-event="add-comment">添加评论</a>
|
||||
</script>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
layui.config({
|
||||
version: "{$front_version}",
|
||||
base: '/static/plug/layui-admin/dist/layuiadmin/' //静态资源所在路径
|
||||
}).extend({
|
||||
index: 'lib/index' //主入口模块
|
||||
}).use(['index', 'table', 'like', 'form'], function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, table = layui.table
|
||||
, like = layui.like
|
||||
, element = layui.element;
|
||||
|
||||
//监听搜索
|
||||
form.on('submit(goods-search)', function (data) {
|
||||
var field = data.field;
|
||||
//执行重载
|
||||
table.reload('goods-lists', {
|
||||
where: field,
|
||||
page: {curr: 1}
|
||||
});
|
||||
});
|
||||
|
||||
//清空查询
|
||||
form.on('submit(goods-clear-search)', function () {
|
||||
$('#keyword').val(''); //清空输入框
|
||||
$('#category_id').val(''); //清空输入框
|
||||
$('#status').val(''); //清空输入框
|
||||
form.render('select');
|
||||
//刷新列表
|
||||
table.reload('goods-lists', {
|
||||
where: [],
|
||||
page: {curr: 1}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$('.layui-btn.layuiadmin-btn-goods').on('click', function () {
|
||||
var type = $(this).data('type');
|
||||
active[type] ? active[type].call(this) : '';
|
||||
});
|
||||
|
||||
//监听工具条
|
||||
table.on('tool(goods-lists)', function (obj) {
|
||||
var id = obj.data.id;
|
||||
|
||||
if (obj.event === 'add-comment') {
|
||||
layer.open({
|
||||
type: 2
|
||||
, title: '添加评论'
|
||||
, content: '{:url("CommentHelper/add")}?id=' + id
|
||||
, area: ['90%', '90%']
|
||||
, btn: ['确定', '取消']
|
||||
, yes: function (index, layero) {
|
||||
var iframeWindow = window['layui-layer-iframe' + index]
|
||||
, submitID = 'add-submit'
|
||||
, submit = layero.find('iframe').contents().find('#' + submitID);
|
||||
|
||||
//监听提交
|
||||
iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
|
||||
var field = data.field;
|
||||
like.ajax({
|
||||
url: '{:url("CommentHelper/add")}',
|
||||
data: field,
|
||||
type: "post",
|
||||
success: function (res) {
|
||||
if (res.code == 1) {
|
||||
layui.layer.msg(res.msg, {
|
||||
offset: '15px'
|
||||
, icon: 1
|
||||
, time: 1000
|
||||
});
|
||||
layer.close(index);
|
||||
table.reload('goods-lists');
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
submit.trigger('click');
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
//图片放大
|
||||
$(document).on('click', '.image-show', function () {
|
||||
var src = $(this).attr('src');
|
||||
like.showImg(src, 600);
|
||||
});
|
||||
|
||||
var cols = [
|
||||
{field: 'name', title: '商品名称', width: 320, toolbar: '#goods-info'}
|
||||
, {field: 'cate_name', width: 160, title: '商品分类'}
|
||||
, {field: 'price', width: 180, title: '价格'}
|
||||
, {field: 'stock', width: 100, title: '总库存'}
|
||||
, {field: 'total_sales_sum', width: 100, title: '总销量'}
|
||||
, {field: 'status_desc', width: 100, align: 'center', title: '状态'}
|
||||
, {field: 'comment_count', width: 100, title: '评论数'}
|
||||
, {field: 'create_time_desc', width: 160, title: '发布时间'}
|
||||
, {fixed: 'right', title: '操作', align: 'center', width: 100, toolbar: '#like-operation'}
|
||||
];
|
||||
table.render({
|
||||
id: 'goods-lists'
|
||||
, elem: '#goods-lists'
|
||||
, url: '{:url("CommentHelper/lists")}'
|
||||
, cols: [cols]
|
||||
, title: '商品表'
|
||||
, page: true
|
||||
, text: {none: '暂无数据!'}
|
||||
, parseData: function (res) {
|
||||
return {
|
||||
"code": res.code,
|
||||
"msg": res.msg,
|
||||
"count": res.data.count, //解析数据长度
|
||||
"data": res.data.list, //解析数据列表
|
||||
};
|
||||
}
|
||||
, done: function (res, curr, count) {
|
||||
setTimeout(function () {
|
||||
// 解决操作栏因为内容过多换行问题
|
||||
$(".layui-table-fixed-l .layui-table-body").removeAttr("style");
|
||||
$(".layui-table-fixed-r .layui-table-body").removeAttr("style");
|
||||
$(".layui-table-main tr").each(function (index, val) {
|
||||
$($(".layui-table-fixed-l .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
$($(".layui-table-fixed-r .layui-table-body tbody tr")[index]).height($(val).height());
|
||||
});
|
||||
}, 100)
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
</script>
|
||||
Reference in New Issue
Block a user