包间管理页面

This commit is contained in:
fengjh5 2024-05-13 16:35:15 +08:00
parent e122c4ac26
commit 5f51b161bf
5 changed files with 441 additions and 1 deletions

View File

@ -15,6 +15,7 @@ class Order extends CI_Controller
$this->load->model('dish_model'); $this->load->model('dish_model');
$this->load->model('meal_model'); $this->load->model('meal_model');
$this->load->helper('common'); $this->load->helper('common');
$this->load->library('lw_db', array('tb_name' => 'tb_dining_hall'), 'tb_dining_hall');
$this->pageTitle = "订单管理"; $this->pageTitle = "订单管理";
$this->asset = $this->lw_assets->validate($this->asset); $this->asset = $this->lw_assets->validate($this->asset);
@ -916,7 +917,7 @@ class Order extends CI_Controller
public function index_bj() public function index_bj()
{ {
$data['asset'] = $this->asset; $data['asset'] = $this->asset;
$data['pageTitle'] = $this->pageTitle; $data['pageTitle'] = "包间订单管理";
$data['breadcrumb'] = array(array('包间订单管理', null)); $data['breadcrumb'] = array(array('包间订单管理', null));
$hallId = $this->session->userdata('hallId'); $hallId = $this->session->userdata('hallId');
$data['deliverPlaceList'] = $this->order_model->get_deliver_place($hallId); $data['deliverPlaceList'] = $this->order_model->get_deliver_place($hallId);
@ -1175,4 +1176,70 @@ class Order extends CI_Controller
} }
public function index_bjgl()
{
$data['asset'] = $this->asset;
$data['pageTitle'] = "包间管理";
$data['breadcrumb'] = array(array('包间管理',null));
$this->lw_load->normalLoad($data, 'order/bj/bjgl/index');
}
public function lists_bjgl($page)
{
$post = $this->input->post();
$data = $this->order_model->getALLbjData($page,$post);
$this->rs['html'] = $this->load->view('order/bj/bjgl/list', $data, true);
$this->rs['msg'] = '列表';
$this->rs['success'] = true;
lwReturn($this->rs);
}
/**
* 添加控制器方法操作: type = 1 是控制器 type = 2 是方法
* 初始化一个空的控制器或方法,然后编辑操作
*/
public function add_bjgl()
{
$this->edit_bjgl(0);
}
public function edit_bjgl($id, $action = 'edit')
{
$diningHalls = $this->session->userdata("hallIds");
$post = $this->input->post();
$actionName = $id === 0 ? '添加' : '编辑';
if (isset($post['doSubmit'])) {
// 提交
$rs = $this->order_model->editbjData($id, $post, $actionName);
lwReturn($rs);
} else {
// 渲染视图
if ($id != 0){
$data['dataList']['id'] = $id;
$data['dataList']['bjData'] = $this->order_model->getBjData($id);
}
$data['dataList']['diningList'] = $this->tb_dining_hall->get_all('*',array('enabled'=>1,'company_id' => $this->session->companyId));
$this->rs['msg'] = '列表';
$this->rs['success'] = true;
$this->rs['html'] = $this->load->view('order/bj/bjgl/edit', $data, true);
lwReturn($this->rs);
//// lwReturn($this->rs);
// echo $this->load->view('order/bj/bjgl/edit', $data,true);
}
}
public function del_bjgl($id,$enabled = 1)
{
$update_state = $this->order_model->delorRebj($id,$enabled);
if(!$update_state){
$this->rs['success'] = false;
$this->rs['msg'] = '更新包间状态失败';
}else{
$this->rs['success'] = true;
$this->rs['msg'] = '更新包间状态成功';
}
lwReturn($this->rs);
}
} }

View File

