Model_apiyy.php 60 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385
  1. <?php
  2. class Model_apiyy extends Lin_Model
  3. {
  4. function __construct(){
  5. parent::__construct();
  6. $this->load->database();
  7. $this->table = 'apiyy';
  8. $this->load_table('apiyy');
  9. $this->load->_model("Model_logic_ding","logic_ding");
  10. }
  11. public function get_number($number)
  12. {
  13. return $this->find("number = '$number'");
  14. }
  15. public function get_cjkh($data)//创建客户
  16. {
  17. $list["0"]["OtherID"] = $data['id'];//客户ID
  18. $list["0"]["Code"] = $data['id'];//客户编码
  19. $list["0"]["Name"] = $data['name'];//客户名称
  20. $list["0"]["ShortName"] = $data['name'];//客户简称
  21. $list["0"]["TradeCategory"] = 0;
  22. $list["0"]["State"] = 0;
  23. $list["0"]["IsHoldRelease"] = false;
  24. $list["0"]["IsMISC"] = false;
  25. $list["0"]["RegisterCapital"] = 0;
  26. $list["0"]["Turnover"] = 0;
  27. $list["0"]["EmployeeCount"] = 0;
  28. $list["0"]["SaleType"] = 0;
  29. $list["0"]["Bargain"] = 0;
  30. $list["0"]["IsTaxPrice"] = true;
  31. $list["0"]["PriceListID"] = 0;
  32. $list["0"]["IsPriceListModify"] = true;
  33. $list["0"]["IsHaveContract"] = false;
  34. $list["0"]["SupplySource"] = 0;
  35. $list["0"]["DemandTransType"] = 0;
  36. $list["0"]["IsShipmentModify"] = true;
  37. $list["0"]["TransitLeadTime"] = 0;
  38. $list["0"]["IsRecTermModify"] = true;
  39. $list["0"]["IsDeposit"] = true;
  40. $list["0"]["IsPreReceival"] = false;
  41. $list["0"]["PreRcvRate"] = 0;
  42. $list["0"]["IsPreRcvRateModify"] = false;
  43. $list["0"]["IsSalesDiscount"] = true;
  44. $list["0"]["QualityPledge"] = 0;
  45. $list["0"]["IsARCfmModify"] = true;
  46. $list["0"]["IsBillByBalance"] = true;
  47. $list["0"]["InvoiceVerificationOrder"] = 0;
  48. $list["0"]["VerificationMode"] = 0;
  49. $list["0"]["IsByAccountAge"] = true;
  50. $list["0"]["IsPost"] = true;
  51. $list["0"]["CheckAccountPeriod"] = 0;
  52. $list["0"]["IsCreditCheck"] = true;
  53. $list["0"]["CustomerSiteDTOs"]["0"]["Code"] = $data['id'];
  54. $list["0"]["CustomerSiteDTOs"]["0"]["SrcRowID"] = 0;
  55. $list["0"]["CustomerSiteDTOs"]["0"]["OperateType"] = 0;
  56. $list["0"]["CustomerSiteDTOs"]["0"]["IsShipTo"] = true;
  57. $list["0"]["CustomerSiteDTOs"]["0"]["IsDefaultShipTo"] = true;
  58. $list["0"]["CustomerSiteDTOs"]["0"]["IsBillTo"] = true;
  59. $list["0"]["CustomerSiteDTOs"]["0"]["IsDefaultBillTo"] = true;
  60. $list["0"]["CustomerSiteDTOs"]["0"]["IsClaim"] = true;
  61. $list["0"]["CustomerSiteDTOs"]["0"]["IsDefaultClaim"] = true;
  62. $list["0"]["CustomerSiteDTOs"]["0"]["IsPayment"] = true;
  63. $list["0"]["CustomerSiteDTOs"]["0"]["IsDefaultPayment"] = true;
  64. $list["0"]["CustomerSiteDTOs"]["0"]["IsContrast"] = true;
  65. $list["0"]["CustomerSiteDTOs"]["0"]["IsDefaultContrast"] = true;
  66. $list["0"]["CustomerSiteDTOs"]["0"]["PriceListID"] = 0;
  67. $list["0"]["CustomerSiteDTOs"]["0"]["IsPriceListModify"] = true;
  68. $list["0"]["CustomerSiteDTOs"]["0"]["SupplySource"] = 0;
  69. $list["0"]["CustomerSiteDTOs"]["0"]["DemandTransType"] = 0;
  70. $list["0"]["CustomerSiteDTOs"]["0"]["IsShippmentRuleEditable"] = true;
  71. $list["0"]["CustomerSiteDTOs"]["0"]["ShipmentMode"] = 0;
  72. $list["0"]["CustomerSiteDTOs"]["0"]["TransitLeadTime"] = 0;
  73. $list["0"]["CustomerSiteDTOs"]["0"]["ShippingHavenID"] = 0;
  74. $list["0"]["CustomerSiteDTOs"]["0"]["TargetHavenID"] = 0;
  75. $list["0"]["CustomerSiteDTOs"]["0"]["IsPaymentTermEditable"] = true;
  76. $list["0"]["CustomerSiteDTOs"]["0"]["IsSalesDiscount"] = true;
  77. $list["0"]["CustomerSiteDTOs"]["0"]["NeedDeposit"] = true;
  78. $list["0"]["CustomerSiteDTOs"]["0"]["IsPrePayment"] = true;
  79. $list["0"]["CustomerSiteDTOs"]["0"]["IsPostBankCheckList"] = true;
  80. $list["0"]["CustomerSiteDTOs"]["0"]["InvoiceVerificationOrder"] = 0;
  81. $list["0"]["CustomerSiteDTOs"]["0"]["VerificationMode"] = 0;
  82. $list["0"]["CustomerSiteDTOs"]["0"]["BankCheckPeriod"] = 0;
  83. $list["0"]["CustomerSiteDTOs"]["0"]["QualityGuaranteeType"] = 0;
  84. $list["0"]["RecervalTerm"]["Code"] = 'YZ01';
  85. $list["0"]["ARConfirmTerm"]["Code"] = 'YZ01';
  86. $list["0"]["ShippmentRule"]["Code"] = '01';
  87. $list = json_encode($list);
  88. $token = $this->setting->get_yytoken_130();
  89. $url = 'http://172.31.105.167/U9C/webapi/Customer/Create';
  90. $header[] = "Content-Type: application/json";
  91. $header[] = "Token: ".$token;
  92. $ch = curl_init();
  93. curl_setopt($ch, CURLOPT_URL, $url);
  94. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  95. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  96. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  97. curl_setopt($ch, CURLOPT_POST, 1);
  98. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  99. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  100. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  101. $res = curl_exec($ch);
  102. $res = json_decode($res,true);
  103. return $res;
  104. }
  105. public function get_cjlp($data)//创建料品
  106. {
  107. $list["0"]["Code"] = $data['jm'];//料号,SKU
  108. $list["0"]["Code1"] = '';
  109. $list["0"]["Name"] = $data['zh'];//产品名称
  110. $list["0"]["MainItemCategory"]["Code"] = $data['bm'];
  111. $list["0"]["Org"]["Code"] = 001;
  112. $list["0"]["OtherID"] = 1;
  113. $list["0"]["PurchaseInfo"]["BudgetControlType"] = -1;
  114. $list["0"]["PurchaseInfo"]["PriceSource"] = 2;
  115. $list["0"]["PurchaseInfo"]["InquireRule"] = -1;
  116. $list["0"]["PurchaseInfo"]["InquireFixedPeriod"] = 0;
  117. $list["0"]["PurchaseInfo"]["StatisticPeriod"] = -1;
  118. $list["0"]["PurchaseInfo"]["IsPUTradePathModify"] = true;
  119. $list["0"]["PurchaseInfo"]["IsPURtnTradePathModify"] = true;
  120. $list["0"]["InventoryUOM"]["Code"] = '条';
  121. $list["0"]["InventorySecondUOM"]["Code"] = '';
  122. $list["0"]["IsDualUOM"] = false;
  123. $list["0"]["InventoryInfo"]["InventoryPlanningMethod"] = 4;
  124. $list["0"]["InventoryInfo"]["InventoryPlanTime"] = -1;
  125. $list["0"]["InventoryInfo"]["TurnOverRate"] = 1;
  126. $list["0"]["InventoryInfo"]["ReserveMode"] = -1;
  127. $list["0"]["InventoryInfo"]["SupplyMethod"] = -1;
  128. $list["0"]["DescFlexField"]["PrivateDescSeg1"] = 01;
  129. $list["0"]["DescFlexField"]["PubDescSeg5"] = 01;
  130. $list["0"]["Description"] = $data['title'];
  131. $list["0"]["ItemForm"] = 2001;
  132. $list["0"]["ItemFormAttribute"] = 10;
  133. $list["0"]["IsInventoryEnable"] = true;
  134. $list["0"]["IsPurchaseEnable"] = true;
  135. $list["0"]["IsSalesEnable"] = true;
  136. $list["0"]["IsBuildEnable"] = true;
  137. $list["0"]["IsOutsideOperationEnable"] = true;
  138. $list["0"]["IsMRPEnable"] = true;
  139. $list["0"]["IsBOMEnable"] = true;
  140. $list["0"]["IsCostCalByGrade"] = false;
  141. $list["0"]["IsCostCalByPotency"] = false;
  142. $list["0"]["IsGradeControl"] = false;
  143. $list["0"]["StandardGrade"] = -1;
  144. $list["0"]["StartGrade"] = -1;
  145. $list["0"]["EndGrade"] = -1;
  146. $list["0"]["IsPotencyControl"] = false;
  147. $list["0"]["StandardPotency"] = -1;
  148. $list["0"]["StartPotency"] = -1;
  149. $list["0"]["EndPotency"] = -1;
  150. $list = json_encode($list);
  151. $token = $this->setting->get_yytoken_130();
  152. $url = 'http://172.31.105.167/U9C/webapi/ItemMaster/Create';
  153. $header[] = "Content-Type: application/json";
  154. $header[] = "Token: ".$token;
  155. $ch = curl_init();
  156. curl_setopt($ch, CURLOPT_URL, $url);
  157. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  158. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  159. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  160. curl_setopt($ch, CURLOPT_POST, 1);
  161. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  162. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  163. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  164. $res = curl_exec($ch);
  165. //$this->logic_ding->sendToDing("u9创建料品监听(".$list."(【".$res."】");
  166. $res = json_decode($res,true);
  167. if(isset($res['Data'][0]))
  168. {
  169. $this->get_lpxf($data);
  170. }
  171. return $res;
  172. }
  173. public function get_lpxf($data)//传递料品 也可以叫做档案下发 但是档案下发是啥意思 我不太懂
  174. {
  175. $list["0"]["EntityFullName"] = 'UFIDA.U9.CBO.SCM.Item.ItemMaster';
  176. $list["0"]["EntityCode"] = $data['jm'];//料号,SKU
  177. $list["0"]["FromOrgCode"] = "130";
  178. // $list["0"]["ToOrgCodeList"] = array(101,120,110);
  179. $list["0"]["ToOrgCodeList"] = array(101,120,110,140);//新增了一个香港组织 需要同步料品到香港组织
  180. $list["0"]["OtherID"] = "";
  181. $list["0"]["ContextDTO"]["EntCode"] = "001";
  182. $list["0"]["ContextDTO"]["OrgCode"] = "130";
  183. $list["0"]["ContextDTO"]["UserCode"] = "xk";
  184. $list["0"]["ContextDTO"]["UserPwd"] = "";
  185. $list = json_encode($list);
  186. $token = $this->setting->get_yytoken_130();
  187. $url = 'http://172.31.105.167/U9C/webapi/ControlObjSend/ControlObjSend';
  188. $header[] = "Content-Type: application/json";
  189. $header[] = "Token: ".$token;
  190. $ch = curl_init();
  191. curl_setopt($ch, CURLOPT_URL, $url);
  192. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  193. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  194. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  195. curl_setopt($ch, CURLOPT_POST, 1);
  196. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  197. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  198. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  199. $res = curl_exec($ch);
  200. $res = json_decode($res,true);
  201. return $res;
  202. }
  203. public function get_cg($data)//无源采购
  204. {
  205. $time = time();
  206. if($time > 1717171200 && $time < 1717257599)
  207. {
  208. $time = time()-24*3600;
  209. }
  210. $list["0"]["BusinessDate"] = date("Y-m-d H:i:s",$time);
  211. $list["0"]["DocumentType"] = "PO01";
  212. $list["0"]["POLineDTOList"][0]["ItemInfo"]['m_code'] = $data['sku'];//料号
  213. $list["0"]["POLineDTOList"][0]["SupplierConfirmQtyTU"] = $data['ts'];//数量
  214. $list["0"]["POLineDTOList"][0]["ReqQtyTU"] = $data['ts'];
  215. //$list["0"]["POLineDTOList"][0]["FinallyPriceTC"] = '';//价格
  216. $list["0"]["POLineDTOList"][0]["SupplierConfirmQtyTBU"] = 0;
  217. //$list["0"]["POLineDTOList"][0]["DescFlexField"]['PubDescSeg3'] = 75;
  218. $list["0"]["POLineDTOList"][0]["ReqQtyTBU"] = 0;
  219. $list["0"]["POLineDTOList"][0]["POLineID"] = 0;
  220. $list["0"]["POLineDTOList"][0]["IsPresent"] = false;
  221. $list["0"]['BizType'] = 0;
  222. $list["0"]['DocNo'] = "";
  223. $list["0"]['OtherID'] = "";
  224. $list["0"]['DescFlexField'] = (object)array();
  225. $list["0"]['Supplier']['Code'] = $data['purchase'];
  226. $list["0"]['IsPriceIncludeTax'] = false;
  227. $list = json_encode($list);
  228. $token = $this->setting->get_yytoken_130();
  229. $url = 'http://172.31.105.167/U9C/webapi/PurchaseOrder/Create';
  230. $header[] = "Content-Type: application/json";
  231. $header[] = "Token: ".$token;
  232. $ch = curl_init();
  233. curl_setopt($ch, CURLOPT_URL, $url);
  234. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  235. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  236. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  237. curl_setopt($ch, CURLOPT_POST, 1);
  238. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  239. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  240. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  241. $res = curl_exec($ch);
  242. $res = json_decode($res,true);
  243. return $res;
  244. }
  245. //https://openapi.yyu9c.com/doc.html#/U9C%20OPENAPI/Receivement/Receivement_CreateRcvBySrcPO
  246. public function get_bzsh($data)//标准收货
  247. {
  248. $time = time();
  249. if($time > 1717171200 && $time < 1717257599)
  250. {
  251. $time = time()-24*3600;
  252. }
  253. $list["0"]["potorcvDTOS"][0]["BusinessDate"] = date("Y-m-d H:i:s",$time);
  254. $list["0"]["potorcvDTOS"][0]["Amount1"] = $data['ts'];//收货数量
  255. $list["0"]["potorcvDTOS"][0]["Amount2"] = 0;//收货数量
  256. $list["0"]["potorcvDTOS"][0]["PONo"] = $data['od'];//订单号
  257. $list["0"]["potorcvDTOS"][0]["POLineNo"] = 10;
  258. $list["0"]["potorcvDTOS"][0]["POShipLineNo"] = 0;
  259. $list["0"]["potorcvDTOS"][0]["POShipLineKey"] = 0;
  260. $list["0"]["potorcvDTOS"][0]["DescFlexField"] = (object)array();
  261. $list["0"]["potorcvDTOS"][0]["Memo"] = $data['title'];
  262. /** 库位
  263. $list["0"]["potorcvDTOS"][0]["rlInfo"]['RcvLineLocations'][0]['BinCode'] = "";
  264. $list["0"]["potorcvDTOS"][0]["rlInfo"]['RcvLineLocations'][0]['LocationQtyTU'] = 0;
  265. $list["0"]["potorcvDTOS"][0]["rlInfo"]['RcvLineLocations'][0]['LocationNo'] = 0;
  266. $list["0"]["potorcvDTOS"][0]["rlInfo"]['RcvLineLocations'][0]['TallyTime'] = "";
  267. **/
  268. $list["0"]["potorcvDTOS"][0]["rlInfo"]["Wh"]['m_iD'] = 0;
  269. $list["0"]["potorcvDTOS"][0]["rlInfo"]["Wh"]['m_code'] = 13001;//许昌仓
  270. $list["0"]["potorcvDTOS"][0]["rlInfo"]["Wh"]['m_name'] = "";
  271. $list["0"]["potorcvDTOS"][0]["rlInfo"]["Wh"]['sysState'] = 0;
  272. $list["0"]["potorcvDTOS"][0]["rlInfo"]["StorageType"] = 4;
  273. $list["0"]["SplitBy"] = array();
  274. $list["0"]["IsApproved"] = false;
  275. $list["0"]["DocStatus"] = 3;
  276. $list["0"]["OtherID"] = "";
  277. $list = json_encode($list);
  278. $token = $this->setting->get_yytoken_130();
  279. $url = 'http://172.31.105.167/U9C/webapi/Receivement/CreateRcvBySrcPO';
  280. $header[] = "Content-Type: application/json";
  281. $header[] = "Token: ".$token;
  282. $ch = curl_init();
  283. curl_setopt($ch, CURLOPT_URL, $url);
  284. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  285. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  286. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  287. curl_setopt($ch, CURLOPT_POST, 1);
  288. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  289. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  290. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  291. $res = curl_exec($ch);
  292. $res = json_decode($res,true);
  293. return $res;
  294. }
  295. public function get_sc($data)//生产订单
  296. {
  297. $time = time();
  298. if($time > 1717171200 && $time < 1717257599)
  299. {
  300. $time = time()-24*3600;
  301. }
  302. $list["0"]["OtherID"] = '';
  303. $list["0"]["Org"]['Code'] = "120";
  304. $list["0"]["ItemMaster"]["Code"] = $data['sku'];
  305. $list["0"]["DocType"]["Code"] = $data['djlx'];
  306. $list["0"]["Department"]["Code"] = "12008";
  307. $list["0"]["ExpandLevel"] = 0;
  308. $list["0"]["AlternateType"] = 0;
  309. $list["0"]["RoutingAlternate"] = 0;
  310. $list["0"]["RoutingEffeDate"] = '';
  311. $list["0"]["ProductQty"] = $data['ts'];
  312. $list["0"]["ProductUOM"]["Code"] = '条';
  313. $list["0"]["StartDate"] = date('Y-m-d',$time);
  314. $list["0"]["CompleteDate"] = date('Y-m-d',$time);//$data['time']
  315. $list["0"]["MOSourceDocType"] = 0;
  316. $list["0"]["OwnerOrg"]["Code"] = "120";
  317. $list["0"]["SCVWh"]["Code"] = $data['drck'];
  318. $list["0"]["DemandCode"] = -1;
  319. $list["0"]["IsFirmed"] = false;
  320. $list["0"]["IsCapacityLimit"] = false;
  321. $list["0"]["Priority"] = 0;
  322. $list["0"]["CUD"] = 0;
  323. $list["0"]["BOMType"] = 0;
  324. $list["0"]["Description"] = $data['title'];
  325. $list["0"]["MRPQty"] = 0;
  326. $list["0"]["MOID"] = 0;
  327. $list["0"]["PBUToSBURate"] = 0;
  328. $list["0"]["PBUToCBURate"] = 0;
  329. $list["0"]["DescFlexField"]["PubDescSeg2"] = $data['yyid'];
  330. $list["0"]["DescFlexField"]["PubDescSeg4"] = $data['number'];
  331. $list["0"]["DescFlexField"]["PubDescSeg5"] = $data['shipremarks'];
  332. $list = json_encode($list);
  333. $token = $this->setting->get_yytoken_120();
  334. $url = 'http://172.31.105.167/U9C/webapi/MODoc/Create';
  335. $header[] = "Content-Type: application/json";
  336. $header[] = "Token: ".$token;
  337. $ch = curl_init();
  338. curl_setopt($ch, CURLOPT_URL, $url);
  339. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  340. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  341. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  342. curl_setopt($ch, CURLOPT_POST, 1);
  343. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  344. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  345. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  346. $res = curl_exec($ch);
  347. $res = json_decode($res,true);
  348. return $res;
  349. }
  350. public function get_chd($data)//出货单一次出整个订单
  351. {
  352. $list[0]["SrcDocType"] = 1;
  353. $list[0]["SrcDocNo"] = $data['number'];
  354. $list[0]["SrcDocLineNo"] = $data['i'];
  355. $list[0]["SrcDocSubLineNo"] = 10;
  356. $list[0]["WH"] = 1002309200047445;
  357. $list[0]["CurShipQty1"] = $data['ts'];
  358. $list[0]["SOIsConsign"] = false;
  359. $list[0]["OptionalSplitTerm"] = array();
  360. $list[0]["DescFlexField"] = (object)array();
  361. $list[0]["LineDescFlexField"] = (object)array();
  362. //$list[0]["ShipDate"] = date("Y-m-d",$data['librarytime']+24*3600);
  363. //$list[0]["ShipConfirmDate"] = date("Y-m-d",time());
  364. $list[0]["DocStatus"] = 0;
  365. $list = json_encode($list);
  366. $token = $this->setting->get_yytoken_130();
  367. $url = 'http://172.31.105.167/U9C/webapi/Ship/CreateBySrcDoc';
  368. $header[] = "Content-Type: application/json";
  369. $header[] = "Token: ".$token;
  370. $ch = curl_init();
  371. curl_setopt($ch, CURLOPT_URL, $url);
  372. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  373. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  374. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  375. curl_setopt($ch, CURLOPT_POST, 1);
  376. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  377. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  378. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  379. $res = curl_exec($ch);
  380. $res = json_decode($res,true);
  381. return array($res,$list);
  382. }
  383. public function get_chd_zdd($data)//出货单一次出整个订单
  384. {
  385. for($i=0;$i<count($data['lh']);$i++)
  386. {
  387. $list[$i]["SrcDocType"] = 1;
  388. $list[$i]["SrcDocNo"] = $data['number'];
  389. $list[$i]["SrcDocLineNo"] = $i+1;
  390. $list[$i]["SrcDocSubLineNo"] = 10;
  391. $list[$i]["WH"] = 1002309200047445;
  392. $list[$i]["CurShipQty1"] = $data['lh'][$i]['ts'];
  393. $list[$i]["SOIsConsign"] = false;
  394. $list[$i]["OptionalSplitTerm"] = array();
  395. $list[$i]["DescFlexField"] = (object)array();
  396. $list[$i]["LineDescFlexField"] = (object)array();
  397. //$list[$i]["ShipDate"] = date("Y-m-d",$data['librarytime']+24*3600);
  398. //$list[$i]["ShipConfirmDate"] = date("Y-m-d",time());
  399. $list[$i]["DocStatus"] = 0;
  400. }
  401. $list = json_encode($list);
  402. $token = $this->setting->get_yytoken_130();
  403. $url = 'http://172.31.105.167/U9C/webapi/Ship/CreateBySrcDoc';
  404. $header[] = "Content-Type: application/json";
  405. $header[] = "Token: ".$token;
  406. $ch = curl_init();
  407. curl_setopt($ch, CURLOPT_URL, $url);
  408. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  409. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  410. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  411. curl_setopt($ch, CURLOPT_POST, 1);
  412. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  413. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  414. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  415. $res = curl_exec($ch);
  416. $res = json_decode($res,true);
  417. return array($res,$list);
  418. }
  419. public function get_chd_cs($data)//出货单
  420. {
  421. $list["0"]["SrcDocType"] = 1;
  422. $list["0"]["SrcDocNo"] = $data['number'];
  423. $list["0"]["SrcDocLineNo"] = 1;
  424. $list["0"]["SrcDocSubLineNo"] = 10;
  425. $list["0"]["WH"] = 1002309200047445;
  426. $list["0"]["CurShipQty1"] = $data['ts'];
  427. $list["0"]["SOIsConsign"] = false;
  428. $list["0"]["OptionalSplitTerm"] = array();
  429. $list["0"]["DescFlexField"] = (object)array();
  430. $list["0"]["LineDescFlexField"] = (object)array();
  431. //$list["0"]["ShipDate"] = date("Y-m-d",$data['librarytime']+24*3600);
  432. $list["0"]["ShipConfirmDate"] = date("Y-m-d",$data['librarytime']);
  433. $list["0"]["DocStatus"] = 0;
  434. $list = json_encode($list);
  435. return $list;
  436. }
  437. public function get_cprk($data)//产品入库
  438. {
  439. $time = time();
  440. if($time > 1717171200 && $time < 1717257599)
  441. {
  442. $time = time()-24*3600;
  443. }
  444. $list["0"]["DocNo"] = '';
  445. $list["0"]["CompleteList"]["0"]["MOKey"]["OtherID"] = '';
  446. $list["0"]["CompleteList"]["0"]["MOKey"]["ID"] = 0;
  447. $list["0"]["CompleteList"]["0"]["MOKey"]["DocNo"] = $data['rkcode'];
  448. $list["0"]["CompleteList"]["0"]["MOKey"]["OrgID"] = 0;
  449. $list["0"]["CompleteList"]["0"]["MOKey"]["IsSuccess"] = 1;
  450. $list["0"]["CompleteList"]["0"]["MOKey"]["ErrorInfo"] = '';
  451. $list["0"]["CompleteList"]["0"]["MOKey"]["CUD"] = 0;
  452. $list["0"]["CompleteList"]["0"]["Wh"]["Code"] = 02;
  453. $list["0"]["CompleteList"]["0"]["LineNum"] = 0;
  454. $list["0"]["CompleteList"]["0"]["StorageType"] = 4;
  455. $list["0"]["CompleteList"]["0"]["Grade"] = 0;
  456. $list["0"]["CompleteList"]["0"]["Element"] = 0;
  457. $list["0"]["CompleteList"]["0"]["CompleteQty"] = $data['ts'];
  458. $list["0"]["CompleteList"]["0"]["CompleteQtyByWhUOM"] = $data['ts'];
  459. $list["0"]["CompleteList"]["0"]["CompleteQtyByCostUOM"] = $data['ts'];
  460. $list["0"]["CompleteList"]["0"]["CUD"] = 0;
  461. $list["0"]["CompleteList"]["0"]["OwnerOrg"]["Code"] = 120;
  462. $list["0"]["CompleteList"]["0"]["OutputType"] = 0;
  463. $list["0"]["CompleteList"]["0"]["Item"]["Code"] = $data['jm'];
  464. $list["0"]["CompleteList"]["0"]["ScrapQty"] = 0;
  465. $list["0"]["CompleteList"]["0"]["ScrapQtyByCostUOM"] = 0;
  466. $list["0"]["CompleteList"]["0"]["PUToPBURate"] = 0;
  467. $list["0"]["CompleteList"]["0"]["CUToCBURate"] = 0;
  468. $list["0"]["CompleteList"]["0"]["PBUToCBURate"] = 0;
  469. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["ID"] = 0;
  470. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["DocType"]["Code"] = 0;
  471. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["BusinessDate"] = '';
  472. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["DocNo"] = '';
  473. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["MOSrcDocType"] = 0;
  474. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocOrg"] = 0;
  475. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDoc"]["ID"] = $data['rkid'];
  476. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDoc"]["EntityType"] = 'UFIDA.U9.MO.MO.MO';
  477. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocVer"] = '';
  478. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocLine"]["ID"] = 0;
  479. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocLine"]["EntityType"] = '';
  480. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocSubline"]["ID"] = 0;
  481. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocSubline"]["EntityType"] = '';
  482. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocNo"] = $data['rkid'];
  483. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocLineNo"] = '';
  484. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocSublineNo"] = 10;
  485. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocID"] = $data['rkid'];
  486. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocLineID"] = 0;
  487. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["SourceDoc"]["SrcDocType"] = '';
  488. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["DocDate"] = date("Y-m-d",$time);
  489. //$list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["ActualRcvTime"] = date("Y-m-d",time());
  490. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["RcvOrg"]["Code"] = 120;
  491. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["Org"]["Code"] = 120;
  492. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["Direction"] = 0;
  493. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["DocState"] = 0;
  494. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["RcvDep"]["ID"] = 0;
  495. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["RcvDep"]["Code"] = '';
  496. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["RcvDep"]["Name"] = '';
  497. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["RcvPerson"]["ID"] = 0;
  498. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["RcvPerson"]["Code"] = '';
  499. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["RcvPerson"]["Name"] = '';
  500. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvRptDocDTO"]["OtherID"] = '';
  501. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["ProductUOM"]["Code"] = '条';
  502. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["ProductBaseUOM"]["Code"] = '条';
  503. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["StoreUOM"]["Code"] = '条';
  504. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["StoreBaseUOM"]["Code"] = '条';
  505. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["CoUOM"]["Code"] = '条';
  506. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["CostBaseUOM"]["Code"] = '条';
  507. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["OperationState"] = 0;
  508. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["OutputType"] = 0;
  509. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["Item"]["Code"] = $data['jm'];
  510. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["OwnerOrg"]["Code"] = 120;
  511. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["PUToPBURate"] = 0;
  512. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["SUToSBURate"] = 0;
  513. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["PBUToSBURate"] = 0;
  514. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["CUToCBURate"] = 0;
  515. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["PBUToCBURate"] = 0;
  516. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["Grade"] = 0;
  517. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["Element"] = 0;
  518. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["Wh"]["Code"] = 02;
  519. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["StorageType"] = 4;
  520. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvValiddate"] = 0;
  521. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvQtyByProductUOM"] = 0;
  522. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvQtyByWhUOM"] = 0;
  523. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvQtyByCostUom"] = 0;
  524. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["RcvOrg"]["Code"] = 001;
  525. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["PerformingOrg"]["Code"] = 001;
  526. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["CUD"] = 0;
  527. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["LineNum"] = 0;
  528. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["MO"]["Code"] = $data['rkcode'];
  529. $list["0"]["CompleteList"]["0"]["SourceRcvRptLine"]["ID"] = 0;
  530. $list["0"]["DescFlexField"]["PubDescSeg2"] = $data['kh'];
  531. $list["0"]["DescFlexField"]["PubDescSeg4"] = $data['number'];
  532. $list["0"]["DescFlexField"]["PubDescSeg5"] = $data['shipremarks'];
  533. $list["0"]["DocType"]["Code"] = 0;
  534. $list["0"]["BusinessDate"] = date("Y-m-d H:i:s",$time);
  535. $list["0"]["OtherID"] = '';
  536. $list["0"]["Direction"] = 0;
  537. $list["0"]["IsOffLine"] = 1;
  538. $list["0"]["DocState"] = 0;
  539. $list["0"]["Remark"] = time();
  540. $list["0"]["RcvPerson"]["Code"] = 'ERP';
  541. $list = json_encode($list);
  542. $token = $this->setting->get_yytoken_120();
  543. $url = 'http://172.31.105.167/U9C/webapi/RcvRptDoc/Create';
  544. $header[] = "Content-Type: application/json";
  545. $header[] = "Token: ".$token;
  546. $ch = curl_init();
  547. curl_setopt($ch, CURLOPT_URL, $url);
  548. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  549. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  550. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  551. curl_setopt($ch, CURLOPT_POST, 1);
  552. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  553. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  554. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  555. $res = curl_exec($ch);
  556. $res = json_decode($res,true);
  557. return array($res,$list);
  558. }
  559. public function get_dc($data)//调出
  560. {
  561. $time = time();
  562. if($time > 1717171200 && $time < 1717257599)
  563. {
  564. $time = time()-24*3600;
  565. }
  566. $list["0"]["OtherID"] = $data['number'];
  567. $list["0"]["TransOutDocType_Code"] = 'TransOut001';
  568. $list["0"]["BusinessDate"] = date('Y-m-d',$time);
  569. $list["0"]["TransferDirection"] = 0;
  570. //$list["0"]["DescFlexField"] = (object)array();
  571. //$list["0"]["DescFlexField"]["PubDescSeg2"] = $data['kh'];
  572. //$list["0"]["DescFlexField"]["PubDescSeg4"] = $data['number'];
  573. //$list["0"]["DescFlexField"]["PubDescSeg5"] = $data['shipremarks'];
  574. $list["0"]["TransOutLines"][0]['ItemInfo']['ItemCode'] = $data['jm'];
  575. $list["0"]["TransOutLines"][0]["TransOutWh_Code"] = $data['drck'];
  576. $list["0"]["TransOutLines"][0]["StoreUOM_Code"] = "条";
  577. $list["0"]["TransOutLines"][0]["StoreUOMQty"] = $data['ts'];;
  578. $list["0"]["TransOutLines"][0]["StorageType"] = 4;
  579. $list["0"]["TransOutLines"][0]["LotInfo_Code"] = "";
  580. $list["0"]["TransOutLines"][0]["TransOutOwnerOrg_Code"] = "120";
  581. //$list["0"]["TransOutLines"][0]["DescFlexField"] = (object)array();
  582. $list["0"]["TransOutLines"][0]["DescFlexField"]["PubDescSeg2"] = $data['kh'];
  583. $list["0"]["TransOutLines"][0]["DescFlexField"]["PubDescSeg4"] = $data['number'];
  584. $list["0"]["TransOutLines"][0]["DescFlexField"]["PubDescSeg5"] = $data['shipremarks'];
  585. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransInWh_Code'] = "13001";
  586. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['StorageType'] = 4;
  587. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransInOrg_Code'] = "130";
  588. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransOutOwnerOrg_Code'] = "120";
  589. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['StoreUOMQty'] = $data['ts'];
  590. $list["0"]["TransOutLines"][0]["TransOutBins"][0]['BinInfo_Code'] = "";
  591. $list["0"]["TransOutLines"][0]["TransOutBins"][0]['StoreUOMQty'] = 1;
  592. $list = json_encode($list);
  593. $token = $this->setting->get_yytoken_120();
  594. $url = 'http://172.31.105.167/U9C/webapi/TransferOut/Create';
  595. $header[] = "Content-Type: application/json";
  596. $header[] = "Token: ".$token;
  597. $ch = curl_init();
  598. curl_setopt($ch, CURLOPT_URL, $url);
  599. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  600. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  601. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  602. curl_setopt($ch, CURLOPT_POST, 1);
  603. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  604. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  605. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  606. $res = curl_exec($ch);
  607. $res = json_decode($res,true);
  608. return array($res,$list);
  609. }
  610. public function get_dc_cs($data)//调出
  611. {
  612. $list["0"]["OtherID"] = $data['number'];
  613. $list["0"]["TransOutDocType_Code"] = 'TransOut001';
  614. $list["0"]["BusinessDate"] = date('Y-m-d',time());
  615. $list["0"]["TransferDirection"] = 0;
  616. //$list["0"]["DescFlexField"] = (object)array();
  617. //$list["0"]["DescFlexField"]["PubDescSeg2"] = $data['kh'];
  618. //$list["0"]["DescFlexField"]["PubDescSeg4"] = $data['number'];
  619. //$list["0"]["DescFlexField"]["PubDescSeg5"] = $data['shipremarks'];
  620. $list["0"]["TransOutLines"][0]['ItemInfo']['ItemCode'] = $data['jm'];
  621. $list["0"]["TransOutLines"][0]["TransOutWh_Code"] = $data['drck'];
  622. $list["0"]["TransOutLines"][0]["StoreUOM_Code"] = "条";
  623. $list["0"]["TransOutLines"][0]["StoreUOMQty"] = $data['ts'];;
  624. $list["0"]["TransOutLines"][0]["StorageType"] = 4;
  625. $list["0"]["TransOutLines"][0]["LotInfo_Code"] = "";
  626. $list["0"]["TransOutLines"][0]["TransOutOwnerOrg_Code"] = "120";
  627. //$list["0"]["TransOutLines"][0]["DescFlexField"] = (object)array();
  628. $list["0"]["TransOutLines"][0]["DescFlexField"]["PubDescSeg2"] = $data['kh'];
  629. $list["0"]["TransOutLines"][0]["DescFlexField"]["PubDescSeg4"] = $data['number'];
  630. $list["0"]["TransOutLines"][0]["DescFlexField"]["PubDescSeg5"] = $data['shipremarks'];
  631. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransInWh_Code'] = "13001";
  632. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['StorageType'] = 4;
  633. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransInOrg_Code'] = "130";
  634. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransOutOwnerOrg_Code'] = "120";
  635. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['StoreUOMQty'] = $data['ts'];
  636. $list["0"]["TransOutLines"][0]["TransOutBins"][0]['BinInfo_Code'] = "";
  637. $list["0"]["TransOutLines"][0]["TransOutBins"][0]['StoreUOMQty'] = 1;
  638. $list = json_encode($list);
  639. return $list;
  640. }
  641. public function get_cpdc($data)//成品仓调出到其它外贸仓
  642. {
  643. $time = time();
  644. if($time > 1717171200 && $time < 1717257599)
  645. {
  646. $time = time()-24*3600;
  647. }
  648. $list["0"]["OtherID"] = $data['number'];
  649. $list["0"]["TransOutDocType_Code"] = 'TransOut002';
  650. $list["0"]["BusinessDate"] = date('Y-m-d',$time);
  651. $list["0"]["TransferDirection"] = 0;
  652. $list["0"]["DescFlexField"] = (object)array();
  653. $list["0"]["TransOutLines"][0]['ItemInfo']['ItemCode'] = $data['jm'];
  654. $list["0"]["TransOutLines"][0]["TransOutWh_Code"] = $data['dccbm'];//调出仓编码
  655. $list["0"]["TransOutLines"][0]["StoreUOM_Code"] = "条";
  656. $list["0"]["TransOutLines"][0]["StoreUOMQty"] = $data['ts'];
  657. $list["0"]["TransOutLines"][0]["StorageType"] = 4;
  658. $list["0"]["TransOutLines"][0]["LotInfo_Code"] = "";
  659. $list["0"]["TransOutLines"][0]["TransOutOwnerOrg_Code"] = "130";
  660. $list["0"]["TransOutLines"][0]["DescFlexField"] = (object)array();
  661. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransInWh_Code'] = $data['drcbm'];//调入仓编码
  662. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['StorageType'] = 4;
  663. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransInOrg_Code'] = "130";
  664. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['TransOutOwnerOrg_Code'] = "130";
  665. $list["0"]["TransOutLines"][0]["TransOutSubLines"][0]['StoreUOMQty'] = $data['ts'];
  666. $list["0"]["TransOutLines"][0]["TransOutBins"][0]['BinInfo_Code'] = "";
  667. $list["0"]["TransOutLines"][0]["TransOutBins"][0]['StoreUOMQty'] = 1;
  668. $list = json_encode($list);
  669. $token = $this->setting->get_yytoken_130();
  670. $url = 'http://172.31.105.167/U9C/webapi/TransferOut/Create';
  671. $header[] = "Content-Type: application/json";
  672. $header[] = "Token: ".$token;
  673. $ch = curl_init();
  674. curl_setopt($ch, CURLOPT_URL, $url);
  675. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  676. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  677. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  678. curl_setopt($ch, CURLOPT_POST, 1);
  679. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  680. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  681. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  682. $res = curl_exec($ch);
  683. $res = json_decode($res,true);
  684. return $res;
  685. }
  686. public function get_order_sh($data,$url1,$url2,$qs)//订单 提交-》审核
  687. {
  688. if($qs == 120)
  689. {
  690. $token = $this->setting->get_yytoken_120();
  691. }
  692. else
  693. {
  694. $token = $this->setting->get_yytoken_130();
  695. }
  696. $list["0"]["Code"] = $data['number'];
  697. $list = json_encode($list);
  698. $url = 'http://172.31.105.167/U9C/webapi/'.$url1;
  699. $header[] = "Content-Type: application/json";
  700. $header[] = "Token: ".$token;
  701. $ch = curl_init();
  702. curl_setopt($ch, CURLOPT_URL, $url);
  703. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  704. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  705. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  706. curl_setopt($ch, CURLOPT_POST, 1);
  707. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  708. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  709. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  710. $res = curl_exec($ch);
  711. //提交结束 审核开始
  712. $url = 'http://172.31.105.167/U9C/webapi/'.$url2;
  713. $ch = curl_init();
  714. curl_setopt($ch, CURLOPT_URL, $url);
  715. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  716. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  717. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  718. curl_setopt($ch, CURLOPT_POST, 1);
  719. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  720. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  721. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  722. $res = curl_exec($ch);
  723. $res = json_decode($res,true);
  724. return $res;
  725. }
  726. public function get_wcrk_sh($data)//入库审核
  727. {
  728. $list["0"]["DocNo"] = $data['co'];
  729. //$list["0"]["OtherID"] = $data['co'];
  730. $list = json_encode($list);
  731. $token = $this->setting->get_yytoken_120();
  732. $url = 'http://172.31.105.167/U9C/webapi/RcvRptDoc/Approve';
  733. $header[] = "Content-Type: application/json";
  734. $header[] = "Token: ".$token;
  735. $ch = curl_init();
  736. curl_setopt($ch, CURLOPT_URL, $url);
  737. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  738. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  739. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  740. curl_setopt($ch, CURLOPT_POST, 1);
  741. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  742. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  743. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  744. $res = curl_exec($ch);
  745. $res = json_decode($res,true);
  746. return array($res,$list);
  747. }
  748. public function get_order($data)//订单 标准销售
  749. {
  750. $shouldmoney = ($data['shouldmoney'] > 0)?sprintf("%01.2f",$data['shouldmoney']/count($data['lh'])):$data['shouldmoney'];
  751. $list["0"]["OrderBy"] = $data['yyid'];
  752. for($i=0;$i<count($data['lh']);$i++)
  753. {
  754. $list["0"]["SOLineDTOList"][$i]['TU'] = '条';
  755. $list["0"]["SOLineDTOList"][$i]['ItemCode'] = $data['lh'][$i]['sku'];//料号
  756. $list["0"]["SOLineDTOList"][$i]['PU'] = '条';
  757. $list["0"]["SOLineDTOList"][$i]['ShipTogetherFlag'] = -1;
  758. $list["0"]["SOLineDTOList"][$i]['DocLineNo'] = $i+1;
  759. $list["0"]["SOLineDTOList"][$i]['CustomerItemNo'] = '';
  760. $list["0"]["SOLineDTOList"][$i]['CustomerItemName'] = '';
  761. $list["0"]["SOLineDTOList"][$i]['FinallyPriceTC'] = $shouldmoney;
  762. $list["0"]["SOLineDTOList"][$i]['PubDescSeg10'] = '';
  763. $list["0"]["SOLineDTOList"][$i]['SOShiplineDTOList'][0]['IsMRPRequire'] = 1;
  764. $list["0"]["SOLineDTOList"][$i]['SOShiplineDTOList'][0]['DemandType'] = -1;
  765. $list["0"]["SOLineDTOList"][$i]['SOShiplineDTOList'][0]['RequireDate'] = date('m/d/Y H:i:s',$data['dtime']);
  766. $list["0"]["SOLineDTOList"][$i]['RecTerm'] = '';
  767. $list["0"]["SOLineDTOList"][$i]['FreeType'] = ($data['shouldmoney'] < 0.01)?0:-1;
  768. $list["0"]["SOLineDTOList"][$i]['UsableQtyOfInv'] = 0;
  769. $list["0"]["SOLineDTOList"][$i]['PubDescSeg3'] = '';
  770. $list["0"]["SOLineDTOList"][$i]['PubDescSeg4'] = '0.00';
  771. $list["0"]["SOLineDTOList"][$i]['PriceList'] = '';
  772. $list["0"]["SOLineDTOList"][$i]['TaxMoneyTC'] = 0;
  773. //$list["0"]["SOLineDTOList"][$i]['TotalMoneyTC'] = $data['budget'];
  774. $list["0"]["SOLineDTOList"][$i]['TaxSchedule'] = 'YZ05';
  775. $list["0"]["SOLineDTOList"][$i]['DescFlexField']['PubDescSeg3'] = '';
  776. $list["0"]["SOLineDTOList"][$i]['OrderByQtyTU'] = $data['lh'][$i]['ts'];//条数
  777. $list["0"]["SOLineDTOList"][$i]['OrderByQtyPU'] = $data['lh'][$i]['ts'];//条数
  778. $list["0"]["SOLineDTOList"][$i]['OrderPriceTC'] = $shouldmoney;
  779. $list["0"]["SOLineDTOList"][$i]['Memo'] = '321321';
  780. }
  781. $list["0"]["AC"] = 'C009';//美金
  782. $list["0"]["SaleDepartment"] = '02';
  783. $list["0"]["BusinessDate"] = date('m/d/Y H:i:s',$data['dtime']);
  784. $list["0"]["DocumentType"] = 'SO1';
  785. $list["0"]["DocNo"] = $data['number'];
  786. $list["0"]["TC"] = 'C009';
  787. $list["0"]["ShipToSite"] = '';
  788. $list["0"]["PubDescSeg2"] = '';
  789. $list["0"]["SOSrcType"] = 0;
  790. $list["0"]["Seller"] = '201';
  791. $list["0"]["ConfirmTerm"] = '';
  792. $list["0"]["Memo"] = '';
  793. $list["0"]["ShipRule"] = '';
  794. $list = json_encode($list);
  795. $token = $this->setting->get_yytoken_130();
  796. $url = 'http://172.31.105.167/U9C/webapi/SO/Create';
  797. $header[] = "Content-Type: application/json";
  798. $header[] = "Token: ".$token;
  799. $ch = curl_init();
  800. curl_setopt($ch, CURLOPT_URL, $url);
  801. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  802. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  803. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  804. curl_setopt($ch, CURLOPT_POST, 1);
  805. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  806. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  807. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  808. $res = curl_exec($ch);
  809. $res = json_decode($res,true);
  810. return array($res,$list);
  811. }
  812. public function get_order_cs($data)//订单 标准销售
  813. {
  814. $shouldmoney = ($data['shouldmoney'] > 0)?sprintf("%01.2f",$data['shouldmoney']/count($data['lh'])):$data['shouldmoney'];
  815. $list["0"]["OrderBy"] = $data['yyid'];
  816. for($i=0;$i<count($data['lh']);$i++)
  817. {
  818. $list["0"]["SOLineDTOList"][$i]['TU'] = '条';
  819. $list["0"]["SOLineDTOList"][$i]['ItemCode'] = $data['lh'][$i]['sku'];//料号
  820. $list["0"]["SOLineDTOList"][$i]['PU'] = '条';
  821. $list["0"]["SOLineDTOList"][$i]['ShipTogetherFlag'] = -1;
  822. $list["0"]["SOLineDTOList"][$i]['DocLineNo'] = $i+1;
  823. $list["0"]["SOLineDTOList"][$i]['CustomerItemNo'] = '';
  824. $list["0"]["SOLineDTOList"][$i]['CustomerItemName'] = '';
  825. $list["0"]["SOLineDTOList"][$i]['FinallyPriceTC'] = $shouldmoney;
  826. $list["0"]["SOLineDTOList"][$i]['PubDescSeg10'] = '';
  827. $list["0"]["SOLineDTOList"][$i]['SOShiplineDTOList'][0]['IsMRPRequire'] = 1;
  828. $list["0"]["SOLineDTOList"][$i]['SOShiplineDTOList'][0]['DemandType'] = -1;
  829. $list["0"]["SOLineDTOList"][$i]['SOShiplineDTOList'][0]['RequireDate'] = date('m/d/Y H:i:s',$data['dtime']);
  830. $list["0"]["SOLineDTOList"][$i]['RecTerm'] = '';
  831. $list["0"]["SOLineDTOList"][$i]['FreeType'] = ($data['shouldmoney'] < 0.01)?0:-1;
  832. $list["0"]["SOLineDTOList"][$i]['UsableQtyOfInv'] = 0;
  833. $list["0"]["SOLineDTOList"][$i]['PubDescSeg3'] = '';
  834. $list["0"]["SOLineDTOList"][$i]['PubDescSeg4'] = '0.00';
  835. $list["0"]["SOLineDTOList"][$i]['PriceList'] = '';
  836. $list["0"]["SOLineDTOList"][$i]['TaxMoneyTC'] = 0;
  837. $list["0"]["SOLineDTOList"][$i]['TotalMoneyTC'] = $data['budget'];
  838. $list["0"]["SOLineDTOList"][$i]['TaxSchedule'] = 'YZ05';
  839. $list["0"]["SOLineDTOList"][$i]['DescFlexField']['PubDescSeg3'] = '';
  840. $list["0"]["SOLineDTOList"][$i]['OrderByQtyTU'] = $data['lh'][$i]['ts'];//条数
  841. $list["0"]["SOLineDTOList"][$i]['OrderByQtyPU'] = $data['lh'][$i]['ts'];//条数
  842. $list["0"]["SOLineDTOList"][$i]['OrderPriceTC'] = $shouldmoney;
  843. $list["0"]["SOLineDTOList"][$i]['Memo'] = '321321';
  844. }
  845. $list["0"]["AC"] = 'C009';//美金
  846. $list["0"]["SaleDepartment"] = '02';
  847. $list["0"]["BusinessDate"] = date('m/d/Y H:i:s',$data['dtime']);
  848. $list["0"]["DocumentType"] = 'SO1';
  849. $list["0"]["DocNo"] = $data['number'];
  850. $list["0"]["TC"] = 'C009';
  851. $list["0"]["ShipToSite"] = '';
  852. $list["0"]["PubDescSeg2"] = '';
  853. $list["0"]["SOSrcType"] = 0;
  854. $list["0"]["Seller"] = '201';
  855. $list["0"]["ConfirmTerm"] = '';
  856. $list["0"]["Memo"] = '';
  857. $list["0"]["ShipRule"] = '';
  858. $list = json_encode($list);
  859. return $list;
  860. }
  861. public function get_scdd($data)//数据查询
  862. {
  863. $list["0"]["OtherID"] = '123';
  864. $list["0"]["Org"]["Code"] = 120;
  865. $list["0"]["ItemMaster"]["Code"] = '#017(Old)-BW-13*4Wig-20-200%-Medium';
  866. $list["0"]["DocType"]["Code"] = 1;
  867. $list["0"]["Department"]["Code"] = 03;
  868. $list["0"]["ExpandLevel"] = 0;
  869. $list["0"]["AlternateType"] = 0;
  870. $list["0"]["RoutingAlternate"] = 0;
  871. $list["0"]["RoutingEffeDate"] = '';
  872. $list["0"]["ProductQty"] = 5;
  873. $list["0"]["ProductUOM"]["Code"] = '条';
  874. $list["0"]["StartDate"] = '2023-08-15';
  875. $list["0"]["CompleteDate"] = '2023-08-22';
  876. $list["0"]["MOSourceDocType"] = 0;
  877. $list["0"]["OwnerOrg"]["Code"] = 120;
  878. $list["0"]["SCVWh"]["Code"] = 02;
  879. $list["0"]["IsFirmed"] = 1;
  880. $list["0"]["IsCapacityLimit"] = false;
  881. $list["0"]["Priority"] = 0;
  882. $list["0"]["CUD"] = 0;
  883. $list["0"]["BOMType"] = 0;
  884. $list["0"]["Description"] = '测试';
  885. $list["0"]["MRPQty"] = 0;
  886. $list["0"]["MOID"] = 0;
  887. $list["0"]["PBUToSBURate"] = 0;
  888. $list["0"]["PBUToCBURate"] = 0;
  889. $list = json_encode($list);
  890. $token = $this->setting->get_yytoken_101();
  891. $url = 'http://172.31.105.167/U9C/webapi/Customer/Create';
  892. $header[] = "Content-Type: application/json";
  893. $header[] = "Token: ".$token;
  894. $ch = curl_init();
  895. curl_setopt($ch, CURLOPT_URL, $url);
  896. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  897. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  898. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  899. curl_setopt($ch, CURLOPT_POST, 1);
  900. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  901. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  902. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  903. $res = curl_exec($ch);
  904. $res = json_decode($res,true);
  905. return $res;
  906. }
  907. public function get_cxkc($data)//查询库存
  908. {
  909. $list["SqlString"] = 'select distinct a.id id,a.ItemInfo_ItemID itemid,a.ItemInfo_ItemCode itemcode,a.ItemInfo_ItemName itemname,c.Code1 code,a.SysVersion sysversion,c.specs specs,d.code itemflcode,d1.name itemflname,a.LotInfo_LotCode lotcode,e.code unitcode,e1.name unitname,SUM(a.StoreMainQty) kc_qty,SUM(a.StoreQtyCU) f_qty,SUM(a.StoreQty) qty,a.CreatedOn createdon,a.ModifiedOn modifiedon,a.Wh whid,b.code whcode,b1.Name whname,a.BinInfo_Code bincode,a.BinInfo_Name binname from InvTrans_WhQoh as a left join CBO_Wh as b on a.Wh=b.id left join CBO_Wh_Trl b1 on a.Wh=b1.ID left join CBO_ItemMaster as c on a.ItemInfo_ItemCode=c.Code left join CBO_Category as d on c.MainItemCategory=d.id left join CBO_Category_Trl as d1 on c.MainItemCategory=d1.id left join Base_UOM as e on a.StoreMainUOM = e.id left join Base_UOM_Trl as e1 on a.StoreMainUOM=e1.id GROUP BY a.id,a.ItemInfo_ItemID,a.ItemInfo_ItemCode,a.ItemInfo_ItemName,c.Code1,a.SysVersion,c.specs,d.code,d1.name,a.LotInfo_LotCode,e.code,e1.name,a.CreatedOn,a.ModifiedOn,a.Wh,b.code,b1.Name,a.BinInfo_Code,a.BinInfo_Name';
  910. $list = json_encode($list);
  911. $token = $this->setting->get_yytoken_101();
  912. $url = 'http://172.31.105.167/U9C/webapi/QueryCommon/QueryInfoBySql';
  913. $header[] = "Content-Type: application/json";
  914. $header[] = "Token: ".$token;
  915. $ch = curl_init();
  916. curl_setopt($ch, CURLOPT_URL, $url);
  917. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  918. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  919. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  920. curl_setopt($ch, CURLOPT_POST, 1);
  921. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  922. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  923. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  924. $res = curl_exec($ch);
  925. $res = json_decode($res,true);
  926. return $res;
  927. }
  928. public function get_cxck($data)//查询所有仓库
  929. {
  930. $list["SqlString"] = "select a.id,a.code,c.name,a.org,b.name org_name from CBO_Wh a left join CBO_Wh_trl c on c.id=a.id left join Base_Organization_trl b on a.org=b.id";
  931. $list = json_encode($list);
  932. $token = $this->setting->get_yytoken_101();
  933. $url = 'http://172.31.105.167/U9C/webapi/QueryCommon/QueryInfoBySql';
  934. $header[] = "Content-Type: application/json";
  935. $header[] = "Token: ".$token;
  936. $ch = curl_init();
  937. curl_setopt($ch, CURLOPT_URL, $url);
  938. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  939. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  940. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  941. curl_setopt($ch, CURLOPT_POST, 1);
  942. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  943. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  944. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  945. $res = curl_exec($ch);
  946. $res = json_decode($res,true);
  947. return $res;
  948. }
  949. public function get_cxrksh($data)//查询入库审核
  950. {
  951. $list["SqlString"] = "select docno,DescFlexField_PubDescSeg4 xukai_no,DocState from Complete_RcvRptDoc where docno = '".$data."' order by CreatedOn desc";
  952. $list = json_encode($list);
  953. $token = $this->setting->get_yytoken_101();
  954. $url = 'http://172.31.105.167/U9C/webapi/QueryCommon/QueryInfoBySql';
  955. $header[] = "Content-Type: application/json";
  956. $header[] = "Token: ".$token;
  957. $ch = curl_init();
  958. curl_setopt($ch, CURLOPT_URL, $url);
  959. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  960. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  961. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  962. curl_setopt($ch, CURLOPT_POST, 1);
  963. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  964. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  965. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  966. $res = curl_exec($ch);
  967. $res = json_decode($res,true);
  968. return $res;
  969. }
  970. public function _cxscdd($data)
  971. {
  972. $list["SqlString"] = "select DocNo,DescFlexField_PubDescSeg4 from MO_MO where DescFlexField_PubDescSeg4='".$data."' order by CreatedOn desc ";//查询生产订单
  973. $list = json_encode($list);
  974. $token = $this->setting->get_yytoken_101();
  975. $url = 'http://172.31.105.167/U9C/webapi/QueryCommon/QueryInfoBySql';
  976. $header[] = "Content-Type: application/json";
  977. $header[] = "Token: ".$token;
  978. $ch = curl_init();
  979. curl_setopt($ch, CURLOPT_URL, $url);
  980. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  981. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  982. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  983. curl_setopt($ch, CURLOPT_POST, 1);
  984. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  985. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  986. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  987. $res = curl_exec($ch);
  988. $res = json_decode($res,true);
  989. return $res;
  990. }
  991. public function _cxxsdd($data)
  992. {
  993. $list["SqlString"] = "select DocNo,DescFlexField_PubDescSeg4 from SM_SO where DocNo='".$data."' order by CreatedOn desc ";//销售订单
  994. $list = json_encode($list);
  995. $token = $this->setting->get_yytoken_101();
  996. $url = 'http://172.31.105.167/U9C/webapi/QueryCommon/QueryInfoBySql';
  997. $header[] = "Content-Type: application/json";
  998. $header[] = "Token: ".$token;
  999. $ch = curl_init();
  1000. curl_setopt($ch, CURLOPT_URL, $url);
  1001. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  1002. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  1003. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  1004. curl_setopt($ch, CURLOPT_POST, 1);
  1005. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  1006. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  1007. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  1008. $res = curl_exec($ch);
  1009. $res = json_decode($res,true);
  1010. return $res;
  1011. }
  1012. public function _cxchd($data)
  1013. {
  1014. $list["SqlString"] = "select top 1 a.docno,b.SrcDocNo from SM_Ship a left join SM_ShipLine b on a.id=b.Ship where b.SrcDocNo='".$data."'";//出货单
  1015. $list = json_encode($list);
  1016. $token = $this->setting->get_yytoken_101();
  1017. $url = 'http://172.31.105.167/U9C/webapi/QueryCommon/QueryInfoBySql';
  1018. $header[] = "Content-Type: application/json";
  1019. $header[] = "Token: ".$token;
  1020. $ch = curl_init();
  1021. curl_setopt($ch, CURLOPT_URL, $url);
  1022. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  1023. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  1024. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  1025. curl_setopt($ch, CURLOPT_POST, 1);
  1026. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  1027. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  1028. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  1029. $res = curl_exec($ch);
  1030. $res = json_decode($res,true);
  1031. return $res;
  1032. }
  1033. public function get_cxdc($data)//查询调出
  1034. {
  1035. $list["SqlString"] = "select top 50 a.docno ruku_danhao,d.DescFlexField_PubDescSeg4 erp_danhao,a.CreatedBy,a.createdon,a.DocState,b.mo,d.docno mo_no,e.docno dianchu_danhao from Complete_RcvRptDoc a left join Complete_RcvRptDocLine b on b.RcvRptDoc=a.id left join CBO_ItemMaster c on b.item=c.id left join MO_MO d on b.mo=d.id left join InvDoc_TransferOut e on e.DescFlexField_PubDescSeg4=d.DescFlexField_PubDescSeg4 where (d.DescFlexField_PubDescSeg4 = '".$data."') order by a.createdon";//and (a.createdon >'2023-12-26' and a.createdon >'2023-12-27')
  1036. $list = json_encode($list);
  1037. $token = $this->setting->get_yytoken_101();
  1038. $url = 'http://172.31.105.167/U9C/webapi/QueryCommon/QueryInfoBySql';
  1039. $header[] = "Content-Type: application/json";
  1040. $header[] = "Token: ".$token;
  1041. $ch = curl_init();
  1042. curl_setopt($ch, CURLOPT_URL, $url);
  1043. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  1044. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  1045. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  1046. curl_setopt($ch, CURLOPT_POST, 1);
  1047. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  1048. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  1049. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  1050. $res = curl_exec($ch);
  1051. $res = json_decode($res,true);
  1052. return $res;
  1053. }
  1054. public function _neworder($data)
  1055. {
  1056. $fh = $this->get_order($data);
  1057. $res = $fh[0];
  1058. $fs = $fh[1];
  1059. $fh = json_encode($res);
  1060. if(isset($res['Data'][0]))
  1061. {
  1062. if($res['Data'][0]['m_isSucess'] == 1)
  1063. {
  1064. sleep(1);
  1065. $sh = $this->get_order_sh($data,'SO/Submit','SO/Approve',130);
  1066. if($sh['Data'][0]['m_isSucess'] == 1)
  1067. {
  1068. return array('c'=>0,'fs'=>$fs,'fh'=>$fh);exit;
  1069. }
  1070. else
  1071. {
  1072. return array('c'=>1,'error'=>$sh['Data'][0]['m_errorMsg'],'fs'=>$fs,'fh'=>$fh);exit;
  1073. }
  1074. }
  1075. else if ($res['Data'][0]['m_isSucess'] != 1 && stripos($res['Data'][0]['m_errorMsg'],'单号已存在') !== false)
  1076. {
  1077. return array('c'=>0,'fs'=>$fs,'fh'=>$fh);exit;
  1078. }
  1079. else
  1080. {
  1081. return array('c'=>1,'error'=>$res['Data'][0]['m_errorMsg'],'fs'=>$fs,'fh'=>$fh);exit;
  1082. }
  1083. }
  1084. else
  1085. {
  1086. return array('c'=>1,'error'=>json_encode($res),'fs'=>$fs,'fh'=>$fh);exit;
  1087. }
  1088. }
  1089. public function _peihuo($data,$kh,$number,$num,$djlx = 1000)
  1090. {
  1091. if(stripos($data['features'],'-126-') !== false)
  1092. {
  1093. $drck = '12003';//进入发条库
  1094. }
  1095. else if(stripos($data['features'],'-127-') !== false)
  1096. {
  1097. $drck = '12004';//进入发块库
  1098. }
  1099. else
  1100. {
  1101. $drck = '12006';//其它进入完成库
  1102. }
  1103. $error = '';$scid = '';
  1104. $lh = $this->get_cjlp(array('jm'=>$data['jm'],'title'=>$data['title'],'zh'=>$data['pm'],'bm'=>$data['bm']));
  1105. if(isset($lh['Data'][0]))
  1106. {
  1107. if($lh['Data'][0]['m_isSucess'] != 1)
  1108. {
  1109. if($lh['Data'][0]['m_errorMsg'] != '料号 已存在,请重新输入!')
  1110. {
  1111. $lc = 1;
  1112. $error .= $lh['Data'][0]['m_errorMsg'].';料号:'.$data['jm'].'编码:'.$data['bm'];
  1113. }
  1114. }
  1115. }
  1116. else
  1117. {
  1118. $lc = 1;
  1119. $error .= json_encode($lh);
  1120. }
  1121. if($error != '')
  1122. {
  1123. return array('c'=>1,'lc'=>1,'error'=>$error,'number'=>$data['number']);exit;
  1124. }
  1125. if($data['type'] == 0)
  1126. {
  1127. $sc = $this->apiyy->get_sc(array('sku'=>$data['jm'],'title'=>$data['title'],'ts'=>$num,'yyid'=>$kh,'number'=>$number,'shipremarks'=>$data['shipremarks'],'djlx'=>$djlx,'time'=>time(),'drck'=>$drck));
  1128. if(isset($sc['Data'][0]))
  1129. {
  1130. if($sc['Data'][0]['m_isSucess'] != 1)
  1131. {
  1132. $lc = 2;
  1133. $error .= $sc['Data'][0]['m_errorMsg'];
  1134. }
  1135. else
  1136. {
  1137. $scid .= $sc['Data'][0]['m_iD'].'~'.$sc['Data'][0]['m_code'].'~'.$drck;
  1138. }
  1139. }
  1140. else
  1141. {
  1142. $lc = 2;
  1143. $error .= json_encode($sc);
  1144. }
  1145. }
  1146. else
  1147. {
  1148. $sc = $this->apiyy->get_cg(array('orderinfo'=>$number,'purchase'=>$data['purchase'],'sku'=>$data['jm'],'ts'=>$num));
  1149. if(isset($sc['Data'][0]))
  1150. {
  1151. if($sc['Data'][0]['IsSucess'] != 1)
  1152. {
  1153. $lc = 2;
  1154. $error .= $sc['Data'][0]['ErrorMsg'].' - '.$data['jm'];
  1155. }
  1156. else
  1157. {
  1158. $scid .= $sc['Data'][0]['ID'].'~'.$sc['Data'][0]['Code']."~13001";
  1159. }
  1160. }
  1161. else
  1162. {
  1163. $lc = 2;
  1164. $error .= json_encode($sc);
  1165. }
  1166. }
  1167. if($error != '')
  1168. {
  1169. return array('c'=>1,'lc'=>$lc,'error'=>$error,'number'=>$data['number']);exit;
  1170. }
  1171. return array('c'=>0,'scid'=>$scid);exit;
  1172. }
  1173. public function _newrk($data)
  1174. {
  1175. $log = '';
  1176. $dbapi = 0;$error = '';$scid = $data['scid'];
  1177. $orderinfo = $data['number'];
  1178. if($data['dbapi'] == 1 || $data['dbapi'] == 0)
  1179. {
  1180. $xydc = array();
  1181. $sc = explode('~',$data['scid']);
  1182. $data['rkid'] = $sc[0];
  1183. $data['rkcode'] = $sc[1];
  1184. $wcrk = $this->get_cprk($data);
  1185. $log .= $orderinfo.'-RK-F = '.$wcrk[1].'\n';//入库发送日志
  1186. $log .= $orderinfo.'-RK-J = '.json_encode($wcrk[0]).'\n';//入库接收
  1187. $wcrk = $wcrk[0];
  1188. if(isset($wcrk['Data'][0]))
  1189. {
  1190. if($wcrk['Data'][0]['m_isSucess'] != 1)
  1191. {
  1192. $dbapi = 1;
  1193. $error .= $wcrk['Data'][0]['m_errorMsg'].';完成入库';
  1194. }
  1195. else
  1196. {
  1197. $scid .= '~'.$wcrk['Data'][0]['m_code'];
  1198. $data['co'] = $wcrk['Data'][0]['m_code'];
  1199. sleep(1);
  1200. $sh = $this->get_wcrk_sh($data);
  1201. $log .= $orderinfo.'-SH-F = '.$sh[1].'\n';//审核发送日志
  1202. $log .= $orderinfo.'-SH-J = '.json_encode($sh[0]).'\n';//审核接收
  1203. $sh = $sh[0];
  1204. if($sh['Data'][0]['m_isSucess'] != 1)
  1205. {
  1206. $cxsh = $this->get_cxrksh($data['co']);
  1207. if(isset($cxsh['Data'][0]['docstate']))
  1208. {
  1209. if($cxsh['Data'][0]['docstate'] != 2)
  1210. {
  1211. $dbapi = 1;
  1212. $error .= $data['co'].' - '.$sh['Data'][0]['m_errorMsg'].';完成审核';
  1213. }
  1214. }
  1215. else
  1216. {
  1217. $dbapi = 1;
  1218. $error .= $data['co'].' - '.$sh['Data'][0]['m_errorMsg'].';完成审核';
  1219. }
  1220. }
  1221. }
  1222. }
  1223. else
  1224. {
  1225. $dbapi = 1;
  1226. $error .= json_encode($wcrk);
  1227. }
  1228. }
  1229. if($error != '')
  1230. {
  1231. $this->_log($orderinfo,$log);
  1232. return array('c'=>1,'dbapi'=>$dbapi,'scid'=>$scid,'error'=>$error);exit;
  1233. }
  1234. if($data['dbapi'] == 2)
  1235. {
  1236. $sc = explode('~',$scid);
  1237. $sc = array_reverse($sc);
  1238. $rkd = '';
  1239. foreach ($sc as $v)
  1240. {
  1241. if(stripos($v,'CPRK-') !== false)
  1242. {
  1243. $rkd = $v;
  1244. continue;
  1245. }
  1246. }
  1247. if($rkd == '')
  1248. {
  1249. $dbapi = 2;
  1250. $error .= 'ERP未找到入库单;完成审核';
  1251. }
  1252. else
  1253. {
  1254. $data['co'] = $rkd;
  1255. $sh = $this->get_wcrk_sh($data);
  1256. $log .= $orderinfo.'-SH-F = '.$sh[1].'\n';//审核发送日志
  1257. $log .= $orderinfo.'-SH-J = '.json_encode($sh[0]).'\n';//审核接收
  1258. $sh = $sh[0];
  1259. if($sh['Data'][0]['m_isSucess'] != 1)
  1260. {
  1261. $cxsh = $this->get_cxrksh($data['co']);
  1262. if(isset($cxsh['Data'][0]['docstate']))
  1263. {
  1264. if($cxsh['Data'][0]['docstate'] != 2)
  1265. {
  1266. $dbapi = 2;
  1267. $error .= $data['co'].' - '.$sh['Data'][0]['m_errorMsg'].';完成审核';
  1268. }
  1269. }
  1270. else
  1271. {
  1272. $dbapi = 2;
  1273. $error .= $data['co'].' - '.$sh['Data'][0]['m_errorMsg'].';完成审核';
  1274. }
  1275. }
  1276. }
  1277. }
  1278. if($error != '')
  1279. {
  1280. $this->_log($orderinfo,$log);
  1281. return array('c'=>1,'dbapi'=>$dbapi,'scid'=>$scid,'error'=>$error);exit;
  1282. }
  1283. $sc = explode('~',$scid);
  1284. $data['scid'] = $sc[0];
  1285. $data['sccode'] = $sc[1];
  1286. $data['drck'] = $sc[2];
  1287. $dc = $this->get_dc($data);
  1288. $log .= $orderinfo.'-DC-F = '.$dc[1].'\n';//审核发送日志
  1289. $log .= $orderinfo.'-DC-J = '.json_encode($dc[0]).'\n';//审核接收
  1290. $dc = $dc[0];
  1291. if(isset($dc['Data'][0]))
  1292. {
  1293. if($dc['Data'][0]['IsSucess'] != 1)
  1294. {
  1295. $dbapi = 3;
  1296. $error .= $dc['Data'][0]['ErrorMsg'].';调出';
  1297. }
  1298. else
  1299. {
  1300. $scid .= '~'.$dc['Data'][0]['Code'];
  1301. }
  1302. }
  1303. else
  1304. {
  1305. $dbapi = 3;
  1306. $error .= json_encode($dc);
  1307. }
  1308. if($error != '')
  1309. {
  1310. $this->_log($orderinfo,$log);
  1311. return array('c'=>1,'dbapi'=>$dbapi,'scid'=>$scid,'error'=>$error);exit;
  1312. }
  1313. $cxdc = $this->get_cxdc($data['number']);
  1314. if(!isset($cxdc['Data'][0]))
  1315. {
  1316. return array('c'=>1,'dbapi'=>$dbapi,'scid'=>$scid,'error'=>$data['number'].'调出验证未通过');exit;
  1317. }
  1318. $this->_log($orderinfo,$log);
  1319. return array('c'=>0,'scid'=>$scid);exit;
  1320. }
  1321. public function _log($orderinfo,$data)
  1322. {
  1323. $pdtime = date('Y-m-d',time());
  1324. $folderPath = './data/yylog/'.$pdtime; // 文件夹路径
  1325. $permissions = 0777; // 权限设置
  1326. file_exists($folderPath);
  1327. if(!is_file("./data/yylog/".$orderinfo.".txt"))
  1328. {
  1329. $myfile = fopen("./data/yylog/RK-".$orderinfo.".txt", "w") or die("Unable to open file!");
  1330. fwrite($myfile, $data);
  1331. fclose($myfile);
  1332. }
  1333. else
  1334. {
  1335. $myfile = fopen("./data/yylog/RK-".$orderinfo.".txt", "a+") or die("Unable to open file!");
  1336. fwrite($myfile, $data);
  1337. fclose($myfile);
  1338. }
  1339. }
  1340. }