public static function ucenter_order() { $siteConfig = new Config('site_config'); $order_cancel_time = $siteConfig->order_cancel_time !== "" ? intval($siteConfig->order_cancel_time) : 7; $order_finish_time = $siteConfig->order_finish_time !== "" ? intval($siteConfig->order_finish_time) : 20; $orderModel = new IModel('order'); $orderCancelData = $order_cancel_time >= 0 ? $orderModel->query(" if_del = 0 and pay_type != 0 and status in(1) and datediff(NOW(),create_time) >= {$order_cancel_time} ", "id,order_no,4 as type_data") : array(); $orderCreateData = $order_finish_time >= 0 ? $orderModel->query(" if_del = 0 and distribution_status = 1 and status in(1,2) and datediff(NOW(),send_time) >= {$order_finish_time} ", "id,order_no,5 as type_data") : array(); $resultData = array_merge($orderCreateData, $orderCancelData); if ($resultData) { foreach ($resultData as $key => $val) { $type = $val['type_data']; $order_id = $val['id']; $order_no = $val['order_no']; //oerder表的对象 $tb_order = new IModel('order'); $tb_order->setData(array('status' => $type, 'completion_time' => ITime::getDateTime())); $tb_order->update('id=' . $order_id); //生成订单日志 $tb_order_log = new IModel('order_log'); //订单自动完成 if ($type == '5') { $action = '完成'; $note = '订单【' . $order_no . '】完成成功'; //完成订单并且进行支付 Order_Class::updateOrderStatus($order_no); //增加用户评论商品机会 Order_Class::addGoodsCommentChange($order_id); $logObj = new log('db'); $logObj->write('operation', array("系统自动", "订单更新为完成", '订单号:' . $order_no)); } else { $action = '作废'; $note = '订单【' . $order_no . '】作废成功'; //订单重置取消 Order_class::resetOrderProp($order_id); $logObj = new log('db'); $logObj->write('operation', array("系统自动", "订单更新为作废", '订单号:' . $order_no)); } $tb_order_log->setData(array('order_id' => $order_id, 'user' => "系统自动", 'action' => $action, 'result' => '成功', 'note' => $note, 'addtime' => ITime::getDateTime())); $tb_order_log->add(); } } }
public function order_report() { $seller_id = $this->seller['seller_id']; $search = IFilter::act(IReq::get('search')); /* //必须为已支付状态 $search['pay_status='] = 1; //必须为未发货状态 $search['distribution_status='] = 0; */ $condition = Util::search($search); $where = "go.seller_id = " . $seller_id; $where .= $condition ? " and " . $condition : ""; //拼接sql $orderHandle = new IQuery('order_goods as og'); $orderHandle->order = "o.id desc"; $orderHandle->fields = "o.*,p.name as payment_name"; $orderHandle->join = "left join goods as go on go.id=og.goods_id left join order as o on o.id=og.order_id left join payment as p on p.id = o.pay_type"; $orderHandle->where = $where; $orderList = $orderHandle->find(); //pr($orderList); //对订单进行重构 if (empty($orderList)) { IError::show(403, "数据为空"); exit; } else { $addrObj = new IModel("address"); foreach ($orderList as $k => $v) { if ($v['address_id']) { $order_addr = explode(',', $v['address_id']); $count = count($order_addr); for ($i = 0; $i < $count; $i++) { $new = $v; $new['old_book_count'] = $count; $new['one_book_price'] = round($new['order_amount'] / $count, 2); $addr_detil = $this->getAddr($addrObj, $order_addr[$i]); if ($addr_detil) { $new['accept_name'] = $addr_detil['accept_name']; $new['province_val'] = $addr_detil['province_val']; $new['city_val'] = $addr_detil['city_val']; $new['area_val'] = $addr_detil['area_val']; $new['address'] = $addr_detil['address']; $new['school'] = $addr_detil['school']; $new['grade'] = $addr_detil['grade']; $new['class'] = $addr_detil['class']; $new['mobile'] = $addr_detil['mobile']; $new['telphone'] = $addr_detil['telphone']; } else { $new['province_val'] = ''; $new['city_val'] = ''; $new['area_val'] = ''; $new['school'] = ''; $new['grade'] = ''; $new['class'] = ''; } $new_order[] = $new; } } } } //pr($new_order); //构建 Excel table $strTable = '<table width="500" border="1">'; $strTable .= '<tr>'; $strTable .= '<td style="text-align:center;font-size:12px;width:120px;">订单编号</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="100">下单日期</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">收货人</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">省</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">市</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">区</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">学校</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">年级</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">班级</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">电话</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">订单金额</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">原有本数</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">单本金额</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">支付方式</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">支付状态</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">支付时间</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">发货状态</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">商品信息</td>'; $strTable .= '</tr>'; foreach ($new_order as $k => $val) { $strTable .= '<tr>'; $strTable .= '<td style="text-align:center;font-size:12px;"> ' . $val['order_no'] . '</td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['create_time'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['accept_name'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['province_val'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['city_val'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['area_val'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['school'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['grade'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['class'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;"> ' . $val['telphone'] . ' ' . $val['mobile'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['order_amount'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['old_book_count'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['one_book_price'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['payment_name'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . Order_Class::getOrderPayStatusText($val) . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['pay_time'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . Order_Class::getOrderDistributionStatusText($val) . ' </td>'; $orderGoods = Order_class::getOrderGoods($val['id']); $strGoods = ""; foreach ($orderGoods as $good) { $strGoods .= "商品编号:" . $good->goodsno . " 商品名称:" . $good->name; if ($good->value != '') { $strGoods .= " 规格:" . $good->value; } $strGoods .= "<br />"; } unset($orderGoods); $strTable .= '<td style="text-align:left;font-size:12px;">' . $strGoods . ' </td>'; $strTable .= '</tr>'; } $strTable .= '</table>'; //输出成EXcel格式文件并下载 $reportObj = new report(); $reportObj->setFileName('order'); $reportObj->toDownload($strTable); exit; }
public function order_report() { //搜索条件 $search = IFilter::act(IReq::get('search'), 'strict'); //条件筛选处理 list($join, $where) = order_class::getSearchCondition($search); //拼接sql $orderHandle = new IQuery('order as o'); $orderHandle->order = "o.id desc"; $orderHandle->fields = "o.*,d.name as distribute_name,u.username,p.name as payment_name"; $orderHandle->join = $join; $orderHandle->where = $where; $orderList = $orderHandle->find(); $strTable = '<table width="500" border="1">'; $strTable .= '<tr>'; $strTable .= '<td style="text-align:center;font-size:12px;width:120px;">订单编号</td>'; $strTable .= '<td style="text-align:center;font-size:12px;width:120px;">商家id</td>'; $strTable .= '<td style="text-align:center;font-size:12px;width:120px;">区</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="100">日期</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">收货人</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">电话</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">订单金额</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">实际支付</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">支付方式</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">支付状态</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">发货状态</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">商品信息</td>'; $strTable .= '</tr>'; foreach ($orderList as $k => $val) { $strTable .= '<tr>'; $strTable .= '<td style="text-align:center;font-size:12px;"> ' . $val['order_no'] . '</td>'; $strTable .= '<td style="text-align:center;font-size:12px;"> ' . $val['seller_id'] . '</td>'; $strTable .= '<td style="text-align:center;font-size:12px;"> ' . $val['area'] . '</td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['create_time'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['accept_name'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;"> ' . $val['telphone'] . ' ' . $val['mobile'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['payable_amount'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['real_amount'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['payment_name'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . Order_Class::getOrderPayStatusText($val) . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . Order_Class::getOrderDistributionStatusText($val) . ' </td>'; $orderGoods = Order_class::getOrderGoods($val['id']); $strGoods = ""; foreach ($orderGoods as $good) { $strGoods .= "商品编号:" . $good->goodsno . " 商品名称:" . $good->name; if ($good->value != '') { $strGoods .= " 规格:" . $good->value; } $strGoods .= "<br />"; } unset($orderGoods); $strTable .= '<td style="text-align:left;font-size:12px;">' . $strGoods . ' </td>'; $strTable .= '</tr>'; } $strTable .= '</table>'; unset($orderList); $reportObj = new report(); $reportObj->setFileName('order'); $reportObj->toDownload($strTable); exit; }
?> </a> <?php } ?> </span> </div> <div id="admin_left"> <ul class="submenu"></ul> <div id="copyright"></div> </div> <div id="admin_right"> <?php $orderStatus = Order_class::getOrderStatus(array('status' => $status, 'pay_type' => $pay_type, 'distribution_status' => $distribution_status)); ?> <div class="headbar clearfix"> <div class="position">订单<span>></span><span>订单管理</span><span>></span><span>订单查看</span></div> <ul class="tab" name="menu1"> <li id="li_1"><a href="javascript:selectTab('1');" hidefocus="true">基本信息</a></li> <li id="li_2"><a href="javascript:selectTab('2');" hidefocus="true">收退款记录</a></li> <li id="li_3"><a href="javascript:selectTab('3');" hidefocus="true">发货记录</a></li> <li id="li_4"><a href="javascript:selectTab('4');" hidefocus="true">优惠方案</a></li> <li id="li_5"><a href="javascript:selectTab('5');" hidefocus="true">订单备注</a></li> <li id="li_6"><a href="javascript:selectTab('6');" hidefocus="true">订单日志</a></li> <li id="li_7"><a href="javascript:selectTab('7');" hidefocus="true">订单附言</a></li> </ul> </div>
echo isset($item['goods_nums']) ? $item['goods_nums'] : ""; ?> </td> <td> <?php if ($item['is_send'] == 0) { ?> <input type="checkbox" name="sendgoods[]" value="<?php echo isset($item['id']) ? $item['id'] : ""; ?> " /> <?php } else { ?> <?php echo Order_class::goodsSendStatus($item['is_send']); ?> <?php } ?> </td> </tr> <?php } ?> </tbody> </table> <table width="95%" class="border_table" style="margin:10px auto"> <col width="100px" /> <col />
/** * @brief 检查活动的合法性 * @return string(有错误) or true(处理正确) */ public function checkValid() { if (!$this->id) { return "商品ID不存在"; } $goodsData = $this->type == 'product' ? Api::run('getProductInfo', array('#id#', $this->id)) : Api::run('getGoodsInfo', array('#id#', $this->id)); //库存判断 if (!$goodsData || $this->buy_num <= 0 || $this->buy_num > $goodsData['store_nums']) { return "购买的数量不正确或大于商品的库存量"; } $this->originalGoodsInfo = $goodsData; $this->activePrice = $goodsData['sell_price']; $goods_id = $goodsData['goods_id']; //具体促销活动的合法性判断 switch ($this->promo) { //团购 case "groupon": if (!$this->user_id) { return "参加团购活动请您先登录"; } $regimentRow = Api::run('getRegimentRowById', array("#id#", $this->active_id)); if ($regimentRow) { if ($regimentRow['goods_id'] != $goodsData['goods_id']) { return "该商品没有参与团购活动"; } if ($regimentRow['store_nums'] <= $regimentRow['sum_count']) { return "团购商品已经销售一空"; } //检查次团购订单 $orderDB = new IModel('order as o,order_goods as og'); $orderData = $orderDB->query('o.user_id = ' . $this->user_id . ' and o.type = 1 and active_id = ' . $this->active_id); $hasBugNum = 0; foreach ($orderData as $key => $val) { $orderStatus = Order_class::getOrderStatus($val); if (in_array($orderStatus, array(2, 1, 11))) { return "您参与的该团购订单还没有完成"; } if (in_array($orderStatus, array(3, 4, 6))) { $hasBugNum += $val['goods_nums']; } } //批量购买(薄利多销) if ($regimentRow['limit_min_count'] > 0) { if ($this->buy_num < $regimentRow['limit_min_count']) { return "购买数量必须超过 " . $regimentRow['limit_min_count'] . " 件才能下单"; } } //限制购买(限购,要多人参与) if ($regimentRow['limit_max_count'] > 0) { if ($this->buy_num > $regimentRow['limit_max_count']) { return "购买数量不能超过 " . $regimentRow['limit_min_count'] . " 件"; } if ($hasBugNum + $this->buy_num > $regimentRow['limit_max_count']) { return "此团购为限购活动,您累计购买数量不能超过" . $regimentRow['limit_max_count']; } } if ($this->buy_num > $regimentRow['store_nums']) { return "购买数量超过了团购剩余量"; } $this->activePrice = $regimentRow['regiment_price']; } else { return "当前时间段内不存在此团购活动"; } return true; break; //抢购 //抢购 case "time": $promotionRow = Api::run('getPromotionRowById', array("#id#", $this->active_id)); if ($promotionRow) { if ($promotionRow['condition'] != $goodsData['goods_id']) { return "该商品没有参与抢购活动"; } $memberObj = new IModel('member'); $memberRow = $memberObj->getObj('user_id = ' . $this->user_id, 'group_id'); if ($promotionRow['user_group'] == 'all' || isset($memberRow['group_id']) && stripos(',' . $promotionRow['user_group'] . ',', $memberRow['group_id']) !== false) { $this->activePrice = $promotionRow['award_value']; } else { return "此活动仅限指定的用户组"; } } else { return "不存在此限时抢购活动"; } return true; break; } return "未知促销活动"; }
/** * @brief 订单退款操作 * @param int $refundId 退款单ID * @param int $authorId 操作人ID * @param string $type admin:管理员;seller:商家 * @param int $isNotBalance 是否充值到余额, 0:退款余额; 1:不退款到余额 * @return */ public static function refund($refundId, $authorId, $type = 'admin', $isNotBalance = 0) { $orderGoodsDB = new IModel('order_goods'); $refundDB = new IModel('refundment_doc'); //获取goods_id和product_id用于给用户减积分,经验 $refundsRow = $refundDB->getObj('id = ' . $refundId); $order_id = $refundsRow['order_id']; $order_no = $refundsRow['order_no']; $user_id = $refundsRow['user_id']; $orderGoodsRow = $orderGoodsDB->getObj('order_id = ' . $order_id . ' and goods_id = ' . $refundsRow['goods_id'] . ' and product_id = ' . $refundsRow['product_id'] . ' and is_send != 2'); if (!$orderGoodsRow) { return false; } $order_goods_id = $orderGoodsRow['id']; //如果管理员(商家)自定义了退款金额。否则就使用默认的付款商品金额 $amount = $refundsRow['amount'] > 0 ? $refundsRow['amount'] : $orderGoodsRow['goods_nums'] * $orderGoodsRow['real_price']; //库存增加 self::updateStore($order_goods_id, 'add'); //更新退款状态 $orderGoodsDB->setData(array('is_send' => 2)); $orderGoodsDB->update('id = ' . $order_goods_id); //更新order表状态 $isSendData = $orderGoodsDB->getObj('order_id = ' . $order_id . ' and is_send != 2'); $orderStatus = 6; //全部退款 if ($isSendData) { $orderStatus = 7; //部分退款 } $tb_order = new IModel('order'); $tb_order->setData(array('status' => $orderStatus)); $tb_order->update('id=' . $order_id); /** * 进行用户的余额增加操作,积分,经验的减少操作, * 1,当全部退款时候,减少订单中记录的积分和经验;且如果没有发货的商品直接退回订单中的运费,报价,税金等 * 2,当部分退款时候,查询商品表中积分和经验 */ if ($orderStatus == 6) { Order_class::resetOrderProp($order_id); $orderRow = $tb_order->getObj('id = ' . $order_id); //是否返还运费,报价,税金 $isDeliveryData = $orderGoodsDB->getObj('order_id = ' . $order_id . ' and delivery_id > 0'); if (!$isDeliveryData) { $amount += $orderRow['real_freight'] + $orderRow['insured'] + $orderRow['taxes']; } } //退款积分,经验 $goodsDB = new IModel('goods'); $goodsRow = $goodsDB->getObj('id = ' . $orderGoodsRow['goods_id']); $orderRow = array('exp' => $goodsRow['exp'] * $orderGoodsRow['goods_nums'], 'point' => $goodsRow['point'] * $orderGoodsRow['goods_nums'], 'order_no' => $order_no); //更新退款表 $updateData = array('amount' => $amount, 'pay_status' => 2, 'dispose_time' => ITime::getDateTime()); $refundDB->setData($updateData); $refundDB->update('id = ' . $refundId); //更新用户的信息 $obj = new IModel('member'); $memberObj = $obj->getObj('user_id = ' . $user_id, 'exp,point'); $exp = $memberObj['exp'] - $orderRow['exp']; $obj->setData(array('exp' => $exp <= 0 ? 0 : $exp)); $obj->update('user_id = ' . $user_id); //积分记录日志 $pointConfig = array('user_id' => $user_id, 'point' => '-' . $orderRow['point'], 'log' => '退款订单号:' . $orderRow['order_no'] . '中的商品,减掉积分 -' . $orderRow['point']); $pointObj = new Point(); $pointObj->update($pointConfig); //用户余额进行的操作记入account_log表 $log = new AccountLog(); $config = array('user_id' => $user_id, 'event' => 'drawback', 'num' => $amount, 'order_no' => $order_no); if ($type == 'admin') { $config['admin_id'] = $authorId; $adminObj = new IModel('admin'); $adminRow = $adminObj->getObj('id = ' . $authorId); $authorName = $adminRow['admin_name']; } else { if ($type == 'seller') { $config['seller_id'] = $authorId; $sellerObj = new IModel('seller'); $sellerRow = $sellerObj->getObj('id = ' . $authorId); $authorName = $sellerRow['seller_name']; } } //生成订单日志 $tb_order_log = new IModel('order_log'); $tb_order_log->setData(array('order_id' => $order_id, 'user' => $authorName, 'action' => '退款', 'result' => '成功', 'note' => '订单【' . $order_no . '】退款,退款金额:¥' . $amount, 'addtime' => ITime::getDateTime())); $tb_order_log->add(); return $isNotBalance == 0 ? $log->write($config) : true; }
/** * @brief 订单退款操作 * @param int $refundId 退款单ID * @param int $authorId 操作人ID * @param string $type admin:管理员;seller:商家 * @return */ public static function refund($refundId, $authorId, $type = 'admin') { $orderGoodsDB = new IModel('order_goods'); $refundDB = new IModel('refundment_doc'); //更新退款表 $updateData = array('pay_status' => 2, 'dispose_time' => ITime::getDateTime()); $refundDB->setData($updateData); $refundDB->update('id = ' . $refundId); //获取goods_id和product_id用于给用户减积分,经验 $refundsRow = $refundDB->getObj('id = ' . $refundId); $order_id = $refundsRow['order_id']; $order_no = $refundsRow['order_no']; $amount = $refundsRow['amount']; $user_id = $refundsRow['user_id']; $orderGoodsRow = $orderGoodsDB->getObj('order_id = ' . $order_id . ' and goods_id = ' . $refundsRow['goods_id'] . ' and product_id = ' . $refundsRow['product_id']); $order_goods_id = $orderGoodsRow['id']; //更新退款状态 $orderGoodsDB->setData(array('is_send' => 2)); $orderGoodsDB->update('id = ' . $order_goods_id); //更新order表状态 $isSendData = $orderGoodsDB->getObj('order_id = ' . $order_id . ' and is_send != 2'); $orderStatus = 6; //全部退款 if ($isSendData) { $orderStatus = 7; //部分退款 } $tb_order = new IModel('order'); $tb_order->setData(array('status' => $orderStatus)); $tb_order->update('id=' . $order_id); if ($orderStatus == 6) { Order_class::resetOrderProp($order_id); } //生成订单日志 $authorName = $type == 'admin' ? ISafe::get('admin_name') : ISafe::get('seller_name'); $tb_order_log = new IModel('order_log'); $tb_order_log->setData(array('order_id' => $order_id, 'user' => $authorName, 'action' => '退款', 'result' => '成功', 'note' => '订单【' . $order_no . '】退款,退款金额:¥' . $amount, 'addtime' => ITime::getDateTime())); $tb_order_log->add(); /** * 进行用户的余额增加操作,积分,经验的减少操作, * 1,当全部退款时候,减少订单中记录的积分和经验; * 2,当部分退款时候,查询商品表中积分和经验 */ if ($orderStatus == 6) { $orderRow = $tb_order->getObj('id = ' . $order_id); } else { $goodsDB = new IModel('goods'); $goodsRow = $goodsDB->getObj('id = ' . $orderGoodsRow['goods_id']); $orderRow = array('exp' => $goodsRow['exp'], 'point' => $goodsRow['point'], 'order_no' => $order_no); } $obj = new IModel('member'); $memberObj = $obj->getObj('user_id = ' . $user_id, 'balance,exp,point'); $exp = $memberObj['exp'] - $orderRow['exp']; $balance = $memberObj['balance'] + $amount; $obj->setData(array('balance' => $balance, 'exp' => $exp <= 0 ? 0 : $exp)); $isSuccess = $obj->update('user_id = ' . $user_id); //积分记录日志 $pointConfig = array('user_id' => $user_id, 'point' => '-' . $orderRow['point'], 'log' => '退款订单号:' . $orderRow['order_no'] . '中的商品,减掉积分 -' . $orderRow['point']); $pointObj = new Point(); $pointObj->update($pointConfig); if ($isSuccess) { //用户余额进行的操作记入account_log表 $log = new AccountLog(); $config = array('user_id' => $user_id, 'event' => 'drawback', 'num' => $amount, 'order_no' => $order_no); if ($type == 'admin') { $config['admin_id'] = $authorId; } else { if ($type == 'seller') { $config['seller_id'] = $authorId; } } $re = $log->write($config); return true; } return false; }
?> ');">合</span> <span class="prt" title="快递单打印" onclick="window.open('<?php echo IUrl::creatUrl("/order/expresswaybill_template/id/" . $item['id'] . ""); ?> ');">递</span> </td> <td> <a class="order_deliery" data-id="<?php if (Order_class::isGoDelivery($item)) { echo IUrl::creatUrl("/seller/order_deliver/id/" . $item['id'] . ""); } else { } ?> " href="<?php if (Order_class::isGoDelivery($item)) { echo IUrl::creatUrl("/seller/order_deliver/id/" . $item['id'] . ""); } else { ?> javascript:alert('此单不满足发货条件');<?php } ?> "><img class="operator" src="<?php echo IUrl::creatUrl("") . "views/" . $this->theme . "/skin/" . $this->skin . "/images/main/icn_jump_back.png"; ?> " title="立即发货" alt="立即发货" /></a> <a href="<?php echo IUrl::creatUrl("/seller/order_show/id/" . $item['id'] . ""); ?> "><img title="订单详情" alt="订单详情" src="<?php echo IUrl::creatUrl("") . "views/" . $this->theme . "/skin/" . $this->skin . "/images/main/icn_settings.png";
echo isset($item['create_time']) ? $item['create_time'] : ""; ?> "><?php echo isset($item['create_time']) ? $item['create_time'] : ""; ?> </td> <td> <a href="<?php echo IUrl::creatUrl("/order/order_show/id/" . $item['id'] . ""); ?> "><img class="operator" src="<?php echo IUrl::creatUrl("") . "views/" . $this->theme . "/skin/" . $this->skin . "/images/admin/icon_check.gif"; ?> " title="查看" /></a> <?php if (Order_class::getOrderStatus($item) < 3) { ?> <a href="<?php echo IUrl::creatUrl("/order/order_edit/id/" . $item['id'] . ""); ?> "><img class="operator" src="<?php echo IUrl::creatUrl("") . "views/" . $this->theme . "/skin/" . $this->skin . "/images/admin/icon_edit.gif"; ?> " title="编辑"/></a> <?php } ?> <a href="javascript:void(0)" onclick="delModel({link:'<?php echo IUrl::creatUrl("/order/order_del/id/" . $item['id'] . ""); ?> '})" ><img class="operator" src="<?php
public function order_report() { $seller_id = $this->seller['seller_id']; $condition = Util::search(IFilter::act(IReq::get('search'), 'strict')); $where = "go.seller_id = " . $seller_id; $where .= $condition ? " and " . $condition : ""; //拼接sql $orderHandle = new IQuery('order_goods as og'); $orderHandle->order = "o.id desc"; $orderHandle->fields = "o.*,p.name as payment_name"; $orderHandle->join = "left join goods as go on go.id=og.goods_id left join order as o on o.id=og.order_id left join payment as p on p.id = o.pay_type"; $orderHandle->where = $where; $orderList = $orderHandle->find(); //构建 Excel table $strTable = '<table width="500" border="1">'; $strTable .= '<tr>'; $strTable .= '<td style="text-align:center;font-size:12px;width:120px;">订单编号</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="100">日期</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">收货人</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">电话</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">订单金额</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">实际支付</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">支付方式</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">支付状态</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">发货状态</td>'; $strTable .= '<td style="text-align:center;font-size:12px;" width="*">商品信息</td>'; $strTable .= '</tr>'; foreach ($orderList as $k => $val) { $strTable .= '<tr>'; $strTable .= '<td style="text-align:center;font-size:12px;"> ' . $val['order_no'] . '</td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['create_time'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['accept_name'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;"> ' . $val['telphone'] . ' ' . $val['mobile'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['payable_amount'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['real_amount'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . $val['payment_name'] . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . Order_Class::getOrderPayStatusText($val) . ' </td>'; $strTable .= '<td style="text-align:left;font-size:12px;">' . Order_Class::getOrderDistributionStatusText($val) . ' </td>'; $orderGoods = Order_class::getOrderGoods($val['id']); $strGoods = ""; foreach ($orderGoods as $good) { $strGoods .= "商品编号:" . $good->goodsno . " 商品名称:" . $good->name; if ($good->value != '') { $strGoods .= " 规格:" . $good->value; } $strGoods .= "<br />"; } unset($orderGoods); $strTable .= '<td style="text-align:left;font-size:12px;">' . $strGoods . ' </td>'; $strTable .= '</tr>'; } $strTable .= '</table>'; //输出成EXcel格式文件并下载 $reportObj = new report(); $reportObj->setFileName('order'); $reportObj->toDownload($strTable); exit; }