提交 87a80e07 authored 作者: wangkr's avatar wangkr

init

上级
/ThinkPHP
/Application/Runtime
<?php
//登录日志记录
function k3cloudlog($text,$status,$type=null) {
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'gonn',
'db_pwd' => 'gonn.123',
'db_host' => '192.168.1.214',
'db_name' => 'gonn',
'db_port' => '10036',
);
$hlog['content'] = $text;
$hlog['create_time'] = time();
$hlog['update_time'] = time();
$hlog['status'] =$status;
$hlog['type'] =$type;
M('cloudlog','',$DB_CONFIG1)->add($hlog);
}
?>
<?php
return array(
//'配置项'=>'配置值'
'DB_TYPE' => 'sqlsrv', // 数据库类型
// 'DB_TYPE' => 'mssql',
'DB_HOST' => '192.168.1.213', // 数据库连接地址
'DB_NAME' => 'AIS20161230122631', // 数据库名
'DB_USER' => 'sa', // 数据库用户名
'DB_PWD' => 'kd.123', // 数据库密码
'DB_PORT' => 1433, // 数据库端口
'DB_CHARSET'=> 'utf8', // 数据库编码
);
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<package packagerversion="1.9.0" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
<name>pdo_sqlsrv</name>
<channel>pecl.php.net</channel>
<summary>Microsoft Drivers for PHP for SQL Server (PDO_SQLSRV)</summary>
<description>The Microsoft Drivers for PHP for SQL Server are PHP extensions that allow for the reading and writing of SQL Server data from within PHP scripts. The SQLSRV extension provides a procedural interface while the PDO_SQLSRV extension implements PDO for accessing data in all editions of SQL Server 2008 R2 and later (including Azure SQL DB). These drivers rely on the Microsoft ODBC Driver for SQL Server to handle the low-level communication with SQL Server.
*This package contains only the PDO_SQLSRV driver.*
</description>
<lead>
<name>Meet Bhagdev</name>
<user>meetbhagdev</user>
<email>meetb@microsoft.com</email>
<active>no</active>
</lead>
<lead>
<name>Jay Kint</name>
<user>jkint</user>
<email>jaykint@microsoft.com</email>
<active>no</active>
</lead>
<lead>
<name>Marie Barwin</name>
<user>mbar</user>
<email>v-mabarw@microsoft.com</email>
<active>yes</active>
</lead>
<lead>
<name>Jenny Tam</name>
<user>yitam</user>
<email>v-yitam@microsoft.com</email>
<active>yes</active>
</lead>
<date>2018-07-20</date>
<time>01:00:49</time>
<version>
<release>5.3.0</release>
<api>5.3.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="https://opensource.org/licenses/mit">The MIT License (MIT)</license>
<notes>
[Added]
- Added support for Azure Key Vault for Always Encrypted functionality. Always Encrypted functionality is supported on Linux and macOS through Azure Key Vault
- Added support for connection resiliency on Linux and macOS (requires version 17.2 or higher of the [ODBC driver](https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017))
- Added support for macOS High Sierra (requires version 17 or higher of the [ODBC driver](https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017))
- Added support for Ubuntu 18.04 (requires version 17.2 or higher of the [ODBC driver](https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017))
[Fixed]
- Issue [#577](https://github.com/Microsoft/msphpsql/issues/577) - Idle Connection Resiliency doesn't work with Column Encryption enabled connections (fixed in MS ODBC Driver 17.1)
- Issue [#678](https://github.com/Microsoft/msphpsql/issues/678) - Idle Connection Resiliency doesn't work with Connection Pooling (fixed in MS ODBC Driver 17.1)
- Issue [#705](https://github.com/Microsoft/msphpsql/issues/705) - Always Encrypted - Retrieving a negative decimal value (edge case) as output parameter causes truncation
- Issue [#706](https://github.com/Microsoft/msphpsql/issues/706) - Always Encrypted - Cannot insert double with precision and scale (38, 38)
- Issue [#707](https://github.com/Microsoft/msphpsql/issues/707) - Always Encrypted - Fetching decimals / numerics as output parameters bound to PDO::PARAM_BOOL or PDO::PARAM_INT returns floats, not integers
- Issue [#735](https://github.com/Microsoft/msphpsql/issues/735) - Extended the buffer size for PDO::lastInsertId so that data types other than integers can be supported
- Pull Request [#759](https://github.com/Microsoft/msphpsql/pull/759) - Removed the limitation of binding a binary as inout param as PDO::PARAM_STR with SQLSRV_ENCODING_BINARY
[Limitations]
- No support for inout / output params when using sql_variant type
- In Linux and macOS, setlocale() only takes effect if it is invoked before the first connection. Attempting to set the locale after connecting will not work
- Always Encrypted requires [MS ODBC Driver 17+](https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017)
- Only Windows Certificate Store and Azure Key Vault are supported. Custom Keystores are not yet supported
- Issue [#716](https://github.com/Microsoft/msphpsql/issues/716) - With Always Encrypted enabled, named parameters in subqueries are not supported
- [Always Encrypted limitations](https://docs.microsoft.com/en-us/sql/connect/php/using-always-encrypted-php-drivers?view=sql-server-2017#limitations-of-the-php-drivers-when-using-always-encrypted)
[Known Issues]
- Connection pooling on Linux or macOS is not recommended with [unixODBC](http://www.unixodbc.org/) &lt; 2.3.6
- When pooling is enabled in Linux or macOS
- unixODBC &lt;= 2.3.4 (Linux and macOS) might not return proper diagnostic information, such as error messages, warnings and informative messages
- due to this unixODBC bug, fetch large data (such as xml, binary) as streams as a workaround. See the examples [here](https://github.com/Microsoft/msphpsql/wiki/Features#pooling)
- With ColumnEncryption enabled, calling stored procedure with XML parameter does not work (Issue [#674](https://github.com/Microsoft/msphpsql/issues/674))
</notes>
<contents>
<dir name="/">
<file md5sum="6a181700bca88ba92e39638b30dea959" name="config.m4" role="src" />
<file md5sum="f42e9c6a91a0742e1c29b38f8e3775dc" name="config.w32" role="src" />
<file md5sum="12c51672bd54784a06c52f3efc7cf85f" name="CREDITS" role="doc" />
<file md5sum="97bf8b6dabceced396d344ec167dd0f3" name="LICENSE" role="doc" />
<file md5sum="fd39542b60aaf11b0ebb087894747e15" name="pdo_dbh.cpp" role="src" />
<file md5sum="8c95bc0f9ed373a93d803a56d6d9d95a" name="pdo_init.cpp" role="src" />
<file md5sum="755a12b10eb8acc28cb21b3ba680785f" name="pdo_parser.cpp" role="src" />
<file md5sum="1eb2c087c7d30f8f6348a75dd265f99f" name="pdo_stmt.cpp" role="src" />
<file md5sum="00f5c1cad492250fc0896dadfb7a9e44" name="pdo_util.cpp" role="src" />
<file md5sum="6019a6bd8f2563afa8def3944caae037" name="php_pdo_sqlsrv.h" role="src" />
<file md5sum="cd263e1a9e3f57578a0b8aeaa3569382" name="shared/core_conn.cpp" role="src" />
<file md5sum="e235a0819e0de587dd401d6196c4ea3b" name="shared/core_init.cpp" role="src" />
<file md5sum="ff1c2a9193dd1ee8fd16c8522f10fdf9" name="shared/core_results.cpp" role="src" />
<file md5sum="01cbd420bdac3a6af88764f634da38d7" name="shared/core_sqlsrv.h" role="src" />
<file md5sum="bc54b7348fe4b98fced18bf7279b96fe" name="shared/core_stmt.cpp" role="src" />
<file md5sum="f6a965dd2cef3d41a9bb76c0bf93d13d" name="shared/core_stream.cpp" role="src" />
<file md5sum="581467f773842c9ababfccf54793fffd" name="shared/core_util.cpp" role="src" />
<file md5sum="df426ae40bf1e744a316b36b3a1fbd69" name="shared/FormattedPrint.cpp" role="src" />
<file md5sum="e430d0d5d9ca130e1fd348ddb9364d96" name="shared/FormattedPrint.h" role="src" />
<file md5sum="67a2d58462e09e2361ee833fb0a83982" name="shared/globalization.h" role="src" />
<file md5sum="da7540a7770d17ea439f4641c7471007" name="shared/interlockedatomic_gcc.h" role="src" />
<file md5sum="b7e511b38cc5495aa97f8fd080af9324" name="shared/interlockedatomic.h" role="src" />
<file md5sum="546f83bb06f0609dedc81d0b937d835d" name="shared/interlockedslist.h" role="src" />
<file md5sum="de44f228a50d3ae5f6d47aa86ac5194c" name="shared/localization.hpp" role="src" />
<file md5sum="01f6a2f7a8f63f1b487718fc001c97c3" name="shared/localizationimpl.cpp" role="src" />
<file md5sum="a2eb913dc535133e0553cdbc3903d39a" name="shared/msodbcsql.h" role="src" />
<file md5sum="e44577a3daeacb2bb8b0fecebca15c84" name="shared/sal_def.h" role="src" />
<file md5sum="ba14916fbce8a4850dfca4262b4c562a" name="shared/StringFunctions.cpp" role="src" />
<file md5sum="63eae96fb2e5ff4f3ed678a67d9e7abd" name="shared/StringFunctions.h" role="src" />
<file md5sum="9d8e743317a4292ecc2405a2d279eca4" name="shared/typedefs_for_linux.h" role="src" />
<file md5sum="a421efacbefc7fdf73b4c2b966404e32" name="shared/version.h" role="src" />
<file md5sum="c003f8024ac5f44f05d6e6d4e279474a" name="shared/xplat.h" role="src" />
<file md5sum="dd746da3952402b5a06934016842b06e" name="shared/xplat_intsafe.h" role="src" />
<file md5sum="f1e978983ea1250bffe85b2a0366a93a" name="shared/xplat_winerror.h" role="src" />
<file md5sum="f66d6df6c4395d5aba85ea52967c9d2a" name="shared/xplat_winnls.h" role="src" />
<file md5sum="16f2bbf7d1f7dd1292ac71e84a1e08c7" name="template.rc" role="src" />
</dir>
</contents>
<dependencies>
<required>
<php>
<min>7.0.0</min>
</php>
<pearinstaller>
<min>1.4.0b1</min>
</pearinstaller>
<arch>
<pattern>linux-*-i?86-*</pattern>
<conflicts/>
</arch>
</required>
</dependencies>
<providesextension>pdo_sqlsrv</providesextension>
<extsrcrelease />
</package>
\ No newline at end of file
\ No newline at end of file
<?php
return array(
//'配置项'=>'配置值'
);
\ No newline at end of file
\ No newline at end of file
<?php
namespace Home\Controller;
use Think\Controller;
class DataController extends Controller {
public function synchronizationAdd(){
header("Content-Type: text/html;charset=utf-8");
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => 'p0sDkL91YCTUP@ly',
'db_host' => '114.113.126.5',
'db_name' => 'base',
);
$Model = M();
$date=date("Y-m-d",strtotime("-1 day"));
$sql="SELECT a.FID,a.FBILLNO,a.F_UPDATETIME,a.FCREATEDATE,b.FID,
b.FMasterId,b.FNUMBER,b.FSTONAME,b.FID as bfid FROM BasicEntry a, PAEZ_t_Cust_Entry100005 b WHERE a.F_PROJECTID = b.FID AND a.FCREATEDATE >='{$date}'
AND a.FCREATEDATE > a.F_UPDATETIME";
$voList = $Model->query($sql);
if(empty($voList)){
$k3['info']='暂无数据同步';
$k3log=json_encode($k3);
$status=5;
k3cloudlog($k3log,$status,$type=0);die;
}
$cloudUrl = "http://36.110.39.211/k3cloud/";
//登陆参数
$data = array(
'5865e29cb51ecf',//帐套Id
'administrator',//用户名
'kJyGjIQ5DW0tpd@B',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('./tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
foreach($voList as $key =>$v){
$mm=$v['fbillno'];
$data_model = "{'CreateOrgId':'','Number':$mm,'Id':''}";
$data = array(
'PAEZ_001',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
header("Content-type: text/html; charset=utf8");
$results =self::invoke_save($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($results,true);
if($array['Result']["ResponseStatus"]["ErrorCode"]==500){
$k3['info']='请求超时,请检查网络后重试';
$k3log=json_encode($k3);
$status=6;
k3cloudlog($k3log,$status,$type=0);die;
}
if($array['Result']["Result"]){
$map['proj_number']=$v['fnumber'];
$pronum=M('station_info','gs_',$DB_CONFIG1)->where($map)->select();
if(!$pronum){
$dataarradd=array();
$detairadd=array();
$vendoradd=array();
foreach($array as $key=>$val){
$dataarradd['sp_req_code']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OperatorNeedId']);//需求号
$original_name=self::isoriginal(trim($val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']));
$dataarradd['original_sp_id']=self::original($original_name);//运营商
$dataarradd['business_line_id']=self::businessimpUser(trim($val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']));//业务线
$dataarradd['area_id']=self::regionimpUser(trim($val['Result']['F_Area']['MultiLanguageText'][0]['Name']));//区域
$dataarradd['station_name']=trim($val['Result']['F_ProjectID']['FStoName']);//站名
$dataarradd['station_sp_code']=trim($val['Result']['F_ProjectID']['FStoNumber']);//站号
$detairadd['longitude']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OriLongitude']);//经度
$detairadd['latitude']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OriLatitude']);//纬度
$dataarradd['proj_number']=trim($val['Result']['F_ProjectID']['Number']);//项目编号
$dataarradd['location']=trim($val['Result']['F_ProjectID']['FStoAddress']);//项目地址
$dataarradd['base_station_state']=self::stateimpUser(trim($val['Result']['F_bfSiteState']['MultiLanguageText'][0]['Name']));//基站状态
$detairadd['antenna_number']=trim($val['Result']['F_PAEZ_Integer']);//天线书
$detairadd['rod_number']=trim($val['Result']['F_PAEZ_Integer1']);//杆数
$detairadd['box_number']=trim($val['Result']['FSubBulidInforEntity'][0]['F_BoxNum']);//箱体数(飞箱)
$detairadd['optical_cable']=trim($val['Result']['FSubBulidInforEntity'][0]['F_CableKilomete']);//公里数
$vendoradd['construction_number']=trim($val['Result']['FSubBulidInforEntity'][0]['F_ConstructionTeam1']['FPhoneNum']);//联系方式
$dataarradd['department_id']=self::departmentimpUser(trim($val['Result']['F_Department']['MultiLanguageText'][0]['Name']));//三级部门
$vendoradd['three_level_manager']=trim($val['Result']['F_ThreeManager']['MultiLanguageText'][0]['Name']);//三级经理
$vendoradd['salesman']=trim($val['Result']['F_BusinessMan']['MultiLanguageText'][0]['Name']);// 业务员
$dataarradd['create_date']=strtotime(trim($val['Result']['FCreateDate']));//创建时间
$dataarradd['update_date']=strtotime(trim($val['Result']['F_UpdateTime']));//更新时间
}
$data2 = M('station_info','gs_',$DB_CONFIG1)->add($dataarradd);
$vendoradd['vendor_id']=$data2;
$detairadd['stationid']=$data2;
$data3 = M('station_info_detai','gs_',$DB_CONFIG1)->add($detairadd);
$data4 = M('vendor_info','gs_',$DB_CONFIG1)->add($vendoradd);
$k3['info']='数据同步成功'." 项目编号:".$val['Result']['F_ProjectID']['Number']." 站号:".$val['Result']['F_ProjectID']['FStoNumber']." 站名:".$val['Result']['F_ProjectID']['FStoName']." 需求号:".$val['Result']['FSubDemandInforEntity'][0]['F_OperatorNeedId']." 运营商:".$original_name." 业务线:".$val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']." 区域:".$val['Result']['F_Area']['MultiLanguageText'][0]['Name']." 经度:".$val['Result']['FSubDemandInforEntity'][0]['F_OriLongitude']." 纬度:".$val['Result']['FSubDemandInforEntity'][0]['F_OriLatitude']." 项目地址:".$val['Result']['F_ProjectID']['FStoAddress']." 基站状态:".$val['Result']['F_bfSiteState']['MultiLanguageText'][0]['Name']." 天线数:".$val['Result']['F_PAEZ_Integer']." 杆数:".$val['Result']['F_PAEZ_Integer1']." 箱体数:".$val['Result']['FSubBulidInforEntity'][0]['F_BoxNum']." 公里数:".$val['Result']['FSubBulidInforEntity'][0]['F_CableKilomete']." 联系方式:".$val['Result']['FSubBulidInforEntity'][0]['F_ConstructionTeam1']['FPhoneNum']." 部门:".$val['Result']['F_Department']['MultiLanguageText'][0]['Name']." 经理:".$val['Result']['F_ThreeManager']['MultiLanguageText'][0]['Name']." 业务员:".$val['Result']['F_BusinessMan']['MultiLanguageText'][0]['Name'];
$k3log=json_encode($k3);
$status=1;
k3cloudlog($k3log,$status,$type=0);
}else{
$k3['info']='项目编号:'.$map['proj_number'].'已存在,'.'不能重复添加';
$k3log=json_encode($k3);
$status=4;
k3cloudlog($k3log,$status,$type=0);
}
}else{
$k3['info']='暂无数据同步';
$k3log=json_encode($k3);
$status=5;
k3cloudlog($k3log,$status,$type=0);
}
}
}
public function synchronizationedit(){
header("Content-Type: text/html;charset=utf-8");
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => 'p0sDkL91YCTUP@ly',
'db_host' => '114.113.126.5',
'db_name' => 'base',
);
$Model = M();
$date=date("Y-m-d",strtotime("-1 day"));
$sql="SELECT a.FID,a.FBILLNO,a.F_UPDATETIME,a.FCREATEDATE,b.FID,
b.FMasterId,b.FNUMBER,b.FSTONAME,b.FID as bfid FROM BasicEntry a, PAEZ_t_Cust_Entry100005 b WHERE a.F_PROJECTID = b.FID AND F_UPDATETIME >='{$date}'
AND a.F_UPDATETIME > a.FCREATEDATE";
$voList = $Model->query($sql);
if(empty($voList)){
$k3['info']='暂无数据同步';
$k3log=json_encode($k3);
$status=4;
k3cloudlog($k3log,$status,$type=1);die;
}
$cloudUrl = "http://36.110.39.211/k3cloud/";
//登陆参数
$datapwd = array(
'5865e29cb51ecf',//帐套Id
'administrator',//用户名
'Admin!@#456',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('./tmp','CloudSession');
$post_content = self::create_postdata($datapwd);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
foreach($voList as $key =>$v){
$mm=$v['fbillno'];//单据编号
$data_model = "{'CreateOrgId':'','Number':$mm,'Id':''}";// 通过单据编号获取信息
$data = array(
'PAEZ_001',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
header("Content-type: text/html; charset=utf8");
$results =self::invoke_save($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($results,true);
if($array['Result']["ResponseStatus"]["ErrorCode"]==500){
$k3['info']='请求超时,请检查网络后重试';
$k3log=json_encode($k3);
$status=6;
k3cloudlog($k3log,$status,$type=0);die;
}
if(empty($array['Result']["Result"])){
$k3['info']='接口请求异常,无数据信息返回';
$k3log=json_encode($k3);
$status=6;
k3cloudlog($k3log,$status,$type=1);die;
}
$dataarr=array();
foreach($array as $key=>$val){
$dataarr['sp_req_code']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OperatorNeedId']);//需求号
$original_name=self::isoriginal(trim($val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']));
$dataarr['original_sp_id']=self::original($original_name);//运营商
$dataarr['business_line_id']=self::businessimpUser(trim($val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']));//业务线
$dataarr['area_id']=self::regionimpUser(trim($val['Result']['F_Area']['MultiLanguageText'][0]['Name']));//区域
$dataarr['station_name']=trim($val['Result']['F_ProjectID']['FStoName']);//站名
$dataarr['station_sp_code']=trim($val['Result']['F_ProjectID']['FStoNumber']);//站号
$dataarr['longitude']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OriLongitude']);//经度
$dataarr['latitude']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OriLatitude']);//纬度
$dataarr['proj_number']=trim($val['Result']['F_ProjectID']['Number']);//项目编号
$dataarr['location']=trim($val['Result']['F_ProjectID']['FStoAddress']);//项目地址
$dataarr['base_station_state']=self::stateimpUser(trim($val['Result']['F_bfSiteState']['MultiLanguageText'][0]['Name']));//基站状态
$dataarr['antenna_number']=trim($val['Result']['F_PAEZ_Integer']);//天线书
$dataarr['rod_number']=trim($val['Result']['F_PAEZ_Integer1']);//杆数
$dataarr['box_number']=trim($val['Result']['FSubBulidInforEntity'][0]['F_BoxNum']);//箱体数(飞箱)
$dataarr['optical_cable']=trim($val['Result']['FSubBulidInforEntity'][0]['F_CableKilomete']);//公里数
$dataarr['construction_number']=trim($val['Result']['FSubBulidInforEntity'][0]['F_ConstructionTeam1']['FPhoneNum']);//联系方式
$dataarr['department_id']=self::departmentimpUser(trim($val['Result']['F_Department']['MultiLanguageText'][0]['Name']));//三级部门
$dataarr['three_level_manager']=trim($val['Result']['F_ThreeManager']['MultiLanguageText'][0]['Name']);//三级经理
$dataarr['salesman']=trim($val['Result']['F_BusinessMan']['MultiLanguageText'][0]['Name']);// 业务员
}
$map['proj_number']=$v['fnumber'];
$stationList = M('station_info','gs_',$DB_CONFIG1)->alias('s')
->field('sp_req_code,original_sp_id,business_line_id,area_id,station_name,
station_sp_code,longitude,latitude,proj_number,location,
base_station_state,antenna_number,rod_number,box_number,optical_cable,department_id,three_level_manager,salesman')
->join('gs_station_info_detai i on s.station_id=i.stationid','left')
->join('gs_vendor_info v on s.station_id=v.vendor_id','left')
->where($map)->select();
$stationDataList=array();
foreach($stationList as $key=>$vo){
$stationDataList['sp_req_code'] =trim($vo['sp_req_code']);//需求号
$stationDataList['original_sp_id'] =trim($vo['original_sp_id']);//运营商
$stationDataList['business_line_id'] =intval($vo['business_line_id']);//业务线
$stationDataList['area_id'] =intval($vo['area_id']);//地区
$stationDataList['station_name'] =trim($vo['station_name']);//站名
$stationDataList['station_sp_code'] =trim($vo['station_sp_code']);//站号
$stationDataList['longitude'] =trim($vo['longitude']);//精度
$stationDataList['latitude'] =trim($vo['latitude']);//纬度
$stationDataList['proj_number'] =trim($vo['proj_number']);//项目编号
$stationDataList['location'] =trim($vo['location']);//地址
$stationDataList['base_station_state'] =trim($vo['base_station_state']);//状态
$stationDataList['antenna_number'] =trim($vo['antenna_number']);//天线数
$stationDataList['rod_number'] =trim($vo['rod_number']);//杆数
$stationDataList['box_number'] =trim($vo['box_number']);//箱体书
$stationDataList['optical_cable'] =trim($vo['optical_cable']);//公里数
$stationDataList['construction_number'] =trim($vo['construction_number']);//联系方式
$stationDataList['department_id'] =trim($vo['department_id']);//三级部门
$stationDataList['three_level_manager'] =trim($vo['three_level_manager']);//经理
$stationDataList['salesman'] =trim($vo['salesman']);//业务员
}
$result=array_diff_assoc($dataarr,$stationDataList);
//需求号
if(!is_null($result['sp_req_code'])){
$savedata['sp_req_code']=$result['sp_req_code'];
}else{
unset($savedata['sp_req_code']);
}
//运营商
if(!is_null($result['original_sp_id'])){
$savedata['original_sp_id']=$result['original_sp_id'];
}else{
unset($savedata['original_sp_id']);
}
//业务线
if(!is_null($result['business_line_id'])){
$savedata['business_line_id']=$result['business_line_id'];
}else{
unset($savedata['business_line_id']);
}
//区域
if(!is_null($result['area_id'])){
$savedata['area_id']=$result['area_id'];
}else{
unset($savedata['area_id']);
}
//站名
if(!is_null($result['station_name'])){
$savedata['station_name']=$result['station_name'];
}else{
unset($savedata['station_name']);
}
//站号
if(!is_null($result['station_sp_code'])){
$savedata['station_sp_code']=$result['station_sp_code'];
}else{
unset( $savedata['station_sp_code']);
}
//项目编号
if(!is_null($result['proj_number'])){
$savedata['proj_number']=$result['proj_number'];
}else{
unset($savedata['proj_number']);
}
//项目地址
if(!is_null($result['location'])){
$savedata['location']=$result['location'];
}else{
unset( $savedata['location']);
}
//基站状态
if(!is_null($result['base_station_state'])){
$savedata['base_station_state']=$result['base_station_state'];
}else{
unset( $savedata['base_station_state']);
}
//部门
if(!is_null($result['department_id'])){
$savedata['department_id']=$result['department_id'];
}else{
unset($savedata['department_id']);
}
//经度
if(!is_null($result['longitude'])){
$savedetai['longitude']=$result['longitude'];
}else{
unset($savedetai['longitude']);
}
//纬度
if(!is_null($result['latitude'])){
$savedetai['latitude']=$result['latitude'];
}else{
unset($savedetai['latitude']);
}
//天线书
if(!is_null($result['antenna_number'])){
$savedetai['antenna_number']=$result['antenna_number'];
}else{
unset($savedetai['antenna_number']);
}
//杆数
if(!is_null($result['rod_number'])){
$savedetai['rod_number']=$result['rod_number'];
}else{
unset( $savedetai['rod_number']);
}
//箱体数(飞箱)
if(!is_null($result['box_number'])){
$savedetai['box_number']=$result['box_number'];
}else{
unset( $savedetai['box_number']);
}
//公里数
if(!is_null($result['optical_cable'])){
$savedetai['optical_cable']=$result['optical_cable'];
}else{
unset($savedetai['optical_cable']);
}
//联系方式
if(!is_null($result['construction_number'])){
$savevender['construction_number']=$result['construction_number'];
}else{
unset($savevender['construction_number']);
}
//三级经理
if(!is_null($result['three_level_manager'])){
$savevender['three_level_manager']=$result['three_level_manager'];
}else{
unset($savevender['three_level_manager']);
}
//业务员
if(!is_null($result['salesman'])){
$savevender['salesman']=$result['salesman'];
}else{
unset($savevender['salesman']);
}
if($savedata || $savedetai || $savevender){
$info=M('station_info','gs_',$DB_CONFIG1)->field('station_id')->where($map)->find();
$data2 = M('station_info','gs_',$DB_CONFIG1)->where($map)->save($savedata);
$data3 = M('station_info_detai','gs_',$DB_CONFIG1)->where("stationid={$info['station_id']}")->save($savedetai);
$data4 = M('vendor_info','gs_',$DB_CONFIG1)->where("vendor_id={$info['station_id']}")->save($savevender);
if($data2 || $data4 || $data3){
$k3['info']='数据同步成功:'.' 项目编号:'.$map['proj_number'].json_encode($result);
$k3log=json_encode($k3);
$status=1;
k3cloudlog($k3log,$status,$type=1);
}else{
// $k3['info']='修改失败, 项目编号:'.$map['proj_number'];
// $k3log=json_encode($k3);
// $status=3;
// k3cloudlog($k3log,$status,$type=1);
}
}else{
$k3['info']='未发现要修改的数据';
$k3log=json_encode($k3);
$status=4;
k3cloudlog($k3log,$status,$type=1);
}
}
}
static function businessimpUser($title){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => 'p0sDkL91YCTUP@ly',
'db_host' => '114.113.126.5',
'db_name' => 'base',
);
if(empty($title)){
return 0;
}
$business['business_name']=array('like',"%".$title."%");
$business= M('business_line','gs_',$DB_CONFIG1)->field("business_id")->where($business)->find();
return $business['business_id']?$business['business_id']:0;
}
static function departmentimpUser($title){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => 'p0sDkL91YCTUP@ly',
'db_host' => '114.113.126.5',
'db_name' => 'base',
);
if(empty($title)){
return 0;
}
$department['title']=array('like','%'.$title.'%');
$department= M('department','gs_',$DB_CONFIG1)->field("id")->where($department)->find();
return $department['id']?$department['id']:0;
}
static function regionimpUser($name){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => 'p0sDkL91YCTUP@ly',
'db_host' => '114.113.126.5',
'db_name' => 'base',
);
if(empty($name)){
return 0;
}
$region['region_name']=array('like',"%".$name."%");
$region= M('region','gs_',$DB_CONFIG1)->field("id")->where($region)->find();
return $region['id']? $region['id'] :0;
}
static function original($name){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => 'p0sDkL91YCTUP@ly',
'db_host' => '114.113.126.5',
'db_name' => 'base',
);
if(empty($name)){
return 0;
}
$original['operator_name']=array('like',"%".$name."%");
$original= M('operator','gs_',$DB_CONFIG1)->field("operator_id")->where($original)->find();
return $original['operator_id'] ?$original['operator_id']:0;
}
static function isoriginal($name){
if($name=='飞箱移动' || $name=='飞箱歌华' || $name=='一体化微站' || $name=='郊区宏站' || $name=='驻地网' ){
return '中国移动';
}elseif($name='歌华飞视' || $name='共站' || $name='航天盒子-联通、电信' || $name=='飞箱铁塔' || $name=='铁塔宏站'){
return '中国铁塔';
}elseif($name=='佛山小微站' || $name=='佛山宏站'){
return '佛山移动';
}elseif($name=='天津宏站'){
return '天津移动';
}elseif($name=='广州铁塔转签'){
return '广州铁塔';
}elseif($name=='广州宏站'){
return '广州移动';
}else{
return 0;
}
}
static function stateimpUser($name){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => 'p0sDkL91YCTUP@ly',
'db_host' => '114.113.126.5',
'db_name' => 'base',
);
if(empty($name)){
return 0;
}
$cate['cate_name']=array('like',"%".$name."%");
$cate= M('station_statuscate','gs_',$DB_CONFIG1)->field("cate_id")->where($cate)->find();
return $cate['cate_id']?$cate['cate_id']:0;
}
//登陆
static function invoke_login($cloudUrl,$post_content,$cookie_jar)
{
$loginurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc';
return self::invoke_post($loginurl,$post_content,$cookie_jar,TRUE);
}
//查询
static function invoke_save($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//审核
static function invoke_audit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
static function invoke_post($url,$post_content,$cookie_jar,$isLogin)
{
$ch = curl_init($url);
$this_header = array(
'Content-Type: application/json',
'Content-Length: '.strlen($post_content));
curl_setopt($ch, CURLOPT_TIMEOUT,10);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_HTTPHEADER, $this_header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_content);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
if($isLogin){
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
}
else{
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);
}
$result = curl_exec($ch);
// $http_status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
// if ($http_status != '200') {
// $html_data['result_code']=$http_status;
// return json_encode($html_data);
// }
curl_close($ch);
return $result;
}
//构造Web API请求格式
static function create_postdata($args) {
$postdata = array(
'format'=>1,
'useragent'=>'ApiClient',
'rid'=>self::create_guid(),
'parameters'=>$args,
'timestamp'=>date('Y-m-d'),
'v'=>'1.0'
);
return json_encode($postdata);
}
//生成guid
static function create_guid() {
$charid = strtoupper(md5(uniqid(mt_rand(), true)));
$hyphen = chr(45);// "-"
$uuid = chr(123)// "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
.substr($charid,20,12)
.chr(125);// "}"
return $uuid;
}
static function json($code,$result){
header('Content-Type:application/json;charset=utf-8');
$data=[
'code'=>$code,
'message'=>$result,
];
echo json_encode($data);
exit;
}
}
\ No newline at end of file
<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
public function index(){
$Number=I("get.number");
if(empty($Number)){
$this->json(404, 'NO_DATA');
}
$Model = M();
$sql = " SELECT a.FBILLNO FROM BasicEntry a, PAEZ_t_Cust_Entry100005 b WHERE
a.F_PROJECTID = b.FID AND b.FNUMBER ='$Number'";
$voList = $Model->query($sql);
if( $voList ){
$this->json("200",$voList);
}else{
$this->json("500",'error');
}
}
//通过项目编号获取项目编号列表编码,ID
public function getProNumber(){
$Number=I("get.number");
if(empty($Number)){
$this->json(20001, 'params invalid');
}
$Model = M();
$sql = " SELECT fid,fnumber FROM PAEZ_t_Cust_Entry100005 WHERE fnumber="."'$Number'";
$voList = $Model->query($sql);
if( $voList ){
$this->jsonreturn("200",'success',$voList);
}else{
$this->jsonreturn("200012",'No data','');
}
}
public function getContractNumber(){
$Number=I("get.number");
if(empty($Number)){
$this->json(20001, 'params invalid');
}
$Model = M();
$sql = " SELECT a.FBILLNO,a.fid FROM BasicEntry a, PAEZ_t_Cust_Entry100005 b WHERE
a.F_PROJECTID = b.FID AND b.FNUMBER ="."'$Number'";
$voList = $Model->query($sql);
if( $voList ){
$this->jsonreturn("200",'success',$voList);
}else{
$this->jsonreturn("200011",'No data','');
}
}
public function getDocumentNumber(){
$Number=I("get.number");
if(empty($Number)){
$this->json(20001, 'params invalid');
}
$Model = M();
$sql = "SELECT FBILLNO FROM T_SAL_OUTSTOCK a,PAEZ_t_Cust_Entry100005 b where a.F_PAEZ_PROJECTNO=b.FID and FNUMBER ="."'$Number'";
$voList = $Model->query($sql);
if( $voList ){
$this->jsonreturn("200",'success',$voList);
}else{
$this->jsonreturn("20002",'No data','');
}
}
static function jsonreturn($code,$mes,$result){
header('Content-Type:application/json;charset=utf-8');
if($result){
$data=[
'code'=>$code,
'message'=>'SUCCESS',
'data'=>$result,
];
echo json_encode($data);
exit;
}else{
$data=[
'code'=>$code,
'message'=>$mes,
];
echo json_encode($data);
exit;
}
}
static function json($code,$result){
header('Content-Type:application/json;charset=utf-8');
$data=[
'code'=>$code,
'message'=>$result,
];
echo json_encode($data);
exit;
}
}
<?php
namespace Home\Controller;
use Think\Controller;
class K3Controller extends Controller {
public function index(){
$cloudUrl = "http://192.168.1.211/k3cloud/";
//登陆参数
$data = array(
'5d64e2f4ecb139',//帐套Id
'Administrator',//用户名
'666666',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('/tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
var_dump($cookie_jar);die;
header("Content-type: text/html; charset=utf8");
for ($i=1; $i <=3000 ; $i++) {
$starttime = microtime(true);
$data_model ="{
'Creator': '',
'NeedUpDateFields': [],
'NeedReturnFields': [],
'IsDeleteEntry': 'true',
'SubSystemId': '',
'IsVerifyBaseDataField': 'false',
'IsEntryBatchFill': 'true',
'ValidateFlag': 'true',
'NumberSearch': 'true',
'InterationFlags': '',
'IsAutoSubmitAndAudit': 'false',
'Model': {
'FCUSTID': 0,
'FCreateOrgId': {
'FNumber': '0000'
},
'FUseOrgId': {
'FNumber': '0000'
},
'FName': '测试$i',
'FCOUNTRY': {
'FNumber': 'China'
},
'FINVOICETITLE': 'nnn',
'FIsDefPayer': false,
'FIsGroup': false,
'FCustTypeId': {
'FNumber': 'KHLB001_SYS'
},
'FTRADINGCURRID': {
'FNumber': 'PRE001'
},
'FInvoiceType': '1',
'FTaxType': {
'FNumber': 'SFL02_SYS'
},
'FPriority': 1,
'FTaxRate': {
'FNumber': 'SL02_SYS'
},
'FISCREDITCHECK': true,
'FIsTrade': true,
'FT_BD_CUSTOMEREXT': {
'FEnableSL': false
}
}
}";
$data = array(
'BD_Customer',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_add($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($result,true);
if($array['Result']['ResponseStatus']['IsSuccess']){
$endtime = microtime(true);
$log='客户编号:'.$array['Result']['Number'].'保存接口成功 '.'执行时间:'.($endtime-$starttime).' s'."\r\n";
$file_write = file_put_contents('test.txt',$log,FILE_APPEND);
$this->custmoer_submit($cloudUrl,$cookie_jar,$array['Result']['Id'],$array['Result']['Number']);
$this->custmoer_audit($cloudUrl,$cookie_jar,$array['Result']['Id'],$array['Result']['Number']);
}else{
$log='客户名称:'."测试$i".'保存接口失败 '.$array['Result']['ResponseStatus']['Errors'][0]['Message'];
$file_write = file_put_contents('test.txt',$log,FILE_APPEND);
}
}
}
public function custmoer_submit($cloudUrl,$cookie_jar,$id,$number){
$start_time = microtime(true);
$data_model ="{
'CreateOrgId': 0,
'Numbers': [],
'Ids': $id,
'SelectedPostId': 0
}";
$data = array(
'BD_Customer',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_submit($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($result,true);
$end_time = microtime(true);
if($array['Result']['ResponseStatus']['IsSuccess']){
$log='客户编号:'.$number.'提交接口成功 '.' 执行时间:'.($end_time-$start_time).' s'."\r\n";
}else{
$log='客户编号:'.$number.'提交接口失败 '.$array['Result']['ResponseStatus']['Errors'][0]['Message'];
// $log='客户编号:'.$number.'提交接口失败 '.' 执行时间:'.($end_time-$start_time).' s'."\r\n";
}
$file_write = file_put_contents('test.txt',$log,FILE_APPEND);
}
public function custmoer_audit($cloudUrl,$cookie_jar,$id,$number){
$start_time = microtime(true);
$data_model ="{
'CreateOrgId': 0,
'Numbers': [],
'Ids': $id,
'InterationFlags': ''
}";
$data = array(
'BD_Customer',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_audit($cloudUrl,$post_content,$cookie_jar);
$end_time = microtime(true);
$array = json_decode($result,true);
if($array['Result']['ResponseStatus']['IsSuccess']){
$log='客户编号:'.$number.'审核接口成功 '.' 执行时间:'.($end_time-$start_time).' s'."\r\n";
}else{
$log='客户编号:'.$number.'审核接口失败 '.$array['Result']['ResponseStatus']['Errors'][0]['Message'];
// $log='客户编号:'.$number.'审核接口失败 '.' 错误信息:'.($end_time-$start_time).' s'."\r\n";
}
$file_write = file_put_contents('test.txt',$log,FILE_APPEND);
}
//登陆
static function invoke_login($cloudUrl,$post_content,$cookie_jar)
{
$loginurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc';
return self::invoke_post($loginurl,$post_content,$cookie_jar,TRUE);
}
//查询
static function invoke_save($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//添加
static function invoke_add($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//提交
static function invoke_submit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//审核
static function invoke_audit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
static function invoke_post($url,$post_content,$cookie_jar,$isLogin)
{
$ch = curl_init($url);
$this_header = array(
'Content-Type: application/json',
'Content-Length: '.strlen($post_content)
);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_HTTPHEADER, $this_header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_content);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
if($isLogin){
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
}
else{
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);
}
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
//构造Web API请求格式
static function create_postdata($args) {
$postdata = array(
'format'=>1,
'useragent'=>'ApiClient',
'rid'=>self::create_guid(),
'parameters'=>$args,
'timestamp'=>date('Y-m-d'),
'v'=>'1.0'
);
return json_encode($postdata);
}
//生成guid
static function create_guid() {
$charid = strtoupper(md5(uniqid(mt_rand(), true)));
$hyphen = chr(45);// "-"
$uuid = chr(123)// "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
.substr($charid,20,12)
.chr(125);// "}"
return $uuid;
}
}
<?php
namespace Home\Controller;
use Think\Controller;
class LoginController extends Controller {
public function index(){
$cloudUrl = "http://192.168.1.211/k3cloud/";
//登陆参数
$data = array(
'5865e29cb51ecf',//帐套Id
'administrator',//用户名
'kJyGjIQ5DW0tpd@B',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('/tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
$result=json_decode($result,true);
if($result['LoginResultType']==1){
$info=array(
"code" => 200,
"message" => '登陆成功'
);
echo json_encode($info);
}else{
$info=array(
"code" => 500,
"message" => ''
);
header("HTTP/1.1 500 Internal Server Error");
}
}
//登陆
static function invoke_login($cloudUrl,$post_content,$cookie_jar)
{
$loginurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc';
return self::invoke_post($loginurl,$post_content,$cookie_jar,TRUE);
}
//查询
static function invoke_save($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//添加
static function invoke_add($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//提交
static function invoke_submit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//审核
static function invoke_audit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
static function invoke_post($url,$post_content,$cookie_jar,$isLogin)
{
$ch = curl_init($url);
$this_header = array(
'Content-Type: application/json',
'Content-Length: '.strlen($post_content)
);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_HTTPHEADER, $this_header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_content);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
if($isLogin){
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
}
else{
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);
}
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
static function getbxlx($name)
{
$data = m('c_bxlx')->getone("name='".$name."'", 'name,number');
return $data['number'];
}
//构造Web API请求格式
static function create_postdata($args) {
$postdata = array(
'format'=>1,
'useragent'=>'ApiClient',
'rid'=>self::create_guid(),
'parameters'=>$args,
'timestamp'=>date('Y-m-d'),
'v'=>'1.0'
);
return json_encode($postdata);
}
//生成guid
static function create_guid() {
$charid = strtoupper(md5(uniqid(mt_rand(), true)));
$hyphen = chr(45);// "-"
$uuid = chr(123)// "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
.substr($charid,20,12)
.chr(125);// "}"
return $uuid;
}
}
<?php
namespace Home\Controller;
use Think\Controller;
class MoController extends Controller {
public function index(){
$cloudUrl = "http://192.168.1.211/k3cloud/";
//登陆参数
$data = array(
'5d64e2f4ecb139',//帐套Id
'Administrator',//用户名
'666666',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('/tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
header("Content-type: text/html; charset=utf8");
for ($i=1; $i <=3000 ; $i++) {
$starttime = microtime(true);
$data_model ="{
'Creator': '',
'NeedUpDateFields': [],
'NeedReturnFields': [],
'IsDeleteEntry': 'true',
'SubSystemId': '',
'IsVerifyBaseDataField': 'false',
'IsEntryBatchFill': 'true',
'ValidateFlag': 'true',
'NumberSearch': 'true',
'InterationFlags': '',
'IsAutoSubmitAndAudit': 'false',
'Model': {
'FID': 0,
'FBILLTYPEID': {
'FNUMBER': 'FKSQ001_SYS'
},
'FDATE': '2019-12-22 00:00:00',
'FCONTACTUNITTYPE': 'BD_Supplier',
'FCONTACTUNIT': {
'FNumber': 'VEN00001'
},
'FRECTUNITTYPE': 'BD_Supplier',
'FRECTUNIT': {
'FNumber': 'VEN00001'
},
'FCURRENCYID': {
'FNumber': 'PRE001'
},
'FPAYORGID': {
'FNumber': '0000'
},
'FSETTLEORGID': {
'FNumber': '0000'
},
'FPURCHASEORGID': {
'FNumber': '0000'
},
'FDOCUMENTSTATUS': 'Z',
'FCANCELSTATUS': 'A',
'FIsCredit': false,
'FAPPLYORGID': {
'FNumber': '0000'
},
'FSETTLECUR': {
'FNUMBER': 'PRE001'
},
'FISCARRYRATE': false,
'FPAYAPPLYENTRY': [
{
'FCOSTID': {
'FNUMBER': 'CI008'
},
'FSETTLETYPEID': {
'FNumber': 'JSFS02_SYS'
},
'FPAYPURPOSEID': {
'FNumber': 'SFKYT08_SYS'
},
'FENDDATE': '2019-12-22 00:00:00',
'FEXPECTPAYDATE': '2019-12-22 00:00:00',
'FAPPLYAMOUNTFOR': '$i'
}
]
}
}";
$data = array(
'CN_PAYAPPLY',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_add($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($result,true);
if($array['Result']['ResponseStatus']['IsSuccess']){
$endtime = microtime(true);
$log='付款单据编号:'.$array['Result']['Number'].'保存接口成功 '.'执行时间:'.($endtime-$starttime).' s'."\r\n";
$file_write = file_put_contents('payment.txt',$log,FILE_APPEND);
$this->custmoer_submit($cloudUrl,$cookie_jar,$array['Result']['Id'],$array['Result']['Number']);
// $this->custmoer_audit($cloudUrl,$cookie_jar,$array['Result']['Id'],$array['Result']['Number']);
}else{
$log='保存接口失败 '.$array['Result']['ResponseStatus']['Errors'][0]['Message'];
$file_write = file_put_contents('payment.txt',$log,FILE_APPEND);
}
}
}
public function custmoer_submit($cloudUrl,$cookie_jar,$id,$number){
$start_time = microtime(true);
$data_model ="{
'CreateOrgId': 0,
'Numbers': [],
'Ids': $id,
'SelectedPostId': 0
}";
$data = array(
'CN_PAYAPPLY',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_submit($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($result,true);
$end_time = microtime(true);
if($array['Result']['ResponseStatus']['IsSuccess']){
$log='付款单据编号:'.$number.'提交接口成功 '.' 执行时间:'.($end_time-$start_time).' s'."\r\n";
}else{
$log='付款单据编号:'.$number.'提交接口失败 '.$array['Result']['ResponseStatus']['Errors'][0]['Message'];
}
$file_write = file_put_contents('payment.txt',$log,FILE_APPEND);
}
public function custmoer_audit($cloudUrl,$cookie_jar,$id,$number){
$start_time = microtime(true);
$data_model ="{
'CreateOrgId': 0,
'Numbers': [],
'Ids': $id,
'InterationFlags': ''
}";
$data = array(
'CN_PAYAPPLY',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_audit($cloudUrl,$post_content,$cookie_jar);
$end_time = microtime(true);
$array = json_decode($result,true);
if($array['Result']['ResponseStatus']['IsSuccess']){
$log='付款单据编号:'.$number.'审核接口成功 '.' 执行时间:'.($end_time-$start_time).' s'."\r\n";
}else{
$log='付款单据编号:'.$number.'审核接口失败 '.$array['Result']['ResponseStatus']['Errors'][0]['Message'];
}
$file_write = file_put_contents('payment.txt',$log,FILE_APPEND);
}
//登陆
static function invoke_login($cloudUrl,$post_content,$cookie_jar)
{
$loginurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc';
return self::invoke_post($loginurl,$post_content,$cookie_jar,TRUE);
}
//查询
static function invoke_save($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//添加
static function invoke_add($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//提交
static function invoke_submit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//审核
static function invoke_audit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
static function invoke_post($url,$post_content,$cookie_jar,$isLogin)
{
$ch = curl_init($url);
$this_header = array(
'Content-Type: application/json',
'Content-Length: '.strlen($post_content)
);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_HTTPHEADER, $this_header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_content);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
if($isLogin){
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
}
else{
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);
}
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
//构造Web API请求格式
static function create_postdata($args) {
$postdata = array(
'format'=>1,
'useragent'=>'ApiClient',
'rid'=>self::create_guid(),
'parameters'=>$args,
'timestamp'=>date('Y-m-d'),
'v'=>'1.0'
);
return json_encode($postdata);
}
//生成guid
static function create_guid() {
$charid = strtoupper(md5(uniqid(mt_rand(), true)));
$hyphen = chr(45);// "-"
$uuid = chr(123)// "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
.substr($charid,20,12)
.chr(125);// "}"
return $uuid;
}
}
<?php
namespace Home\Controller;
use Think\Controller;
class SupplierController extends Controller {
public function index(){
for ($i=0; $i <1000 ; $i++) {
$start_time = microtime(true);
$cloudUrl = "http://192.168.1.211/k3cloud/";
//登陆参数
$data = array(
'5d64e2f4ecb139',//帐套Id
'Administrator',//用户名
'666666',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('/tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
// $name=$arr['name'];
// $supply_classify=$arr['supply_classify'];
// $settle_type=$arr['settle_type'];
// $pay_currency= $arr['pay_currency'];
// $pay_condition=$arr['pay_condition'];
// $tax_type=$arr['tax_type'];
// $charge=$arr['charge'];
// $tax_rate=$arr['tax_rate'];
$data_model ="{
'Creator': '',
'NeedUpDateFields': [],
'NeedReturnFields': [],
'IsDeleteEntry': 'true',
'SubSystemId': '',
'IsVerifyBaseDataField': 'false',
'IsEntryBatchFill': 'true',
'ValidateFlag': 'true',
'NumberSearch': 'true',
'InterationFlags': '',
'IsAutoSubmitAndAudit': 'false',
'Model': {
'FSupplierId': 0,
'FCreateOrgId': {
'FNumber': '0000'
},
'FUseOrgId': {
'FNumber': '0000'
},
'FName': '$i',
'FBaseInfo': {
'FSupplyClassify': 'CG'
},
'FBusinessInfo': {
'FSettleTypeId': {
'FNumber': 'JSFS02_SYS'
},
'FVmiBusiness': false,
'FEnableSL': false
},
'FFinanceInfo': {
'FPayCurrencyId': {
'FNumber': 'PRE001'
},
'FPayCondition': {
'FNumber': 'FKTJ03_SYS'
},
'FTaxType': {
'FNumber': 'SFL02_SYS'
},
'FInvoiceType': '1',
'FTaxRateId': {
'FNUMBER': 'SL02_SYS'
}
}
}
}";
$data = array(
'BD_Supplier',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_add($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($result,true);
if($array['Result']['ResponseStatus']['IsSuccess']){
$this->supplier_submit($array['Result']['Id']);
$this->supplier_audit($array['Result']['Id']);
$end_time = microtime(true);
}
echo '执行时间:'.($end_time-$start_time).' s';
}
}
public function supplier_submit($id){
$cloudUrl = "http://192.168.1.211/k3cloud/";
//登陆参数
$data = array(
'5d64e2f4ecb139',//帐套Id
'Administrator',//用户名
'666666',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('/tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
$data_model ="{
'CreateOrgId': 0,
'Numbers': [],
'Ids': $id,
'SelectedPostId': 0
}";
$data = array(
'BD_Supplier',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_submit($cloudUrl,$post_content,$cookie_jar);
return $result;
}
public function supplier_audit($id){
$cloudUrl = "http://192.168.1.211/k3cloud/";
//登陆参数
$data = array(
'5d64e2f4ecb139',//帐套Id
'Administrator',//用户名
'666666',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('/tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
$data_model ="{
'CreateOrgId': 0,
'Numbers': [],
'Ids': $id,
'InterationFlags': ''
}";
$data = array(
'BD_Supplier',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
$result = self::invoke_audit($cloudUrl,$post_content,$cookie_jar);
return $result;
}
//登陆
static function invoke_login($cloudUrl,$post_content,$cookie_jar)
{
$loginurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc';
return self::invoke_post($loginurl,$post_content,$cookie_jar,TRUE);
}
//查询
static function invoke_save($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//添加
static function invoke_add($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//提交
static function invoke_submit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//审核
static function invoke_audit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
static function invoke_post($url,$post_content,$cookie_jar,$isLogin)
{
$ch = curl_init($url);
$this_header = array(
'Content-Type: application/json',
'Content-Length: '.strlen($post_content)
);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_HTTPHEADER, $this_header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_content);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
if($isLogin){
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
}
else{
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);
}
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
//构造Web API请求格式
static function create_postdata($args) {
$postdata = array(
'format'=>1,
'useragent'=>'ApiClient',
'rid'=>self::create_guid(),
'parameters'=>$args,
'timestamp'=>date('Y-m-d'),
'v'=>'1.0'
);
return json_encode($postdata);
}
//生成guid
static function create_guid() {
$charid = strtoupper(md5(uniqid(mt_rand(), true)));
$hyphen = chr(45);// "-"
$uuid = chr(123)// "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
.substr($charid,20,12)
.chr(125);// "}"
return $uuid;
}
}
<?php
namespace Home\Controller;
use Think\Controller;
class TestController extends Controller {
public function index(){
$Number=I("get.number");
if(empty($Number)){
$this->json(404, 'NO_DATA');
}
$Model = M();
$sql = " SELECT a.FBILLNO FROM BasicEntry a, PAEZ_t_Cust_Entry100005 b WHERE
a.F_PROJECTID = b.FID AND b.FNUMBER ="."'$Number'";
$voList = $Model->query($sql);
if( $voList ){
$this->json("200",$voList);
}else{
$this->json("500");
}
}
public function getDocumentNumber(){
$Number=I("get.number");
if(empty($Number)){
$this->json(404, 'NO_DATA');
}
$Model = M();
$sql = "SELECT FBILLNO FROM T_SAL_OUTSTOCK a,PAEZ_t_Cust_Entry100005 b where a.F_PAEZ_PROJECTNO=b.FID and FNUMBER ="."'$Number'";
$voList = $Model->query($sql);
if( $voList ){
$this->json("200",$voList);
}else{
$this->json("500");
}
}
public function synchronizationAdd(){
header("Content-Type: text/html;charset=utf-8");
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'gonn',
'db_pwd' => 'gonn.123',
'db_host' => '192.168.1.214',
'db_name' => 'gonn',
'db_port' => '10036',
);
$Model = M();
$date=date("Y-m-d",strtotime("-1 day"));
$sql="SELECT a.FID,a.FBILLNO,a.F_UPDATETIME,a.FCREATEDATE,b.FID,
b.FMasterId,b.FNUMBER,b.FSTONAME,b.FID as bfid FROM BasicEntry a, PAEZ_t_Cust_Entry100005 b WHERE a.F_PROJECTID = b.FID AND a.FCREATEDATE >='{$date}'
AND a.FCREATEDATE > a.F_UPDATETIME";
$voList = $Model->query($sql);
//echo "<pre>";
//var_dump($voList);die;
if(empty($voList)){
$k3['info']='暂无数据同步';
$k3log=json_encode($k3);
$status=5;
k3cloudlog($k3log,$status,$type=0);die;
}
$cloudUrl = "http://192.168.1.211/k3cloud/";
//登陆参数
$data = array(
'5865e29cb51ecf',//帐套Id
'administrator',//用户名
'kJyGjIQ5DW0tpd@B',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('./tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
foreach($voList as $key =>$v){
$mm=$v['fbillno'];
$data_model = "{'CreateOrgId':0,'Number':$mm,'Id':''}";
$data = array(
'PAEZ_001',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
header("Content-type: text/html; charset=utf8");
$results =self::invoke_save($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($results,true);
if($array['Result']["ResponseStatus"]["ErrorCode"]==500){
$k3['info']='请求超时,请检查网络后重试';
$k3log=json_encode($k3);
$status=6;
k3cloudlog($k3log,$status,$type=0);die;
}
if($array['Result']["Result"]){
$map['proj_number']=trim($v['fnumber']);
$pronum=M('station_info','',$DB_CONFIG1)->where($map)->select();
if(!$pronum){
$dataarradd=array();
$detairadd=array();
$vendoradd=array();
foreach($array as $key=>$val){
$dataarradd['sp_req_code']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OperatorNeedId']);//需求号
$original_name=self::isproj_number(trim($val['Result']['F_ProjectID']['Number']));
$dataarradd['original_sp_id']=self::original($original_name);//运营商
$dataarradd['business_line_id']=self::businessimpUser(trim($val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']));//业务线
$dataarradd['area_id']=self::regionimpUser(self::isregion(trim($val['Result']['F_Area']['MultiLanguageText'][0]['Name'])));//区域
$dataarradd['station_name']=trim($val['Result']['F_ProjectID']['FStoName']);//站名
$dataarradd['station_sp_code']=trim($val['Result']['F_ProjectID']['FStoNumber']);//站号
$detairadd['longitude']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OriLongitude']);//经度
$detairadd['latitude']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OriLatitude']);//纬度
$dataarradd['proj_number']=trim($val['Result']['F_ProjectID']['Number']);//项目编号
$dataarradd['location']=trim($val['Result']['F_ProjectID']['FStoAddress']);//项目地址
$dataarradd['base_station_state']=self::stateimpUser(trim($val['Result']['F_bfSiteState']['MultiLanguageText'][0]['Name']));//基站状态
$detairadd['antenna_number']=trim($val['Result']['F_PAEZ_Integer']);//天线书
$detairadd['rod_number']=trim($val['Result']['F_PAEZ_Integer1']);//杆数
$detairadd['box_number']=trim($val['Result']['FSubBulidInforEntity'][0]['F_BoxNum']);//箱体数(飞箱)
$detairadd['optical_cable']=trim($val['Result']['FSubBulidInforEntity'][0]['F_CableKilomete']);//公里数
$vendoradd['construction_number']=trim($val['Result']['FSubBulidInforEntity'][0]['F_ConstructionTeam1']['FPhoneNum']);//联系方式
$dataarradd['department_id']=self::departmentimpUser(trim($val['Result']['F_Department']['MultiLanguageText'][0]['Name']));//三级部门
$vendoradd['three_level_manager']=trim($val['Result']['F_ThreeManager']['MultiLanguageText'][0]['Name']);//三级经理
$vendoradd['salesman']=trim($val['Result']['F_BusinessMan']['MultiLanguageText'][0]['Name']);// 业务员
$dataarradd['create_date']=strtotime(trim($val['Result']['FCreateDate']));//创建时间
$dataarradd['update_date']=strtotime(trim($val['Result']['F_UpdateTime']));//更新时间
// 上游客户
// 需求来源
}
$data2 = M('station_info','',$DB_CONFIG1)->add($dataarradd);
$vendoradd['vendor_id']=$data2;
$detairadd['stationid']=$data2;
$data3 = M('station_info_detai','',$DB_CONFIG1)->add($detairadd);
$data4 = M('vendor_info','',$DB_CONFIG1)->add($vendoradd);
$k3['info']='数据同步成功'." 项目编号:".$val['Result']['F_ProjectID']['Number']." 站号:".$val['Result']['F_ProjectID']['FStoNumber']." 站名:".$val['Result']['F_ProjectID']['FStoName']." 需求号:".$val['Result']['FSubDemandInforEntity'][0]['F_OperatorNeedId']." 运营商:".$original_name." 业务线:".$val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']." 区域:".$val['Result']['F_Area']['MultiLanguageText'][0]['Name']." 经度:".$val['Result']['FSubDemandInforEntity'][0]['F_OriLongitude']." 纬度:".$val['Result']['FSubDemandInforEntity'][0]['F_OriLatitude']." 项目地址:".$val['Result']['F_ProjectID']['FStoAddress']." 基站状态:".$val['Result']['F_bfSiteState']['MultiLanguageText'][0]['Name']." 天线数:".$val['Result']['F_PAEZ_Integer']." 杆数:".$val['Result']['F_PAEZ_Integer1']." 箱体数:".$val['Result']['FSubBulidInforEntity'][0]['F_BoxNum']." 公里数:".$val['Result']['FSubBulidInforEntity'][0]['F_CableKilomete']." 联系方式:".$val['Result']['FSubBulidInforEntity'][0]['F_ConstructionTeam1']['FPhoneNum']." 部门:".$val['Result']['F_Department']['MultiLanguageText'][0]['Name']." 经理:".$val['Result']['F_ThreeManager']['MultiLanguageText'][0]['Name']." 业务员:".$val['Result']['F_BusinessMan']['MultiLanguageText'][0]['Name'];
$k3log=json_encode($k3);
$status=1;
$this->json("200",'SUCCESS');
k3cloudlog($k3log,$status,$type=0);
}else{
$k3['info']='项目编号:'.$map['proj_number'].'已存在,'.'不能重复添加';
$k3log=json_encode($k3);
$status=4;
k3cloudlog($k3log,$status,$type=0);
}
}else{
$k3['info']='暂无数据同步';
$k3log=json_encode($k3);
$status=5;
k3cloudlog($k3log,$status,$type=0);
}
}
}
public function synchronizationedit(){
header("Content-Type: text/html;charset=utf-8");
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'root',
'db_pwd' => 'pvv5718J0CwhNfn4B^8^H3igPj#oiQkX',
'db_host' => '39.155.253.70',
'db_name' => 'gonn',
'db_port' => '10036',
);
$Model = M();
$date=date("Y-m-d",strtotime("-1 day"));
$sql="SELECT a.FID,a.FBILLNO,a.F_UPDATETIME,a.FCREATEDATE,b.FID,
b.FMasterId,b.FNUMBER,b.FSTONAME,b.FID as bfid FROM BasicEntry a, PAEZ_t_Cust_Entry100005 b WHERE a.F_PROJECTID = b.FID AND F_UPDATETIME >='{$date}' AND a.F_UPDATETIME > a.FCREATEDATE";
$voList = $Model->query($sql);
if(empty($voList)){
$k3['info']='暂无数据同步';
$k3log=json_encode($k3);
$status=4;
k3cloudlog($k3log,$status,$type=1);die;
}
$cloudUrl = "http://36.110.39.211/k3cloud/";
//登陆参数
$datapwd = array(
'5865e29cb51ecf',//帐套Id
'administrator',//用户名
'Admin!@#456',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('./tmp','CloudSession');
$post_content = self::create_postdata($datapwd);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
foreach($voList as $key =>$v){
$mm=$v['fbillno'];//单据编号
$data_model = "{'CreateOrgId':'','Number':$mm,'Id':''}";// 通过单据编号获取信息
$data = array(
'PAEZ_001',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
header("Content-type: text/html; charset=utf8");
$results =self::invoke_save($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($results,true);
if($array['Result']["ResponseStatus"]["ErrorCode"]==500){
$k3['info']='请求超时,请检查网络后重试';
$k3log=json_encode($k3);
$status=6;
k3cloudlog($k3log,$status,$type=0);die;
}
if(empty($array['Result']["Result"])){
$k3['info']='接口请求异常,无数据信息返回';
$k3log=json_encode($k3);
$status=6;
k3cloudlog($k3log,$status,$type=1);die;
}
$dataarr=array();
foreach($array as $key=>$val){
$dataarr['sp_req_code']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OperatorNeedId']);//需求号
$original_name=self::isoriginal(trim($val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']));
$dataarr['original_sp_id']=self::original($original_name);//运营商
$dataarr['business_line_id']=self::businessimpUser(trim($val['Result']['F_BusinessLine']['MultiLanguageText'][0]['Name']));//业务线
$dataarr['area_id']=self::regionimpUser(trim($val['Result']['F_Area']['MultiLanguageText'][0]['Name']));//区域
$dataarr['station_name']=trim($val['Result']['F_ProjectID']['FStoName']);//站名
$dataarr['station_sp_code']=trim($val['Result']['F_ProjectID']['FStoNumber']);//站号
$dataarr['longitude']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OriLongitude']);//经度
$dataarr['latitude']=trim($val['Result']['FSubDemandInforEntity'][0]['F_OriLatitude']);//纬度
$dataarr['proj_number']=trim($val['Result']['F_ProjectID']['Number']);//项目编号
$dataarr['location']=trim($val['Result']['F_ProjectID']['FStoAddress']);//项目地址
$dataarr['gonn_station_state']=self::stateimpUser(trim($val['Result']['F_bfSiteState']['MultiLanguageText'][0]['Name']));//基站状态
$dataarr['antenna_number']=trim($val['Result']['F_PAEZ_Integer']);//天线书
$dataarr['rod_number']=trim($val['Result']['F_PAEZ_Integer1']);//杆数
$dataarr['box_number']=trim($val['Result']['FSubBulidInforEntity'][0]['F_BoxNum']);//箱体数(飞箱)
$dataarr['optical_cable']=trim($val['Result']['FSubBulidInforEntity'][0]['F_CableKilomete']);//公里数
$dataarr['construction_number']=trim($val['Result']['FSubBulidInforEntity'][0]['F_ConstructionTeam1']['FPhoneNum']);//联系方式
$dataarr['department_id']=self::departmentimpUser(trim($val['Result']['F_Department']['MultiLanguageText'][0]['Name']));//三级部门
$dataarr['three_level_manager']=trim($val['Result']['F_ThreeManager']['MultiLanguageText'][0]['Name']);//三级经理
$dataarr['salesman']=trim($val['Result']['F_BusinessMan']['MultiLanguageText'][0]['Name']);// 业务员
}
$map['proj_number']=$v['fnumber'];
$stationList = M('station_info','',$DB_CONFIG1)->alias('s')
->field('sp_req_code,original_sp_id,business_line_id,area_id,station_name,
station_sp_code,longitude,latitude,proj_number,location,
station_state,antenna_number,rod_number,box_number,optical_cable,department_id,three_level_manager,salesman')
->join('station_info_detai i on s.station_id=i.stationid','left')
->join('vendor_info v on s.station_id=v.vendor_id','left')
->where($map)->select();
$stationDataList=array();
foreach($stationList as $key=>$vo){
$stationDataList['sp_req_code'] =trim($vo['sp_req_code']);//需求号
$stationDataList['original_sp_id'] =trim($vo['original_sp_id']);//运营商
$stationDataList['business_line_id'] =intval($vo['business_line_id']);//业务线
$stationDataList['area_id'] =intval($vo['area_id']);//地区
$stationDataList['station_name'] =trim($vo['station_name']);//站名
$stationDataList['station_sp_code'] =trim($vo['station_sp_code']);//站号
$stationDataList['longitude'] =trim($vo['longitude']);//精度
$stationDataList['latitude'] =trim($vo['latitude']);//纬度
$stationDataList['proj_number'] =trim($vo['proj_number']);//项目编号
$stationDataList['location'] =trim($vo['location']);//地址
$stationDataList['gonn_station_state'] =trim($vo['gonn_station_state']);//状态
$stationDataList['antenna_number'] =trim($vo['antenna_number']);//天线数
$stationDataList['rod_number'] =trim($vo['rod_number']);//杆数
$stationDataList['box_number'] =trim($vo['box_number']);//箱体书
$stationDataList['optical_cable'] =trim($vo['optical_cable']);//公里数
$stationDataList['construction_number'] =trim($vo['construction_number']);//联系方式
$stationDataList['department_id'] =trim($vo['department_id']);//三级部门
$stationDataList['three_level_manager'] =trim($vo['three_level_manager']);//经理
$stationDataList['salesman'] =trim($vo['salesman']);//业务员
}
$result=array_diff_assoc($dataarr,$stationDataList);
//需求号
if(!is_null($result['sp_req_code'])){
$savedata['sp_req_code']=$result['sp_req_code'];
}else{
unset($savedata['sp_req_code']);
}
//运营商
if(!is_null($result['original_sp_id'])){
$savedata['original_sp_id']=$result['original_sp_id'];
}else{
unset($savedata['original_sp_id']);
}
//业务线
if(!is_null($result['business_line_id'])){
$savedata['business_line_id']=$result['business_line_id'];
}else{
unset($savedata['business_line_id']);
}
//区域
if(!is_null($result['area_id'])){
$savedata['area_id']=$result['area_id'];
}else{
unset($savedata['area_id']);
}
//站名
if(!is_null($result['station_name'])){
$savedata['station_name']=$result['station_name'];
}else{
unset($savedata['station_name']);
}
//站号
if(!is_null($result['station_sp_code'])){
$savedata['station_sp_code']=$result['station_sp_code'];
}else{
unset( $savedata['station_sp_code']);
}
//项目编号
if(!is_null($result['proj_number'])){
$savedata['proj_number']=$result['proj_number'];
}else{
unset($savedata['proj_number']);
}
//项目地址
if(!is_null($result['location'])){
$savedata['location']=$result['location'];
}else{
unset( $savedata['location']);
}
//基站状态
if(!is_null($result['gonn_station_state'])){
$savedata['gonn_station_state']=$result['gonn_station_state'];
}else{
unset( $savedata['gonn_station_state']);
}
//部门
if(!is_null($result['department_id'])){
$savedata['department_id']=$result['department_id'];
}else{
unset($savedata['department_id']);
}
//经度
if(!is_null($result['longitude'])){
$savedetai['longitude']=$result['longitude'];
}else{
unset($savedetai['longitude']);
}
//纬度
if(!is_null($result['latitude'])){
$savedetai['latitude']=$result['latitude'];
}else{
unset($savedetai['latitude']);
}
//天线书
if(!is_null($result['antenna_number'])){
$savedetai['antenna_number']=$result['antenna_number'];
}else{
unset($savedetai['antenna_number']);
}
//杆数
if(!is_null($result['rod_number'])){
$savedetai['rod_number']=$result['rod_number'];
}else{
unset( $savedetai['rod_number']);
}
//箱体数(飞箱)
if(!is_null($result['box_number'])){
$savedetai['box_number']=$result['box_number'];
}else{
unset( $savedetai['box_number']);
}
//公里数
if(!is_null($result['optical_cable'])){
$savedetai['optical_cable']=$result['optical_cable'];
}else{
unset($savedetai['optical_cable']);
}
//联系方式
if(!is_null($result['construction_number'])){
$savevender['construction_number']=$result['construction_number'];
}else{
unset($savevender['construction_number']);
}
//三级经理
if(!is_null($result['three_level_manager'])){
$savevender['three_level_manager']=$result['three_level_manager'];
}else{
unset($savevender['three_level_manager']);
}
//业务员
if(!is_null($result['salesman'])){
$savevender['salesman']=$result['salesman'];
}else{
unset($savevender['salesman']);
}
if($savedata || $savedetai || $savevender){
$info=M('station_info','',$DB_CONFIG1)->field('station_id')->where($map)->find();
$data2 = M('station_info','',$DB_CONFIG1)->where($map)->save($savedata);
$data3 = M('station_info_detai','',$DB_CONFIG1)->where("stationid={$info['station_id']}")->save($savedetai);
$data4 = M('vendor_info','',$DB_CONFIG1)->where("vendor_id={$info['station_id']}")->save($savevender);
if($data2 || $data4 || $data3){
$k3['info']='数据同步成功:'.' 项目编号:'.$map['proj_number'].json_encode($result);
$k3log=json_encode($k3);
$status=1;
k3cloudlog($k3log,$status,$type=1);
}else{
// $k3['info']='修改失败, 项目编号:'.$map['proj_number'];
// $k3log=json_encode($k3);
// $status=3;
// k3cloudlog($k3log,$status,$type=1);
}
}else{
$k3['info']='未发现要修改的数据';
$k3log=json_encode($k3);
$status=4;
k3cloudlog($k3log,$status,$type=1);
}
}
}
static function businessimpUser($title){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'gonn',
'db_pwd' => 'gonn.123',
'db_host' => '192.168.1.214',
'db_name' => 'gonn',
'db_port' => '10036',
);
if(empty($title)){
return 0;
}
if($title=='航天盒子-联通、电信'){
$title='铁塔选址';
}
if($title=='铁塔宏站' || $title=='郊区宏站'){
$title='传统宏站';
}
if($title=='一体化微站' || $title=='创新微站'){
$title='小站选址';
}
if($title=='广州铁塔转签' || $title=='广州铁塔直签' ){
$title='广州铁塔';
}
if($title=='歌华飞视'){
$title='飞箱-歌华';
}
if($title=='天威'){
$title='深圳宏站';
}
$business['business_name']=array('like',"%".$title."%");
$business= M('business_line','',$DB_CONFIG1)->field("business_id")->where($business)->find();
return $business['business_id']?$business['business_id']:0;
}
static function departmentimpUser($title){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'gonn',
'db_pwd' => 'gonn.123',
'db_host' => '192.168.1.214',
'db_name' => 'gonn',
'db_port' => '10036',
);
if(empty($title)){
return 0;
}
$department['name']=array('like','%'.$title.'%');
$department= M('department','',$DB_CONFIG1)->field("id")->where($department)->find();
return $department['id']?$department['id']:0;
}
static function isproj_number($name){
if(strpos($name,'WZ') && strpos($name,'YD') ){
return '中国移动';
}elseif(strpos($name,'TT') && strpos($name,'YD')){
return '中国移动';
}elseif(strpos($name,'TT') && strpos($name,'LT')){
return '中国联通';
}elseif(strpos($name,'TT') && strpos($name,'DX')){
return '中国电信';
}elseif(strpos($name,'FX') && strpos($name,'TT')){
return '中国移动';
}elseif(strpos($name,'FX') && strpos($name,'YD')){
return '中国移动';
}elseif(strpos($name,'HZ') && strpos($name,'YD')){
return '中国移动';
}elseif(strpos($name,'WZ') && strpos($name,'LT')){
return '中国联通';
}elseif(strpos($name,'WZ') && strpos($name,'DX')){
return '中国电信';
}
elseif(strpos($name,'HZ') && strpos($name,'TT')){
return '待定';
}else{
return 0;
}
}
static function iscustomers($name){
if(strpos($name,'WZ') && strpos($name,'YD') ){
return '中国铁通';
}elseif(strpos($name,'TT') && strpos($name,'YD')){
return '中国铁塔';
}elseif(strpos($name,'TT') && strpos($name,'LT')){
return '中国铁塔';
}elseif(strpos($name,'TT') && strpos($name,'DX')){
return '中国铁塔';
}elseif(strpos($name,'FX') && strpos($name,'TT')){
return '航数';
}elseif(strpos($name,'FX') && strpos($name,'YD')){
return '中国铁通';
}elseif(strpos($name,'HZ') && strpos($name,'YD')){
return '中国移动';
}elseif(strpos($name,'WZ') && strpos($name,'LT')){
return '航数';
}elseif(strpos($name,'WZ') && strpos($name,'DX')){
return '航数';
}
elseif(strpos($name,'HZ') && strpos($name,'TT')){
return '中国铁塔';
}else{
return 0;
}
}
//需求来源
static function issources($name){
if(strpos($name,'WZ') && strpos($name,'YD') ){
return '中国移动';
}elseif(strpos($name,'TT') && strpos($name,'YD')){
return '中国铁塔';
}elseif(strpos($name,'TT') && strpos($name,'LT')){
return '中国铁塔';
}elseif(strpos($name,'TT') && strpos($name,'DX')){
return '中国铁塔';
}elseif(strpos($name,'FX') && strpos($name,'TT')){
return '中国铁塔';
}elseif(strpos($name,'FX') && strpos($name,'YD')){
return '中国移动';
}elseif(strpos($name,'HZ') && strpos($name,'YD')){
return '中国移动';
}elseif(strpos($name,'WZ') && strpos($name,'LT')){
return '中国铁塔';
}elseif(strpos($name,'WZ') && strpos($name,'DX')){
return '中国铁塔';
}
elseif(strpos($name,'HZ') && strpos($name,'TT')){
return '中国铁塔';
}else{
return 0;
}
}
static function isregion($name){
if($name=='朝阳铁塔' || $name=='朝阳飞箱' || $name=='朝阳小站'){
return '朝阳';
}elseif($name=='北区铁塔'){
return '北区';
}elseif($name=='昌平铁塔' || $name=='昌平小站' || $name=='昌平飞箱' || $name=='昌平驻地网'){
return '昌平';
}elseif($name=='城二驻地网' || $name=='城二小站' || $name=='城二飞箱'){
return '城二';
}elseif($name=='城三驻地网' || $name=='城三小站' || $name=='城三飞箱'){
return '城三';
}elseif($name=='城一驻地网' || $name=='城一小站' || $name=='城一飞箱'){
return '城一';
}elseif($name=='大兴宏站' || $name=='大兴飞箱' || $name=='大兴铁塔' || $name=='大兴小站'){
return '大兴';
}elseif($name=='房山驻地网' || $name=='房山飞箱' || $name=='房山小站' || $name=='房山宏站'){
return '房山';
}elseif($name=='密云驻地网'){
return '密云';
}elseif($name=='平谷驻地网' || $name=='平谷小站'){
return '平谷';
}elseif($name=='顺义驻地网' || $name=='顺义飞箱' || $name=='顺义小站'){
return '顺义';
}elseif($name=='通州飞箱' || $name=='通州铁塔' || $name=='通州小站'){
return '通州';
}elseif($name=='西区铁塔' || $name=='西区(丰台)铁塔'){
return '西区';
}elseif($name=='延庆驻地网' || $name=='延庆小站'){
return '延庆';
}elseif($name=='中心区铁塔' || $name=='中心城区宏站'){
return '中心区';
}else{
return $name;
}
}
static function regionimpUser($name){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'gonn',
'db_pwd' => 'gonn.123',
'db_host' => '192.168.1.214',
'db_name' => 'gonn',
'db_port' => '10036',
);
if(empty($name)){
return 0;
}
if($name=='重庆'){
return 110;
}
if($name=='上海'){
return 120;
}
$region['region_name']=array('like',"%".$name."%");
$region= M('region','',$DB_CONFIG1)->field("id")->where($region)->find();
return $region['id']? $region['id'] :0;
}
static function original($name){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'gonn',
'db_pwd' => 'gonn.123',
'db_host' => '192.168.1.214',
'db_name' => 'gonn',
'db_port' => '10036',
);
if(empty($name)){
return 0;
}
$original['operator_name']=$name;
$original= M('operator','',$DB_CONFIG1)->field("operator_id")->where($original)->find();
return $original['operator_id'] ?$original['operator_id']:0;
}
static function isoriginal($name){
if($name=='飞箱移动' || $name=='飞箱歌华' || $name=='一体化微站' || $name=='郊区宏站' || $name=='驻地网' ){
return '中国移动';
}elseif($name='歌华飞视' || $name='共站' || $name='航天盒子-联通、电信' || $name=='飞箱铁塔' || $name=='铁塔宏站'){
return '中国铁塔';
}elseif($name=='佛山小微站' || $name=='佛山宏站'){
return '中国山移动';
}elseif($name=='天津宏站'){
return '中国移动';
}elseif($name=='广州铁塔转签'){
return '中国铁塔';
}elseif($name=='广州宏站'){
return '中国移动';
}else{
return 0;
}
}
static function stateimpUser($name){
$DB_CONFIG1 = array(
'db_type' => 'mysql',
'db_user' => 'gonn',
'db_pwd' => 'gonn.123',
'db_host' => '192.168.1.214',
'db_name' => 'gonn',
'db_port' => '10036',
);
if(empty($name)){
return 0;
}
$cate['cate_name']=array('like',"%".$name."%");
$cate= M('station_statuscate','',$DB_CONFIG1)->field("cate_id")->where($cate)->find();
return $cate['cate_id']?$cate['cate_id']:0;
}
//登陆
static function invoke_login($cloudUrl,$post_content,$cookie_jar)
{
$loginurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc';
return self::invoke_post($loginurl,$post_content,$cookie_jar,TRUE);
}
//查询
static function invoke_save($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
//审核
static function invoke_audit($cloudUrl,$post_content,$cookie_jar)
{
$invokeurl = $cloudUrl.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc';
return self::invoke_post($invokeurl,$post_content,$cookie_jar,FALSE);
}
static function invoke_post($url,$post_content,$cookie_jar,$isLogin)
{
$ch = curl_init($url);
$this_header = array(
'Content-Type: application/json',
'Content-Length: '.strlen($post_content));
curl_setopt($ch, CURLOPT_TIMEOUT,10);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_HTTPHEADER, $this_header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_content);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
if($isLogin){
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar);
}
else{
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);
}
$result = curl_exec($ch);
// $http_status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
// if ($http_status != '200') {
// $html_data['result_code']=$http_status;
// return json_encode($html_data);
// }
curl_close($ch);
return $result;
}
//构造Web API请求格式
static function create_postdata($args) {
$postdata = array(
'format'=>1,
'useragent'=>'ApiClient',
'rid'=>self::create_guid(),
'parameters'=>$args,
'timestamp'=>date('Y-m-d'),
'v'=>'1.0'
);
return json_encode($postdata);
}
//生成guid
static function create_guid() {
$charid = strtoupper(md5(uniqid(mt_rand(), true)));
$hyphen = chr(45);// "-"
$uuid = chr(123)// "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
.substr($charid,20,12)
.chr(125);// "}"
return $uuid;
}
static function json($code,$result){
header('Content-Type:application/json;charset=utf-8');
$data=[
'code'=>$code,
'message'=>$result,
];
echo json_encode($data);
exit;
}
public function jzedit(){
header("Content-type: text/html; charset=utf8");
$Model = M();
// $date=date("Y-m-d");
$date=date("Y-m-d",strtotime("-10 day"));
$sql="SELECT a.FID,a.FBILLNO,a.F_UPDATETIME,a.FCREATEDATE,b.FID,
b.FMasterId,b.FNUMBER,b.FSTONAME,b.FID as bfid FROM BasicEntry a, PAEZ_t_Cust_Entry100005 b WHERE a.F_PROJECTID = b.FID AND F_UPDATETIME >='{$date}' AND a.F_UPDATETIME > a.FCREATEDATE";
$voList = $Model->query($sql);
dump( $voList);die;
$cloudUrl = "http://36.110.39.211/k3cloud/";
//登陆参数
$data = array(
'5d8acc5a26042d',//帐套Id
'administrator',//用户名
'kJyGjIQ5DW0tpd@B',//密码
'2052'//语言标识359010087
);
//定义记录Cloud服务端返回的Session
$cookie_jar = tempnam('./tmp','CloudSession');
$post_content = self::create_postdata($data);
$result = self::invoke_login($cloudUrl,$post_content,$cookie_jar);
foreach($voList as $key =>$v){
$mm=$v['fbillno'];
$data_model = "{'CreateOrgId':0,'Number':$mm,'Id':''}";
$data = array(
'PAEZ_001',//业务对象标识FormId
$data_model//具体Json字串
);
$post_content = self::create_postdata($data);
header("Content-type: text/html; charset=utf8");
$results =self::invoke_save($cloudUrl,$post_content,$cookie_jar);
$array = json_decode($results,true);
if($array['Result']["ResponseStatus"]["ErrorCode"]==500){
$k3['info']='请求超时,请检查网络后重试';
$k3log=json_encode($k3);
$status=6;
}
if($array['Result']["Result"]){
foreach($array as $key=>$val){
$jzdata['jzState']=$val['Result']['F_bfSiteState']['Number'];//状态
$jzdata['jzQy']=$val['Result']['F_Area']['Number'];//区域
$jzdata['jzCurDept']=$val['Result']['F_Department']['Number'];//部门
$jzdata['jzYWX']=$val['Result']['F_BusinessLine']['Number'];//业务线
$jzdata['dxmorgId']=$val['Result']['F_DXMOrgId']['Number'];//业务组织
$jzdata['projectCode']=$val['Result']['F_ProjectID']['Number'];//项目编号
$jzdata['jzName']=$val['Result']['F_ProjectID']['FStoName'];//站名
$jzdata['jzCode']=$val['Result']['F_ProjectID']['FStoNumber'];//站号
$jzdata['projectAddress']=$val['Result']['F_ProjectID']['FStoAddress'];//项目地址
$jzdata['jzcurUser']=$val['Result']['F_BusinessMan']['FStaffNumber'];// 业务员
$jzdata['jzProjectOwner']=$val['Result']['F_ThreeManager']['FStaffNumber'];//三级经理
$jzdata['kingNumber']=$mm;//单据编号
// dump($jzdata);die;
$url='http://39.155.253.71:38080/kingdee/kingDeeRecall';
// dump($jzdata);die;
dump(self::jz($jzdata,$url));
}
}
}
}
public function check_login(){
$data['password']=371;
$data['username']=371;
$data['userType']=1;
$url="http://39.155.253.71:38080/auth/login";
$token=self::jz($data,$url);
$token=json_decode($token,true);
if( $token['code']==200){
$accessToken= $token['data'];
}
}
static function jz($jzdata,$url){
$accessToken = "eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjE1Njk5MTIwOTQsInN1YiI6IjM3MSIsImlhdCI6MTU2OTMwNzI5NCwiMzcxIjp7ImJ1c2luZXNzSWQiOiIzNzEiLCJ1c2VybmFtZSI6IjM3MSIsImRlcHRJZCI6IjMiLCJyb2xlU3RyIjoiMTAzLDY2LDc2IiwiZGVwdENvZGUiOiIzIiwibm90TG9ja2VkIjp0cnVlLCJhdXRob3JpdGllcyI6W119LCJ1c2VybmFtZSI6IjM3MSIsImJ1c2luZXNzSWQiOiIzNzEifQ.kgIMRgHqNup5qZzm5rPaq68P8fQJXnNiHNjFANFfHBY";
$headers[] = "Authorization: Bearer ". $accessToken;
$curl = curl_init();
//设置抓取的url
curl_setopt($curl, CURLOPT_URL, $url);
//设置头文件的信息作为数据流输出
curl_setopt($curl, CURLOPT_HEADER,0);
//设置请求头
curl_setopt($curl, CURLOPT_HTTPHEADER,$headers);
//设置获取的信息以文件流的形式返回,而不是直接输出。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
//设置post方式提交
curl_setopt($curl, CURLOPT_POST, 1);
//设置post数据
curl_setopt($curl, CURLOPT_POSTFIELDS, $jzdata);
//执行命令
$data = curl_exec($curl);
//关闭URL请求
curl_close($curl);
//显示获得的数据
return $data;
}
}
\ No newline at end of file
\ No newline at end of file
\ No newline at end of file
项目目录
\ No newline at end of file
\ No newline at end of file
资源文件目录
\ No newline at end of file
## 简介
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。
## 全面的WEB开发特性支持
最新的ThinkPHP为WEB应用开发提供了强有力的支持,这些支持包括:
* MVC支持-基于多层模型(M)、视图(V)、控制器(C)的设计模式
* ORM支持-提供了全功能和高性能的ORM支持,支持大部分数据库
* 模板引擎支持-内置了高性能的基于标签库和XML标签的编译型模板引擎
* RESTFul支持-通过REST控制器扩展提供了RESTFul支持,为你打造全新的URL设计和访问体验
* 云平台支持-提供了对新浪SAE平台和百度BAE平台的强力支持,具备“横跨性”和“平滑性”,支持本地化开发和调试以及部署切换,让你轻松过渡,打造全新的开发体验。
* CLI支持-支持基于命令行的应用开发
* RPC支持-提供包括PHPRpc、HProse、jsonRPC和Yar在内远程调用解决方案
* MongoDb支持-提供NoSQL的支持
* 缓存支持-提供了包括文件、数据库、Memcache、Xcache、Redis等多种类型的缓存支持
## 大道至简的开发理念
ThinkPHP从诞生以来一直秉承大道至简的开发理念,无论从底层实现还是应用开发,我们都倡导用最少的代码完成相同的功能,正是由于对简单的执着和代码的修炼,让我们长期保持出色的性能和极速的开发体验。在主流PHP开发框架的评测数据中表现卓越,简单和快速开发是我们不变的宗旨。
## 安全性
框架在系统层面提供了众多的安全特性,确保你的网站和产品安全无忧。这些特性包括:
* XSS安全防护
* 表单自动验证
* 强制数据类型转换
* 输入数据过滤
* 表单令牌验证
* 防SQL注入
* 图像上传检测
## 商业友好的开源协议
ThinkPHP遵循Apache2开源协议发布。Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再作为开源或商业软件发布。
\ No newline at end of file
{
"name": "topthink/thinkphp",
"description": "the ThinkPHP Framework",
"type": "framework",
"keywords": ["framework","thinkphp","ORM"],
"homepage": "http://thinkphp.cn/",
"license": "Apache2",
"authors": [
{
"name": "liu21st",
"email": "liu21st@gmail.com"
}
],
"require": {
"php": ">=5.3.0"
},
"minimum-stability": "dev"
}
<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006-2014 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------
// 应用入口文件
// 检测PHP环境
if(version_compare(PHP_VERSION,'5.3.0','<')) die('require PHP > 5.3.0 !');
// 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false
define('APP_DEBUG',True);
// 定义应用目录
define('APP_PATH','./Application/');
// 引入ThinkPHP入口文件
require './ThinkPHP/ThinkPHP.php';
// 亲^_^ 后面不需要任何代码了 就是如此简单
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
No preview for this file type
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论