274 行
9.4 KiB
PHP
可执行文件
274 行
9.4 KiB
PHP
可执行文件
<?php
|
|
|
|
namespace Common\Business;
|
|
|
|
use Common\Model\RetailMerchantConfigModel;
|
|
use Common\Model\RetailMerchantModel;
|
|
use Retail\Model\ThirdConfigModel;
|
|
use Retail\Model\ThirdErpSetModel;
|
|
|
|
//[1.8.50]
|
|
|
|
/**
|
|
* 商户配置类
|
|
* Class MerchantConfig
|
|
* [
|
|
* 商户与第三方平台的接口路径关联信息 ThirdErpSetOperation
|
|
* 第三方平台的配置参数 addThirdConfig
|
|
* 支付时代金券核销类型 payCouponType
|
|
* 商家券logo设置 shopCouponImgSet
|
|
* 获取商户小程序功能配置 getXcxConfig
|
|
* 获取次卡基本设置 getCardBaseData
|
|
* 保存次卡基本设置 setCardBaseData
|
|
* ]
|
|
* @package Common\Business
|
|
*/
|
|
class MerchantConfig
|
|
{
|
|
/**
|
|
* 商户与第三方平台的接口路径关联信息
|
|
* @param $param
|
|
* [
|
|
* merchant_id
|
|
* info=>json字符串{
|
|
* id 合伙人路径配置id
|
|
* type 模块类型
|
|
* status 1开启 2关闭
|
|
* route_url 路径
|
|
* third_id 商户表中的合伙人路径配置id
|
|
* }
|
|
* ]
|
|
* @return mixed
|
|
*/
|
|
public function ThirdErpSetOperation($param)
|
|
{
|
|
if (empty($param['merchant_id']) || empty($param['info'])) {
|
|
return callBack(statusCode()['error'], '参数有误');
|
|
}
|
|
$info = json_decode($param['info'], true);
|
|
if (!is_array($info)) {
|
|
return callBack(statusCode()['error'], '参数格式有误');
|
|
}
|
|
$data = [
|
|
'merchant_id' => $param['merchant_id'],
|
|
'update_time' => $_SERVER['REQUEST_TIME']
|
|
];
|
|
$add_arr = [];
|
|
try {
|
|
$ThirdSetModel = new ThirdErpSetModel();
|
|
foreach ($info as $val) {
|
|
$data['status'] = $val['status'] ? $val['status'] : 2;
|
|
if (!empty($val['third_id'])) {
|
|
//编辑
|
|
$ThirdSetModel->updateOrder([
|
|
'third_id' => $val['third_id'],
|
|
'merchant_id' => $param['merchant_id']
|
|
], $data);
|
|
} else {
|
|
//添加
|
|
$data['third_id'] = $val['id'];
|
|
$add_arr[] = $data;
|
|
}
|
|
}
|
|
if (!empty($add_arr)) {
|
|
$id = $ThirdSetModel->addAll($add_arr);
|
|
if (!empty($id)) {
|
|
return callBack(statusCode()['success'], '配置成功');
|
|
} else {
|
|
return callBack(statusCode()['error'], '路径配置失败');
|
|
}
|
|
}
|
|
return callBack(statusCode()['success'], '配置成功');
|
|
} catch (\Exception $e) {
|
|
return callBack(statusCode()['error'], '路径配置失败');
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* 第三方平台的配置参数
|
|
* @param $param
|
|
* [
|
|
* merchant_id
|
|
* platform_type 2 微礼平台
|
|
* info=>json字符串{
|
|
* third_domain_url
|
|
* third_account_number
|
|
* third_password
|
|
* token
|
|
* }
|
|
* ]
|
|
* @return mixed
|
|
*/
|
|
public function addThirdConfig($param)
|
|
{
|
|
try {
|
|
$data = json_decode($param['info'], true);
|
|
if (!is_array($data) || empty($data)) {
|
|
return callBack(statusCode()['error'], '参数格式有误');
|
|
}
|
|
$data['merchant_id'] = $param['merchant_id'];
|
|
$data['platform_type'] = $param['platform_type'];
|
|
$data['add_time'] = $_SERVER['REQUEST_TIME'];
|
|
$data['third_update_time'] = $_SERVER['REQUEST_TIME'];
|
|
$where = [
|
|
'merchant_id' => $param['merchant_id'],
|
|
'platform_type' => $param['platform_type']
|
|
];
|
|
$ThirdConfigModel = new ThirdConfigModel();
|
|
$id = $ThirdConfigModel->getFindField($where, 'id');
|
|
if (!empty($id)) {
|
|
unset($data['id']);
|
|
$ThirdConfigModel->updateOrder($where, $data);
|
|
return callBack(statusCode()['success'], '修改成功');
|
|
} else {
|
|
$id = $ThirdConfigModel->addOrder($data);
|
|
if (!empty($id)) {
|
|
return callBack(statusCode()['success'], '保存成功');
|
|
} else {
|
|
return callBack(statusCode()['error'], '插件参数配置失败');
|
|
}
|
|
}
|
|
} catch (\Exception $e) {
|
|
return callBack(statusCode()['error'], '插件参数配置失败');
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* 支付时代金券核销类型
|
|
* @param $param
|
|
* [
|
|
* operator_type 1后台
|
|
* user_type 3商户
|
|
* merchant_id
|
|
* pay_coupon_goods_tag 代金券核销指定类型 1指定商品id 2指定商品条码
|
|
* ]
|
|
* @return mixed
|
|
*/
|
|
public function payCouponType($param)
|
|
{
|
|
$VerifyClass = new VerifyParam();
|
|
$verifyResult = $VerifyClass->identityVerify($param);
|
|
if ($verifyResult['status'] != 1) {
|
|
return $verifyResult;
|
|
}
|
|
$where = [
|
|
'merchant_id' => $param['merchant_id']
|
|
];
|
|
try {
|
|
$ConfigModel = new RetailMerchantConfigModel();
|
|
$info = $ConfigModel->getFind($where);
|
|
$data = [
|
|
'pay_coupon_goods_tag' => $param['pay_coupon_goods_tag'] ? $param['pay_coupon_goods_tag'] : 1
|
|
];
|
|
if (!empty($info)) {
|
|
//编辑
|
|
$state = $ConfigModel->updateOrder($where, $data);
|
|
} else {
|
|
//添加
|
|
$data['merchant_id'] = $param['merchant_id'];
|
|
$state = $ConfigModel->addOrder($data);
|
|
}
|
|
if ($state) {
|
|
return callBack(statusCode()['success'], '操作成功');
|
|
} else {
|
|
return callBack(statusCode()['error'], '暂无修改');
|
|
}
|
|
} catch (\Exception $e) {
|
|
return callBack(statusCode()['error'], '暂无修改');
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* 商家券logo设置
|
|
* @param $param
|
|
* [
|
|
* merchant_id
|
|
* shop_coupon_simple_image 本地图片 普通模式
|
|
* shop_coupon_service_image 本地图片 服务商模式
|
|
* shop_coupon_simple_wx_image 微信 普通模式
|
|
* shop_coupon_service_wx_image 微信 服务商模式
|
|
* ]
|
|
* @return mixed
|
|
*/
|
|
public function shopCouponImgSet($param)
|
|
{
|
|
if (!empty($param['shop_coupon_simple_image'])) {
|
|
$content['shop_coupon_simple_image'] = $param['shop_coupon_simple_image'];
|
|
$content['shop_coupon_simple_wx_image'] = $param['shop_coupon_simple_wx_image'];
|
|
} else if (!empty($param['shop_coupon_service_image'])) {
|
|
$content['shop_coupon_service_image'] = $param['shop_coupon_service_image'];
|
|
$content['shop_coupon_service_wx_image'] = $param['shop_coupon_service_wx_image'];
|
|
}
|
|
$configModel = new RetailMerchantConfigModel();
|
|
$config = $configModel->getFind([
|
|
'merchant_id' => $param['merchant_id']
|
|
]);
|
|
if (!empty($config)) {
|
|
$configModel->updateOrder([
|
|
'merchant_id' => $param['merchant_id']
|
|
], $content);
|
|
} else {
|
|
$content['merchant_id'] = $param['merchant_id'];
|
|
$configModel->addOrder($content);
|
|
}
|
|
return callBack(statusCode()['success'], "修改成功");
|
|
}
|
|
|
|
/**
|
|
* 获取商户小程序功能配置
|
|
* @param $param
|
|
* $param['merchant_id'] 商户ID
|
|
* @return mixed
|
|
*/
|
|
public function getXcxConfig($param)
|
|
{
|
|
if (empty($param['merchant_id'])) {
|
|
return callBack(statusCode()['error'], "缺少商户ID");
|
|
}
|
|
$ConfigModel = new RetailMerchantConfigModel();
|
|
$data = $ConfigModel->getFind(array('merchant_id' => $param['merchant_id']), 'store_access,store_switch,tourist_store_access');
|
|
$MerchantModel = new RetailMerchantModel();
|
|
$data['nearby_status'] = $MerchantModel->getFindField(array('id' => $param['merchant_id']), 'nearby_status');
|
|
return callBack(statusCode()['success'], "获取成功", $data);
|
|
}
|
|
|
|
/**
|
|
* 获取次卡基本设置
|
|
* @param $param
|
|
* $param['merchant_id'] 商户ID
|
|
* @return mixed
|
|
*/
|
|
public function getCardBaseData($param)
|
|
{
|
|
if (!$param['merchant_id']) {
|
|
return callBack(statusCode()['error'], '缺少参数');
|
|
}
|
|
$MerchantConfigModel = new RetailMerchantConfigModel();
|
|
$use_sub_card_code = $MerchantConfigModel->getFindField(['merchant_id' => $param['merchant_id']], 'use_sub_card_code');
|
|
return callBack(statusCode()['success'], '获取成功', ['use_sub_card_code' => $use_sub_card_code == 2 ? 2 : 1]);
|
|
}
|
|
|
|
/**
|
|
* 保存次卡基本设置
|
|
* @param $param
|
|
* $param['merchant_id'] 商户ID
|
|
* $param['use_sub_card_code'] 次卡面核销码状态 1需要核销码 2不需要
|
|
* @return mixed
|
|
*/
|
|
public function setCardBaseData($param)
|
|
{
|
|
if (!$param['merchant_id'] || !$param['use_sub_card_code'] || !in_array($param['use_sub_card_code'], ['1', '2'])) {
|
|
return callBack(statusCode()['error'], '缺少参数');
|
|
}
|
|
$MerchantConfigModel = new RetailMerchantConfigModel();
|
|
$res = $MerchantConfigModel->updateOrder(['merchant_id' => $param['merchant_id']], ['use_sub_card_code' => $param['use_sub_card_code']]);
|
|
if ($res) {
|
|
return callBack(statusCode()['success'], '修改成功');
|
|
} else {
|
|
return callBack(statusCode()['error'], '您未修改设置');
|
|
}
|
|
}
|
|
} |