public function report()
 {
     $startTime = $this->_get('stime', '');
     //开始时间
     $endTime = $this->_get('etime', '');
     //结束时间
     $serviceId = $this->_getid('service_id', 0);
     //服务社
     $isOutput = $this->_getid('is_output', 0);
     //是否导出数据
     $cateId = $this->_getid('cid', 0);
     //类目
     $cateList = array(275 => '半成品菜', 273 => '预定下午茶');
     if (!isset($cateList[$cateId])) {
         showError('抱歉,该类目不允许查看');
     }
     if (!parent::_checkIsAdmin()) {
         if ($cateId != 275 || steadmin::$adminInfo['user_id'] != 291) {
             //半成品菜店长
             showError('抱歉,暂无权限');
         }
     }
     //取类目及所有子类目
     $cateAllList = M('ste_goods_cate')->where(array('city_id' => steadmin::$adminInfo['city_id'], 'is_del' => 0))->order('sort DESC')->select('id');
     $tidList = D('tree')->getSubs($cateAllList, $cateId, true);
     $cateId = $tidList['list'] ? implode(',', $tidList['list']) : $cateId;
     //默认报表时间为今天
     $today = mktime(0, 0, 0, date('m'), date('d'), date('Y'));
     $stime = mktime(0, 0, 0, date('m'), date('d') + 1, date('Y'));
     if (!$startTime) {
         $startTime = date('Y-m-d', $stime);
     }
     if (!$endTime) {
         $endTime = date('Y-m-d', $stime);
     }
     if ($startTime && $endTime) {
         $startTime = inTime($startTime);
         $endTime = inTime($endTime) + 60 * 60 * 24 - 1;
     }
     if ($serviceId) {
         $where = ' AND a.service_id=' . $serviceId;
         $sWhere = ' AND service_id=' . $serviceId;
     } else {
         $where = '';
         $sWhere = '';
     }
     if ($startTime < $today) {
         $statusList = '1,3,4,5,6,7,8,9,10,11';
     } else {
         $statusList = '1,3,4,5,6,7,8,9,10,11';
         //搜索状态:已支付、已审核、正在配货
     }
     //根据类目搜索所有的商品gid
     $where = '';
     $rs = M('ste_order')->query('SELECT a.order_id,a.order_sn,a.order_type,a.service_id,a.village_id,a.uid,a.address,a.phone,a.username,' . 'a.desc,a.arrive_date,a.arrive_time,a.order_source,a.status,a.order_time,a.goods_counts AS goods_total,b.gid,b.shop_id,b.goods_name,b.goods_counts,b.goods_price' . ' FROM __TABLE__ AS a LEFT JOIN __PRE__ste_order_goods AS b ON a.order_id=b.order_id WHERE a.arrive_date>=' . $startTime . ' AND a.arrive_date<=' . $endTime . ' AND a.status IN (' . $statusList . ') AND b.gid IN (
         SELECT gid FROM __PRE__ste_goods WHERE cate_id IN (' . $cateId . ') ' . $sWhere . '
         )' . $where . ' ORDER BY service_id ASC');
     //        z(M('ste_order')->getAllSql());
     //        z($rs);
     $orderList = array();
     $orderTotal = array();
     $serviceList = array();
     if ($rs) {
         foreach ($rs as $val) {
             //统计各个菜的数量
             $goodsName = md5($val['goods_name']);
             if (!isset($orderTotal[$goodsName])) {
                 $orderTotal[$goodsName] = array('name' => $val['goods_name'], 'counts' => $val['goods_counts'], 'item' => array());
             } else {
                 $orderTotal[$goodsName]['counts'] += $val['goods_counts'];
             }
             if (!isset($orderTotal[$goodsName]['item'][$val['service_id']])) {
                 $orderTotal[$goodsName]['item'][$val['service_id']] = array('name' => $this->serviceData[$val['service_id']]['stitle'], 'counts' => $val['goods_counts']);
             } else {
                 $orderTotal[$goodsName]['item'][$val['service_id']]['counts'] += $val['goods_counts'];
             }
             //按服务社统计菜单
             if (!isset($serviceList[$val['service_id']])) {
                 $serviceList[$val['service_id']] = array('service_name' => $this->serviceData[$val['service_id']]['stitle'], 'counts' => $val['goods_counts'], 'item' => array());
             } else {
                 $serviceList[$val['service_id']]['counts'] += $val['goods_counts'];
             }
             if (!isset($serviceList[$val['service_id']]['item'][$val['gid']])) {
                 $serviceList[$val['service_id']]['item'][$val['gid']] = array('name' => $val['goods_name'], 'counts' => $val['goods_counts']);
             } else {
                 $serviceList[$val['service_id']]['item'][$val['gid']]['counts'] += $val['goods_counts'];
             }
             //按订单号归类商品
             if (!isset($orderList[$val['order_id']])) {
                 $orderList[$val['order_id']] = array('order_id' => $val['order_id'], 'order_sn' => $val['order_sn'], 'order_type' => $val['order_type'], 'service_id' => $val['service_id'], 'service_name' => $this->serviceData[$val['service_id']]['stitle'], 'village_id' => $val['village_id'], 'village_name' => parent::getVillageName($val['village_id']), 'address' => $val['address'], 'phone' => $val['phone'], 'username' => $val['username'], 'desc' => $val['desc'], 'arrive_date' => $val['arrive_date'], 'arrive_time' => $val['arrive_time'], 'order_source' => $val['order_source'], 'status' => $val['status'], 'order_time' => $val['order_time'], 'goods_total' => $val['goods_total'], 'select_goods_total' => 0, 'list' => array());
             }
             $orderList[$val['order_id']]['list'][] = array('goods_name' => $val['goods_name'], 'goods_counts' => $val['goods_counts'], 'goods_price' => $val['goods_price']);
             $orderList[$val['order_id']]['select_goods_total'] += $val['goods_counts'];
         }
     }
     //        z($orderTotal);
     //        z($serviceList);
     if ($isOutput) {
         $dataList = array();
         $title = array('订单号', '收货人', '手机', '地址', '配送时间', '商品列表', '留言', '混合订单');
         foreach ($orderList as $val) {
             $list = array();
             foreach ($val['list'] as $v) {
                 $list[] = $v['goods_name'] . ' (x ' . $v['goods_counts'] . ')';
             }
             $dataList[] = array($val['order_sn'], $val['username'], $val['phone'], $val['address'], outTime($val['arrive_date'], 2) . ' ' . $val['arrive_time'], implode("\r\n", $list), $val['desc'], $val['goods_total'] == $val['select_goods_total'] ? '否' : '是');
         }
         if (isset($this->serviceData[$serviceId])) {
             $tname = $this->serviceData[$serviceId]['stitle'];
         } else {
             $tname = '全部';
         }
         $dataList[] = array('', '', '', '', '', '', '', '');
         $dataList[] = array('', '', '', '', '', '', '', '');
         $dataList[] = array('品类', '详细', '数量', '', '', '', '', '');
         //将统计信息附加到报表中
         foreach ($orderTotal as $val) {
             $list = array();
             foreach ($val['item'] as $v) {
                 $list[] = $v['name'] . ' (' . $v['counts'] . '份)';
             }
             $dataList[] = array($val['name'], implode('、', $list), $val['counts'], '', '', '', '', '');
         }
         $dataList[] = array('', '', '', '', '', '', '', '');
         $dataList[] = array('', '', '', '', '', '', '', '');
         $dataList[] = array('服务社', '详细', '数量', '', '', '', '', '');
         //将统计信息附加到报表中
         foreach ($serviceList as $val) {
             $list = array();
             foreach ($val['item'] as $v) {
                 $list[] = $v['name'] . ' (' . $v['counts'] . '份)';
             }
             $dataList[] = array($val['service_name'], implode("\r\n", $list), $val['counts'], '', '', '', '', '');
         }
         load('csv');
         $csv = new csv();
         $csv->write($title, $dataList, $cateList[$cateId] . '订单_' . $tname . date('Y-m-d H/i/s'));
     } else {
         $this->assign(array('rs' => $orderList, 'orderTotal' => $orderTotal, 'cid' => $cateId, 'service_id' => $serviceId, 'startTime' => $startTime, 'endTime' => $endTime, 'serviceList' => $serviceList, 'service' => $this->serviceData, 'setting' => $this->steSetting));
         $this->display();
     }
 }
 function save()
 {
     if (load('string')) {
         $feedback = array();
         $feedback['fb_time'] = $this->_post('fbtime', '');
         $feedback['fb_type'] = $this->_postid('fbtype', 0);
         $feedback['fb_status'] = $this->_postid('fbstatus', 0);
         $feedback['fb_content'] = $this->_post('fbcontent', '');
         $feedback['fb_upload'] = $this->_post('fbupload', '');
         $feedbackConfig = C('feedback');
         if (!isHave($feedbackConfig['type']) || !is_array($feedbackConfig['type']) || !isHave($feedbackConfig['maxLen']) || !is_numeric($feedbackConfig['maxLen'])) {
             return $this->JsonReturn('配置信息错误');
         }
         T('content/validate');
         $validation = array(array('fb_time', 'required', '请选择时间'), array('fb_type', 'required', '请选择类型'), array('fb_status', 'required', '请选择处理状态'), array('fb_content', 'required', '填填写反馈'), array('fb_content', 'max_length', '反馈内容请不要超过' . $feedbackConfig['maxLen'] . '个字符', $feedbackConfig['maxLen']));
         if (!isHave($feedbackConfig['type'][$feedback['fb_type']])) {
             return $this->JsonReturn('无该反馈类型' . $feedback['fb_type']);
         }
         if (!isHave($feedbackConfig['status'][$feedback['fb_status']])) {
             return $this->JsonReturn('无该处理结果');
         }
         if (!validate::check($validation, $feedback)) {
             return $this->JsonReturn(validate::getError());
         }
         // validate 中并没有如 2015-08-03 这样的无时间格式检查
         if (!strtotime($feedback['fb_time'])) {
             return $this->JsonReturn('时间错误');
         }
         /* TODO
          * 对于upload应该怎么样检查
          */
         $fb_insert = array('worker_uid' => steadmin::$adminInfo['user_id'], 'type_id' => $feedback['fb_type'], 'status_id' => $feedback['fb_status'], 'feedback' => $feedback['fb_content'], 'fb_time' => inTime($feedback['fb_time']), 'upload' => $feedback['fb_upload'], 'ct_time' => TIME);
         if (D('feedback')->insert($fb_insert)) {
             return $this->JsonReturn('保存成功,可继续添加反馈', null, 1);
         } else {
             return $this->JsonReturn('保存失败');
         }
     } else {
         $this->JsonReturn('加载string函数库时发生了错误');
     }
 }
 function daily()
 {
     $today = $this->_get('date', '');
     if (!isHave($today)) {
         return showError('请传入一个日期');
     }
     $query = array();
     $timestamp = inTime($today);
     $query['fb_time[>=]'] = $timestamp;
     $query['fb_time[<]'] = $timestamp + 86400;
     //
     $rs = D('serviceLog')->where($query)->findAll();
     $feedbackConfig = C('steward/service_log');
     foreach ($rs as $key => $value) {
         $rs[$key]['fb_time'] = outTime($value['fb_time'], 2);
         $rs[$key]['ct_time'] = outTime($value['ct_time'], 2);
     }
     $this->assign(array('today' => $today, 'rs' => $rs, 'type' => $feedbackConfig['type'], 'status' => $feedbackConfig['status']));
     $this->display();
 }
