Commit 3bb855cb authored by jianghaiming's avatar jianghaiming

Merge branch 'develop' of https://gitlab.yidian-inc.com/bp/goods into develop

parents 68786876 1b604a67
...@@ -12,14 +12,12 @@ namespace Validate; ...@@ -12,14 +12,12 @@ namespace Validate;
class PaySuccessGoodsCallbackValidate extends BaseValidate class PaySuccessGoodsCallbackValidate extends BaseValidate
{ {
protected $rule = [ protected $rule = [
'pay_order_id' => 'require', 'order_id' => 'require',
'goods_sku_id' => 'require', 'goods' => 'require',
'num' => 'require',
]; ];
protected $message = [ protected $message = [
"pay_order_id" => "pay_order_id 不能为空", "order_id" => "order_id 不能为空",
"goods_sku_id" => "goods_sku_id 不能为空", "goods" => "goods 信息不能为空",
"num" => "商品数量不能为空",
]; ];
} }
\ No newline at end of file
...@@ -769,7 +769,7 @@ class GoodsService ...@@ -769,7 +769,7 @@ class GoodsService
} }
} }
} }
$recordList = GoodsOperationRecord::select("*", ["goods_spu_id" => $goodsSpuId, "ORDER"=>["create_time"=>"DESC"]]); $recordList = GoodsOperationRecord::select("*", ["goods_spu_id" => $goodsSpuId, "ORDER" => ["create_time" => "DESC"]]);
if (!empty($recordList)) { if (!empty($recordList)) {
foreach ($recordList as $key => $record) { foreach ($recordList as $key => $record) {
$data["record_list"][$key]["status"] = $record["goods_status"]; $data["record_list"][$key]["status"] = $record["goods_status"];
...@@ -824,7 +824,7 @@ class GoodsService ...@@ -824,7 +824,7 @@ class GoodsService
$data["goods_info"]["rule"]["rule_limit"] = $sku["rule_limit"]; $data["goods_info"]["rule"]["rule_limit"] = $sku["rule_limit"];
$data["goods_info"]["rule"]["rule_refund"] = $ruleRefundDesc; $data["goods_info"]["rule"]["rule_refund"] = $ruleRefundDesc;
$data["goods_info"]["rule"]["rule_date_type"] = $ruleDateTypeDesc; $data["goods_info"]["rule"]["rule_date_type"] = $ruleDateTypeDesc;
$data["goods_info"]["rule"]["rule_time"] = date('H:i', strtotime($sku["rule_start_time"]))." ~ ".date('H:i', strtotime($sku["rule_end_time"])); $data["goods_info"]["rule"]["rule_time"] = date('H:i', strtotime($sku["rule_start_time"])) . " ~ " . date('H:i', strtotime($sku["rule_end_time"]));
$data["goods_info"]["rule"]["rule_desc"] = $sku["rule_desc"]; $data["goods_info"]["rule"]["rule_desc"] = $sku["rule_desc"];
$data["goods_info"]["rule"]["expiration_time"] = $sku["expiration_time"]; $data["goods_info"]["rule"]["expiration_time"] = $sku["expiration_time"];
...@@ -905,7 +905,7 @@ class GoodsService ...@@ -905,7 +905,7 @@ class GoodsService
$status = explode(",", $params["audit_status"]); $status = explode(",", $params["audit_status"]);
$where["audit_status"] = $status; $where["audit_status"] = $status;
} }
if (!empty($params["online_status"]) || (isset($params["online_status"]) && $params["online_status"] === '0')) { if (!empty($params["online_status"]) || (isset($params["online_status"]) && $params["online_status"] === '0')) {
$onlineStatus = explode(",", $params["online_status"]); $onlineStatus = explode(",", $params["online_status"]);
$where["online_status"] = $onlineStatus; $where["online_status"] = $onlineStatus;
} }
...@@ -1017,7 +1017,7 @@ class GoodsService ...@@ -1017,7 +1017,7 @@ class GoodsService
if (!empty($subShopList)) { if (!empty($subShopList)) {
foreach ($subShopList as $subShop) { foreach ($subShopList as $subShop) {
if (!empty($subShop["latitude"]) && !empty($subShop["longitude"])) { if (!empty($subShop["latitude"]) && !empty($subShop["longitude"])) {
$esId = $goodsSkuInfo["goods_sku_id"]."_".$subShop["sub_shop_id"]; $esId = $goodsSkuInfo["goods_sku_id"] . "_" . $subShop["sub_shop_id"];
$data = [ $data = [
"doc" => [ "doc" => [
"goods_sku_id" => $goodsSkuInfo["goods_sku_id"], "goods_sku_id" => $goodsSkuInfo["goods_sku_id"],
...@@ -1040,7 +1040,7 @@ class GoodsService ...@@ -1040,7 +1040,7 @@ class GoodsService
"life_account_icon" => empty($lifeAccountRes["response"]["result"]["life_account_icon"]) ? "" : $lifeAccountRes["response"]["result"]["life_account_icon"], "life_account_icon" => empty($lifeAccountRes["response"]["result"]["life_account_icon"]) ? "" : $lifeAccountRes["response"]["result"]["life_account_icon"],
"shop_name" => $subShop["shop_name"], "shop_name" => $subShop["shop_name"],
"shop_address" => $subShop["address"], "shop_address" => $subShop["address"],
"shop_location" => $subShop["latitude"].",".$subShop["longitude"], "shop_location" => $subShop["latitude"] . "," . $subShop["longitude"],
"update_time" => strtotime($goodsSkuInfo["update_time"]), "update_time" => strtotime($goodsSkuInfo["update_time"]),
], ],
]; ];
...@@ -1225,8 +1225,8 @@ class GoodsService ...@@ -1225,8 +1225,8 @@ class GoodsService
} }
$info = GoodsSku::getRecord($where); $info = GoodsSku::getRecord($where);
$info['original_price'] = empty($info['original_price']) ? 0 : $info['original_price']/100; $info['original_price'] = empty($info['original_price']) ? 0 : $info['original_price'] / 100;
$info['price'] = !empty($info['price']) ? $info['price']/100 : 0; $info['price'] = !empty($info['price']) ? $info['price'] / 100 : 0;
$info['desc_pic_url'] = !empty($info['desc_pic_url']) ? self::getUrlList($info['desc_pic_url']) : ''; $info['desc_pic_url'] = !empty($info['desc_pic_url']) ? self::getUrlList($info['desc_pic_url']) : '';
$info['introduce_pic_url'] = !empty($info['introduce_pic_url']) ? self::getUrlList($info['introduce_pic_url']) : ""; $info['introduce_pic_url'] = !empty($info['introduce_pic_url']) ? self::getUrlList($info['introduce_pic_url']) : "";
return $info; return $info;
...@@ -1283,7 +1283,7 @@ class GoodsService ...@@ -1283,7 +1283,7 @@ class GoodsService
if (empty($params)) { if (empty($params)) {
return []; return [];
} }
if (!empty($params['goods_spu_id'])) { if (!empty($params['goods_spu_id'])) {
$where['goods_spu_id'] = $params['goods_spu_id']; $where['goods_spu_id'] = $params['goods_spu_id'];
} }
...@@ -1353,46 +1353,52 @@ class GoodsService ...@@ -1353,46 +1353,52 @@ class GoodsService
*/ */
public static function paySuccessGoodsCallback($params = []) public static function paySuccessGoodsCallback($params = [])
{ {
$payOrderId = $params["pay_order_id"]; $orderId = $params["order_id"];
$goodsSkuId = $params["goods_sku_id"]; $goodsPayInfos = json_decode($params["goods"], true);
$num = $params["num"];
$record = PaySuccessGoodsCallbackRecord::getRecord([
"pay_order_id" => $payOrderId,
"goods_sku_id" => $goodsSkuId,
"operator_result" => PaySuccessGoodsCallbackRecord::OPERATOR_RESULT_SUCCESS]
);
if (empty($record)) {
GoodsSku::beginTransaction();
$goodsSku = GoodsSku::getRecord(["goods_sku_id"=>$goodsSkuId]);
if (empty($goodsSku)) {
throw new GoodsException(["cus" => 15]);
}
GoodsSku::save(["total_amount_sold" => $goodsSku["total_amount_sold"] + $num]
, ["goods_sku_id" => $goodsSkuId]);
PaySuccessGoodsCallbackRecord::insertRecord([ GoodsSku::beginTransaction();
"pay_order_id" => $payOrderId, foreach ($goodsPayInfos as $goodsSkuId => $num) {
"goods_sku_id" => $goodsSkuId, $record = PaySuccessGoodsCallbackRecord::getRecord([
"operator_result" => PaySuccessGoodsCallbackRecord::OPERATOR_RESULT_SUCCESS] "order_id" => $orderId,
"goods_sku_id" => $goodsSkuId,
"operator_result" => PaySuccessGoodsCallbackRecord::OPERATOR_RESULT_SUCCESS]
); );
if (empty($record)) {
$goodsSku = GoodsSku::getRecord(["goods_sku_id" => $goodsSkuId]);
if (empty($goodsSku)) {
throw new GoodsException(["cus" => 15]);
}
if (!GoodsSku::commit()) { GoodsSku::save(["total_amount_sold" => $goodsSku["total_amount_sold"] + $num]
GoodsSku::rollback(); , ["goods_sku_id" => $goodsSkuId]);
PaySuccessGoodsCallbackRecord::insertRecord([ PaySuccessGoodsCallbackRecord::insertRecord([
"pay_order_id" => $payOrderId, "order_id" => $orderId,
"goods_sku_id" => $goodsSkuId,
"num" => $num,
"operator_result" => PaySuccessGoodsCallbackRecord::OPERATOR_RESULT_SUCCESS]
);
}
}
if (!GoodsSku::commit()) {
GoodsSku::rollback();
foreach ($goodsPayInfos as $goodsSkuId => $num) {
PaySuccessGoodsCallbackRecord::insertRecord([
"order_id" => $orderId,
"goods_sku_id" => $goodsSkuId, "goods_sku_id" => $goodsSkuId,
"num" => $num,
"operator_result" => PaySuccessGoodsCallbackRecord::OPERATOR_RESULT_FAIL] "operator_result" => PaySuccessGoodsCallbackRecord::OPERATOR_RESULT_FAIL]
); );
return false;
} }
return false;
} else {
//同步到es //同步到es
self::updateGoodsInfoToEs($goodsSkuId); foreach ($goodsPayInfos as $goodsSkuId => $num) {
self::updateGoodsInfoToEs($goodsSkuId);
}
} }
return true; return true;
} }
...@@ -1411,14 +1417,14 @@ class GoodsService ...@@ -1411,14 +1417,14 @@ class GoodsService
$introducePicUrl = explode(",", $skuData["introduce_pic_url"]); $introducePicUrl = explode(",", $skuData["introduce_pic_url"]);
} }
$ids = GoodsSkuPicRecord::select("id", ["goods_sku_id"=>$goodsSkuId]); $ids = GoodsSkuPicRecord::select("id", ["goods_sku_id" => $goodsSkuId]);
GoodsSkuPicRecord::delete(["id"=>$ids]); GoodsSkuPicRecord::delete(["id" => $ids]);
$urlList = array_unique(array_merge($descPicUrl, $introducePicUrl)); $urlList = array_unique(array_merge($descPicUrl, $introducePicUrl));
$data = []; $data = [];
if (!empty($urlList)) { if (!empty($urlList)) {
foreach ($urlList as $url) { foreach ($urlList as $url) {
$data[] = ["goods_sku_id"=>$goodsSkuId, "url"=>$url]; $data[] = ["goods_sku_id" => $goodsSkuId, "url" => $url];
} }
GoodsSkuPicRecord::save($data); GoodsSkuPicRecord::save($data);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment