12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- <?php
- namespace app\api\controller;
- use think\facade\Db;
- use think\facade\Lang;
- class Storeorder extends MobileMember
- {
- public function initialize()
- {
- parent::initialize();
- Lang::load(base_path() . 'home/lang/' . config('lang.default_lang') . '/memberorder.lang.php');
- }
- /**
- * 店铺订单(到店付款)
- */
- public function get_order_list()
- {
- $order_model = model('StoreOrder');
- $condition = $this->order_type_no(input('post.state_type'));
- $condition[] = ['buyer_id', '=', $this->member_info['member_id']];
- $order_sn = input('post.order_key');
- if ($order_sn != '') {
- $condition[] = ['order_sn', 'like', '%' . $order_sn . '%'];
- }
- $order_list_array = $order_model->getOrderList($condition, 5, '*', 'id desc', 0, ['store']);
- $new_order_group_list = [];
- foreach ($order_list_array as $key => $value) {
- $value['pay_sn'] = strval($key);
- $new_order_group_list[] = $value;
- }
- $result = array_merge(['order_group_list' => $new_order_group_list], mobile_page($order_model->page_info));
- ds_json_encode(10000, '', $result);
- }
- private function order_type_no($stage)
- {
- $condition = [];
- switch ($stage) {
- case 'state_new':
- $condition[] = ['order_state', '=', '10'];
- break;
- case 'state_finish':
- $condition[] = ['order_state', '=', '40'];
- break;
- }
- return $condition;
- }
- /**
- * 取消订单
- */
- public function order_cancel()
- {
- $model = model('StoreOrder');
- $logic = model('Storeorder', 'logic');
- $id = intval(input('post.id'));
- $condition = [];
- $condition[] = ['id', '=', $id];
- $condition[] = ['buyer_id', '=', $this->member_info['member_id']];
- $order_info = $model->where($condition)->find();
- try {
- Db::startTrans();
- $logic->changeOrderStateCancel($order_info, 'buyer', $this->member_info['member_name'], lang('other_reason'));
- } catch (\Exception $e) {
- Db::rollback();
- ds_json_encode(10001, $e->getMessage());
- }
- Db::commit();
- ds_json_encode(10000, '', 1);
- }
- }
|