Exemplo n.º 4
0
<?php

session_start();
include 'config.php';
if (!isLogin()) {
    include 'notlogin.php';
    die;
}
if (!inTime()) {
    include 'timeout.php';
    die;
}
if (!isAdmin()) {
    die('You are not admin.');
}
?>
<link rel="stylesheet" type="text/css" href="addon/css/modal.css">
<script type="text/javascript">
	function compiler_message(id){
		$('#compiler_message-'+id).slideToggle('fast');
	}
	function code_watch(task,user){
		showModal('code_watcher');
		load();
		$('#code_watcher').text('');
		$('#code_watcher').load("addon/code_watcher.php?task="+task+"&user="+user,function(){
			unload();
		});
	}
	function showModal(id)
	{
 function saveFeedback()
 {
     if (load('string')) {
         $fb_time = removeXss($this->_post('fbtime', ''));
         $fb_type = strtolower(removeXss($this->_post('fbtype', '')));
         $fb_result = removeXss($this->_post('fbresult', ''));
         $fb_content = trim(removeXss($this->_post('feedbackContent', '')));
         $fb_upload = trim($this->_post('fb_upload', ''));
         $feedbackConfig = C('feedback');
         if (!isHave($feedbackConfig['type']) || !is_array($feedbackConfig['type']) || !isHave($feedbackConfig['maxLen']) || !is_numeric($feedbackConfig['maxLen'])) {
             return $this->JsonReturn('配置信息错误');
         }
         if (!preg_match('/^[_a-z]+$/', $fb_type)) {
             return $this->JsonReturn('反馈类型错误');
         }
         if (!isHave($feedbackConfig['type'][$fb_type])) {
             return $this->JsonReturn('无该反馈类型');
         }
         if (!preg_match('/^[_a-z]+$/', $fb_result)) {
             return $this->JsonReturn('请选择正确的处理结果');
         }
         if (!isHave($feedbackConfig['result'][$fb_result])) {
             return $this->JsonReturn('无该处理结果');
         }
         if (!strtotime($fb_time)) {
             return $this->JsonReturn('时间错误');
         }
         if (strlen($fb_content) <= 0) {
             return $this->JsonReturn('请填写反馈内容,最大长度2000字符');
         }
         if (strlen($fb_content) >= $feedbackConfig['maxLen']) {
             return $this->JsonReturn('反馈内容超出限制');
         }
         /* TODO
          * 对于upload应该怎么样检查
          */
         $feedback = array('worker_uid' => steadmin::$adminInfo['user_id'], 'type' => $feedbackConfig['type'][$fb_type]['id'], 'result' => $feedbackConfig['result'][$fb_result]['id'], 'content' => $fb_content, 'fb_time' => inTime($fb_time), 'fb_upload' => $fb_upload);
         if (D('feedback')->save($feedback)) {
             return $this->JsonReturn('保存成功,可继续添加反馈', null, 1);
         } else {
             return $this->JsonReturn('保存失败');
         }
     } else {
         $this->JsonReturn('加载string函数库时发生了错误');
     }
 }
Exemplo n.º 6
0
	font-size: 11px;
}
.detail_wrapper{
	padding: 0px;
}
.option {
	padding: 10px;
	float: left;
}
.option:hover {
	background: rgb(255,255,255);
}
</style>
<div id="rank" class="container_12">
<?php 
if ($config['mode'] == 'blind_contest' && inTime() && !isAdmin()) {
    ?>
	<div class="grid_12" align="center">
		<h1>จะมีการจัดอันดับเมื่อการแข่งขันจบ</h1>
	</div>
<?php 
} else {
    $query = 'select * from `latest` where (`user_id`) in (select `user_id` from `user` where `level` = 1) order by `user_id` asc, `task_id` asc;';
    $sql->prepare($query);
    $sql->execute();
    $sql->bind_result($latest_id, $user_id, $task_id, $score, $timeused, $text);
    $a = newSqli();
    $b = $a->stmt_init();
    $cnt = -1;
    $old_id = -1;
    $info = array(array());
 function save()
 {
     $id = $this->_postid('id', 0);
     if (!$id) {
         $this->JsonReturn('参数丢失');
     }
     $objData = array();
     $noFields = array('logincount', 'loginip', 'logintime', 'regdateline', 'build_uid', 'shop_id', 'unionid');
     if (!parent::_checkIsAdmin()) {
         $noFields = array_merge($noFields, array('city_id', 'service_id'));
     }
     //获取字段内容
     $fieldList = D('steadmin')->getTableFields($noFields);
     foreach ($fieldList['fields'] as $key => $val) {
         $objData[$key] = $val['type'] == 'int' ? $this->_postid($key, $val['value']) : $this->_post($key, $val['value']);
     }
     $objData['repsw'] = $this->_post('repsw');
     $rs = D('steadmin')->where(array('user_id' => $id))->find();
     if (!parent::_checkIsPresident() && !parent::_checkIsAdmin() && $rs['user_id'] != steadmin::$adminInfo['user_id'] && $rs['build_uid'] !== steadmin::$adminInfo['user_id']) {
         $this->JsonReturn('权限不足');
     }
     //社长
     if (parent::_checkIsPresident()) {
         if ($rs['service_id'] !== steadmin::$adminInfo['service_id']) {
             $this->JsonReturn('权限不足');
         } else {
             $objData['service_id'] = steadmin::$adminInfo['service_id'];
         }
     }
     //内容规则检查
     T('content/validate');
     $validate = array(array('username', 'username', '帐户名称不符合要求', 2, 30), array('real_name', 'username', '真实姓名不符合要求', 2, 30), array('phone', 'phone', '手机号码不符合要求'));
     if ($objData['psw']) {
         $validate[] = array('psw', 'min_length', '密码长度必须大于4位', 4);
     }
     $infoData = array('nick_name' => $this->_post('nick_name'), 'user_avatar' => $this->_post('user_avatar'), 'total_service' => $this->_postid('total_service'), 'average_times' => $this->_postid('average_times'), 'score_service' => $this->_post('score_service'), 'score_speed' => $this->_post('score_speed'), 'total_comment' => $this->_postid('total_comment'), 'wechat_id' => $this->_post('wechat_id'));
     //工作人员完善资料
     if (isset($objData['groupid']) && in_array($objData['groupid'], $this->hasWorkerInfo)) {
         $validateInData = array(array('nick_name', 'username', '称呼不符合要求', 2, 30), array('user_avatar', 'required', '用户头像不能为空'), array('total_service', 'int', '总服务次数不符合要求'), array('average_times', 'int', '服务时间不符合要求'), array('score_service', 'double', '服务评分不符合要求'), array('score_speed', 'double', '速度评分不符合要求'), array('total_comment', 'int', '评论人次不符合要求'));
         if (!validate::check($validateInData, $infoData)) {
             $this->JsonReturn(validate::getError());
         }
         $validate[] = array('service_id', 'int', '商圈不能为空');
     }
     if (!validate::check($validate, $objData)) {
         $this->JsonReturn(validate::getError());
     }
     if ($objData['psw'] && $objData['psw'] != $objData['repsw']) {
         $this->JsonReturn('两次密码不一致');
     }
     if ($objData['psw']) {
         $objData['psw'] = D('admin')->setUserPassword($objData['psw']);
     } else {
         unset($objData['psw']);
     }
     //检测账户名或手机号是否重复
     $exist = D('steadmin')->field('user_id')->where(array('city_id' => steadmin::$adminInfo['city_id'], 'username' => $objData['username']))->find();
     if ($exist && $exist['user_id'] != $id) {
         $this->JsonReturn('该帐户名已存在');
     }
     //        $exist = D('steadmin')->field('user_id')
     //                        ->where(array('city_id' => steadmin::$adminInfo['city_id'], 'phone' => $objData['phone']))->find();
     //        if ($exist && $exist['user_id'] != $id) {
     //            $this->JsonReturn('该手机号已经存在');
     //        }
     //        if ($infoData['wechat_id']) {
     //            $exist = M('ste_worker')->field('user_id')
     //                            ->where(array('wechat_id' => $infoData['wechat_id']))->find();
     //            if ($exist && $exist['user_id'] != $id) {
     //                $this->JsonReturn('该微信号已经存在');
     //            }
     //        }
     if ($this->isLocal) {
         $syncToQyh = false;
     } else {
         $syncToQyh = true;
     }
     if (parent::_checkIsAdmin()) {
         $objData['effective'] = $this->_post('effective', 0);
         if ($objData['effective']) {
             $objData['effective'] = inTime($objData['effective']);
         } else {
             $objData['effective'] = 0;
         }
         $objData['status'] = $objData['status'] ? $objData['status'] : 0;
     }
     if ($objData['groupid'] == 8) {
         //店长身份需要设置店铺
         $objData['shop_id'] = $this->_postid('shop_id', 0);
     } else {
         $objData['shop_id'] = 0;
     }
     if ($objData['groupid'] == 9) {
         //社长身份必须设置服务中心
         $objData['service_id'] = $this->_postid('service_id', 0);
     }
     //社长必须有服务中心
     if ($objData['groupid'] == 9 && !$objData['service_id']) {
         $this->JsonReturn('服务中心不能为空');
     }
     //社长必须有服务中心
     if ($objData['groupid'] == 9) {
         if (!$objData['service_id']) {
             $this->JsonReturn('服务中心不能为空');
         }
         $checkWhere = array('city_id' => steadmin::$adminInfo['city_id'], 'service_id' => $objData['service_id'], 'groupid' => 9, 'status' => 1);
         $hasUser = D('steadmin')->where($checkWhere)->getField('user_id');
         if ($hasUser && $hasUser != $id || D('steadmin')->where($checkWhere)->count() > 1) {
             $this->JsonReturn('该服务中心已有社长帐号');
         }
     }
     $objData['city_id'] = steadmin::$adminInfo['city_id'];
     unset($objData['repsw']);
     //        z($objData);
     D('steadmin')->update($objData, array('user_id' => $id));
     //===记录操作日志====
     parent::saveSySLog(2, $objData, $id, array('user_id' => $id), '帐号管理-编辑');
     //===记录操作日志====
     if (in_array($objData['groupid'], $this->hasWorkerInfo)) {
         if (!M('ste_worker')->field('user_id')->where(array('user_id' => $id))->find()) {
             $infoData['user_id'] = $id;
             //插入员工信息
             D('steadmin')->addUserDetailInfo($infoData);
         } else {
             M('ste_worker')->update($infoData, array('user_id' => $id));
         }
     }
     if ($syncToQyh) {
         T('weixin/qy/qyWeixin.api');
         qyApi::init(steadmin::$adminInfo['city_id']);
         $qiyehaoinfo['userid'] = $objData['openid'];
         $qiyehaoinfo['name'] = $objData['real_name'];
         $qiyehaoinfo['mobile'] = $objData['phone'];
         if (isHave($infoData['wechat_id'])) {
             $qiyehaoinfo['weixinid'] = $infoData['wechat_id'];
         }
         $groupidname = $this->adminConfig['group'];
         $qiyehaoinfo['position'] = $groupidname[$objData['groupid']];
         if (!qyApi::userUpdate($qiyehaoinfo) && strpos(qyApi::$errorMsg, '60111') !== 0) {
             $this->JsonReturn('同步到企业号通讯录失败 ' . qyApi::$errorMsg);
         }
     }
     $this->JsonReturn('ok', null, 1);
 }
 /**
  * 列表
  */
 public function index()
 {
     parent::_authUser(array(1, 2, 5, 6, 7, 8, 9));
     $title = $this->_get('q');
     //关键字搜索
     $st = $this->_get('st', 'order_sn');
     //关键字搜索
     $deal = $this->_get('deal', '');
     //分组查看
     $orderType = $this->_getid('order_type', 0);
     //类别
     $serviceId = $this->_getid('service_id', 0);
     //服务社
     $villageId = $this->_getid('village_id', 0);
     //小区
     $orderSource = $this->_getid('order_source', 0);
     //客户端
     $uid = $this->_getid('uid', 0);
     //商圈
     $startTime = $this->_get('stime', '');
     //开始时间
     $endTime = $this->_get('etime', '');
     //结束时间
     $status = $this->_getid('status', 0);
     //状态
     $p = $this->_getid('p', 1);
     $searchType = array('order_sn' => 'order_sn', 'phone' => 'phone', 'username' => 'username');
     $dealAction = array('service' => array('status' => array(1, 3, 4, 5, 13), 'arrive_date[<=]' => mktime(0, 0, 0, date('m'), date('d'), date('Y'))), 'finance' => array('status' => array(9, 10)));
     //报表页面每页显示数量为100
     if ($deal == 'report') {
         jumpTo(U('report/today'));
     }
     $where = array();
     if ($deal && isset($dealAction[$deal])) {
         $where = $dealAction[$deal];
     }
     if (isset($_GET['q']) && !$_GET['q']) {
         unset($_GET['q']);
     }
     if ($deal == 'service') {
         $pageShow = 80;
     } else {
         $pageShow = 20;
     }
     if ($title && $st == 'user') {
         $user = D('member')->field('uid')->where(array('nickname' => $title))->findAll(false);
         if ($user) {
             $uid = array();
             foreach ($user as $v) {
                 $uid[] = $v['uid'];
             }
             $title = '';
         }
     } elseif ($title && $st == 'uid') {
         $uid = $title;
         $title = '';
     }
     if ($title && isset($searchType[$st])) {
         $where['LIKE'] = array($searchType[$st] => parent::safeSearch($title));
     }
     if ($orderType) {
         $where['order_type'] = $orderType - 1;
     }
     if ($serviceId) {
         $where['service_id'] = $serviceId;
     }
     if ($villageId) {
         $where['village_id'] = $villageId;
     }
     if ($orderSource) {
         $where['order_source'] = $orderSource - 1;
     }
     if ($uid) {
         $where['uid'] = $uid;
     }
     if ($startTime && $endTime) {
         $where['arrive_date[>=]'] = inTime($startTime);
         $where['arrive_date[<=]'] = inTime($endTime) + 60 * 60 * 24 - 1;
     }
     if ($status) {
         $where['status'] = $status - 1;
     }
     if (parent::_checkIsPresident()) {
         //社长
         $where['service_id'] = steadmin::$adminInfo['service_id'];
     } elseif (!parent::_checkIsAdmin()) {
         showError('抱歉,暂时无法查看所属订单');
     }
     $rs = M('ste_order')->where($where)->page($p, $pageShow)->order('order_id DESC')->findAll();
     $total = M('ste_order')->getTotal();
     //        z(M('ste_shop')->getAllSql());
     //        z($rs);
     if ($rs) {
         foreach ($rs as $k => $v) {
             $userName = getUser($v['uid']);
             $rs[$k]['userName'] = $userName ? $userName : $v['username'];
             $rs[$k]['villageName'] = parent::getVillageName($v['village_id']);
             $rs[$k]['serviceName'] = isset($this->serviceData[$v['service_id']]) ? $this->serviceData[$v['service_id']]['stitle'] : '';
         }
     }
     $lastOrderId = M('ste_order')->order('order_id DESC')->getField('order_id');
     //
     $this->steSetting['order_status'][1] = '<span class="red">已支付</span>';
     $this->assign(array('pageShow' => $pageShow, 'rs' => $rs, 'total' => $total, 'p' => $p, 'lastOrderId' => $lastOrderId, 'service_id' => $serviceId, 'order_type' => $orderType, 'startTime' => $startTime, 'endTime' => $endTime, 'title' => $title, 'status' => $status, 'orderSource' => $orderSource, 'service' => $this->serviceData, 'setting' => $this->steSetting, 'setOrderStaus' => $this->setOrderStatus));
     $this->display();
 }
 public function batch()
 {
     parent::_checkLogin();
     parent::_authUser(array(1, 2, 5, 7, 8));
     $gids = $this->_post('gid');
     if (!$gids || !is_array($gids)) {
         $this->JsonReturn('请先选择需要操作的商品');
     }
     $objData = array();
     $list = array('original_price', 'price_pre', 'price', 'storage_counts', 'start_times', 'end_times', 'px', 'cate_id', 'order_counts');
     foreach ($list as $val) {
         $objData[$val] = $this->_post($val, '');
     }
     //内容规则检查
     T('content/validate');
     $validate = array();
     if ($objData['price']) {
         $validate[] = array('price', 'currency', '商品价格不正确');
     } else {
         unset($objData['price']);
     }
     if ($objData['storage_counts']) {
         $validate[] = array('storage_counts', 'int', '库存不正确');
     } else {
         unset($objData['storage_counts']);
     }
     if ($objData['original_price']) {
         $validate[] = array('original_price', 'currency', '商品原始价格不正确');
     } else {
         unset($objData['original_price']);
     }
     if ($objData['start_times']) {
         $objData['start_times'] = inTime($objData['start_times']);
     } else {
         unset($objData['start_times']);
     }
     if ($objData['end_times']) {
         $objData['end_times'] = inTime($objData['end_times']);
     } else {
         unset($objData['end_times']);
     }
     if (!$objData['cate_id']) {
         unset($objData['cate_id']);
     }
     if (!$objData['price_pre']) {
         unset($objData['price_pre']);
     }
     if ($objData['px'] !== '') {
         $objData['px'] = intval($objData['px']);
     } else {
         unset($objData['px']);
     }
     if ($objData['order_counts'] !== '') {
         $objData['order_counts'] = intval($objData['order_counts']);
     } else {
         unset($objData['order_counts']);
     }
     if (!$objData) {
         $this->JsonReturn('必须有修改项!');
     }
     if ($validate && !validate::check($validate, $objData)) {
         $this->JsonReturn(validate::getError());
     }
     //补充数据
     $objData['refresh_time'] = TIME;
     //        z($objData);
     //取出所以商品,并对商品做权限判断
     $rs = M('ste_goods')->field('user_id,gid,shop_id')->where(array('gid' => $gids))->findAll(false);
     if (!$rs) {
         $this->JsonReturn('没有找到符合条件的商品');
     }
     $ids = array();
     foreach ($rs as $val) {
         if (!parent::_checkUser($val['user_id'], $val['shop_id'])) {
             $this->JsonReturn('操作错误,没有编辑权限');
         } else {
             $ids[] = $val['gid'];
         }
     }
     if ($ids) {
         $total = M('ste_goods')->update($objData, array('gid' => $ids));
         //===记录操作日志====
         parent::saveSySLog(4, $objData, $ids, array('gid' => $ids), '商品管理-批量设置');
         //===记录操作日志====
         $this->JsonReturn('ok', $total, 1);
     } else {
         $this->JsonReturn('没有找到符合条件的商品');
     }
 }