{"version":3,"sources":["webpack:///./src/views/components/modals/baseModal.vue?bd2a","webpack:///./src/views/components/modals/baseModal.vue","webpack:///src/views/components/modals/baseModal.vue","webpack:///./src/views/components/modals/baseModal.vue?656e","webpack:///./src/views/components/modals/baseModal.vue?398e","webpack:///./src/controllers/sd/saleOrderDispatchSearchController.js"],"names":["render","_vm","this","_c","_self","ref","attrs","$t","title","dialogVisible","width","top","show_close","modal","on","$event","_t","hideFooter","_e","slot","staticClass","cancel","_v","is_loading","saveData","_s","saveButtonTitle","staticRenderFns","name","props","type","String","default","size","Boolean","data","ModalTheme","created","methods","show","theme","localStorage","getItem","_","debounce","evt","_this2","preventDefault","_this","$emit","is_validated","action_state","msg","isNull","msgToasts","leading","trailing","component","content_type","create","age","fields","key","label","sortable","thStyle","_precise","formatter","value","item","create_by_username","context","dicpatch_fields","id","editable","display","tdClass","disabled","state_control","other_type_key","isCheckInApprove","fcCheckSDApproved","SDApprovedState","is_email_send","button","icon_class","show_label","rules","Date","descriptor","getDispatchItems","_getDispatchItems","_asyncToGenerator","regeneratorRuntime","mark","_callee","_params","item_biz_data","_fields","result","wrap","_context","prev","next","biz_data_helper","map","push","selectAction","params","run","sent","ActionResult","Result","Data","length","abrupt","stop","_x2","apply","arguments","getDispatchItemsSql","_getDispatchItemsSql","_callee2","_context2","execAction","_x3","getData","_getData","_callee3","salesline_biz_data","_context3","_x4","approveDataNew","_approveDataNew","_callee4","_actions","update_status_biz_data","approved_biz_data","update_soline_biz_data","purch_code_biz_data","purch_biz_data","purch_item_biz_data","_p","purch_update_biz_data","h_biz_data","x_biz_data","i","_jsonData","_p2","dispatch_biz_data","is_all_approved","_check_is_all_approved","_rt","_rdata","_is_ok","_msg","ep","_context4","approve_data","each","t","IsApproved","is_approved","ApproveBy","username","status_id","ApproveRemark","action","output_last_item_map","is_update_ok","rollback_when","isApproved","_x","SODispatchId","order_dispatch_id","CreateBy","userId","IsEmailSend","update_valid_data","SalesLineId","purch_data","main","date","_date","_mt","cloneDeep","seq","skip_when","insertAction","mixin_last_item_map","PurchId","_items","filter","items","OrderAccount","m","_ml","PurchaseOrderId","update_list","ax_data","isEmpty","jsonGroupData","company","method","jsonData","handlerAction","status","output_result_data_code","state","mixin_result_data_map","AXParams","checkAction","ax_interface_status","api","actions","BatchResult","Actions","Code","message","Params","LastItem","JSON","stringify","error_msg","common_controller","createAXErorrLog","_x5","approveListData","_approveListData","_callee5","_paramsList","_context5","update_dispatch_data","updateAction","_x6","refuseList","_refuseList","_callee6","_context6","_x7","handleAxException","_handleAxException","_callee7","_context7","update_sod_data","Rollback","join","_x8","deleteData","_deleteData","_callee8","validForm","ax_params","vm","del_biz_data","purch_delete_biz_data","check_dispatch_biz_data","cancel_email_biz_data","_check_del_dt","_is_check_del_ok","_context8","CurrentDispathId","inputQty","qty","allowed","deleteAction","OrderDispatch_id","idx","toString","console","log","error_code","_x9","_x10","_x11","_x12","updateDispatchPre","_updateDispatchPre","_callee9","so_approve_biz_data","_documentCreateByUsername","_is_internal","_DiffAmountCNY","_MinusAmountCNY","_LastDiffAmountCNY","credit_form","_check_update_dt","_is_check_update_ok","_context9","save_data","documentCreateByUsername","is_internal","change_qty","isAXError","AXError","Math","abs","price","price_vend","Sales_Order_Price","Sales_Cost","ItemId","DocumentType","ApproveType","DocumentCreateBy","purch_price","initial_purch_price","sales_price","sales_cost","DiffAmountCNY","MinusAmountCNY","LastDiffAmountCNY","update_soline_form_list","_x13","updateDispatch","_updateDispatch","_callee10","up_purch_biz_data","up_from_ax_purch_biz_data","_context10","is_deleted","PurchPrice","DeliveryDate","delivery_date","_x14","updateDispatchAccessory","_updateDispatchAccessory","_callee11","k","is_error","rt","_context11","add","edit","delete","indexOf","_x15","checkOrderIsApproved","_checkOrderIsApproved","_callee12","check_biz_data","_context12","itemId","salesOrderId","_x16"],"mappings":"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","file":"js/chunk-44ab37fe.5d3d84ff.js","sourcesContent":["export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./baseModal.vue?vue&type=style&index=0&id=2eaf8adc&prod&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('el-dialog',{ref:\"bm\",attrs:{\"title\":_vm.$t(_vm.title),\"visible\":_vm.dialogVisible,\"width\":_vm.width,\"close-on-click-modal\":false,\"top\":_vm.top,\"destroy-on-close\":true,\"show-close\":_vm.show_close,\"modal-append-to-body\":_vm.modal},on:{\"update:visible\":function($event){_vm.dialogVisible=$event}}},[_vm._t(\"modal_content\"),(!_vm.hideFooter)?_c('span',{attrs:{\"slot\":\"footer\"},slot:\"footer\"},[_c('el-button',{staticClass:\"iconfont icon-cancel\",attrs:{\"type\":\"info\",\"size\":\"small\"},on:{\"click\":_vm.cancel}},[_vm._v(\" 取 消\")]),_c('el-button',{staticClass:\"iconfont icon-save\",attrs:{\"type\":\"success\",\"size\":\"small\",\"loading\":_vm.is_loading},on:{\"click\":_vm.saveData}},[_vm._v(\" \"+_vm._s(_vm.saveButtonTitle)+\"\\n    \")])],1):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <el-dialog ref=\"bm\" :title=\"$t(title)\" :visible.sync=\"dialogVisible\" :width=\"width\" :close-on-click-modal=\"false\" :top=\"top\"\n    :destroy-on-close=\"true\" :show-close=\"show_close\" :modal-append-to-body=\"modal\">\n    <slot name=\"modal_content\"></slot>\n    <span slot=\"footer\" v-if=\"!hideFooter\">\n      <el-button type=\"info\" class=\"iconfont icon-cancel\" size=\"small\" @click=\"cancel\">&nbsp;取 消</el-button>\n      <el-button type=\"success\" class=\"iconfont icon-save\" size=\"small\" @click=\"saveData\" :loading=\"is_loading\">&nbsp;{{saveButtonTitle}}\n      </el-button>\n    </span>\n  </el-dialog>\n  <!-- <b-modal ref=\"bm\" no-close-on-backdrop :title=\"title\" header-text-variant=\"light\" :hide-footer=\"hideFooter\" centered :size=\"size\" ok-variant=\"warning\" @hide=\"is_loading = false\" :header-class=\"ModalTheme\">\n    <template #default=\"{}\">\n      <slot name=\"modal_content\"></slot>\n    </template>\n\n    <template #modal-footer=\"{ hide }\">\n      <el-button type=\"info\" class=\"iconfont icon-cancel\" size=\"small\" @click=\"hide()\">&nbsp;取 消</el-button>\n      <el-button type=\"success\" class=\"iconfont icon-save\" size=\"small\" @click=\"saveData\" :loading=\"is_loading\">&nbsp;保 存</el-button>\n    </template>\n  </b-modal> -->\n</template>\n<script>\nexport default {\n  name: \"baseModal\",\n  props: {\n    title: {\n      type: String,\n      default: \"提示\",\n    },\n    size: {\n      type: String,\n      default: \"lg\",\n    },\n    hideFooter: {\n      type: Boolean,\n      default: false,\n    },\n    width: {\n      type: String,\n      default: \"40%\"\n    },\n    saveButtonTitle: {\n      type: String,\n      default: \"保 存\"\n    },\n    top: {\n      type: String,\n      default: '15vh'\n    },\n    show_close: {\n      type: Boolean,\n      default: true,\n    },\n    modal: {\n      type: Boolean,\n      default: true,\n    },\n\n  },\n  data() {\n    return {\n      is_loading: false,\n      ModalTheme: \"ModalTheme\",\n      dialogVisible: false\n    };\n  },\n  created() {\n\n  },\n  methods: {\n    show() {\n      let theme = localStorage.getItem(\"theme\");\n      if (theme) {\n        if (theme == \"yellow\") {\n          this.ModalTheme = \"ModalTheme\";\n        }\n        if (theme == \"blue\") {\n          this.ModalTheme = \"ModalTheme1\";\n        }\n        if (theme == \"green\") {\n          this.ModalTheme = \"ModalTheme2\";\n        }\n        if (theme == \"gray\") {\n          this.ModalTheme = \"\";\n        }\n      }\n      // this.$refs.bm.show()\n      this.dialogVisible = true;\n\n    },\n\n    saveData: _.debounce(\n      function (evt) {\n        evt.preventDefault();\n        let _this = this;\n        if (this.is_loading === true) return;\n        this.is_loading = true;\n        this.$emit(\"saveData\", (is_validated, action_state, msg) => {\n          this.is_loading = false;\n          if (_.isNull(is_validated)) {\n            return\n          }\n          if (is_validated) {\n            if (action_state) {\n              _this.msgToasts(this.$t(\"notify.action_successfully\"), \"success\");\n              _this.dialogVisible = false;\n              // _this.$refs.bm.hide()\n            } else {\n              this.msgToasts(this.$t(\"notify.action_unsuccessfully\") + msg, \"error\");\n            }\n          }\n          else {\n            _this.dialogVisible = false;\n          }\n        });\n      },\n      1000,\n      { leading: false, trailing: true }\n    ),\n    cancel() {\n      this.dialogVisible = false\n      this.is_loading = false\n    },\n  },\n};\n</script>\n<style>\n.modal-header {\n  padding: 0.5rem 1rem;\n}\n.modal-footer {\n  padding: 0.5rem;\n}\n</style>\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./baseModal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./baseModal.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./baseModal.vue?vue&type=template&id=2eaf8adc\"\nimport script from \"./baseModal.vue?vue&type=script&lang=js\"\nexport * from \"./baseModal.vue?vue&type=script&lang=js\"\nimport style0 from \"./baseModal.vue?vue&type=style&index=0&id=2eaf8adc&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","// -- import * as _ from \"lodash-es\"\r\nimport * as _date from \"date-fns\"\r\nimport * as api from \"../../shared/api\"\r\nimport * as biz_data_helper from \"../../shared/biz_data_helper\"\r\nimport * as common_controller from \"../commonController\"\r\n\r\nconst content_type = \"SalesLine\"\r\n\r\nconst create = function () {\r\n  return {\r\n    content_type: \"muji\",\r\n    age: 29\r\n  }\r\n}\r\nconst fields = {\r\n  default: [\r\n    {\r\n      key: \"SalesId\",\r\n      label: \"销售订单编号\",\r\n      sortable: true,\r\n      width: \"120px\"\r\n    },\r\n    {\r\n      key: \"LineNum\",\r\n      label: \"行号\",\r\n      sortable: true,\r\n      width: \"40px\"\r\n    },\r\n    {\r\n      key: \"dataAreaId\",\r\n      label: \"公司\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"CompanyName\",\r\n      label: \"销售公司名称\",\r\n      sortable: true,\r\n      thStyle: { width: \"8rem\" },\r\n      width: \"8rem\",\r\n      type: \"short\"\r\n    },\r\n    {\r\n      key: \"CustAccount\",\r\n      label: \"客户账户\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"SEI_Name\",\r\n      label: \"客户名称\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"ItemId\",\r\n      label: \"物料编号\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"NameAlias\",\r\n      label: \"物料名称\",\r\n      sortable: true,\r\n      type: \"short\",\r\n      width: \"10rem\"\r\n    },\r\n    {\r\n      key: \"VariantName\",\r\n      label: \"变型名称\",\r\n      sortable: true,\r\n      type: \"short\",\r\n      width: \"10rem\"\r\n    },\r\n    // {\r\n    //   key: \"SalesStatus\",\r\n    //   label: \"行状态\",\r\n    //   sortable: true\r\n    // },\r\n    {\r\n      key: \"SEI_ShippingDateCust\",\r\n      label: \"客户交期\",\r\n      sortable: true,\r\n      type: \"date\"\r\n    },\r\n    {\r\n      key: \"SalesQty\",\r\n      label: \"数量\",\r\n      sortable: true,\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"valid_remain\",\r\n      label: \"剩余派单数量\",\r\n      sortable: true,\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"TaxGroup\",\r\n      label: \"销售税组\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"SalesPrice\",\r\n      label: \"单位价格\",\r\n      sortable: true,\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"CurrencyCode\",\r\n      label: \"币种\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"ConfirmedDlv\",\r\n      label: \"装运日期\",\r\n      sortable: true,\r\n      type: \"date\"\r\n    },\r\n    {\r\n      key: \"SalesUnit\",\r\n      label: \"单位\",\r\n      sortable: true\r\n    },\r\n\r\n    {\r\n      key: \"TaxItemGroup\",\r\n      label: \"销售税(物料)组\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"TEC_CommonRemark\",\r\n      label: \"通用备注\",\r\n      sortable: true,\r\n      thStyle: { width: \"10rem\" },\r\n      width: \"10rem\",\r\n      type: \"short\"\r\n    },\r\n    {\r\n      key: \"Name\",\r\n      label: \"备注\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"TEC_CustSalesID\",\r\n      label: \"客户订单号\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"SEI_OrderDateCust\",\r\n      label: \"客户订单日期\",\r\n      sortable: true,\r\n      type: \"date\"\r\n    },\r\n\r\n    {\r\n      key: \"create_by\",\r\n      label: \"创建人\",\r\n      sortable: true,\r\n      formatter: (value, key, item) => {\r\n        return item.create_by_username\r\n      }\r\n    },\r\n    {\r\n      key: \"create_at\",\r\n      label: \"创建时间\",\r\n      sortable: true,\r\n      type: \"datetime\"\r\n    },\r\n    {\r\n      key: \"SDApprovedState\",\r\n      label: \"派发审批状态\",\r\n      sortable: true,\r\n      type: \"state\",\r\n      context: [\"待审批\", \"已审批\"]\r\n    }\r\n  ],\r\n  dicpatch_fields: [\r\n    {\r\n      key: \"idnum\",\r\n      label: \"派发编号\",\r\n      sortable: true,\r\n      width: \"60px\",\r\n      formatter: (value, key, item) => {\r\n        return item.id\r\n      }\r\n    },\r\n    {\r\n      key: \"AccountNum\",\r\n      label: \"供应商编号\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"SEI_Name\",\r\n      label: \"供应商名称\",\r\n      sortable: true,\r\n      thStyle: {\r\n        width: \"11rem\"\r\n      }\r\n    },\r\n    {\r\n      key: \"ItemId\",\r\n      label: \"物料编号\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"NameAlias\",\r\n      label: \"物料名称\",\r\n      sortable: true,\r\n      type: \"short\",\r\n      width: \"10rem\"\r\n    },\r\n    {\r\n      key: \"VariantName\",\r\n      label: \"变型名称\",\r\n      sortable: true,\r\n      type: \"short\",\r\n      width: \"10rem\"\r\n    },\r\n    {\r\n      key: \"qty\",\r\n      label: \"数量\",\r\n      editable: true,\r\n      type: \"just_number\"\r\n      // _precise: 6\r\n    },\r\n\r\n    {\r\n      key: \"price\",\r\n      label: \"实际含税价\",\r\n      editable: false,\r\n      type: \"just_number\"\r\n    },\r\n    {\r\n      key: \"PurchCurrencyCode\",\r\n      label: \"实际含税价币种\"\r\n    },\r\n    {\r\n      key: \"price_wotax\",\r\n      label: \"实际采购本币净单价\",\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"price_remark\",\r\n      label: \"价格备注\",\r\n      width: \"8rem\",\r\n      type: \"short\"\r\n    },\r\n    {\r\n      key: \"price_vend\",\r\n      label: \"初始含税报价\",\r\n      sortable: true,\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"price_vend_currency\",\r\n      label: \"初始含税报价币种\",\r\n    },\r\n    {\r\n      key: \"price_vend_wotax\",\r\n      label: \"初始采购本币净单价\",\r\n      sortable: true,\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"Sales_Order_Price\",\r\n      label: \"订单本币净单价\",\r\n      sortable: true,\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"VendTaxGroup\",\r\n      label: \"供应商税组\",\r\n      sortable: true,\r\n      thStyle: {\r\n        width: \"150px\"\r\n      }\r\n    },\r\n    {\r\n      key: \"quote_state\",\r\n      label: \"价格状态\",\r\n      sortable: true,\r\n      type: \"state_icon\"\r\n    },\r\n    {\r\n      key: \"Cost_Sum\",\r\n      label: \"供应商成本\",\r\n      type: \"number\"\r\n    },\r\n    {\r\n      key: \"Sales_Cost\",\r\n      label: \"价格协议成本\",\r\n      type: \"number\"\r\n    },\r\n    {\r\n      key: \"profit_state\",\r\n      label: \"毛利状态\",\r\n      sortable: true,\r\n      type: \"state_icon\"\r\n    },\r\n    {\r\n      key: \"profit_value\",\r\n      label: \"毛利\",\r\n      sortable: true,\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"invent_sum\",\r\n      label: \"现有库存量\",\r\n      type: \"number\",\r\n      _precise: 6\r\n    },\r\n    {\r\n      key: \"delivery_date\",\r\n      label: \"装运日期\",\r\n      editable: true,\r\n      type: \"date\"\r\n    },\r\n    {\r\n      key: \"Capacity\",\r\n      label: \"产能(天)\",\r\n      editable: true,\r\n      type: \"number\"\r\n    },\r\n    {\r\n      key: \"RetailVariantId\",\r\n      label: \"变形编号\",\r\n      sortable: true,\r\n      thStyle: {\r\n        display: \"none\"\r\n      },\r\n      tdClass: \"no-shown-RetailVariantId\"\r\n    },\r\n\r\n    {\r\n      key: \"TotalScore\",\r\n      label: \"评价\",\r\n      sortable: true,\r\n      type: \"rate\",\r\n      disabled: true,\r\n      thStyle: {\r\n        width: \"10rem\"\r\n      }\r\n    },\r\n    {\r\n      key: \"create_by_username\",\r\n      label: \"派发创建人\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"create_at\",\r\n      label: \"创建时间\",\r\n      type: \"datetime\"\r\n    },\r\n    {\r\n      key: \"update_by\",\r\n      label: \"修改人\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"update_at\",\r\n      label: \"修改时间\",\r\n      sortable: true,\r\n      type: \"datetime\"\r\n    },\r\n    {\r\n      key: \"Up_Approver\",\r\n      label: \"前一级审批人\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"UpApproveRemark\",\r\n      label: \"审批意见\",\r\n      sortable: true,\r\n      width: \"12rem\",\r\n      type: \"html\"\r\n    },\r\n    {\r\n      key: \"Approver\",\r\n      label: \"当前审批人\",\r\n      sortable: true\r\n    },\r\n    {\r\n      key: \"ApproveRemark\",\r\n      label: \"当前审批意见\",\r\n      sortable: true,\r\n      editable: true,\r\n      type: \"textarea\"\r\n    },\r\n    {\r\n      key: \"fcCheckDocumentAllApproved\",\r\n      label: \"审批\",\r\n      sortable: true,\r\n      type: \"state\",\r\n      state_control: \"fcCheckDocumentAllApproved\",\r\n      other_type_key: \"is_email_send\",\r\n      isCheckInApprove: true,\r\n      context: [\"待审批\", \"已审批\", \"审批中\", \"已退回\"]\r\n    },\r\n    {\r\n      key: \"SDApprovedState\",\r\n      label: \"审批状态名称\",\r\n      sortable: true,\r\n      thStyle: {\r\n        display: \"none\"\r\n      },\r\n      tdClass: \"no-shown-RetailVariantId\",\r\n      formatter: (value, key, item) => {\r\n        if (item.fcCheckSDApproved) {\r\n          item.SDApprovedState = \"已审批\"\r\n          return \"已审批\"\r\n        } else if (item.is_email_send) {\r\n          item.SDApprovedState = \"审批中\"\r\n          return \"审批中\"\r\n        } else {\r\n          item.SDApprovedState = \"待审批\"\r\n          return \"待审批\"\r\n        }\r\n      }\r\n    },\r\n    {\r\n      key: \"isAXError\",\r\n      label: \"异常状态\",\r\n      sortable: true,\r\n      type: \"state_error\",\r\n      context: [\"\", \"异常\"]\r\n    },\r\n    {\r\n      key: \"AXError\",\r\n      label: \"异常信息\",\r\n      sortable: true,\r\n      type: \"short\",\r\n      // thStyle: {\r\n      //   width: \"10rem\"\r\n      // }\r\n    },\r\n    {\r\n      key: 'Accessory',\r\n      label: '附件',\r\n      type: \"button\",\r\n      button: {\r\n        type: \"text\",\r\n        icon_class: \"iconfont icon-fujian\",\r\n        label: \"\",\r\n        show_label: true\r\n      },\r\n      thStyle: { width: \"80px\" }\r\n    },\r\n  ]\r\n}\r\n\r\nconst dataForm = {\r\n  id: \"\",\r\n  saleOrder_num: \"\",\r\n  cust_name: \"\",\r\n  product_name: \"\",\r\n  supplier_num: \"\",\r\n  price: 0,\r\n  price_wotax: 0,\r\n  profit_value: 0,\r\n  price_vend: 0,\r\n  price_vend_wotax: 0,\r\n  qty: 0,\r\n  TaxGroup: \"\",\r\n  delivery_date: new Date()\r\n}\r\n\r\n///前端验证\r\nconst rules = {}\r\n\r\nconst descriptor = {}\r\nconst methods = {\r\n  ///get 派单详情\r\n  async getDispatchItems(_params) {\r\n    let item_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"sPlant_SalesOrder_Dispatch\",\r\n      {},\r\n      {}\r\n    )\r\n    let _fields = _.map(fields.dicpatch_fields, \"key\")\r\n    _fields.push(\"id\")\r\n    _fields.push(\"is_deleted\")\r\n    _fields.push(\"SalesLineId\")\r\n    _fields.push(\"approved_at\")\r\n    _fields.push(\"AXSalesId\")\r\n    _fields.push(\"AXInventTransId\")\r\n    _fields.push(\"AXPurchId\")\r\n    _fields.push(\"AXPurchInventTransId\")\r\n    _fields.push(\"AXSalesLineNum\")\r\n    _fields.push(\"AXPurchLineNum\")\r\n    _fields.push(\"fcCheckSDApproved(t.id)\")\r\n    // _fields.push(\"fcGetSODispatchApprover(t.id)\");\r\n    _fields.push(\"AXInventTransRet\")\r\n    _fields.push(\"AXPurchInventTransRet\")\r\n    _fields.push(\"is_email_send\")\r\n    _fields.push(\"fcGetDocumentApprover('SalesOrderDispatch','',t.id)\")\r\n    _fields.push(\"fcCheckDocumentAllApproved('SalesOrderDispatch',t.id)\")\r\n\r\n    let result = await item_biz_data\r\n      .selectAction({\r\n        params: _params,\r\n        fields: _fields\r\n      })\r\n      .run()\r\n    if (\r\n      result &&\r\n      result[0].result &&\r\n      result[0].result.data &&\r\n      result[0].result.data.ActionResult &&\r\n      result[0].result.data.ActionResult.Result &&\r\n      result[0].result.data.ActionResult.Result.Data.length > 0\r\n    ) {\r\n      return result[0].result.data.ActionResult.Result.Data\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n  ///get 派单详情\r\n  async getDispatchItemsSql(_params) {\r\n    let item_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"get_dispatch_by_salesLine_id\",\r\n      {},\r\n      {}\r\n    )\r\n    let _fields = _.map(fields.dicpatch_fields, \"key\")\r\n    _fields.push(\"id\")\r\n    _fields.push(\"is_deleted\")\r\n    _fields.push(\"SalesLineId\")\r\n    _fields.push(\"approved_at\")\r\n    _fields.push(\"AXSalesId\")\r\n    _fields.push(\"AXInventTransId\")\r\n    _fields.push(\"AXPurchId\")\r\n    _fields.push(\"AXPurchInventTransId\")\r\n    _fields.push(\"AXSalesLineNum\")\r\n    _fields.push(\"AXPurchLineNum\")\r\n    _fields.push(\"fcCheckSDApproved(t.id)\")\r\n    _fields.push(\"fcGetDocumentApprover('SalesOrderDispatch','',t.id)\")\r\n    _fields.push(\"fcCheckDocumentAllApproved('SalesOrderDispatch',t.id)\")\r\n    _fields.push(\"AXInventTransRet\")\r\n    _fields.push(\"AXPurchInventTransRet\")\r\n    _fields.push(\"is_email_send\")\r\n\r\n    let result = await item_biz_data\r\n      .execAction({\r\n        params: _params,\r\n        fields: _fields\r\n      })\r\n      .run()\r\n    if (\r\n      result &&\r\n      result[0].result &&\r\n      result[0].result.data &&\r\n      result[0].result.data.ActionResult &&\r\n      result[0].result.data.ActionResult.Result &&\r\n      result[0].result.data.ActionResult.Result.Data.length > 0\r\n    ) {\r\n      return result[0].result.data.ActionResult.Result.Data\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n  ///get 订单明细\r\n  async getData(_params) {\r\n    const salesline_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"get_dispatch_salesline\",\r\n      {},\r\n      {}\r\n    )\r\n    let _fields = _.map(fields.default, \"key\")\r\n    _fields.push(\"id\")\r\n    _fields.push(\"valid_approve\")\r\n    _fields.push(\"SalesTable_id\")\r\n    _fields.push(\"AXInventTransId\")\r\n    _fields.push(\"AXPurchInventTransId\")\r\n\r\n    let result = await salesline_biz_data\r\n      .execAction({\r\n        params: _params,\r\n        fields: _fields\r\n      })\r\n      .run()\r\n    // let _fields = _.map(fields.default, \"key\");\r\n    // _fields.push(\"id\");\r\n    // _fields.push(\"valid_approve\");\r\n    // _fields.push(\"SalesTable_id\");\r\n    // let result = await biz_data\r\n    //   .selectAction({\r\n    //     params: _params,\r\n    //     fields: _fields\r\n    //   })\r\n    //   .run();\r\n\r\n    if (\r\n      result &&\r\n      result[0].result &&\r\n      result[0].result.data &&\r\n      result[0].result.data.ActionResult &&\r\n      result[0].result.data.ActionResult.Result &&\r\n      result[0].result.data.ActionResult.Result.Data.length > 0\r\n    ) {\r\n      return result[0].result.data.ActionResult.Result.Data\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n  ///approve\r\n  async approveDataNew(_params) {\r\n    //1、审核派单\r\n    //2、修改订单明细剩余数量\r\n    //3、生成采购单\r\n    //4、调用AX\r\n    let _actions = []\r\n\r\n    //1、审核派单\r\n    if (_params.approve_data && !_.isNull(_params.approve_data)) {\r\n      const update_status_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"update_approve_status\",\r\n        {},\r\n        {}\r\n      )\r\n      let approved_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"update_sPlant_SalesOrder_Dispatch\",\r\n        {},\r\n        {}\r\n      )\r\n      _.each(_params.approve_data, t => {\r\n        _actions.push(\r\n          update_status_biz_data\r\n            .execAction({\r\n              params: {\r\n                IsApproved: t.is_approved == true ? 1 : 0,\r\n                ApproveBy: t.username,\r\n                status_id: t.id,\r\n                ApproveRemark: t.ApproveRemark //审批备注\r\n              },\r\n              fields: [\"is_update_ok\", \"is_all_approved\"]\r\n            })\r\n            .action({\r\n              output_last_item_map: {\r\n                is_update_ok: \"is_update_ok\",\r\n                is_all_approved: \"is_all_approved\"\r\n              },\r\n              rollback_when: {\r\n                isApproved: {\r\n                  \"=\": false\r\n                }\r\n              }\r\n            })\r\n        )\r\n        if (!t.is_approved) {\r\n          let _x = {\r\n            SODispatchId: t.order_dispatch_id,\r\n            CreateBy: t.userId,\r\n            IsEmailSend: 0\r\n          }\r\n          _actions.push(\r\n            approved_biz_data\r\n              .execAction({\r\n                params: _x\r\n              })\r\n              .action({\r\n                rollback_when: {\r\n                  is_update_ok: {\r\n                    \"=\": 1\r\n                  }\r\n                }\r\n              })\r\n          )\r\n        }\r\n      })\r\n    }\r\n\r\n    ///2、修改订单明细剩余数量\r\n    if (_params.update_valid_data && !_.isNull(_params.update_valid_data)) {\r\n      let update_soline_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"update_sl_validremain\",\r\n        {},\r\n        {}\r\n      )\r\n      _actions.push(\r\n        update_soline_biz_data\r\n          .execAction({\r\n            params: {\r\n              SalesLineId: _params.update_valid_data.id\r\n            },\r\n            fields: [\"valid_remain\", \"valid_approve\"]\r\n          })\r\n          .action({})\r\n      )\r\n    }\r\n    //3、生成采购单\r\n    if (_params.purch_data && !_.isNull(_params.purch_data)) {\r\n      if (_params.purch_data.main.length > 0) {\r\n        const purch_code_biz_data = new biz_data_helper.base_entity_helper(\r\n          \"get_seq\",\r\n          {},\r\n          {}\r\n        )\r\n\r\n        const purch_biz_data = new biz_data_helper.base_entity_helper(\r\n          \"PurchTable\",\r\n          {},\r\n          {}\r\n        )\r\n        const purch_item_biz_data = new biz_data_helper.base_entity_helper(\r\n          \"PurchLine\",\r\n          {},\r\n          {}\r\n        )\r\n        //获取code\r\n        let _p = {\r\n          type: \"CPO\",\r\n          date: _date.format(new Date(), \"yyyy-MM-dd\")\r\n        }\r\n        _.each(_params.purch_data.main, t => {\r\n          let _mt = _.cloneDeep(t)\r\n          delete _mt.id\r\n          _actions.push(\r\n            purch_code_biz_data\r\n              .execAction({\r\n                params: _p,\r\n                fields: [\"seq\"]\r\n              })\r\n              .action({\r\n                output_last_item_map: {\r\n                  seq: \"PurchId\"\r\n                },\r\n                skip_when: {\r\n                  is_all_approved: { \"=\": false }\r\n                }\r\n              })\r\n          )\r\n          _actions.push(\r\n            purch_biz_data\r\n              .insertAction({\r\n                params: _mt,\r\n                fields: [\"id\"]\r\n              })\r\n              .action({\r\n                output_last_item_map: {\r\n                  id: \"PurchaseOrderId\"\r\n                },\r\n                mixin_last_item_map: {\r\n                  PurchId: \"PurchId\"\r\n                },\r\n                skip_when: {\r\n                  is_all_approved: { \"=\": false }\r\n                }\r\n              })\r\n          )\r\n          let _items = _.filter(_params.purch_data.items, {\r\n            OrderAccount: t.OrderAccount\r\n          })\r\n          _.each(_items, m => {\r\n            let _ml = _.cloneDeep(m)\r\n            delete _ml.id\r\n            delete _ml.OrderAccount\r\n            _actions.push(\r\n              purch_item_biz_data\r\n                .insertAction({\r\n                  params: _ml,\r\n                  fields: [\"id\"]\r\n                })\r\n                .action({\r\n                  mixin_last_item_map: {\r\n                    PurchaseOrderId: \"PurchaseOrderId\"\r\n                  },\r\n                  skip_when: {\r\n                    is_all_approved: { \"=\": false }\r\n                  }\r\n                })\r\n            )\r\n          })\r\n        })\r\n      }\r\n\r\n      if (_params.purch_data.update_list.length > 0) {\r\n        const purch_update_biz_data = new biz_data_helper.base_entity_helper(\r\n          \"update_purch\",\r\n          {},\r\n          {}\r\n        )\r\n        _.each(_params.purch_data.update_list, t => {\r\n          _actions.push(\r\n            purch_update_biz_data\r\n              .execAction({\r\n                params: t\r\n              })\r\n              .action({\r\n                skip_when: {\r\n                  is_all_approved: { \"=\": false }\r\n                }\r\n              })\r\n          )\r\n        })\r\n      }\r\n    }\r\n    //4、调用AX\r\n    if (_params.ax_data &&\r\n      !_.isNull(_params.ax_data) &&\r\n      !_.isEmpty(_params.ax_data.jsonGroupData)\r\n    ) {\r\n      const h_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"interface_invoke\",\r\n        {},\r\n        {}\r\n      )\r\n      const x_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"checkinterfaceresult\",\r\n        {},\r\n        {}\r\n      )\r\n      for (var i in _params.ax_data.jsonGroupData) {\r\n        let _jsonData = _params.ax_data.jsonGroupData[i]\r\n        if (_jsonData.length > 0) {\r\n          let _p = {\r\n            company: _params.ax_data.company,\r\n            method: \"CMOrderLines\",\r\n            jsonData: _jsonData\r\n          }\r\n          _actions.push(\r\n            h_biz_data\r\n              .handlerAction({\r\n                params: _p\r\n              })\r\n              .action({\r\n                output_last_item_map: {\r\n                  status: \"ax_interface_status\"\r\n                },\r\n                output_result_data_code: \"AXParams\",\r\n                skip_when: {\r\n                  is_all_approved: { \"=\": false }\r\n                }\r\n              })\r\n          )\r\n          ///只有审核时才修改派单信息\r\n          if (_params.state) {\r\n            let dispatch_biz_data = new biz_data_helper.base_entity_helper(\r\n              \"update_dispatch_ax_data\",\r\n              {},\r\n              {}\r\n            )\r\n            _actions.push(\r\n              dispatch_biz_data\r\n                .execAction({\r\n                  params: {},\r\n                  fields: [\"id\"]\r\n                })\r\n                .action({\r\n                  mixin_result_data_map: {\r\n                    AXParams: \"resultData[0][0].data\"\r\n                  },\r\n                  skip_when: {\r\n                    is_all_approved: { \"=\": false }\r\n                  }\r\n                })\r\n            )\r\n          }\r\n          _actions.push(\r\n            x_biz_data\r\n              .checkAction({\r\n                params: {}\r\n              })\r\n              .action({\r\n                // rollback_when: {\r\n                //   ax_interface_status: {\r\n                //     \"<>\": 0\r\n                //   }\r\n                // },\r\n                mixin_last_item_map: {\r\n                  ax_interface_status: \"ax_interface_status\"\r\n                },\r\n                skip_when: {\r\n                  is_all_approved: { \"=\": false }\r\n                }\r\n              })\r\n          )\r\n        }\r\n      }\r\n    }\r\n\r\n    let result = await api.query_batch({\r\n      actions: _actions\r\n    })\r\n\r\n    if (\r\n      result &&\r\n      result.data &&\r\n      result.data.BatchResult &&\r\n      result.data.BatchResult.Actions &&\r\n      result.data.BatchResult.Actions.length > 0\r\n    ) {\r\n      //如果不是全部审批,则不调用ax\r\n      let is_all_approved = false\r\n      let _check_is_all_approved = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/e/update_approve_status\"\r\n      })\r\n      _.each(_check_is_all_approved, t => {\r\n        if (\r\n          t.Result &&\r\n          t.Result.Data &&\r\n          t.Result.Data[0] &&\r\n          t.Result.Data[0].length > 0 &&\r\n          !t.Result.Data[0][0].is_all_approved\r\n        ) {\r\n          is_all_approved = true\r\n        }\r\n      })\r\n      if (is_all_approved) {\r\n        return {\r\n          state: true,\r\n          data: result.data.BatchResult.Actions,\r\n          message: \"\"\r\n        }\r\n      }\r\n      //检查订单是否审核\r\n      //ax 返回\r\n      let _rt = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/x/checkinterfaceresult\"\r\n      })\r\n      let _rdata = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/h/interface_invoke\"\r\n      })\r\n      let _is_ok = true\r\n      _.each(_rt, t => {\r\n        if (t.Params && t.Params.length > 0) {\r\n          for (var i in t.Params) {\r\n            if (t.Params[i].ax_interface_status != 0) {\r\n              _is_ok = false\r\n            }\r\n          }\r\n        }\r\n        // if (t.Result && t.Result.Rollback == true) {\r\n        //   _is_ok = false;\r\n        // }\r\n      })\r\n      if (_is_ok == true) {\r\n        return {\r\n          state: true,\r\n          data: result.data.BatchResult.Actions,\r\n          message: \"\"\r\n        }\r\n      } else {\r\n        let _msg = \"\"\r\n        _.each(_rdata, t => {\r\n          if (\r\n            !_.isNull(t.Result) &&\r\n            t.Result.LastItem.ax_interface_status != 0\r\n          ) {\r\n            _msg = t.Result.Data[0][0].message\r\n          }\r\n        })\r\n        ///记录ax调用失败日志\r\n        let ep = {\r\n          params: JSON.stringify(_actions),\r\n          error_msg: _msg,\r\n          result: JSON.stringify(_rdata)\r\n        }\r\n        common_controller.methods.createAXErorrLog(\r\n          \"error_ax_interface_CMOrderLines\",\r\n          ep\r\n        )\r\n        return {\r\n          state: false,\r\n          data: [],\r\n          message: _msg\r\n        }\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n\r\n  async approveListData(_paramsList) {\r\n    //1、审核派单\r\n    //2、修改订单明细剩余数量\r\n    //3、生成采购单\r\n    //4、调用AX\r\n    const update_status_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"update_approve_status\",\r\n      {},\r\n      {}\r\n    )\r\n    let approved_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"update_sPlant_SalesOrder_Dispatch\",\r\n      {},\r\n      {}\r\n    )\r\n    let item_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"sPlant_SalesOrder_Dispatch\",\r\n      {},\r\n      {}\r\n    )\r\n    let _actions = []\r\n    _.each(_paramsList, _params => {\r\n      //1、审核派单\r\n      if (_params.approve_data && !_.isNull(_params.approve_data)) {\r\n        _.each(_params.approve_data, t => {\r\n          _actions.push(\r\n            update_status_biz_data\r\n              .execAction({\r\n                params: {\r\n                  IsApproved: t.is_approved == true ? 1 : 0,\r\n                  ApproveBy: t.username,\r\n                  status_id: t.id,\r\n                  ApproveRemark: t.ApproveRemark //审批备注\r\n                },\r\n                fields: [\"is_update_ok\", \"is_all_approved\"]\r\n              })\r\n              .action({\r\n                output_last_item_map: {\r\n                  is_update_ok: \"is_update_ok\",\r\n                  is_all_approved: \"is_all_approved\"\r\n                },\r\n                rollback_when: {\r\n                  isApproved: {\r\n                    \"=\": false\r\n                  }\r\n                }\r\n              })\r\n          )\r\n\r\n          if (!t.is_approved) {\r\n            let _x = {\r\n              SODispatchId: t.order_dispatch_id,\r\n              CreateBy: t.userId,\r\n              // is_approved: t.is_approved\r\n              IsEmailSend: 0\r\n            }\r\n            _actions.push(\r\n              approved_biz_data\r\n                .execAction({\r\n                  params: _x\r\n                })\r\n                .action({\r\n                  rollback_when: {\r\n                    is_update_ok: {\r\n                      \"=\": 1\r\n                    }\r\n                  }\r\n                })\r\n            )\r\n          }\r\n        })\r\n      }\r\n\r\n      let update_soline_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"update_sl_validremain\",\r\n        {},\r\n        {}\r\n      )\r\n      ///2、修改订单明细剩余数量\r\n      if (_params.update_valid_data && !_.isNull(_params.update_valid_data)) {\r\n        if (_params.update_valid_data.length > 0) {\r\n          _.each(_params.update_valid_data, t => {\r\n            _actions.push(\r\n              update_soline_biz_data\r\n                .execAction({\r\n                  params: {\r\n                    SalesLineId: t.id\r\n                  },\r\n                  fields: [\"valid_remain\", \"valid_approve\"]\r\n                })\r\n                .action({})\r\n            )\r\n          })\r\n        }\r\n      }\r\n      ///先默认修改为异常\r\n      if (_params.state && _params.update_dispatch_data && !_.isNull(_params.update_dispatch_data)) {\r\n        _actions.push(\r\n          item_biz_data.updateAction({\r\n            params: _params.update_dispatch_data\r\n          }).action({})\r\n        )\r\n      }\r\n      //3、生成采购单\r\n      if (_params.purch_data && !_.isNull(_params.purch_data)) {\r\n        if (_params.purch_data.main.length > 0) {\r\n          const purch_code_biz_data = new biz_data_helper.base_entity_helper(\r\n            \"get_seq\",\r\n            {},\r\n            {}\r\n          )\r\n\r\n          const purch_biz_data = new biz_data_helper.base_entity_helper(\r\n            \"PurchTable\",\r\n            {},\r\n            {}\r\n          )\r\n          const purch_item_biz_data = new biz_data_helper.base_entity_helper(\r\n            \"PurchLine\",\r\n            {},\r\n            {}\r\n          )\r\n          //获取code\r\n          let _p = {\r\n            type: \"CPO\",\r\n            date: _date.format(new Date(), \"yyyy-MM-dd\")\r\n          }\r\n          _.each(_params.purch_data.main, t => {\r\n            let _mt = _.cloneDeep(t)\r\n            delete _mt.id\r\n            _actions.push(\r\n              purch_code_biz_data\r\n                .execAction({\r\n                  params: _p,\r\n                  fields: [\"seq\"]\r\n                })\r\n                .action({\r\n                  output_last_item_map: {\r\n                    seq: \"PurchId\"\r\n                  },\r\n                  skip_when: {\r\n                    is_all_approved: { \"=\": false }\r\n                  }\r\n                })\r\n            )\r\n            _actions.push(\r\n              purch_biz_data\r\n                .insertAction({\r\n                  params: _mt,\r\n                  fields: [\"id\"]\r\n                })\r\n                .action({\r\n                  output_last_item_map: {\r\n                    id: \"PurchaseOrderId\"\r\n                  },\r\n                  mixin_last_item_map: {\r\n                    PurchId: \"PurchId\"\r\n                  },\r\n                  skip_when: {\r\n                    is_all_approved: { \"=\": false }\r\n                  }\r\n                })\r\n            )\r\n            let _items = _.filter(_params.purch_data.items, {\r\n              OrderAccount: t.OrderAccount\r\n            })\r\n            _.each(_items, m => {\r\n              let _ml = _.cloneDeep(m)\r\n              delete _ml.id\r\n              delete _ml.OrderAccount\r\n              _actions.push(\r\n                purch_item_biz_data\r\n                  .insertAction({\r\n                    params: _ml,\r\n                    fields: [\"id\"]\r\n                  })\r\n                  .action({\r\n                    mixin_last_item_map: {\r\n                      PurchaseOrderId: \"PurchaseOrderId\"\r\n                    },\r\n                    skip_when: {\r\n                      is_all_approved: { \"=\": false }\r\n                    }\r\n                  })\r\n              )\r\n            })\r\n          })\r\n        }\r\n\r\n        if (_params.purch_data.update_list.length > 0) {\r\n          const purch_update_biz_data = new biz_data_helper.base_entity_helper(\r\n            \"update_purch\",\r\n            {},\r\n            {}\r\n          )\r\n          _.each(_params.purch_data.update_list, t => {\r\n            _actions.push(\r\n              purch_update_biz_data\r\n                .execAction({\r\n                  params: t\r\n                })\r\n                .action({\r\n                  skip_when: {\r\n                    is_all_approved: { \"=\": false }\r\n                  }\r\n                })\r\n            )\r\n          })\r\n        }\r\n      }\r\n      //4、调用AX\r\n      if (_params.ax_data &&\r\n        !_.isNull(_params.ax_data) &&\r\n        !_.isEmpty(_params.ax_data.jsonGroupData)\r\n      ) {\r\n        const h_biz_data = new biz_data_helper.base_entity_helper(\r\n          \"interface_invoke\",\r\n          {},\r\n          {}\r\n        )\r\n        const x_biz_data = new biz_data_helper.base_entity_helper(\r\n          \"checkinterfaceresult\",\r\n          {},\r\n          {}\r\n        )\r\n        for (var i in _params.ax_data.jsonGroupData) {\r\n          let _jsonData = _params.ax_data.jsonGroupData[i]\r\n          if (_jsonData.length > 0) {\r\n            let _p = {\r\n              company: _params.ax_data.company,\r\n              method: \"CMOrderLines\",\r\n              jsonData: _jsonData\r\n            }\r\n            _actions.push(\r\n              h_biz_data\r\n                .handlerAction({\r\n                  params: _p\r\n                })\r\n                .action({\r\n                  output_last_item_map: {\r\n                    status: \"ax_interface_status\"\r\n                  },\r\n                  output_result_data_code: \"AXParams\",\r\n                  skip_when: {\r\n                    is_all_approved: { \"=\": false }\r\n                  }\r\n                })\r\n            )\r\n            ///只有审核时才修改派单信息\r\n            if (_params.state) {\r\n              let dispatch_biz_data = new biz_data_helper.base_entity_helper(\r\n                \"update_dispatch_ax_data\",\r\n                {},\r\n                {}\r\n              )\r\n              _actions.push(\r\n                dispatch_biz_data\r\n                  .execAction({\r\n                    params: {},\r\n                    fields: [\"id\"]\r\n                  })\r\n                  .action({\r\n                    mixin_result_data_map: {\r\n                      AXParams: \"resultData[0][0].data\"\r\n                    },\r\n                    skip_when: {\r\n                      is_all_approved: { \"=\": false }\r\n                    }\r\n                  })\r\n              )\r\n            }\r\n            _actions.push(\r\n              x_biz_data\r\n                .checkAction({\r\n                  params: {}\r\n                })\r\n                .action({\r\n                  // rollback_when: {\r\n                  //   ax_interface_status: {\r\n                  //     \"<>\": 0\r\n                  //   }\r\n                  // },\r\n                  mixin_last_item_map: {\r\n                    ax_interface_status: \"ax_interface_status\"\r\n                  },\r\n                  skip_when: {\r\n                    is_all_approved: { \"=\": false }\r\n                  }\r\n                })\r\n            )\r\n          }\r\n        }\r\n      }\r\n    })\r\n\r\n\r\n\r\n    let result = await api.query_batch({\r\n      actions: _actions\r\n    })\r\n\r\n    if (\r\n      result &&\r\n      result.data &&\r\n      result.data.BatchResult &&\r\n      result.data.BatchResult.Actions &&\r\n      result.data.BatchResult.Actions.length > 0\r\n    ) {\r\n      //如果不是全部审批,则不调用ax\r\n      let is_all_approved = false\r\n      let _check_is_all_approved = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/e/update_approve_status\"\r\n      })\r\n      _.each(_check_is_all_approved, t => {\r\n        if (\r\n          t.Result &&\r\n          t.Result.Data &&\r\n          t.Result.Data[0] &&\r\n          t.Result.Data[0].length > 0 &&\r\n          !t.Result.Data[0][0].is_all_approved\r\n        ) {\r\n          is_all_approved = true\r\n        }\r\n      })\r\n      if (is_all_approved) {\r\n        return {\r\n          state: true,\r\n          data: [],\r\n          message: \"\"\r\n        }\r\n      }\r\n      //检查订单是否审核\r\n      //ax 返回\r\n      let _rt = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/x/checkinterfaceresult\"\r\n      })\r\n      let _rdata = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/h/interface_invoke\"\r\n      })\r\n      let _is_ok = true\r\n      _.each(_rt, t => {\r\n        if (t.Params && t.Params.length > 0) {\r\n          for (var i in t.Params) {\r\n            if (t.Params[i].ax_interface_status != 0) {\r\n              _is_ok = false\r\n            }\r\n          }\r\n        }\r\n      })\r\n      if (_is_ok == true) {\r\n        return {\r\n          state: true,\r\n          data: result.data.BatchResult.Actions,\r\n          message: \"\"\r\n        }\r\n      } else {\r\n        let _msg = \"\"\r\n        _.each(_rdata, t => {\r\n          if (\r\n            !_.isNull(t.Result) &&\r\n            t.Result.LastItem.ax_interface_status != 0\r\n          ) {\r\n            _msg = t.Result.Data[0][0].message\r\n          }\r\n        })\r\n        ///记录ax调用失败日志\r\n        let ep = {\r\n          params: JSON.stringify(_actions),\r\n          error_msg: _msg,\r\n          result: JSON.stringify(_rdata)\r\n        }\r\n        common_controller.methods.createAXErorrLog(\r\n          \"error_ax_interface_CMOrderLines\",\r\n          ep\r\n        )\r\n        return {\r\n          state: false,\r\n          data: [],\r\n          message: _msg\r\n        }\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n\r\n  async refuseList(_params) {\r\n    const update_status_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"refuse_approve_status\",\r\n      {},\r\n      {}\r\n    )\r\n    let result = await update_status_biz_data\r\n      .execAction({\r\n        params: _params,\r\n        fields: []\r\n      })\r\n      .run()\r\n\r\n    if (\r\n      result &&\r\n      result[0].result &&\r\n      result[0].result.data &&\r\n      result[0].result.data.ActionResult &&\r\n      result[0].result.data.ActionResult.Result &&\r\n      result[0].result.data.ActionResult.Result.Data\r\n    ) {\r\n      return {\r\n        state: true,\r\n        data: [],\r\n        message: \"\"\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n  //处理异常\r\n  async handleAxException(_params) {\r\n    let _actions = []\r\n    if (_params.update_sod_data.length > 0) {\r\n      let item_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"sPlant_SalesOrder_Dispatch\",\r\n        create,\r\n        descriptor\r\n      )\r\n      _actions.push(\r\n        item_biz_data\r\n          .updateAction({\r\n            params: _params.update_sod_data,\r\n            fields: [\"id\"]\r\n          })\r\n          .action({})\r\n      )\r\n    }\r\n\r\n    //调用AX\r\n    if (\r\n      !_.isNull(_params.ax_data) &&\r\n      !_.isEmpty(_params.ax_data.jsonGroupData)\r\n    ) {\r\n      const h_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"interface_invoke\",\r\n        {},\r\n        {}\r\n      )\r\n      const x_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"checkinterfaceresult\",\r\n        {},\r\n        {}\r\n      )\r\n      for (var i in _params.ax_data.jsonGroupData) {\r\n        let _jsonData = _params.ax_data.jsonGroupData[i]\r\n        if (_jsonData.length > 0) {\r\n          let _p = {\r\n            company: _params.ax_data.company,\r\n            method: \"CMOrderLines\",\r\n            jsonData: _jsonData\r\n          }\r\n          _actions.push(\r\n            h_biz_data\r\n              .handlerAction({\r\n                params: _p\r\n              })\r\n              .action({\r\n                output_last_item_map: {\r\n                  status: \"ax_interface_status\"\r\n                },\r\n                output_result_data_code: \"AXParams\",\r\n              })\r\n          )\r\n          ///只有审核时才修改派单信息\r\n          // if (_params.state) {\r\n          let dispatch_biz_data = new biz_data_helper.base_entity_helper(\r\n            \"update_dispatch_ax_data\",\r\n            {},\r\n            {}\r\n          )\r\n          _actions.push(\r\n            dispatch_biz_data\r\n              .execAction({\r\n                params: {},\r\n                fields: [\"id\"]\r\n              })\r\n              .action({\r\n                mixin_result_data_map: {\r\n                  AXParams: \"resultData[0][0].data\"\r\n                },\r\n              })\r\n          )\r\n          // }\r\n          _actions.push(\r\n            x_biz_data\r\n              .checkAction({\r\n                params: {}\r\n              })\r\n              .action({\r\n                rollback_when: {\r\n                  ax_interface_status: {\r\n                    \"<>\": 0\r\n                  }\r\n                }\r\n              })\r\n          )\r\n        }\r\n      }\r\n    }\r\n\r\n    let result = await api.query_batch({\r\n      actions: _actions\r\n    })\r\n\r\n    if (\r\n      result &&\r\n      result.data &&\r\n      result.data.BatchResult &&\r\n      result.data.BatchResult.Actions &&\r\n      result.data.BatchResult.Actions.length > 0\r\n    ) {\r\n      //检查订单是否审核\r\n      //ax 返回\r\n      let _rt = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/x/checkinterfaceresult\"\r\n      })\r\n      let _rdata = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/h/interface_invoke\"\r\n      })\r\n      let _is_ok = true\r\n      _.each(_rt, t => {\r\n        if (t.Result && t.Result.Rollback == true) {\r\n          _is_ok = false\r\n        }\r\n      })\r\n      if (_is_ok == true) {\r\n        return {\r\n          state: true,\r\n          data: result.data.BatchResult.Actions,\r\n          message: \"\"\r\n        }\r\n      } else {\r\n        let _msg = []\r\n        _.each(_rdata, t => {\r\n          if (\r\n            !_.isNull(t.Result) &&\r\n            t.Result.LastItem.ax_interface_status != 0\r\n          ) {\r\n            _msg = _.map(t.Result.Data, (m) => {\r\n              return m[0].message\r\n            })\r\n          }\r\n        })\r\n        ///记录ax调用失败日志\r\n        let ep = {\r\n          params: JSON.stringify(_actions),\r\n          error_msg: _.join(_msg, \" \"),\r\n          result: JSON.stringify(_rdata)\r\n        }\r\n        common_controller.methods.createAXErorrLog(\r\n          \"error_ax_interface_CMOrderLines\",\r\n          ep\r\n        )\r\n        return {\r\n          state: false,\r\n          data: [],\r\n          message: _.join(_msg, \" \")\r\n        }\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n\r\n  ///del dispatch\r\n  async deleteData(items, validForm, ax_params, vm) {\r\n    let _actions = []\r\n\r\n    let del_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"sPlant_SalesOrder_Dispatch\",\r\n      create,\r\n      descriptor\r\n    )\r\n    let purch_delete_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"delete_purch\",\r\n      {},\r\n      {}\r\n    )\r\n    let check_dispatch_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"CheckIfCanModifySalesOrderDispatch\",\r\n      {},\r\n      {}\r\n    )\r\n    let update_soline_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"update_sl_validremain\",\r\n      {},\r\n      {}\r\n    )\r\n    let cancel_email_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"cancel_email_send\",\r\n      {},\r\n      {}\r\n    )\r\n    _.each(items, t => {\r\n      _actions.push(\r\n        check_dispatch_biz_data\r\n          .execAction({\r\n            params: {\r\n              SalesLineId: t.SalesLineId,\r\n              CurrentDispathId: t.id,\r\n              action: \"delete\",\r\n              inputQty: t.qty\r\n            },\r\n            fields: [\"allowed\"]\r\n          })\r\n          .action({\r\n            output_last_item_map: {\r\n              allowed: \"allowed\"\r\n            }\r\n          })\r\n      )\r\n      _actions.push(\r\n        del_biz_data\r\n          .deleteAction({\r\n            params: {\r\n              id: t.id\r\n            }\r\n          })\r\n          .action({\r\n            rollback_when: {\r\n              allowed: {\r\n                \"=\": false\r\n              }\r\n            }\r\n          })\r\n      )\r\n\r\n      _actions.push(\r\n        purch_delete_biz_data\r\n          .execAction({\r\n            params: {\r\n              OrderDispatch_id: t.id\r\n            }\r\n          })\r\n          .action({})\r\n      )\r\n\r\n      ///取消邮件\r\n      _actions.push(\r\n        cancel_email_biz_data\r\n          .execAction({\r\n            params: {\r\n              type: \"sod\",\r\n              idx: _.toString(t.id)\r\n            }\r\n          })\r\n          .action({})\r\n      )\r\n    })\r\n    console.log(validForm)\r\n    ///修改订单明细\r\n    if (validForm && validForm.length > 0) {\r\n      _.each(validForm, t => {\r\n        _actions.push(\r\n          update_soline_biz_data\r\n            .execAction({\r\n              params: {\r\n                SalesLineId: t.id\r\n              },\r\n              fields: [\"valid_remain\", \"valid_approve\"]\r\n            })\r\n            .action({})\r\n        )\r\n      })\r\n    }\r\n\r\n    //4、调用AX\r\n    if (!_.isNull(ax_params) && !_.isEmpty(ax_params.jsonGroupData)) {\r\n      const h_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"interface_invoke\",\r\n        {},\r\n        {}\r\n      )\r\n      const x_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"checkinterfaceresult\",\r\n        {},\r\n        {}\r\n      )\r\n      for (var i in ax_params.jsonGroupData) {\r\n        let _jsonData = ax_params.jsonGroupData[i]\r\n        if (_jsonData.length > 0) {\r\n          let _p = {\r\n            company: ax_params.company,\r\n            method: \"CMOrderLines\",\r\n            jsonData: _jsonData\r\n          }\r\n          _actions.push(\r\n            h_biz_data\r\n              .handlerAction({\r\n                params: _p\r\n              })\r\n              .action({\r\n                output_last_item_map: {\r\n                  status: \"ax_interface_status\"\r\n                }\r\n              })\r\n          )\r\n          _actions.push(\r\n            x_biz_data\r\n              .checkAction({\r\n                params: {}\r\n              })\r\n              .action({\r\n                rollback_when: {\r\n                  ax_interface_status: {\r\n                    \"<>\": 0\r\n                  }\r\n                }\r\n              })\r\n          )\r\n        }\r\n      }\r\n    }\r\n    let result = await api.query_batch({\r\n      actions: _actions\r\n    })\r\n    if (\r\n      result &&\r\n      result.data &&\r\n      result.data.BatchResult &&\r\n      result.data.BatchResult.Actions &&\r\n      result.data.BatchResult.Actions.length > 0\r\n    ) {\r\n      ///获取判定是否能够删除的检查结果\r\n      let _check_del_dt = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/d/sPlant_SalesOrder_Dispatch\"\r\n      })\r\n      let _is_check_del_ok = true\r\n      if (_check_del_dt && _check_del_dt.length > 0) {\r\n        _.each(_check_del_dt, t => {\r\n          if (t.Result && t.Result.Rollback == true) {\r\n            _is_check_del_ok = false\r\n          }\r\n        })\r\n      }\r\n      if (!_is_check_del_ok) {\r\n        return {\r\n          state: false,\r\n          error_code: \"plant\",\r\n          data: [],\r\n          message: \"删除失败!错误信息:不能删除已出库的派单!\"\r\n        }\r\n      }\r\n      ///判定AX执行结果\r\n      let _rt = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/x/checkinterfaceresult\"\r\n      })\r\n      let _rdata = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/h/interface_invoke\"\r\n      })\r\n      let _is_ok = true\r\n      _.each(_rt, t => {\r\n        if (t.Result && t.Result.Rollback == true) {\r\n          _is_ok = false\r\n        }\r\n      })\r\n      if (_is_ok == true) {\r\n        return {\r\n          state: true,\r\n          data: result.data.BatchResult.Actions,\r\n          message: \"\"\r\n        }\r\n      } else {\r\n        let _msg = \"\"\r\n        _.each(_rdata, t => {\r\n          if (\r\n            !_.isNull(t.Result) &&\r\n            t.Result.LastItem.ax_interface_status != 0\r\n          ) {\r\n            _msg = vm.$t(\"notify.ax_error\") + \":\" + t.Result.Data[0][0].message\r\n          }\r\n        })\r\n        return {\r\n          state: false,\r\n          data: items,\r\n          message: _msg\r\n        }\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n  //保存数据至派单表,修改订单列表明细上的数量\r\n  ///仅修改平台及审批状态\r\n  async updateDispatchPre(_params) {\r\n    let item_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"sPlant_SalesOrder_Dispatch\",\r\n      create,\r\n      descriptor\r\n    )\r\n\r\n    let check_dispatch_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"CheckIfCanModifySalesOrderDispatch\",\r\n      {},\r\n      {}\r\n    )\r\n    let update_soline_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"update_sl_validremain\",\r\n      {},\r\n      {}\r\n    )\r\n    let so_approve_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"sp_updateApproveStatus_PurchasePrice\",\r\n      {},\r\n      {}\r\n    )\r\n\r\n    let _actions = []\r\n    for (var i in _params.save_data) {\r\n      let data = _params.save_data[i]\r\n      let _documentCreateByUsername = data.documentCreateByUsername\r\n      let _is_internal = data.is_internal\r\n\r\n      delete data.documentCreateByUsername\r\n      delete data.is_internal\r\n\r\n      _actions.push(\r\n        check_dispatch_biz_data\r\n          .execAction({\r\n            params: {\r\n              SalesLineId: data.SalesLineId,\r\n              CurrentDispathId: data.id,\r\n              action: \"update\",\r\n              inputQty: data.qty\r\n            },\r\n            fields: [\"allowed\"]\r\n          })\r\n          .action({\r\n            output_last_item_map: {\r\n              allowed: \"allowed\"\r\n            }\r\n          })\r\n      )\r\n      delete data.change_qty\r\n      data.is_email_send = 0\r\n      data.isAXError = false///重新保存的时候需要重新清理ax异常状态\r\n      data.AXError = \"\"\r\n      _actions.push(\r\n        item_biz_data\r\n          .updateAction({\r\n            params: data,\r\n            fields: [\"id\"]\r\n          })\r\n          .action({\r\n            rollback_when: {\r\n              allowed: {\r\n                \"=\": false\r\n              }\r\n            }\r\n          })\r\n      )\r\n      ///审批\r\n      let _DiffAmountCNY = 0, _MinusAmountCNY = 0, _LastDiffAmountCNY = 0\r\n      _DiffAmountCNY = Math.abs(data.price - data.price_vend) * data.qty\r\n      _MinusAmountCNY = Math.abs(data.price_vend - data.Sales_Order_Price) * data.qty\r\n      _LastDiffAmountCNY = Math.abs(data.price - data.Sales_Cost) * data.qty\r\n      let credit_form = {\r\n        ItemId: data.id,\r\n        DocumentType: \"SalesOrderDispatch\",\r\n        ApproveType: \"\", //审批类型:\"\" ---普通审批\r\n        DocumentCreateBy: _documentCreateByUsername,\r\n        purch_price: data.price ? data.price : 0,\r\n        initial_purch_price: data.price_vend ? data.price_vend : 0,\r\n        sales_price: data.Sales_Order_Price ? data.Sales_Order_Price : 0,\r\n        sales_cost: data.Sales_Cost ? data.Sales_Cost : 0,\r\n        DiffAmountCNY: _DiffAmountCNY,\r\n        MinusAmountCNY: _MinusAmountCNY,\r\n        LastDiffAmountCNY: _LastDiffAmountCNY,\r\n        is_internal: _is_internal\r\n      }\r\n      _actions.push(\r\n        so_approve_biz_data\r\n          .execAction({\r\n            params: credit_form,\r\n            fields: [\"id\"]\r\n          })\r\n          .action({})\r\n      )\r\n    }\r\n    //修改订单明细\r\n    if (\r\n      _params.update_soline_form_list &&\r\n      _params.update_soline_form_list.length > 0\r\n    ) {\r\n      _.each(_params.update_soline_form_list, t => {\r\n        _actions.push(\r\n          update_soline_biz_data\r\n            .execAction({\r\n              params: {\r\n                SalesLineId: t.id\r\n              },\r\n              fields: [\"valid_remain\", \"valid_approve\"]\r\n            })\r\n            .action({})\r\n        )\r\n      })\r\n    }\r\n    let result = await api.query_batch({\r\n      actions: _actions\r\n    })\r\n\r\n    if (\r\n      result &&\r\n      result.data &&\r\n      result.data.BatchResult &&\r\n      result.data.BatchResult.Actions &&\r\n      result.data.BatchResult.Actions.length > 0\r\n    ) {\r\n      //获取判定是否能够修改的检查结果\r\n      let _check_update_dt = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/u/sPlant_SalesOrder_Dispatch\"\r\n      })\r\n      let _is_check_update_ok = true\r\n      if (_check_update_dt && _check_update_dt.length > 0) {\r\n        _.each(_check_update_dt, t => {\r\n          if (t.Result && t.Result.Rollback == true) {\r\n            _is_check_update_ok = false\r\n          }\r\n        })\r\n      }\r\n      if (!_is_check_update_ok) {\r\n        return {\r\n          state: false,\r\n          data: [],\r\n          message:\r\n            \"保存失败!错误信息:派单数量不能超过剩余派单数量和剩余送货数量!\"\r\n        }\r\n      }\r\n      return {\r\n        state: true,\r\n        data: result.data.BatchResult.Actions,\r\n        message: \"\"\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n  async updateDispatch(_params) {\r\n    //修改采购单明细除开采购数量(采购数量从ax返回中获取)\r\n    const up_purch_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"PurchLine\",\r\n      {},\r\n      {}\r\n    )\r\n\r\n    let _actions = []\r\n    for (var i in _params.save_data) {\r\n      let data = _params.save_data[i]\r\n      delete data.documentCreateByUsername\r\n      delete data.is_internal\r\n      if (\r\n        !_.isNull(_params.ax_params) &&\r\n        !_.isEmpty(_params.ax_params.jsonGroupData)\r\n      ) {\r\n        ///查询采购单明细id\r\n        _actions.push(\r\n          up_purch_biz_data\r\n            .selectAction({\r\n              params: {\r\n                is_deleted: 0,\r\n                OrderDispatch_id: data.id\r\n              },\r\n              fields: [\"id\"]\r\n            })\r\n            .action({\r\n              output_last_item_map: {\r\n                id: \"purch_item_id\"\r\n              }\r\n            })\r\n        )\r\n        _actions.push(\r\n          up_purch_biz_data\r\n            .updateAction({\r\n              params: {\r\n                id: \"\",\r\n                PurchPrice: data.price,\r\n                DeliveryDate: data.delivery_date\r\n              },\r\n              fields: [\"id\"]\r\n            })\r\n            .action({\r\n              mixin_last_item_map: {\r\n                id: \"purch_item_id\"\r\n              }\r\n            })\r\n        )\r\n      }\r\n    }\r\n\r\n    //调用ax接口\r\n    if (\r\n      !_.isNull(_params.ax_params) &&\r\n      !_.isEmpty(_params.ax_params.jsonGroupData)\r\n    ) {\r\n      const h_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"interface_invoke\",\r\n        {},\r\n        {}\r\n      )\r\n      const x_biz_data = new biz_data_helper.base_entity_helper(\r\n        \"checkinterfaceresult\",\r\n        {},\r\n        {}\r\n      )\r\n      for (var i in _params.ax_params.jsonGroupData) {\r\n        let _jsonData = _params.ax_params.jsonGroupData[i]\r\n        if (_jsonData.length > 0) {\r\n          let _p = {\r\n            company: _params.ax_params.company,\r\n            method: \"CMOrderLines\",\r\n            jsonData: _jsonData\r\n          }\r\n          _actions.push(\r\n            h_biz_data\r\n              .handlerAction({\r\n                params: _p\r\n              })\r\n              .action({\r\n                output_last_item_map: {\r\n                  status: \"ax_interface_status\"\r\n                },\r\n                output_result_data_code: \"AXParams\"\r\n              })\r\n          )\r\n          _actions.push(\r\n            x_biz_data\r\n              .checkAction({\r\n                params: {}\r\n              })\r\n              .action({\r\n                mixin_last_item_map: {\r\n                  ax_interface_status: \"ax_interface_status\"\r\n                },\r\n              })\r\n          )\r\n\r\n          //修改采购单明细\r\n          const up_from_ax_purch_biz_data = new biz_data_helper.base_entity_helper(\r\n            \"update_PurchLine\",\r\n            {},\r\n            {}\r\n          )\r\n\r\n          _actions.push(\r\n            up_from_ax_purch_biz_data\r\n              .execAction({\r\n                params: {}\r\n              })\r\n              .action({\r\n                mixin_result_data_map: {\r\n                  AXParams: \"resultData[0][0].data\"\r\n                }\r\n              })\r\n          )\r\n        }\r\n      }\r\n    }\r\n\r\n    let result = await api.query_batch({\r\n      actions: _actions\r\n    })\r\n\r\n    if (\r\n      result &&\r\n      result.data &&\r\n      result.data.BatchResult &&\r\n      result.data.BatchResult.Actions &&\r\n      result.data.BatchResult.Actions.length > 0\r\n    ) {\r\n      ///检查ax调用情况\r\n      let _rt = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/x/checkinterfaceresult\"\r\n      })\r\n      let _rdata = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/h/interface_invoke\"\r\n      })\r\n      let _is_ok = true\r\n      _.each(_rt, t => {\r\n        if (t.Params && t.Params.length > 0) {\r\n          for (var i in t.Params) {\r\n            if (t.Params[i].ax_interface_status != 0) {\r\n              _is_ok = false\r\n            }\r\n          }\r\n        }\r\n      })\r\n      if (_is_ok == true) {\r\n        return {\r\n          state: true,\r\n          data: result.data.BatchResult.Actions,\r\n          message: \"\"\r\n        }\r\n      } else {\r\n        let _msg = \"\"\r\n        _.each(_rdata, t => {\r\n          if (\r\n            !_.isNull(t.Result) &&\r\n            t.Result.LastItem.ax_interface_status != 0\r\n          ) {\r\n            _msg = \"AX接口调用失败,错误信息:\" + t.Result.Data[0][0].message\r\n          }\r\n        })\r\n        return {\r\n          state: false,\r\n          data: [],\r\n          message: _msg\r\n        }\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n  // async updateDispatch(_params) {\r\n  //   let item_biz_data = new biz_data_helper.base_entity_helper(\r\n  //     \"sPlant_SalesOrder_Dispatch\",\r\n  //     create,\r\n  //     descriptor\r\n  //   );\r\n  //   // let update_soline_biz_data = new biz_data_helper.base_entity_helper(\r\n  //   //   \"SalesLine\",\r\n  //   //   {},\r\n  //   //   {}\r\n  //   // );\r\n\r\n  //   let check_dispatch_biz_data = new biz_data_helper.base_entity_helper(\r\n  //     \"CheckIfCanModifySalesOrderDispatch\",\r\n  //     {},\r\n  //     {}\r\n  //   );\r\n  //   //修改采购单明细除开采购数量(采购数量从ax返回中获取)\r\n  //   const up_purch_biz_data = new biz_data_helper.base_entity_helper(\r\n  //     \"PurchLine\",\r\n  //     {},\r\n  //     {}\r\n  //   );\r\n  //   let update_soline_biz_data = new biz_data_helper.base_entity_helper(\r\n  //     \"update_sl_validremain\",\r\n  //     {},\r\n  //     {}\r\n  //   );\r\n  //   let so_approve_biz_data = new biz_data_helper.base_entity_helper(\r\n  //     \"sp_updateApproveStatus_PurchasePrice\",\r\n  //     {},\r\n  //     {}\r\n  //   );\r\n\r\n  //   let _actions = [];\r\n  //   for (var i in _params.save_data) {\r\n\r\n  //     let data = _params.save_data[i];\r\n  //     let _documentCreateByUsername = data.documentCreateByUsername;\r\n  //     let _is_internal = data.is_internal;\r\n\r\n  //     delete data.documentCreateByUsername;\r\n  //     delete data.is_internal;\r\n\r\n  //     _actions.push(\r\n  //       check_dispatch_biz_data\r\n  //         .execAction({\r\n  //           params: {\r\n  //             SalesLineId: data.SalesLineId,\r\n  //             CurrentDispathId: data.id,\r\n  //             action: \"update\",\r\n  //             inputQty: data.qty\r\n  //           },\r\n  //           fields: [\"allowed\"]\r\n  //         })\r\n  //         .action({\r\n  //           output_last_item_map: {\r\n  //             allowed: \"allowed\"\r\n  //           }\r\n  //         })\r\n  //     );\r\n  //     delete data.change_qty;\r\n  //     data.is_email_send = 0;\r\n  //     data.isAXError = false;///重新保存的时候需要重新清理ax异常状态\r\n  //     data.AXError = \"\";\r\n  //     _actions.push(\r\n  //       item_biz_data\r\n  //         .updateAction({\r\n  //           params: data,\r\n  //           fields: [\"id\"]\r\n  //         })\r\n  //         .action({\r\n  //           rollback_when: {\r\n  //             allowed: {\r\n  //               \"=\": false\r\n  //             }\r\n  //           }\r\n  //         })\r\n  //     );\r\n  //     ///审批\r\n  //     let _DiffAmountCNY = 0, _MinusAmountCNY = 0, _LastDiffAmountCNY = 0;\r\n  //     _DiffAmountCNY = Math.abs(data.price - data.price_vend) * data.qty;\r\n  //     _MinusAmountCNY = Math.abs(data.price_vend - data.Sales_Order_Price) * data.qty;\r\n  //     _LastDiffAmountCNY = Math.abs(data.price - data.Sales_Cost) * data.qty;\r\n  //     let credit_form = {\r\n  //       ItemId: data.id,\r\n  //       DocumentType: \"SalesOrderDispatch\",\r\n  //       ApproveType: \"\", //审批类型:\"\" ---普通审批\r\n  //       DocumentCreateBy: _documentCreateByUsername,\r\n  //       purch_price: data.price ? data.price : 0,\r\n  //       initial_purch_price: data.price_vend ? data.price_vend : 0,\r\n  //       sales_price: data.Sales_Order_Price ? data.Sales_Order_Price : 0,\r\n  //       sales_cost: data.Sales_Cost ? data.Sales_Cost : 0,\r\n  //       DiffAmountCNY: _DiffAmountCNY,\r\n  //       MinusAmountCNY: _MinusAmountCNY,\r\n  //       LastDiffAmountCNY: _LastDiffAmountCNY,\r\n  //       is_internal: _is_internal\r\n  //     };\r\n  //     _actions.push(\r\n  //       so_approve_biz_data\r\n  //         .execAction({\r\n  //           params: credit_form,\r\n  //           fields: [\"id\"]\r\n  //         })\r\n  //         .action({})\r\n  //     );\r\n\r\n  //     if (\r\n  //       !_.isNull(_params.ax_params) &&\r\n  //       !_.isEmpty(_params.ax_params.jsonGroupData)\r\n  //     ) {\r\n  //       ///查询采购单明细id\r\n  //       _actions.push(\r\n  //         up_purch_biz_data\r\n  //           .selectAction({\r\n  //             params: {\r\n  //               is_deleted: 0,\r\n  //               OrderDispatch_id: data.id\r\n  //             },\r\n  //             fields: [\"id\"]\r\n  //           })\r\n  //           .action({\r\n  //             output_last_item_map: {\r\n  //               id: \"purch_item_id\"\r\n  //             }\r\n  //           })\r\n  //       );\r\n  //       _actions.push(\r\n  //         up_purch_biz_data\r\n  //           .updateAction({\r\n  //             params: {\r\n  //               id: \"\",\r\n  //               PurchPrice: data.price,\r\n  //               DeliveryDate: data.delivery_date\r\n  //             },\r\n  //             fields: [\"id\"]\r\n  //           })\r\n  //           .action({\r\n  //             mixin_last_item_map: {\r\n  //               id: \"purch_item_id\"\r\n  //             }\r\n  //           })\r\n  //       );\r\n  //     }\r\n  //   }\r\n  //   //修改订单明细\r\n  //   if (\r\n  //     _params.update_soline_form_list &&\r\n  //     _params.update_soline_form_list.length > 0\r\n  //   ) {\r\n  //     _.each(_params.update_soline_form_list, t => {\r\n  //       _actions.push(\r\n  //         update_soline_biz_data\r\n  //           .execAction({\r\n  //             params: {\r\n  //               SalesLineId: t.id\r\n  //             },\r\n  //             fields: [\"valid_remain\", \"valid_approve\"]\r\n  //           })\r\n  //           .action({})\r\n  //       );\r\n  //     });\r\n  //   }\r\n\r\n  //   //调用ax接口\r\n  //   if (\r\n  //     !_.isNull(_params.ax_params) &&\r\n  //     !_.isEmpty(_params.ax_params.jsonGroupData)\r\n  //   ) {\r\n  //     const h_biz_data = new biz_data_helper.base_entity_helper(\r\n  //       \"interface_invoke\",\r\n  //       {},\r\n  //       {}\r\n  //     );\r\n  //     const x_biz_data = new biz_data_helper.base_entity_helper(\r\n  //       \"checkinterfaceresult\",\r\n  //       {},\r\n  //       {}\r\n  //     );\r\n  //     // console.log(_params.ax_params.jsonData);\r\n  //     for (var i in _params.ax_params.jsonGroupData) {\r\n  //       let _jsonData = _params.ax_params.jsonGroupData[i];\r\n  //       if (_jsonData.length > 0) {\r\n  //         let _p = {\r\n  //           company: _params.ax_params.company,\r\n  //           method: \"CMOrderLines\",\r\n  //           jsonData: _jsonData\r\n  //         };\r\n  //         _actions.push(\r\n  //           h_biz_data\r\n  //             .handlerAction({\r\n  //               params: _p\r\n  //             })\r\n  //             .action({\r\n  //               output_last_item_map: {\r\n  //                 status: \"ax_interface_status\"\r\n  //               },\r\n  //               output_result_data_code: \"AXParams\"\r\n  //             })\r\n  //         );\r\n  //         _actions.push(\r\n  //           x_biz_data\r\n  //             .checkAction({\r\n  //               params: {}\r\n  //             })\r\n  //             .action({\r\n  //               // rollback_when: {\r\n  //               //   ax_interface_status: {\r\n  //               //     \"<>\": 0\r\n  //               //   }\r\n  //               // }\r\n  //               mixin_last_item_map: {\r\n  //                 ax_interface_status: \"ax_interface_status\"\r\n  //               },\r\n  //             })\r\n  //         );\r\n\r\n  //         //修改采购单明细\r\n  //         const up_from_ax_purch_biz_data = new biz_data_helper.base_entity_helper(\r\n  //           \"update_PurchLine\",\r\n  //           {},\r\n  //           {}\r\n  //         );\r\n\r\n  //         _actions.push(\r\n  //           up_from_ax_purch_biz_data\r\n  //             .execAction({\r\n  //               params: {}\r\n  //             })\r\n  //             .action({\r\n  //               mixin_result_data_map: {\r\n  //                 AXParams: \"resultData[0][0].data\"\r\n  //               }\r\n  //             })\r\n  //         );\r\n  //       }\r\n  //     }\r\n  //   }\r\n\r\n  //   let result = await api.query_batch({\r\n  //     actions: _actions\r\n  //   });\r\n\r\n  //   if (\r\n  //     result &&\r\n  //     result.data &&\r\n  //     result.data.BatchResult &&\r\n  //     result.data.BatchResult.Actions &&\r\n  //     result.data.BatchResult.Actions.length > 0\r\n  //   ) {\r\n  //     //获取判定是否能够修改的检查结果\r\n  //     let _check_update_dt = _.filter(result.data.BatchResult.Actions, {\r\n  //       Code: \"data/u/sPlant_SalesOrder_Dispatch\"\r\n  //     });\r\n  //     let _is_check_update_ok = true;\r\n  //     if (_check_update_dt && _check_update_dt.length > 0) {\r\n  //       _.each(_check_update_dt, t => {\r\n  //         if (t.Result && t.Result.Rollback == true) {\r\n  //           _is_check_update_ok = false;\r\n  //         }\r\n  //       });\r\n  //     }\r\n  //     if (!_is_check_update_ok) {\r\n  //       return {\r\n  //         state: false,\r\n  //         data: [],\r\n  //         message:\r\n  //           \"保存失败!错误信息:派单数量不能超过剩余派单数量和剩余送货数量!\"\r\n  //       };\r\n  //     }\r\n  //     ///检查ax调用情况\r\n  //     let _rt = _.filter(result.data.BatchResult.Actions, {\r\n  //       Code: \"data/x/checkinterfaceresult\"\r\n  //     });\r\n  //     let _rdata = _.filter(result.data.BatchResult.Actions, {\r\n  //       Code: \"data/h/interface_invoke\"\r\n  //     });\r\n  //     let _is_ok = true;\r\n  //     _.each(_rt, t => {\r\n  //       if (t.Params && t.Params.length > 0) {\r\n  //         for (var i in t.Params) {\r\n  //           if (t.Params[i].ax_interface_status != 0) {\r\n  //             _is_ok = false;\r\n  //           }\r\n  //         }\r\n  //       }\r\n  //       // if (t.Result && t.Result.Rollback == true) {\r\n  //       //   _is_ok = false;\r\n  //       // }\r\n  //     });\r\n  //     if (_is_ok == true) {\r\n  //       return {\r\n  //         state: true,\r\n  //         data: result.data.BatchResult.Actions,\r\n  //         message: \"\"\r\n  //       };\r\n  //     } else {\r\n  //       let _msg = \"\";\r\n  //       _.each(_rdata, t => {\r\n  //         if (\r\n  //           !_.isNull(t.Result) &&\r\n  //           t.Result.LastItem.ax_interface_status != 0\r\n  //         ) {\r\n  //           _msg = \"AX接口调用失败,错误信息:\" + t.Result.Data[0][0].message;\r\n  //         }\r\n  //       });\r\n  //       return {\r\n  //         state: false,\r\n  //         data: [],\r\n  //         message: _msg\r\n  //       };\r\n  //     }\r\n  //   } else {\r\n  //     return null;\r\n  //   }\r\n  // },\r\n  ///仅仅修改附件\r\n  async updateDispatchAccessory(params) {\r\n    let item_biz_data = new biz_data_helper.base_entity_helper(\"sPlant_SalesOrder_Dispatch\", {}, {})\r\n    let _actions = []\r\n    for (var k in params) {\r\n      if (k == \"edit\" && params[k].length > 0) {\r\n        _actions.push(\r\n          item_biz_data.updateAction({\r\n            params: params[k],\r\n            fields: [\"id\"]\r\n          }).action({})\r\n        )\r\n      }\r\n    }\r\n    let result = await api.query_batch({\r\n      actions: _actions\r\n    })\r\n    if (\r\n      result &&\r\n      result.data &&\r\n      result.data.BatchResult &&\r\n      result.data.BatchResult.Actions &&\r\n      result.data.BatchResult.Actions.length > 0\r\n    ) {\r\n      let is_error = false\r\n      _.each(result.data.BatchResult.Actions, (t) => {\r\n        if (!t.Result.Data) {\r\n          is_error = true\r\n        }\r\n      })\r\n      if (is_error) return null\r\n      else {\r\n        let rt = { add: [], edit: [], delete: [] }\r\n        _.each(result.data.BatchResult.Actions, (t) => {\r\n          if (t.Code.indexOf(\"data/u/\") > -1) rt.edit = t.Result.Data[0]\r\n        })\r\n        return rt\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  },\r\n  ///检查订单是否审核\r\n  async checkOrderIsApproved(_params) {\r\n    let check_biz_data = new biz_data_helper.base_entity_helper(\r\n      \"CheckSOAllApproved\",\r\n      {},\r\n      {}\r\n    )\r\n    let _actions = []\r\n    ///检查订单是否审核\r\n    _actions.push(\r\n      check_biz_data\r\n        .execAction({\r\n          params: { itemId: _params.salesOrderId },\r\n          fields: [\"isApproved\"]\r\n        })\r\n        .action({})\r\n    )\r\n\r\n    let result = await api.query_batch({\r\n      actions: _actions\r\n    })\r\n\r\n    if (\r\n      result &&\r\n      result.data &&\r\n      result.data.BatchResult &&\r\n      result.data.BatchResult.Actions &&\r\n      result.data.BatchResult.Actions.length > 0\r\n    ) {\r\n      let _rt = _.filter(result.data.BatchResult.Actions, {\r\n        Code: \"data/e/CheckSOAllApproved\"\r\n      })\r\n      let _is_ok = true\r\n      _.each(_rt, t => {\r\n        if (t.Result && t.Result.Data.length > 0) {\r\n          _is_ok = t.Result.Data[0][0].isApproved\r\n        }\r\n      })\r\n      return {\r\n        state: _is_ok,\r\n        data: [],\r\n        message: \"订单已经反审,不能执行该操作!\"\r\n      }\r\n    } else {\r\n      return null\r\n    }\r\n  }\r\n}\r\n\r\nconst biz_data = new biz_data_helper.base_entity_helper(\r\n  content_type,\r\n  create,\r\n  descriptor\r\n)\r\nexport { biz_data, dataForm, fields, methods, rules };\r\n\r\n"],"sourceRoot":""}