@ -5,6 +5,8 @@ class Order_model extends CI_Model
{ {
parent::__construct(); parent::__construct();
$this->load->database(); $this->load->database();
$this->load->helper('common');
$this->load->library('lw_db', array('tb_name' => 'tb_order_deliver_place'), 'tb_order_deliver_place');
} }
/* /*
@ -193,4 +195,63 @@ class Order_model extends CI_Model
$receive_meal_num_list = $this->db->query("select dish_ids from tb_dish_receive_meal where company_id='{$company_id}' and status='1'")->row_array(); $receive_meal_num_list = $this->db->query("select dish_ids from tb_dish_receive_meal where company_id='{$company_id}' and status='1'")->row_array();
return $this->db->query("select * from tb_dish where enabled='1' and id in ({$receive_meal_num_list['dish_ids']})")->result_array(); return $this->db->query("select * from tb_dish where enabled='1' and id in ({$receive_meal_num_list['dish_ids']})")->result_array();
} }
public function getBjData($id) {
$sql = "
select a.*,b.name as diningName,b.id as diningId from tb_order_deliver_place a left join tb_dining_hall b on a.dining_hall_id = b.id where a.id = ('{$id}')
";
return $this->db->query($sql)->row_array();
}
//获取所有包间信息
public function getALLbjData($page)
{
$this->load->library('lw_pagination2');
$param = $this->input->post('param');
$diningHalls = $this->session->userdata("hallIds");
$sql = "
select a.*,b.name as diningName from tb_order_deliver_place a left join tb_dining_hall b on a.dining_hall_id = b.id where a.dining_hall_id in ({$diningHalls})
";
$hasWhere = true;
$group = null;
$order = "a.id ASC";
$action = "getListByPage";
$dataName = 'dataList';
$paramFilter = array('a.name');
$data = $this->lw_pagination2->lists($sql, $param, $page, $hasWhere, $group, $order, $action, $dataName, $paramFilter);
return $data;
}
public function editbjData($id, $post, $actionName)
{
$rowExist = array();
if (empty($post['name'])) {
$this->rs['msg'] = '包间名不能为空, 请重新输入';
return $this->rs;
}
unset($post['doSubmit']);
$rowExist = $this->tb_order_deliver_place->check_exist(array('name' => $post['name'],'dining_hall_id' => $post['dining_hall_id'], 'enabled' => 1));
if ($rowExist) {
$this->rs['msg'] = '名称已经存在, 请重新输入';
return $this->rs;
}
if ($id == 0) {
$post['enabled'] = 1;
$result = $this->tb_order_deliver_place->insert($post);
} else {
$result = $this->tb_order_deliver_place->update($post, array('id' => $id));
}
if ($result) {
$this->rs['success'] = true;
$this->rs['msg'] = $actionName . '成功';
} else {
$this->rs['msg'] = $actionName . '失败';
}
return $this->rs;
}
public function delorRebj($id , $enabled) {
$update_state = $this->db->update("tb_order_deliver_place", array('enabled'=> $enabled), array('id' => $id));
return $update_state;
}
} }

View File

@ -0,0 +1,86 @@
<div class="modal-dialog modal-lg">
<div class="modal-content">
<form id="submitForm">
<div class="modal-header">
<button aria-label="Close" data-dismiss="modal" class="close" type="button"><span aria-hidden="true">×</span></button>
<h4 class="modal-title">编辑包间信息</h4>
</div>
<div class="modal-body">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">基础信息</h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i>
</button>
</div>
</div><!-- /.box-header -->
<div class="box-body">
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label>包间名称<span class="required"> * </span></label>
<input name="name" type="text" class="form-control" value="<?php if (!empty($dataList['id'])) echo($dataList['bjData']['name']);?>" placeholder="请输入包间名称(必填)">
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<label>关联饭堂<span class="required"> * </span></label>
<select name="dining_hall_id" class="form-control select2">
<?php foreach($dataList['diningList'] as $k=>$v): ?>
<option value="<?=$v['id']?>"><?=$v['name']?></option>
<?php endforeach;?>
</select>
</div>
</div>
</div>
</div><!-- ./box-body -->
</div><!-- /.box -->
</div>
<div class="modal-footer">
<button data-dismiss="modal" class="btn btn-default" type="button">关闭</button>
<button id="submitBtn" type="submit" name="doSubmit" class="btn btn-primary">确认</button>
</div>
</form>
</div><!-- /.modal-content -->
</div>
<script>
$(function() {
var submitForm = $('#submitForm');
submitForm.validate({
rules: {
rules: {
name: {
minlength: 2,
required: true
},
dining_id: {
minlength: 1,
required: true
}
}
},
submitHandler: function(form) {
cancelClick("submitBtn");
submitForm.ajaxSubmit({
url: "<?= site_url('order/edit_bjgl')?>/"+<?php if (empty($dataList['id']))echo 0;else echo($dataList['bjData']['id']);?>,
type: 'post',
success: function(data) {
var data = JSON.parse(data);
if (typeof(data.success) != "undefined") {
$.zui.messager.show(data.msg);
if (data.success) {
$("#modalView").modal('hide');
getListByPage(1);
}
}
},
resetForm: true
});
}
});
});
</script>

View File

@ -0,0 +1,111 @@
<?php
/**
* Created by PhpStorm.
* User: liuwei
* Date: 2018/6/7
* Time: 上午11:05
*/
?>
<div class="row">
<div class="col-md-12">
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">筛选与添加</h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div>
</div><!-- /.box-header -->
<div class="box-body">
<div class="row">
<div class="form-body">
<div class="col-md-6 col-md-offset-3">
<label>包间名称</label>
<input type="text" id="search-name" class="form-control" placeholder="请输入包间名">
</div>
</div><!-- /.box-body -->
</div><!-- /.row -->
</div><!-- ./box-body -->
<div class="box-footer">
<div class="row col-md-12">
<div class="col-md-2 col-md-offset-4">
<button id="btn-add" class="btn btn-primary btn-block" type="button"><i class="fa fa-plus"></i>
添加包间
</button>
</div>
<div class="col-md-2 col-md-offset-4">
<button id="btn-search" class="btn btn-success btn-block" type="button"><i class="fa fa-search"></i> 搜索
</button>
</div>
</div><!-- /.row -->
</div><!-- /.box-footer -->
</div><!-- /.box -->
</div><!-- /.col -->
<div class="col-md-12">
<div class="box">
<div class="box-header">
<h3 class="box-title">列表</h3>
<div class="box-tools pull-right">
<button class="btn btn-box-tool" data-widget="collapse"><i class="fa fa-minus"></i></button>
</div>
</div><!-- /.box-header -->
<div class="box-body">
<div id="dataList" class="row col-md-12">
<!--动态ajax加载博文-->
</div>
</div>
</div><!-- /.box -->
</div><!-- /.col -->
</div><!-- /.row -->
<div class="modal fade" tabindex="-1" data-attention-animation="true" id="modalView"></div>
<script>
var btnSearch = $("#btn-search");
var btnAdd = $("#btn-add");
// btnSearch.on('click', function() {
// getListByPage(1);
// })
$(function() {
// initBind();
getListByPage(1);
});
// // DOM 元素绑定事件
// function initBind() {
// btnSearch.on('click', function() {
// getListByPage(1);
// })
// }
// 获取列表数据
function getListByPage(page) {
var param = getParam();
$.ajax({
url: "<?= site_url('order/lists_bjgl') ?>/" + page,
data: {
param: JSON.stringify(param)
},
type: 'post',
dataType: 'json',
success: function(data) {
if (data.success) {
$("#dataList").html(data.html);
} else {
$.zui.messager.show(data.msg);
}
}
});
}
// 获取列表参数
function getParam() {
var param = {};
var paramLike = {};
var name = $("#search-name").val().trim();
if (name !== "") {
paramLike['a.name'] = name;
}
param['like'] = paramLike;
return param;
}
</script>

