初始上传
This commit is contained in:
27
addon/form/event/Install.php
Executable file
27
addon/form/event/Install.php
Executable file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
|
||||
namespace addon\form\event;
|
||||
|
||||
/**
|
||||
* 应用安装
|
||||
*/
|
||||
class Install
|
||||
{
|
||||
/**
|
||||
* 执行安装
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
return success();
|
||||
}
|
||||
}
|
||||
68
addon/form/event/OrderCreateAfter.php
Executable file
68
addon/form/event/OrderCreateAfter.php
Executable file
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\form\event;
|
||||
|
||||
use addon\form\model\Form;
|
||||
|
||||
/**
|
||||
* 订单待付款
|
||||
*/
|
||||
class OrderCreateAfter
|
||||
{
|
||||
/**
|
||||
* @return multitype:number unknown
|
||||
*/
|
||||
public function handle($data)
|
||||
{
|
||||
/** @var \app\model\order\OrderCreate $order_object */
|
||||
$order_object = $data['order_object'];
|
||||
$form_data = $order_object->param['form_data'] ?? [];
|
||||
if ($form_data) {
|
||||
$site_id = $order_object->site_id;
|
||||
$order_id = $order_object->order_id;
|
||||
$member_id = $order_object->member_id;
|
||||
// 添加订单表单
|
||||
$form = new Form();
|
||||
if (isset($form_data[ 'form_data' ])) {
|
||||
$res = $form->addFormData([
|
||||
'site_id' => $site_id,
|
||||
'form_id' => $form_data[ 'form_id' ],
|
||||
'member_id' => $member_id,
|
||||
'relation_id' => $order_id,
|
||||
'form_data' => $form_data[ 'form_data' ],
|
||||
'scene' => 'order'
|
||||
]);
|
||||
if ($res[ 'code' ] != 0) return $res;
|
||||
}
|
||||
// 添加商品表单
|
||||
$goods_form = $form_data[ 'goods_form' ] ?? [];
|
||||
if ($goods_form) {
|
||||
//查询订单项
|
||||
// $goods_list = array_column($order_object->goods_list, null, 'sku_id');
|
||||
$order_goods_list = array_column($order_object->getOrderGoodsList(), null, 'sku_id');
|
||||
foreach ($goods_form as $sku_id => $form_item) {
|
||||
// $goods_item = $goods_list[ $sku_id ] ?? [];
|
||||
$order_goods_item = $order_goods_list[$sku_id] ?? [];
|
||||
$res = $form->addFormData([
|
||||
'site_id' => $site_id,
|
||||
'form_id' => $form_item[ 'form_id' ],
|
||||
'member_id' => $member_id,
|
||||
'relation_id' => $order_goods_item[ 'order_goods_id' ] ?? 0,
|
||||
'form_data' => $form_item[ 'form_data' ],
|
||||
'scene' => 'goods'
|
||||
]);
|
||||
if ($res[ 'code' ] != 0) return $res;
|
||||
}
|
||||
}
|
||||
}
|
||||
return success();
|
||||
}
|
||||
}
|
||||
51
addon/form/event/OrderPayment.php
Executable file
51
addon/form/event/OrderPayment.php
Executable file
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\form\event;
|
||||
|
||||
use addon\form\model\Form;
|
||||
|
||||
/**
|
||||
* 订单待付款
|
||||
*/
|
||||
class OrderPayment
|
||||
{
|
||||
/**
|
||||
* @param $data
|
||||
* @return array
|
||||
*/
|
||||
public function handle($data)
|
||||
{
|
||||
/** @var \app\model\order\OrderCreate $order_object */
|
||||
$order_object = $data['order_object'];
|
||||
$site_id = $order_object->site_id;
|
||||
$form_model = new Form();
|
||||
$info = $form_model->getFormInfo([ [ 'site_id', '=', $site_id], [ 'is_use', '=', 1 ], [ 'form_type', '=', 'order' ] ], 'id,json_data,form_name')[ 'data' ] ?? [];
|
||||
if (!empty($info)) {
|
||||
$info[ 'json_data' ] = json_decode($info[ 'json_data' ], true);
|
||||
//todo 查询用法
|
||||
$order_object->system_form = $info;
|
||||
}
|
||||
$form_ids = array_filter(array_unique(array_column($order_object->goods_list, 'form_id')));
|
||||
if($form_ids){
|
||||
$form_list = $form_model->getFormList([ [ 'site_id', '=', $site_id], [ 'is_use', '=', 1 ] , ['id', 'in', $form_ids]], '', 'id, json_data')['data'] ?? [];
|
||||
$form_array = array_column($form_list, null, 'id');
|
||||
foreach($order_object->goods_list as &$goods_item){
|
||||
$item_form = $form_array[$goods_item['form_id'] ?? 0] ?? [];
|
||||
if($item_form){
|
||||
$item_form['json_data'] = json_decode($item_form[ 'json_data' ], true);
|
||||
$goods_item[ 'goods_form' ] = $item_form;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
46
addon/form/event/ShowPromotion.php
Executable file
46
addon/form/event/ShowPromotion.php
Executable file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
namespace addon\form\event;
|
||||
|
||||
/**
|
||||
* 活动展示
|
||||
*/
|
||||
class ShowPromotion
|
||||
{
|
||||
|
||||
/**
|
||||
* 活动展示
|
||||
* @return array
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$data = [
|
||||
'shop' => [
|
||||
[
|
||||
//插件名称
|
||||
'name' => 'form',
|
||||
//店铺端展示分类 shop:营销活动 member:互动营销
|
||||
'show_type' => 'tool',
|
||||
//展示主题
|
||||
'title' => '系统表单',
|
||||
//展示介绍
|
||||
'description' => '帮助商家快速收集客户信息',
|
||||
//展示图标
|
||||
'icon' => 'addon/form/icon.png',
|
||||
//跳转链接
|
||||
'url' => 'form://shop/form/lists',
|
||||
]
|
||||
]
|
||||
|
||||
];
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
27
addon/form/event/UnInstall.php
Executable file
27
addon/form/event/UnInstall.php
Executable file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
/**
|
||||
* Niushop商城系统 - 团队十年电商经验汇集巨献!
|
||||
* =========================================================
|
||||
* Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
|
||||
* ----------------------------------------------
|
||||
* 官方网址: https://www.niushop.com
|
||||
|
||||
* =========================================================
|
||||
*/
|
||||
|
||||
|
||||
namespace addon\form\event;
|
||||
|
||||
/**
|
||||
* 应用卸载
|
||||
*/
|
||||
class UnInstall
|
||||
{
|
||||
/**
|
||||
* 执行卸载
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
return success();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user