最近新开发了一款生态商城系统,APP不仅具有购物、订单查询、产品、领域、用户评价等常见功能,还实现了安卓版手机特有的VIP会员登录注册、广告栏目、招商合作等功能。总体目标是整合本土品牌、制造商、代理商,为商家和消费者提供一站式解决方案。
简单地说,生态商城是一个象征性的电子商务平台,类似于京东和淘宝。京东和淘宝的消费只是普通的消费者地位,不参与平台的利润红利。那么,如果你在生态商城参与分享和消费,你就有两个身份:一个是合伙人身份,你可以晋升为主管、经理、总监和副总裁级别,每月参与平台销售利润的72%。第二种身份是消费者的身份,在赵县生态商城消费时,他已经不再是一个普通的消费者,而是转变成了一个消费者。根据消费金额,他将被提升到不同的消费层次,获得平台的访问权限。证书奖励。这张通行证是平台的股权凭证,并在年底参与整个平台30%的利润分红。平台上的会员数据越多,销售数据越多,年终参与分红也越多。
每个人都离不开消费,而消费无处不在。只要你在生态商城消费,你就是一个消费者,一个股东,一个合作伙伴,你就可以参与到整个平台的红利中。
通过消费获得的代币将于本月底在联盟链上线,并可进行交易和流通。公司原股票代码已经公布,并将于年底在香港联交所上市。
我们还可以推荐货架上出售的产品。供应商可以赚取销售利润,推荐人也可以获得2%的推荐奖励。在当前疫情形势下企业苦苦挣扎、生活压力加大的特殊时期,生态商城为我们提供了一个安全、可持续的共同创业、共同致富的机会。我们每周的分红也照常进行,货架上的产品也正常销售。不受影响。多一个选择,为自己和公司多一个收入保障,在疫情期间多一条出路。
生态系统部分开发源码分享:
<?php
namespace app\api\controller\order;
use app\admin\model\system\{
SystemAttachment, ShippingTemplates
};
use app\admin\model\user\User;
use app\models\routine\RoutineFormId;
use crmeb\repositories\OrderRepository;
use app\models\store\{
StoreBargainUser,
StoreCart,
StoreCoupon,
StoreCouponIssue,
StoreCouponUser,
StoreOrder,
StoreOrderCartInfo,
StoreOrderStatus,
StorePink,
StoreProductReply,
StoreSeckill
};
use app\models\system\SystemStore;
use app\models\user\UserAddress;
use app\models\user\UserLevel;
use app\Request;
use think\facade\Cache;
use crmeb\services\{
CacheService,
ExpressService,
SystemConfigService,
UtilService
};
/**
* 订单类
* Class StoreOrderController
* @package app\api\controller\order
*/
class StoreOrderController
{
/**
* 订单确认
* @param Request $request
* @return mixed
*/
public function confirm(Request $request)
{
$temp = ShippingTemplates::get(1);
if (!$temp) return app('json')->fail('默认模板未配置,无法下单');
list($cartId) = UtilService::postMore(['cartId'], $request, true);
if (!is_string($cartId) || !$cartId) return app('json')->fail('请提交购买的商品');
$uid = $request->uid();
$cartGroup = StoreCart::getUserProductCartList($uid, $cartId, 1);
if (count($cartGroup['invalid'])) return app('json')->fail($cartGroup['invalid'][0]['productInfo']['store_name'] . '已失效!');
if (!$cartGroup['valid']) return app('json')->fail('请提交购买的商品');
$cartInfo = $cartGroup['valid'];
$addr = UserAddress::where('uid', $uid)->where('is_default', 1)->find();
$priceGroup = StoreOrder::getOrderPriceGroup($cartInfo, $addr);
if ($priceGroup === false) {
return app('json')->fail(StoreOrder::getErrorInfo('运费模板不存在'));
}
$other = [
'offlinePostage' => sys_config('offline_postage'),
'integralRatio' => sys_config('integral_ratio')
];
$usableCoupons = StoreCouponUser::getUsableCouponList($uid, $cartGroup, $priceGroup['totalPrice']);
$usableCoupon = isset($usableCoupons[0]) ? $usableCoupons[0] : null;
$cartIdA = explode(',', $cartId);
$seckill_id = 0;
$combination_id = 0;
$bargain_id = 0;
$box_id = 0;
if (count($cartIdA) == 1) {
$seckill_id = StoreCart::where('id', $cartId)->value('seckill_id');
$combination_id = StoreCart::where('id', $cartId)->value('combination_id');
$bargain_id = StoreCart::where('id', $cartId)->value('bargain_id');
$box_id = StoreCart::where('id', $cartId)->value('box_id');
}
$data['deduction'] = $seckill_id || $combination_id || $bargain_id;
$data['usableCoupon'] = $usableCoupon;
$data['addressInfo'] = UserAddress::getUserDefaultAddress($uid);
$data['seckill_id'] = $seckill_id;
$data['combination_id'] = $combination_id;
$data['bargain_id'] = $bargain_id;
$data['cartInfo'] = $cartInfo;
$data['box_id'] = $box_id;
$data['priceGroup'] = $priceGroup;
$data['orderKey'] = StoreOrder::cacheOrderInfo($uid, $cartInfo, $priceGroup, $other);
$data['offlinePostage'] = $other['offlinePostage'];
$vipId = UserLevel::getUserLevel($uid);
$user = $request->user();
if (isset($user['pwd'])) unset($user['pwd']);
$user['vip'] = $vipId !== false ? true : false;
if ($user['vip']) {
$user['vip_id'] = $vipId;
$user['discount'] = UserLevel::getUserLevelInfo($vipId, 'discount');
}
$data['userInfo'] = $user;
$data['integralRatio'] = $other['integralRatio'];
$data['offline_pay_status'] = (int)sys_config('offline_pay_status') ?? (int)2;
$data['store_self_mention'] = (int)sys_config('store_self_mention') ?? 0;//门店自提是否开启
$data['system_store'] = ($res = SystemStore::getStoreDispose()) ? $res : [];//门店信息
return app('json')->successful($data);
}
/**
* 计算订单金额
* @param Request $request
* @param $key
* @return mixed
* @throws \think\Exception
* @throws \think\db\exception\DataNotFoundException
* @throws \think\db\exception\ModelNotFoundException
* @throws \think\exception\DbException
*/
public function computedOrder(Request $request, $key)
{
// $priceGroup = StoreOrder::getOrderPriceGroup($cartInfo);
if (!$key) return app('json')->fail('参数错误!');
$uid = $request->uid();
if (StoreOrder::be(['order_id|unique' => $key, 'uid' => $uid, 'is_del' => 0]))
return app('json')->status('extend_order', '订单已生成', ['orderId' => $key, 'key' => $key]);
list($addressId, $couponId, $payType, $useIntegral, $mark, $combinationId, $pinkId, $seckill_id, $formId, $bargainId,$boxId, $shipping_type) = UtilService::postMore([
'addressId', 'couponId', ['payType', 'yue'], ['useIntegral', 0], 'mark', ['combinationId', 0], ['pinkId', 0], ['seckill_id', 0], ['formId', ''], ['bargainId', ''],['boxId', 0],
['shipping_type', 1],
], $request, true);
$payType = strtolower($payType);
if ($bargainId) {
$bargainUserTableId = StoreBargainUser::getBargainUserTableId($bargainId, $uid);//TODO 获取用户参与砍价表编号
if (!$bargainUserTableId)
return app('json')->fail('砍价失败');
$status = StoreBargainUser::getBargainUserStatusEnd($bargainUserTableId);
if ($status == 3)
return app('json')->fail('砍价已支付');
StoreBargainUser::setBargainUserStatus($bargainId, $uid); //修改砍价状态
}
if ($pinkId) {
$cache_pink = Cache::get(md5('store_pink_'.$pinkId));
if($cache_pink && bcsub($cache_pink['people'], $cache_pink['now_people'], 0) <= 0){
return app('json')->status('ORDER_EX