541 lines
15 KiB
PHP
541 lines
15 KiB
PHP
<?php
|
||
|
||
namespace app\api\controller;
|
||
|
||
use app\common\service\OrderService;
|
||
use think\Db;
|
||
use think\Exception;
|
||
class OrderController extends CommonController {
|
||
|
||
protected $noAuth = ['count'];
|
||
/**
|
||
* @apiDefine Order 订单管理
|
||
*/
|
||
|
||
/**
|
||
* @apiVersion 1.0.0
|
||
* @api {post} /order/index 1.订单列表(朱晓伟)
|
||
* @apiName index
|
||
* @apiGroup Order
|
||
* @apiHeader {String} authentication 验证
|
||
* @apiParam {Int} [limit] 每页多少条(默认20)
|
||
* @apiParam {Int} [page] 当前页(默认1)
|
||
* @apiSuccessExample Success-Response:
|
||
*{
|
||
"code": 200,
|
||
"message": "成功",
|
||
"data": [
|
||
{
|
||
"order_id": 403,
|
||
"order_sn": "20040111571980298718",
|
||
"status": 6,
|
||
"pay_type": 2,
|
||
"pay_status": 1,
|
||
"express_status": 0,
|
||
"express_name": "",
|
||
"express_sn": "",
|
||
"shipping_fee": "1.00",
|
||
"pay_voucher": "",
|
||
"goods_amount": "180500.00",
|
||
"total_amount": "180501.00",
|
||
"create_time": "2020-04-01 11:57:34",
|
||
"deadline_time": "2020-05-01 11:57:34",
|
||
"order_contract_url": "",
|
||
"need_cs_confirm": 0,
|
||
"cancel_flag": 0,
|
||
"need_pay": 0,
|
||
"agent": 0,
|
||
"order_status_str": "待收货",
|
||
"order_status": 2,
|
||
"goods_list": [
|
||
{
|
||
"order_id": 403,
|
||
"batch_id": "2149",
|
||
"type": "",
|
||
"extend_data": null,
|
||
"goods_number": 100,
|
||
"name": "不正常人类研究用药",
|
||
"unit": "支",
|
||
"spec_desc": "100*100ml",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1566891904416.jpg"
|
||
},
|
||
{
|
||
"order_id": 403,
|
||
"batch_id": "2177",
|
||
"type": "",
|
||
"extend_data": null,
|
||
"goods_number": 400,
|
||
"name": "手疼药",
|
||
"unit": "板",
|
||
"spec_desc": "0.1g*100板",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1568255630161.jpg"
|
||
},
|
||
{
|
||
"order_id": 403,
|
||
"batch_id": "2167",
|
||
"type": "",
|
||
"extend_data": null,
|
||
"goods_number": 500,
|
||
"name": "复古糖片新药",
|
||
"unit": "盒",
|
||
"spec_desc": "16粒*2板",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1568019676054.png"
|
||
},
|
||
{
|
||
"order_id": 403,
|
||
"batch_id": "871",
|
||
"type": "",
|
||
"extend_data": null,
|
||
"goods_number": 80,
|
||
"name": "匹多莫德口服溶液",
|
||
"unit": "盒",
|
||
"spec_desc": "10ml:0.4g*6支",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1545011228838.jpg"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"order_id": 339,
|
||
"order_sn": "19072216006840298102",
|
||
"status": 0,
|
||
"pay_type": 2,
|
||
"pay_status": 0,
|
||
"express_status": 0,
|
||
"express_name": "",
|
||
"express_sn": "",
|
||
"shipping_fee": "0.00",
|
||
"pay_voucher": "",
|
||
"goods_amount": "10024.00",
|
||
"total_amount": "10024.00",
|
||
"create_time": "2019-07-22 16:00:21",
|
||
"deadline_time": "2019-08-21 16:00:21",
|
||
"order_contract_url": "",
|
||
"need_cs_confirm": 0,
|
||
"cancel_flag": 0,
|
||
"need_pay": 0,
|
||
"agent": 0,
|
||
"order_status_str": "已取消",
|
||
"order_status": 3,
|
||
"goods_list": [
|
||
{
|
||
"order_id": 339,
|
||
"batch_id": "892",
|
||
"type": "",
|
||
"extend_data": null,
|
||
"goods_number": 200,
|
||
"name": "双氯芬酸钠缓释胶囊",
|
||
"unit": "盒",
|
||
"spec_desc": "50mg*20s",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1543914540595.jpg"
|
||
},
|
||
{
|
||
"order_id": 339,
|
||
"batch_id": "f4a0597e522059201811031",
|
||
"type": "extend",
|
||
"extend_data": "{\"name\": \"黄柏胶囊\", \"unit\": \"盒\", \"price\": \"5.50\", \"sketch\": \"黄柏胶囊\", \"gallery\": [\"http://hyey.cn/uploadpic/400/a0597/e522059/e522059_0.jpg\"], \"can_show\": 1, \"drug_form\": \"胶囊剂\", \"spec_desc\": \"12s*3板\", \"stock_num\": \"900\", \"pc_content\": \"\", \"retail_num\": 10, \"show_price\": \"12.50\", \"retail_flag\": 1, \"batch_number\": \"20181103\", \"country_code\": \"Z61021657\", \"entirety_num\": 300, \"term_validity\": \"2020-11-08\", \"show_price_int\": \"12\", \"extend_goods_id\": \"f4a0597e522059201811031\", \"show_price_float\": \"50\", \"manufacturer_name\": \"陕西盘龙药业集团股份有限公司\"}",
|
||
"goods_number": 300,
|
||
"name": "黄柏胶囊",
|
||
"unit": "盒",
|
||
"spec_desc": "12s*3板",
|
||
"pc_thumb": "http://hyey.cn/uploadpic/400/a0597/e522059/e522059_0.jpg"
|
||
},
|
||
{
|
||
"order_id": 339,
|
||
"batch_id": "b8a0597e522051201712011",
|
||
"type": "extend",
|
||
"extend_data": "{\"name\": \"丹七片\", \"unit\": \"盒\", \"price\": \"14\", \"sketch\": \"丹七片\", \"gallery\": [\"http://hyey.cn/uploadpic/400/a0597/e522051/e522051_0.jpg\"], \"can_show\": 1, \"drug_form\": \"片剂\", \"spec_desc\": \"0.3g*18s*2板\", \"stock_num\": \"1200\", \"pc_content\": \"\", \"retail_num\": 10, \"show_price\": \"49.98\", \"retail_flag\": 1, \"batch_number\": \"20171201\", \"country_code\": \"Z61021166\", \"entirety_num\": 300, \"term_validity\": \"2020-11\", \"show_price_int\": \"49\", \"extend_goods_id\": \"b8a0597e522051201712011\", \"show_price_float\": \"98\", \"manufacturer_name\": \"陕西盘龙药业集团股份有限公司\"}",
|
||
"goods_number": 300,
|
||
"name": "丹七片",
|
||
"unit": "盒",
|
||
"spec_desc": "0.3g*18s*2板",
|
||
"pc_thumb": "http://hyey.cn/uploadpic/400/a0597/e522051/e522051_0.jpg"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
*/
|
||
public function index() {
|
||
try {
|
||
$parames = input('');
|
||
$parames['user_id'] = $this->uid;
|
||
$data = model(OrderService::class)->getOrderList($parames);
|
||
return self::returnMsg(self::SUCCESS, self::getMessage('SUCCESS'),$data);
|
||
} catch (Exception $exception) {
|
||
return self::returnMsg(self::ERR_NONE, $exception->getMessage());
|
||
}
|
||
}
|
||
|
||
/**
|
||
* @apiVersion 1.0.0
|
||
* @api {post} /order/detail 2.订单详情(朱晓伟)
|
||
* @apiName detail
|
||
* @apiGroup Order
|
||
* @apiHeader {String} authentication 验证
|
||
* @apiParam {Int} id 订单id
|
||
* @apiSuccessExample Success-Response:
|
||
*{
|
||
"code": 200,
|
||
"message": "成功",
|
||
"data": {
|
||
"invalid_order_goods": [],
|
||
"buyer_info": {
|
||
"organization_code": "7864654665456",
|
||
"invoice_title": "测试企业"
|
||
},
|
||
"user_address": {
|
||
"area_id": 3,
|
||
"address": "广东省汕头市南澳县撒打算",
|
||
"consignee": "阿达",
|
||
"tel": "17605052525"
|
||
},
|
||
"order_goods": [
|
||
{
|
||
"goods_id": "1744",
|
||
"batch_id": "2149",
|
||
"unit_price": "1500.00",
|
||
"spread_unit_price": "0.00",
|
||
"spread_flag": 0,
|
||
"type": "",
|
||
"goods_number": 100,
|
||
"is_delete": 0,
|
||
"name": "不正常人类研究用药",
|
||
"spec_desc": "100*100ml",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1566891904416.jpg",
|
||
"app_thumb": "",
|
||
"batch_number": "PC20190827",
|
||
"manufacturer_name": "安徽双鹤药业有限责任公司",
|
||
"term_validity": "2022-08-31",
|
||
"retail_flag": 0,
|
||
"total": "150000.00"
|
||
},
|
||
{
|
||
"goods_id": "1770",
|
||
"batch_id": "2177",
|
||
"unit_price": "20.00",
|
||
"spread_unit_price": "0.00",
|
||
"spread_flag": 0,
|
||
"type": "",
|
||
"goods_number": 400,
|
||
"is_delete": 0,
|
||
"name": "手疼药",
|
||
"spec_desc": "0.1g*100板",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1568255630161.jpg",
|
||
"app_thumb": "",
|
||
"batch_number": "2022",
|
||
"manufacturer_name": " 广东宏盈科技有限公司 ",
|
||
"term_validity": "2023-09-13",
|
||
"retail_flag": 1,
|
||
"total": "8000.00"
|
||
},
|
||
{
|
||
"goods_id": "1766",
|
||
"batch_id": "2167",
|
||
"unit_price": "43.40",
|
||
"spread_unit_price": "0.00",
|
||
"spread_flag": 0,
|
||
"type": "",
|
||
"goods_number": 500,
|
||
"is_delete": 0,
|
||
"name": "复古糖片新药",
|
||
"spec_desc": "16粒*2板",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1568019676054.png",
|
||
"app_thumb": "",
|
||
"batch_number": "2019090702",
|
||
"manufacturer_name": "安徽安科余良卿药业有限公司",
|
||
"term_validity": "2020-09-30",
|
||
"retail_flag": 1,
|
||
"total": "21700.00"
|
||
},
|
||
{
|
||
"goods_id": "470",
|
||
"batch_id": "871",
|
||
"unit_price": "10.00",
|
||
"spread_unit_price": "0.00",
|
||
"spread_flag": 0,
|
||
"type": "",
|
||
"goods_number": 80,
|
||
"is_delete": 0,
|
||
"name": "匹多莫德口服溶液",
|
||
"spec_desc": "10ml:0.4g*6支",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com/pc_shop_thumb_url_1545011228838.jpg",
|
||
"app_thumb": "",
|
||
"batch_number": "2017060303",
|
||
"manufacturer_name": "江苏吴中医药集团有限公司苏州制药厂",
|
||
"term_validity": "2019-06-02",
|
||
"retail_flag": 1,
|
||
"total": "800.00"
|
||
}
|
||
],
|
||
"order_detail": {
|
||
"order_id": 403,
|
||
"order_sn": "20040111571980298718",
|
||
"status": 6,
|
||
"pay_type": 2,
|
||
"pay_status": 1,
|
||
"express_status": 0,
|
||
"shipping_fee": "1.00",
|
||
"goods_amount": "180500.00",
|
||
"total_amount": "180501.00",
|
||
"address_id": 141,
|
||
"express_name": "",
|
||
"express_sn": "",
|
||
"create_time": "2020-04-01 11:57:34",
|
||
"shipping_time": "2020-04-13 11:31:02",
|
||
"pay_time": "2020-04-01 13:42:56",
|
||
"finished_time": "0000-01-01 00:00:00",
|
||
"deadline_time": "2020-05-01 11:57:34",
|
||
"remark": "",
|
||
"count_down": 0,
|
||
"agent": 2,
|
||
"order_status_str": "待收货",
|
||
"order_status": 2,
|
||
"can_pay": 0,
|
||
"need_cs_confirm": 0,
|
||
"cancel_flag": 0
|
||
},
|
||
"cancel_reason": null
|
||
}
|
||
}
|
||
*/
|
||
public function detail() {
|
||
try {
|
||
$parames = input('');
|
||
$parames['user_id'] = $this->uid;
|
||
$data = model(OrderService::class)->orderDetail($parames);
|
||
return self::returnMsg(self::SUCCESS, self::getMessage('SUCCESS'),$data);
|
||
} catch (Exception $exception) {
|
||
return self::returnMsg(self::ERR_NONE, $exception->getMessage());
|
||
}
|
||
}
|
||
|
||
/**
|
||
* @apiVersion 1.0.0
|
||
* @api {post} /order/submit 3.创建订单(朱晓伟)
|
||
* @apiName submit
|
||
* @apiGroup Order
|
||
* @apiHeader {String} authentication 验证
|
||
* @apiParam {String} id_group 购物车ID集合 例如"1,2,3,4"
|
||
* @apiParam {String} address 详细地址
|
||
* @apiParam {String} consignee 收货人
|
||
* @apiParam {String} tel 收货人电话
|
||
* @apiParam {String} remark 备注
|
||
* @apiParam {Int} area_id 区域id
|
||
* @apiParam {Int} total_number 总货数
|
||
* @apiParam {Int} total_amount 总价格
|
||
* @apiSuccessExample Success-Response:
|
||
*{
|
||
"code": 200,
|
||
"message": "成功",
|
||
"data": {"order_id":1}}
|
||
* */
|
||
public function submit() {
|
||
try {
|
||
$parames = input('');
|
||
$parames['user_id'] = $this->uid;
|
||
$parames['extend_level'] = Db::name('buyer')->where('buyer_user_id',$this->uid)->value('extend_level');
|
||
$parames['user_info'] = $this->getUserInfo();
|
||
$data = model(OrderService::class)->submitOrder($parames);
|
||
return self::returnMsg(self::SUCCESS, self::getMessage('SUCCESS'),$data);
|
||
} catch (Exception $exception) {
|
||
$code = $exception->getCode()??0;
|
||
if($code){
|
||
$res['errcode'] = $code;
|
||
$res['errmsg'] = $exception->getMessage();
|
||
return self::returnMsg(self::SUCCESS, $exception->getMessage(),$res);
|
||
}
|
||
return self::returnMsg(self::ERR_NONE, $exception->getMessage());
|
||
}
|
||
}
|
||
|
||
/**
|
||
* @apiVersion 1.0.0
|
||
* @api {post} /order/preview 4.预览订单(朱晓伟)
|
||
* @apiName preview
|
||
* @apiGroup Order
|
||
* @apiHeader {String} authentication 验证
|
||
* @apiParam {String} id_group 购物车ID集合 例如"1,2,3,4"
|
||
* @apiSuccessExample Success-Response:
|
||
* {
|
||
"code": 200,
|
||
"message": "成功",
|
||
"data": {
|
||
"address": {
|
||
"id": 141,
|
||
"area_id": 3,
|
||
"address": "广东省汕头市南澳县撒打算",
|
||
"consignee": "阿达",
|
||
"tel": "17605052525"
|
||
},
|
||
"goods_list": {
|
||
"plat": [{
|
||
"id": 106,
|
||
"goods_number": 10,
|
||
"unit_price": "1.87",
|
||
"goods_name": "丙酸氯倍他索乳膏",
|
||
"country_code": "H31022876",
|
||
"drug_form": "乳膏剂",
|
||
"unit": "支",
|
||
"spec_desc": "10g:2mg",
|
||
"manufacturer_name": "上海新亚药业闵行有限公司",
|
||
"pc_thumb": "www.hyey.cn\/uploadpic\/600\/a0953\/3359054\/3359054_0.jpg",
|
||
"app_thumb": "www.hyey.cn\/uploadpic\/600\/a0953\/3359054\/3359054_0.jpg",
|
||
"batch_id": 11817,
|
||
"retail_flag": 0,
|
||
"batch_number": "190201",
|
||
"retail_num": 10,
|
||
"entirety_num": 600,
|
||
"term_validity": "2021-01-16",
|
||
"stock_num": 1300,
|
||
"is_buy": 0
|
||
}, {
|
||
"id": 109,
|
||
"goods_number": 100,
|
||
"unit_price": "45.00",
|
||
"goods_name": "复古糖片新药特制",
|
||
"country_code": "GM201909",
|
||
"drug_form": "胶囊剂",
|
||
"unit": "盒",
|
||
"spec_desc": "16粒*4板",
|
||
"manufacturer_name": "安国市天下康制药有限公司",
|
||
"pc_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com\/pc_shop_thumb_url_1568019676054.png",
|
||
"app_thumb": "ydyd-develop-file.oss-cn-hangzhou.aliyuncs.com\/pc_shop_thumb_url_1568019676054.png",
|
||
"batch_id": 2168,
|
||
"retail_flag": 0,
|
||
"batch_number": "2019090705",
|
||
"retail_num": 20,
|
||
"entirety_num": 500,
|
||
"term_validity": "2020-10-01",
|
||
"stock_num": 625,
|
||
"is_buy": 0
|
||
}],
|
||
"extend": []
|
||
},
|
||
"goods_amount": "4518.70",
|
||
"total_number": 110,
|
||
"shipping_fee": "0.00",
|
||
"total_amount": "4518.70",
|
||
"is_buy": 0
|
||
}
|
||
}
|
||
* */
|
||
public function preview()
|
||
{
|
||
try {
|
||
$parames = input('');
|
||
$parames['user_id'] = $this->uid;
|
||
$data = model(OrderService::class)->preOrder($parames);
|
||
return self::returnMsg(self::SUCCESS, self::getMessage('SUCCESS'),$data);
|
||
} catch (Exception $exception) {
|
||
return self::returnMsg(self::ERR_NONE, $exception->getMessage());
|
||
}
|
||
}
|
||
|
||
/**
|
||
* @apiVersion 1.0.0
|
||
* @api {post} /order/cancel 5.取消订单(朱晓伟)
|
||
* @apiName cancel
|
||
* @apiGroup Order
|
||
* @apiHeader {String} authentication 验证
|
||
* @apiParam {Int} order_id 订单id
|
||
* @apiSuccessExample Success-Response:
|
||
*{
|
||
"code": 200,
|
||
"message": "成功",
|
||
"data": {"order_id":1}}
|
||
* */
|
||
public function cancel() {
|
||
try {
|
||
$parames = input('');
|
||
$parames['user_id'] = $this->uid;
|
||
$data = model(OrderService::class)->cancelOrder($parames);
|
||
return self::returnMsg(self::SUCCESS, self::getMessage('SUCCESS'),$data);
|
||
} catch (Exception $exception) {
|
||
return self::returnMsg(self::ERR_NONE, $exception->getMessage());
|
||
}
|
||
}
|
||
|
||
/**
|
||
* @apiVersion 1.0.0
|
||
* @api {post} /order/toPay 6.去支付(朱晓伟)
|
||
* @apiName toPay
|
||
* @apiGroup Order
|
||
* @apiHeader {String} authentication 验证
|
||
* @apiParam {Int} order_id 订单id
|
||
* @apiSuccessExample Success-Response:
|
||
*{
|
||
"code": 200,
|
||
"message": "成功",
|
||
"data": {"order_id":1}}
|
||
* */
|
||
public function toPay() {
|
||
try {
|
||
$parames = input('');
|
||
$parames['user_id'] = $this->uid;
|
||
$data = model(OrderService::class)->toPay($parames);
|
||
return self::returnMsg(self::SUCCESS, self::getMessage('SUCCESS'),$data);
|
||
} catch (Exception $exception) {
|
||
return self::returnMsg(self::ERR_NONE, $exception->getMessage());
|
||
}
|
||
}
|
||
|
||
|
||
/**
|
||
* @apiVersion 1.0.0
|
||
* @api {post} /order/count 7.订单数量(朱晓伟)
|
||
* @apiName count
|
||
* @apiGroup Order
|
||
* @apiHeader {String} authentication 验证
|
||
* @apiSuccessExample Success-Response:
|
||
*{
|
||
"code": 200,
|
||
"message": "成功",
|
||
"data": [
|
||
{
|
||
"order_status": 1,
|
||
"count": 2
|
||
},
|
||
{
|
||
"order_status": 2,
|
||
"count": 2
|
||
},
|
||
{
|
||
"order_status": 6,
|
||
"count": 0
|
||
},
|
||
{
|
||
"order_status": 3,
|
||
"count": 0
|
||
}
|
||
]
|
||
}
|
||
* */
|
||
public function count() {
|
||
try {
|
||
$parames = input('');
|
||
$parames['user_id'] = $this->uid;
|
||
$parames['order_status'] = 1;
|
||
$data = [];
|
||
$item['order_status'] = 1;
|
||
$item['count'] = model(OrderService::class)->getOrderCount($parames);
|
||
$data[] = $item;
|
||
$parames['order_status'] = 2;
|
||
$item['order_status'] = 2;
|
||
$item['count'] = model(OrderService::class)->getOrderCount($parames);
|
||
$data[] = $item;
|
||
$parames['order_status'] = 6;
|
||
$item['order_status'] = 6;
|
||
$item['count'] = model(OrderService::class)->getOrderCount($parames);
|
||
$data[] = $item;
|
||
$parames['order_status'] = 3;
|
||
$item['order_status'] = 3;
|
||
$item['count'] = model(OrderService::class)->getOrderCount($parames);
|
||
$data[] = $item;
|
||
return self::returnMsg(self::SUCCESS, self::getMessage('SUCCESS'),$data);
|
||
} catch (Exception $exception) {
|
||
return self::returnMsg(self::ERR_NONE, $exception->getMessage());
|
||
}
|
||
}
|
||
|
||
}
|