提交 0d08e7ee authored 作者: 李大见's avatar 李大见
......@@ -18,7 +18,7 @@ class Kernel extends ConsoleKernel
Commands\GetJdSelfOrder::class,
Commands\GetJdSelfRefund::class,
Commands\GetJdSelfShhOrder::class
Commands\DeductionFee::class
// Commands\DeductionFee::class
];
/**
......@@ -34,9 +34,9 @@ class Kernel extends ConsoleKernel
$schedule->command('getOrder')->everyFiveMinutes();//每五分钟执行一次
$schedule->command('decJdOrder')->everyFiveMinutes();//每五分钟执行一次
$schedule->command('getJdSelfOrder')->everyFiveMinutes();//每五分钟执行一次
$schedule->command('getJdSelfRefund')->everyFiveMinutes();//每五分钟执行一次
// $schedule->command('getJdSelfRefund')->everyFiveMinutes();//每五分钟执行一次
$schedule->command('GetJdSelfShhOrder')->everyFiveMinutes();//每五分钟执行一次
$schedule->command('DeductionFee')->everyFiveMinutes();//每五分钟执行一次
// $schedule->command('DeductionFee')->everyFiveMinutes();//每五分钟执行一次
}
/**
......
<?php
/**
* 文件名称(自动拨打电话)
* 文件简单描述(自动拨打电话)
* @author DouBin
* @Date: 2024/8/7
* @Time: 11:46
* @Email: db@sudianwang.com
* @version 1.0
* @copyright BlueCity
*/
namespace App\Http\Controllers\Api;
use App\Http\Controllers\BaseController;
use App\Models\AdminInfor;
use App\Models\OrderCallphone;
use App\Models\OrderList;
use App\Services\CommonService;
use App\Services\OrderDeductionFeeService;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
use DB;
class SingLeCallByTtsController extends BaseController
{
/**|---------------------------------------------------------------------------------
* @name 获取需要推送数据
* @retrun \Illuminate\Http\JsonResponse /multitype:array
* @author dou 2024/9/24 14:04
* |---------------------------------------------------------------------------------
*/
public function getSingleCallByTts ( ){
if('08:30:00'<date("H:i:s") && '18:00:00'>date("H:i:s")){
$time_start = date("Y-m-d H:i:s", strtotime(" -5 minute" . date("Y-m-d H:i:s")));
$list = OrderList::where('stauas', '20')->where('call_phone', 1)->where('id', 5538)->whereIn('company_id', [12, 14])->where('create_time', '<', $time_start)->select('id','ser_id', 'order_num', 'sys_num', 'serial_number', 'customer_id','company_id')->limit(10)->get();
$list = CommonService::dataToArray($list);
$ser_id = [];
$num = 0;
$data = [];
if (!empty($list)) {
foreach ($list as $k => $v) {
$indata = $v['ser_id'].$v['company_id'];
if (!empty($ser_id) && in_array($indata, $ser_id)) {
}else{
$db = new OrderList;
$params = ['ser_id' => $v['ser_id'],'stauas'=>20,'company_id'=>$v['company_id']];
$select = ['id','serial_number'];//,'order_num', 'sys_num', 'serial_number', 'stauas', 'ser_id', 'p_id', 'order_goods_id', 'store_type', 'ol_dispamount', 'customer_id'
$orderBy = ['stauas' => 'DESC'];
$orderListArrs = CommonService::getMysqlData($db, $params, $select, $orderBy);
if (!$orderListArrs) {
$data[$num]['order_num'] = $v['order_num'];
$data[$num]['ser_id'] = $v['ser_id'];
$data[$num]['company_id'] = $v['company_id'];
$data[$num]['content'] = '数据异常';
$num++;
}else{
$phone = AdminInfor::where('admin_id',$v['ser_id'])->value('phone');
$res = self::singleCallByTts($phone);
$serial_number = array_column($orderListArrs, 'serial_number');
$order_num = array_column($orderListArrs, 'order_num');
$data[$num]['order_num'] = $order_num.'-'.$serial_number;
$data[$num]['ser_id'] = $v['ser_id'];
$data[$num]['company_id'] = $v['company_id'];
$data[$num]['content'] = $res;
$num++;
$res = CommonService::dataToArray($res);
if($res['Code'] =='OK'){
$ser_id[] = $indata;
$id = array_column($orderListArrs, 'id');
OrderList::whereIn("id",$id)->update(['call_phone'=>2]);
$och['och_RequestId'] = $res['RequestId'];
$och['och_CallId'] = $res['CallId'];
$och['och_company_id'] = $v['company_id'];
$och['och_order_number'] = $v['order_num'];
$och['och_serial_number'] = $v['serial_number'];
$och['och_state'] = 1;
$och['och_creactime'] = date('Y-m-d H:i:s');
$och['och_updatetime'] = date('Y-m-d H:i:s');
$res = OrderCallphone::insert($och);
if(!$res){
$post_data['adm_id'] = 0;
$post_data['company_id'] = $v['company_id'];
$post_data['order_number'] = $v['order_num'].'-'.$v['serial_number'];
$post_data['reo_price'] = -0.1;
$post_data['reo_pay_way'] = 5;
$post_data['pay_type'] = 1;
OrderDeductionFeeService::deductFee($post_data);
}
}
}
}
}
CommonService::addLog('自动拒单', json_encode($data, JSON_UNESCAPED_UNICODE), '', 'singleCallByTts');
return response()->json(['code'=>200, 'msg'=>'操作完成', 'data'=>$data]);
}else{
CommonService::addLog('电话通知', '无数据', '', 'singleCallByTts');
}
}else{
CommonService::addLog('电话通知', '非指定时间段08:30:00-18:00:00', '','singleCallByTts');
}
}
/**|---------------------------------------------------------------------------------
* @name 发送电话通知方法
* @param string 服务商id 订单单号
* @retrun \Illuminate\Http\JsonResponse /multitype:array
* @author dou 2024/9/24 16:55
* |---------------------------------------------------------------------------------
*/
public function singleCallByTts ( $phone ){
$params = array ();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "LTAI5t64Hr8rE8NdT1D1jKNh";
$accessKeySecret = "vpJvj5ksVOy7szD9DFraUbb7yHv8Jb";
// fixme 必填: 被叫显号
//$params["CalledShowNumber"] = "4001112222";
// fixme 必填: 被叫显号
$params["CalledNumber"] = $phone;
// fixme 必填: Tts模板Code
$params["TtsCode"] = "TTS_304855064";
// fixme 选填: Tts模板中的变量替换JSON,假如Tts模板中存在变量,则此处必填
//$params["TtsParam"] = array("AckNum" => "123456");
// fixme 选填: 音量
$params["Volume"] = 100;
// fixme 选填: 播放次数
$params["PlayTimes"] = 2;
// fixme 选填: 音量, 取值范围 0~200
$params["Volume"] = 100;
// fixme 选填: 预留给调用方使用的ID, 最终会通过在回执消息中将此ID带回给调用方
$params["OutId"] = "123456";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
if(!empty($params["TtsParam"]) && is_array($params["TtsParam"])) {
$params["TtsParam"] = json_encode($params["TtsParam"], JSON_UNESCAPED_UNICODE);
}
// 此处可能会抛出异常,注意catch
$content = self::request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-beijing",
"Action" => "SingleCallByTts",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
/**
* 生成签名并发起请求
*
* @param $accessKeyId string AccessKeyId (https://ak-console.aliyun.com/)
* @param $accessKeySecret string AccessKeySecret
* @param $domain string API接口所在域名
* @param $params array API具体参数
* @param $security boolean 使用https
* @param $method boolean 使用GET或POST方法请求,VPC仅支持POST
* @return bool|\stdClass 返回API接口调用结果,当发生错误时返回false
*/
public function request($accessKeyId, $accessKeySecret, $domain, $params, $security=false, $method='POST') {
$apiParams = array_merge(array (
"SignatureMethod" => "HMAC-SHA1",
"SignatureNonce" => uniqid(mt_rand(0,0xffff), true),
"SignatureVersion" => "1.0",
"AccessKeyId" => $accessKeyId,
"Timestamp" => gmdate("Y-m-d\TH:i:s\Z"),
"Format" => "JSON",
), $params);
ksort($apiParams);
$sortedQueryStringTmp = "";
foreach ($apiParams as $key => $value) {
$sortedQueryStringTmp .= "&" . $this->encode($key) . "=" . $this->encode($value);
}
$stringToSign = "${method}&%2F&" . $this->encode(substr($sortedQueryStringTmp, 1));
$sign = base64_encode(hash_hmac("sha1", $stringToSign, $accessKeySecret . "&",true));
$signature = $this->encode($sign);
$url = ($security ? 'https' : 'http')."://{$domain}/";
try {
$content = $this->fetchContent($url, $method, "Signature={$signature}{$sortedQueryStringTmp}");
return json_decode($content);
} catch( \Exception $e) {
return false;
}
}
private function encode($str)
{
$res = urlencode($str);
$res = preg_replace("/\+/", "%20", $res);
$res = preg_replace("/\*/", "%2A", $res);
$res = preg_replace("/%7E/", "~", $res);
return $res;
}
private function fetchContent($url, $method, $body) {
$ch = curl_init();
if($method == 'POST') {
curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
} else {
$url .= '?'.$body;
}
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"x-sdk-client" => "php/2.0.0"
));
if(substr($url, 0,5) == 'https') {
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
}
$rtn = curl_exec($ch);
if($rtn === false) {
// 大多由设置等原因引起,一般无法保障后续逻辑正常执行,
// 所以这里触发的是E_USER_ERROR,会终止脚本执行,无法被try...catch捕获,需要用户排查环境、网络等故障
trigger_error("[CURL_" . curl_errno($ch) . "]: " . curl_error($ch), E_USER_ERROR);
}
curl_close($ch);
return $rtn;
}
}
......@@ -31,7 +31,6 @@ class SynJdPopDataController extends BaseController
* @date 2022/4/27
*/
public function addOrderData (){
/* $str = "AAQLAodRrJ360+b6qYevz+HgyXHUehSiWki+A9YqUJVvonqI1G8rNALcCZYF9eo5A5M=";
$data['accessToken'] = 'e0a1c90e617f4b3a9865ed059f99c5f42ztb';
$data['appKey'] = '41D9668E8CB81C9890A065BEC300FD84';
......@@ -58,7 +57,7 @@ exit;*/
$res_ult[$k]['time_start'] = $time_start; //开始时间
$res_ult[$k]['time_end'] = $time_end; //结束时间
$res_ult[$k]['setPageSize'] = 20; //每页条数
$res_ult[$k]['setOrderState'] = 'WAIT_SELLER_STOCK_OUT,TRADE_CANCELED,POP_ORDER_PAUSE,LOCKED'; //订单状态 WAIT_SELLER_STOCK_OUT 等待出库 ,TRADE_CANCELED,POP_ORDER_PAUSE,LOCKED,WAIT_GOODS_RECEIVE_CONFIRM,WAIT_SELLER_DELIVERY
$res_ult[$k]['setOrderState'] = 'WAIT_SELLER_STOCK_OUT'; //订单状态 WAIT_SELLER_STOCK_OUT 等待出库 ,TRADE_CANCELED,POP_ORDER_PAUSE,LOCKED,WAIT_GOODS_RECEIVE_CONFIRM,WAIT_SELLER_DELIVERY
$res_ult[$k]['setOptionalFields'] ='orderInfo,orderId,orderType,payType,orderTotalPrice,orderSellerPrice,open_id_buyer,open_id,orderMarkDesc,storeId,tuiHuoWuYou,taxFee,scDT,storeOrder,orderSource,customsModel,customs,parentOrderId,directParentOrderId,modified,vatInfo,logisticsId,paymentConfirmTime,returnOrder,balanceUsed,venderRemark,itemInfoList,consigneeInfo,orderEndTime,orderStartTime,orderRemark,invoiceCode,invoiceInfo,invoiceEasyInfo,orderStateRemark,orderState,sellerDiscount,orderPayment,venderId,pauseBizInfo,freightPrice'; //获取的订单字段
/**TRADE_CANCELED,POP_ORDER_PAUSE,LOCKED
......@@ -254,10 +253,8 @@ exit;*/
// dump($return);
CommonService::addLog('添加定单', json_encode($return), $vv['orderId'],'jd_addOrder');
// $return['ErrorCode'] = 2;
if($return['ErrorCode']==1){
if($return['ErrorCode']==1 && $v['pt_id']!=33){
//调用京东出库
$res_ex = [];
$res_ex['appKey'] = $v['app_key']; //appkey
$res_ex['appSecret'] = $v['app_secret'];//secret
......@@ -381,7 +378,7 @@ exit;*/
*/
public function changeTelphone($data){
// $result = $this->request_post($url,$data);
$url = 'jx.bluearp.com/m/index.php/Automatic/TzPopOrderGetPhone';
$url = 'jx.bluearp.com/m/index.php/Automatic/TzPopOrderGetPhone';
$ret = $this->request_post($url, $data);
$result = json_decode($ret,true);
CommonService::addLog('手机号', $result['jingdong_pop_order_getmobilelist_responce']["result"]["data"][$data['order_id']]['consMobilePhone'].'----'.$ret.'---'.json_encode($data).'---'.$url, $data['order_id'],'jd_mobile');
......
......@@ -12,6 +12,7 @@ namespace App\Http\Controllers\Api;
use App\Http\Controllers\BaseController;
use App\Models\OrderMsg;
use App\Models\Orders;
use App\Models\Pt;
use App\Models\User;
use App\Services\CommonService;
use App\Services\OrderaddService;
......@@ -75,6 +76,8 @@ class SynJdSelfDataNewController extends BaseController
$arr_goods = [];
$arr = [];
$order_data = $searchResult['queryAllOrdersForJosResult'];
$company_id = Pt::where('id',$v['pt_id'])->value('company_id');
foreach( $order_data as $kk => $vv ){
$order_info = OrderService::getOrderBy('order_num', $vv['customOrderId'],['id','order_status','lock_type','sys_num','order_num','p_id','ser_id','create_time','new_customer_id','lock_type']);
if($order_info){
......@@ -215,13 +218,13 @@ class SynJdSelfDataNewController extends BaseController
$session['admin_groupnew'] = 7;
$session['admin_acc'] = '系统录入';
$session['id'] = 1133;
$session['company_id'] = 11;
$session['company_id'] = $company_id;
// dump($orders[$kk]);
$return = OrderaddService::addOrder($orders[$kk], $session, $ip);
// dump($return);
CommonService::addLog('添加定单', json_encode($return), $vv['customOrderId'],'jd_addSelfShhOrder');
// $return['ErrorCode'] = 2;
if($return['ErrorCode']==1){
if($return['ErrorCode']==1 && $v['pt_id']!=33){
//调用京东出库
......@@ -231,7 +234,11 @@ class SynJdSelfDataNewController extends BaseController
$res_ex['accessToken'] = $v['access_token']; //token
$res_ex['customOrderId'] = $vv['customOrderId'];//$vv['orderId'];
$res_ex['carrierId'] = 1274;
$res_ex['phone'] = '4000773321';
if($company_id==14){
$res_ex['phone'] = '18518338010';
}else{
$res_ex['phone'] = '';
}
// $res_ex['estimateDate'] = date("Y-m-d H:i:s");
$result = $this->request_post($url_ex,$res_ex);//出库同步
......
<?php
/**
* 文件名称(自动拨打电话扣费)
* 文件简单描述(自动拨打电话扣费)
* @author DouBin
* @Date: 2024/8/7
* @Time: 11:46
* @Email: db@sudianwang.com
* @version 1.0
* @copyright BlueCity
*/
namespace App\Http\Controllers\Api;
use App\Http\Controllers\BaseController;
use App\Models\AdminInfor;
use App\Models\OrderCallphone;
use App\Models\OrderList;
use App\Services\CommonService;
use App\Services\OrderDeductionFeeService;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
use DB;
class SysCallByTtsCostController extends BaseController
{
/**|---------------------------------------------------------------------------------
* @name 获取需要推送数据
* @retrun \Illuminate\Http\JsonResponse /multitype:array
* @author dou 2024/9/24 14:04
* |---------------------------------------------------------------------------------
*/
public function getCallByTtsCost ( ){
$time_start = date("Y-m-d H:i:s", strtotime(" -5 minute" . date("Y-m-d H:i:s")));
$list = OrderCallphone::where('och_state',1)->where('och_creactime', '<', $time_start)->get();
$list = CommonService::dataToArray($list);
if (!empty($list)) {
$num = 0;
$data = [];
foreach ($list as $k => $v) {
$QueryDate = strtotime($v['och_creactime']).'000';
$res = self::queryCallDetailByCallId($v['och_CallId'], $QueryDate);
$res = CommonService::dataToArray($res);
if(isset($res['Data'])){
$och['och_Message'] = $res['Data'];
$res['Data'] = json_decode(str_replace('\"', '"', $res['Data']));
$res['Data'] = CommonService::dataToArray($res['Data']);
if($res['Data']['duration']>0){
$och['och_state'] = 2;
}else{
$och['och_state'] = 3;
}
}else{
$och['och_Message'] = '';
$och['och_state'] = 4;
}
$och['och_updatetime'] = date("Y-m-d H:i:s");
OrderCallphone::where('och_id',$v['och_id'])->update($och);
if(in_array($och['och_state'], [4,2,3])) {
$post_data['adm_id'] = 0;
$post_data['company_id'] = $v['och_company_id'];
$post_data['order_number'] = $v['och_order_number'] . '-' . $v['och_serial_number'];
$post_data['reo_price'] = -0.1;
$post_data['reo_pay_way'] = 5;
$post_data['pay_type'] = 1;
OrderDeductionFeeService::deductFee($post_data);
}
$data[$num]['order_num'] = $v['och_order_number'].'-'.$v['och_serial_number'];
$data[$num]['och_company_id'] = $v['och_company_id'];
$data[$num]['content'] = $res;
$num++;
}
CommonService::addLog('电话通知扣费', json_encode($data, JSON_UNESCAPED_UNICODE), '', 'getCallByTtsCost');
return response()->json(['code'=>200, 'msg'=>'操作完成', 'data'=>$data]);
}else{
CommonService::addLog('电话通知扣费', '无数据', '', 'getCallByTtsCost');
}
}
/**
* 通过呼叫ID获取呼叫记录
*/
function queryCallDetailByCallId($CallId,$QueryDate) {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "LTAI5t64Hr8rE8NdT1D1jKNh";
$accessKeySecret = "vpJvj5ksVOy7szD9DFraUbb7yHv8Jb";
// fixme 必填: 从上次呼叫调用的返回值中获取的CallId
$params["CallId"] = $CallId;
// fixme 必填: Unix时间戳(毫秒),会查询这个时间点对应那一天的记录
$params["QueryDate"] = $QueryDate;
// fixme 必填: 语音通知为:11000000300006, 语音验证码为:11010000138001, IVR为:11000000300005, 点击拨号为:11000000300004, SIP为:11000000300009
$params["ProdId"] = "11000000300006";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 此处可能会抛出异常,注意catch
$content = self::request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-beijing",
"Action" => "QueryCallDetailByCallId",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
/**
* 生成签名并发起请求
*
* @param $accessKeyId string AccessKeyId (https://ak-console.aliyun.com/)
* @param $accessKeySecret string AccessKeySecret
* @param $domain string API接口所在域名
* @param $params array API具体参数
* @param $security boolean 使用https
* @param $method boolean 使用GET或POST方法请求,VPC仅支持POST
* @return bool|\stdClass 返回API接口调用结果,当发生错误时返回false
*/
public function request($accessKeyId, $accessKeySecret, $domain, $params, $security=false, $method='POST') {
$apiParams = array_merge(array (
"SignatureMethod" => "HMAC-SHA1",
"SignatureNonce" => uniqid(mt_rand(0,0xffff), true),
"SignatureVersion" => "1.0",
"AccessKeyId" => $accessKeyId,
"Timestamp" => gmdate("Y-m-d\TH:i:s\Z"),
"Format" => "JSON",
), $params);
ksort($apiParams);
$sortedQueryStringTmp = "";
foreach ($apiParams as $key => $value) {
$sortedQueryStringTmp .= "&" . $this->encode($key) . "=" . $this->encode($value);
}
$stringToSign = "${method}&%2F&" . $this->encode(substr($sortedQueryStringTmp, 1));
$sign = base64_encode(hash_hmac("sha1", $stringToSign, $accessKeySecret . "&",true));
$signature = $this->encode($sign);
$url = ($security ? 'https' : 'http')."://{$domain}/";
try {
$content = $this->fetchContent($url, $method, "Signature={$signature}{$sortedQueryStringTmp}");
return json_decode($content);
} catch( \Exception $e) {
return false;
}
}
private function encode($str)
{
$res = urlencode($str);
$res = preg_replace("/\+/", "%20", $res);
$res = preg_replace("/\*/", "%2A", $res);
$res = preg_replace("/%7E/", "~", $res);
return $res;
}
private function fetchContent($url, $method, $body) {
$ch = curl_init();
if($method == 'POST') {
curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
} else {
$url .= '?'.$body;
}
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"x-sdk-client" => "php/2.0.0"
));
if(substr($url, 0,5) == 'https') {
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
}
$rtn = curl_exec($ch);
if($rtn === false) {
// 大多由设置等原因引起,一般无法保障后续逻辑正常执行,
// 所以这里触发的是E_USER_ERROR,会终止脚本执行,无法被try...catch捕获,需要用户排查环境、网络等故障
trigger_error("[CURL_" . curl_errno($ch) . "]: " . curl_error($ch), E_USER_ERROR);
}
curl_close($ch);
return $rtn;
}
}
......@@ -405,8 +405,10 @@ class CommonController extends BaseController
switch ( $type )
{
case 1:
foreach($company_id_type1 as $k => $v){
if($company_id_type1) {
foreach ($company_id_type1 as $k => $v) {
$parameter[$k] = $v;
}
}
$parameter['admin_groupnew_noteq'] = 2;
$list = AdminsService::getAdmins($parameter,['id','admin_acc']);//,['ptid'=>'desc','admin_groupnew'=>'asc']
......@@ -1274,7 +1276,7 @@ class CommonController extends BaseController
public function getCompanyList(Request $request){
$session = $request->get('session_token');
$data = new Company();
if ($session['admin_groupnew'] != 7){//管理员可以看全部
if (!in_array($session['admin_groupnew'],[7,8])) {
$data = $data->whereRaw("FIND_IN_SET(".$session['company_id'].",com_parent_id) or com_id = '".$session['company_id']."'");
// if ($session['admin_groupnew'] != 8) {//管理员可以看全部
// $data = $data->where('com_id', $session['company_id']);
......@@ -1282,6 +1284,9 @@ class CommonController extends BaseController
// $data = $data->where('com_id', '>',1);
// }
}
if (in_array($session['admin_groupnew'],[8])) {
$data = $data->whereIn('com_id', $session['all_companys']);
}
$data = $data->select('com_id','com_name')->get()->toarray();
return $this->success('获取成功', $data);
......@@ -1300,6 +1305,7 @@ class CommonController extends BaseController
$data = new Company();
$data = $data->where('com_type', 1)
->where('com_id', '!=', 1)
->whereIn('com_id', $session['all_companys'])
->where(function($query) use($request) {
if (!empty($request['com_name'] )) {
$query->where('com_name',$request['com_name']);
......
......@@ -100,6 +100,7 @@ class CompanyController extends BaseController
$res = Company::insert($dataArr);
if($res){
CommonService::resetToken($request->get('session_token'));
$this->insertingLog('添加公司,','',$com_name,'公司管理',$request->ip(),$request->get('session_token')['admin_acc']);
return $this->success('添加成功', []);
}else{
......
......@@ -33,7 +33,9 @@ class GoodsBrandController extends BaseController
$page = 1;
}
$paginate = new GoodsBrand();
$paginate = $paginate->where("company_id",$request->get('session_token')['company_id']);
if(!in_array($request->get('session_token')['admin_groupnew'],[7,8])) {
$paginate = $paginate->where("company_id", $request->get('session_token')['company_id']);
}
$paginate = $paginate->OrderBy('sord','ASC')->paginate($page_size);
$list = self::dataToArray($paginate->items());
......
......@@ -47,7 +47,7 @@ class GoodsController extends BaseController
}
$page_size = $request->input('page_size',10);
$page = $request->input('page',1);
if ($session['admin_groupnew'] != 7) {
if(!in_array($request->get('session_token')['admin_groupnew'],[7,8])) {
$Db = $Db->where('company_id', $session['company_id']);
}
if($page<1){
......
......@@ -36,12 +36,9 @@ class BserviStoreController extends BaseController
$page = 1;
}
$offset = ($page-1)*$page_size;
if (in_array($admin_groupnew, [7,79,86,89])) {
$Db = BserviStore::leftJoin('admin','admin.id','=','bservi_store.bs_serid');
} elseif ($admin_groupnew == 2) {
$Db = BserviStore::leftJoin('admin','admin.id','=','bservi_store.bs_serid')->where('bservi_store.bs_serid',$id);
} else {
$Db = BserviStore::leftJoin('admin','admin.id','=','bservi_store.bs_serid');
if ($admin_groupnew == 2) {
$Db = $Db->where('bservi_store.bs_serid',$id);
}
if ($request->filled('are_shi')){//市
......@@ -65,9 +62,12 @@ class BserviStoreController extends BaseController
}
}
$session = $request->get('session_token');
if($admin_groupnew!=7){
if(!in_array($admin_groupnew,[7,8])){
$Db = $Db->where('admin.company_id',$session['company_id']);
}
if (in_array($session['admin_groupnew'],[8])) {
$Db = $Db->whereIn('admin.company_id',$session['all_company']);
}
$count = $Db->count();
$list = $Db->select('bservi_store.*','admin.company_name')->offset($offset)->limit($page_size)->get();
......
......@@ -54,9 +54,12 @@ class BservissController extends BaseController
if ($request->filled('ser_id')){//服务中心名称
$Db = $Db->where('bs_serid',$request->input('ser_id'));
}
if ($request->get('session_token')['admin_groupnew'] != 7) {//管理员可以看全部
if (!in_array($request->get('session_token')['admin_groupnew'],[7,8])) {
$Db = $Db->where('admin.company_id',$request->get('session_token')['company_id']);
}
if (in_array($request->get('session_token')['admin_groupnew'],[8])) {
$Db = $Db->whereIn('admin.company_id',$request->get('session_token')['all_company']);
}
$count = $Db->count();
if($request->input('is_excel')==1){
DB::connection()->enableQueryLog();#开启执行日志
......@@ -263,10 +266,15 @@ class BservissController extends BaseController
if (!$request->filled('company_name')||!$request->filled('are_sid')){
return $this->error('参数错误无company_name或无are_sid', ErrorInc::FAILED_PARAM);
}
$session = $request->get('session_token');
$company_name = $request->input('company_name');
$are_sid = $request->input('are_sid');
$serid = Bserviss::distinct()->where('bs_sid',$are_sid)->pluck('bs_serid')->toArray();
$list = DB::table('admin')->whereNotIn('id',$serid)->where('admin_groupnew',2)->where('company_id',$request->get('session_token')['company_id'])->where('company_name','like','%'.$company_name.'%')->select('id','company_name')->orderBy('id','ASC')->limit('10')->get();
if (!in_array($session['admin_groupnew'],[7,8])) {
$list = DB::table('admin')->whereNotIn('id', $serid)->where('admin_groupnew', 2)->where('company_id', $request->get('session_token')['company_id'])->where('company_name', 'like', '%' . $company_name . '%')->select('id', 'company_name')->orderBy('id', 'ASC')->limit('10')->get();
}else{
$list = DB::table('admin')->whereNotIn('id', $serid)->whereIn('admin_groupnew', [2,3])->whereIn('company_id', $session['all_company'])->where('company_name', 'like', '%' . $company_name . '%')->select('id', 'company_name')->orderBy('id', 'ASC')->limit('10')->get();
}
if (!$list->isEmpty()){
return $this->success('获取成功',$list);exit;
}else{
......@@ -286,6 +294,7 @@ class BservissController extends BaseController
*/
public function search_brand (Request $request)
{
$session = $request->get('session_token');
if ($request->input('type') == 1){
if ($request->filled('serid') && $request->filled('bs_sid')){
$serid = $request->input('serid');
......@@ -296,7 +305,13 @@ class BservissController extends BaseController
foreach( $bsArr as $k => $v){
$brandid[] = $v['bs_branid'];
}
$brands = DB::table('goods_brand')->where('company_id',$request->get('session_token')['company_id'])->get()->toArray();
if($session['admin_groupnew']==7){
$brands = DB::table('goods_brand')->get()->toArray();
}elseif($session['admin_groupnew']==8){
$brands = DB::table('goods_brand')->where('company_id',$session['company_id'])->get()->toArray();
}else{
$brands = DB::table('goods_brand')->whereIn('id',explode(',', $session['com_brand']))->get()->toArray();
}
if(!$brands){
return $this->error('暂无数据1', ErrorInc::DATA_EMPTY);exit;
}
......@@ -322,19 +337,6 @@ class BservissController extends BaseController
$list[$k]['bs_min'] = '';
$list[$k]['bs_areid'] = [];
}
// foreach ($bsArr as $ks=>$vs){
// if ($vs['bs_branid'] == $v['id']){
// $list[$k]['bs_brantype'] = $vs['bs_brantype'];
// $list[$k]['bs_max'] = $vs['bs_max'];
// $list[$k]['bs_min'] = $vs['bs_min'];
// //$list[$k]['bs_id'] = $vs['bs_id'];
// break;
// }else{
// $list[$k]['bs_brantype'] = '';
// $list[$k]['bs_max'] = '';
// $list[$k]['bs_min'] = '';
// }
// }
}
if($list){
return $this->success('获取成功',$list);exit;
......@@ -347,7 +349,13 @@ class BservissController extends BaseController
}
}else{
$res = DB::table("goods_brand")->where('company_id',$request->get('session_token')['company_id'])->select('id','brand_name')->get();
if($session['admin_groupnew']==7){
$res = DB::table('goods_brand')->select('id','brand_name')->get();
}elseif($session['admin_groupnew']==8){
$res = DB::table('goods_brand')->where('company_id',$session['company_id'])->select('id','brand_name')->get();
}else{
$res = DB::table('goods_brand')->whereIn('id',explode(',', $session['com_brand']))->select('id','brand_name')->get();
}
if(!$res->isEmpty()){
$res = $res->toArray();
$list = [];
......
......@@ -49,7 +49,10 @@ class TipsController extends BaseController
$sertime = date('Y-m-d H:i:s',$sertime);
$looktime = $date -'3600';
$looktime = date('Y-m-d H:i:s',$looktime);
$where = "sin_type=1 AND gone_orders.reminder=1 AND gone_orders.is_delete=2 and gone_orders.p_id in (".$admin_pt_id.")";
$where = "sin_type=1 AND gone_orders.reminder=1 AND gone_orders.is_delete=2";
if(!in_array($request->get('session_token')['admin_groupnew'],[7,8]) && !empty($admin_pt_id)){
$where .=" and gone_orders.p_id in (".$admin_pt_id.")";
}
$wxnum = Db::table('ser_master')->where('follow','5')->count();
CommonService::startmysql();
$aftertrack = OrderAftertrack::where("oat_state",1)->where('oat_looktime','<',$looktime)->count();
......@@ -59,18 +62,24 @@ class TipsController extends BaseController
$Aftersale = OrderAfter::where('create_time','<=',$twelve )->where('status','1')->count();
$sendorders = SendGoods::where('time','<=',$sendtime )->where('type','<=','2')->count();
$Db = SerInfor::join('orders','orders.sys_num','=','ser_infor.sin_sysnum')->leftJoin('user','user.id','=','orders.customer_id')->whereRaw($where);
if($request->get('session_token')['admin_groupnew']!=7){
if(!in_array($request->get('session_token')['admin_groupnew'],[7,8])){
$Db = $Db->where('orders.company_id',$request->get('session_token')['company_id']);
}
if(in_array($request->get('session_token')['admin_groupnew'],[8])){
$Db = $Db->where('orders.company_id','>',1);
}
$ser_infor = $Db->where('sin_state','1')->where('orders.order_status','<',34)->count();
}else{
$refund = Refund::where('state','0')->count();
$Aftersale = OrderAfter::where('status','1')->count();
$sendorders = SendGoods::where('time','<=',$sendtime )->where('type','<=','2')->count();
$Db = SerInfor::join('orders','orders.sys_num','=','ser_infor.sin_sysnum')->leftJoin('user','user.id','=','orders.customer_id')->whereRaw($where);
if($request->get('session_token')['admin_groupnew']!=7){
if(!in_array($request->get('session_token')['admin_groupnew'],[7,8])){
$Db = $Db->where('orders.company_id',$request->get('session_token')['company_id']);
}
if(in_array($request->get('session_token')['admin_groupnew'],[8])){
$Db = $Db->where('orders.company_id','>',1);
}
$ser_infor = $Db->where('sin_state','1')->where('orders.order_status','<',34)->count();
}
$massage_power = $request->input('massage_power');
......
......@@ -13,11 +13,16 @@
namespace App\Http\Controllers\Dou;
use App\Http\Controllers\Orders\AotuorderController;
use App\Models\Admin;
use App\Models\OrderList;
use App\Models\OrderRejected;
use App\Services\CommonService;
use Illuminate\Http\Request;
use BlueCity\Core\Controllers\MountingCoreController as Controller;
use BlueCity\Core\Traits\ResourceControllerMethod;
use App\Services\TechnicalLevelService;
use BlueCity\Core\Inc\ErrorInc;
use DB;
class MyTestController extends Controller
{
......@@ -39,7 +44,7 @@ class MyTestController extends Controller
if(empty($input['method'])){
return $this->error('缺少必要参数1',ErrorInc::FAILED_PARAM);
}
$api=['getSerStatistics'];
$api=['getSerStatistics','getSerStatisticsDetail'];
if(!in_array($input['method'],$api)){
return $this->error('接口不参数异常',ErrorInc::INVALID_PARAM,$input);
}else {
......@@ -47,4 +52,185 @@ class MyTestController extends Controller
return $this->$api($input);
}
}
/**|---------------------------------------------------------------------------------
* @name 获取京东token
* @param string ju_ordernum 订单单号
* @retrun \Illuminate\Http\JsonResponse /multitype:array
* @author dou 2024/9/29 8:56
* |---------------------------------------------------------------------------------
*/
public function getSerStatistics ( $input ){
if(empty($input['company_id'])){
$html="<html><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><h1>请输入公司id</h1></html>";
echo $html;exit;
}
$admindata = Admin::where('company_id',$input['company_id'])
->where('admin_groupnew',2)
->where('enable',1)
->select('id','company_name')->get();
$admindata = CommonService::dataToArray($admindata);
if($admindata){
$time_start = $input['time_start'];
$time_end = date("Y-m-d", strtotime($input['time_end'] . " +1 day"));
$html = "<html><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><table>";
$html .= "<tr>";
$html .= "<td rowspan='2'>序号</td><td rowspan='2'>服务商(公司名称)</td><td colspan='6'>本周".date("m-d", strtotime($input['time_start']))."-".date("m-d", strtotime($input['time_end']))."</td><td colspan='6'>累计至今</td>";
$html .= "</tr>";
$html .= "<tr>";
$html .= "<td>总推送单量</td><td>接单量</td><td>拒单量</td><td>拒单率</td><td>接单时效</td><td>履约时效</td><td>总推送单量</td><td>接单量</td><td>拒单量</td><td>拒单率</td><td>接单时效</td><td>履约时效</td>";
$html .= "</tr>";
foreach($admindata as $k => $v){
$order_listnum = OrderList::whereRaw("ser_id='".$v['id']."' and create_time BETWEEN '".$time_start."' and '".$time_end."' and is_delete=1 and get_time != ''")->count();//接单数量
$order_rejectednum = OrderRejected::whereRaw("or_ser_id='".$v['id']."' and or_creact_time BETWEEN '".$time_start."' and '".$time_end."' and or_show=1")->count();//拒单数量
$order_listAllnum = OrderList::whereRaw("ser_id='".$v['id']."' and create_time BETWEEN '2024-08-19' and '".$time_end."' and is_delete=1 and get_time != ''")->count();//总接单数量
$order_rejectedAllnum = OrderRejected::whereRaw("or_ser_id='".$v['id']."' and or_creact_time BETWEEN '2024-08-19' and '".$time_end."' and or_show=1")->count();//总拒单数量
$sql = "SELECT CAST((SUM(UNIX_TIMESTAMP(feeds_time))-SUM(UNIX_TIMESTAMP(get_time)))/COUNT(id) as SIGNED) as timenum FROM gone_order_list WHERE ser_id='".$v['id']."' and get_time != '' and get_time!='0000-00-00 00:00:00' and feeds_time != '' and feeds_time!='0000-00-00 00:00:00' and create_time BETWEEN '".$time_start."' and '".$time_end."' and is_delete=1";
$data = DB::select($sql);
$sql1 = "SELECT CAST((SUM(UNIX_TIMESTAMP(get_time))-SUM(UNIX_TIMESTAMP(create_time)))/COUNT(id) as SIGNED) as pdnum FROM gone_order_list WHERE ser_id='".$v['id']."' and get_time != '' and get_time!='0000-00-00 00:00:00' and create_time BETWEEN '".$time_start."' and '".$time_end."' and time(create_time)>='08:30:00' and time(create_time)<='18:00:00' and is_delete=1";
$data1 = DB::select($sql1);
$sqls = "SELECT CAST((SUM(UNIX_TIMESTAMP(feeds_time))-SUM(UNIX_TIMESTAMP(get_time)))/COUNT(id) as SIGNED) as timenum FROM gone_order_list WHERE ser_id='".$v['id']."' and create_time BETWEEN '2024-08-19' and '".$time_end."' and get_time != '' and get_time!='0000-00-00 00:00:00' and feeds_time != '' and feeds_time!='0000-00-00 00:00:00' and is_delete=1";// and is_delete=1
$datas = DB::select($sqls);
$sqls1 = "SELECT CAST((SUM(UNIX_TIMESTAMP(get_time))-SUM(UNIX_TIMESTAMP(create_time)))/COUNT(id) as SIGNED) as pdnum FROM gone_order_list WHERE ser_id='".$v['id']."' and create_time BETWEEN '2024-08-19' and '".$time_end."' and get_time != '' and get_time!='0000-00-00 00:00:00' and time(create_time)>='08:30:00' and time(create_time)<='18:00:00' and is_delete=1";// and is_delete=1
$datas1 = DB::select($sqls1);
$html .= "<tr>";
$html .= "<td>".$v['id']."</td>";
$html .= "<td>".$v['company_name']."</td>";
$html .= "<td>".($order_listnum+$order_rejectednum)."</td>";
$html .= "<td>".$order_listnum."</td>";
$html .= "<td>".$order_rejectednum."</td>";
if(($order_listnum+$order_rejectednum) == 0){
$html .= "<td>0.00%</td>";
}else {
$gl = sprintf("%.2f", $order_rejectednum / ($order_listnum + $order_rejectednum) * 100);
$html .= "<td>" . $gl . "%</td>";
}
if($data){
$html .= "<td>".self::Compute_Time($data1[0]['pdnum'])."</td>";
$html .= "<td>".self::Compute_Time($data[0]['timenum'])."</td>";
}else{
$html .= "<td>0时0分0秒</td>";
$html .= "<td>0时0分0秒</td>";
}
$html .= "<td>".($order_listAllnum+$order_rejectedAllnum)."</td>";
$html .= "<td>".$order_listAllnum."</td>";
$html .= "<td>".$order_rejectedAllnum."</td>";
if(($order_listAllnum+$order_rejectedAllnum) == 0){
$html .= "<td>0.00%</td>";
}else {
$gls = sprintf("%.2f", $order_rejectedAllnum / ($order_listAllnum + $order_rejectedAllnum) * 100);
$html .= "<td>" . $gls . "%</td>";
}
if($data){
$html .= "<td>".self::Compute_Time($datas1[0]['pdnum'])."</td>";
$html .= "<td>".self::Compute_Time($datas[0]['timenum'])."</td>";
}else{
$html .= "<td>0时0分0秒</td>";
$html .= "<td>0时0分0秒</td>";
}
$html .= "</tr>";
}
$html .= "<table></html>";
echo $html;
}else{
$html="<html><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><h1>无相应公司信息</h1></html>";
echo $html;exit;
}
}
/**|---------------------------------------------------------------------------------
* @name 获取订单门店施工明细
* @param string company_id 公司id
* @param string time_start 开始时间
* @param string time_end 结算是啊金
* @retrun \Illuminate\Http\JsonResponse /multitype:array
* @author dou 2024/9/11 17:27
* |---------------------------------------------------------------------------------
*/
public function getSerStatisticsDetail ( $input ){
if(empty($input['company_id'])){
$html="<html><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><h1>请输入公司id</h1></html>";
echo $html;exit;
}
$admindata = Admin::where('company_id',$input['company_id'])
->where('admin_groupnew',2)
->where('enable',1)
->pluck('company_name','id');
$time_start = $input['time_start'];
$time_end = date("Y-m-d", strtotime($input['time_end'] . " +1 day"));
$sql = "SELECT (UNIX_TIMESTAMP(feeds_time)-UNIX_TIMESTAMP(get_time)) AS sgtime,(UNIX_TIMESTAMP(get_time)-UNIX_TIMESTAMP(create_time)) AS jdtime,stauas,order_num,ser_id,create_time,get_time,feeds_time FROM gone_order_list WHERE create_time BETWEEN '".$time_start."' and '".$time_end."' and is_delete=1 and company_id = ".$input['company_id']." order by create_time";
$datas = DB::select($sql);
$statusName = ['10'=>'未接单','20'=>'未接单','30'=>'安装中','34'=>'待审核','40'=>'已完成','50'=>'已撤销','55'=>'已撤销(补邮费)'];
$html = "<html><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><table>";
$html .= "<tr>";
$html .= "<td>门店名称</td><td>单号</td><td>订单状态</td><td>创建时间</td><td>接单时间</td><td>反馈时间</td><td>接单时效</td><td>5分钟接单达标</td><td>10钟接单达标</td><td>履约时效</td><td>12小时履约达标</td><td>24小时履约达标</td>";
$html .= "</tr>";
foreach($datas as $k => $v){
$html .= "<tr>";
$html .= "<td>".$admindata[$v['ser_id']]."</td>";
$html .= "<td>".$v['order_num']."</td>";
$html .= "<td>".$statusName[$v['stauas']]."</td>";
$html .= "<td>".$v['create_time']."</td>";
$html .= "<td>".$v['get_time']."</td>";
$html .= "<td>".$v['feeds_time']."</td>";
if($v['get_time'] != '' && $v['get_time'] != '0000-00-00 00:00:00'){
$html .= "<td>".self::Compute_Time($v['jdtime'])."</td>";
if($v['jdtime']<300){
$html .= "<td>达标</td>";
}else{
$html .= "<td>不达标</td>";
}
if($v['jdtime']<600){
$html .= "<td>达标</td>";
}else{
$html .= "<td>不达标</td>";
}
}else{
$html .= "<td></td>";
$html .= "<td>不达标</td>";
$html .= "<td>不达标</td>";
}
if($v['feeds_time'] != '' && $v['feeds_time'] != '0000-00-00 00:00:00'){
$html .= "<td>".self::Compute_Time($v['sgtime'])."</td>";
if($v['sgtime']<43200){
$html .= "<td>达标</td>";
}else{
$html .= "<td>不达标</td>";
}
if($v['sgtime']<86400){
$html .= "<td>达标</td>";
}else{
$html .= "<td>不达标</td>";
}
}else{
$html .= "<td></td>";
$html .= "<td>不达标</td>";
$html .= "<td>不达标</td>";
}
$html .= "</tr>";
}
$html .= "<table></html>";
echo $html;
}
/**|---------------------------------------------------------------------------------
* @name 转化为时分秒
* @param string timediff 时间
* @retrun /multitype:string
* @author dou 2024/8/23 11:43
* |---------------------------------------------------------------------------------
*/
private function Compute_Time( $timediff ){
$days = intval($timediff/86400);
//计算小时数
$remain = $timediff%86400;
$hours = intval($remain/3600);
//计算分钟数
$remain = $remain%3600;
$mins = intval($remain/60);
//计算秒数
$secs = $remain%60;
//$res = array("day" => $days,"hour" => $hours,"min" => $mins,"sec" => $secs);
$res = $days.'天'.$hours.'时'.$mins.'分'.$secs.'秒';
return $res;
}
}
......@@ -3,6 +3,7 @@
namespace App\Http\Controllers\InstallPerson;
use App\Http\Controllers\Common\CommonController;
use App\Models\Company;
use App\Services\ExceloutService;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
......@@ -42,30 +43,42 @@ class InstallPersonController extends BaseController
$installperson = new InstallPerson();
$company_name = $request->input('company_name',0);
if ($request->input('Theshy') == 4){
$installperson = $installperson->where('delet_y',1);
$where['delet_y'] = 1;
}elseif ($request->input('Theshy') == 1){//未认证
$installperson = $installperson->where('verify_type',1)->where('delet_y',1);
$where['verify_type'] = 1;
$where['delet_y'] = 1;
}elseif ($request->input('Theshy') == 2){//待审核
$installperson = $installperson->where('verify_type',2)->where('delet_y',1);
$where['verify_type'] = 2;
$where['delet_y'] = 1;
}elseif ($request->input('Theshy') == 3){//已验证
$installperson = $installperson->where('verify_type',3)->where('delet_y',1);
$where['verify_type'] = 3;
$where['delet_y'] = 1;
} else {
$installperson = $installperson->where('delet_y',1);
$where['delet_y'] = 1;
}
if ($request->filled('check_code')){//检验码
$installperson = $installperson->where('check_code','like','%'.$request->input('check_code').'%');
$where['check_code_like'] = $request->input('check_code');
$wheres['check_code_like'] = $request->input('check_code');
}
if ($request->filled('install_name')){//安装人姓名
$installperson = $installperson->where('install_name','like','%'.$request->input('install_name').'%');
$where['install_name_like'] = $request->input('install_name');
$wheres['install_name_like'] = $request->input('install_name');
}
if ($request->filled('install_phone')){//安装人电话
$installperson = $installperson->where('install_phone','like','%'.$request->input('install_phone').'%');
$where['install_phone_like'] = $request->input('install_phone');
$wheres['install_phone_like'] = $request->input('install_phone');
}
if ($request->filled('company_name_id')){//服务中心id
$installperson = $installperson->where('admin_id',$request->input('company_name_id'));
$where['admin_id'] = $request->input('company_name_id');
$wheres['admin_id'] = $request->input('company_name_id');
}
if ($session['admin_groupnew'] != 7) {
$installperson->where('company_id', $session['company_id']);
if (!in_array($session['admin_groupnew'],[7,8])) {
$where['company_id'] = $session['company_id'];
$wheres['company_id'] = $session['company_id'];
}
if (in_array($session['admin_groupnew'],[8])) {
$where['company_id_searchin'] = $session['all_company'];
$wheres['company_id_searchin'] = $session['all_company'];
}
$page_size = (int)$request->input('page_size',20);
$page = (int)$request->input('page',1);
......@@ -81,8 +94,8 @@ class InstallPersonController extends BaseController
// if ($session['admin_groupnew'] != 7){//管理员可以看全部
// $installperson = $installperson->where('company_id',$session['company_id']);
// }
$paginate = $installperson->select('id','cd_ids','check_code','install_name','install_phone','install_remark','install_address','installation','install_is_type','create_time','admin_id','all_show','install_is_type','install_pid','company_id','delet_y','is_shman','affiliation')->orderBy('id','ASC')->paginate($page_size);
$where = CommonService::jointWhere($where);
$paginate = $installperson->whereRaw($where)->select('id','cd_ids','check_code','install_name','install_phone','install_remark','install_address','installation','install_is_type','create_time','admin_id','all_show','install_is_type','install_pid','company_id','delet_y','is_shman','affiliation')->orderBy('id','ASC')->paginate($page_size);
$list = self::dataToArray($paginate->items());
//导出 start
......@@ -92,12 +105,12 @@ class InstallPersonController extends BaseController
return $excel->getExcelOut($request->input('Pri_id'), $sqls, $session);
}
//导出 end
$count_qb = InstallPerson::count();//总数
$count_wrz = InstallPerson::where('delet_y',1)->where('verify_type',1)->count();//未认证
$count_dsh = InstallPerson::where('delet_y',1)->where('verify_type',2)->count();//待审核
$count_yyz = InstallPerson::where('delet_y',1)->where('verify_type',3)->count();//已验证
$count_xsq = InstallPerson::where('delet_y',3)->count();//新申请
$wheres = CommonService::jointWhere($wheres);
$count_qb = InstallPerson::whereRaw($wheres)->count();//总数
$count_wrz = InstallPerson::whereRaw($wheres)->where('delet_y',1)->where('verify_type',1)->count();//未认证
$count_dsh = InstallPerson::whereRaw($wheres)->where('delet_y',1)->where('verify_type',2)->count();//待审核
$count_yyz = InstallPerson::whereRaw($wheres)->where('delet_y',1)->where('verify_type',3)->count();//已验证
$count_xsq = InstallPerson::whereRaw($wheres)->where('delet_y',3)->count();//新申请
$data['show_Menu'] = [
['show_name'=>'全部','status'=>4,'show_num'=> $count_qb,'checked'=>true],
......
......@@ -85,7 +85,7 @@ class AotuorderController extends BaseController
// return true;
// }
// }
$goodid=DB::table("goods_brand")->where('brand_name',$goods_brand[0]['goods_brand'])->where('company_id',$order['company_id'])->value("id");
$goodid=DB::table("goods_brand")->where('brand_name',$goods_brand[0]['goods_brand'])->value("id");
if(strstr($user['shr_sheng'],"市")){
//$sheng=rtrim($user['shr_sheng'],'市');
$sheng = str_replace("市","",$user['shr_sheng']);
......@@ -143,20 +143,24 @@ class AotuorderController extends BaseController
$data['code']='2';
if($data['code']=='1'){
}else{
if($sheng == '北京' && $shi=='大兴'){
if($sheng == '北京s' && $shi=='大兴s'){
$where = ' and (admin_groupnew=3 or (admin_groupnew=2 and company_type=2))';
}else{
$where = ' and admin_groupnew=2 and company_type=1 and company_id='.$order['company_id'];
}
if(empty($or_ser_id)) {
if ($xian == 1) {
CommonService::startmysql();
$ser = Bserviss::leftJoin('admin','admin.id','=','bservisnew.bs_serid')->whereRaw("find_in_set('" . $dress['are_id'] . "',bs_areid) and bs_branid='" . $goodid . "' and bs_status='1' and enable=1".$where)->select('bservisnew.*','admin_groupnew')->get()->toArray();
CommonService::addLog('自动拒单', CommonService::showmysql(), '','AotuorderController');
if (!$ser) {
$ser = Bserviss::leftJoin('admin','admin.id','=','bservisnew.bs_serid')->whereRaw("bs_sid='" . $dress['are_sid'] . "' and bs_branid='" . $goodid . "' and bs_status='1' and enable=1".$where)->select('bservisnew.*','admin_groupnew')->get()->toArray();
$xian = 2;
}
} else {
CommonService::startmysql();
$ser = Bserviss::leftJoin('admin','admin.id','=','bservisnew.bs_serid')->whereRaw("bs_sid='" . $dress['are_sid'] . "' and bs_branid='" . $goodid . "' and bs_status='1' and enable=1".$where)->select('bservisnew.*','admin_groupnew')->get()->toArray();
CommonService::addLog('自动拒单', CommonService::showmysql(), '','AotuorderController');
}
}else{
if ($xian == 1) {
......@@ -349,14 +353,17 @@ class AotuorderController extends BaseController
$data['msg']="派单失败,该订单状态不正确,请刷新核实!";
return $data;
}
DB::beginTransaction();
// 派单扣除 订单所属公司金额
// 扣费
$post_data['adm_id'] = $orderinfo['admin_id'];
$post_data['adm_id'] = 0;
$post_data['company_id'] = $orderinfo['company_id'];
$post_data['order_number'] = $sys_num;
$post_data['order_number'] = $orderinfo['order_num'];
$post_data['reo_price'] = -0.5;
$post_data['reo_pay_way'] = 4;
$reduce_price = OrderDeductionFeeService::deductFee($post_data);
if ($reduce_price['code'] != 200) {
DB::rollback();
$data['code']=2;
$data['msg']="余额不足";
return $data;
......@@ -391,6 +398,7 @@ class AotuorderController extends BaseController
foreach($ordermsginfo as $k=>$v){
$orderlistIds=DB::table('order_list')->where('sys_num',$sys_num)->where('order_goods_id',$v['id'])->value("id");
if(isset($orderlistIds)){
DB::rollback();
$data['code']=2;
$data['msg']="派单失败,该订单已被派发";
return $data;
......@@ -556,6 +564,7 @@ class AotuorderController extends BaseController
$pop['company_name'] = CompanyService::getCompanyById($orderinfo['company_id'],['com_name'],'value');
$store = SysStoresService::sysStore($pop, 'orderUrl',$store);
if($store['ErrorCode']!=1){
DB::rollback();
$data['code']=$store['ErrorCode'];
$data['msg']=$store['ErrorMessage'];
return $data;
......@@ -632,6 +641,7 @@ class AotuorderController extends BaseController
// $post['distype']='2';
$returnOrder = DB::table('orders')->where('sys_num',$sys_num)->update($post);
if($returnOrder && $returnOrderList && $returnMan){
DB::commit();
$file_path = "./url.txt";
$myfile = fopen($file_path, "a");
$txt = date("Y-m-d H:i:s")."--".$sys_num."--".$ser_id."--".$install['check_code']."\r";
......@@ -660,12 +670,14 @@ class AotuorderController extends BaseController
$data['msg']="派单成功";
return $data;
}else{
DB::rollback();
//$this->error("派单失败!");
$data['code']=2;
$data['msg']="派单失败";
return $data;
}
}else{
DB::rollback();
//$this->error("派单失败!");
$data['code']=2;
$data['msg']="派单失败";
......
......@@ -143,37 +143,20 @@ class OrderListController extends BaseController
}
$session_token = $request->get('session_token');
if ($session_token['admin_groupnew'] == 2){
$ansql = " ser_id in (".$session_token['id'].")";
}elseif($session_token['com_type'] == 2){
$where .= " and agency_id='".$session_token['company_id']."'";
}else{
if(!in_array($session_token['admin_groupnew'],[7,8])) {
$ansql = " p_id in (".$session_token['admin_pt_id'].")";
}
//$ansql = "p_id in (".$session_token['admin_pt_id'].")";
}
// if($session_token['admin_groupnew']!=7){
// $where .= ' and company_id='.$session_token['company_id'];
// }
if (!in_array($session_token['admin_groupnew'], [2,3,7])){//管理员可以看全部
if (!in_array($session_token['admin_groupnew'], [2,3,7,8])){//管理员可以看全部
$where.=" and company_id='".$session_token['company_id']."'";
}
if ($session_token['admin_groupnew'] == 3) {
$where.=" and agency_id='".$session_token['company_id']."'";
// $where['gone_order_list.agency_id'] = $session['company_id'];
if (in_array($session_token['admin_groupnew'], [2,3,8])){//管理员可以看全部
$where.=" and company_id>1";
}
//统计数量
// $show_nums = OrderList::whereRaw($where)->where('stauas','!=',40)->selectRaw("stauas,count('id') as num")->groupBy('stauas')->get()->toArray();
$wjd = OrderList::whereRaw($where)->whereRaw("(stauas = 10 or stauas = 20)")->count();
$dwc = OrderList::whereRaw($where)->where('stauas',34)->where('delay_status',1)->count();
$dasql = "stauas=30 AND (day_time<'".$time."' OR day_time is null)";
if ($session_token['admin_groupnew'] == 2){
$azz = OrderList::whereRaw($where)->whereRaw($ansql)->where(['stauas'=>30,'invalid'=>1])->count();
$azz = OrderList::whereRaw($where)->where(['stauas'=>30,'invalid'=>1])->count();
}else{
$azz = OrderList::whereRaw($where)->whereRaw($dasql)->count();
}
......@@ -1839,7 +1822,7 @@ class OrderListController extends BaseController
if (empty($ware_id)) {
// 新增默认仓库
$add_ware['shck_ckmc'] = '默认仓库';
$add_ware['company_id'] = $company_id;
$add_ware['company_id'] = $orderListArr['agency_id'];
$ware_id = DB::table('warehouse')->insertGetId($add_ware);
}
$warehouse_data['ware_id'] = $ware_id;
......
......@@ -415,11 +415,13 @@ class ServiceProviderController extends BaseController
$session = Request()->get('session_token');//用户信息
$brandList = PjBrandsService::getAll(); //品牌
if($session['com_type'] ==2){
$agent_brand = trim($session['agent_brand'],',');
$agent_brand = trim($session['com_brand'],',');
$agent_brand = explode(',', $agent_brand);
$brandList = CommonService::arrayFilterFieldValue($brandList,[['id'=>$agent_brand]]);
}else{
$brandList = CommonService::arrayFilterFieldValue($brandList,[['company_id'=>$session['company_id']]]);
$agent_brand = trim($session['com_brand'],',');
$agent_brand = explode(',', $agent_brand);
$brandList = CommonService::arrayFilterFieldValue($brandList,[['id'=>$agent_brand]]);
}
$serviceTypes = CategoryService::getAll(); //服务类型
// $serviceItems = ServiceItemsService::getAll(); //服务项目
......@@ -560,6 +562,8 @@ class ServiceProviderController extends BaseController
$com_data['com_create_time'] = date('Y-m-d H:i:s');
$com_data['com_end_time'] = date('Y-m-d H:i:s', strtotime('+50 year'));
$com_data['com_admin_id'] = $session['id'];
$com_data['com_parent_id'] = $session['com_parent_id'];
$com_data['com_brand'] = $adminData['agent_brand'];
$company_id = DB::table('company')->insertGetId($com_data);
$adminData['company_id'] = $company_id;
// 新增默认仓库
......@@ -624,6 +628,9 @@ class ServiceProviderController extends BaseController
$content = $session['admin_acc'] . "成员" . $request->input('admin_acc');
$this->insertingLog('添加,', '', $content, '服务商管理', $request->ip(), $session['admin_acc']);//日志
DB::commit();
if ($adminData['admin_groupnew'] == 3) {//经销商新增一个公司
CommonService::resetToken($session);
}
return response()->json(['Data' => '', 'ErrorMessage' => '添加成功', 'ErrorCode' => 1]);
} else {
DB::rollback();
......
......@@ -90,8 +90,11 @@ public function index(Request $request)
{
$session = $request->get('session_token');
$data = $this->dataService->search_s($request->all(), ['*'], 1, 20,$session);
$page = Request()->input('page', 1);
if ($page < 1) {
$page = 1;
}
$data = $this->dataService->search_s($request->all(), ['*'], $page, 20,$session);
if (method_exists($this->dataService, 'formatPageContent')) {
//根据权限格式化页面button
$token = $request->input('token');
......
......@@ -50,9 +50,12 @@ class WarehouseController extends BaseController
}
$page_size = $request->input('page_size',10);
$page = $request->input('page',1);
if ($session['admin_groupnew'] != 7) {
if (!in_array($session['admin_groupnew'],[7,8])) {
$Db = $Db->where('company_id', $session['company_id']);
}
if (in_array($session['admin_groupnew'],[8])) {
$Db = $Db->whereIn('company_id', $session['all_company']);
}
if($page<1){
$page = 1;
}
......@@ -79,7 +82,7 @@ class WarehouseController extends BaseController
$list[$k]['comapny_name'] = DB::table('company')
->where('com_id', $v['company_id'])
->value('com_name');
if ($session['admin_groupnew'] == 7) {
if (in_array($session['admin_groupnew'],[7,8])) {
$button = ['wareGoods', 'addGoodsNum'];
} else {
$button = ['wareGoods'];
......@@ -253,6 +256,12 @@ class WarehouseController extends BaseController
->select('shck_ckmc', 'pg_goodsname', 'goio_num', 'goio_type', 'goio_sys_num', 'goio_serial_number', 'goio_old_num', 'goio_new_num', 'com_name')
->paginate($page_size);
$list = $paginate->items();
$data['page'] = [
'count' => $paginate->total(),
'page'=>$paginate->currentPage(),
'page_size'=>$page_size,
'allPage'=>$paginate->lastPage()
];
if($list){
foreach ($list as $k =>$v){
if (empty($v['goio_sys_num'])) {
......@@ -269,14 +278,9 @@ class WarehouseController extends BaseController
}
$data['list'] = $list;
$data['page'] = [
'count' => $paginate->total(),
'page'=>$paginate->currentPage(),
'page_size'=>$page_size,
'allPage'=>$paginate->lastPage()
];
return $this->success('获取成功', $data);
}else{
$data['list'] = $list;
return $this->error('暂无数据', ErrorInc::DATA_EMPTY,$data);
}
}
......
......@@ -74,9 +74,11 @@ class AdminsController extends BaseController
$Db = $Db->where('admin_groupnew','!=',2);
}else{//其他只能看到除自己所属部门的成员
$Db = $Db->where('admin_groupnew','!=',2)->whereIn('admin_groupnew',$ids)->where('id','!=',$session['id']);
// if ($session['admin_groupnew'] != 8) {//管理员可以看全部
if ($session['admin_groupnew'] != 8) {//管理员可以看全部
$Db = $Db->where('company_id', $session['company_id']);
// }
}else{
$Db = $Db->whereIn('company_id', $session['all_companys']);
}
}
$count = $Db->count();
......
......@@ -42,9 +42,13 @@ class BmmcController extends BaseController
if($request->get('session_token')['admin_groupnew']!='7'){
// CommonService::startmysql();
$list = Bmmc::whereRaw("FIND_IN_SET ('".$request->get('session_token')['admin_groupnew']."',bmmc_pids) ");
// if($request->get('session_token')['admin_groupnew']!='8'){
if($request->get('session_token')['admin_groupnew']!='8'){
$list = $list->whereIn('company_id',[$request->get('session_token')['company_id'],1]);
// }
}else{
$all_companys = $request->get('session_token')['all_companys'];
$all_companys[] = 1;
$list = $list->whereIn('company_id',$all_companys);
}
$list = $list->select('id','bmmc_name','bmmc_pid','bmmc_pids')->orderBy('id','ASC')->get();
// dump(CommonService::showmysql());
$parent_id = $request->get('session_token')['admin_groupnew'];
......
......@@ -235,6 +235,26 @@ class LoginController extends BaseController
$com_parent_id = $company['com_parent_id'];
// $com_parent_id = Company::where("com_id",$result['company_id'])->value('com_parent_id');
$result['com_parent_id'] = $com_parent_id.",".$result['company_id'];
$result['com_brand'] = $company['com_brand'];
$all_company = Company::whereRaw("FIND_IN_SET(".$result['company_id'].",com_parent_id) and com_type=2")->select('com_id')->get();
$all_company = CommonService::dataToArray($all_company);
if($all_company){
$all_company = array_column($all_company, 'com_id');
$all_company[] = $result['company_id'];
}else{
$all_company = [$result['company_id']];
}
$result['all_company'] = $all_company;
$all_companys = Company::whereRaw("FIND_IN_SET(".$result['company_id'].",com_parent_id) and com_type=1")->select('com_id')->get();
$all_companys = CommonService::dataToArray($all_companys);
if($all_companys){
$all_companys = array_column($all_companys, 'com_id');
$all_companys[] = $result['company_id'];
}else{
$all_companys = [$result['company_id']];
}
$result['all_companys'] = $all_companys;
$result['com_type'] = $company['com_type'];
if($company['com_type']==2){
$result['search_id'] = Admin::where('company_id',$result['company_id'])->where("admin_groupnew",3)->value('id');
......
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class OrderCallphone extends Model
{
protected $table ='order_callphone';
// 拒绝添加的字段
protected $guarded = [];
public $timestamps=false;
}
......@@ -55,7 +55,7 @@ class LoginService
if ($find_person['install_is_type'] != 1) {
return ['ErrorCode' => 203, 'ErrorMessage' => '当前账号已停用!', 'data' => ''];
}
if($request['user_type'] == 2 && $company['com_type']==2){
if($request['user_type'] == 2 && $company['com_type']==2 && $find_person['admin_groupnew']!=2){
$request['user_type'] = 3;
}
if (isset($request['openid']) && $request['openid']!='') {
......@@ -63,6 +63,39 @@ class LoginService
$bingding_res = self::accreditBinding($request, $find_person);
}
if($request['user_type']>1) {
if($company['com_type']==2 && $find_person['admin_groupnew']==2){
$button = [
["pagePath" => "/pages/index/index", "text" => "接单", "iconPath" => "tab_icon_01.png", "selectedIconPath" => "tab_icon_01_on.png", 'type' => 'OrderTaking'],
["pagePath" => "/pages/order/installOrderList", "text" => "安装", "iconPath" => "tab_icon_02.png", "selectedIconPath" => "tab_icon_02_on.png", 'type' => 'InstallOrder'],
["pagePath" => "", "text" => "更多", "iconPath" => "tab_icon_04.png", "selectedIconPath" => "tab_icon_04_on.png", 'type' => 'moreButton']
];
}else {
$button = [
["pagePath" => "/pages/index/index", "text" => "接单", "iconPath" => "tab_icon_01.png", "selectedIconPath" => "tab_icon_01_on.png", 'type' => 'OrderTaking'],
["pagePath" => "/pages/order/installOrderList", "text" => "安装", "iconPath" => "tab_icon_02.png", "selectedIconPath" => "tab_icon_02_on.png", 'type' => 'InstallOrder'],
["pagePath" => "/pages/order/billManagement", "text" => "账单", "iconPath" => "tab_icon_03.png", "selectedIconPath" => "tab_icon_03_on.png", 'type' => 'orderBill'],
["pagePath" => "", "text" => "更多", "iconPath" => "tab_icon_04.png", "selectedIconPath" => "tab_icon_04_on.png", 'type' => 'moreButton']
];
}
$button_more = [
["pagePath"=>"/pages/order/afterOrderList","text"=>"售后","iconPath"=>"","selectedIconPath"=>"",'type'=>'afterOrderList'],
["pagePath"=>"/pages/login/forgotPassword","text"=>"修改密码","iconPath"=>"","selectedIconPath"=>"",'type'=>'forgotPassword'],
["pagePath"=>"/pages/technician/technicianList","text"=>"技师","iconPath"=>"","selectedIconPath"=>"",'type'=>'technicianList'],
["pagePath"=>"","text"=>"退出","iconPath"=>"","selectedIconPath"=>"",'type'=>'quit']
];
}else{
$button = [
["pagePath"=>"/pages/order/installOrderList","text"=>"安装","iconPath"=>"tab_icon_02.png","selectedIconPath"=>"tab_icon_02_on.png",'type'=>'InstallOrder'],
["pagePath"=>"","text"=>"更多","iconPath"=>"tab_icon_04.png","selectedIconPath"=>"tab_icon_04_on.png",'type'=>'moreButton']
];
$button_more = [
["pagePath"=>"/pages/order/afterOrderList","text"=>"售后","iconPath"=>"","selectedIconPath"=>"",'type'=>'afterOrderList'],
["pagePath"=>"/pages/login/forgotPassword","text"=>"修改密码","iconPath"=>"","selectedIconPath"=>"",'type'=>'forgotPassword'],
["pagePath"=>"","text"=>"退出","iconPath"=>"","selectedIconPath"=>"",'type'=>'quit']
];
}
$expiration_time =7 * 24 * 60 * 60; //登录过期时间
// 生成token
$unique_string = md5(uniqid(md5(microtime(true)) . rand(100000, 999999), true)); //生成唯一字符串
......@@ -90,7 +123,16 @@ class LoginService
return ["ErrorCode" => 204, 'ErrorMessage' => '登录失败!1', 'data' => ''];
}
// 返回数据
// // 返回数据
// $return_data = [
// 'api_token' => Crypt::encrypt($api_token), //生成前台token
// 'account' => $find_person['check_code'],
// 'install_name' => $find_person['install_name'],
// 'install_phone' => $find_person['install_phone'],
// 'install_id' => $find_person['id'],
// 'admin_id' => $find_person['admin_id'],
// 'company_id' => $find_person['company_id'],
// ];
$return_data = [
'api_token' => Crypt::encrypt($api_token), //生成前台token
'account' => $find_person['check_code'],
......@@ -99,6 +141,10 @@ class LoginService
'install_id' => $find_person['id'],
'admin_id' => $find_person['admin_id'],
'company_id' => $find_person['company_id'],
'button' => $button,
'user_type' => $request['user_type'],
'button_more' => $button_more,
'openid' => $request['openid'],
];
return ['ErrorCode' => 1, 'ErrorMessage' => '登录成功', 'data' => $return_data];
}
......@@ -124,31 +170,6 @@ class LoginService
if (empty($lote_res)) {
return ["ErrorCode" => 500, 'ErrorMessage' => '登录失败!2', 'data' => ''];
}
if($request['user_type']>1) {
$button = [
["pagePath"=>"/pages/index/index","text"=>"接单","iconPath"=>"tab_icon_01.png","selectedIconPath"=>"tab_icon_01_on.png",'type'=>'OrderTaking'],
["pagePath"=>"/pages/order/installOrderList","text"=>"安装","iconPath"=>"tab_icon_02.png","selectedIconPath"=>"tab_icon_02_on.png",'type'=>'InstallOrder'],
["pagePath"=>"/pages/order/billManagement","text"=>"账单","iconPath"=>"tab_icon_03.png","selectedIconPath"=>"tab_icon_03_on.png",'type'=>'orderBill'],
["pagePath"=>"","text"=>"更多","iconPath"=>"tab_icon_04.png","selectedIconPath"=>"tab_icon_04_on.png",'type'=>'moreButton']
];
$button_more = [
["pagePath"=>"/pages/order/afterOrderList","text"=>"售后","iconPath"=>"","selectedIconPath"=>"",'type'=>'afterOrderList'],
["pagePath"=>"/pages/login/forgotPassword","text"=>"修改密码","iconPath"=>"","selectedIconPath"=>"",'type'=>'forgotPassword'],
["pagePath"=>"/pages/technician/technicianList","text"=>"技师","iconPath"=>"","selectedIconPath"=>"",'type'=>'technicianList'],
["pagePath"=>"","text"=>"退出","iconPath"=>"","selectedIconPath"=>"",'type'=>'quit']
];
}else{
$button = [
["pagePath"=>"/pages/order/installOrderList","text"=>"安装","iconPath"=>"tab_icon_02.png","selectedIconPath"=>"tab_icon_02_on.png",'type'=>'InstallOrder'],
["pagePath"=>"","text"=>"更多","iconPath"=>"tab_icon_04.png","selectedIconPath"=>"tab_icon_04_on.png",'type'=>'moreButton']
];
$button_more = [
["pagePath"=>"/pages/order/afterOrderList","text"=>"售后","iconPath"=>"","selectedIconPath"=>"",'type'=>'afterOrderList'],
["pagePath"=>"/pages/login/forgotPassword","text"=>"修改密码","iconPath"=>"","selectedIconPath"=>"",'type'=>'forgotPassword'],
["pagePath"=>"","text"=>"退出","iconPath"=>"","selectedIconPath"=>"",'type'=>'quit']
];
}
// 返回数据
$return_data = [
'api_token' => Crypt::encrypt($api_token), //生成前台token
......
......@@ -158,6 +158,13 @@ class OrderListService extends Model
if ($session['user_type'] != 1) {
$list_items[$key]['button'][] = ['action' => 'transferOfOrder', 'name' => '改派'];
}
if($value['stauas'] == 30){
if (isset($installLine[$value['serial_number']]['line_state']) && $list_items[$key]['line_state']>1) {
$list_items[$key]['button'][] = ['action' => 'contact', 'name' => '修改预约'];
}else{
$list_items[$key]['button'][] = ['action' => 'contact', 'name' => '预约时间'];
}
}
}
if ($request['stauas'] == 3) {
$list_items[$key]['line_state'] = 1;
......@@ -180,7 +187,11 @@ class OrderListService extends Model
;
break;
}
if($list_items[$key]['line_state']==1){
$list_items[$key]['button'][] = ['action' => 'contact', 'name' => '预约时间'];
}else{
$list_items[$key]['button'][] = ['action' => 'contact', 'name' => '修改预约'];
}
} else {
$list_items[$key]['button'][] = ['action' => 'contact', 'name' => '预约时间'];
}
......@@ -646,7 +657,17 @@ class OrderListService extends Model
} else {
$ree = true;
}
$req = InstallLine::where('line_serm',$orderListArr['serial_number'])->update(['line_state'=>2,'line_lasttime'=>date("Y-m-d H:i:s")]);
$install = InstallLine::where('line_serm',$orderListArr['serial_number'])->first();
$install = CommonService::dataToArray($install);
if(!empty($install)) {
if($install['line_state']>2) {
$req = InstallLine::where('line_serm', $orderListArr['serial_number'])->update(['line_state' => 2, 'line_lasttime' => date("Y-m-d H:i:s")]);
}else{
$req =true;
}
}else {
$req = self::updateLineSrate('', 1, $orderListArr['serial_number'], $orderListArr['sys_num'], $orderListArr['order_num']);
}
if ( $res && $rea && $ree && $req ) {
DB::commit();
$content = "订单(".$orderListArr['serial_number'].")(".$install_person['install_name'].")";
......@@ -654,7 +675,7 @@ class OrderListService extends Model
return ['ErrorCode' => 1, 'ErrorMessage' => '操作成功', 'Data' => []];
} else {
DB::rollback();//回滚
return ['ErrorCode' => ErrorInc::MYSQL_FAILED, 'ErrorMessage' => '操作失败', 'Data' => []];
return ['ErrorCode' => ErrorInc::MYSQL_FAILED, 'ErrorMessage' => '操作失败', 'Data' => [$res,$rea,$ree,$req]];
}
}else{
return ['ErrorCode' => ErrorInc::BUSINESS_FORBID, 'ErrorMessage' => '技师不存在!', 'Data' => []];
......@@ -834,6 +855,13 @@ class OrderListService extends Model
if ($session['user_type'] != 1) {
$data['button'][] = ['action' => 'transferOfOrder', 'name' => '改派'];
}
if($orderListArr['stauas'] == 30){
if (isset($installLine) && $installLine>1) {
$data['button'][] = ['action' => 'contact', 'name' => '修改预约'];
}else{
$data['button'][] = ['action' => 'contact', 'name' => '预约时间'];
}
}
}
if ($request['stauas'] == 3) {
if (isset($installLine)) {
......@@ -854,7 +882,11 @@ class OrderListService extends Model
;
break;
}
if($installLine==1){
$data['button'][] = ['action' => 'contact', 'name' => '预约时间'];
}else {
$data['button'][] = ['action' => 'contact', 'name' => '修改预约'];
}
} else {
$data['button'][] = ['action' => 'contact', 'name' => '预约时间'];
}
......@@ -1624,7 +1656,7 @@ class OrderListService extends Model
$line['line_end_time'] = date("Y-m-d H:i:s");
break;
default:
return false;
// return false;
break;
}
$line['line_lasttime'] = date("Y-m-d H:i:s");
......
......@@ -12,12 +12,18 @@
namespace App\Services;
use App\Models\Admin;
use App\Models\AdminInfor;
use App\Models\AdminToken;
use App\Models\ApplyNote;
use App\Models\Company;
use App\Models\Czrz;
use App\Models\Department;
use App\Models\Functions;
use App\Models\NoteDetail;
use App\Models\OrderAfter;
use App\Models\Orders;
use App\Models\Permissions;
use App\Models\SmsTemplate;
use App\Models\SyncStores;
use App\OtherModels\SmsRecord;
......@@ -1725,4 +1731,73 @@ class CommonService extends Service{
return true;
}
}
/**|---------------------------------------------------------------------------------
* @name 重置登录权限
* @param string ju_ordernum 订单单号
* @retrun \Illuminate\Http\JsonResponse /multitype:array
* @author dou 2024/9/27 14:37
* |---------------------------------------------------------------------------------
*/
public static function resetToken ( $session ){
$result = Admin::where('id',$session['id'])->first();
$company = Company::where("com_id",$result['company_id'])->first();
$com_parent_id = $company['com_parent_id'];
$result['com_parent_id'] = $com_parent_id.",".$result['company_id'];
$result['com_brand'] = $company['com_brand'];
$all_company = Company::whereRaw("FIND_IN_SET(".$result['company_id'].",com_parent_id) and com_type=2")->select('com_id')->get();
$all_company = CommonService::dataToArray($all_company);
if($all_company){
$all_company = array_column($all_company, 'com_id');
$all_company[] = $result['company_id'];
}else{
$all_company = [$result['company_id']];
}
$result['all_company'] = $all_company;
$all_companys = Company::whereRaw("FIND_IN_SET(".$result['company_id'].",com_parent_id) and com_type=1")->select('com_id')->get();
$all_companys = CommonService::dataToArray($all_companys);
if($all_companys){
$all_companys = array_column($all_companys, 'com_id');
$all_companys[] = $result['company_id'];
}else{
$all_companys = [$result['company_id']];
}
$result['all_companys'] = $all_companys;
$result['com_type'] = $company['com_type'];
if($company['com_type']==2){
$result['search_id'] = Admin::where('company_id',$result['company_id'])->where("admin_groupnew",3)->value('id');
}else{
$result['search_id']=$result['id'];
}
$function = Functions::where('function_type',3)->select('function_id','function_model','function_action')->get()->toArray();
$list = [];
foreach ($function as $k =>$v){
$list[] = $v['function_model'].':'.$v['function_action'];
}
$arr['at_time'] = date('Y-m-d H:i:s');
$arr['at_adminid'] = $result['id'];
$at_permissions['admindata'] = $result;
$search_token = AdminToken::where('at_adminid',$result['id'])->orderBy('at_time','DESC')->first();
/*********************获取所有按钮**************************/
$function_id = Department::where('id',$result['admin_groupnew'])->value('function_id');
$function_id = explode(',',$function_id);
$at_permissions['function_id'] = $function_id;
$at_permissions = json_encode($at_permissions);
$arr['at_permissions'] = $at_permissions;
$res = Permissions::whereIn('function_id',$function_id)->where('function_position','!=',3)->select('function_id','function_parent_id','function_name','function_model','function_action','function_position','sort_order')->orderBy('sort_order','DESC')->get()->toArray();
$at_permiss = [];
foreach ($res as $k=>$v){
$at_permiss[$v['function_parent_id']][] = $v;
}
$arr['at_perm'] = json_encode($at_permiss);
$arr['at_accredit'] = '';
/********************************************************************/
if ($search_token){
AdminToken::where('at_token',$search_token['at_token'])->update($arr);
}else{
AdminToken::where('at_token',$search_token['at_token'])->insert($arr);
}
}
}
......@@ -71,17 +71,18 @@ class OrderDeductionFeeService extends Service
$add_dfee['reo_state'] = 1;
$add_dfee['reo_create_time'] = date('Y-m-d H:i:s');
$add_dfee['reo_pay_time'] = date('Y-m-d H:i:s');
$add_dfee['reo_pay_way'] = 4;//4派单扣费
$add_dfee['reo_pay_way'] = $data['reo_pay_way'];//4派单扣费 5电话通知扣费
$add_dfee['reo_type'] = 2;
$add_dfee['reo_client_type'] = $find_company_info['com_type'];//公司类型
$update['adre_banlance'] = $find_balance['adre_banlance'] + $data['reo_price'];
if (($update['adre_banlance'] + $find_balance['adre_credit_limit']) <= 0) {
if (($update['adre_banlance'] + $find_balance['adre_credit_limit']) <= 0 && (!isset($data['pay_type']) || $data['pay_type']!=1)) {
return ['code'=>501, 'msg'=>'余额不足,请充值'];
}
$add_res = DB::table('recharge_order')->insertGetId($add_dfee);
$update_res = DB::table('admin_recharge')
->where('adre_id', $find_balance['adre_id'])
->update($update);
->increment('adre_banlance',$data['reo_price']);
if ($add_res && $update_res) {
return ['code'=>200, 'msg'=>'操作成功'];
}
......
......@@ -568,9 +568,12 @@ class OrderListService extends Service
}
// }
if (!in_array($session['admin_groupnew'], [2,3,7])){//管理员可以看全部
if (!in_array($session['admin_groupnew'], [2,3,7,8])){//管理员可以看全部
$where['gone_order_list.company_id'] = $session['company_id'];
}
if (in_array($session['admin_groupnew'], [8])){//管理员可以看全部
$where['gone_order_list.company_id_searchin'] = $session['all_companys'];
}
$where = CommonService::jointWhere($where);
$page_size = $input['page_size']??10;
......
......@@ -382,9 +382,13 @@ class OrderService extends Service
$where['gone_orders.category_findinset'] = $input['cd_id'];
}
if ($session['admin_groupnew'] != 7){//管理员可以看全部 && $session['admin_groupnew'] != 8
// if ($session['admin_groupnew'] != 7){//管理员可以看全部 && $session['admin_groupnew'] != 8
if(!in_array($session['admin_groupnew'],[7,8])) {
$where['gone_orders.company_id'] = $session['company_id'];
}
if(in_array($session['admin_groupnew'],[8])) {
$where['gone_orders.company_id_searchin'] = $session['all_companys'];
}
/*---------------------------------------------拼接订单列表查询条件结束-------------------------------------------------------*/
$is_excel = $input['is_excel']??'0';
......@@ -509,9 +513,12 @@ class OrderService extends Service
$where['p_id_searchin'] = $admin_pt_id;
}
if($session['admin_groupnew']!=7) {
if(!in_array($session['admin_groupnew'],[7,8])) {
$where['company_id'] = $session['company_id'];
}
if(in_array($session['admin_groupnew'],[8])) {
$where['company_id_searchin'] = $session['all_companys'];
}
$statuswhere = OrderService::getStatusWhere($status);
foreach( $statuswhere as $k => $v ){
......@@ -1282,10 +1289,11 @@ class OrderService extends Service
$returnOrder = Orders::where('sys_num', $input['sys_num'])->update($post);
// 派单扣除 订单所属公司金额
// 扣费
$post_data['adm_id'] = $orderinfo['admin_id'];
$post_data['adm_id'] = $session['admin_id']??0;
$post_data['company_id'] = $orderinfo['company_id'];
$post_data['order_number'] = $input['sys_num'];
$post_data['order_number'] = $orderinfo['order_num'];
$post_data['reo_price'] = -0.5;
$post_data['reo_pay_way'] = 4;
$reduce_price = OrderDeductionFeeService::deductFee($post_data);
if ($reduce_price['code'] != 200) {
DB::rollback();
......
......@@ -51,29 +51,32 @@ class PlatformService extends Service
public function search($param, $columns = array('*'), $page = 1, $pageSize = 20,$session='')
{
$where = [];
if ($session['admin_groupnew'] != 7){//管理员可以看全部
$where[] = ['company_id', '=', $session['company_id']];
if (!in_array($session['admin_groupnew'],[7,8])) {
$where['company_id'] = $session['company_id'];
}
if (in_array($session['admin_groupnew'],[8])) {
$where['company_id_searchin'] = $session['all_companys'];
}
if ($param['type']) {
$where[] = ['type', '=', $param['type']];
$where['type'] = $param['type'];
}
if ($param['pt_name']) {//平台名称
$where[] = ['pt_name', 'like', '%'.$param['pt_name'] . '%'];
$where['type_like'] = $param['pt_name'];
}
if ($param['pt_zt']) {//状态 1:启用;2:停用
$where[] = ['pt_zt', '=', $param['pt_zt']];
$where['pt_zt'] = $param['pt_zt'];
}
if ($param['three_pd']) {//0:自家;1:第三方
$where[] = ['three_pd', '=', $param['three_pd']];
$where['three_pd'] = $param['three_pd'];
}
if ($param['p_paytype']) {//开票公司
$where[] = ['p_paytype', '=', $param['p_paytype']];
$where['p_paytype'] = $param['p_paytype'];
}
if ($param['bus_type']) {
if ($param['bus_type'] == 2) {
$where[] = ['bus_type', '=', 2];
$where['bus_type'] = 2;
} else {
$where[] = ['bus_type', '!=', 2];
$where['bus_type_noteq'] = 2;
}
}
if ($param['sord_asc']) {//字母排序
......@@ -84,15 +87,16 @@ class PlatformService extends Service
$orderBy[0] = 'sord';
$orderBy[1] = 'ASC';
}
$where = CommonService::jointWhere($where);
$count = $this->modelMain
->where($where)
->whereRaw($where)
->count();
$totalPage = ceil($count / $pageSize);
if ($pageSize > 0) {
$offset = ($page - 1) * $pageSize;
$list = $this->modelMain
->where($where)
->whereRaw($where)
->select($columns)
//->orderBy('sord','ASC')
->orderBy($orderBy[0], $orderBy[1])
......@@ -101,7 +105,7 @@ class PlatformService extends Service
->get();
} else {
$list = $this->modelMain
->where($where)
->whereRaw($where)
->select($columns)
//->orderBy('sord','ASC')
->orderBy($orderBy[0], $orderBy[1])
......
......@@ -112,10 +112,11 @@ class RefundService extends Service
$where[1] = 1;
if(!in_array($session['admin_groupnew'],[7,8])){
$where['pt_id_searchin'] = trim($admin_pt_id);
}
if ($session['admin_groupnew'] != 7) {//管理员可以看全部
$where['company_id'] = $session['company_id'];
}
if(in_array($session['admin_groupnew'],[8])){
$where['company_id_searchin'] = $session['all_companys'];
}
// $where['pt_id_searchin'] = $admin_pt_id;
if (isset($params['state'])){
......@@ -176,10 +177,11 @@ class RefundService extends Service
$where1[1] = 1;
if(!in_array($session['admin_groupnew'],[7,8])){
$where1['pt_id_searchin'] = trim($admin_pt_id);
}
if ($session['admin_groupnew'] != 7) {//管理员可以看全部
$where1['company_id'] = $session['company_id'];
}
if(in_array($session['admin_groupnew'],[8])){
$where1['company_id_searchin'] = $session['all_companys'];
}
$where1 = CommonService::jointWhere($where1);
//未处理
......
......@@ -15,6 +15,7 @@ namespace App\Services;
use App\Exports\AfterCustExport;
use App\Exports\ServiceProviderExport;
use App\Models\Admin;
use App\Models\Company;
use App\Models\GoodsBrand;
use BlueCity\Core\Service\Service;
use Illuminate\Support\Facades\Log;
......@@ -98,10 +99,11 @@ class ServiceProviderService extends Service
if (Request()->filled('verstorename')) {
$query->where('admin_infor.verstorename', 'like', Request()->input('verstorename') . '%');//京东名称
}
if ($session['admin_groupnew'] != 7) {
if (!in_array($session['admin_groupnew'],[7,8])) {
$query->where('admin.company_id', $session['company_id']);
// $com_parent_id = explode(',', $session['com_parent_id']);
// $query->whereIn('admin.company_id', $com_parent_id);
}
if (in_array($session['admin_groupnew'],[8])) {
$query->whereIn('admin.company_id', $session['all_company']);
}
$count = $query->count();
$totalPage = 1;
......
......@@ -75,10 +75,12 @@ class SupplierPriceService extends Service
if (!empty($param['type'])) { //结束时间
$Db = $Db->where("gh_price.type", $param['type']);
}
if ($session['admin_groupnew'] != 7){//管理员可以看全部 && $session['admin_groupnew'] != 8
if (!in_array($session['admin_groupnew'],[7,8])){
$Db = $Db->where("gh_price.company_id",$session['company_id']);
}
if (in_array($session['admin_groupnew'],[8])){
$Db = $Db->whereIn("gh_price.company_id",$session['all_companys']);
}
$count = $Db->count();
$totalPage = ceil($count / $pageSize);
if ($pageSize > 0) {
......@@ -103,7 +105,7 @@ class SupplierPriceService extends Service
$list = $data['list'];
//按钮-添加
$all_button = BmmcService::wherebutton($token, $priID);
if (($request['type'] == 2 && $session['admin_groupnew'] == 7) || ($request['type'] == 1 && $session['admin_groupnew'] != 7)) {
if (($request['type'] == 2 && in_array($session['admin_groupnew'],[7,8])) || ($request['type'] == 1 && !in_array($session['admin_groupnew'],[7,8]))) {
$addPt = BmmcService::getTopButton('addGhprice', '', $all_button);
} else {
$addPt = BmmcService::getTopButton('', '', $all_button);
......@@ -122,7 +124,7 @@ class SupplierPriceService extends Service
} else {
$list[$kl]['type'] = $vl['pg_series'] . '-' . $vl['version'];
}
if (($request['type'] == 2 && $session['admin_groupnew'] == 7) || $request['type'] == 1) {
if (($request['type'] == 2 && in_array($session['admin_groupnew'],[7,8])) || ($request['type'] == 1 && !in_array($session['admin_groupnew'],[7,8]))) {
$button = BmmcService::getListButton(['editGhprice, delGhPrice'], $all_button);//编辑,删除按钮
} else {
$button = BmmcService::getListButton([], $all_button);//编辑,删除按钮
......
<?php
namespace Aliyun\DySDKLite;
/**
* 签名助手 2017/11/19
*
* Class SignatureHelper
*/
class SignatureHelper {
/**
* 生成签名并发起请求
*
* @param $accessKeyId string AccessKeyId (https://ak-console.aliyun.com/)
* @param $accessKeySecret string AccessKeySecret
* @param $domain string API接口所在域名
* @param $params array API具体参数
* @param $security boolean 使用https
* @param $method boolean 使用GET或POST方法请求,VPC仅支持POST
* @return bool|\stdClass 返回API接口调用结果,当发生错误时返回false
*/
public function request($accessKeyId, $accessKeySecret, $domain, $params, $security=false, $method='POST') {
$apiParams = array_merge(array (
"SignatureMethod" => "HMAC-SHA1",
"SignatureNonce" => uniqid(mt_rand(0,0xffff), true),
"SignatureVersion" => "1.0",
"AccessKeyId" => $accessKeyId,
"Timestamp" => gmdate("Y-m-d\TH:i:s\Z"),
"Format" => "JSON",
), $params);
ksort($apiParams);
$sortedQueryStringTmp = "";
foreach ($apiParams as $key => $value) {
$sortedQueryStringTmp .= "&" . $this->encode($key) . "=" . $this->encode($value);
}
$stringToSign = "${method}&%2F&" . $this->encode(substr($sortedQueryStringTmp, 1));
$sign = base64_encode(hash_hmac("sha1", $stringToSign, $accessKeySecret . "&",true));
$signature = $this->encode($sign);
$url = ($security ? 'https' : 'http')."://{$domain}/";
try {
$content = $this->fetchContent($url, $method, "Signature={$signature}{$sortedQueryStringTmp}");
return json_decode($content);
} catch( \Exception $e) {
return false;
}
}
private function encode($str)
{
$res = urlencode($str);
$res = preg_replace("/\+/", "%20", $res);
$res = preg_replace("/\*/", "%2A", $res);
$res = preg_replace("/%7E/", "~", $res);
return $res;
}
private function fetchContent($url, $method, $body) {
$ch = curl_init();
if($method == 'POST') {
curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
} else {
$url .= '?'.$body;
}
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"x-sdk-client" => "php/2.0.0"
));
if(substr($url, 0,5) == 'https') {
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
}
$rtn = curl_exec($ch);
if($rtn === false) {
// 大多由设置等原因引起,一般无法保障后续逻辑正常执行,
// 所以这里触发的是E_USER_ERROR,会终止脚本执行,无法被try...catch捕获,需要用户排查环境、网络等故障
trigger_error("[CURL_" . curl_errno($ch) . "]: " . curl_error($ch), E_USER_ERROR);
}
curl_close($ch);
return $rtn;
}
}
\ No newline at end of file
<?php
/*
* 此文件用于检测DEMO运行环境,无需修改,请在浏览器中运行检测
*
* 2017/11/19
*/
echo '<style>li {font-size: 16px;} li.fail {color:red} li.success {color: green} li label{ display:inline-block; width: 15em}</style>';
echo '<h1>执行环境检测</h1>';
function success($title) {
print_r("<li class=\"success\"><label>{$title}</label>[成功]</li>");
}
function fail($title, $description) {
print_r("<li class=\"fail\"><label>{$title}</label>[失败] {$description}</li>");
}
if(preg_match("/^\d+\.\d+/", PHP_VERSION, $matches)) {
$version = $matches[0];
if($version >= 5.4) {
success("PHP $version");
} else {
fail("PHP $version", "需要PHP>=5.4版本");
exit(1);
}
}
try {
set_error_handler(function () { throw new Exception(); });
date_default_timezone_get();
restore_error_handler();
} catch(Exception $e) {
fail('默认时区设置', '请设置默认时区,如:date_default_timezone_set("Asia/Shanghai")');
}
echo '<h2>依赖扩展检测,如失败请安装相应扩展</h2>';
$dependencies = array (
'json_encode' => null,
'curl_init' => null,
'hash_hmac' => null,
'simplexml_load_string' => '如果是php7.x + ubuntu环境,请确认php7.x-libxml是否安装,x为子版本号',
);
foreach($dependencies as $funcName => $description) {
if(!function_exists($funcName)) {
fail($funcName, $description || '');
} else {
success($funcName);
}
}
\ No newline at end of file
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 智能外呼批量任务呼叫
*/
function batchRobotSmartCall() {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// fixme 必填: 被叫显号,可在语音控制台中找到所购买的显号
$params["CalledShowNumber"] = "06336760013";
// fixme 必填: 被叫号码
$params["CalledNumber"] = "1004,1005";
// fixme 必填: 机器人ID
$params["DialogId"] = "331234432";
// fixme 必填: 公司名称
$params["CorpName"] = "阿里巴巴通信技术(北京)有限公司";
// fixme 必填: 任务名称
$params["TaskName"] = "批量任务测试";
// todo 选填: 早媒体语音识别标识,默认是false,使用的话设成true
// $params["EarlyMediaAsr"] = "false";
// todo 选填: 是否定时呼叫,设为true,则必须设置scheduleTime
// $params["ScheduleCall"] = "false";
// todo 选填: 约定的呼叫时间
// $params["ScheduleTime"] = "2017-11-27 20:09:06";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "BatchRobotSmartCall",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证智能外呼批量任务呼叫(BatchRobotSmartCall)接口
print_r(batchRobotSmartCall());
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 取消呼叫
*/
function cancelCall() {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// fixme 必填: 从上次呼叫调用的返回值中获取的CallId
$params["CallId"] = "113853585007^100675005007";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "CancelCall",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证取消呼叫(CancelCall)接口
print_r(cancelCall());
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 点击拨号
*/
function clickToDial() {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// fixme 必填: 主叫显号, 可在语音控制台中找到所购买的显号
$params["CallerShowNumber"] = "05344757036";
// fixme 必填: 主叫号码
$params["CallerNumber"] = "1800000000";
// fixme 必填: 被叫显号, 可在语音控制台中找到所购买的显号
$params["CalledShowNumber"] = "4001112222";
// fixme 必填: 被叫号码
$params["CalledNumber"] = "13700000000";
// fixme 可选: 是否录音
$params["RecordFlag"] = true;
// fixme 可选: 是否开启实时ASR功能
$params["AsrFlag"] = true;
// fixme 可选: ASR模型ID
$params["AsrModelId"] = '2070aca1eff146f9a7bc826f1c3d4d33';
// fixme 可选: 预留给调用方使用的ID, 最终会通过在回执消息中将此ID带回给调用方(15个字符及以内)
$params["OutId"] = "yourOutId";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "ClickToDial",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证点击拨号(ClickToDial)接口
print_r(clickToDial());
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 交互式语音应答
*/
function ivrCall() {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// fixme 必填: 被叫显号
$params["CalledShowNumber"] = "4001112222";
// fixme 必填: 被叫显号
$params["CalledNumber"] = "13700000000";
// fixme 必填: 呼叫开始时播放的提示音-语音文件Code名称或者Tts模板Code
$params["StartCode"] = "TTS_10001";
// fixme 可选: Tts模板中的变量替换JSON,假如Tts模板中存在变量,则此处必填
$params["StartTtsParams"] = array("AckNum" => "123456");
// fixme 必填: 按键与语音文件ID或tts模板的映射关系
$menuKeyMaps = array (
array ( // 按下1键, 播放语音
"Key" => "1",
"Code" => "9a9d7222-670f-40b0-a3af.wav"
),
array ( // 按下2键, 播放语音
"Key" => "2",
"Code" => "44e3e577-3d3a-418f-932c.wav"
),
array ( // 按下3键, 播放TTS语音
"Key" => "3",
"Code" => "TTS_71390000",
"TtsParams" => array("product"=>"aliyun", "code"=>"123")
),
);
// fixme 可选: 重复播放次数
$params["PlayTimes"] = 3;
// fixme 可选: 等待用户按键超时时间,单位毫秒
$params["Timeout"] = 3000;
// fixme 可选: 播放结束时播放的结束提示音,支持语音文件和Tts模板2种方式,但是类型需要与StartCode一致,即前者为Tts类型的,后者也需要是Tts类型的
$params["ByeCode"] = "TTS_71400007";
// fixme 可选: Tts模板变量替换JSON,当ByeCode为Tts时且Tts模板中带变量的情况下此参数必填
$params["ByeTtsParams"] = array("product" => "aliyun", "code" => "123");
// fixme 可选: 预留给调用方使用的ID, 最终会通过在回执消息中将此ID带回给调用方
$params["OutId"] = "yourOutId";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
if(!empty($params["StartTtsParams"]) && is_array($params["StartTtsParams"])) {
$params["StartTtsParams"] = json_encode($params["StartTtsParams"], JSON_UNESCAPED_UNICODE);
}
if(!empty($params["ByeTtsParams"]) && is_array($params["ByeTtsParams"])) {
$params["ByeTtsParams"] = json_encode($params["ByeTtsParams"], JSON_UNESCAPED_UNICODE);
}
$i = 0;
foreach($menuKeyMaps as $menuKeyMap) {
++$i;
$params["MenuKeyMap." . $i . ".Key"] = $menuKeyMap["Key"];
$params["MenuKeyMap." . $i . ".Code"] = $menuKeyMap["Code"];
if(!empty($menuKeyMap["TtsParams"]) && is_array($menuKeyMap["TtsParams"])) {
$params["MenuKeyMap." . $i . ".TtsParams"] = json_encode($menuKeyMap["TtsParams"], JSON_UNESCAPED_UNICODE);
}
}
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "IvrCall",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证交互式语音应答(IvrCall)接口
print_r(ivrCall());
\ No newline at end of file
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 通过呼叫ID获取呼叫记录
*/
function queryCallDetailByCallId() {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// fixme 必填: 从上次呼叫调用的返回值中获取的CallId
$params["CallId"] = "113853585007^100675005007";
// fixme 必填: Unix时间戳(毫秒),会查询这个时间点对应那一天的记录
$params["QueryDate"] = "1234567890123";
// fixme 必填: 语音通知为:11000000300006, 语音验证码为:11010000138001, IVR为:11000000300005, 点击拨号为:11000000300004, SIP为:11000000300009
$params["ProdId"] = "11010000138001";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "QueryCallDetailByCallId",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证通过呼叫ID获取呼叫记录(QueryCallDetailByCallId)
print_r(queryCallDetailByCallId());
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 通过任务ID获取机器人话单详情
*/
function queryCallDetailByTaskId() {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// fixme 必填: 接口返回的任务ID
$params["TaskId"] = "4001112222";
// fixme 必填: 被叫号码,目前只支持单个
$params["Callee"] = "13700000000";
// fixme 必填: Unix时间戳,会查询这个时间点对应那一天的记录(单位毫秒)
$params["QueryDate"] = time().'000';
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "QueryCallDetailByTaskId",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证通过任务ID获取机器人话单详情(QueryCallDetailByTaskId)
print_r(queryCallDetailByTaskId());
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 机器人列表查询接口
*/
function queryRobotInfoList() {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// todo 可选: 审核状态,默认返回全部,CONFIGURABLE 可配置 AUDITING 审核中 AUDITPASS 审核通过 AUDITFAIL 审核失败
$params["AuditStatus"] = "AUDITPASS";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "QueryRobotInfoList",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证机器人列表查询接口(QueryRobotInfoList)
print_r(queryRobotInfoList());
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 文本转语音外呼
*/
function singleCallByTts() {
$params = array ();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "LTAI5t64Hr8rE8NdT1D1jKNh";
$accessKeySecret = "vpJvj5ksVOy7szD9DFraUbb7yHv8Jb";
// fixme 必填: 被叫显号
//$params["CalledShowNumber"] = "4001112222";
// fixme 必填: 被叫显号
$params["CalledNumber"] = "18233154732";
// fixme 必填: Tts模板Code
$params["TtsCode"] = "TTS_304855064";
// fixme 选填: Tts模板中的变量替换JSON,假如Tts模板中存在变量,则此处必填
//$params["TtsParam"] = array("AckNum" => "123456");
// fixme 选填: 音量
$params["Volume"] = 100;
// fixme 选填: 播放次数
$params["PlayTimes"] = 2;
// fixme 选填: 音量, 取值范围 0~200
$params["Volume"] = 100;
// fixme 选填: 预留给调用方使用的ID, 最终会通过在回执消息中将此ID带回给调用方
$params["OutId"] = "123456";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
if(!empty($params["TtsParam"]) && is_array($params["TtsParam"])) {
$params["TtsParam"] = json_encode($params["TtsParam"], JSON_UNESCAPED_UNICODE);
}
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "SingleCallByTts",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证文本转语音外呼(SingleCallByTts)接口
print_r(singleCallByTts());
\ No newline at end of file
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 语音文件外呼
*/
function singleCallByVoice() {
$params = array ();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// fixme 必填: 被叫显号
$params["CalledShowNumber"] = "4001112222";
// fixme 必填: 被叫显号
$params["CalledNumber"] = "13700000000";
// fixme 必填: 语音文件Code
$params["VoiceCode"] = "c2e99ebc-2d4c-4e78-8d2a-afbb06cf6216.wav";
// fixme 选填: 音量
$params["Volume"] = 100;
// fixme 选填: 播放次数
$params["PlayTimes"] = 3;
// fixme 选填: 外呼流水号
// $params["OutId"] = "yourOutId";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "SingleCallByVoice",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证语音文件外呼(SingleCallByVoice)接口
print_r(singleCallByVoice());
\ No newline at end of file
<?php
/*
* 此文件用于验证语音服务API接口,供开发时参考
* 执行验证前请确保文件为utf-8编码,并替换相应参数为您自己的信息,并取消相关调用的注释
* 建议验证前先执行Test.php验证PHP环境
*
* 2017/11/30
*/
namespace Aliyun\DySDKLite\Vms\Demo;
require_once dirname(__DIR__) . "/SignatureHelper.php";
use Aliyun\DySDKLite\SignatureHelper;
// todo 接口定义,请先替换相应参数为您自己的信息
/**
* 智能外呼
*/
function smartCall() {
$params = array();
// *** 需用户填写部分 ***
// fixme 必填:是否启用https
$security = false;
// fixme 必填: 请参阅 https://ak-console.aliyun.com/ 取得您的AK信息
$accessKeyId = "your access key id";
$accessKeySecret = "your access key secret";
// fixme 必填: 被叫显号,可在语音控制台中找到所购买的显号
$params["CalledShowNumber"] = "06336760013";
// fixme 必填: 被叫号码
$params["CalledNumber"] = "1005";
// fixme 必填: 语音文件ID
$params["VoiceCode"] = "3355eedd-3706-4f75-bff9-e645e88e1730.wav";
// fixme 选填: 外部扩展字段
$params["OutId"] = "yourOutId";
// fixme 选填:放音速度
$params["Speed"] = 1;
// fixme 选填: 音量
$params["Volume"] = 10;
// fixme 选填: 静音时长
$params["MuteTime"] = 10000;
// fixme 选填: 停顿时长
$params["PauseTime"] = 800;
// fixme 选填: 开场放音文件是否可打断,默认为true,打断
$params["ActionCodeBreak"] = "true";
// fixme 选填:ASR模型ID
$params["AsrModelId"] = "2070aca1eff146f9a7bc826f1c3d4d31";
// *** 需用户填写部分结束, 以下代码若无必要无需更改 ***
// 初始化SignatureHelper实例用于设置参数,签名以及发送请求
$helper = new SignatureHelper();
// 此处可能会抛出异常,注意catch
$content = $helper->request(
$accessKeyId,
$accessKeySecret,
"dyvmsapi.aliyuncs.com",
array_merge($params, array(
"RegionId" => "cn-hangzhou",
"Action" => "SmartCall",
"Version" => "2017-05-25",
)),
$security
);
return $content;
}
ini_set("display_errors", "on"); // 显示错误提示,仅用于测试时排查问题
// error_reporting(E_ALL); // 显示所有错误提示,仅用于测试时排查问题
set_time_limit(0); // 防止脚本超时,仅用于测试使用,生产环境请按实际情况设置
header("Content-Type: text/plain; charset=utf-8"); // 输出为utf-8的文本格式,仅用于测试
// 验证智能外呼(SmartCall)接口
print_r(smartCall());
......@@ -1151,6 +1151,14 @@ Route::group(
Route::group(['prefix'=>'SynOrderRejected'], function (){
Route::get('rejectedOrder', 'SynOrderRejectedController@rejectedOrder');//自动拒单
});
#系统任务 >> 电话通知
Route::group(['prefix'=>'SingLeCallByTts'], function (){
Route::get('getSingleCallByTts', 'SingLeCallByTtsController@getSingleCallByTts');//电话通知
});
#系统任务 >> 电话通知
Route::group(['prefix'=>'getCallByTtsCost'], function (){
Route::get('getCallByTtsCost', 'SysCallByTtsCostController@getCallByTtsCost');//电弧通知扣费
});
#天猫服务单
/* Route::group(['prefix'=>'tmOrder'], function (){
Route::post('addOrderByTm', 'AddTmOrderController@addOrderByTm');//添加天猫单
......@@ -1414,6 +1422,8 @@ Route::group(['prefix' => 'RequestApp', 'namespace' => 'AppApi', 'middleware' =>
});
Route::group(['prefix' => 'Dou', 'namespace' => 'Dou'], function () {
Route::any('MyTest/test', 'MyTestController@test'); //测试入口
Route::any('MyTest/dataApi', 'MyTestController@dataApi'); //测试入口
Route::any('MyTest/getJdToken', 'MyTestController@getJdToken'); //测试入口
});
// 移动端网页功能
Route::namespace('Api')->group(function () {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论