|
@@ -3,16 +3,51 @@
|
|
|
namespace App\Service;
|
|
|
|
|
|
use App\Model\SaleOrdersProduct;
|
|
|
+use Illuminate\Support\Facades\Config;
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
+use Illuminate\Support\Facades\Redis;
|
|
|
|
|
|
class FyySqlServerService extends Service
|
|
|
{
|
|
|
public $db = null;
|
|
|
+ public $error = null;
|
|
|
|
|
|
public function __construct()
|
|
|
{
|
|
|
- $domain_name = $_SERVER['HTTP_HOST'];
|
|
|
- if(! $this->db) $this->db = DB::connection('sqlsrvs');
|
|
|
+ $fyy_array = Redis::get('fyy_sql_server');
|
|
|
+ if(empty($fyy_array)) {
|
|
|
+ $this->error = 'SQLSERVER设置不存在!';
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ $fyy_array = json_decode($fyy_array,true);
|
|
|
+
|
|
|
+ if(! $this->db){
|
|
|
+ $config = [
|
|
|
+ 'driver' => 'sqlsrv',
|
|
|
+ 'host' => $fyy_array['sqlserver_host'] ?? '',
|
|
|
+ 'port' => $fyy_array['sqlserver_port'] ?? '',
|
|
|
+ 'database' => $fyy_array['sqlserver_database'] ?? '',
|
|
|
+ 'username' => env('SQLSRV_USERNAME'),
|
|
|
+ 'password' => env('SQLSRV_PASSWORD'),
|
|
|
+ ];
|
|
|
+
|
|
|
+ // 进行数据库连接
|
|
|
+ Config::set('database.connections.sqlsrvs', $config);
|
|
|
+
|
|
|
+ try {
|
|
|
+ $pdo = DB::connection('sqlsrvs')->getPdo();
|
|
|
+ if ($pdo instanceof \PDO) {
|
|
|
+ // 连接成功的逻辑代码
|
|
|
+ $this->db = DB::connection('sqlsrvs');
|
|
|
+ } else {
|
|
|
+ $this->error = '连接失败!';
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ } catch (\Throwable $e) {
|
|
|
+ $this->error = $e->getMessage();
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private function fakeData(){
|
|
@@ -103,6 +138,8 @@ class FyySqlServerService extends Service
|
|
|
|
|
|
//获取数据(点击引入)
|
|
|
public function getDataFromSqlServer($data){
|
|
|
+ if(! empty($this->error)) return [false,$this->error,''];
|
|
|
+
|
|
|
if(empty($data['out_order_no_time'][0]) || empty($data['out_order_no_time'][1])) return [false,'制单日期不能为空!',''];
|
|
|
$bool = $this->is_same_month($data['out_order_no_time'][0],$data['out_order_no_time'][1]);
|
|
|
if(! $bool) return [false,'制单日期必须同月!',''];
|
|
@@ -183,6 +220,8 @@ class FyySqlServerService extends Service
|
|
|
|
|
|
//获取数据(刷新现存量)
|
|
|
public function getDataFromSqlServerForOnHand($data){
|
|
|
+ if(! empty($this->error)) return [false,$this->error,''];
|
|
|
+
|
|
|
if(empty($data['id'])) return [false,'数据不能为空!',''];
|
|
|
|
|
|
$product = SaleOrdersProduct::whereIn('id',$data['id'])
|