切换导航条
此项目
正在载入...
登录
李忠强
/
temporaryfood
·
提交
转到一个项目
GitLab
转到仪表盘
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
SHW\戥岁。。
3 years ago
提交
7daf6f7b9eb6b739e54a4f431ec20b925f200636
1 个父辈
7a5d9eaa
销量
隐藏空白字符变更
内嵌
并排对比
正在显示
1 个修改的文件
包含
57 行增加
和
55 行删除
application/api/controller/Notify.php
application/api/controller/Notify.php
查看文件 @
7daf6f7
...
...
@@ -24,59 +24,61 @@ class Notify extends Api
public
function
orderNotify
()
{
$paytype
=
$this
->
request
->
param
(
'type'
);
$pay
=
Service
::
checkNotify
(
$paytype
);
$pay
=
Service
::
checkNotify
(
$paytype
);
if
(
!
$pay
)
{
return
'签名错误'
;
}
$data
=
$pay
->
verify
();
if
(
!
is_array
(
$data
))
$data
=
json_decode
(
$data
,
true
);
$model
=
new
\app\api\model\Order
();
$goodsmodel
=
new
\app\api\model\OrderGoods
();
$skumodel
=
new
\app\api\model\GoodsSpec
();
if
(
!
is_array
(
$data
))
$data
=
json_decode
(
$data
,
true
);
$model
=
new
\app\api\model\Order
();
$goodsmodel
=
new
\app\api\model\OrderGoods
();
$skumodel
=
new
\app\api\model\GoodsSpec
();
$goods_model
=
new
\app\api\model\Goods
();
$buymodel
=
new
\app\api\model\UserBuylist
();
$buymodel
=
new
\app\api\model\UserBuylist
();
try
{
$out_trade_no
=
$data
[
'out_trade_no'
];
$order
=
$model
->
where
(
'order_no'
,
$out_trade_no
)
->
where
(
'pay_status'
,
'10'
)
->
where
(
'order_status'
,
'10'
)
$order
=
$model
->
where
(
'order_no'
,
$out_trade_no
)
->
where
(
'pay_status'
,
'10'
)
->
where
(
'order_status'
,
'10'
)
->
find
();
if
(
!
$order
)
$this
->
error
(
'订单不存在'
);
$order
->
pay_status
=
'20'
;
$order
->
pay_status
=
'20'
;
$order
->
transaction_id
=
$data
[
'transaction_id'
];
$order
->
pay_time
=
time
();
$order
->
pay_time
=
time
();
$order
->
isUpdate
()
->
save
();
// 减少库存
$sales_actual
=
0
;
$goods_ids
=
[];
$list
=
$goodsmodel
->
where
(
'order_id'
,
$order
[
'id'
])
->
select
();
foreach
(
$list
as
$key
=>
$value
){
$goods_ids
[]
=
$value
[
'goods_id'
];
$sales_actual
+=
$value
[
'total_num'
];
if
(
$value
[
'deduct_stock_type'
]
==
20
){
$skumodel
->
where
(
'goods_spec_id'
,
$value
[
'goods_spec_id'
])
->
setDec
(
'stock_num'
,
$value
[
'total_num'
]);
$goods_ids
=
[];
$list
=
$goodsmodel
->
where
(
'order_id'
,
$order
[
'id'
])
->
select
();
foreach
(
$list
as
$key
=>
$value
)
{
$goods_ids
[]
=
$value
[
'goods_id'
];
$sales_actual
+=
$value
[
'total_num'
];
if
(
$value
[
'deduct_stock_type'
]
==
20
)
{
$skumodel
->
where
(
'goods_spec_id'
,
$value
[
'goods_spec_id'
])
->
setDec
(
'stock_num'
,
$value
[
'total_num'
]);
//增加规格销量
$skumodel
->
where
(
'goods_spec_id'
,
$value
[
'goods_spec_id'
])
->
setInc
(
'goods_sales'
,
$value
[
'total_num'
]);
}
}
// 增加销量
$goods_model
->
whereIn
(
'goods_id'
,
$goods_ids
)
->
setInc
(
'sales_actual'
,
$sales_actual
);
$goods_model
->
whereIn
(
'goods_id'
,
$goods_ids
)
->
setInc
(
'sales_actual'
,
$sales_actual
);
// 判断是否邀请成功
$user
=
\app\api\model\User
::
get
(
$order
[
'user_id'
]);
if
(
$user
[
'invite_user_id'
]
>
0
&&
$user
[
'invite_status'
]
!=
1
)
{
$user
->
invite_status
=
'1'
;
$user
->
isUpdate
()
->
save
();
$coupon
=
Db
::
name
(
'coupon'
)
->
where
(
'id'
,
1
)
->
find
();
if
(
$coupon
[
'endtime'
]
>
time
()){
$coupon
=
Db
::
name
(
'coupon'
)
->
where
(
'id'
,
1
)
->
find
();
if
(
$coupon
[
'endtime'
]
>
time
())
{
$data
=
[];
$time
=
time
();
for
(
$i
=
1
;
$i
<=
$coupon
[
'send_number'
];
$i
++
)
{
for
(
$i
=
1
;
$i
<=
$coupon
[
'send_number'
];
$i
++
)
{
$data
[]
=
[
'user_id'
=>
$user
->
invite_user_id
,
'coupon_id'
=>
$coupon
[
'id'
],
'name'
=>
$coupon
[
'name'
],
'price'
=>
$coupon
[
'price'
],
'user_id'
=>
$user
->
invite_user_id
,
'coupon_id'
=>
$coupon
[
'id'
],
'name'
=>
$coupon
[
'name'
],
'price'
=>
$coupon
[
'price'
],
'full_price'
=>
$coupon
[
'full_price'
],
'endtime'
=>
$time
+
$coupon
[
'days'
]
*
86400
,
'endtime'
=>
$time
+
$coupon
[
'days'
]
*
86400
,
'createtime'
=>
$time
,
];
}
...
...
@@ -85,24 +87,24 @@ class Notify extends Api
}
// 加入我常买
$data
=
[];
foreach
(
$list
as
$key
=>
$value
){
foreach
(
$list
as
$key
=>
$value
)
{
$data
[]
=
[
'user_id'
=>
$order
[
'user_id'
],
'user_id'
=>
$order
[
'user_id'
],
'goods_id'
=>
$value
[
'goods_id'
],
'sku_id'
=>
$value
[
'goods_spec_id'
],
'sku_id'
=>
$value
[
'goods_spec_id'
],
];
}
$buymodel
->
isUpdate
(
false
)
->
saveAll
(
$data
);
// 给后台发送新订单提醒
$client
=
new
Client
();
$domain
=
config
(
'socketio.domain'
);
$client
=
new
Client
();
$domain
=
config
(
'socketio.domain'
);
$http_port
=
config
(
'socketio.http_port'
);
$client
->
request
(
'POST'
,
$domain
.
":
{
$http_port
}
/"
,
[
$client
->
request
(
'POST'
,
$domain
.
":
{
$http_port
}
/"
,
[
'form_params'
=>
[
'type'
=>
'publish'
,
'type'
=>
'publish'
,
'content'
=>
'您有新的订单,请注意查收'
,
'to'
=>
''
,
]
'to'
=>
''
,
],
]);
}
catch
(
Exception
$e
)
{
}
...
...
@@ -116,40 +118,40 @@ class Notify extends Api
public
function
refund
()
{
$paytype
=
$this
->
request
->
param
(
'type'
);
$pay
=
Service
::
checkNotify
(
$paytype
,
'refund'
);
$pay
=
Service
::
checkNotify
(
$paytype
,
'refund'
);
if
(
!
$pay
)
{
echo
'签名错误'
;
return
;
}
$data
=
$pay
->
verify
();
$data
=
json_decode
(
$data
,
true
);
$model
=
new
\app\api\model\Order
();
$goodsmodel
=
new
\app\api\model\OrderGoods
();
$skumodel
=
new
\app\api\model\GoodsSpec
();
$data
=
$pay
->
verify
();
$data
=
json_decode
(
$data
,
true
);
$model
=
new
\app\api\model\Order
();
$goodsmodel
=
new
\app\api\model\OrderGoods
();
$skumodel
=
new
\app\api\model\GoodsSpec
();
$goods_model
=
new
\app\api\model\Goods
();
try
{
$out_trade_no
=
$data
[
'out_refund_no'
];
$order
=
$model
->
where
(
'refund_no'
,
$out_trade_no
)
->
where
(
'pay_status'
,
'20'
)
->
where
(
'order_status'
,
'10'
)
$order
=
$model
->
where
(
'refund_no'
,
$out_trade_no
)
->
where
(
'pay_status'
,
'20'
)
->
where
(
'order_status'
,
'10'
)
->
find
();
if
(
!
$order
)
$this
->
error
(
'订单不存在'
);
$order
->
refund_id
=
$data
[
'refund_id'
];
$order
->
refund_time
=
time
();
$order
->
refund_id
=
$data
[
'refund_id'
];
$order
->
refund_time
=
time
();
$order
->
order_status
=
'20'
;
$order
->
isUpdate
()
->
save
();
// 增加库存
$sales_actual
=
0
;
$list
=
$goodsmodel
->
where
(
'order_id'
,
$order
[
'id'
])
->
select
();
foreach
(
$list
as
$key
=>
$value
){
$sales_actual
+=
$value
[
'total_num'
];
if
(
$value
[
'deduct_stock_type'
]
==
20
){
$skumodel
->
where
(
'goods_spec_id'
,
$value
[
'goods_spec_id'
])
->
setInc
(
'stock_num'
,
$value
[
'total_num'
]);
$list
=
$goodsmodel
->
where
(
'order_id'
,
$order
[
'id'
])
->
select
();
foreach
(
$list
as
$key
=>
$value
)
{
$sales_actual
+=
$value
[
'total_num'
];
if
(
$value
[
'deduct_stock_type'
]
==
20
)
{
$skumodel
->
where
(
'goods_spec_id'
,
$value
[
'goods_spec_id'
])
->
setInc
(
'stock_num'
,
$value
[
'total_num'
]);
}
}
// 减少销量
$goods_model
->
setDec
(
'sales_actual'
,
$sales_actual
);
$goods_model
->
setDec
(
'sales_actual'
,
$sales_actual
);
//你可以在此编写订单逻辑
}
catch
(
Exception
$e
)
{
}
...
...
请
注册
或
登录
后发表评论