newparams.js 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282
  1. // 定义字段映射
  2. const FieldKeysMap = {
  3. "STK_MisDelivery": "FID,FEntity_FEntryID,FBillNo,FStockLocId.FF102029.fname,FMaterialId.fnumber,FBOXNO_LT,FQty,FInventoryQty,FENCHASENUM_LT,FFabricOrderNo_LT,FInventoryQty,FAuxPropId.FF101501.FDATAVALUE,Flot.FNumber,FWorkCenterId.fname,FDate,FEntryNote,FPickingPeople_LT.fname,FSTOCKERID.fname,FWorkDeptId_LT.fname,FDeptId.FName,FPickerId.FName",
  4. "SP_PickMtrl": "FID,FEntity_FEntryID,FBillNo,FStockLocId.FF102029.fname,FMaterialId.fnumber,FBOXNO_LT,FActualQty,FInventoryQty,FENCHASENUM_LT,FFabricOrderNo_LT,FInventoryQty,FAuxPropId.FF101501.FDATAVALUE,Flot.FNumber,FWorkCenterId.fname,FEntrtyMemo,FDate,FPickerId.fname,FSTOCKERID.fname,FStockActualQty,FWorkShopId.fname,FPickingPeople_LT.FName",
  5. "LT_PRD_PMCWorkBench": "FID,FEntity_FEntryID,FBillNo,FStockLocId.FF102029.fname,FMaterialId.fnumber,FBOXNO_LT,FActualQty,FInventoryQty,FENCHASENUM_LT,FFabricOrderNo,FInventoryQty,FAuxPropId.FF101501.FDATAVALUE,Flot.FNumber,FWorkCenterId_LT.fname,FEntrtyMemo,FDate,FApplicantId.fname,FSTOCKERID.fname,FStockActualQty,FWorkShopId.fname,FSTOCKID.FNumber",
  6. "PUR_MRB": "FID,FPURMRBENTRY_FEntryID,FBillNo,FStockLocId.FF102029.fname,FMaterialId.fnumber,FBOXNO_LT,FInventoryQty,FENCHASENUM_LT,FInventoryQty,FAuxPropId.FF101501.FDATAVALUE,Flot.FNumber,FDate,FSTOCKERID.fname,FStockId.FNumber,FRMREALQTY,FFabricOrderNo,FPURCHASERID.fname",
  7. // "STK_MISCELLANEOUS": "FID,FEntity_FEntryID,FENCHASENUM_LT,FSTOCKID.FName,FStockLocId.FF102029.FNumber,FMATERIALID.FNumber,FLOT.FNumber,FQty,FUnitID.FName,FDate,FBillNo,FSTOCKID.FNumber",
  8. // "STK_InStock": "FID,FInStockEntry_FEntryID,FENCHASENUM_LT,FSTOCKID.FName,FStockLocId.FF102029.FNumber,FMATERIALID.FNumber,FLOT.FNumber,FRealQty,FUnitID.FName,FDate,FBillNo,FSTOCKID.FNumber",
  9. // "STK_OEMInStock": "FID,FBillEntry_FEntryID,FENCHASENUM_LT,FSTOCKID.FName,FStockLocId.FF102029.FNumber,FMATERIALID.FNumber,FLOT.FNumber,FQty,FUnitID.FName,FDate,FBillNo,FSTOCKID.FNumber"
  10. };
  11. export function getSearchParam(condition) {
  12. let FilterString = [{ //其他出库
  13. "Left": "(",
  14. "FieldName": "FDocumentStatus",
  15. "Compare": "105",
  16. "Value": "A",
  17. "Right": "",
  18. "Logic": 1
  19. },
  20. // {//审核中
  21. // "Left": "",
  22. // "FieldName": "FDocumentStatus",
  23. // "Compare": "105",
  24. // "Value": "B",
  25. // "Right": "",
  26. // "Logic": 1
  27. // },
  28. {
  29. "Left": "",
  30. "FieldName": "FDocumentStatus",
  31. "Compare": "105",
  32. "Value": "D",
  33. "Right": ")",
  34. "Logic": 0
  35. }, {
  36. "Left": "",
  37. "FieldName": "FStockOrgId.FNumber",
  38. "Compare": "67",
  39. "Value": condition.FStockOrgId,
  40. "Right": "",
  41. "Logic": 0
  42. },
  43. {
  44. "FieldName": "FBillNo",
  45. "Compare": "17",
  46. "Value": condition.billNo,
  47. "Left": "",
  48. "Right": "",
  49. "Logic": 0
  50. },
  51. {
  52. "Left": "",
  53. "FieldName": "FStockId.FName",
  54. "Compare": "17",
  55. "Value": "面料",
  56. "Right": "",
  57. "Logic": 0
  58. },
  59. {
  60. "FieldName": "FDate",
  61. "Compare": "39",
  62. "Value": condition.range[0],
  63. "Left": "(",
  64. "Right": "",
  65. "Logic": "0"
  66. },
  67. {
  68. "FieldName": "FDate",
  69. "Compare": "16",
  70. "Value": condition.range[1],
  71. "Left": "",
  72. "Right": ")",
  73. "Logic": "0"
  74. }
  75. ]
  76. let FieldKeys =
  77. "FID,FWorkCenterId.fname,FPickingPeople_LT.fname,FSTOCKERID.fname,FBillNo,FDate,FNote,FStockOrgId"
  78. console.log(condition.FBillType)
  79. if (condition.FBillType != null) { //领料
  80. FilterString.push({
  81. "Left": "",
  82. "FieldName": "FBillType",
  83. "Compare": "105",
  84. "Value": condition.FBillType,
  85. "Right": "",
  86. "Logic": 0
  87. });
  88. console.log('aaaa')
  89. FieldKeys =
  90. "FID,FWorkCenterId_LT.fname,FApplicantId.fname,FSTOCKERID.fname,FBillNo,FDate,FDescription,FStockOrgId"
  91. }
  92. if (condition.FormId == "STK_MisDelivery") { //其他出库
  93. FilterString.push({
  94. "Left": "",
  95. "FieldName": "FStockDirect",
  96. "Compare": "29",
  97. "Value": "GENERAL",
  98. "Right": "",
  99. "Logic": 0
  100. });
  101. FieldKeys =
  102. "FID,FWorkCenterId.fname,FPickingPeople_LT.fname,FSTOCKERID.fname,FBillNo,FDate,FNote,FStockOrgId,FDeptId.FName,FPickerId.FName"
  103. }
  104. if (condition.FormId == "SP_PickMtrl") { //简单生产领料单
  105. FieldKeys =
  106. "FID,FWorkCenterId.fname,FPickerId.fname,FSTOCKERID.fname,FBillNo,FDate,FDescription,FStockOrgId,FPickingPeople_LT.FName"
  107. }
  108. if (condition.FormId == "PUR_MRB") { //采购退料单
  109. FieldKeys =
  110. "FID,FSupplierID.fname,FPURCHASERID.fname,FPURCHASEDEPTID.fname,FSTOCKERID.fname,FBillNo,FDate,FStockOrgId"
  111. }
  112. console.log(FieldKeys)
  113. return {
  114. "parameters": [{
  115. "FormId": condition.FormId,
  116. "FieldKeys": FieldKeys,
  117. "FilterString": FilterString
  118. }]
  119. }
  120. }
  121. export function getBillDetailListParam(condition) {
  122. console.log(condition)
  123. return {
  124. "parameters": [{
  125. "FormId": condition.FormId,
  126. "FieldKeys": FieldKeysMap[condition.FormId],
  127. "FilterString": [{
  128. "Left": "",
  129. "FieldName": "FID",
  130. "Compare": "338",
  131. "Value": condition.selectedFID,
  132. "Right": "",
  133. "Logic": 0
  134. }],
  135. }]
  136. }
  137. }
  138. // 定义一个函数来创建库存查询请求数据
  139. export function createInventoryQueryRequest(value) {
  140. return {
  141. parameters: [{
  142. FormId: "STK_Inventory",
  143. FieldKeys: "fID",
  144. FilterString: [{
  145. Left: "",
  146. FieldName: "FStockLocId.FF102029.FName",
  147. Compare: "67",
  148. Value: value,
  149. Right: "",
  150. Logic: 0
  151. },
  152. {
  153. Left: "",
  154. FieldName: "FBaseQty",
  155. Compare: "21",
  156. Value: "0",
  157. Right: "",
  158. Logic: 0
  159. }
  160. ]
  161. }]
  162. };
  163. }
  164. function getActualQtyKey(FormId) {
  165. const keyMap = {
  166. 'LT_PRD_PMCWorkBench': 'FActualQty',
  167. 'SP_PickMtrl': 'FActualQty',
  168. 'STK_MisDelivery': 'FQty',
  169. 'PUR_MRB': 'FRMREALQTY'
  170. };
  171. return keyMap[FormId] || 'FQty';
  172. }
  173. function createEntityObject(item, actualQtyKey) {
  174. return {
  175. "FEntryID": item["FEntity.FEntryID"],
  176. "FInventoryQty": item["FInventoryQty"],
  177. "FAuxPropId": {
  178. "FAUXPROPID__FF101501": {
  179. "FNumber": item["FAuxPropId.FF101501.FDATAVALUE"]
  180. }
  181. },
  182. "FStockLocId": {
  183. "FSTOCKLOCID__FF102029": {
  184. "Fname": item["FStockLocId.FF102029.fname"]
  185. }
  186. },
  187. "FLot": {
  188. "FNumber": item["Flot.FNumber"]
  189. },
  190. "FENCHASENUM_LT": item["FENCHASENUM.LT"],
  191. [actualQtyKey]: item[actualQtyKey] // 使用动态键名
  192. };
  193. }
  194. export function getSaveParam(FormId, data, indexList) {
  195. const targetFID = data;
  196. const actualQtyKey = getActualQtyKey(FormId);
  197. const FEntityObjects = indexList
  198. .filter(item => item.FID === targetFID)
  199. .map(item => createEntityObject(item, actualQtyKey));
  200. const needUpdateFields = [
  201. "FInventoryQty",
  202. "FAuxPropId",
  203. "FStockLocId",
  204. "FIsScanFabric",
  205. "FLot",
  206. "FENCHASENUM_LT",
  207. actualQtyKey // 直接添加到数组中
  208. ];
  209. return {
  210. "parameters": [
  211. FormId,
  212. {
  213. "NeedUpDateFields": needUpdateFields,
  214. "NeedReturnFields": ["FID"],
  215. "IsDeleteEntry": "true",
  216. "SubSystemId": "",
  217. "IsVerifyBaseDataField": "false",
  218. "IsEntryBatchFill": "true",
  219. "ValidateFlag": "true",
  220. "NumberSearch": "true",
  221. "IsAutoAdjustField": "false",
  222. "InterationFlags": "",
  223. "IgnoreInterationFlag": "",
  224. "IsControlPrecision": "false",
  225. "ValidateRepeatJson": "false",
  226. "Model": {
  227. "FID": targetFID,
  228. "FIsScanFabric": true,
  229. "FEntity": FEntityObjects
  230. }
  231. }
  232. ]
  233. };
  234. }
  235. export function getSubmitParam(FormId, data) {
  236. const params = {
  237. "parameters": [
  238. FormId,
  239. {
  240. "CreateOrgId": 0,
  241. "Numbers": [],
  242. "Ids": data.toString(),
  243. "SelectedPostId": 0,
  244. "UseOrgId": 0,
  245. "NetworkCtrl": "",
  246. "IgnoreInterationFlag": ""
  247. }
  248. ]
  249. };
  250. console.log(params);
  251. return params;
  252. }
  253. export function getAuditParam(FormId, data) {
  254. const params = {
  255. "parameters": [
  256. FormId,
  257. {
  258. "CreateOrgId": 0,
  259. "Numbers": [],
  260. "Ids": data.toString(),
  261. "InterationFlags": "",
  262. "UseOrgId": 0,
  263. "NetworkCtrl": "",
  264. "IsVerifyProcInst": "true",
  265. "IgnoreInterationFlag": "",
  266. "UseBatControlTimes": "false"
  267. }
  268. ]
  269. }
  270. console.log(params)
  271. return params
  272. }