Commit 46abeb0a3fd2b38e85f01e09613960834088cc78

Authored by u123231312
1 parent d9c28367

菜品库管理

... ... @@ -449,4 +449,97 @@ class Template extends Common{
return view();
}
//菜品库管理
public function Vegetable(){
if(Request::isAjax()){
//构建数组
$data = Request::except('file');
if(empty($data['pic'])){
$result['code'] = 0;
$result['msg'] = '请确保文件已经上传成功!';
$result['url'] = url('Vegetable');
return $result;
}
if(empty($data['class'])){
$result['code'] = 0;
$result['msg'] = '请选择菜系!';
$result['url'] = url('Vegetable');
return $result;
}
$list= file_get_contents(UNDER_LINE.'App.Cookbook.VegetableManage&data='.json_encode($data));
$array = json_decode($list,TRUE);
if($array['ret']==200){
$result['code'] = 1;
$result['msg'] = 'SUCCESS!';
$result['url'] = url('Vegetable');
}else{
$result['code'] = 0;
$result['msg'] = $array['msg'];
$result['url'] = url('Vegetable');
}
return $result;
}
//模拟菜系
$arrayCai = array(
1 => '湘菜',
2 => '粤菜',
3 => '川菜',
4 => '东北菜',
5 => '湖南菜',
);
$this->assign ('arrayCai',$arrayCai);
$this->assign ( 'title','菜品库' );
return $this->fetch();
}
//iframe
public function batchAdd(){
$arr = array(1,2,3,4);
if(Request::isAjax()){
//构建数组
$data = Request::except('file');
//print_r($arr);die;
for($i=1;$i<=count($arr);$i++){
$str = 'pic'.$i;
if($data[$str] == ""){
$result['code'] = 0;
$result['msg'] = '请检查文件是否全部上传成功!';
$result['url'] = url('batchAdd');
return $result;
}
if($data['class1']==0){
$result['code'] = 0;
$result['msg'] = '请至少选择一个菜系!';
$result['url'] = url('batchAdd');
return $result;
}
if($data['class'.$i]==0){
$data['class'.$i]=$data['class1'];
}
}
$list= file_get_contents(UNDER_LINE.'App.Cookbook.VegetableManage&data='.json_encode($data).'&flag=1');
$array = json_decode($list,TRUE);
if($array['ret']==200){
$result['code'] = 1;
$result['msg'] = 'SUCCESS!';
$result['url'] = url('batchAdd');
}else{
$result['code'] = 0;
$result['msg'] = $array['msg'];
$result['url'] = url('batchAdd');
}
return $result;
}
//模拟菜系
$arrayCai = array(
1 => '湘菜',
2 => '粤菜',
3 => '川菜',
4 => '东北菜',
5 => '湖南菜',
);
$this->assign ('arrayCai',$arrayCai);
$this->assign ('list',$arr);
return $this->fetch();
}
}
\ No newline at end of file
... ...
{include file="common/head"/}
<div class="admin-main layui-anim layui-anim-upbit" ng-app="hd" ng-controller="ctrl">
<!--<form class="layui-form layui-form-pane">
<div class="layui-form-item" id="container">
<label class="layui-form-label">菜品名称</label>
<div class="layui-input-1">
<input type="text" name="name" ng-model="field.name" lay-verify="required" placeholder="{:lang('pleaseEnter')}图片/视频名称" class="layui-input">
</div>
<label class="layui-form-label">菜系</label>
<div class="layui-input-1">
<select name="class" id="class" lay-filter="myselect">
<option value="">请选择类别</option>
<option value="22222">22222</option>
</select>
</div>
<label class="layui-form-label">菜品简介</label>
<div class="layui-input-2">
<textarea name="content" style="text-align:left;" class="layui-input"></textarea>
</div>
<label class="layui-form-label">菜品图片</label>
<input type="hidden" name="pic" id="pic" value="{{field.pic}}">
<div class="layui-input-1">
<div class="layui-upload">
<button type="button" class="layui-btn layui-btn-primary" id="adBtn"><i class="icon icon-upload3"></i>点击上传</button>
<div class="layui-upload-list">
<img class="layui-upload-img" id="adPic">
<p id="demoText"></p>
<video src="" id="adVideo" controls="controls" style="width: 300px;height: 200px;display: none">
您的浏览器不支持 video 标签。
</video>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
</div>
</div>
</form>-->
<div id="mainContent" class="main-content">
<form class="layui-form layui-form-pane">
<div class="table-responsive">
<table class="layui-table">
<thead>
<tr>
<th class='col-name required has-btn'>菜品名称</th>
<th class='w-150px'>菜系</th>
<th class='w-100px hidden'>菜品简介</th>
<th class='w-150px hidden'>菜品图片</th>
</tr>
</thead>
<tbody>
{volist name="list" id="vo"}
<tr>
<td>
<div class="layui-input-10">
<input type="text" name="name{$vo}" ng-model="field.name{$vo}" lay-verify="required" placeholder="{:lang('pleaseEnter')}图片/视频名称" class="layui-input">
</div>
</td>
<td>
<select name="class{$vo}" id="class{$vo}" lay-filter="myselect{$vo}">
<option value="0">同上</option>
{volist name="arrayCai" id="item"}
<option value="{$key}">{$item}</option>
{/volist}
</select>
</td>
<td>
<textarea name="spec{$vo}" id="spec{$vo}" rows="1" class="layui-input"></textarea>
</td>
<td>
<input type="hidden" name="pic{$vo}" id="pic{$vo}" value="{{field.pic}}">
<div class="layui-input-1">
<div class="layui-upload">
<button type="button" class="layui-btn layui-btn-primary adbtncil" id="{$vo}"><i class="icon icon-upload3"></i>点击上传</button>
<p style="display:none" id="tip{$vo}"><font color="#FF0000" size="5px;">✔</font>️</p>
</div>
</div>
</td>
</tr>
{/volist}
</tbody>
<tfoot>
<tr>
<td colspan="4">
<button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
<a href='javascript:history.go(-1);' class='layui-btn layui-btn-primary' >返回</a>
</td>
</tr>
</tfoot>
</table>
</div>
</form>
</div>
</div>
{include file="common/foot"/}
<script src="/static/common/js/angular.min.js"></script>
<script>
var m = angular.module('hd',[]);
m.controller('ctrl',['$scope',function($scope) {
$scope.field = {type_id:'',name:'',url:'',open:1,sort:50,pic:'',content:''};
layui.use(['form','layer','upload'], function () {
var form = layui.form, $ = layui.jquery, upload = layui.upload;
if($scope.field.pic){
adPic.src = $scope.field.pic;
}
form.on('submit(submit)', function (data) {
// 提交到方法 默认为本身
var loading = layer.load(1, {shade: [0.1, '#fff']});
$.post("{:url('batchAdd')}", data.field, function (res) {
layer.close(loading);
if (res.code > 0) {
layer.msg(res.msg, {time: 1800, icon: 1}, function () {
location.href = res.url;
});
} else {
layer.msg(res.msg, {time: 1800, icon: 2});
}
});
});
//GIF/视频上传
var uploadInst = upload.render({
elem: '.adbtncil'
,url: '{:url("UpFiles/qncloud")}'
,before: function(obj){
//预读本地文件示例,不支持ie8
obj.preview(function(index, file, result){
//console.log(index); //得到文件索引
//不处理
});
},done: function(res){
var item = this.item;
if(res.code>0){
$('#pic'+item.context.id).val(res.url);
$('#tip'+item.context.id).css('display', 'block');
return layer.msg('上传成功');
}else{
//如果上传失败
return layer.msg('上传失败');
}
}
});
});
}]);
</script>
\ No newline at end of file
... ...
... ... @@ -10,6 +10,9 @@
<a href="{:url('uploadFile')}" class="layui-btn layui-btn-sm">
<i class="fa fa-file-image-o"></i> GIF图片、短视频上传
</a>
<a href="{:url('Vegetable')}" class="layui-btn layui-btn-sm">
<i class="fa fa-file-image-o"></i> 菜品库
</a>
</blockquote>
<table class="layui-table" id="list" lay-filter="list"></table>
</div>
... ...
... ... @@ -10,6 +10,9 @@
<a href="{:url('uploadFile')}" class="layui-btn layui-btn-sm layui-btn-danger">
<i class="fa fa-file-image-o"></i> GIF图片、短视频上传
</a>
<a href="{:url('Vegetable')}" class="layui-btn layui-btn-sm">
<i class="fa fa-file-image-o"></i> 菜品库
</a>
</blockquote>
<form class="layui-form layui-form-pane">
<div class="layui-form-item">
... ...
{include file="common/head"/}
<div class="admin-main layui-anim layui-anim-upbit" ng-app="hd" ng-controller="ctrl">
<fieldset class="layui-elem-field layui-field-title">
<legend>{$title}</legend>
</fieldset>
<blockquote class="layui-elem-quote">
<a href="{:url('sellerList')}" class="layui-btn layui-btn-sm">
<i class="fa fa-file-image-o"></i> 商家信息列表
</a>
<a href="{:url('uploadFile')}" class="layui-btn layui-btn-sm">
<i class="fa fa-file-image-o"></i> GIF图片、短视频上传
</a>
<a href="{:url('Vegetable')}" class="layui-btn layui-btn-sm layui-btn-danger">
<i class="fa fa-file-image-o"></i> 菜品库
</a>
</blockquote>
<form class="layui-form layui-form-pane">
<div class="layui-form-item" id="container">
<label class="layui-form-label">菜品名称</label>
<div class="layui-input-1">
<input type="text" name="name" ng-model="field.name" lay-verify="required" placeholder="{:lang('pleaseEnter')}图片/视频名称" class="layui-input">
</div>
<label class="layui-form-label">菜系</label>
<div class="layui-input-1">
<select name="class" id="class" lay-filter="myselect">
{volist name="arrayCai" id="item"}
<option value="{$key}">{$item}</option>
{/volist}
</select>
</div>
<label class="layui-form-label">菜品简介</label>
<div class="layui-input-2">
<textarea name="content" style="text-align:left;" class="layui-input"></textarea>
</div>
<label class="layui-form-label">菜品图片</label>
<input type="hidden" name="pic" id="pic" value="{{field.pic}}">
<div class="layui-input-1">
<div class="layui-upload">
<button type="button" class="layui-btn layui-btn-primary" id="adBtn"><i class="icon icon-upload3"></i>点击上传</button>
<div class="layui-upload-list">
<img class="layui-upload-img" id="adPic">
<p id="demoText"></p>
<video src="" id="adVideo" controls="controls" style="width: 300px;height: 200px;display: none">
您的浏览器不支持 video 标签。
</video>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<button type="button" class="layui-btn" lay-submit="" lay-filter="submit">{:lang('submit')}</button>
<a href="JavaScript:;" onclick="clickIframe();" class="layui-btn layui-btn-primary">批量添加</a>
</div>
</div>
</form>
</div>
{include file="common/foot"/}
<script src="/static/common/js/angular.min.js"></script>
<script>
var m = angular.module('hd',[]);
m.controller('ctrl',['$scope',function($scope) {
$scope.field = {type_id:'',name:'',url:'',open:1,sort:50,pic:'',content:''};
layui.use(['form','layer','upload'], function () {
var form = layui.form, $ = layui.jquery, upload = layui.upload;
if($scope.field.pic){
adPic.src = $scope.field.pic;
}
form.on('submit(submit)', function (data) {
// 提交到方法 默认为本身
var loading = layer.load(1, {shade: [0.1, '#fff']});
$.post("{:url('Vegetable')}", data.field, function (res) {
layer.close(loading);
if (res.code > 0) {
layer.msg(res.msg, {time: 1800, icon: 1}, function () {
location.href = res.url;
});
} else {
layer.msg(res.msg, {time: 1800, icon: 2});
}
});
});
//GIF/视频上传
var uploadInst = upload.render({
elem: '#adBtn'
,url: '{:url("UpFiles/qncloud")}'
,before: function(obj){
//预读本地文件示例,不支持ie8
obj.preview(function(index, file, result){
if(result.substring(5,10)=="image"){
$('#adPic').attr('src', result); //图片链接(base64)
$('#adPic').css('display', 'block');
$("#adVideo").css('display', 'none');
}else{
$("#adVideo").get(0).src=result; //图片链接(base64)
$("#adVideo").css('display', 'block');
$('#adPic').css('display', 'none');
}
});
},done: function(res){
if(res.code>0){
$('#pic').val(res.url);
return layer.msg('上传成功');
}else{
//如果上传失败
return layer.msg('上传失败');
}
}
,error: function(){
//演示失败状态,并实现重传
var demoText = $('#demoText');
demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
demoText.find('.demo-reload').on('click', function(){
uploadInst.upload();
});
}
});
});
}]);
function clickIframe(){
//iframe弹层
layer.open({
type: 2,
title: '批量添加',
shadeClose: true,
shade: 0.8,
area: ['90%', '90%'],
content: 'batchAdd/' //iframe的url
});
}
</script>
\ No newline at end of file
... ...