Model_apiyyv1.php 35 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123
  1. <?php
  2. /**
  3. * 为防后期调用u9接口复用问题这里决定重新封装apiyy的接口
  4. */
  5. class Model_apiyyv1 extends Lin_Model
  6. {
  7. public $base_url = "http://139.129.33.38";
  8. function __construct(){
  9. parent::__construct();
  10. $this->load->database();
  11. $this->table = 'apiyy';
  12. $this->load_table('apiyy');
  13. $this->load->_model("Model_logic_ding","logic_ding");
  14. }
  15. /**
  16. * 生成u9的调出单
  17. */
  18. public function dcdCrate($params,$token){
  19. $list = $this->dcDataTrans($params);
  20. $url = '/U9C/webapi/TransferOut/Create';
  21. $url = $this->base_url.$url;
  22. $header[] = "Content-Type: application/json";
  23. $header[] = "Token: ".$token;
  24. $res = $this->sendReq($url,$header,json_encode($list));
  25. return array($res,$list);
  26. }
  27. /**
  28. * 提交调出单
  29. */
  30. public function dcdSubmit($params,$token){
  31. $list = [
  32. [
  33. 'Code'=>$params['number'] //调出单单号
  34. ]
  35. ];
  36. $url = '/U9C/webapi/TransferOut/Submit';
  37. $url = $this->base_url.$url;
  38. $header[] = "Content-Type: application/json";
  39. $header[] = "Token: ".$token;
  40. $res = $this->sendReq($url,$header,json_encode($list));
  41. return array($res,$list);
  42. }
  43. /**
  44. * 审核调出单
  45. */
  46. public function dcdApprove($params,$token){
  47. $list = [
  48. [
  49. 'Code'=>$params['number'] //调出单单号
  50. ]
  51. ];
  52. $url = '/U9C/webapi/TransferOut/Approve';
  53. $url = $this->base_url.$url;
  54. $header[] = "Content-Type: application/json";
  55. $header[] = "Token: ".$token;
  56. $res = $this->sendReq($url,$header,json_encode($list));
  57. return array($res,$list);
  58. }
  59. /**
  60. * 生成u9的销售单
  61. * 只是财务记录 不牵扯到库存
  62. */
  63. public function xsdCreate($params,$token){
  64. $list = $this->xsdDataTrans($params);
  65. $url = '/U9C/webapi/SO/Create';
  66. $url = $this->base_url.$url;
  67. $header[] = "Content-Type: application/json";
  68. $header[] = "Token: ".$token;
  69. $res = $this->sendReq($url,$header,json_encode($list));
  70. return array($res,$list);
  71. }
  72. /**
  73. * 工厂外销销售单
  74. */
  75. public function gcxsdWaiXiaoCreate($params,$token){
  76. $list = $this->xsdDataTrans($params);
  77. foreach($list as $k=>$v){
  78. $list[$k]['DescFlexField']["PrivateDescSeg3"] = $params['number'];
  79. $list[$k]['DescFlexField']["PrivateDescSeg6"] = 'MJ00199';
  80. $list[$k]['DescFlexField']["PubDescSeg6"] = 'MJ00199';
  81. $list[$k]['DescFlexField']["PubDescSeg3"] = $params['number'];
  82. // foreach($v['SOLineDTOList'] as $kk=>$vv){
  83. // $list[$k]['SOLineDTOList'][$kk]['DescFlexField']['PrivateDescSeg3'] = $params['number'];
  84. // $list[$k]['SOLineDTOList'][$kk]['DescFlexField']['PubDescSeg3'] = $params['number'];
  85. // }
  86. }
  87. $url = '/U9C/webapi/SO/Create';
  88. $url = $this->base_url.$url;
  89. $header[] = "Content-Type: application/json";
  90. $header[] = "Token: ".$token;
  91. $res = $this->sendReq($url,$header,json_encode($list));
  92. return array($res,$list);
  93. }
  94. /**
  95. * 工厂外销销售单
  96. */
  97. public function gcxsdWaiXiaoCreateBk($params,$token){
  98. $list = $this->xsdDataTransGC($params);
  99. echo "<pre>";
  100. print_r($list);
  101. die;
  102. foreach($list as $k=>$v){
  103. $list[$k]['DescFlexField']["PrivateDescSeg3"] = $params['number'];
  104. $list[$k]['DescFlexField']["PrivateDescSeg6"] = 'MJ00199';
  105. $list[$k]['DescFlexField']["PubDescSeg6"] = 'MJ00199';
  106. $list[$k]['DescFlexField']["PubDescSeg3"] = $params['number'];
  107. // foreach($v['SOLineDTOList'] as $kk=>$vv){
  108. // $list[$k]['SOLineDTOList'][$kk]['DescFlexField']['PrivateDescSeg3'] = $params['number'];
  109. // $list[$k]['SOLineDTOList'][$kk]['DescFlexField']['PubDescSeg3'] = $params['number'];
  110. // }
  111. }
  112. $url = '/U9C/webapi/SO/Create';
  113. $url = $this->base_url.$url;
  114. $header[] = "Content-Type: application/json";
  115. $header[] = "Token: ".$token;
  116. $res = $this->sendReq($url,$header,json_encode($list));
  117. return array($res,$list);
  118. }
  119. /**
  120. * 销售单状态查询 看看是否是审核状态
  121. */
  122. public function xsdCxByNo($xcd_no,$token){
  123. $list["SqlString"] = $list['SqlString'] = "select a.DocNo,a.Status,b.DocLineNo,c.DocSubLineNo,c.ShipPlanQtyPU,c.ItemInfo_ItemCode from SM_SO as a left join SM_SOLine as b on a.id = b.SO left join SM_SOShipline as c on c.SOLine = b.id where a.DocNo = '".$xcd_no."' order by a.CreatedOn desc ";;
  124. $url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
  125. $url = $this->base_url.$url;
  126. $header[] = "Content-Type: application/json";
  127. $header[] = "Token: ".$token;
  128. $res = $this->sendReq($url,$header,json_encode($list));
  129. return array($res,$list);
  130. }
  131. /**
  132. * 生成u9的销售单
  133. * 只是财务记录 不牵扯到库存
  134. */
  135. public function xsdTwoCreate($params,$token){
  136. $list = $this->xsdTwoDataTrans($params);
  137. $url = '/U9C/webapi/SO/Create';
  138. $url = $this->base_url.$url;
  139. $header[] = "Content-Type: application/json";
  140. $header[] = "Token: ".$token;
  141. $res = $this->sendReq($url,$header,json_encode($list));
  142. return array($res,$list);
  143. }
  144. /**
  145. * 销售单提交
  146. */
  147. public function xsdSubmit($params,$token){
  148. $list = [
  149. [
  150. 'Code'=>$params['number'] //单号
  151. ]
  152. ];
  153. $url = '/U9C/webapi/SO/Submit';
  154. $url = $this->base_url.$url;
  155. $header[] = "Content-Type: application/json";
  156. $header[] = "Token: ".$token;
  157. $res = $this->sendReq($url,$header,json_encode($list));
  158. return array($res,$list);
  159. }
  160. /**
  161. * 销售单审核
  162. */
  163. public function xsdApprove($params,$token){
  164. $list = [
  165. [
  166. 'Code'=>$params['number'] //单号
  167. ]
  168. ];
  169. $url = '/U9C/webapi/SO/Approve';
  170. $url = $this->base_url.$url;
  171. $header[] = "Content-Type: application/json";
  172. $header[] = "Token: ".$token;
  173. $res = $this->sendReq($url,$header,json_encode($list));
  174. return array($res,$list);
  175. }
  176. /**
  177. * 根据调出单的单号做关联查询 然后匹配存储调入单的审核
  178. */
  179. public function drdcxBydcd($dcd_no,$token){
  180. // $list["SqlString"] = "select DescFlexField_PubDescSeg4 ,DocNo from InvDoc_TransferIn where DescFlexField_PubDescSeg4 = '".$dcd_no."'";
  181. $list["SqlString"] = "select a.docno,b.srcdocinfo_srcdocno from InvDoc_TransferIn as a left join InvDoc_TransInLine as b on a.id=b.TransferIn where srcdocinfo_srcdocno='".$dcd_no."'";
  182. $url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
  183. $url = $this->base_url.$url;
  184. $header[] = "Content-Type: application/json";
  185. $header[] = "Token: ".$token;
  186. $res = $this->sendReq($url,$header,json_encode($list));
  187. return array($res,$list);
  188. }
  189. //销售单按照多单号查询
  190. public function xscsByordernos($xs_no_list,$token){
  191. $str = '';
  192. foreach($xs_no_list as $k=>$v){
  193. if($k==0){
  194. $str .="'".$v."'";
  195. }else{
  196. $str .=",'".$v."'";
  197. }
  198. }
  199. //$list['SqlString'] = "select a.DocNo,b.DocLineNo,c.DocSubLineNo,c.ShipPlanQtyPU from SM_SO as a left join SM_SOLine as b on a.id = b.SO left join SM_SOShipline as c on c.SOLine = b.id where a.DocNo in (".$str.") order by a.CreatedOn desc ";
  200. $list['SqlString'] = "select a.DocNo,b.DocLineNo,c.DocSubLineNo,c.ShipPlanQtyPU,c.ItemInfo_ItemCode from SM_SO as a left join SM_SOLine as b on a.id = b.SO left join SM_SOShipline as c on c.SOLine = b.id where a.DocNo in (".$str.") order by a.CreatedOn desc ";
  201. $url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
  202. $url = $this->base_url.$url;
  203. $header[] = "Content-Type: application/json";
  204. $header[] = "Token: ".$token;
  205. $res = $this->sendReq($url,$header,json_encode($list));
  206. return array($res,$list);
  207. }
  208. /**
  209. * 调入单提交
  210. */
  211. public function drdSubmit($params,$token){
  212. $list = [
  213. [
  214. 'Code'=>$params['number'] //单号
  215. ]
  216. ];
  217. $url = '/U9C/webapi/TransferIn/Submit';
  218. $url = $this->base_url.$url;
  219. $header[] = "Content-Type: application/json";
  220. $header[] = "Token: ".$token;
  221. $res = $this->sendReq($url,$header,json_encode($list));
  222. return array($res,$list);
  223. }
  224. /**
  225. * 调入单审核
  226. */
  227. public function drdApprove($params,$token){
  228. $list = [
  229. [
  230. 'Code'=>$params['number'] //单号
  231. ]
  232. ];
  233. $url = '/U9C/webapi/TransferIn/Approve';
  234. $url = $this->base_url.$url;
  235. $header[] = "Content-Type: application/json";
  236. $header[] = "Token: ".$token;
  237. $res = $this->sendReq($url,$header,json_encode($list));
  238. return array($res,$list);
  239. }
  240. /**
  241. * 生成u9的采购单
  242. * 只是财务记录 不牵扯到库存
  243. * 目前采用的是无源的
  244. */
  245. public function cgdCreate($params,$token){
  246. $list = $this->cgdDataTrans($params);
  247. $url = '/U9C/webapi/PurchaseOrder/Create';
  248. $url = $this->base_url.$url;
  249. $header[] = "Content-Type: application/json";
  250. $header[] = "Token: ".$token;
  251. $res = $this->sendReq($url,$header,json_encode($list));
  252. return array($res,$list);
  253. }
  254. /**
  255. * 采购单提交
  256. */
  257. public function cgdSubmit($params,$token){
  258. $list = [
  259. [
  260. 'Code'=>$params['number'] //单号
  261. ]
  262. ];
  263. $url = '/U9C/webapi/PurchaseOrder/Submit';
  264. $url = $this->base_url.$url;
  265. $header[] = "Content-Type: application/json";
  266. $header[] = "Token: ".$token;
  267. $res = $this->sendReq($url,$header,json_encode($list));
  268. return array($res,$list);
  269. }
  270. /**
  271. * 采购单审核
  272. */
  273. public function cgdApprove($params,$token){
  274. $list = [
  275. [
  276. 'Code'=>$params['number'] //单号
  277. ]
  278. ];
  279. $url = '/U9C/webapi/PurchaseOrder/Approve';
  280. $url = $this->base_url.$url;
  281. $header[] = "Content-Type: application/json";
  282. $header[] = "Token: ".$token;
  283. $res = $this->sendReq($url,$header,json_encode($list));
  284. return array($res,$list);
  285. }
  286. /**
  287. * 生成u9的标准出货单
  288. * 会造成库存变动
  289. * 使用的是有源的就是销售单
  290. */
  291. public function bzchCreate($params,$token){
  292. $list = $this->yybzchDataTrans($params);
  293. $url = '/U9C/webapi/Ship/CreateBySrcDoc';
  294. $url = $this->base_url.$url;
  295. $header[] = "Content-Type: application/json";
  296. $header[] = "Token: ".$token;
  297. $res = $this->sendReq($url,$header,json_encode($list));
  298. return array($res,$list);
  299. }
  300. /**
  301. * 创建生产单
  302. */
  303. public function scdCreate($params,$token){
  304. $list = $this->scdDataTrans($params);
  305. $url = '/U9C/webapi/MODoc/Create';
  306. $url = $this->base_url.$url;
  307. $header[] = "Content-Type: application/json";
  308. $header[] = "Token: ".$token;
  309. $res = $this->sendReq($url,$header,json_encode($list));
  310. return array($res,$list);
  311. }
  312. /**
  313. * 查询生产订单状态
  314. */
  315. public function cxScdStatus($doc_no,$token){
  316. $list["SqlString"] = "select top 2 docno,DocState from mo_mo where docno = '".$doc_no."'";
  317. $url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
  318. $url = $this->base_url.$url;
  319. $header[] = "Content-Type: application/json";
  320. $header[] = "Token: ".$token;
  321. $res = $this->sendReq($url,$header,json_encode($list));
  322. return array($res,$list);
  323. }
  324. /**
  325. * 标准出货单提交并审核
  326. */
  327. public function bzchSubmitAndApprove($params,$token){
  328. $list = [
  329. [
  330. 'Code'=>$params['number'] //单号
  331. ]
  332. ];
  333. $url = '/U9C/webapi/Ship/SubmitAndApprove';
  334. $url = $this->base_url.$url;
  335. $header[] = "Content-Type: application/json";
  336. $header[] = "Token: ".$token;
  337. $res = $this->sendReq($url,$header,json_encode($list));
  338. return array($res,$list);
  339. }
  340. /**
  341. * 生成u9的标准收获单
  342. * 会造成库存变动
  343. * 这个也是有源的是采购单 不过估计用不上 先不写
  344. */
  345. public function bzshCreate($params,$token){
  346. }
  347. /**
  348. * 生成成品入库单
  349. */
  350. public function cprkCreate($params,$token){
  351. $list = $this->cprkDataTrans($params);
  352. $url = '/U9C/webapi/RcvRptDoc/Create';
  353. $url = $this->base_url.$url;
  354. $header[] = "Content-Type: application/json";
  355. $header[] = "Token: ".$token;
  356. $res = $this->sendReq($url,$header,json_encode($list));
  357. return array($res,$list);
  358. }
  359. /**
  360. * 成品入库单提交
  361. */
  362. public function cprkApprove($params,$token){
  363. $url = '/U9C/webapi/RcvRptDoc/Approve';
  364. $url = $this->base_url.$url;
  365. $header[] = "Content-Type: application/json";
  366. $header[] = "Token: ".$token;
  367. $res = $this->sendReq($url,$header,json_encode($params));
  368. return array($res,$params);
  369. }
  370. /**
  371. * 成品入库查询
  372. */
  373. public function cprkCx($params,$token){
  374. $url = '/U9C/webapi/RcvRptDoc/Query';
  375. $url = $this->base_url.$url;
  376. $header[] = "Content-Type: application/json";
  377. $header[] = "Token: ".$token;
  378. $res = $this->sendReq($url,$header,json_encode($params));
  379. return array($res,$params);
  380. }
  381. /**
  382. * 成品入库单审核
  383. */
  384. //根据erp的单号查询调出单是够存在
  385. public function xcDcdByOtherId($dcd_no,$token){
  386. $list["SqlString"] = "select DescFlexField_PubDescSeg4,DocNo from InvDoc_TransferOut where DescFlexField_PubDescSeg4 = '".$dcd_no."'";
  387. $url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
  388. $url = $this->base_url.$url;
  389. $header[] = "Content-Type: application/json";
  390. $header[] = "Token: ".$token;
  391. $res = $this->sendReq($url,$header,json_encode($list));
  392. return array($res,$list);
  393. }
  394. /**
  395. * 调出单的二次验证
  396. * 避免因为其他组织使用相同的erp单号导致的冲突 不能创建成品库的数据
  397. */
  398. public function xcDcdByOtherIdCheck($dcd_no,$token){
  399. $list["SqlString"] = "select a.DescFlexField_PubDescSeg4,a.DocNo,b.TransOutwh ,wh_out.code from InvDoc_TransferOut as a left join InvDoc_TransOutLine as b on a.id = b.TransferOut left join CBO_Wh wh_out on b.TransOutWh=wh_out.id where a.DescFlexField_PubDescSeg4 = '".$dcd_no."' ";
  400. $url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
  401. $url = $this->base_url.$url;
  402. $header[] = "Content-Type: application/json";
  403. $header[] = "Token: ".$token;
  404. $res = $this->sendReq($url,$header,json_encode($list));
  405. return array($res,$list);
  406. }
  407. /**
  408. * 查询料品
  409. */
  410. public function cxLp($params,$token){
  411. $list = [];
  412. foreach($params as $k=>$v){
  413. $list[] =[
  414. "ItemMaster"=>[
  415. "Code"=>$v['jm']
  416. ]
  417. ];
  418. }
  419. $url = '/U9C/webapi/ItemMaster/Query';
  420. $url = $this->base_url.$url;
  421. $header[] = "Content-Type: application/json";
  422. $header[] = "Token: ".$token;
  423. $res = $this->sendReq($url,$header,json_encode($list));
  424. return array($res,$list);
  425. }
  426. /**
  427. * 创建料品
  428. */
  429. public function cjLp($params,$token){
  430. $list = $this->cjlpDataTrans($params);
  431. $url = '/U9C/webapi/ItemMaster/Create';
  432. $url = $this->base_url.$url;
  433. $header[] = "Content-Type: application/json";
  434. $header[] = "Token: ".$token;
  435. $res = $this->sendReq($url,$header,json_encode($list));
  436. $this->logic_ding->sendToDing("创建料品监听".json_encode($params,JSON_UNESCAPED_UNICODE)."||".json_encode($res,JSON_UNESCAPED_UNICODE)."||".$url);
  437. return array($res,$list);
  438. }
  439. /**
  440. * 同步通知
  441. */
  442. public function tbLp($params,$token){
  443. $list = [];
  444. foreach($params['list'] as $k=>$v){
  445. $list[] = [
  446. "EntityFullName"=>'UFIDA.U9.CBO.SCM.Item.ItemMaster',//实体全名
  447. "EntityCode"=>$v['jm'],
  448. "FromOrgCode"=>$params['owner_code'],//创建组织编码
  449. "ToOrgCodeList"=>[140],//要同步的组织
  450. "OtherID"=>'',
  451. "ContextDTO"=>[
  452. "EntCode"=>$params['ztcode'],//企业编码
  453. "OrgCode"=>$params['owner_code'],//组织编码
  454. "UserCode"=>'xk',//用户编码
  455. "UserPwd"=>'',//用户密码
  456. ]
  457. ];
  458. }
  459. $url = '/U9C/webapi/ControlObjSend/ControlObjSend';
  460. $url = $this->base_url.$url;
  461. $header[] = "Content-Type: application/json";
  462. $header[] = "Token: ".$token;
  463. $res = $this->sendReq($url,$header,json_encode($list));
  464. return array($res,$list);
  465. }
  466. //由于逻辑修改造成 需要查询调出单是审核完毕
  467. public function xdlsCxDcd($dcd_no,$token){
  468. $list["SqlString"] = "select a.DocNo,a.Status,a.DescFlexField_PubDescSeg2,a.DescFlexField_PubDescSeg4,a.DescFlexField_PubDescSeg5,b.ItemInfo_ItemCode,b.CostUOMQty,b.CostPrice,b.ItemInfo_ItemName from InvDoc_TransferOut as a left join InvDoc_TransOutLine as b on a.id = b.TransferOut where a.Status = 2 and a.DocNo = '".$dcd_no."'";
  469. //$list["SqlString"] = "select a.*,b.* from InvDoc_TransferOut as a left join InvDoc_TransOutLine as b on a.id = b.TransferOut where a.Status = 2 and a.DocNo = '".$dcd_no."'";
  470. $url = '/U9C/webapi/QueryCommon/QueryInfoBySql';
  471. $url = $this->base_url.$url;
  472. $header[] = "Content-Type: application/json";
  473. $header[] = "Token: ".$token;
  474. $res = $this->sendReq($url,$header,json_encode($list));
  475. return array($res,$list);
  476. }
  477. public function sendReq($url,$header,$list){
  478. $ch = curl_init();
  479. curl_setopt($ch, CURLOPT_URL, $url);
  480. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  481. curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  482. curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
  483. curl_setopt($ch, CURLOPT_POST, 1);
  484. curl_setopt($ch, CURLOPT_POSTFIELDS, $list);
  485. curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  486. curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
  487. $res = curl_exec($ch);
  488. $res = json_decode($res,true);
  489. return $res;
  490. }
  491. //调出单的数据转化
  492. public function dcDataTrans($params){
  493. $trans_out_lines = [];
  494. foreach($params['list'] as $k=>$v){
  495. $trans_out_lines[] = [
  496. "ItemInfo" =>[
  497. "ItemCode"=>$v['jm'],//用友的简码
  498. ],
  499. "TransOutWh_Code"=>$params['dcckbm'],//调出仓库编码
  500. "StoreUOM_Code"=>"条",//调出库存单位Code 如条
  501. "StoreUOMQty"=>$v['dcsl'],//调出数量
  502. "StorageType"=>4,//存储类型:待检;1:在检;2:不合格;3:报废;4:可用;5:冻结;6:退回;7:待返工
  503. "LotInfo_Code"=>"",//批号Code 不知道有啥用 暂时留空吧
  504. "TransOutOwnerOrg_Code"=>$params['owner_code'],//货主组织Code
  505. "TransOutSubLines"=>[
  506. [
  507. 'TransInWh_Code'=>$params['drckbm']."",//调入仓库编码
  508. 'StorageType'=>4,//存储类型:待检;1:在检;2:不合格;3:报废;4:可用;5:冻结;6:退回;7:待返工
  509. 'TransInOrg_Code'=>$params['drzz_code']."",//调入组织Code
  510. 'TransOutOwnerOrg_Code'=>$params['owner_code']."",//货主组织Code
  511. 'StoreUOMQty'=>$v['dcsl'],
  512. ]
  513. ],
  514. "TransOutBins"=>[
  515. [
  516. 'BinInfo_Code'=>'',//库位Code
  517. 'StoreUOMQty'=>$v['dcsl']// 分配数量
  518. ]
  519. ]
  520. ,"DescFlexField"=>[
  521. "PubDescSeg2"=>$params['yyid'],//来源店铺 这种需要在店铺表中有
  522. "PubDescSeg4"=>$params['number'],//订单编码
  523. "PubDescSeg5"=>$params['shipremarks'],//订单的备注
  524. ],
  525. ];
  526. }
  527. $data = [];
  528. $data[] = [
  529. "OtherID"=>$params['number'],//第三方数据唯一性标识,此字段需要返回
  530. "TransOutDocType_Code"=> $params['TransOutDocType_Code'],//单据类型在u9中设置的 详情到u9界面查看 TransOut001 组织间调拨 TransOut002 仓库转储 TransOut004 委外加工发料 TransOut005 委外加工退料
  531. "BusinessDate"=>date("Y-m-d",$params['time']),//日期
  532. "TransferDirection"=>$params['TransferDirection'],//调拨方向 0:普通;1:退货
  533. "TransOutLines"=>$trans_out_lines,
  534. "DescFlexField"=>[
  535. "PubDescSeg2"=>$params['yyid'],//来源店铺 这种需要在店铺表中有
  536. "PubDescSeg4"=>$params['number'],//订单编码
  537. "PubDescSeg5"=>$params['shipremarks'],//订单的备注
  538. ],
  539. ];
  540. return $data;
  541. }
  542. //销售单的数据转化
  543. public function xsdDataTrans($params){
  544. $so_lines = [];
  545. foreach($params['list'] as $k=>$v){
  546. $so_lines[] = [
  547. 'TU'=>"条",//销售单位编码
  548. 'ItemCode'=>$v['jm'],//用友的编码
  549. 'PU'=>'条',//计价单位编码
  550. "ShipTogetherFlag"=>-1,//成套收发货标志
  551. 'DocLineNo'=>$k+1,
  552. 'CustomerItemNo'=>'',//客户料号
  553. 'CustomerItemName'=>'',//客户品名
  554. 'FinallyPriceTC'=>'',//最终价 单价
  555. 'PubDescSeg10'=>'',
  556. 'SOShiplineDTOList'=>[ //销售订单计划行
  557. [
  558. 'IsMRPRequire', //MRP需求
  559. 'DemandType',//需求分类
  560. 'RequireDate'=>date('m/d/Y H:i:s',$params['time']),
  561. ]
  562. ],
  563. 'RecTerm'=>'',//目前找不到了
  564. 'FreeType'=>($v['final_price'] < 0.01)?0: -1,//免费品类型 (无默认值请传-1;赠品请传0;备损品请传1) 徐凯设定的是 如果钱小于0.01 那么就传0 其他的传递-1
  565. 'UsableQtyOfInv'=>0,//文档中未查询到
  566. 'PubDescSeg3'=>'',
  567. 'PubDescSeg4'=>'',
  568. 'PriceList'=>'',//价表编码 (该属性可为空,且无默认值)
  569. 'TaxMoneyTC'=>0,//税额 (该属性可为空,且无默认值)
  570. 'TaxSchedule'=>'YZ05',//税组合编码 (该属性可为空,且无默认值) 不知道这个是啥 徐凯的老代码是这么写的
  571. 'DescFlexField'=>[
  572. 'PubDescSeg3'=>'',
  573. ],
  574. 'OrderByQtyTU'=>$v['dcsl'],//销售数量 (该属性可为空,且无默认值)
  575. 'OrderByQtyPU'=>$v['dcsl'],//计价数量 (该属性可为空,且无默认值)
  576. 'OrderPriceTC'=>'',//定价 (该属性可为空,且无默认值)
  577. 'Memo'=>'',//备注
  578. ];
  579. }
  580. $data = [];
  581. $data[] = [
  582. "OrderBy"=>$params['yyid'],//用友的商户的id
  583. "OtherID"=>$params['number'],//第三方传入ID
  584. "SaleDepartment"=>"",//部门编码 可为空
  585. "DocumentType"=>"SO1",//单据类型编码 标准销售单 So1是默认值
  586. "DocNo"=>'',//单据类型编码
  587. "AC"=>"C001",//人民币
  588. "TC"=>"C001",//人民币
  589. "ShipToSite"=>"",//收货位置编码
  590. "PubDescSeg2"=>"",
  591. "SOSrcType"=>0,
  592. "Seller"=>"",//业务员编码 可为空
  593. "ConfirmTerm"=>"",//但是现有文档没有
  594. "Memo"=>$params['number'],//备注
  595. "ShipRule"=>"",//但是现有文档没有
  596. "SOLineDTOList"=>$so_lines,
  597. ];
  598. return $data;
  599. }
  600. //销售单的数据转化 工厂对外的销售单
  601. public function xsdDataTransGC($params){
  602. $so_lines = [];
  603. foreach($params['list'] as $k=>$v){
  604. $so_lines[] = [
  605. 'TU'=>"条",//销售单位编码
  606. 'ItemCode'=>$v['jm'],//用友的编码
  607. 'PU'=>'条',//计价单位编码
  608. "ShipTogetherFlag"=>-1,//成套收发货标志
  609. 'DocLineNo'=>$k+1,
  610. 'CustomerItemNo'=>'',//客户料号
  611. 'CustomerItemName'=>'',//客户品名
  612. 'FinallyPriceTC'=>$v['final_price'],//最终价 单价
  613. 'PubDescSeg10'=>'',
  614. 'PriceSource'=>0,//从价目表中 获取价格
  615. 'SOShiplineDTOList'=>[ //销售订单计划行
  616. [
  617. 'IsMRPRequire', //MRP需求
  618. 'DemandType',//需求分类
  619. 'RequireDate'=>date('m/d/Y H:i:s',$params['time']),
  620. ]
  621. ],
  622. 'RecTerm'=>'',//目前找不到了
  623. 'FreeType'=>($v['final_price'] < 0.01)?0: -1,//免费品类型 (无默认值请传-1;赠品请传0;备损品请传1) 徐凯设定的是 如果钱小于0.01 那么就传0 其他的传递-1
  624. 'UsableQtyOfInv'=>0,//文档中未查询到
  625. 'PubDescSeg3'=>'',
  626. 'PubDescSeg4'=>'',
  627. 'PriceList'=>'',//价表编码 (该属性可为空,且无默认值)
  628. 'TaxMoneyTC'=>0,//税额 (该属性可为空,且无默认值)
  629. 'TaxSchedule'=>'YZ05',//税组合编码 (该属性可为空,且无默认值) 不知道这个是啥 徐凯的老代码是这么写的
  630. 'DescFlexField'=>[
  631. 'PubDescSeg3'=>'',
  632. ],
  633. 'OrderByQtyTU'=>$v['dcsl'],//销售数量 (该属性可为空,且无默认值)
  634. 'OrderByQtyPU'=>$v['dcsl'],//计价数量 (该属性可为空,且无默认值)
  635. 'OrderPriceTC'=>'',//定价 (该属性可为空,且无默认值)
  636. 'Memo'=>'',//备注
  637. ];
  638. }
  639. $data = [];
  640. $data[] = [
  641. "OrderBy"=>$params['yyid'],//用友的商户的id
  642. "OtherID"=>$params['number'],//第三方传入ID
  643. "SaleDepartment"=>"",//部门编码 可为空
  644. "DocumentType"=>"SO1",//单据类型编码 标准销售单 So1是默认值
  645. "DocNo"=>'',//单据类型编码
  646. "AC"=>"C001",//人民币
  647. "TC"=>"C001",//人民币
  648. "ShipToSite"=>"",//收货位置编码
  649. "PubDescSeg2"=>"",
  650. "SOSrcType"=>0,
  651. "Seller"=>"",//业务员编码 可为空
  652. "ConfirmTerm"=>"",//但是现有文档没有
  653. "Memo"=>$params['number'],//备注
  654. "ShipRule"=>"",//但是现有文档没有
  655. "SOLineDTOList"=>$so_lines,
  656. ];
  657. return $data;
  658. }
  659. public function xsdTwoDataTrans($params){
  660. $so_lines = [];
  661. foreach($params['list'] as $k=>$v){
  662. $so_lines[] = [
  663. 'TU'=>"条",//销售单位编码
  664. 'ItemCode'=>$v['jm'],//用友的编码
  665. 'PU'=>'条',//计价单位编码
  666. "ShipTogetherFlag"=>-1,//成套收发货标志
  667. 'DocLineNo'=>$k+1,
  668. 'CustomerItemNo'=>'',//客户料号
  669. 'CustomerItemName'=>'',//客户品名
  670. 'FinallyPriceTC'=>$v['final_price'],//最终价 单价
  671. 'PubDescSeg10'=>'',
  672. 'SOShiplineDTOList'=>[ //销售订单计划行
  673. [
  674. 'IsMRPRequire', //MRP需求
  675. 'DemandType',//需求分类
  676. 'RequireDate'=>date('m/d/Y H:i:s',$params['time']),
  677. ]
  678. ],
  679. 'RecTerm'=>'',//目前找不到了
  680. 'FreeType'=>($v['final_price'] < 0.01)?0: -1,//免费品类型 (无默认值请传-1;赠品请传0;备损品请传1) 徐凯设定的是 如果钱小于0.01 那么就传0 其他的传递-1
  681. 'UsableQtyOfInv'=>0,//文档中未查询到
  682. 'PubDescSeg3'=>'',
  683. 'PubDescSeg4'=>'',
  684. 'PriceList'=>'',//价表编码 (该属性可为空,且无默认值)
  685. 'TaxMoneyTC'=>0,//税额 (该属性可为空,且无默认值)
  686. 'TaxSchedule'=>'YZ05',//税组合编码 (该属性可为空,且无默认值) 不知道这个是啥 徐凯的老代码是这么写的
  687. 'DescFlexField'=>[
  688. 'PubDescSeg3'=>'',
  689. ],
  690. 'OrderByQtyTU'=>$v['dcsl'],//销售数量 (该属性可为空,且无默认值)
  691. 'OrderByQtyPU'=>$v['dcsl'],//计价数量 (该属性可为空,且无默认值)
  692. 'OrderPriceTC'=>'',//定价 (该属性可为空,且无默认值)
  693. 'Memo'=>'',//备注
  694. ];
  695. }
  696. $data = [];
  697. $data[] = [
  698. "OrderBy"=>$params['yyid'],//用友的商户的id
  699. "OtherID"=>$params['number'],//第三方传入ID
  700. "SaleDepartment"=>"",//部门编码 可为空
  701. "DocumentType"=>"SO1",//单据类型编码 标准销售单 So1是默认值
  702. "DocNo"=>'',//单据类型编码
  703. "AC"=>"C009",//美金
  704. "TC"=>"C009",//美金
  705. "ShipToSite"=>"",//收货位置编码
  706. "PubDescSeg2"=>"",
  707. "SOSrcType"=>0,
  708. "Seller"=>"",//业务员编码 可为空
  709. "ConfirmTerm"=>"",//但是现有文档没有
  710. "Memo"=>$params['number'],//备注
  711. "ShipRule"=>"",//但是现有文档没有
  712. "SOLineDTOList"=>$so_lines,
  713. ];
  714. return $data;
  715. }
  716. public function cgdDataTrans($params){
  717. $po_lines = [];
  718. foreach($params['list'] as $k=>$v){
  719. $po_lines[] = [
  720. //"POLineID"=>0,//采购订单行ID
  721. 'ItemInfo'=>[
  722. 'm_code'=>$v['jm'],//用友料号
  723. ],
  724. "ReqQtyTU"=>$v['dcsl'],//需求数量
  725. "ReqQtyTBU"=>0,//确认数量
  726. "SupplierConfirmQtyTU"=>$v['dcsl'],//确认数量
  727. "SupplierConfirmQtyTBU"=>0,//确认数量
  728. "FinallyPriceTC"=>$v['final_price'],//最终价格
  729. "IsPresent"=>false,//赠品
  730. ];
  731. }
  732. $data = [];
  733. $data[] = [
  734. 'DocNo'=>"",
  735. "DocumentType"=>'PO01',//PO01 标准采购默认值
  736. 'BizType'=>0,//业务类型:AR_Invoice 销售发票 0 (默认值),PM005 标准采购 316 ,PM055 全程委外采购 326 ,PM050 工序外协采购 325
  737. "BusinessDate"=>date("Y-m-d H:i:s"),
  738. 'OtherID'=>$params['number'],
  739. 'DescFlexField'=>(object)[
  740. ],
  741. 'TC'=>'C001',
  742. 'AC'=>'C001',
  743. "Memo"=>$params['number'],
  744. 'Supplier'=>[
  745. 'Code'=>$params['gys'],//供应商编码 到时间找下
  746. ],
  747. 'IsPriceIncludeTax'=>false,
  748. "POLineDTOList"=>$po_lines
  749. ];
  750. return $data;
  751. }
  752. public function yybzchDataTrans($params){
  753. $data = [];
  754. foreach($params['list'] as $k=>$v ){
  755. $data[] = [
  756. "SrcDocType"=>1,//售订单 Value:1 出货计划 Value:2 销售合同 Value:3 预出货单 Value:4
  757. "SrcDocNo"=>$params['xs_no'],//来源单号
  758. "SrcDocLineNo"=>$v['doclineno'],
  759. "SrcDocSubLineNo"=>$v['docsublineno'],
  760. //"WH"=>'',//存储地点ID 找不到id 那就找个WHcode
  761. 'WHCode'=>$params['drckbm'],//存储地点code 这里的参数为啥这么诡异 是因为 不想在很设置参数了 都按照调出的写法组件数据了
  762. "CurShipQty1"=>$v['dcsl'],//本次出货量
  763. "SOIsConsign"=>false,// 是否补货
  764. "OptionalSplitTerm"=>[],
  765. "DescFlexField"=>(object)[],
  766. "LineDescFlexField"=>(object)[],
  767. //"ShipDate",//出货单日期(该属性可为空,且无默认值)
  768. //"ShipConfirmDate"//出货确认日期(该属性可为空,且无默认值)
  769. "DocStatus"=>0,//单据状态:0开立;1审核中;2已审核,可用值:0,1,2,3
  770. ];
  771. }
  772. return $data;
  773. }
  774. //销售单的数据转化
  775. public function cjlpDataTrans($params){
  776. $list = [];
  777. foreach($params['list'] as $k=>$v){
  778. $list[] = [
  779. "Code"=>$v['jm'],//料号
  780. "Code1"=>"",//参考料号1
  781. "Name"=>$v['zh'],//品名
  782. "MainItemCategory"=>[
  783. "Code"=>$v['bm']
  784. ],
  785. "Org"=>[
  786. "Code"=>$params['ztcode']
  787. ],
  788. "OtherID"=>1,
  789. "PurchaseInfo"=>[
  790. "BudgetControlType"=>-1,//预算控制方式
  791. "PriceSource"=>2,//取价来源
  792. "InquireRule"=>-1,//询价策略
  793. 'InquireFixedPeriod'=>0,//间隔期
  794. "StatisticPeriod"=>-1,//配额统计期间
  795. "IsPUTradePathModify"=>true,//采购贸易路径可改
  796. "IsPURtnTradePathModify"=>true,//采购退货贸易路径可改
  797. ],
  798. "InventoryUOM"=>[
  799. "Code"=>'条'
  800. ],
  801. "InventorySecondUOM"=>[
  802. "Code"=>''
  803. ],
  804. "IsDualUOM"=>false,
  805. "InventoryInfo"=>[
  806. "InventoryPlanningMethod"=>4,//规划方法
  807. "InventoryPlanTime"=>-1,//
  808. "TurnOverRate"=>1,//
  809. "ReserveMode"=>-1,//
  810. "SupplyMethod"=>-1,//
  811. ],
  812. "DescFlexField"=>[
  813. "PrivateDescSeg1"=>"01",
  814. "PubDescSeg5"=>"01"
  815. ],
  816. "Description"=>$v['title'],
  817. "ItemForm"=>2001,//料品形态
  818. "ItemFormAttribute"=>10,//料品形态属性
  819. "IsInventoryEnable"=>true,//可库存交易
  820. "IsPurchaseEnable"=>true,//可采购
  821. "IsSalesEnable"=>true,//可采购
  822. "IsBuildEnable"=>true,//可生产
  823. "IsOutsideOperationEnable"=>true,//可委外
  824. "IsMRPEnable"=>true,//可MRP
  825. "IsBOMEnable"=>true,//可BOM
  826. "IsCostCalByGrade"=>false,//等级影响成本
  827. "IsCostCalByPotency"=>false,//成分影响成本
  828. "IsGradeControl"=>false,//等级控制
  829. "StandardGrade"=>-1,//标准等级
  830. "StartGrade"=>-1,//起始等级
  831. "EndGrade"=>-1,//结束等级
  832. "IsPotencyControl"=>false,//成分控制
  833. "StandardPotency"=>-1,//标准成分
  834. "StartPotency"=>-1,//起始成分
  835. "EndPotency"=>-1,// 结束成分
  836. ];
  837. }
  838. return $list;
  839. }
  840. public function cprkDataTrans($params){
  841. $list = [];
  842. foreach($params['list'] as $k=>$v){
  843. $tmp = [
  844. "MOKey"=>[
  845. "OtherID"=>"",
  846. "ID"=>0,
  847. "DocNo"=>$params['rkcode'],//需要填写入库 rkcode 传递
  848. "OrgID"=>0,
  849. "IsSuccess"=>1,
  850. "ErrorInfo"=>"",
  851. "CUD"=>0,
  852. ],
  853. "Wh"=>[
  854. "Code"=>$params['rev_wh_code'],//存储地点信息 传递
  855. ],
  856. "LineNum"=>$k,//行号
  857. "StorageType"=>4,//
  858. "Grade"=>0,//等级
  859. "Element"=>0,
  860. "CompleteQty"=>$v['sl'],//申报数量(生产单位)
  861. "CompleteQtyByWhUOM"=>$v['sl'],//申报数量(库存单位)
  862. "CompleteQtyByCostUOM"=>$v['sl'],//申报数量(成本单位)
  863. "CUD"=>0,
  864. "OwnerOrg"=>[
  865. "Code"=>$params['org_code'],//货主组织编码
  866. ],
  867. "OutputType"=>0,//产出类型
  868. "Item"=>[
  869. "Code"=>$v['jm'],//编码 其实是用友的料号
  870. ],
  871. "ScrapQty"=>0,//报废数量
  872. "ScrapQtyByCostUOM"=>0,//报废数量(成本单位)
  873. "PUToPBURate"=>0,//生产主-生产副
  874. "CUToCBURate"=>0,//成本主-成本副
  875. "PBUToCBURate"=>0,//生产-成本
  876. "SourceRcvRptLine"=>[ //来源入库单行
  877. "RcvRptDocDTO"=>[ //入库单DTO
  878. "ID"=>0, //唯一标示
  879. "DocType"=>[ //单据类型
  880. 'Code'=>0,
  881. ],
  882. "BusinessDate"=>'',//业务日期
  883. "DocNo"=>"",//单号
  884. "SourceDoc"=>[ //来源单据
  885. "MOSrcDocType"=>0,//来源单据类型
  886. "SrcDocOrg"=>0,//
  887. "SrcDoc"=>[ //来源单据
  888. "ID"=>$params['rkid'], //单据ID 徐凯传递的是$data['rkid']
  889. "EntityType"=>'UFIDA.U9.MO.MO.MO',//单据类型
  890. ],
  891. "SrcDocVer"=>'',//单据版本
  892. "SrcDocLine"=>[
  893. "ID"=>0,
  894. "EntityType"=>'',
  895. ],
  896. "SrcDocSubline"=>[
  897. "ID"=>0,
  898. "EntityType"=>'',
  899. ],
  900. "SrcDocNo"=>$params['rkid'],//单据号 徐凯传递了$data['rkid']
  901. "SrcDocLineNo"=>'',//行号
  902. "SrcDocSublineNo"=>10+$k,
  903. "SrcDocID"=>$params['rkid'],//来源单据ID 徐凯传递了$data['rkid']
  904. "SrcDocLineID"=>0,
  905. "SrcDocType"=>'',
  906. ],
  907. "DocDate"=>date("Y-m-d",time()),
  908. "RcvOrg"=>[ //入库组织
  909. "Code"=>$params['rec_code'],//入库组织编码 需填写
  910. ],
  911. "Org"=>[
  912. "Code"=>$params['org_code'],//组织编码 需填写
  913. ],
  914. "Direction"=>0,
  915. "DocState"=>0,
  916. "RcvDep"=>[
  917. "ID"=>0,
  918. "Code"=>'',
  919. "Name"=>''
  920. ],
  921. "RcvPerson"=>[
  922. "ID"=>0,
  923. "Code"=>'',
  924. "Name"=>''
  925. ],
  926. "OtherID"=>"",
  927. ],
  928. "ProductUOM"=>[
  929. "Code"=>'条',
  930. ],
  931. "ProductBaseUOM"=>[
  932. "Code"=>'条',
  933. ],
  934. "StoreUOM"=>[
  935. "Code"=>'条',
  936. ],
  937. "StoreBaseUOM"=>[
  938. "Code"=>'条',
  939. ],
  940. "CoUOM"=>[
  941. "Code"=>'条',
  942. ],
  943. "CostBaseUOM"=>[
  944. "Code"=>'条',
  945. ],
  946. "OperationState"=>0,
  947. "OutputType"=>0,
  948. "Item"=>[
  949. "Code"=>$v['jm'],//料号 徐凯传递的是$data['jm']
  950. ],
  951. "OwnerOrg"=>[
  952. "Code"=>$params['org_code'],//货主组织编码 需填写
  953. ],
  954. "PUToPBURate"=>0,
  955. "SUToSBURate"=>0,
  956. "PBUToSBURate"=>0,
  957. "CUToCBURate"=>0,
  958. "PBUToCBURate"=>0,
  959. "Grade"=>0,
  960. "Element"=>0,
  961. "Wh"=>[
  962. "Code"=>$params['rev_wh_code'],//存储地点信息 传递
  963. ],
  964. "StorageType"=>4,
  965. "RcvValiddate"=>0,
  966. "RcvQtyByProductUOM"=>0,
  967. "RcvQtyByWhUOM"=>0,
  968. "RcvQtyByCostUom"=>0,
  969. "RcvOrg"=>[ //入库组织
  970. "Code"=>001,//编码
  971. ],
  972. "PerformingOrg"=>[ //执行组织
  973. "Code"=>001 //编码
  974. ],
  975. "CUD"=>0,
  976. "LineNum"=>0,
  977. "MO"=>[ //生产订单
  978. "Code"=>$params['rkcode'],//徐凯写了 rkcode
  979. ],
  980. "ID"=>0,
  981. ]
  982. ];
  983. $list[] = $tmp;
  984. }
  985. $res = [
  986. "DocNo"=>"",//
  987. "CompleteList"=>$list,
  988. "DescFlexField"=>[
  989. //"PubDescSeg2"=>$params['yyid'],//kh
  990. "PubDescSeg4"=>$params['number'],//订单编码
  991. "PubDescSeg5"=>$params['shipremarks'],//备注
  992. ],
  993. "DocType"=>[
  994. "Code"=>0,
  995. ],
  996. "BusinessDate"=>(date("Y-m-d",time())),
  997. "OtherID"=>'',//订单编码
  998. "Direction"=>0,
  999. "IsOffLine"=>1, //是否撤线报
  1000. "DocState"=>0,
  1001. "Remark"=>time(),
  1002. "RcvPerson"=>[
  1003. "Code"=>"ERP"
  1004. ]
  1005. ];
  1006. if(!empty($params['yyid'])){
  1007. $res['DescFlexField']['PubDescSeg2'] = $params['yyid'];//备注-客户
  1008. }
  1009. return [$res];
  1010. }
  1011. public function scdDataTrans($params){
  1012. $list = [];
  1013. foreach($params['list'] as $k=>$v){
  1014. $info = [
  1015. "OtherID"=>"",
  1016. "Org"=>[
  1017. "Code"=>$params['org_code']//生产组织编码
  1018. ],
  1019. "ItemMaster"=>[
  1020. "Code"=>$v['jm'],//料号
  1021. ],
  1022. "DocType"=>[
  1023. "Code"=>$params['djhlx']//单据类型
  1024. ],
  1025. "Department"=>[
  1026. "Code"=>$params['scbm_code']//生产部门编码
  1027. ],
  1028. "ExpandLevel"=>0, //展开阶数
  1029. "AlternateType"=>0,//生产目的
  1030. "RoutingAlternate"=>0,//工艺生产目的
  1031. "RoutingEffeDate"=>'',//工艺有效日期
  1032. "ProductQty"=>$v['sl'],
  1033. "ProductUOM"=>[
  1034. "Code"=>'条'
  1035. ],
  1036. "StartDate"=>date('Y-m-d',$params['time']),//计划开工日期
  1037. "CompleteDate"=>date('Y-m-d',$params['time']),//计划完工日期
  1038. "MOSourceDocType"=>0,//来源单据类型
  1039. "OwnerOrg"=>[
  1040. "Code"=>$params['owner_org_code']//货主组织编码
  1041. ],
  1042. "SCVWh"=>[
  1043. "Code"=>$v['drck']//完工存储地点编码
  1044. ],
  1045. "DemandCode"=>-1,//需求分类
  1046. "IsFirmed"=>false,//锁定标志
  1047. "IsCapacityLimit"=>false,//有限产能
  1048. "Priority"=>0,// 优先级
  1049. "CUD"=>0,//增删改类型
  1050. "BOMType"=>0,//BOM类型
  1051. "Description"=>$params['title'],//备注
  1052. "MRPQty"=>0,//MRP数量
  1053. "MOID"=>0,//生产订单ID
  1054. "PBUToSBURate"=>0,//生产-库存
  1055. "PBUToCBURate"=>0,//生产-成本
  1056. "DescFlexField"=>[
  1057. "PubDescSeg4"=>$params['title'],//erp单号
  1058. "PubDescSeg5"=>$params['shipremarks'],//erp备注
  1059. ]
  1060. ];
  1061. if(!empty($params['yyid'])){
  1062. $info['DescFlexField']['PubDescSeg2'] = $params['yyid'];//备注-客户
  1063. }
  1064. $list[] = $info;
  1065. }
  1066. return $list;
  1067. }
  1068. }