You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
276 lines
10 KiB
276 lines
10 KiB
<?php
|
|
|
|
/**
|
|
* ECSHOP 缺货处理管理程序
|
|
* ============================================================================
|
|
* * 版权所有 2005-2016 上海商创网络科技有限公司,并保留所有权利。
|
|
* 网站地址: http://www.ecmoban.com;
|
|
* ----------------------------------------------------------------------------
|
|
* 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和
|
|
* 使用;不允许对程序代码以任何形式任何目的的再发布。
|
|
* ============================================================================
|
|
* $Author: liubo $
|
|
* $Id: goods_booking.php 17217 2011-01-19 06:29:08Z liubo $
|
|
*/
|
|
|
|
define('IN_ECS', true);
|
|
|
|
require(dirname(__FILE__) . '/includes/init.php');
|
|
admin_priv('booking');
|
|
/*------------------------------------------------------ */
|
|
//-- 列出所有订购信息
|
|
/*------------------------------------------------------ */
|
|
if ($_REQUEST['act']=='list_all')
|
|
{
|
|
$smarty->assign('ur_here', $_LANG['list_all']);
|
|
$smarty->assign('full_page', 1);
|
|
|
|
$list = get_bookinglist();
|
|
|
|
//ecmoban模板堂 --zhuo start
|
|
$adminru = get_admin_ru_id();
|
|
$ruCat = '';
|
|
if($adminru['ru_id'] == 0){
|
|
$smarty->assign('priv_ru', 1);
|
|
}else{
|
|
$smarty->assign('priv_ru', 0);
|
|
}
|
|
//ecmoban模板堂 --zhuo end
|
|
|
|
$smarty->assign('booking_list', $list['item']);
|
|
$smarty->assign('filter', $list['filter']);
|
|
$smarty->assign('record_count', $list['record_count']);
|
|
$smarty->assign('page_count', $list['page_count']);
|
|
|
|
$sort_flag = sort_flag($list['filter']);
|
|
$smarty->assign($sort_flag['tag'], $sort_flag['img']);
|
|
|
|
assign_query_info();
|
|
$smarty->display('booking_list.htm');
|
|
}
|
|
|
|
/*------------------------------------------------------ */
|
|
//-- 翻页、排序
|
|
/*------------------------------------------------------ */
|
|
if ($_REQUEST['act'] == 'query')
|
|
{
|
|
$list = get_bookinglist();
|
|
|
|
//ecmoban模板堂 --zhuo start
|
|
$adminru = get_admin_ru_id();
|
|
$ruCat = '';
|
|
if($adminru['ru_id'] == 0){
|
|
$smarty->assign('priv_ru', 1);
|
|
}else{
|
|
$smarty->assign('priv_ru', 0);
|
|
}
|
|
//ecmoban模板堂 --zhuo end
|
|
|
|
$smarty->assign('booking_list', $list['item']);
|
|
$smarty->assign('filter', $list['filter']);
|
|
$smarty->assign('record_count', $list['record_count']);
|
|
$smarty->assign('page_count', $list['page_count']);
|
|
|
|
$sort_flag = sort_flag($list['filter']);
|
|
$smarty->assign($sort_flag['tag'], $sort_flag['img']);
|
|
|
|
make_json_result($smarty->fetch('booking_list.htm'), '',
|
|
array('filter' => $list['filter'], 'page_count' => $list['page_count']));
|
|
}
|
|
|
|
/*------------------------------------------------------ */
|
|
//-- 删除缺货登记
|
|
/*------------------------------------------------------ */
|
|
|
|
if ($_REQUEST['act'] == 'remove')
|
|
{
|
|
check_authz_json('booking');
|
|
|
|
$id = intval($_GET['id']);
|
|
|
|
$db->query("DELETE FROM " .$ecs->table('booking_goods'). " WHERE rec_id='$id'");
|
|
|
|
$url = 'goods_booking.php?act=query&' . str_replace('act=remove', '', $_SERVER['QUERY_STRING']);
|
|
|
|
ecs_header("Location: $url\n");
|
|
exit;
|
|
}
|
|
|
|
/*------------------------------------------------------ */
|
|
//-- 显示详情
|
|
/*------------------------------------------------------ */
|
|
if ($_REQUEST['act']=='detail')
|
|
{
|
|
$id = intval($_REQUEST['id']);
|
|
|
|
$smarty->assign('send_fail', !empty($_REQUEST['send_ok']));
|
|
$smarty->assign('booking', get_booking_info($id));
|
|
$smarty->assign('ur_here', $_LANG['detail']);
|
|
$smarty->assign('action_link', array('text' => $_LANG['06_undispose_booking'], 'href'=>'goods_booking.php?act=list_all'));
|
|
$smarty->display('booking_info.htm');
|
|
}
|
|
|
|
/*------------------------------------------------------ */
|
|
//-- 处理提交数据
|
|
/*------------------------------------------------------ */
|
|
if ($_REQUEST['act'] =='update')
|
|
{
|
|
/* 权限判断 */
|
|
admin_priv('booking');
|
|
|
|
$dispose_note = !empty($_POST['dispose_note']) ? trim($_POST['dispose_note']) : '';
|
|
|
|
$sql = "UPDATE ".$ecs->table('booking_goods').
|
|
" SET is_dispose='1', dispose_note='$dispose_note', ".
|
|
"dispose_time='" .gmtime(). "', dispose_user='".$_SESSION['admin_name']."'".
|
|
" WHERE rec_id='$_REQUEST[rec_id]'";
|
|
$db->query($sql);
|
|
|
|
/* 邮件通知处理流程 */
|
|
if (!empty($_POST['send_email_notice']) or isset($_POST['remail']))
|
|
{
|
|
//获取邮件中的必要内容
|
|
$sql = 'SELECT bg.email, bg.link_man, bg.goods_id, g.goods_name ' .
|
|
'FROM ' .$ecs->table('booking_goods'). ' AS bg, ' .$ecs->table('goods'). ' AS g ' .
|
|
"WHERE bg.goods_id = g.goods_id AND bg.rec_id='$_REQUEST[rec_id]'";
|
|
$booking_info = $db->getRow($sql);
|
|
|
|
/* 设置缺货回复模板所需要的内容信息 */
|
|
$template = get_mail_template('goods_booking');
|
|
$goods_link = $ecs->url() . 'goods.php?id=' . $booking_info['goods_id'];
|
|
|
|
$smarty->assign('user_name', $booking_info['link_man']);
|
|
$smarty->assign('goods_link', $goods_link);
|
|
$smarty->assign('goods_name', $booking_info['goods_name']);
|
|
$smarty->assign('dispose_note', $dispose_note);
|
|
$smarty->assign('shop_name', "<a href='".$ecs->url()."'>" . $_CFG['shop_name'] . '</a>');
|
|
$smarty->assign('send_date', date('Y-m-d'));
|
|
|
|
$content = $smarty->fetch('str:' . $template['template_content']);
|
|
|
|
/* 发送邮件 */
|
|
if (send_mail($booking_info['link_man'], $booking_info['email'], $template['template_subject'], $content, $template['is_html']))
|
|
{
|
|
$send_ok = 0;
|
|
}
|
|
else
|
|
{
|
|
$send_ok = 1;
|
|
}
|
|
}
|
|
|
|
ecs_header("Location: ?act=detail&id=".$_REQUEST['rec_id']."&send_ok=$send_ok\n");
|
|
exit;
|
|
}
|
|
|
|
/**
|
|
* 获取订购信息
|
|
*
|
|
* @access public
|
|
*
|
|
* @return array
|
|
*/
|
|
function get_bookinglist()
|
|
{
|
|
|
|
//ecmoban模板堂 --zhuo start
|
|
$adminru = get_admin_ru_id();
|
|
$ruCat = '';
|
|
if($adminru['ru_id'] > 0){
|
|
$ruCat = " and g.user_id = '" .$adminru['ru_id']. "'";
|
|
}
|
|
//ecmoban模板堂 --zhuo end
|
|
|
|
/* 查询条件 */
|
|
$filter['keywords'] = empty($_REQUEST['keywords']) ? '' : trim($_REQUEST['keywords']);
|
|
if (isset($_REQUEST['is_ajax']) && $_REQUEST['is_ajax'] == 1)
|
|
{
|
|
$filter['keywords'] = json_str_iconv($filter['keywords']);
|
|
}
|
|
$filter['dispose'] = empty($_REQUEST['dispose']) ? 0 : intval($_REQUEST['dispose']);
|
|
$filter['sort_by'] = empty($_REQUEST['sort_by']) ? 'sort_order' : trim($_REQUEST['sort_by']);
|
|
$filter['sort_order'] = empty($_REQUEST['sort_order']) ? 'DESC' : trim($_REQUEST['sort_order']);
|
|
|
|
//ecmoban模板堂 --zhuo start
|
|
$sql = "select user_id from " .$GLOBALS['ecs']->table('merchants_shop_information'). " where shoprz_brandName LIKE '%" . mysql_like_quote($filter['keywords']) . "%' OR shopNameSuffix LIKE '%" . mysql_like_quote($filter['keywords']) . "%'";
|
|
$user_id = $GLOBALS['db']->getOne($sql);
|
|
|
|
if(empty($user_id)){
|
|
$user_id = 0;
|
|
}
|
|
|
|
$where_user = '';
|
|
if($user_id > 0){
|
|
$where_user = " OR (g.user_id in(" .$user_id. "))";
|
|
}
|
|
//ecmoban模板堂 --zhuo end
|
|
|
|
$where = (!empty($_REQUEST['keywords'])) ? " AND (g.goods_name LIKE '%" . mysql_like_quote($filter['keywords']) . "%' " .$where_user . ")" : '';
|
|
|
|
$where .= (!empty($_REQUEST['dispose'])) ? " AND bg.is_dispose = '$filter[dispose]' " : '';
|
|
|
|
$where .= $ruCat;
|
|
|
|
$sql = 'SELECT COUNT(*) FROM ' .$GLOBALS['ecs']->table('booking_goods'). ' AS bg, '.
|
|
$GLOBALS['ecs']->table('goods'). ' AS g '.
|
|
"WHERE bg.goods_id = g.goods_id $where";
|
|
$filter['record_count'] = $GLOBALS['db']->getOne($sql);
|
|
|
|
/* 分页大小 */
|
|
$filter = page_and_size($filter);
|
|
|
|
/* 获取活动数据 */
|
|
$sql = 'SELECT bg.rec_id, bg.link_man, g.goods_id, g.goods_name, g.user_id, bg.goods_number, bg.booking_time, bg.is_dispose '.
|
|
'FROM ' .$GLOBALS['ecs']->table('booking_goods'). ' AS bg, ' .$GLOBALS['ecs']->table('goods'). ' AS g '.
|
|
"WHERE bg.goods_id = g.goods_id $where " .
|
|
"ORDER BY $filter[sort_by] $filter[sort_order] ".
|
|
"LIMIT ". $filter['start'] .", $filter[page_size]";
|
|
$row = $GLOBALS['db']->getAll($sql);
|
|
|
|
foreach ($row AS $key => $val)
|
|
{
|
|
$row[$key]['booking_time'] = local_date($GLOBALS['_CFG']['time_format'], $val['booking_time']);
|
|
|
|
$data = array('shoprz_brandName', 'shop_class_keyWords', 'shopNameSuffix');
|
|
$shop_info = get_table_date('merchants_shop_information', "user_id = '" .$val['user_id']. "'", $data);
|
|
$row[$key]['user_name'] = $shop_info['shoprz_brandName'].$shop_info['shopNameSuffix'];
|
|
}
|
|
$filter['keywords'] = stripslashes($filter['keywords']);
|
|
$arr = array('item' => $row, 'filter' => $filter, 'page_count' => $filter['page_count'], 'record_count' => $filter['record_count']);
|
|
|
|
return $arr;
|
|
}
|
|
|
|
/**
|
|
* 获得缺货登记的详细信息
|
|
*
|
|
* @param integer $id
|
|
*
|
|
* @return array
|
|
*/
|
|
function get_booking_info($id)
|
|
{
|
|
global $ecs, $db, $_CFG, $_LANG;
|
|
|
|
$sql ="SELECT bg.rec_id, bg.user_id, IFNULL(u.user_name, '$_LANG[guest_user]') AS user_name, ".
|
|
"bg.link_man, g.goods_name, bg.goods_id, bg.goods_number, ".
|
|
"bg.booking_time, bg.goods_desc,bg.dispose_user, bg.dispose_time, bg.email, ".
|
|
"bg.tel, bg.dispose_note ,bg.dispose_user, bg.dispose_time,bg.is_dispose ".
|
|
"FROM " . $ecs->table('booking_goods')." AS bg ".
|
|
"LEFT JOIN " . $ecs->table('goods') . " AS g ON g.goods_id=bg.goods_id ".
|
|
"LEFT JOIN " . $ecs->table('users') . " AS u ON u.user_id=bg.user_id ".
|
|
"WHERE bg.rec_id ='$id'";
|
|
|
|
$res = $db->GetRow($sql);
|
|
|
|
/* 格式化时间 */
|
|
$res['booking_time'] = local_date($_CFG['time_format'],$res['booking_time']);
|
|
if (!empty($res['dispose_time']))
|
|
{
|
|
$res['dispose_time'] = local_date($_CFG['time_format'],$res['dispose_time']);
|
|
}
|
|
|
|
return $res;
|
|
}
|
|
|
|
?>
|