@unite-us/app-create-referral 0.4.2-PAYS-5507-1a46ab2 → 0.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/service_authorization/CapsInfo.js +16 -55
- package/dist/components/service_authorization/CapsInfo.js.map +1 -1
- package/dist/hooks/useCreateReferrals.js +28 -67
- package/dist/hooks/useCreateReferrals.js.map +1 -1
- package/dist/pages/builder/AuthorizationSubform.js +10 -8
- package/dist/pages/builder/AuthorizationSubform.js.map +1 -1
- package/dist/pages/builder/ReferralBuilder.js +45 -77
- package/dist/pages/builder/ReferralBuilder.js.map +1 -1
- package/dist/pages/builder/ReferralBuilderForm.js +13 -8
- package/dist/pages/builder/ReferralBuilderForm.js.map +1 -1
- package/dist/pages/builder/useBuildReferrals.js +20 -13
- package/dist/pages/builder/useBuildReferrals.js.map +1 -1
- package/dist/pages/builder/utils.js +16 -23
- package/dist/pages/builder/utils.js.map +1 -1
- package/package.json +1 -1
- package/dist/common/form/ErrorMessage/index.js +0 -26
- package/dist/common/form/ErrorMessage/index.js.map +0 -1
- package/dist/utils/validateUnitAmount.js +0 -16
- package/dist/utils/validateUnitAmount.js.map +0 -1
|
@@ -20,7 +20,6 @@ var _LineItem = _interopRequireDefault(require("../../pages/builder/LineItem"));
|
|
|
20
20
|
var _usePerson = _interopRequireDefault(require("../../hooks/usePerson"));
|
|
21
21
|
var _ApiHooks = require("../../api/ApiHooks");
|
|
22
22
|
var _DollarAmount = _interopRequireDefault(require("../DollarAmount"));
|
|
23
|
-
var _ErrorMessage = _interopRequireDefault(require("../../common/form/ErrorMessage"));
|
|
24
23
|
function _getRequireWildcardCache(e) { if ("function" != typeof _WeakMap) return null; var r = new _WeakMap(), t = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
25
24
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? _Object$getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? _Object$defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
26
25
|
function InformationText(_ref) {
|
|
@@ -35,7 +34,7 @@ function InformationText(_ref) {
|
|
|
35
34
|
}, value);
|
|
36
35
|
}
|
|
37
36
|
InformationText.propTypes = {
|
|
38
|
-
name: _propTypes.default.
|
|
37
|
+
name: _propTypes.default.string.isRequired,
|
|
39
38
|
value: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node, _propTypes.default.number]).isRequired,
|
|
40
39
|
isLoaded: _propTypes.default.bool.isRequired
|
|
41
40
|
};
|
|
@@ -55,79 +54,50 @@ Spend.propTypes = {
|
|
|
55
54
|
isCostBased: _propTypes.default.bool.isRequired
|
|
56
55
|
};
|
|
57
56
|
function CapsInfo(_ref3) {
|
|
58
|
-
var _formValues$paymentAu, _formValues$paymentAu2
|
|
57
|
+
var _formValues$paymentAu, _formValues$paymentAu2;
|
|
59
58
|
var formValues = _ref3.formValues,
|
|
60
59
|
feeScheduleProgram = _ref3.feeScheduleProgram,
|
|
61
60
|
isCostBased = _ref3.isCostBased,
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
var requestedStartDate = serviceStart && _moment.default.unix(serviceStart).toISOString();
|
|
65
|
-
var serviceEnd = formValues === null || formValues === void 0 || (_formValues$paymentAu2 = formValues.paymentAuthForm) === null || _formValues$paymentAu2 === void 0 ? void 0 : _formValues$paymentAu2.service_end;
|
|
66
|
-
var requestedEndDate = serviceEnd && _moment.default.unix(serviceEnd).toISOString();
|
|
61
|
+
hasDatesSelected = _ref3.hasDatesSelected,
|
|
62
|
+
assignErrors = _ref3.assignErrors;
|
|
67
63
|
var person = (0, _usePerson.default)();
|
|
68
64
|
var _useFind = (0, _ApiHooks.useFind)('authorized_spend', {
|
|
69
65
|
person: person === null || person === void 0 ? void 0 : person.id,
|
|
70
66
|
fee_schedule_program: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.id,
|
|
71
|
-
requested_starts_at:
|
|
72
|
-
requested_ends_at:
|
|
67
|
+
requested_starts_at: _moment.default.unix(formValues === null || formValues === void 0 || (_formValues$paymentAu = formValues.paymentAuthForm) === null || _formValues$paymentAu === void 0 ? void 0 : _formValues$paymentAu.service_start).toISOString(),
|
|
68
|
+
requested_ends_at: _moment.default.unix(formValues === null || formValues === void 0 || (_formValues$paymentAu2 = formValues.paymentAuthForm) === null || _formValues$paymentAu2 === void 0 ? void 0 : _formValues$paymentAu2.service_end).toISOString()
|
|
73
69
|
}, {
|
|
74
70
|
queryConfig: {
|
|
75
|
-
enabled: !!(person !== null && person !== void 0 && person.id && feeScheduleProgram !== null && feeScheduleProgram !== void 0 && feeScheduleProgram.id),
|
|
71
|
+
enabled: !!(hasDatesSelected && person !== null && person !== void 0 && person.id && feeScheduleProgram !== null && feeScheduleProgram !== void 0 && feeScheduleProgram.id),
|
|
76
72
|
placeholderData: undefined
|
|
77
73
|
}
|
|
78
74
|
}),
|
|
79
75
|
authorizedSpendsData = _useFind.data,
|
|
80
76
|
isFetching = _useFind.isFetching,
|
|
81
77
|
isLoading = _useFind.isLoading;
|
|
82
|
-
var _useFind2 = (0, _ApiHooks.useFind)('insurance', {
|
|
83
|
-
person: person === null || person === void 0 ? void 0 : person.id,
|
|
84
|
-
state: 'active',
|
|
85
|
-
'plan.fee_schedules': feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.fee_schedule.id,
|
|
86
|
-
enrolled_before: requestedStartDate,
|
|
87
|
-
expired_after: requestedEndDate
|
|
88
|
-
}, {
|
|
89
|
-
queryClient: {
|
|
90
|
-
enabled: !!(feeScheduleProgram !== null && feeScheduleProgram !== void 0 && feeScheduleProgram.id),
|
|
91
|
-
placeholderData: undefined
|
|
92
|
-
}
|
|
93
|
-
}),
|
|
94
|
-
insurancesData = _useFind2.data,
|
|
95
|
-
isFindInsuranceSuccess = _useFind2.isSuccess,
|
|
96
|
-
isFindInsuranceLoading = _useFind2.isLoading;
|
|
97
|
-
var insurances = (0, _lodash.get)(insurancesData, 'data.data', []);
|
|
98
|
-
var invalidInsuranceAuthorizationDates = !(insurances !== null && insurances !== void 0 && insurances.length);
|
|
99
78
|
var isLoaded = !isFetching && !isLoading;
|
|
100
79
|
var authorizationSpends = (0, _lodash.get)(authorizedSpendsData, 'data.data', []); //todo use this on the modal
|
|
101
80
|
var totalApprovedSpend = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_approved_spend', 0);
|
|
102
81
|
var totalRequestedSpend = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_requested_spend', 0);
|
|
103
82
|
var authorizationSpendsErrors = (0, _lodash.get)(authorizedSpendsData, 'data.meta.errors', []);
|
|
104
83
|
var availableCap = (0, _lodash.get)(authorizedSpendsData, 'data.meta.available_cap', 0);
|
|
105
|
-
var totalCap = (0, _lodash.get)(authorizedSpendsData, 'data.meta.total_cap', 0);
|
|
106
84
|
var showClientUtilizationError = authorizationSpendsErrors.some(function (e) {
|
|
107
85
|
return e.title === _messageConstants.UTILIZATION_ERROR;
|
|
108
86
|
});
|
|
109
|
-
var showPassthroughDatesError = authorizationSpendsErrors.some(function (e) {
|
|
87
|
+
var showPassthroughDatesError = hasDatesSelected && authorizationSpendsErrors.some(function (e) {
|
|
110
88
|
return e.title === _messageConstants.DATES_ERROR;
|
|
111
89
|
});
|
|
90
|
+
(0, _react.useEffect)(function () {
|
|
91
|
+
assignErrors([showClientUtilizationError, showPassthroughDatesError]);
|
|
92
|
+
}, [showClientUtilizationError, showPassthroughDatesError, assignErrors]);
|
|
112
93
|
var startDate = (0, _moment.default)(authorizedSpendsData === null || authorizedSpendsData === void 0 ? void 0 : authorizedSpendsData.cap_starts_at).utc().startOf('day');
|
|
113
|
-
var hasCap = feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.
|
|
94
|
+
var hasCap = feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.hasCap;
|
|
114
95
|
var formattedCap = hasCap ? /*#__PURE__*/_react.default.createElement(Spend, {
|
|
115
|
-
amount:
|
|
96
|
+
amount: authorizedSpendsData === null || authorizedSpendsData === void 0 ? void 0 : authorizedSpendsData.total_cap,
|
|
116
97
|
unit: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit,
|
|
117
98
|
isCostBased: isCostBased
|
|
118
99
|
}) : 'No Cap';
|
|
119
100
|
var formattedCapPeriod = (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.cap_reset_cadence) === 'lifetime' ? 'Lifetime' : "".concat((0, _formatShortDate.default)(startDate));
|
|
120
|
-
var amountRequested = formValues === null || formValues === void 0 || (_formValues$paymentAu3 = formValues.paymentAuthForm) === null || _formValues$paymentAu3 === void 0 ? void 0 : _formValues$paymentAu3.amount_requested;
|
|
121
|
-
var isAmountExceeded = (0, _lodash.isNumber)(amountRequested) && hasCap && amountRequested > availableCap;
|
|
122
|
-
(0, _react.useEffect)(function () {
|
|
123
|
-
if (isFindInsuranceSuccess) {
|
|
124
|
-
var errors = [];
|
|
125
|
-
if (showClientUtilizationError) errors.push('service');
|
|
126
|
-
if (showPassthroughDatesError || invalidInsuranceAuthorizationDates) errors.push('paymentAuthForm.service_end');
|
|
127
|
-
if (isAmountExceeded) errors.push('paymentAuthForm.amount_requested');
|
|
128
|
-
assignReferralErrors(errors);
|
|
129
|
-
}
|
|
130
|
-
}, [isFindInsuranceSuccess, assignReferralErrors, showClientUtilizationError, showPassthroughDatesError, isAmountExceeded, invalidInsuranceAuthorizationDates, requestedStartDate, requestedEndDate, amountRequested]);
|
|
131
101
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
132
102
|
className: "mb-12 grid grid-cols-2 gap-2",
|
|
133
103
|
"data-testid": "caps-info-section"
|
|
@@ -167,23 +137,14 @@ function CapsInfo(_ref3) {
|
|
|
167
137
|
unit: feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit
|
|
168
138
|
}),
|
|
169
139
|
isLoaded: isLoaded
|
|
170
|
-
}), /*#__PURE__*/_react.default.createElement("div",
|
|
171
|
-
className: "mt-6"
|
|
172
|
-
}, "View Details"), isAmountExceeded && /*#__PURE__*/_react.default.createElement("div", {
|
|
173
|
-
className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
|
|
174
|
-
}, /*#__PURE__*/_react.default.createElement(_ErrorMessage.default, null, "The amount requested is more than the amount available for authorization. Please adjust the amount requested, or search for another program to meet the client's needs.")), showClientUtilizationError && /*#__PURE__*/_react.default.createElement("div", {
|
|
175
|
-
className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
|
|
176
|
-
}, /*#__PURE__*/_react.default.createElement(_ErrorMessage.default, null, "The client is already receiving this service through either a passthrough or non-passthrough service within this program group.")), showPassthroughDatesError && /*#__PURE__*/_react.default.createElement("div", {
|
|
177
|
-
className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
|
|
178
|
-
}, /*#__PURE__*/_react.default.createElement(_ErrorMessage.default, null, "Clients can only receive services from this program for 30 days or until their social coverage ends, whichever comes first.")), (isFindInsuranceSuccess || !isFindInsuranceLoading) && isLoaded && invalidInsuranceAuthorizationDates && /*#__PURE__*/_react.default.createElement("div", {
|
|
179
|
-
className: "col-span-2 px-0 flex space-x-2 mt-6 mb-0"
|
|
180
|
-
}, /*#__PURE__*/_react.default.createElement(_ErrorMessage.default, null, "The service delivery dates requested fall outside the client's enrollment dates for all enrolled plans. Please edit the service delivery dates.")));
|
|
140
|
+
}), /*#__PURE__*/_react.default.createElement("div", null, "View Details"));
|
|
181
141
|
}
|
|
182
142
|
CapsInfo.propTypes = {
|
|
183
143
|
formValues: _propTypes.default.object.isRequired,
|
|
184
144
|
feeScheduleProgram: _propTypes.default.object.isRequired,
|
|
185
145
|
isCostBased: _propTypes.default.bool.isRequired,
|
|
186
|
-
|
|
146
|
+
hasDatesSelected: _propTypes.default.bool.isRequired,
|
|
147
|
+
assignErrors: _propTypes.default.func.isRequired
|
|
187
148
|
};
|
|
188
149
|
var _default = exports.default = CapsInfo;
|
|
189
150
|
//# sourceMappingURL=CapsInfo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CapsInfo.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_moment","_lodash","_pluralize","_messageConstants","_formatShortDate","_LineItem","_usePerson","_ApiHooks","_DollarAmount","_ErrorMessage","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","InformationText","_ref","name","value","isLoaded","createElement","field","fieldClassName","valueClassName","propTypes","PropTypes","oneOfType","string","element","isRequired","node","number","bool","Spend","_ref2","amount","unit","isCostBased","convertCents","pluralize","CapsInfo","_ref3","_formValues$paymentAu","_formValues$paymentAu2","_formValues$paymentAu3","formValues","feeScheduleProgram","assignReferralErrors","serviceStart","paymentAuthForm","service_start","requestedStartDate","moment","unix","toISOString","serviceEnd","service_end","requestedEndDate","person","usePerson","_useFind","useFind","id","fee_schedule_program","requested_starts_at","requested_ends_at","queryConfig","enabled","placeholderData","undefined","authorizedSpendsData","data","isFetching","isLoading","_useFind2","state","fee_schedule","enrolled_before","expired_after","queryClient","insurancesData","isFindInsuranceSuccess","isSuccess","isFindInsuranceLoading","insurances","invalidInsuranceAuthorizationDates","length","authorizationSpends","totalApprovedSpend","totalRequestedSpend","authorizationSpendsErrors","availableCap","totalCap","showClientUtilizationError","some","title","UTILIZATION_ERROR","showPassthroughDatesError","DATES_ERROR","startDate","cap_starts_at","utc","startOf","hasCap","has_cap","formattedCap","formattedCapPeriod","cap_reset_cadence","concat","formatShortDate","amountRequested","amount_requested","isAmountExceeded","isNumber","useEffect","errors","push","className","Fragment","isValid","object","func","_default","exports"],"sources":["../../../src/components/service_authorization/CapsInfo.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { get, isNumber } from 'lodash';\nimport pluralize from 'pluralize';\nimport { UTILIZATION_ERROR, DATES_ERROR } from './messageConstants';\nimport formatShortDate from './formatShortDate';\nimport LineItem from '../../pages/builder/LineItem';\nimport usePerson from '../../hooks/usePerson';\nimport { useFind } from '../../api/ApiHooks';\nimport DollarAmount from '../DollarAmount';\nimport ErrorMessage from '../../common/form/ErrorMessage';\n\nfunction InformationText({\n name, value, isLoaded\n}) {\n return (\n <LineItem\n field={name}\n fieldClassName=\"col-span-1 p-0 text-dark-grey\"\n valueClassName=\"flex text-dark-blue\"\n isLoaded={isLoaded}\n >\n {value}\n </LineItem>\n );\n}\n\nInformationText.propTypes = {\n name: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.number]).isRequired,\n isLoaded: PropTypes.bool.isRequired,\n};\n\nfunction Spend ({amount, unit, isCostBased}) {\n return isCostBased ? (\n <DollarAmount convertCents value={amount} />\n ) : (\n <span>\n {amount} {pluralize(unit || '', amount)}\n </span>\n )\n};\n\nSpend.propTypes = {\n amount: PropTypes.number.isRequired,\n unit: PropTypes.string,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nfunction CapsInfo({\n formValues,\n feeScheduleProgram,\n isCostBased,\n assignReferralErrors,\n}) {\n\n const serviceStart = formValues?.paymentAuthForm?.service_start;\n const requestedStartDate = serviceStart && moment.unix(serviceStart).toISOString();\n const serviceEnd = formValues?.paymentAuthForm?.service_end;\n const requestedEndDate = serviceEnd && moment.unix(serviceEnd).toISOString();\n\n const person = usePerson();\n const { data: authorizedSpendsData, isFetching, isLoading } = useFind(\n 'authorized_spend',\n {\n person: person?.id,\n fee_schedule_program: feeScheduleProgram?.id,\n requested_starts_at: requestedStartDate,\n requested_ends_at: requestedEndDate,\n },\n { \n queryConfig: { \n enabled: !!(person?.id && feeScheduleProgram?.id),\n placeholderData: undefined,\n } \n }\n );\n\n const { \n data: insurancesData,\n isSuccess: isFindInsuranceSuccess,\n isLoading: isFindInsuranceLoading,\n } = useFind(\n 'insurance',\n {\n person: person?.id,\n state: 'active',\n 'plan.fee_schedules': feeScheduleProgram?.fee_schedule.id,\n enrolled_before: requestedStartDate,\n expired_after: requestedEndDate,\n },\n {\n queryClient: {\n enabled: !!feeScheduleProgram?.id,\n placeholderData: undefined,\n }\n }\n );\n\n const insurances = get(insurancesData, 'data.data', []);\n const invalidInsuranceAuthorizationDates = !insurances?.length;\n\n const isLoaded = !isFetching && !isLoading;\n\n const authorizationSpends = get(authorizedSpendsData, 'data.data', []); //todo use this on the modal\n const totalApprovedSpend = get(authorizedSpendsData, 'data.meta.total_approved_spend', 0);\n const totalRequestedSpend = get(authorizedSpendsData, 'data.meta.total_requested_spend', 0);\n const authorizationSpendsErrors = get(authorizedSpendsData, 'data.meta.errors', []);\n const availableCap = get(authorizedSpendsData, 'data.meta.available_cap', 0);\n const totalCap = get(authorizedSpendsData, 'data.meta.total_cap', 0);\n\n const showClientUtilizationError = authorizationSpendsErrors.some((e) => e.title === UTILIZATION_ERROR);\n const showPassthroughDatesError = authorizationSpendsErrors.some((e) => e.title === DATES_ERROR);\n \n const startDate = moment(authorizedSpendsData?.cap_starts_at).utc().startOf('day');\n const hasCap = feeScheduleProgram?.has_cap;\n const formattedCap = hasCap ? <Spend amount={totalCap} unit={feeScheduleProgram?.unit} isCostBased={isCostBased}/> : 'No Cap';\n const formattedCapPeriod = feeScheduleProgram?.cap_reset_cadence === 'lifetime' ?\n 'Lifetime' : `${formatShortDate(startDate)}`;\n\n const amountRequested = formValues?.paymentAuthForm?.amount_requested;\n const isAmountExceeded = isNumber(amountRequested) && hasCap && (amountRequested > availableCap);\n\n useEffect(() => {\n if(isFindInsuranceSuccess) {\n const errors = [];\n\n if (showClientUtilizationError) errors.push('service');\n if (showPassthroughDatesError || invalidInsuranceAuthorizationDates) errors.push('paymentAuthForm.service_end');\n if (isAmountExceeded) errors.push('paymentAuthForm.amount_requested');\n \n assignReferralErrors(errors);\n }\n }, [\n isFindInsuranceSuccess,\n assignReferralErrors,\n showClientUtilizationError,\n showPassthroughDatesError,\n isAmountExceeded,\n invalidInsuranceAuthorizationDates,\n requestedStartDate,\n requestedEndDate,\n amountRequested,\n ]);\n\n return (\n <div className=\"mb-12 grid grid-cols-2 gap-2\" data-testid=\"caps-info-section\">\n { hasCap && (\n <InformationText\n name={<span className=\"font-bold\">AMOUNT AVAILABLE FOR AUTHORIZATION</span>}\n value={(\n <span className=\"font-bold\">\n <Spend isCostBased={isCostBased} amount={availableCap} unit={feeScheduleProgram?.unit}/>\n </span>\n )}\n isLoaded={isLoaded}\n />\n )}\n <InformationText\n name=\"Amount Currently Authorized\"\n value={<Spend isCostBased={isCostBased} amount={totalApprovedSpend} unit={feeScheduleProgram?.unit}/>}\n isLoaded={isLoaded}\n />\n { hasCap && (\n <>\n <InformationText name=\"Cap\" value={formattedCap} isLoaded={isLoaded} />\n {startDate?.isValid() &&\n (<InformationText name=\"Cap Period\" value={formattedCapPeriod} isLoaded={isLoaded} />)}\n </>\n )}\n <InformationText\n name=\"Amount Pending Authorization\"\n value={\n <Spend isCostBased={isCostBased} amount={totalRequestedSpend} unit={feeScheduleProgram?.unit}/>\n }\n isLoaded={isLoaded}\n />\n <div className=\"mt-6\">\n View Details\n </div>\n {isAmountExceeded && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The amount requested is more than the amount available for authorization.\n Please adjust the amount requested, or search for another program\n to meet the client's needs.\n </ErrorMessage>\n </div>\n )}\n {showClientUtilizationError && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The client is already receiving this service through either a passthrough or non-passthrough service within this program group.\n </ErrorMessage>\n </div>\n )}\n {showPassthroughDatesError && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n Clients can only receive services from this program for 30 days or until their social coverage ends,\n whichever comes first.\n </ErrorMessage>\n </div>\n )}\n {((isFindInsuranceSuccess || !isFindInsuranceLoading) && isLoaded) && invalidInsuranceAuthorizationDates && (\n <div className=\"col-span-2 px-0 flex space-x-2 mt-6 mb-0\">\n <ErrorMessage>\n The service delivery dates requested fall outside the client's\n enrollment dates for all enrolled plans. Please edit the service delivery dates.\n </ErrorMessage>\n </div>\n )}\n </div>\n );\n}\n\nCapsInfo.propTypes = {\n formValues: PropTypes.object.isRequired,\n feeScheduleProgram: PropTypes.object.isRequired,\n isCostBased: PropTypes.bool.isRequired,\n assignReferralErrors: PropTypes.func.isRequired,\n};\n\nexport default CapsInfo;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CapsInfo.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_moment","_lodash","_pluralize","_messageConstants","_formatShortDate","_LineItem","_usePerson","_ApiHooks","_DollarAmount","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","InformationText","_ref","name","value","isLoaded","createElement","field","fieldClassName","valueClassName","propTypes","PropTypes","string","isRequired","oneOfType","node","number","bool","Spend","_ref2","amount","unit","isCostBased","convertCents","pluralize","CapsInfo","_ref3","_formValues$paymentAu","_formValues$paymentAu2","formValues","feeScheduleProgram","hasDatesSelected","assignErrors","person","usePerson","_useFind","useFind","id","fee_schedule_program","requested_starts_at","moment","unix","paymentAuthForm","service_start","toISOString","requested_ends_at","service_end","queryConfig","enabled","placeholderData","undefined","authorizedSpendsData","data","isFetching","isLoading","authorizationSpends","totalApprovedSpend","totalRequestedSpend","authorizationSpendsErrors","availableCap","showClientUtilizationError","some","title","UTILIZATION_ERROR","showPassthroughDatesError","DATES_ERROR","useEffect","startDate","cap_starts_at","utc","startOf","hasCap","formattedCap","total_cap","formattedCapPeriod","cap_reset_cadence","concat","formatShortDate","className","Fragment","isValid","object","func","_default","exports"],"sources":["../../../src/components/service_authorization/CapsInfo.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { get } from 'lodash';\nimport pluralize from 'pluralize';\nimport { UTILIZATION_ERROR, DATES_ERROR } from './messageConstants';\nimport formatShortDate from './formatShortDate';\nimport LineItem from '../../pages/builder/LineItem';\nimport usePerson from '../../hooks/usePerson';\nimport { useFind } from '../../api/ApiHooks';\nimport DollarAmount from '../DollarAmount';\nfunction InformationText({\n name, value, isLoaded\n}) {\n return (\n <LineItem\n field={name}\n fieldClassName=\"col-span-1 p-0 text-dark-grey\"\n valueClassName=\"flex text-dark-blue\"\n isLoaded={isLoaded}\n >\n {value}\n </LineItem>\n );\n}\n\nInformationText.propTypes = {\n name: PropTypes.string.isRequired,\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.node, PropTypes.number]).isRequired,\n isLoaded: PropTypes.bool.isRequired,\n};\n\nfunction Spend ({amount, unit, isCostBased}) {\n return isCostBased ? (\n <DollarAmount convertCents value={amount} />\n ) : (\n <span>\n {amount} {pluralize(unit || '', amount)}\n </span>\n )\n};\n\nSpend.propTypes = {\n amount: PropTypes.number.isRequired,\n unit: PropTypes.string,\n isCostBased: PropTypes.bool.isRequired,\n};\n\nfunction CapsInfo({\n formValues,\n feeScheduleProgram,\n isCostBased,\n hasDatesSelected,\n assignErrors,\n}) {\n\n const person = usePerson();\n const { data: authorizedSpendsData, isFetching, isLoading } = useFind(\n 'authorized_spend',\n {\n person: person?.id,\n fee_schedule_program: feeScheduleProgram?.id,\n requested_starts_at: moment.unix(formValues?.paymentAuthForm?.service_start).toISOString(),\n requested_ends_at: moment.unix(formValues?.paymentAuthForm?.service_end).toISOString(),\n },\n { \n queryConfig: { \n enabled: !!(hasDatesSelected && person?.id && feeScheduleProgram?.id),\n placeholderData: undefined,\n } \n }\n );\n\n const isLoaded = !isFetching && !isLoading;\n\n const authorizationSpends = get(authorizedSpendsData, 'data.data', []); //todo use this on the modal\n const totalApprovedSpend = get(authorizedSpendsData, 'data.meta.total_approved_spend', 0);\n const totalRequestedSpend = get(authorizedSpendsData, 'data.meta.total_requested_spend', 0);\n const authorizationSpendsErrors = get(authorizedSpendsData, 'data.meta.errors', []);\n const availableCap = get(authorizedSpendsData, 'data.meta.available_cap', 0);\n\n const showClientUtilizationError = authorizationSpendsErrors.some((e) => e.title === UTILIZATION_ERROR);\n const showPassthroughDatesError = hasDatesSelected &&\n authorizationSpendsErrors.some((e) => e.title === DATES_ERROR);\n\n useEffect(() => {\n assignErrors([showClientUtilizationError, showPassthroughDatesError]);\n }, [showClientUtilizationError, showPassthroughDatesError, assignErrors]);\n\n const startDate = moment(authorizedSpendsData?.cap_starts_at).utc().startOf('day');\n const hasCap = feeScheduleProgram?.hasCap;\n const formattedCap = hasCap ? <Spend amount={authorizedSpendsData?.total_cap} unit={feeScheduleProgram?.unit} isCostBased={isCostBased}/> : 'No Cap';\n const formattedCapPeriod = feeScheduleProgram?.cap_reset_cadence === 'lifetime' ?\n 'Lifetime' : `${formatShortDate(startDate)}`;\n\n\n return (\n <div className=\"mb-12 grid grid-cols-2 gap-2\" data-testid=\"caps-info-section\">\n { hasCap && (\n <InformationText\n name={<span className=\"font-bold\">AMOUNT AVAILABLE FOR AUTHORIZATION</span>}\n value={(\n <span className=\"font-bold\">\n <Spend isCostBased={isCostBased} amount={availableCap} unit={feeScheduleProgram?.unit}/>\n </span>\n )}\n isLoaded={isLoaded}\n />\n )}\n <InformationText\n name=\"Amount Currently Authorized\"\n value={<Spend isCostBased={isCostBased} amount={totalApprovedSpend} unit={feeScheduleProgram?.unit}/>}\n isLoaded={isLoaded}\n />\n { hasCap && (\n <>\n <InformationText name=\"Cap\" value={formattedCap} isLoaded={isLoaded} />\n {startDate?.isValid() &&\n (<InformationText name=\"Cap Period\" value={formattedCapPeriod} isLoaded={isLoaded} />)}\n </>\n )}\n <InformationText\n name=\"Amount Pending Authorization\"\n value={\n <Spend isCostBased={isCostBased} amount={totalRequestedSpend} unit={feeScheduleProgram?.unit}/>\n }\n isLoaded={isLoaded}\n />\n <div>\n View Details\n </div>\n </div>\n );\n}\n\nCapsInfo.propTypes = {\n formValues: PropTypes.object.isRequired,\n feeScheduleProgram: PropTypes.object.isRequired,\n isCostBased: PropTypes.bool.isRequired,\n hasDatesSelected: PropTypes.bool.isRequired,\n assignErrors: PropTypes.func.isRequired,\n};\n\nexport default CapsInfo;\n"],"mappings":"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"}
|
|
@@ -19,12 +19,9 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/he
|
|
|
19
19
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/asyncToGenerator"));
|
|
20
20
|
var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
|
|
21
21
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
|
|
22
|
-
var _parseInt2 = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/parse-int"));
|
|
23
22
|
var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
|
|
24
23
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
25
24
|
var _lodash = require("lodash");
|
|
26
|
-
var _moment = _interopRequireDefault(require("moment"));
|
|
27
|
-
var _feeSchedulePrograms = _interopRequireDefault(require("@unite-us/client-utils/dist/utils/feeSchedulePrograms"));
|
|
28
25
|
var _utils = require("../pages/builder/utils");
|
|
29
26
|
var _ApiHooks = require("../api/ApiHooks");
|
|
30
27
|
var _config = require("../api/config");
|
|
@@ -45,12 +42,10 @@ function useCreateReferrals() {
|
|
|
45
42
|
createReferral = _useCreateRecord.createRecord;
|
|
46
43
|
var _useCreateRecord2 = (0, _ApiHooks.useCreateRecord)('case'),
|
|
47
44
|
createCase = _useCreateRecord2.createRecord;
|
|
48
|
-
var _useCreateRecord3 = (0, _ApiHooks.useCreateRecord)('
|
|
49
|
-
|
|
50
|
-
var _useCreateRecord4 = (0, _ApiHooks.useCreateRecord)('
|
|
51
|
-
|
|
52
|
-
var _useCreateRecord5 = (0, _ApiHooks.useCreateRecord)('note'),
|
|
53
|
-
createNote = _useCreateRecord5.createRecord;
|
|
45
|
+
var _useCreateRecord3 = (0, _ApiHooks.useCreateRecord)('form_submission'),
|
|
46
|
+
createFormSubmission = _useCreateRecord3.createRecord;
|
|
47
|
+
var _useCreateRecord4 = (0, _ApiHooks.useCreateRecord)('note'),
|
|
48
|
+
createNote = _useCreateRecord4.createRecord;
|
|
54
49
|
var _useUpdateRecord = (0, _ApiHooks.useUpdateRecord)('referral'),
|
|
55
50
|
updateReferral = _useUpdateRecord.updateRecord;
|
|
56
51
|
var _useUpdateRecord2 = (0, _ApiHooks.useUpdateRecord)('case'),
|
|
@@ -106,14 +101,14 @@ function useCreateReferrals() {
|
|
|
106
101
|
isGrouped = (0, _utils.referralIsGrouped)(referral);
|
|
107
102
|
createdCaseOrExistingAR = null;
|
|
108
103
|
_loop2 = /*#__PURE__*/_regenerator.default.mark(function _loop2() {
|
|
109
|
-
var programData, _referral$primaryWork, caseValues,
|
|
104
|
+
var programData, _referral$primaryWork, caseValues, caseResponse, arCase, attachableDocuments, filteredDocuments, attachedDocuments, attachDocumentsToResource, uploadPromises, uploadedDocuments, uploadDocumentsToResource, _uploadPromises, state, createNoteForUnlsitedProgramValues, referralValues, responseReferral;
|
|
110
105
|
return _regenerator.default.wrap(function _loop2$(_context) {
|
|
111
106
|
while (1) switch (_context.prev = _context.next) {
|
|
112
107
|
case 0:
|
|
113
108
|
programData = referredToPrograms[j]; // for grouped, created only 1 case and attach it to all referrals;
|
|
114
109
|
// for individual create a new case/referral for each
|
|
115
110
|
if (!(groupedReferrals && !createdCaseOrExistingAR || !groupedReferrals)) {
|
|
116
|
-
_context.next =
|
|
111
|
+
_context.next = 23;
|
|
117
112
|
break;
|
|
118
113
|
}
|
|
119
114
|
caseValues = _objectSpread(_objectSpread({
|
|
@@ -155,49 +150,15 @@ function useCreateReferrals() {
|
|
|
155
150
|
caseResponse = _context.sent;
|
|
156
151
|
case 15:
|
|
157
152
|
createdCaseOrExistingAR = (0, _lodash.get)(caseResponse, 'data.data', {});
|
|
158
|
-
serviceStart = referral === null || referral === void 0 || (_referral$paymentAuth = referral.paymentAuthForm) === null || _referral$paymentAuth === void 0 ? void 0 : _referral$paymentAuth.service_start;
|
|
159
|
-
requestedStartDate = serviceStart && _moment.default.unix(serviceStart).toISOString();
|
|
160
|
-
serviceEnd = referral === null || referral === void 0 || (_referral$paymentAuth2 = referral.paymentAuthForm) === null || _referral$paymentAuth2 === void 0 ? void 0 : _referral$paymentAuth2.service_end;
|
|
161
|
-
requestedEndDate = serviceEnd && _moment.default.unix(serviceEnd).toISOString();
|
|
162
|
-
amountRequested = referral.paymentAuthForm.amount_requested;
|
|
163
|
-
queryInsuranceParams = {
|
|
164
|
-
person: person.id,
|
|
165
|
-
state: 'active',
|
|
166
|
-
enrolled_before: requestedStartDate,
|
|
167
|
-
expired_after: requestedEndDate,
|
|
168
|
-
'plan.fee_schedules': referral.programs[0].fee_schedule_program.fee_schedule.id
|
|
169
|
-
};
|
|
170
|
-
_context.next = 24;
|
|
171
|
-
return _config.coreApi.query('insurance', queryInsuranceParams);
|
|
172
|
-
case 24:
|
|
173
|
-
responseInsurances = _context.sent;
|
|
174
|
-
insurances = responseInsurances === null || responseInsurances === void 0 || (_responseInsurances$d = responseInsurances.data) === null || _responseInsurances$d === void 0 ? void 0 : _responseInsurances$d.data;
|
|
175
|
-
_context.next = 28;
|
|
176
|
-
return createServiceAuthorization(_objectSpread(_objectSpread({
|
|
177
|
-
state: draft ? 'draft' : 'requested',
|
|
178
|
-
requested_starts_at: requestedStartDate,
|
|
179
|
-
requested_ends_at: requestedEndDate
|
|
180
|
-
}, _feeSchedulePrograms.default.isCostPaymentType(referral.programs[0].fee_schedule_program.payment_type) ? {
|
|
181
|
-
requested_cents: amountRequested
|
|
182
|
-
} : {
|
|
183
|
-
requested_unit_amount: (0, _parseInt2.default)(amountRequested)
|
|
184
|
-
}), {}, {
|
|
185
|
-
case: createdCaseOrExistingAR.id,
|
|
186
|
-
fee_schedule_program: referral.programs[0].fee_schedule_program.id,
|
|
187
|
-
requester: currentEmployee.id,
|
|
188
|
-
insurance: insurances[0].id,
|
|
189
|
-
person: person.id
|
|
190
|
-
}));
|
|
191
|
-
case 28:
|
|
192
153
|
result.cases.push(createdCaseOrExistingAR);
|
|
193
|
-
_context.next =
|
|
154
|
+
_context.next = 23;
|
|
194
155
|
break;
|
|
195
|
-
case
|
|
196
|
-
_context.prev =
|
|
156
|
+
case 19:
|
|
157
|
+
_context.prev = 19;
|
|
197
158
|
_context.t0 = _context["catch"](3);
|
|
198
159
|
_config.CALLBACKS.notify.error("Error creating the Case");
|
|
199
160
|
throw _context.t0;
|
|
200
|
-
case
|
|
161
|
+
case 23:
|
|
201
162
|
attachableDocuments = (0, _lodash.get)(referral, 'attachableDocuments', []);
|
|
202
163
|
filteredDocuments = (0, _filter.default)(attachableDocuments).call(attachableDocuments, function (doc) {
|
|
203
164
|
return doc.attached === true;
|
|
@@ -237,7 +198,7 @@ function useCreateReferrals() {
|
|
|
237
198
|
|
|
238
199
|
// If the program is unlisted, create a note on the case. Otherwise, create a referral
|
|
239
200
|
if (!(hint542SupersetUnlistedPrograms && (0, _utils.isUnlistedProgram)(programData))) {
|
|
240
|
-
_context.next =
|
|
201
|
+
_context.next = 43;
|
|
241
202
|
break;
|
|
242
203
|
}
|
|
243
204
|
createNoteForUnlsitedProgramValues = {
|
|
@@ -248,19 +209,19 @@ function useCreateReferrals() {
|
|
|
248
209
|
category: 'external_provider',
|
|
249
210
|
text: "Referred off platform to ".concat(programData.name)
|
|
250
211
|
};
|
|
251
|
-
_context.prev =
|
|
212
|
+
_context.prev = 33;
|
|
252
213
|
createNote(createNoteForUnlsitedProgramValues);
|
|
253
|
-
_context.next =
|
|
214
|
+
_context.next = 41;
|
|
254
215
|
break;
|
|
255
|
-
case
|
|
256
|
-
_context.prev =
|
|
257
|
-
_context.t1 = _context["catch"](
|
|
216
|
+
case 37:
|
|
217
|
+
_context.prev = 37;
|
|
218
|
+
_context.t1 = _context["catch"](33);
|
|
258
219
|
_config.CALLBACKS.notify.error("Error creating the note on the case for the unlisted program");
|
|
259
220
|
throw _context.t1;
|
|
260
|
-
case
|
|
261
|
-
_context.next =
|
|
221
|
+
case 41:
|
|
222
|
+
_context.next = 55;
|
|
262
223
|
break;
|
|
263
|
-
case
|
|
224
|
+
case 43:
|
|
264
225
|
referralValues = {
|
|
265
226
|
state: state,
|
|
266
227
|
case: createdCaseOrExistingAR.id,
|
|
@@ -271,24 +232,24 @@ function useCreateReferrals() {
|
|
|
271
232
|
sending_provider: referral.sendingProvider.id,
|
|
272
233
|
sending_network: referral.network.id
|
|
273
234
|
};
|
|
274
|
-
_context.prev =
|
|
275
|
-
_context.next =
|
|
235
|
+
_context.prev = 44;
|
|
236
|
+
_context.next = 47;
|
|
276
237
|
return createReferral(referralValues);
|
|
277
|
-
case
|
|
238
|
+
case 47:
|
|
278
239
|
responseReferral = _context.sent;
|
|
279
240
|
result.referrals.push(responseReferral.data.data);
|
|
280
|
-
_context.next =
|
|
241
|
+
_context.next = 55;
|
|
281
242
|
break;
|
|
282
|
-
case
|
|
283
|
-
_context.prev =
|
|
284
|
-
_context.t2 = _context["catch"](
|
|
243
|
+
case 51:
|
|
244
|
+
_context.prev = 51;
|
|
245
|
+
_context.t2 = _context["catch"](44);
|
|
285
246
|
_config.CALLBACKS.notify.error("Error creating the Referral");
|
|
286
247
|
throw _context.t2;
|
|
287
|
-
case
|
|
248
|
+
case 55:
|
|
288
249
|
case "end":
|
|
289
250
|
return _context.stop();
|
|
290
251
|
}
|
|
291
|
-
}, _loop2, null, [[3,
|
|
252
|
+
}, _loop2, null, [[3, 19], [33, 37], [44, 51]]);
|
|
292
253
|
});
|
|
293
254
|
j = 0;
|
|
294
255
|
case 6:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCreateReferrals.js","names":["_lodash","require","_moment","_interopRequireDefault","_feeSchedulePrograms","_utils","_ApiHooks","_config","_AppCreateReferralProvider","_useFeatureFlag","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","_filterInstanceProperty2","call","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","useCreateReferrals","_useAppCreateReferral","useAppCreateReferralContext","_useAppCreateReferral2","state","currentEmployee","formResponses","person","referrals","formSubmissionId","assistanceRequestId","_useCreateRecord","useCreateRecord","createReferral","createRecord","_useCreateRecord2","createCase","_useCreateRecord3","createServiceAuthorization","_useCreateRecord4","createFormSubmission","_useCreateRecord5","createNote","_useUpdateRecord","useUpdateRecord","updateReferral","updateRecord","_useUpdateRecord2","updateCase","hint542SupersetUnlistedPrograms","useFeatureFlag","submitAssessments","_ref","cases","latestResponses","promises","_mapInstanceProperty2","serviceCase","assessment","_assessment$form","isEmpty","form","service_type_ids","_includes","service","id","context","contextType","provider","responses","submitter","_promise","all","then","catch","err","CALLBACKS","notify","error","createReferrals","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","_ref2","draft","result","groupedReferrals","_loop","i","wrap","_callee$","_context3","prev","next","some","get","referral","referredToPrograms","isGrouped","createdCaseOrExistingAR","_loop2","j","_loop$","_context2","referralIsGrouped","programData","_referral$primaryWork","caseValues","_referral$paymentAuth","_referral$paymentAuth2","_responseInsurances$d","caseResponse","arCase","serviceStart","requestedStartDate","serviceEnd","requestedEndDate","amountRequested","queryInsuranceParams","responseInsurances","insurances","attachableDocuments","filteredDocuments","attachedDocuments","attachDocumentsToResource","uploadPromises","uploadedDocuments","uploadDocumentsToResource","_uploadPromises","createNoteForUnlsitedProgramValues","referralValues","responseReferral","_loop2$","_context","description","referralIsOON","sendingProvider","network","primaryWorker","primary_worker","originating_form_submission","sent","paymentAuthForm","service_start","moment","unix","toISOString","service_end","amount_requested","enrolled_before","expired_after","programs","fee_schedule_program","fee_schedule","coreApi","query","data","requested_starts_at","requested_ends_at","fspUtils","isCostPaymentType","payment_type","requested_cents","requested_unit_amount","_parseInt2","case","requester","insurance","t0","_filter","doc","attached","_map","ad","title","document","setRelationship","relationshipModel","value","a","d","uploadFile","file","_toConsumableArray2","isUnlistedProgram","subjectType","subject","employee","visibility","category","text","concat","name","t1","is_grouped","receiving_program","receiving_provider","receiving_network","sending_provider","sending_network","t2","stop","delegateYield","abrupt","_x","updateDraftReferral","_ref4","_callee2","_callee2$","_context4","_x2","_callee3","_ref6","_ref6$draft","response","_args5","_callee3$","_context5","undefined"],"sources":["../../src/hooks/useCreateReferrals.js"],"sourcesContent":["import { get, map, isEmpty } from 'lodash';\nimport moment from 'moment';\nimport fspUtils from '@unite-us/client-utils/dist/utils/feeSchedulePrograms';\nimport { isUnlistedProgram, referralIsOON, referralIsGrouped } from '../pages/builder/utils';\nimport { useCreateRecord, useUpdateRecord } from '../api/ApiHooks';\nimport { CALLBACKS, coreApi } from '../api/config';\nimport { useAppCreateReferralContext } from '../context/AppCreateReferralProvider';\nimport { useFeatureFlag } from '../utils/useFeatureFlag';\n\nexport default function useCreateReferrals() {\n const {\n state: {\n currentEmployee,\n formResponses,\n person,\n referrals,\n formSubmissionId,\n assistanceRequestId,\n }\n } = useAppCreateReferralContext();\n\n const { createRecord: createReferral } = useCreateRecord('referral');\n const { createRecord: createCase } = useCreateRecord('case');\n const { createRecord: createServiceAuthorization } = useCreateRecord('service_authorization');\n const { createRecord: createFormSubmission } = useCreateRecord('form_submission');\n const { createRecord: createNote } = useCreateRecord('note');\n const { updateRecord: updateReferral } = useUpdateRecord('referral');\n const { updateRecord: updateCase } = useUpdateRecord('case');\n\n const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);\n\n const submitAssessments = ({ cases, latestResponses }) => {\n let promises = [];\n map(cases, (serviceCase) => {\n map((latestResponses || formResponses), (assessment) => {\n if (!isEmpty(assessment) && assessment.form?.service_type_ids?.includes(serviceCase.service.id)) {\n promises.push(createFormSubmission({\n context: serviceCase.id,\n contextType: 'case',\n form: assessment.form.id,\n provider: serviceCase.provider.id,\n responses: assessment.responses,\n submitter: currentEmployee.id,\n }));\n }\n });\n });\n\n return Promise.all(promises).then((responses) => {\n return responses;\n }).catch(err => {\n CALLBACKS.notify.error(\"Error submitting Assessments\");\n throw err;\n });\n };\n\n const createReferrals = async ({ referrals, person, draft }) => {\n const result = {\n referrals: [],\n cases: []\n };\n\n let groupedReferrals = referrals.some(r => get(r, 'programs', []).length > 1);\n\n for (let i = 0; i < referrals.length; i += 1) {\n const referral = referrals[i];\n const referredToPrograms = get(referral, 'programs', [])\n const isGrouped = referralIsGrouped(referral);\n\n let createdCaseOrExistingAR = null;\n\n for (let j = 0; j < referredToPrograms.length; j += 1) {\n const programData = referredToPrograms[j];\n\n // for grouped, created only 1 case and attach it to all referrals;\n // for individual create a new case/referral for each\n if ((groupedReferrals && !createdCaseOrExistingAR) || !groupedReferrals) {\n const caseValues = {\n description: referral.description,\n state: referralIsOON(referral) ? 'off_platform' : 'draft',\n person: person.id,\n provider: referral.sendingProvider.id,\n network: referral.network.id,\n service: referral.service.id,\n ...(referral.primaryWorker?.id ? { primary_worker: referral.primaryWorker.id } : null),\n ...(formSubmissionId ? { originating_form_submission: formSubmissionId } : null),\n }\n try {\n let caseResponse;\n \n if (assistanceRequestId && i === 0) {\n const arCase = get(assistanceRequestId, 'case', null);\n\n if (referral.service.id && (get(arCase, 'service.id') !== referral.service.id)) {\n caseResponse = await updateCase(arCase.id, {\n description: referral.description,\n service: referral.service.id,\n });\n }\n } else {\n caseResponse = await createCase(caseValues)\n }\n createdCaseOrExistingAR = get(caseResponse, 'data.data', {});\n\n const serviceStart = referral?.paymentAuthForm?.service_start;\n const requestedStartDate = serviceStart && moment.unix(serviceStart).toISOString();\n const serviceEnd = referral?.paymentAuthForm?.service_end;\n const requestedEndDate = serviceEnd && moment.unix(serviceEnd).toISOString();\n\n const amountRequested = referral.paymentAuthForm.amount_requested;\n\n const queryInsuranceParams = {\n person: person.id,\n state: 'active',\n enrolled_before: requestedStartDate,\n expired_after: requestedEndDate,\n 'plan.fee_schedules': referral.programs[0].fee_schedule_program.fee_schedule.id,\n }\n\n const responseInsurances = await coreApi.query('insurance', queryInsuranceParams);\n const insurances = responseInsurances?.data?.data;\n\n await createServiceAuthorization({\n state: draft ? 'draft' : 'requested',\n requested_starts_at: requestedStartDate,\n requested_ends_at: requestedEndDate,\n ...(\n fspUtils.isCostPaymentType(referral.programs[0].fee_schedule_program.payment_type) ?\n { requested_cents: amountRequested } : { requested_unit_amount: parseInt(amountRequested) }\n ),\n case: createdCaseOrExistingAR.id,\n fee_schedule_program: referral.programs[0].fee_schedule_program.id,\n requester: currentEmployee.id,\n insurance: insurances[0].id,\n person: person.id,\n });\n\n result.cases.push(createdCaseOrExistingAR);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the Case\");\n throw err;\n }\n }\n\n const attachableDocuments = get(referral, 'attachableDocuments', []);\n const filteredDocuments = attachableDocuments.filter((doc) => doc.attached === true);\n const attachedDocuments = filteredDocuments.map((ad) => ({\n title: ad.document.title,\n id: ad.document.id,\n }));\n\n if(!isEmpty(attachedDocuments)) {\n const attachDocumentsToResource = () => (\n coreApi.setRelationship(\n 'case',\n createdCaseOrExistingAR.id,\n { relationshipModel: 'file_upload', value: attachedDocuments.map((a) => a.id) },\n )\n );\n\n const uploadPromises = !isEmpty(attachedDocuments) && attachDocumentsToResource();\n\n Promise.all([uploadPromises]);\n }\n\n const uploadedDocuments = get(referral, 'attachments', []);\n\n if (!isEmpty(uploadedDocuments)) {\n const uploadDocumentsToResource = () => (\n uploadedDocuments.map((d) => coreApi.uploadFile('case', createdCaseOrExistingAR.id, d.file))\n );\n\n const uploadPromises = uploadDocumentsToResource();\n Promise.all([\n ...(uploadPromises || []),\n ]);\n }\n\n let state = referralIsOON(referral) ? 'off_platform' : 'sent';\n if (draft) {\n state = 'draft';\n }\n\n // If the program is unlisted, create a note on the case. Otherwise, create a referral\n if (hint542SupersetUnlistedPrograms && isUnlistedProgram(programData)) {\n const createNoteForUnlsitedProgramValues = {\n subjectType: 'case',\n subject: createdCaseOrExistingAR.id,\n employee: currentEmployee.id,\n visibility: 'public',\n category: 'external_provider',\n text: `Referred off platform to ${programData.name}`,\n };\n\n try {\n createNote(createNoteForUnlsitedProgramValues);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the note on the case for the unlisted program\");\n throw err;\n }\n } else {\n const referralValues = {\n state,\n case: createdCaseOrExistingAR.id,\n is_grouped: isGrouped,\n receiving_program: programData.id,\n receiving_provider: programData.provider.id,\n receiving_network: referral.network.id,\n sending_provider: referral.sendingProvider.id,\n sending_network: referral.network.id,\n }\n\n try {\n const responseReferral = await createReferral(referralValues);\n result.referrals.push(responseReferral.data.data);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the Referral\");\n throw err;\n }\n }\n }\n }\n\n return result;\n }\n\n const updateDraftReferral = async (referral) => {\n try {\n const responses = await Promise.all([\n updateReferral(referral.id, {\n state: referralIsOON(referral) ? 'off_platform' : 'sent',\n }),\n updateCase(referral.case.id, {\n description: referral.description,\n }),\n ]);\n\n return {\n referrals: [responses[0].data.data],\n cases: [responses[1].data.data],\n }\n } catch (err) {\n CALLBACKS.notify.error(\"Error updating the Draft Referral\");\n throw err;\n }\n }\n\n return async ({ draft = false, latestResponses } = {}) => {\n\n let response = null;\n // Update the Draft Referral to the sent state\n if (referrals.length === 1 && referrals[0].id && referrals[0].state === \"draft\") {\n response = await updateDraftReferral(referrals[0]);\n } else {\n // Create or Save the Referral as a Draft\n response = await createReferrals({ referrals, person, draft })\n }\n\n if (formResponses || latestResponses) {\n await submitAssessments({ cases: response.cases, latestResponses });\n }\n\n return {\n cases: response.cases,\n referrals: response.referrals,\n };\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useCreateReferrals.js","names":["_lodash","require","_utils","_ApiHooks","_config","_AppCreateReferralProvider","_useFeatureFlag","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","_filterInstanceProperty2","call","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","useCreateReferrals","_useAppCreateReferral","useAppCreateReferralContext","_useAppCreateReferral2","state","currentEmployee","formResponses","person","referrals","formSubmissionId","assistanceRequestId","_useCreateRecord","useCreateRecord","createReferral","createRecord","_useCreateRecord2","createCase","_useCreateRecord3","createFormSubmission","_useCreateRecord4","createNote","_useUpdateRecord","useUpdateRecord","updateReferral","updateRecord","_useUpdateRecord2","updateCase","hint542SupersetUnlistedPrograms","useFeatureFlag","submitAssessments","_ref","cases","latestResponses","promises","_mapInstanceProperty2","serviceCase","assessment","_assessment$form","isEmpty","form","service_type_ids","_includes","service","id","context","contextType","provider","responses","submitter","_promise","all","then","catch","err","CALLBACKS","notify","error","createReferrals","_ref3","_asyncToGenerator2","_regenerator","mark","_callee","_ref2","draft","result","groupedReferrals","_loop","i","wrap","_callee$","_context3","prev","next","some","get","referral","referredToPrograms","isGrouped","createdCaseOrExistingAR","_loop2","j","_loop$","_context2","referralIsGrouped","programData","_referral$primaryWork","caseValues","caseResponse","arCase","attachableDocuments","filteredDocuments","attachedDocuments","attachDocumentsToResource","uploadPromises","uploadedDocuments","uploadDocumentsToResource","_uploadPromises","createNoteForUnlsitedProgramValues","referralValues","responseReferral","_loop2$","_context","description","referralIsOON","sendingProvider","network","primaryWorker","primary_worker","originating_form_submission","sent","t0","_filter","doc","attached","_map","ad","title","document","coreApi","setRelationship","relationshipModel","value","a","d","uploadFile","file","_toConsumableArray2","isUnlistedProgram","subjectType","subject","employee","visibility","category","text","concat","name","t1","case","is_grouped","receiving_program","receiving_provider","receiving_network","sending_provider","sending_network","data","t2","stop","delegateYield","abrupt","_x","updateDraftReferral","_ref4","_callee2","_callee2$","_context4","_x2","_callee3","_ref6","_ref6$draft","response","_args5","_callee3$","_context5","undefined"],"sources":["../../src/hooks/useCreateReferrals.js"],"sourcesContent":["import { get, map, isEmpty } from 'lodash';\nimport { isUnlistedProgram, referralIsOON, referralIsGrouped } from '../pages/builder/utils';\nimport { useCreateRecord, useUpdateRecord } from '../api/ApiHooks';\nimport { CALLBACKS, coreApi } from '../api/config';\nimport { useAppCreateReferralContext } from '../context/AppCreateReferralProvider';\nimport { useFeatureFlag } from '../utils/useFeatureFlag';\n\nexport default function useCreateReferrals() {\n const {\n state: {\n currentEmployee,\n formResponses,\n person,\n referrals,\n formSubmissionId,\n assistanceRequestId,\n }\n } = useAppCreateReferralContext();\n\n const { createRecord: createReferral } = useCreateRecord('referral');\n const { createRecord: createCase } = useCreateRecord('case');\n const { createRecord: createFormSubmission } = useCreateRecord('form_submission');\n const { createRecord: createNote } = useCreateRecord('note');\n const { updateRecord: updateReferral } = useUpdateRecord('referral');\n const { updateRecord: updateCase } = useUpdateRecord('case');\n\n const hint542SupersetUnlistedPrograms = useFeatureFlag('hint542SupersetUnlistedPrograms', false);\n\n const submitAssessments = ({ cases, latestResponses }) => {\n let promises = [];\n map(cases, (serviceCase) => {\n map((latestResponses || formResponses), (assessment) => {\n if (!isEmpty(assessment) && assessment.form?.service_type_ids?.includes(serviceCase.service.id)) {\n promises.push(createFormSubmission({\n context: serviceCase.id,\n contextType: 'case',\n form: assessment.form.id,\n provider: serviceCase.provider.id,\n responses: assessment.responses,\n submitter: currentEmployee.id,\n }));\n }\n });\n });\n\n return Promise.all(promises).then((responses) => {\n return responses;\n }).catch(err => {\n CALLBACKS.notify.error(\"Error submitting Assessments\");\n throw err;\n });\n };\n\n const createReferrals = async ({ referrals, person, draft }) => {\n const result = {\n referrals: [],\n cases: []\n };\n\n let groupedReferrals = referrals.some(r => get(r, 'programs', []).length > 1);\n\n for (let i = 0; i < referrals.length; i += 1) {\n const referral = referrals[i];\n const referredToPrograms = get(referral, 'programs', [])\n const isGrouped = referralIsGrouped(referral);\n\n let createdCaseOrExistingAR = null;\n\n for (let j = 0; j < referredToPrograms.length; j += 1) {\n const programData = referredToPrograms[j];\n\n // for grouped, created only 1 case and attach it to all referrals;\n // for individual create a new case/referral for each\n if ((groupedReferrals && !createdCaseOrExistingAR) || !groupedReferrals) {\n const caseValues = {\n description: referral.description,\n state: referralIsOON(referral) ? 'off_platform' : 'draft',\n person: person.id,\n provider: referral.sendingProvider.id,\n network: referral.network.id,\n service: referral.service.id,\n ...(referral.primaryWorker?.id ? { primary_worker: referral.primaryWorker.id } : null),\n ...(formSubmissionId ? { originating_form_submission: formSubmissionId } : null),\n }\n try {\n let caseResponse;\n \n if (assistanceRequestId && i === 0) {\n const arCase = get(assistanceRequestId, 'case', null);\n\n if (referral.service.id && (get(arCase, 'service.id') !== referral.service.id)) {\n caseResponse = await updateCase(arCase.id, {\n description: referral.description,\n service: referral.service.id,\n });\n }\n } else {\n caseResponse = await createCase(caseValues)\n }\n createdCaseOrExistingAR = get(caseResponse, 'data.data', {});\n result.cases.push(createdCaseOrExistingAR);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the Case\");\n throw err;\n }\n }\n\n const attachableDocuments = get(referral, 'attachableDocuments', []);\n const filteredDocuments = attachableDocuments.filter((doc) => doc.attached === true);\n const attachedDocuments = filteredDocuments.map((ad) => ({\n title: ad.document.title,\n id: ad.document.id,\n }));\n\n if(!isEmpty(attachedDocuments)) {\n const attachDocumentsToResource = () => (\n coreApi.setRelationship(\n 'case',\n createdCaseOrExistingAR.id,\n { relationshipModel: 'file_upload', value: attachedDocuments.map((a) => a.id) },\n )\n );\n\n const uploadPromises = !isEmpty(attachedDocuments) && attachDocumentsToResource();\n\n Promise.all([uploadPromises]);\n }\n\n const uploadedDocuments = get(referral, 'attachments', []);\n\n if (!isEmpty(uploadedDocuments)) {\n const uploadDocumentsToResource = () => (\n uploadedDocuments.map((d) => coreApi.uploadFile('case', createdCaseOrExistingAR.id, d.file))\n );\n\n const uploadPromises = uploadDocumentsToResource();\n Promise.all([\n ...(uploadPromises || []),\n ]);\n }\n\n let state = referralIsOON(referral) ? 'off_platform' : 'sent';\n if (draft) {\n state = 'draft';\n }\n\n // If the program is unlisted, create a note on the case. Otherwise, create a referral\n if (hint542SupersetUnlistedPrograms && isUnlistedProgram(programData)) {\n const createNoteForUnlsitedProgramValues = {\n subjectType: 'case',\n subject: createdCaseOrExistingAR.id,\n employee: currentEmployee.id,\n visibility: 'public',\n category: 'external_provider',\n text: `Referred off platform to ${programData.name}`,\n };\n\n try {\n createNote(createNoteForUnlsitedProgramValues);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the note on the case for the unlisted program\");\n throw err;\n }\n } else {\n const referralValues = {\n state,\n case: createdCaseOrExistingAR.id,\n is_grouped: isGrouped,\n receiving_program: programData.id,\n receiving_provider: programData.provider.id,\n receiving_network: referral.network.id,\n sending_provider: referral.sendingProvider.id,\n sending_network: referral.network.id,\n }\n\n try {\n const responseReferral = await createReferral(referralValues);\n result.referrals.push(responseReferral.data.data);\n } catch (err) {\n CALLBACKS.notify.error(\"Error creating the Referral\");\n throw err;\n }\n }\n }\n }\n\n return result;\n }\n\n const updateDraftReferral = async (referral) => {\n try {\n const responses = await Promise.all([\n updateReferral(referral.id, {\n state: referralIsOON(referral) ? 'off_platform' : 'sent',\n }),\n updateCase(referral.case.id, {\n description: referral.description,\n }),\n ]);\n\n return {\n referrals: [responses[0].data.data],\n cases: [responses[1].data.data],\n }\n } catch (err) {\n CALLBACKS.notify.error(\"Error updating the Draft Referral\");\n throw err;\n }\n }\n\n return async ({ draft = false, latestResponses } = {}) => {\n\n let response = null;\n // Update the Draft Referral to the sent state\n if (referrals.length === 1 && referrals[0].id && referrals[0].state === \"draft\") {\n response = await updateDraftReferral(referrals[0]);\n } else {\n // Create or Save the Referral as a Draft\n response = await createReferrals({ referrals, person, draft })\n }\n\n if (formResponses || latestResponses) {\n await submitAssessments({ cases: response.cases, latestResponses });\n }\n\n return {\n cases: response.cases,\n referrals: response.referrals,\n };\n };\n};\n"],"mappings":"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"}
|
|
@@ -18,7 +18,6 @@ var _ui = require("@unite-us/ui");
|
|
|
18
18
|
var _CurrencyField = _interopRequireDefault(require("../../common/form/CurrencyField"));
|
|
19
19
|
var _DollarAmount = _interopRequireDefault(require("../../components/DollarAmount"));
|
|
20
20
|
var _LineItem = _interopRequireDefault(require("./LineItem"));
|
|
21
|
-
var _validateUnitAmount = _interopRequireDefault(require("../../utils/validateUnitAmount"));
|
|
22
21
|
var AuthFormLineItem = function AuthFormLineItem(props) {
|
|
23
22
|
return /*#__PURE__*/_react.default.createElement(_LineItem.default, (0, _extends2.default)({
|
|
24
23
|
fieldClassName: "col-span-1 p-0 text-dark-grey",
|
|
@@ -28,8 +27,7 @@ var AuthFormLineItem = function AuthFormLineItem(props) {
|
|
|
28
27
|
var AuthorizationSubform = function AuthorizationSubform(_ref) {
|
|
29
28
|
var _formValues$paymentAu, _formValues$paymentAu2, _formValues$amount_re;
|
|
30
29
|
var feeScheduleProgram = _ref.feeScheduleProgram,
|
|
31
|
-
formValues = _ref.formValues
|
|
32
|
-
assignReferralErrors = _ref.assignReferralErrors;
|
|
30
|
+
formValues = _ref.formValues;
|
|
33
31
|
var isCostBased = _feeSchedulePrograms.default.isCostPaymentType(feeScheduleProgram.payment_type);
|
|
34
32
|
var showUnits = !isCostBased && (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit);
|
|
35
33
|
var showRate = showUnits && (feeScheduleProgram === null || feeScheduleProgram === void 0 ? void 0 : feeScheduleProgram.unit_rate) > 0;
|
|
@@ -64,10 +62,13 @@ var AuthorizationSubform = function AuthorizationSubform(_ref) {
|
|
|
64
62
|
}, /*#__PURE__*/_react.default.createElement(_reactFinalForm.Field, {
|
|
65
63
|
name: "paymentAuthForm.amount_requested",
|
|
66
64
|
validate: function validate(value) {
|
|
67
|
-
return
|
|
65
|
+
return (0, _validations.isRequired)(value);
|
|
68
66
|
}
|
|
69
67
|
}, function (params) {
|
|
70
|
-
return isCostBased ?
|
|
68
|
+
return isCostBased ?
|
|
69
|
+
/*#__PURE__*/
|
|
70
|
+
// TODO unit amount validation https://uniteus.atlassian.net/browse/PAYS-5506
|
|
71
|
+
_react.default.createElement(_CurrencyField.default, (0, _extends2.default)({
|
|
71
72
|
className: "col-span-1 p-0",
|
|
72
73
|
id: "authorization-request-amount-requested",
|
|
73
74
|
label: "Amount Requested",
|
|
@@ -117,13 +118,14 @@ var AuthorizationSubform = function AuthorizationSubform(_ref) {
|
|
|
117
118
|
feeScheduleProgram: feeScheduleProgram,
|
|
118
119
|
formValues: formValues,
|
|
119
120
|
isCostBased: isCostBased,
|
|
120
|
-
|
|
121
|
+
assignErrors: function assignErrors() {} // todo use when create validation https://uniteus.atlassian.net/browse/PAYS-5506
|
|
122
|
+
,
|
|
123
|
+
hasDatesSelected: hasDatesSelected
|
|
121
124
|
})));
|
|
122
125
|
};
|
|
123
126
|
AuthorizationSubform.propTypes = {
|
|
124
127
|
feeScheduleProgram: _propTypes.default.object.isRequired,
|
|
125
|
-
formValues: _propTypes.default.object.isRequired
|
|
126
|
-
assignReferralErrors: _propTypes.default.func.isRequired
|
|
128
|
+
formValues: _propTypes.default.object.isRequired
|
|
127
129
|
};
|
|
128
130
|
var _default = exports.default = AuthorizationSubform;
|
|
129
131
|
//# sourceMappingURL=AuthorizationSubform.js.map
|