| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677 | 
							- <?php
 
- /**
 
-  * 为防后期调用u9接口复用问题这里决定重新封装apiyy的接口
 
-  */
 
- class Model_apiyyv1 extends Lin_Model 
 
- {
 
- 	public $base_url = "http://139.129.33.38";
 
- 	function __construct(){
 
- 		parent::__construct();
 
- 		$this->load->database();
 
- 		$this->table = 'apiyy';
 
- 		$this->load_table('apiyy');
 
- 	}
 
-     /**
 
- 	 * 生成u9的调出单  
 
- 	 */
 
- 	public function dcdCrate($params,$token){
 
- 		$list = $this->dcDataTrans($params);
 
- 		$url = '/U9C/webapi/TransferOut/Create';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 提交调出单
 
- 	 */
 
- 	public function dcdSubmit($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //调出单单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/TransferOut/Submit';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 审核调出单
 
- 	 */
 
- 	public function dcdApprove($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //调出单单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/TransferOut/Approve';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 生成u9的销售单
 
- 	 * 只是财务记录 不牵扯到库存
 
- 	 */
 
- 	public function xsdCreate($params,$token){
 
- 		$list = $this->xsdDataTrans($params);
 
- 		$url = '/U9C/webapi/SO/Create';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 生成u9的销售单
 
- 	 * 只是财务记录 不牵扯到库存
 
- 	 */
 
- 	public function xsdTwoCreate($params,$token){
 
- 		$list = $this->xsdTwoDataTrans($params);
 
- 		$url = '/U9C/webapi/SO/Create';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 销售单提交
 
- 	 */
 
- 	public function xsdSubmit($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/SO/Submit';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	 /**
 
- 	  * 销售单审核
 
- 	  */
 
- 	  public function xsdApprove($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/SO/Approve';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 根据调出单的单号做关联查询 然后匹配存储调入单的审核
 
- 	 */
 
- 	public function drdcxBydcd($dcd_no,$token){
 
- 		// $list["SqlString"] = "select DescFlexField_PubDescSeg4 ,DocNo from InvDoc_TransferIn  where  DescFlexField_PubDescSeg4  =  '".$dcd_no."'";
 
- 		$list["SqlString"] = "select a.docno,b.srcdocinfo_srcdocno from InvDoc_TransferIn as a left join InvDoc_TransInLine as b on a.id=b.TransferIn where srcdocinfo_srcdocno='".$dcd_no."'";
 
- 		$url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	public function xscsByordernos($xs_no_list,$token){
 
- 		$str = '';
 
- 		foreach($xs_no_list as $k=>$v){
 
- 			if($k==0){
 
- 				$str .="'".$v."'";
 
- 			}else{
 
- 				$str .=",'".$v."'";
 
- 			}
 
- 			
 
- 		}
 
- 		//$list['SqlString'] = "select a.DocNo,b.DocLineNo,c.DocSubLineNo,c.ShipPlanQtyPU from SM_SO as a left join SM_SOLine as b on a.id = b.SO left join SM_SOShipline as c on c.SOLine = b.id where a.DocNo in  (".$str.")   order by a.CreatedOn desc ";
 
- 		$list['SqlString'] = "select a.DocNo,b.DocLineNo,c.DocSubLineNo,c.ShipPlanQtyPU,c.ItemInfo_ItemCode from SM_SO as a left join SM_SOLine as b on a.id = b.SO left join SM_SOShipline as c on c.SOLine = b.id where a.DocNo in  (".$str.")   order by a.CreatedOn desc ";
 
- 		$url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 调入单提交
 
- 	 */
 
- 	public function drdSubmit($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/TransferIn/Submit';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 调入单审核
 
- 	 */
 
- 	public function drdApprove($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/TransferIn/Approve';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 生成u9的采购单
 
- 	 * 只是财务记录 不牵扯到库存
 
- 	 * 目前采用的是无源的
 
- 	 */
 
- 	public function cgdCreate($params,$token){
 
- 		$list = $this->cgdDataTrans($params);
 
- 		$url = '/U9C/webapi/PurchaseOrder/Create';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 采购单提交
 
- 	 */
 
- 	public function cgdSubmit($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/PurchaseOrder/Submit';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	 /**
 
- 	  * 采购单审核
 
- 	  */
 
- 	  public function cgdApprove($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/PurchaseOrder/Approve';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 生成u9的标准出货单
 
- 	 * 会造成库存变动
 
- 	 * 使用的是有源的就是销售单
 
- 	 */
 
- 	public function bzchCreate($params,$token){
 
- 		$list = $this->yybzchDataTrans($params);
 
- 		$url = '/U9C/webapi/Ship/CreateBySrcDoc';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	
 
- 	/**
 
- 	 * 标准出货单提交并审核
 
- 	 */
 
- 	public function bzchSubmitAndApprove($params,$token){
 
- 		$list  = [
 
- 			[
 
- 				'Code'=>$params['number'] //单号
 
- 			]
 
- 		];
 
- 		$url = '/U9C/webapi/Ship/SubmitAndApprove';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 生成u9的标准收获单
 
- 	 * 会造成库存变动
 
- 	 * 这个也是有源的是采购单  不过估计用不上   先不写
 
- 	 */
 
- 	public function bzshCreate($params,$token){
 
- 	}
 
- 	//根据erp的单号查询调出单是够存在
 
- 	public function xcDcdByOtherId($dcd_no,$token){
 
- 		$list["SqlString"] = "select DescFlexField_PubDescSeg4,DocNo from InvDoc_TransferOut  where  DescFlexField_PubDescSeg4 =  '".$dcd_no."'";
 
- 		$url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	
 
- 	/**
 
- 	 * 查询料品
 
- 	 */
 
- 	public function cxLp($params,$token){
 
- 		$list  = [];
 
- 		foreach($params as $k=>$v){
 
- 			$list[] =[
 
- 				"ItemMaster"=>[
 
- 					"Code"=>$v['jm']
 
- 				]
 
- 			];
 
- 		}
 
- 		$url = '/U9C/webapi/ItemMaster/Query';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 创建料品
 
- 	 */
 
- 	public function cjLp($params,$token){
 
- 		$list  = $this->cjlpDataTrans($params);
 
- 		$url = '/U9C/webapi/ItemMaster/Create';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	/**
 
- 	 * 同步通知
 
- 	 */
 
- 	public function tbLp($params,$token){
 
- 		$list  = [];
 
- 		foreach($params['list'] as $k=>$v){
 
- 			$list[] = [
 
- 				"EntityFullName"=>'UFIDA.U9.CBO.SCM.Item.ItemMaster',//实体全名
 
- 				"EntityCode"=>$v['jm'],
 
- 				"FromOrgCode"=>$params['owner_code'],//创建组织编码
 
- 				"ToOrgCodeList"=>[140],//要同步的组织
 
- 				"OtherID"=>'',
 
- 				"ContextDTO"=>[
 
- 					"EntCode"=>$params['ztcode'],//企业编码
 
- 					"OrgCode"=>$params['owner_code'],//组织编码
 
- 					"UserCode"=>'xk',//用户编码
 
- 					"UserPwd"=>'',//用户密码
 
- 				]
 
- 			];
 
- 		}
 
- 		
 
- 	   
 
- 		$url = '/U9C/webapi/ControlObjSend/ControlObjSend';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	//由于逻辑修改造成 需要查询调出单是审核完毕
 
- 	public function xdlsCxDcd($dcd_no,$token){
 
- 		$list["SqlString"] = "select a.DocNo,a.Status,a.DescFlexField_PubDescSeg2,a.DescFlexField_PubDescSeg4,a.DescFlexField_PubDescSeg5,b.ItemInfo_ItemCode,b.CostUOMQty,b.CostPrice,b.ItemInfo_ItemName from  InvDoc_TransferOut as a left join InvDoc_TransOutLine as b on a.id = b.TransferOut where a.Status = 2 and a.DocNo = '".$dcd_no."'";
 
- 		//$list["SqlString"] = "select a.*,b.* from  InvDoc_TransferOut as a left join InvDoc_TransOutLine as b on a.id = b.TransferOut where a.Status = 2 and a.DocNo = '".$dcd_no."'";
 
- 		$url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
 
- 		$url = $this->base_url.$url;
 
- 		$header[] = "Content-Type: application/json";
 
-         $header[] = "Token: ".$token;
 
- 		$res = $this->sendReq($url,$header,json_encode($list));
 
- 		return array($res,$list);
 
- 	}
 
- 	public function sendReq($url,$header,$list){
 
- 		$ch = curl_init();
 
-         curl_setopt($ch, CURLOPT_URL, $url);
 
-         curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
 
-         curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
 
- 		curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
 
- 		curl_setopt($ch, CURLOPT_POST, 1);
 
-         curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
 
-         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
 
-         curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
 
-         $res = curl_exec($ch);
 
- 		$res = json_decode($res,true);
 
- 		return $res;
 
- 	}
 
- 	//调出单的数据转化
 
- 	public function dcDataTrans($params){
 
- 		$trans_out_lines = [];
 
- 		foreach($params['list'] as $k=>$v){
 
- 			$trans_out_lines[] = [
 
- 				"ItemInfo" =>[
 
- 					"ItemCode"=>$v['jm'],//用友的简码
 
- 				],
 
- 				"TransOutWh_Code"=>$params['dcckbm'],//调出仓库编码
 
- 				"StoreUOM_Code"=>"条",//调出库存单位Code  如条
 
- 				"StoreUOMQty"=>$v['dcsl'],//调出数量
 
- 				"StorageType"=>4,//存储类型:待检;1:在检;2:不合格;3:报废;4:可用;5:冻结;6:退回;7:待返工
 
- 				"LotInfo_Code"=>"",//批号Code   不知道有啥用 暂时留空吧
 
- 				"TransOutOwnerOrg_Code"=>$params['owner_code'],//货主组织Code
 
- 				"TransOutSubLines"=>[
 
- 					[
 
- 						'TransInWh_Code'=>$params['drckbm']."",//调入仓库编码
 
- 						'StorageType'=>4,//存储类型:待检;1:在检;2:不合格;3:报废;4:可用;5:冻结;6:退回;7:待返工
 
- 						'TransInOrg_Code'=>$params['drzz_code']."",//调入组织Code
 
- 						'TransOutOwnerOrg_Code'=>$params['owner_code']."",//货主组织Code
 
- 						'StoreUOMQty'=>$v['dcsl'],
 
- 					]
 
- 				],
 
- 				"TransOutBins"=>[
 
- 					[
 
- 						'BinInfo_Code'=>'',//库位Code
 
- 						'StoreUOMQty'=>$v['dcsl']//	分配数量
 
- 					]
 
- 				]
 
- 				,"DescFlexField"=>[
 
- 					"PubDescSeg2"=>$params['yyid'],//来源店铺  这种需要在店铺表中有
 
- 					"PubDescSeg4"=>$params['number'],//订单编码
 
- 					"PubDescSeg5"=>$params['shipremarks'],//订单的备注
 
- 				],
 
- 			];
 
- 			
 
- 		}
 
- 		$data = [];
 
- 		$data[] = [
 
- 			"OtherID"=>$params['number'],//第三方数据唯一性标识,此字段需要返回
 
- 			"TransOutDocType_Code"=> $params['TransOutDocType_Code'],//单据类型在u9中设置的 详情到u9界面查看  TransOut001  组织间调拨  TransOut002 仓库转储  TransOut004 委外加工发料  TransOut005  委外加工退料
 
- 			"BusinessDate"=>date("Y-m-d",$params['time']),//日期
 
- 			"TransferDirection"=>$params['TransferDirection'],//调拨方向 0:普通;1:退货
 
- 			"TransOutLines"=>$trans_out_lines,
 
- 			"DescFlexField"=>[
 
- 				"PubDescSeg2"=>$params['yyid'],//来源店铺  这种需要在店铺表中有
 
- 				"PubDescSeg4"=>$params['number'],//订单编码
 
- 				"PubDescSeg5"=>$params['shipremarks'],//订单的备注
 
- 			],
 
- 		];
 
- 		return $data;
 
- 	}
 
- 	//销售单的数据转化
 
- 	public function xsdDataTrans($params){
 
- 		$so_lines = [];
 
- 		foreach($params['list'] as $k=>$v){
 
- 			
 
- 			$so_lines[] = [
 
- 				'TU'=>"条",//销售单位编码
 
- 				'ItemCode'=>$v['jm'],//用友的编码
 
- 				'PU'=>'条',//计价单位编码
 
- 				"ShipTogetherFlag"=>-1,//成套收发货标志
 
- 				'DocLineNo'=>$k+1,
 
- 				'CustomerItemNo'=>'',//客户料号
 
- 				'CustomerItemName'=>'',//客户品名 
 
- 				'FinallyPriceTC'=>$v['final_price'],//最终价  单价
 
- 				'PubDescSeg10'=>'',
 
- 				'SOShiplineDTOList'=>[  //销售订单计划行
 
- 					[
 
- 						'IsMRPRequire',  //MRP需求
 
- 						'DemandType',//需求分类
 
- 						'RequireDate'=>date('m/d/Y H:i:s',$params['time']),
 
- 					]
 
- 				],
 
- 				'RecTerm'=>'',//目前找不到了
 
- 				'FreeType'=>($v['final_price'] < 0.01)?0: -1,//免费品类型 (无默认值请传-1;赠品请传0;备损品请传1)   徐凯设定的是  如果钱小于0.01  那么就传0 其他的传递-1
 
- 				'UsableQtyOfInv'=>0,//文档中未查询到
 
- 				'PubDescSeg3'=>'',
 
- 				'PubDescSeg4'=>'',
 
- 				'PriceList'=>'',//价表编码 (该属性可为空,且无默认值)
 
- 				'TaxMoneyTC'=>0,//税额 (该属性可为空,且无默认值)
 
- 				'TaxSchedule'=>'YZ05',//税组合编码 (该属性可为空,且无默认值)  不知道这个是啥 徐凯的老代码是这么写的
 
- 				'DescFlexField'=>[
 
- 					'PubDescSeg3'=>'',
 
- 				],
 
- 				'OrderByQtyTU'=>$v['dcsl'],//销售数量 (该属性可为空,且无默认值)
 
- 				'OrderByQtyPU'=>$v['dcsl'],//计价数量 (该属性可为空,且无默认值)
 
- 				'OrderPriceTC'=>'',//定价 (该属性可为空,且无默认值)
 
- 				'Memo'=>'',//备注
 
- 			];
 
- 		}
 
- 		$data = [];
 
- 		$data[] = [
 
- 			"OrderBy"=>$params['yyid'],//用友的商户的id
 
- 			"OtherID"=>$params['number'],//第三方传入ID
 
- 			"SaleDepartment"=>"",//部门编码  可为空
 
- 			"DocumentType"=>"SO1",//单据类型编码  标准销售单  So1是默认值
 
- 			"DocNo"=>'',//单据类型编码
 
- 			"AC"=>"C001",//人民币
 
- 			"TC"=>"C001",//人民币
 
- 			"ShipToSite"=>"",//收货位置编码
 
- 			"PubDescSeg2"=>"",
 
- 			"SOSrcType"=>0,
 
- 			"Seller"=>"",//业务员编码  可为空
 
- 			"ConfirmTerm"=>"",//但是现有文档没有
 
- 			"Memo"=>$params['number'],//备注
 
- 			"ShipRule"=>"",//但是现有文档没有
 
- 			"SOLineDTOList"=>$so_lines,
 
- 		];
 
- 		return $data;
 
- 	}
 
- 	
 
- 	public function xsdTwoDataTrans($params){
 
- 		$so_lines = [];
 
- 		foreach($params['list'] as $k=>$v){
 
- 			
 
- 			$so_lines[] = [
 
- 				'TU'=>"条",//销售单位编码
 
- 				'ItemCode'=>$v['jm'],//用友的编码
 
- 				'PU'=>'条',//计价单位编码
 
- 				"ShipTogetherFlag"=>-1,//成套收发货标志
 
- 				'DocLineNo'=>$k+1,
 
- 				'CustomerItemNo'=>'',//客户料号
 
- 				'CustomerItemName'=>'',//客户品名 
 
- 				'FinallyPriceTC'=>$v['final_price'],//最终价  单价
 
- 				'PubDescSeg10'=>'',
 
- 				'SOShiplineDTOList'=>[  //销售订单计划行
 
- 					[
 
- 						'IsMRPRequire',  //MRP需求
 
- 						'DemandType',//需求分类
 
- 						'RequireDate'=>date('m/d/Y H:i:s',$params['time']),
 
- 					]
 
- 				],
 
- 				'RecTerm'=>'',//目前找不到了
 
- 				'FreeType'=>($v['final_price'] < 0.01)?0: -1,//免费品类型 (无默认值请传-1;赠品请传0;备损品请传1)   徐凯设定的是  如果钱小于0.01  那么就传0 其他的传递-1
 
- 				'UsableQtyOfInv'=>0,//文档中未查询到
 
- 				'PubDescSeg3'=>'',
 
- 				'PubDescSeg4'=>'',
 
- 				'PriceList'=>'',//价表编码 (该属性可为空,且无默认值)
 
- 				'TaxMoneyTC'=>0,//税额 (该属性可为空,且无默认值)
 
- 				'TaxSchedule'=>'YZ05',//税组合编码 (该属性可为空,且无默认值)  不知道这个是啥 徐凯的老代码是这么写的
 
- 				'DescFlexField'=>[
 
- 					'PubDescSeg3'=>'',
 
- 				],
 
- 				'OrderByQtyTU'=>$v['dcsl'],//销售数量 (该属性可为空,且无默认值)
 
- 				'OrderByQtyPU'=>$v['dcsl'],//计价数量 (该属性可为空,且无默认值)
 
- 				'OrderPriceTC'=>'',//定价 (该属性可为空,且无默认值)
 
- 				'Memo'=>'',//备注
 
- 			];
 
- 		}
 
- 		$data = [];
 
- 		$data[] = [
 
- 			"OrderBy"=>$params['yyid'],//用友的商户的id
 
- 			"OtherID"=>$params['number'],//第三方传入ID
 
- 			"SaleDepartment"=>"",//部门编码  可为空
 
- 			"DocumentType"=>"SO1",//单据类型编码  标准销售单  So1是默认值
 
- 			"DocNo"=>'',//单据类型编码
 
- 			"AC"=>"C009",//美金
 
- 			"TC"=>"C009",//美金
 
- 			"ShipToSite"=>"",//收货位置编码
 
- 			"PubDescSeg2"=>"",
 
- 			"SOSrcType"=>0,
 
- 			"Seller"=>"",//业务员编码  可为空
 
- 			"ConfirmTerm"=>"",//但是现有文档没有
 
- 			"Memo"=>$params['number'],//备注
 
- 			"ShipRule"=>"",//但是现有文档没有
 
- 			"SOLineDTOList"=>$so_lines,
 
- 		];
 
- 		return $data;
 
- 	}
 
- 	public function cgdDataTrans($params){
 
- 		$po_lines = [];
 
- 		foreach($params['list'] as $k=>$v){
 
- 			$po_lines[] = [
 
- 				//"POLineID"=>0,//采购订单行ID
 
- 				'ItemInfo'=>[
 
- 					'm_code'=>$v['jm'],//用友料号
 
- 				],
 
- 				"ReqQtyTU"=>$v['dcsl'],//需求数量
 
- 				"ReqQtyTBU"=>0,//确认数量
 
- 				"SupplierConfirmQtyTU"=>$v['dcsl'],//确认数量
 
- 				"SupplierConfirmQtyTBU"=>0,//确认数量
 
- 				"FinallyPriceTC"=>$v['final_price'],//最终价格
 
- 				"IsPresent"=>false,//赠品
 
- 				
 
- 			];
 
- 			
 
- 		}
 
- 		$data = [];
 
- 		$data[] = [
 
- 			'DocNo'=>"",
 
- 			"DocumentType"=>'PO01',//PO01  标准采购默认值
 
- 			'BizType'=>0,//业务类型:AR_Invoice 销售发票 0 (默认值),PM005 标准采购 316 ,PM055 全程委外采购 326 ,PM050 工序外协采购 325
 
- 			"BusinessDate"=>date("Y-m-d H:i:s"),
 
- 			'OtherID'=>$params['number'],
 
- 			'DescFlexField'=>(object)[
 
- 			],
 
- 			'TC'=>'C001',
 
- 			'AC'=>'C001',
 
- 			"Memo"=>$params['number'],
 
- 			'Supplier'=>[
 
- 				'Code'=>$params['gys'],//供应商编码  到时间找下
 
- 			],
 
- 			'IsPriceIncludeTax'=>false,
 
- 			"POLineDTOList"=>$po_lines
 
- 		];
 
- 		
 
- 		return $data;
 
- 	}
 
- 	public function yybzchDataTrans($params){
 
- 		$data = [];
 
- 		foreach($params['list'] as $k=>$v ){
 
- 			
 
- 			$data[] = [
 
- 				"SrcDocType"=>1,//售订单 Value:1 出货计划 Value:2 销售合同 Value:3 预出货单 Value:4
 
- 				"SrcDocNo"=>$params['xs_no'],//来源单号
 
- 				"SrcDocLineNo"=>$v['doclineno'],
 
- 				"SrcDocSubLineNo"=>$v['docsublineno'],
 
- 				//"WH"=>'',//存储地点ID   找不到id  那就找个WHcode
 
- 				'WHCode'=>$params['drckbm'],//存储地点code   这里的参数为啥这么诡异 是因为 不想在很设置参数了 都按照调出的写法组件数据了
 
- 				"CurShipQty1"=>$v['dcsl'],//本次出货量
 
- 				"SOIsConsign"=>false,//	是否补货
 
- 				"OptionalSplitTerm"=>[],
 
- 				"DescFlexField"=>(object)[],
 
- 				"LineDescFlexField"=>(object)[],
 
- 				//"ShipDate",//出货单日期(该属性可为空,且无默认值)
 
- 				//"ShipConfirmDate"//出货确认日期(该属性可为空,且无默认值)
 
- 				"DocStatus"=>0,//单据状态:0开立;1审核中;2已审核,可用值:0,1,2,3
 
- 			];
 
- 		}
 
- 		return $data;
 
- 	}
 
- 	
 
- 	//销售单的数据转化
 
- 	public function cjlpDataTrans($params){
 
- 		$list = [];
 
- 		foreach($params['list'] as $k=>$v){
 
- 			$list[] = [
 
- 				"Code"=>$v['jm'],//料号
 
- 				"Code1"=>"",//参考料号1
 
- 				"Name"=>$v['zh'],//品名
 
- 				"MainItemCategory"=>[
 
- 					"Code"=>$v['bm']
 
- 				],
 
- 				"Org"=>[
 
- 					"Code"=>$params['ztcode']
 
- 				],
 
- 				"OtherID"=>1,
 
- 				"PurchaseInfo"=>[
 
- 					"BudgetControlType"=>-1,//预算控制方式
 
- 					"PriceSource"=>2,//取价来源
 
- 					"InquireRule"=>-1,//询价策略
 
- 					'InquireFixedPeriod'=>0,//间隔期
 
- 					"StatisticPeriod"=>-1,//配额统计期间
 
- 					"IsPUTradePathModify"=>true,//采购贸易路径可改
 
- 					"IsPURtnTradePathModify"=>true,//采购退货贸易路径可改
 
- 				],
 
- 				"InventoryUOM"=>[
 
- 					"Code"=>'条'
 
- 				],
 
- 				"InventorySecondUOM"=>[
 
- 					"Code"=>''
 
- 				],
 
- 				"IsDualUOM"=>false,
 
- 				"InventoryInfo"=>[
 
- 					"InventoryPlanningMethod"=>4,//规划方法
 
- 					"InventoryPlanTime"=>-1,//
 
- 					"TurnOverRate"=>1,//
 
- 					"ReserveMode"=>-1,//
 
- 					"SupplyMethod"=>-1,//
 
- 				],
 
- 				"DescFlexField"=>[
 
- 					"PrivateDescSeg1"=>"01",
 
- 					"PubDescSeg5"=>"01"
 
- 				],
 
- 				"Description"=>$v['title'],
 
- 				"ItemForm"=>2001,//料品形态
 
- 				"ItemFormAttribute"=>10,//料品形态属性
 
- 				"IsInventoryEnable"=>true,//可库存交易
 
- 				"IsPurchaseEnable"=>true,//可采购
 
- 				"IsSalesEnable"=>true,//可采购
 
- 				"IsBuildEnable"=>true,//可生产
 
- 				"IsOutsideOperationEnable"=>true,//可委外
 
- 				"IsMRPEnable"=>true,//可MRP
 
- 				"IsBOMEnable"=>true,//可BOM
 
- 				"IsCostCalByGrade"=>false,//等级影响成本
 
- 				"IsCostCalByPotency"=>false,//成分影响成本
 
- 				"IsGradeControl"=>false,//等级控制
 
- 				"StandardGrade"=>-1,//标准等级
 
- 				"StartGrade"=>-1,//起始等级
 
- 				"EndGrade"=>-1,//结束等级
 
- 				"IsPotencyControl"=>false,//成分控制
 
- 				"StandardPotency"=>-1,//标准成分
 
- 				"StartPotency"=>-1,//起始成分
 
- 				"EndPotency"=>-1,//	结束成分
 
- 			];
 
- 			
 
- 		}
 
- 		return $list;
 
- 	}
 
- 	
 
- }
 
 
  |