View File

@ -0,0 +1,115 @@
<?php
/**
* Created by PhpStorm.
* User: liuwei
* Date: 2018/6/7
* Time: 下午3:32
*/
?>
<div class="row table-responsive no-padding">
<div class="col-md-12">
<table class="table table-hover">
<thead>
<tr>
<th>#</th>
<th>包间名字</th>
<th>包间关联饭堂</th>
<!-- <th>包间状态</th>-->
<th width="250px">操作</th>
</tr>
</thead>
<tbody>
<?php if (!$dataList) {
echo "<td>当前没有数据</td>";
} else {
$i = 1;
foreach ($dataList as $data) : ?>
<tr>
<td><?= $i ?></td>
<td><?= $data['name'] ?></td>
<td><?= $data['diningName'] ?></td>
<td>
<button data-id="<?= $data['id'] ?>" class="btn btn-primary btn-sm btn-edit"><i class="fa fa-edit"></i> 编辑</button>
<?php
if ($data['enabled'] != 1){
echo "<button name='id' data-id=".$data['id']." class='btn btn-primary btn-sm btn-success'><i class='fa fa-edit'></i> 复通</button>";
}else{
echo "<button data-id=".$data['id']." class='btn btn-danger btn-sm btn-del'><i class='fa fa-edit'></i> 停用</button>";
}
?>
</td>
</tr>
<?php $i++;
endforeach;
} ?>
</tbody>
</table>
</div>
</div><!-- /.row -->
<div class="row">
<div class="text-center">
<?php if (isset($pageHtml)) {
echo $pageHtml;
} ?>
</div>
</div><!-- /.row -->
<script>
$(function() {
// 编辑操作绑定
$(".btn-edit").on('click', function() {
var id = $(this).data('id');
$.ajax({
url: "<?= site_url('order/edit_bjgl') ?>/" + id,
type: 'post',
dataType: 'json',
success: function(data) {
console.log(data);
if (data.success) {
console.log('成功');
$("#modalView").html(data.html);
$("#modalView").modal();
} else {
$.zui.messager.show(data.msg);
}
}
})
});
// 删除操作绑定
$(".btn-del").on('click', function() {
if (confirm("确定停用?")) {
var id = $(this).data('id');
$.ajax({
url: "<?= site_url('order/del_bjgl') ?>/" + id + "/-1",
type: 'post',
dataType: 'json',
success: function(data) {
$.zui.messager.show(data.msg);
if (data.success) {
getListByPage(1);
}
}
});
}
});
// 复通操作绑定
$(".btn-success").on('click', function() {
var id = $(this).data('id');
$.ajax({
url: "<?= site_url('order/del_bjgl') ?>/" + id + "/1",
type: 'post',
dataType: 'json',
success: function(data) {
$.zui.messager.show(data.msg);
if (data.success) {
getListByPage(1);
}
}
});
});
})
</script>