Model_apiyy.php 60 KB

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