123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 |
- <?php
- /**
- * Created by PhpStorm.
- * User: ASUS
- * Date: 2018/7/18
- * Time: 11:00
- */
- namespace Jobs\Model\Test;
- use Jobs\Dao\DCloudUsers;
- use Jobs\Dao\DUsersCategory;
- use Jobs\Dao\DUsersTestify;
- class K3Handle
- {
- public function store($data,$erp_no)
- {
- $param = [];
- $DGusersCategory = new DUsersCategory();
- $param['user_id'] = $data['user_id'];
- $param['company_name'] = $data['company_name']?:'';
- $param['referrer_phone'] = $data['referrer_phone']?:'';
- $param['legal_person'] = $data['legal_person']?:'';
- $param['contact_phone'] = $data['contact_phone']?:'';
- $param['detail_address'] = $data['company_address']?:''.$data['detail_address']?:'';
- $param['category_id'] = $data['category_id']?:0;
- if ($param['category_id']){
- $res_data =$DGusersCategory ->get($param['category_id']);
- }
- $param['erp_no'] = $erp_no;
- //$param['referrer_name'] = $data['referrer_name'];
- $param['referrer_no'] = $data['referrer_no'];
- $param['referrer_group_no'] = $data['referrer_group_no'];
- $DGusers = new DCloudUsers();
- if (isset($res_data)&&!empty($res_data)) {
- $param['category_no'] = $res_data['category_no'];
- //$UserCat = new UsersCategoryModel[);
- //取出分类
- if ($param['category_no']) {
- $cateInfo = $DGusersCategory->get(['category_no' => $param['category_no']]);
- $id = $cateInfo['pid'];
- $cateInfo2 = $DGusersCategory->get($id);
- if ($cateInfo2) {
- $id = $cateInfo2['pid'];
- $cateInfo1 = $DGusersCategory -> get($id);
- if ($cateInfo1) {
- $category_no2 = $cateInfo2['category_no'];
- $category_no1 = $cateInfo1['category_no'];
- $category_no3 = $param['category_no'];
- } else {
- $category_no1 = $cateInfo2['category_no'];
- $category_no2 = $param['category_no'];
- $category_no3 = '';
- }
- } else {
- $category_no1 = $param['category_no'];
- $category_no2 = '';
- $category_no3 = '';
- }
- }
- }else{
- $res_uesr =$DGusers ->get($param['user_id']);
- if (!empty($res_uesr)){
- return $response = [
- 'code' =>500,
- ];
- file_put_contents('K3_sync_empty_erp_no.log','法人;客户手机号;联系电话,详细地址'.PHP_EOL.$param['legal_person'] .';'.$res_uesr['phone'].';'.$param['contact_phone'].';'.$param['detail_address'].PHP_EOL,FILE_APPEND);
- }else{
- return $response = [
- 'code' =>500,
- ];
- }
- }
- if ($param['referrer_group_no']){
- $k3Result = $this ->syncCustomer(isset($category_no1)?$category_no1:'', $param, isset($category_no2)?$category_no2:'', isset($category_no3)?$category_no3:'',$data['id']);
- if ($k3Result['code']!=200){
- return ['code' =>500,'msg'=>$k3Result['msg']];
- }
- }else{
- $res_uesr =$DGusers ->get($param['user_id']);
- file_put_contents('K3_sync_empty_referrer_no.log','法人;客户手机号;联系电话,详细地址'.PHP_EOL.$param['legal_person'] .';'.$res_uesr['phone'].';'.$param['contact_phone'].';'.$param['detail_address'].PHP_EOL,FILE_APPEND);
- return ['code' =>500];
- }
- }
- public function syncCustomer($category_no1,$param,$category_no2,$category_no3, $id=0)
- {
- $objectDusersTestify = new DUsersTestify();
- $cookie_jar = './k3.ini';
- $data = array(
- //业务对象表单Id(必录)
- 'Model'=>[
- 'FNumber' => $param['erp_no'],
- 'FCreateOrgId'=>['FNumber' => '101'], //
- 'FUseOrgId'=>['FNumber' => '101'],
- 'FName'=>$param['legal_person'],
- 'FADDRESS'=>$param['detail_address'],
- 'FTEL'=>$param['contact_phone'],
- 'FSALDEPTID'=>['FNumber' =>$param['referrer_no']],
- 'FSALGROUPID'=>['FNumber' =>$param['referrer_group_no']],
- 'FSELLER'=>['FNumber' =>$param['referrer_no']],
- 'FCustTypeId'=>['FNumber' =>'KHLB001_SYS'],
- 'FTRADINGCURRID'=>['FNumber' =>'PRE001'],
- 'F_PAEZ_Assistant5'=>['FNumber' =>$category_no1],
- 'F_PAEZ_Assistant6'=>['FNumber' =>$category_no2],
- 'F_PAEZ_Assistant3'=>['FNumber' =>$category_no3],
- ],
- 'Creator' => '亿成商城'
- );
- //V($data);
- //定义记录Cloud服务端返回的Session
- $K3login = new K3Login();
- $K3Curl = new K3Curl();
- $post_content = $K3login->create_postdata(['BD_Customer',$data]);
- // $url = 'http://192.168.0.135/k3cloud/'.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc';
- $url = 'http://123.206.51.139/k3cloud/'.'Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc';
- $res = $K3login->loginIfNeed();
- //V($post_content);
- //V($res);
- $resultJsonSave =$K3Curl->MyCurlPost($url, $post_content, $cookie_jar, false);
- //V($resultJsonSave);
- file_put_contents('K3_sync_users_testify.log',date('Y-m-d H:i:s').'发送数据'.$post_content.PHP_EOL.'返回的数据:'.var_export($resultJsonSave ,true).PHP_EOL,FILE_APPEND);
- $resultArray = json_decode($resultJsonSave, true);
- //V($resultArray);
- //判断是否已经有该客户
- if ($resultArray['Result']['ResponseStatus']['IsSuccess']) {
- $K3_id = $resultArray['Result']['Id'];
- if ($K3_id){
- $res = $objectDusersTestify->update(['k3_id' =>$K3_id],['id'=>$id]);
- }
- $response = array(
- 'code' => 200,
- 'msg' => 'K3保存成功',
- 'info' => 'K3保存成功',
- );
- return $response;
- }else{
- return array(
- 'code' => 500,
- 'msg' => $resultArray['Result']['ResponseStatus']['Errors'][0]['Message'],
- 'info' => 'K3保存成功',
- );
- }
- // if (!strpos($resultArray['Result']['ResponseStatus']['Errors'][0]['Message'], '客户,组织内编码唯一')) {
- // $response = array(
- // 'code' => 500,
- // 'msg' => $resultArray['Result']['ResponseStatus']['Errors'][0]['Message'],
- // 'info' => 'K3:' . $resultArray['Result']['ResponseStatus']['Errors'][0]['Message'],
- // );
- // return $response;
- // }
- }
- }
|