{"version":3,"sources":["components/JobRequests/FormView.jsx","containers/JobRequests/FormView.js"],"names":["FormView","React","constructor","props","_this","super","this","state","jobTemplateId","handleFormChange","setState","formHasChanged","getItemId","_this$state$item","_this$props$linkTarge","item","id","linkTargetRecord","jobRequestId","find","Boolean","fetchItem","async","itemId","arguments","length","undefined","_documentItems$value$","_documentItems$value","_documentItems$value$2","_documentItems$value$3","_documentItems$value2","_documentItems$value3","_documentItems$value$4","_documentItems$value4","_documentItems$value5","_assets$value$data","_assets$value","responses","Promise","all","getItem","catch","error","_this$props$onCancel","_this$props","onCancel","call","resourceNotFound","newItem","getSettings","type","settingsType","getAssetCategories","getLocations","cloneDeep","value","data","locationId","locationName","assets","documentItems","templates","getAssets","locationIds","assetIds","assetId","assetCategoryIds","assetCategoryId","getDocumentItems","request","domainObjectId","domainObjectType","documentType","resolve","status","getTemplates","itemOriginal","items","documentItemsOriginal","documentItemsTotals","pageTotals","fieldSettings","assetCategories","get","locations","createJobVisible","createJobLoading","declineVisible","declineLoading","comment","showError","searchAssets","_this$state$item2","response","search","saveItem","Error","saved","updateItem","createItem","saveDocumentItems","saveItemSuccess","savedItem","saveItemParams","sendCreateNotification","showClientNotifications","handleActionsMenuClick","_ref","key","hasUnsavedChanges","_message","t","handleCreateJobOk","_this$props$onSave","_this$props2","_this$props$onSave2","_this$props3","onSave","createJob","failureCount","addJobRequestDocumentsToJob","copied","copyAllObjectDocuments","sourceRequest","destinationRequest","_this$props$onSave3","_this$props4","handleDeclineOk","_this$props$onSave4","_this$props5","_this$props$onSave5","_this$props6","decline","_this$props$onSave6","_this$props7","setItemValue","name","produce","draft","set","form","setFieldsValue","includes","_this$state$item3","_this$state$item4","isEqual","handleSubmit","createHandleSubmit","debounce","DEBOUNCE","createSaveDocumentItems","componentDidMount","Emitter","on","FORM_CHANGE_EVENT","componentWillUnmount","off","render","_this$state$locations","_this$state$assetCate","_assets$items","_this$state$documentI","_this$state$documentI2","_this$state$templates","_jsx","_Spin","createLabel","createLabelFactory","createFieldDecorator","createFieldFactory","readOnly","isReadOnly","_jsxs","_Fragment","children","_Form","layout","onSubmit","className","colon","getUserPermission","_Dropdown","overlay","_Menu","onClick","Item","trigger","_Button","Icon","ValidationError","errors","validationErrors","Row","Col","md","xs","label","_Input","onChange","e","target","disabled","autoFocus","Select","filter","each","map","Option","getOptionProps","displayName","formatDateTime","createdDate","showTime","statusName","dropdownRender","createDropdownRender","onSearch","allowClear","showSearch","TextArea","rows","jobConversionComment","formatUserTime","jobConversionDate","jobConversionBy","enableAssetManagement","_Tabs","activeKey","TabPane","tab","forceRender","Documents","values","FormButtons","saveButtonLoading","saveAndCloseButtonLoading","cancelText","saveAndCloseText","saveAndCloseTooltip","Modal","title","visible","okText","onOk","okButtonProps","loading","required","Checkbox","checked","create","onValuesChange","_len","params","Array","_key","emit","createFormViewContainer","actions","extraDispatchToProps","dispatch","assetCategoryActions","getOptions","assetActions","pageIndex","pageSize","locationActions","getItems","locationVendingTypes","jobTemplateActions","documentActions","createDocumentsDispatchToProps","Component"],"mappings":"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","file":"static/js/38.48da5150.chunk.js","sourcesContent":["import * as React from 'react'\r\nimport { Form, Input, Button, Spin, Dropdown, Menu, Tabs, message } from 'antd'\r\nimport { set, cloneDeep, debounce, isEqual, get } from 'lodash'\r\nimport produce from 'immer'\r\nimport { showError, resourceNotFound, ValidationError, showClientNotifications } from 'helpers/errors'\r\nimport {\r\n createLabelFactory,\r\n createFieldFactory,\r\n createHandleSubmit,\r\n createDropdownRender,\r\n createSaveDocumentItems,\r\n isReadOnly,\r\n} from 'helpers/formViews'\r\nimport { DEBOUNCE } from 'helpers/utils'\r\nimport { formatUserTime, formatDateTime } from 'helpers/dateTime'\r\nimport { getUserPermission } from 'helpers/auth'\r\nimport { t } from 'helpers/i18n'\r\nimport { Emitter } from 'helpers/events'\r\nimport { FORM_CHANGE_EVENT } from 'options/events'\r\nimport Select, { Option, getOptionProps } from 'elements/Select'\r\nimport Icon from 'elements/Icon'\r\nimport Modal from 'elements/Modal'\r\nimport { Row, Col } from 'elements/Grid'\r\nimport Checkbox from 'elements/Checkbox'\r\nimport Documents from 'containers/Documents/ChildListView'\r\nimport FormButtons from 'elements/FormButtons'\r\n\r\nclass FormView extends React.Component {\r\n state = { jobTemplateId: 0 }\r\n\r\n constructor(props) {\r\n super(props)\r\n\r\n this.handleSubmit = createHandleSubmit(this)\r\n this.searchAssets = debounce(this.searchAssets, DEBOUNCE)\r\n this.saveDocumentItems = createSaveDocumentItems(this, 'JobRequest')\r\n }\r\n\r\n componentDidMount() {\r\n this.fetchItem()\r\n\r\n Emitter.on(FORM_CHANGE_EVENT, this.handleFormChange)\r\n }\r\n\r\n componentWillUnmount() {\r\n Emitter.off(FORM_CHANGE_EVENT, this.handleFormChange)\r\n }\r\n\r\n handleFormChange = () => this.setState({ formHasChanged: true })\r\n\r\n getItemId = () => [this.state.item?.id, this.props.linkTargetRecord?.jobRequestId].find(Boolean)\r\n\r\n fetchItem = async ({ itemId = this.getItemId() } = {}) => {\r\n try {\r\n const responses = await Promise.all([\r\n itemId\r\n ? this.props.getItem(itemId).catch((error) => {\r\n this.props.onCancel?.()\r\n throw error\r\n })\r\n : !this.props.linkTargetRecord\r\n ? this.props.newItem({})\r\n : resourceNotFound(this),\r\n this.props.getSettings({ type: this.props.settingsType }),\r\n this.props.getAssetCategories(),\r\n this.props.getLocations(),\r\n ])\r\n\r\n const item = cloneDeep(responses[0].value.data)\r\n\r\n item.locationId = item.locationId || undefined\r\n item.locationName = item.locationId ? item.locationName : ''\r\n\r\n const [assets, documentItems, templates] = await Promise.all([\r\n this.props.getAssets({\r\n locationIds: item.locationId ? [item.locationId] : undefined,\r\n assetIds: item.assetId ? [item.assetId] : undefined,\r\n assetCategoryIds: item.assetCategoryId ? [item.assetCategoryId] : undefined,\r\n }),\r\n item.id\r\n ? this.props.getDocumentItems({\r\n request: {\r\n domainObjectId: item.id,\r\n domainObjectType: 'JobRequest',\r\n documentType: 'ObjectDocument',\r\n },\r\n })\r\n : Promise.resolve(null),\r\n item.status === 'Open' ? this.props.getTemplates() : Promise.resolve(null),\r\n ])\r\n\r\n this.setState({\r\n item,\r\n itemOriginal: cloneDeep(item),\r\n documentItems: documentItems?.value?.data?.items ?? [],\r\n documentItemsOriginal: documentItems?.value?.data?.items ?? [],\r\n documentItemsTotals: documentItems?.value?.data?.pageTotals ?? {},\r\n fieldSettings: responses[1].value.data.fieldSettings,\r\n assetCategories: get(responses[2], 'value.data.items', []),\r\n locations: get(responses[3], 'value.data.items', []),\r\n templates: get(templates, 'value.data.items', []),\r\n assets: assets?.value?.data ?? {},\r\n createJobVisible: false,\r\n createJobLoading: false,\r\n declineVisible: false,\r\n declineLoading: false,\r\n jobTemplateId: 0,\r\n comment: '',\r\n formHasChanged: false,\r\n })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n\r\n searchAssets = async (search) => {\r\n try {\r\n const { assetId, locationId, assetCategoryId } = this.state.item ?? {}\r\n const response = await this.props.getAssets({\r\n search,\r\n assetIds: assetId ? [assetId] : undefined,\r\n locationIds: locationId ? [locationId] : undefined,\r\n assetCategoryIds: assetCategoryId ? [assetCategoryId] : undefined,\r\n })\r\n\r\n this.setState({ assets: response.value.data })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n\r\n saveItem = async (item) => {\r\n if (!item) {\r\n throw new Error('item is undefined')\r\n }\r\n\r\n const saved = item.id ? await this.props.updateItem(item) : await this.props.createItem(item)\r\n\r\n await this.saveDocumentItems(saved.value.data.id)\r\n\r\n return saved\r\n }\r\n\r\n saveItemSuccess = async (savedItem, saveItemParams) => {\r\n if (!saveItemParams.id) {\r\n const response = await this.props.sendCreateNotification({ id: savedItem.id })\r\n\r\n showClientNotifications({ response })\r\n\r\n return response\r\n }\r\n\r\n return Promise.resolve(true)\r\n }\r\n\r\n handleActionsMenuClick = ({ key }) => {\r\n if (this.hasUnsavedChanges()) {\r\n message.error(t('saveChangesFirst'))\r\n return\r\n }\r\n\r\n if (key === 'decline') {\r\n this.setState({ declineVisible: true })\r\n }\r\n\r\n if (key === 'createJob') {\r\n this.setState({ createJobVisible: true })\r\n }\r\n }\r\n\r\n handleCreateJobOk = async () => {\r\n try {\r\n const { item, comment, jobTemplateId } = this.state\r\n\r\n await this.props.onSave?.(true)\r\n\r\n this.setState({ createJobLoading: true })\r\n\r\n const response = await this.props.createJob({\r\n id: item.id,\r\n comment,\r\n jobTemplateId,\r\n })\r\n\r\n showClientNotifications({ response })\r\n\r\n if (response.value.data.failureCount > 0) {\r\n throw new Error()\r\n }\r\n\r\n if (this.state.addJobRequestDocumentsToJob) {\r\n const copied = await this.props.copyAllObjectDocuments({\r\n sourceRequest: {\r\n domainObjectId: this.state.item.id,\r\n domainObjectType: 'JobRequest',\r\n },\r\n destinationRequest: {\r\n domainObjectId: response.value.data.items[0].id,\r\n domainObjectType: 'Job',\r\n },\r\n })\r\n\r\n showClientNotifications({ response: copied })\r\n\r\n if (copied.value.data.failureCount > 0) {\r\n throw new Error()\r\n }\r\n }\r\n\r\n await this.fetchItem()\r\n await this.props.onSave?.(false)\r\n } catch (error) {\r\n showError({ error })\r\n await this.props.onSave?.(false)\r\n } finally {\r\n this.setState({ createJobLoading: false })\r\n }\r\n }\r\n\r\n handleDeclineOk = async () => {\r\n try {\r\n const { item, comment } = this.state\r\n\r\n await this.props.onSave?.(true)\r\n\r\n this.setState({ declineLoading: true })\r\n\r\n const response = await this.props.decline({\r\n id: item.id,\r\n comment,\r\n })\r\n\r\n showClientNotifications({ response })\r\n\r\n await this.fetchItem()\r\n\r\n await this.props.onSave?.(false)\r\n } catch (error) {\r\n showError({ error })\r\n await this.props.onSave?.(false)\r\n } finally {\r\n this.setState({ declineLoading: false })\r\n }\r\n }\r\n\r\n setItemValue = (name, value) =>\r\n this.setState(\r\n produce((draft) => {\r\n set(draft.item, name, value)\r\n\r\n this.props.form.setFieldsValue({ [name]: value })\r\n }),\r\n async () => {\r\n if (['locationId', 'assetCategoryId'].includes(name)) {\r\n try {\r\n const { locationId, assetCategoryId } = this.state.item ?? {}\r\n\r\n this.setItemValue('assetId', 0)\r\n\r\n const response = await this.props.getAssets({\r\n locationIds: locationId ? [locationId] : [],\r\n assetCategoryIds: assetCategoryId ? [assetCategoryId] : [],\r\n })\r\n\r\n this.setState({ assets: response.value.data })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n }\r\n )\r\n\r\n hasUnsavedChanges = () =>\r\n this.state.formHasChanged ||\r\n !this.state.item?.id ||\r\n !isEqual(this.state.item, this.state.itemOriginal) ||\r\n !isEqual(this.state.documentItems, this.state.documentItemsOriginal)\r\n\r\n render() {\r\n const { item, comment, jobTemplateId, addJobRequestDocumentsToJob, fieldSettings, assets } = this.state\r\n\r\n if (!item || !fieldSettings) {\r\n return