@lm_fe/pages-mchc 0.2.6 → 0.2.8

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.
Files changed (62) hide show
  1. package/README.md +1 -1
  2. package/dist/a_chunks/diagnoses-week.js +1 -1
  3. package/dist/a_chunks/index.js +16 -18
  4. package/dist/a_chunks/index2.js +1 -1
  5. package/dist/a_chunks/pages.config-table.list.js +1 -1
  6. package/dist/a_chunks/pages.config-table.panel.js +1 -1
  7. package/dist/a_chunks/pages.config-table.panel2.js +1 -1
  8. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end.js +7 -7
  9. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end10.js +46 -79
  10. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end11.js +75 -363
  11. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end12.js +334 -188
  12. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end13.js +213 -470
  13. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end14.js +463 -163
  14. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end15.js +135 -304
  15. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end16.js +320 -152
  16. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end17.js +181 -77
  17. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end18.js +70 -234
  18. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end19.js +239 -52
  19. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end2.js +1132 -341
  20. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end20.js +52 -251
  21. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end21.js +243 -99
  22. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end22.js +95 -83
  23. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end23.js +94 -515
  24. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end24.js +507 -297
  25. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end25.js +279 -408
  26. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end26.js +419 -103
  27. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end27.js +101 -187
  28. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end28.js +185 -423
  29. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end29.js +313 -246
  30. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end3.js +344 -550
  31. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end30.js +223 -133
  32. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end31.js +271 -93
  33. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end32.js +96 -216
  34. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end33.js +215 -117
  35. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end34.js +102 -91
  36. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end35.js +94 -22
  37. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end36.js +9 -16
  38. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end37.js +28 -44
  39. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end38.js +45 -41
  40. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end39.js +55 -108
  41. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end4.js +552 -30
  42. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end40.js +54 -105
  43. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end41.js +160 -234
  44. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end42.js +235 -0
  45. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end5.js +33 -40
  46. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end6.js +40 -33
  47. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end7.js +33 -40
  48. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end8.js +39 -33
  49. package/dist/a_chunks/prenatal-visit.pregnancy.doctor-end9.js +33 -39
  50. package/dist/a_chunks/prenatal-visit.pregnancy.nurse-end.js +4 -2
  51. package/dist/a_chunks/src.pages.config-table.js +1 -1
  52. package/dist/a_chunks/src.pages.system-config2.js +68 -56
  53. package/dist/a_chunks/utils.js +60 -110
  54. package/dist/a_chunks/utils2.js +113 -56
  55. package/dist/a_chunks/utils3.js +57 -0
  56. package/dist/pages/config-table/utils.d.ts +1 -0
  57. package/dist/pages/prenatal-visit/pregnancy/doctor-end/.further/components/FurtherTable/index.d.ts +1 -0
  58. package/dist/pages/prenatal-visit/pregnancy/doctor-end/.further/utils.d.ts +9 -0
  59. package/package.json +9 -9
  60. package/dist/a_chunks/DoctorEnd_FurtherPage.js +0 -1244
  61. package/dist/pages/prenatal-visit/pregnancy/doctor-end/.further/components/FurtherForm/config.d.ts +0 -9
  62. package/dist/pages/prenatal-visit/pregnancy/doctor-end/.postpartum/components/FurtherForm/config.d.ts +0 -6
@@ -1,600 +1,394 @@
1
- import { c as __assign, _ as __awaiter, a as __generator, s as styleInject, e as __extends, d as __spreadArray } from './index.js';
2
- import { mchcUtils, mchcEvent, mchcEnv } from '@lm_fe/env';
3
- import { use_provoke, peek_provoke } from '@lm_fe/provoke';
4
- import { process_OutpatientDocument_physicalExam_remote, SLocal_Calculator, SMchc_Doctor } from '@lm_fe/service';
5
- import { getFutureDate, expect_array, identity, formatDate } from '@lm_fe/utils';
6
- import { Form, Card, Button, Space, Collapse, Row, Col } from 'antd';
7
- import { get, cloneDeep, find, set } from 'lodash';
8
- import React, { useState, useEffect, useRef } from 'react';
9
- import { MyFormSectionForm, useMyEffectSafe, MyIcon, MyLazyComponent, OkButton, getBMI, handle_form_error } from '@lm_fe/components_m';
10
- import { BF_Wrap2, mchcModal__ } from '@lm_fe/pages';
11
- import { MyLazyComponent as MyLazyComponent$1, Table_L } from '@lm_fe/components';
12
- var checkAssociatedForm = function checkAssociatedForm(list, searchObj) {
13
- var _a, _b;
14
- if (list === void 0) {
15
- list = [];
16
- }
17
- if (!(searchObj === null || searchObj === void 0 ? void 0 : searchObj.diagKeyword)) return false;
18
- var diagItem = (_b = (_a = list === null || list === void 0 ? void 0 : list.filter(function (l) {
19
- return l.diagnosis;
20
- })) === null || _a === void 0 ? void 0 : _a.map(function (l) {
21
- return l.diagnosis;
22
- })) !== null && _b !== void 0 ? _b : [];
23
- var is_coronary = searchObj.diagKeyword.includes('心脏');
24
- var refreshFrom = function refreshFrom() {
25
- var is_hidden = true;
26
- for (var _i = 0, diagItem_1 = diagItem; _i < diagItem_1.length; _i++) {
27
- var user_diag = diagItem_1[_i];
28
- for (var _a = 0, _b = searchObj['diagKeyword']; _a < _b.length; _a++) {
29
- var pre_diag = _b[_a];
30
- if (user_diag.includes(pre_diag)) {
31
- if (!is_coronary) {
32
- return false;
33
- }
34
- if (is_coronary && user_diag.includes('胎')) {
35
- return false;
36
- }
37
- }
38
- }
39
- }
40
- return is_hidden;
41
- };
42
- return refreshFrom();
43
- };
44
- var FormBlock = function FormBlock(props) {
45
- var _a;
46
- var diagnosesList = props.diagnosesList;
1
+ import { c as __assign, s as styleInject, e as __extends, _ as __awaiter, a as __generator } from './index.js';
2
+ import { FormSectionForm, OkButton, MyIcon } from '@lm_fe/components_m';
3
+ import { BF_Wrap2, SelectTip } from '@lm_fe/pages';
4
+ import { request, isNil, set, text_ellipsis, getSearchParamsValue, EventEmitter_Old } from '@lm_fe/utils';
5
+ import { Form, Card, Space, Menu, Popconfirm, Row, Col, message } from 'antd';
6
+ import { find, isEmpty, map, get, findIndex, cloneDeep, includes, set as set$1 } from 'lodash';
7
+ import React, { useEffect, Component } from 'react';
8
+ import '@lm_fe/env';
9
+ import '@lm_fe/service';
10
+ import '@lm_fe/components';
11
+ function ComponentPanl(_a) {
12
+ var template = _a.template,
13
+ pregnancyId = _a.pregnancyId,
14
+ IC = _a.IC,
15
+ on_save = _a.on_save;
16
+ var form = Form.useForm()[0];
47
17
  var _b = BF_Wrap2({
48
18
  default_conf: {
49
- tableColumns: function tableColumns() {
50
- return import('./prenatal-visit.pregnancy.doctor-end32.js');
51
- },
52
- title: '产后复诊记录-产检信息'
19
+ title: "\u95E8\u8BCA-\u4E2A\u6848\u767B\u8BB0\u5361-".concat(template.code),
20
+ tableColumns: template.conf
53
21
  }
54
22
  }),
55
23
  config = _b.config,
56
24
  Wrap = _b.Wrap;
57
- var form_config = ((_a = config === null || config === void 0 ? void 0 : config.tableColumns) !== null && _a !== void 0 ? _a : []).map(function (f) {
58
- if (!(f === null || f === void 0 ? void 0 : f.usr1)) return f;
59
- return __assign(__assign({}, f), {
60
- isActive: !checkAssociatedForm(diagnosesList, f === null || f === void 0 ? void 0 : f.usr1)
61
- });
62
- });
63
- return /*#__PURE__*/React.createElement(Wrap, null, /*#__PURE__*/React.createElement(MyFormSectionForm, __assign({
64
- size: 'small',
65
- style: {
66
- padding: '0 4px',
67
- overflow: 'hidden'
68
- },
69
- formDescriptions: form_config
70
- }, props, {
71
- onValuesChange: function onValuesChange(changedValues, values) {}
72
- })));
73
- };
74
- function FurtherForm(props) {
75
- var _this = this;
76
- var _a = useState(false),
77
- disabled_save = _a[0],
78
- set_disabled_save = _a[1];
79
- var getLastRecord = props.getLastRecord;
80
- var formChange = props.formChange;
81
- var diagnosesList = props.diagnosesList,
82
- formData = props.formData;
83
- props.visitsData;
84
- props.getVisitsData;
85
- var headerInfo = props.headerInfo,
86
- onAddBtnClick = props.onAddBtnClick,
87
- handleSubmit = props.handleSubmit;
88
- props.loading;
89
- var _b = useState(false);
90
- _b[0];
91
- _b[1];
92
- var form = Form.useForm()[0];
93
- var form_id = formData === null || formData === void 0 ? void 0 : formData.id;
94
- var preg_id = mchcUtils.single_id(headerInfo);
95
25
  useEffect(function () {
96
- if (formData) {
97
- formData.physicalExam = process_OutpatientDocument_physicalExam_remote(formData.physicalExam);
98
- form.setFieldsValue(formData);
99
- set_disabled_save(formData.isBanned);
100
- }
101
- }, [formData]);
102
- useMyEffectSafe(props)(function () {
103
- var rm = mchcEvent.on_rm('my_form', function (e) {
104
- return __awaiter(_this, void 0, void 0, function () {
105
- var values, value, key, a, physicalExam, bmi;
106
- var _a, _b;
107
- return __generator(this, function (_c) {
108
- switch (_c.label) {
109
- case 0:
110
- if (!(e.type === 'onChange')) return [3, 3];
111
- formChange(true);
112
- values = e.values;
113
- value = e.value;
114
- key = e.name;
115
- if (!(key === 'visitDate')) return [3, 2];
116
- return [4, SLocal_Calculator.calcGesWeek({
117
- date: value,
118
- id: preg_id
119
- })];
120
- case 1:
121
- a = _c.sent();
122
- (_a = e.setValue) === null || _a === void 0 ? void 0 : _a.call(e, 'gestationalWeek', a.gestationalWeek);
123
- _c.label = 2;
124
- case 2:
125
- if (key === 'appointmentCycle') {
126
- (_b = e.setValue) === null || _b === void 0 ? void 0 : _b.call(e, 'appointmentDate', getFutureDate(value));
127
- }
128
- if (key === 'physicalExam') {
129
- physicalExam = values === null || values === void 0 ? void 0 : values.physicalExam;
130
- bmi = getBMI(physicalExam === null || physicalExam === void 0 ? void 0 : physicalExam.weight, physicalExam === null || physicalExam === void 0 ? void 0 : physicalExam.height);
131
- form.setFieldsValue({
132
- physicalExam: {
133
- bmi: bmi
134
- }
135
- });
136
- }
137
- _c.label = 3;
138
- case 3:
139
- if (e.type === 'onFocus') ;
140
- return [2];
141
- }
142
- });
143
- });
144
- });
145
- return rm;
146
- }, []);
147
- function on_submit() {
148
- return form.validateFields().then(function (values) {
149
- return handleSubmit(values);
150
- })["catch"](function (error) {
151
- var first = handle_form_error(error);
152
- if (first === null || first === void 0 ? void 0 : first.text) mchcEnv.warning(first.text);
153
- });
154
- }
155
- function showpdf() {
156
- mchcModal__.open('print_modal', {
157
- modal_data: {
158
- requestData: {
159
- url: '/api/pdf-preview',
160
- resource: 'prenatalVisit1',
161
- id: form_id,
162
- template: '',
163
- version: '',
164
- note: ''
26
+ form.resetFields();
27
+ console.log('IC', IC);
28
+ if (!IC) {
29
+ form.setFieldsValue(__assign({
30
+ pregnancyId: pregnancyId
31
+ }, template));
32
+ } else {
33
+ request.get('/api/ic/getDetail', {
34
+ params: {
35
+ id: IC.id
165
36
  }
166
- }
37
+ }).then(function (r) {
38
+ form.setFieldsValue(r.data);
39
+ });
40
+ }
41
+ return function () {};
42
+ }, [IC]);
43
+ function submit(url, state) {
44
+ var values = form.getFieldsValue();
45
+ if (!isNil(state)) {
46
+ values = set(values, 'state', state);
47
+ }
48
+ request.post(url, values, {
49
+ successText: '操作成功'
50
+ }).then(function (r) {
51
+ var res = r.data;
52
+ form.setFieldsValue(res);
53
+ on_save(res);
167
54
  });
168
55
  }
169
- var saveBtnTxt = disabled_save ? '无权限保存' : "\u4FDD\u5B58".concat(mchcEnv.is('华医') ? '并关闭' : '');
56
+ var state = (IC === null || IC === void 0 ? void 0 : IC.state) || template.state;
170
57
  return /*#__PURE__*/React.createElement(Card, {
171
- title: form_id ? "编辑记录" : "本次记录",
172
- size: "small",
173
- styles: {
174
- body: {
175
- padding: 0
176
- }
177
- },
178
58
  style: {
179
- overflowY: 'auto'
59
+ height: '100%'
180
60
  },
181
- extra: /*#__PURE__*/React.createElement("span", {
182
- id: "extra",
183
- style: {
184
- display: 'inline-block',
185
- minWidth: 75,
186
- height: 24,
187
- marginLeft: 98
188
- }
189
- }, form_id ? (/*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, {
190
- icon: /*#__PURE__*/React.createElement(MyIcon, {
191
- value: 'PlusOutlined'
192
- }),
193
- type: "primary",
194
- size: "small",
195
- onClick: function onClick() {
196
- form.resetFields();
197
- onAddBtnClick();
61
+ styles: {
62
+ body: {
63
+ padding: 0,
64
+ height: '100%',
65
+ overflow: 'auto'
198
66
  },
199
- style: {
200
- marginRight: 36
201
- }
202
- }, "\u65B0\u589E\u8BB0\u5F55"))) : null, /*#__PURE__*/React.createElement(Button, {
203
- icon: /*#__PURE__*/React.createElement(MyIcon, {
204
- value: 'SyncOutlined'
205
- }),
206
- type: "primary",
207
- size: "small",
208
- onClick: getLastRecord,
209
- style: {
210
- marginRight: 36
67
+ title: {
68
+ textAlign: 'center'
211
69
  }
212
- }, "\u540C\u6B65\u4E0A\u4E00\u6B21\u8BB0\u5F55"))
213
- }, /*#__PURE__*/React.createElement(MyLazyComponent, {
214
- size: 'middle'
215
- }, /*#__PURE__*/React.createElement(FormBlock, {
216
- disableAll: disabled_save,
70
+ }
71
+ }, /*#__PURE__*/React.createElement(Wrap, null, /*#__PURE__*/React.createElement(FormSectionForm, {
217
72
  form: form,
218
- diagnosesList: diagnosesList !== null && diagnosesList !== void 0 ? diagnosesList : []
73
+ bf_config: config
219
74
  }), /*#__PURE__*/React.createElement(Space.Compact, {
220
75
  style: {
221
76
  position: 'fixed',
222
- bottom: 24,
223
- right: 24
77
+ right: 32,
78
+ bottom: 32
224
79
  }
225
80
  }, /*#__PURE__*/React.createElement(OkButton, {
226
- hidden: !form_id,
227
- onClick: showpdf
228
- }, "\u6253\u5370"), /*#__PURE__*/React.createElement(OkButton, {
81
+ disabled: state > 1,
82
+ primary: true,
83
+ btn_text: "\u4FDD\u5B58",
84
+ onClick: function onClick() {
85
+ return submit('/api/ic/saveForm');
86
+ }
87
+ }), /*#__PURE__*/React.createElement(OkButton, {
88
+ disabled: state > 2,
229
89
  primary: true,
230
- disabled: disabled_save,
231
- onClick: on_submit
232
- }, saveBtnTxt))));
90
+ btn_text: "\u63D0\u4EA4",
91
+ onClick: function onClick() {
92
+ return submit('/api/ic/submitForm', 2);
93
+ }
94
+ }))));
233
95
  }
234
- var css_248z$1 = ".sider-container {\n display: flex;\n justify-content: space-between;\n flex-direction: column;\n width: 100%;\n height: 100%;\n}\n.sider-container .tab-content {\n display: flex;\n height: 30px;\n margin: 0px;\n margin-top: 10px;\n}\n.sider-container .tab-content .tab-item {\n cursor: pointer;\n padding: 0 10px;\n line-height: 30px;\n border: 1px solid #ccc;\n border-radius: 6px 6px 0 0;\n flex: 1;\n text-align: center;\n}\n.sider-container .main-content {\n flex: 1;\n overflow: auto;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse,\n.prenatal-tree-content .ant-collapse {\n position: relative;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse .diag-btn,\n.prenatal-tree-content .ant-collapse .diag-btn {\n position: absolute;\n top: 4px;\n right: 4px;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse .ant-collapse-header,\n.prenatal-tree-content .ant-collapse .ant-collapse-header {\n display: flex;\n align-items: center;\n font-weight: bold;\n padding-left: 0;\n font-size: 15px;\n color: #3b3671;\n padding-left: 20px;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse .ant-collapse-header .header-btn,\n.prenatal-tree-content .ant-collapse .ant-collapse-header .header-btn {\n position: absolute;\n right: 4px;\n top: 4px;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse .ant-collapse-header .header-icon,\n.prenatal-tree-content .ant-collapse .ant-collapse-header .header-icon {\n margin: 0 3px 0 8px;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse .ant-collapse-header .isUnusual,\n.prenatal-tree-content .ant-collapse .ant-collapse-header .isUnusual {\n color: #fff;\n background-color: red !important;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse .ant-collapse-content-box,\n.prenatal-tree-content .ant-collapse .ant-collapse-content-box {\n padding: 5px;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse .ant-collapse-content-box .diagWrapper,\n.prenatal-tree-content .ant-collapse .ant-collapse-content-box .diagWrapper {\n padding: 0;\n border: none;\n overflow: hidden;\n}\n.prenatal-visit-main_return-sidebar .ant-collapse .ant-collapse-content-box .plan-timeline,\n.prenatal-tree-content .ant-collapse .ant-collapse-content-box .plan-timeline {\n padding: 5px;\n}\n";
235
- styleInject(css_248z$1);
236
- var Index = function (_super) {
237
- __extends(Index, _super);
238
- function Index(props) {
239
- var _this = _super.call(this, props) || this;
240
- _this.state = {};
241
- return _this;
242
- }
243
- Index.prototype.render = function () {
244
- var visitsData = this.props.visitsData;
245
- return /*#__PURE__*/React.createElement(Card, {
246
- styles: {
247
- body: {
248
- padding: 0
249
- }
250
- }
251
- }, /*#__PURE__*/React.createElement(Collapse, {
252
- defaultActiveKey: ['1', '2', '3'],
253
- bordered: false
254
- }, /*#__PURE__*/React.createElement(Collapse.Panel, {
255
- header: "\u51FA\u9662\u8BCA\u65AD",
256
- key: "1"
257
- }, /*#__PURE__*/React.createElement("div", {
258
- className: "panel-content"
259
- }, get(visitsData, "inpatientInfo.dischargeDiagnoses", '') || '暂无数据~')), /*#__PURE__*/React.createElement(Collapse.Panel, {
260
- header: "\u51FA\u9662\u60C5\u51B5\u53CA\u6CBB\u7597\u7ED3\u679C",
261
- key: "2"
262
- }, /*#__PURE__*/React.createElement("div", {
263
- className: "panel-content"
264
- }, get(visitsData, "inpatientInfo.treatmentResult", '') || '暂无数据~')), /*#__PURE__*/React.createElement(Collapse.Panel, {
265
- header: "\u51FA\u9662\u533B\u5631",
266
- key: "3"
267
- }, /*#__PURE__*/React.createElement("div", {
268
- className: "panel-content"
269
- }, get(visitsData, "inpatientInfo.dischargeAdvice", '') || '暂无数据~'))));
270
- };
271
- return Index;
272
- }(React.Component);
273
- function FurtherTable(props) {
274
- var _a;
275
- var sys_theme = use_provoke(function (s) {
276
- return s.sys_theme;
277
- });
278
- var setFormData = props.setFormData;
279
- props.setDiagnosesList;
280
- var visitsData = props.visitsData,
281
- furtherRefresh = props.furtherRefresh,
282
- formData = props.formData;
283
- var preg_id = mchcUtils.single_id(visitsData);
284
- var _b = useState([]);
285
- _b[0];
286
- var set_selectKeys = _b[1];
287
- var _c = useState([]);
288
- _c[0];
289
- var set_selectRows = _c[1];
290
- useRef(null);
291
- var _d = BF_Wrap2({
292
- default_conf: {
293
- title: '产后复诊记录-产检记录表格',
294
- tableColumns: function tableColumns() {
295
- return import('./prenatal-visit.pregnancy.doctor-end31.js');
296
- }
297
- }
298
- }),
299
- config = _d.config,
300
- Wrap = _d.Wrap;
301
- useEffect(function () {}, []);
302
- var filtered_rvisits = ((_a = visitsData === null || visitsData === void 0 ? void 0 : visitsData.recordsAfterDelivery) !== null && _a !== void 0 ? _a : []).filter(function (_) {
303
- return _.id;
304
- });
305
- function handlePrint() {
306
- return __awaiter(this, void 0, void 0, function () {
307
- return __generator(this, function (_a) {
308
- mchcModal__.open('print_modal', {
309
- modal_data: {
310
- requestData: {
311
- url: '/api/pdf-preview',
312
- id: preg_id,
313
- resource: 'prenatalRVisitCH'
96
+ var ReportCardEnum;
97
+ (function (ReportCardEnum) {
98
+ ReportCardEnum["hepatitispregnantbaby"] = "IC_HBV_REGISTER";
99
+ ReportCardEnum["hepatitisbabyfollowup"] = "IC_HBV_FOLLOW";
100
+ ReportCardEnum["syphilispregnantcard"] = "IC_SYPHILIS_PATIENT";
101
+ ReportCardEnum["syphilisbabycard"] = "IC_SYPHILIS_CHILD";
102
+ ReportCardEnum["aidspregnantcard"] = "IC_HIV_PATIENT";
103
+ ReportCardEnum["aidspregnantbabycard"] = "IC_HIV_CHILD";
104
+ ReportCardEnum["birthdefect"] = "AD_IC_BIRTH_DEFECT";
105
+ ReportCardEnum["pregnantdeath"] = "AD_IC_MATERNAL_DEATH";
106
+ ReportCardEnum["childrendeath"] = "AD_IC_CHILD_DEATH";
107
+ })(ReportCardEnum || (ReportCardEnum = {}));
108
+ var ReporCardList = [{
109
+ name: '乙肝感染孕产妇及所生新生儿个案登记卡(保密)',
110
+ code: ReportCardEnum.hepatitispregnantbaby,
111
+ conf: function conf() {
112
+ return import('./prenatal-visit.pregnancy.doctor-end29.js');
113
+ },
114
+ way: 1,
115
+ state: 1,
116
+ neonateOrder: 1
117
+ }, {
118
+ name: '梅毒感染孕产妇基本情况',
119
+ code: ReportCardEnum.syphilispregnantcard,
120
+ conf: function conf() {
121
+ return import('./prenatal-visit.pregnancy.doctor-end30.js');
122
+ },
123
+ way: 1,
124
+ state: 1,
125
+ neonateOrder: 1
126
+ }, {
127
+ name: '艾滋病感染妇女基本情况',
128
+ code: ReportCardEnum.aidspregnantcard,
129
+ conf: function conf() {
130
+ return import('./prenatal-visit.pregnancy.doctor-end31.js');
131
+ },
132
+ way: 1,
133
+ state: 1,
134
+ neonateOrder: 1
135
+ }];
136
+ var css_248z = "";
137
+ styleInject(css_248z);
138
+ var SubMenu = Menu.SubMenu;
139
+ var CaseReport = function (_super) {
140
+ __extends(CaseReport, _super);
141
+ function CaseReport() {
142
+ var _this = _super !== null && _super.apply(this, arguments) || this;
143
+ _this.state = {
144
+ siderPanels: [],
145
+ loading: true,
146
+ template: null,
147
+ IC: null,
148
+ selectKey: '',
149
+ datas: {},
150
+ openKeys: []
151
+ };
152
+ _this.newInitData = function () {
153
+ return __awaiter(_this, void 0, void 0, function () {
154
+ var _a, id, caseType, pregnancyId, res;
155
+ var _b;
156
+ return __generator(this, function (_c) {
157
+ switch (_c.label) {
158
+ case 0:
159
+ _a = this.props, id = _a.id, caseType = _a.caseType;
160
+ pregnancyId = id || getSearchParamsValue('id');
161
+ return [4, request.get('/api/ic/findPersonalPage', {
162
+ params: (_b = {}, _b[caseType] = pregnancyId, _b.page = 0, _b.size = 100, _b)
163
+ })];
164
+ case 1:
165
+ res = _c.sent();
166
+ this.setState({
167
+ siderPanels: res.data,
168
+ loading: false
169
+ });
170
+ return [2];
171
+ }
172
+ });
173
+ });
174
+ };
175
+ _this.handleDelete = function (item) {
176
+ return function () {
177
+ return __awaiter(_this, void 0, void 0, function () {
178
+ return __generator(this, function (_a) {
179
+ switch (_a.label) {
180
+ case 0:
181
+ return [4, request["delete"]("/api/ic/delete/".concat(get(item, 'id')))];
182
+ case 1:
183
+ _a.sent();
184
+ this.newInitData();
185
+ this.setState({
186
+ template: null
187
+ });
188
+ return [2];
314
189
  }
190
+ });
191
+ });
192
+ };
193
+ };
194
+ _this.handleClickListItem = function (item) {
195
+ var template = find(ReporCardList, function (lItem) {
196
+ return lItem.code == item.code;
197
+ });
198
+ _this.setState({
199
+ template: template,
200
+ IC: item
201
+ });
202
+ };
203
+ _this.selectHandleChange = function (value, option) {
204
+ return __awaiter(_this, void 0, void 0, function () {
205
+ var siderPanels, index, optionClone, list, label;
206
+ return __generator(this, function (_a) {
207
+ siderPanels = this.state.siderPanels;
208
+ index = findIndex(siderPanels, function (item) {
209
+ return item.code == value;
210
+ });
211
+ if (index != -1) {
212
+ message.error("\u5DF2\u5B58\u5728".concat(get(option, 'label'), ",\u4E0D\u80FD\u518D\u65B0\u589E"));
213
+ return [2];
214
+ }
215
+ optionClone = cloneDeep(option);
216
+ list = [ReportCardEnum.hepatitispregnantbaby, ReportCardEnum.syphilisbabycard, ReportCardEnum.aidspregnantbabycard];
217
+ if (includes(list, value)) {
218
+ label = get(optionClone, 'label') + "(B".concat(1, ")");
219
+ set$1(optionClone, 'label', label);
315
220
  }
221
+ this.setState({
222
+ template: __assign(__assign({}, optionClone), {
223
+ neonateOrder: 1,
224
+ way: this.isAdmission() ? 2 : 1
225
+ }),
226
+ IC: null,
227
+ selectKey: Math.random()
228
+ });
229
+ return [2];
316
230
  });
317
- return [2];
318
231
  });
319
- });
320
- }
321
- var _renderTable = function renderTable(isAll) {
322
- if (isAll === void 0) {
323
- isAll = false;
324
- }
325
- return /*#__PURE__*/React.createElement(Wrap, null, /*#__PURE__*/React.createElement(Table_L, {
326
- bordered: true,
327
- title: isAll ? undefined : function () {
232
+ };
233
+ _this.rendersiderPanels = function () {
234
+ var _a = _this.state,
235
+ siderPanels = _a.siderPanels,
236
+ loading = _a.loading,
237
+ IC = _a.IC;
238
+ if (isEmpty(siderPanels)) return null;
239
+ return /*#__PURE__*/React.createElement(Card, {
240
+ loading: loading,
241
+ size: "small",
242
+ style: {
243
+ marginTop: 12
244
+ }
245
+ }, map(siderPanels, function (item) {
328
246
  return /*#__PURE__*/React.createElement("div", {
329
247
  style: {
330
248
  display: 'flex',
249
+ alignItems: 'center',
331
250
  justifyContent: 'space-between'
332
251
  }
333
- }, /*#__PURE__*/React.createElement("span", null, "\u5171 ", filtered_rvisits.length, " \u6761\u8BB0\u5F55"), /*#__PURE__*/React.createElement(Space, null, /*#__PURE__*/React.createElement(OkButton, {
334
- type: "text",
335
- size: "small",
336
- onClick: furtherRefresh
337
- }, "\u5237\u65B0"), /*#__PURE__*/React.createElement(OkButton, {
338
- type: "text",
339
- size: "small",
340
- onClick: handlePrint
341
- }, "\u6253\u5370"), /*#__PURE__*/React.createElement(OkButton, {
252
+ }, /*#__PURE__*/React.createElement(OkButton, {
253
+ title: item.name,
342
254
  type: 'text',
343
- size: "small",
344
- onClick: function onClick() {
345
- return mchcModal__.open('modal_page', {
346
- modal_data: {
347
- content: _renderTable(true)
348
- }
349
- });
350
- }
351
- }, "\u66F4\u591A...")));
352
- },
353
- scroll: isAll ? undefined : {
354
- y: 160
355
- },
356
- pagination: false,
357
- size: isAll ? 'large' : 'small',
358
- onRow: function onRow(record) {
359
- var _a;
360
- var is_target = record.id === (formData === null || formData === void 0 ? void 0 : formData.id);
361
- var background = is_target ? (_a = sys_theme.colors) === null || _a === void 0 ? void 0 : _a.light[3] : undefined;
362
- var cursor = is_target ? undefined : 'pointer';
363
- var color = is_target ? '#fff' : undefined;
364
- return {
365
- style: {
366
- background: background,
367
- cursor: cursor,
368
- color: color
369
- },
370
- onClick: function onClick(event) {
371
- set_selectKeys([record.id]);
372
- set_selectRows([record]);
373
- },
374
- onDoubleClick: function onDoubleClick() {
375
- setFormData(record);
376
- mchcModal__.pop();
377
- }
378
- };
379
- },
380
- rowHoverable: false,
381
- rowKey: 'id',
382
- dataSource: isAll ? filtered_rvisits : filtered_rvisits.slice(0, 5),
383
- columns: __spreadArray([], expect_array(config === null || config === void 0 ? void 0 : config.tableColumns), true).filter(identity)
384
- }));
385
- };
386
- return /*#__PURE__*/React.createElement("div", {
387
- style: {
388
- marginBottom: 8
389
- }
390
- }, /*#__PURE__*/React.createElement(MyLazyComponent$1, {
391
- size: 'middle'
392
- }, _renderTable()));
393
- }
394
- var css_248z = ".further {\n height: 100%;\n display: flex;\n}\n.further-content {\n display: flex;\n flex-direction: column;\n flex: 1;\n height: 100%;\n overflow: auto;\n}\n";
395
- styleInject(css_248z);
396
- var single_id = mchcUtils.single_id;
397
- function DoctorEnd_Postpartum(props) {
398
- var headerInfo = props.headerInfo,
399
- id = props.id,
400
- diagnosesList = props.diagnosesList,
401
- formChange = props.formChange;
402
- console.log('DoctorEnd_Postpartum', props);
403
- var _a = useState(),
404
- visitsData = _a[0],
405
- _setVisitsData = _a[1];
406
- var _b = useState(),
407
- formData = _b[0],
408
- setFormData = _b[1];
409
- var _c = useState(false),
410
- loading = _c[0],
411
- setLoading = _c[1];
412
- var visitsData_cache = useRef(visitsData);
413
- function setVisitsData(v) {
414
- _setVisitsData(v);
415
- visitsData_cache.current = v;
416
- }
417
- useEffect(function () {
418
- if (id) {
419
- getVisitsData();
420
- }
421
- return function () {};
422
- }, [id]);
423
- var get_default_value = function get_default_value() {
424
- var _a;
425
- return {
426
- doctorName: (_a = peek_provoke().user_info) === null || _a === void 0 ? void 0 : _a.firstName,
427
- visitDate: formatDate()
255
+ primary: (IC === null || IC === void 0 ? void 0 : IC.id) === item.id,
256
+ onClick: _this.handleClickListItem.bind(_this, item),
257
+ btn_text: text_ellipsis(item.name, 12)
258
+ }), /*#__PURE__*/React.createElement(Popconfirm, {
259
+ title: "\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u767B\u8BB0\u8868\u4E48?",
260
+ onConfirm: _this.handleDelete(item),
261
+ okText: "\u786E\u5B9A",
262
+ cancelText: "\u53D6\u6D88"
263
+ }, /*#__PURE__*/React.createElement(MyIcon, {
264
+ value: 'DeleteOutlined'
265
+ })));
266
+ }));
428
267
  };
429
- };
430
- function fetchVisitData() {
431
- return __awaiter(this, void 0, void 0, function () {
432
- var visitInfo;
433
- return __generator(this, function (_a) {
434
- switch (_a.label) {
435
- case 0:
436
- return [4, SMchc_Doctor.getRvisitAfterDeliveryInfoOfOutpatient(single_id(props))];
437
- case 1:
438
- visitInfo = _a.sent();
439
- return [2, visitInfo];
440
- }
441
- });
442
- });
443
- }
444
- function getVisitsData() {
445
- return __awaiter(this, void 0, void 0, function () {
446
- var visitInfo;
447
- return __generator(this, function (_a) {
448
- switch (_a.label) {
449
- case 0:
450
- return [4, fetchVisitData()];
451
- case 1:
452
- visitInfo = _a.sent();
453
- initVisitData(visitInfo);
454
- initFormData(visitInfo);
455
- return [2];
456
- }
457
- });
458
- });
268
+ return _this;
459
269
  }
460
- function initVisitData(v) {
270
+ CaseReport.prototype.componentDidMount = function () {
461
271
  return __awaiter(this, void 0, void 0, function () {
462
272
  return __generator(this, function (_a) {
463
- setVisitsData(v);
464
- return [2];
465
- });
466
- });
467
- }
468
- function get_id_null_data(v) {
469
- var _a;
470
- var recordsAfterDelivery = (_a = v === null || v === void 0 ? void 0 : v.recordsAfterDelivery) !== null && _a !== void 0 ? _a : [];
471
- var idNullRvisit = recordsAfterDelivery.find(function (_) {
472
- return _.id === null;
473
- });
474
- return cloneDeep(idNullRvisit);
475
- }
476
- function initFormData_toAdd(v) {
477
- if (!v) {
478
- setFormData(get_default_value());
479
- return;
480
- }
481
- var idNullRvisit = get_id_null_data(v);
482
- var first = idNullRvisit !== null && idNullRvisit !== void 0 ? idNullRvisit : get_default_value();
483
- setFormData(first);
484
- }
485
- function initFormData(v) {
486
- return __awaiter(this, void 0, void 0, function () {
487
- var recordsAfterDelivery, idNullRvisit, first, _formdata;
488
- var _a;
489
- return __generator(this, function (_b) {
490
- if (!v) {
491
- setFormData(get_default_value());
492
- return [2];
493
- }
494
- recordsAfterDelivery = v.recordsAfterDelivery;
495
- idNullRvisit = get_id_null_data(v);
496
- first = (_a = idNullRvisit !== null && idNullRvisit !== void 0 ? idNullRvisit : recordsAfterDelivery[0]) !== null && _a !== void 0 ? _a : get_default_value();
497
- _formdata = first;
498
- setFormData(_formdata);
273
+ this.newInitData();
274
+ EventEmitter_Old.subscribe('updatasiderPanels', this.updatasiderPanels.bind(this));
499
275
  return [2];
500
276
  });
501
277
  });
502
- }
503
- function handleSubmit(newData) {
504
- return __awaiter(this, void 0, void 0, function () {
505
- var outEmrId, redata, v;
506
- return __generator(this, function (_a) {
507
- switch (_a.label) {
278
+ };
279
+ CaseReport.prototype.updatasiderPanels = function (_a) {
280
+ return __awaiter(this, arguments, void 0, function (_b) {
281
+ var _c, id, caseType, pregnancyId, res;
282
+ var _d;
283
+ _b.icId;
284
+ return __generator(this, function (_e) {
285
+ switch (_e.label) {
508
286
  case 0:
509
- outEmrId = headerInfo === null || headerInfo === void 0 ? void 0 : headerInfo.id;
510
- setLoading(true);
511
- return [4, SMchc_Doctor.updateRvisitAfterDeliveryInfoOfOutpatient(newData)];
287
+ _c = this.props, id = _c.id, caseType = _c.caseType;
288
+ pregnancyId = id || getSearchParamsValue('id');
289
+ return [4, request.get('/api/ic/findPersonalPage', {
290
+ params: (_d = {}, _d[caseType] = pregnancyId, _d.page = 0, _d.size = 100, _d)
291
+ })];
512
292
  case 1:
513
- redata = _a.sent();
514
- return [4, fetchVisitData()];
515
- case 2:
516
- v = _a.sent();
517
- initVisitData(v);
518
- setFormData(redata);
519
- mchcEvent.emit('outpatient', {
520
- type: '刷新头部',
521
- pregnancyId: outEmrId
293
+ res = _e.sent();
294
+ this.setState({
295
+ siderPanels: res.data
522
296
  });
523
- setLoading(false);
524
- mchcEnv.success('信息保存成功');
525
297
  return [2];
526
298
  }
527
299
  });
528
300
  });
529
- }
530
- function onAddBtnClick() {
531
- initFormData_toAdd(visitsData_cache.current);
532
- }
533
- function getLastRecord() {
534
- return __awaiter(this, void 0, void 0, function () {
535
- var list, newFormData;
536
- return __generator(this, function (_a) {
537
- list = get(visitsData_cache.current, "recordsAfterDelivery");
538
- newFormData = cloneDeep(find(list, function (item) {
539
- return item.id != null;
540
- }));
541
- console.log('newFormData', {
542
- newFormData: newFormData,
543
- list: list,
544
- visitsData: visitsData
301
+ };
302
+ CaseReport.prototype.getpregnancyId = function () {
303
+ var pregnancyId = this.props.id || getSearchParamsValue('id');
304
+ return pregnancyId;
305
+ };
306
+ CaseReport.prototype.isAdmission = function () {
307
+ return this.props.caseType == 'admissionId';
308
+ };
309
+ CaseReport.prototype.onOpenChange = function (keys) {
310
+ this.setState({
311
+ openKeys: keys
312
+ });
313
+ };
314
+ CaseReport.prototype.render = function () {
315
+ var _this = this;
316
+ var _a = this.state,
317
+ selectKey = _a.selectKey,
318
+ openKeys = _a.openKeys,
319
+ datas = _a.datas,
320
+ siderPanels = _a.siderPanels;
321
+ return /*#__PURE__*/React.createElement("div", {
322
+ style: {
323
+ overflow: 'hidden',
324
+ height: '100%'
325
+ }
326
+ }, /*#__PURE__*/React.createElement(Row, {
327
+ gutter: 8,
328
+ style: {
329
+ height: "100%"
330
+ }
331
+ }, /*#__PURE__*/React.createElement(Col, {
332
+ span: 4
333
+ }, /*#__PURE__*/React.createElement(Menu, {
334
+ mode: "inline",
335
+ openKeys: openKeys,
336
+ onOpenChange: this.onOpenChange.bind(this),
337
+ expandIcon: function expandIcon() {
338
+ if (openKeys.length != 0) {
339
+ return /*#__PURE__*/React.createElement("span", {
340
+ style: {
341
+ color: 'rgb(24,144,255)'
342
+ }
343
+ }, "\u53D6\u6D88");
344
+ }
345
+ return /*#__PURE__*/React.createElement(MyIcon, {
346
+ value: 'PlusCircleOutlined'
545
347
  });
546
- if (!newFormData) return [2];
547
- delete newFormData['id'];
548
- delete newFormData['isBanned'];
549
- set(newFormData, "visitDate", formatDate());
550
- setFormData(newFormData);
551
- return [2];
348
+ }
349
+ }, /*#__PURE__*/React.createElement(SubMenu, {
350
+ key: "sub1",
351
+ title: "\u4E2A\u6848\u767B\u8BB0\u5217\u8868",
352
+ style: {
353
+ paddingLeft: 0
354
+ }
355
+ }, map(ReporCardList, function (nurseType, key) {
356
+ var is_existed = siderPanels.some(function (s) {
357
+ return s.code === nurseType.code;
552
358
  });
553
- });
554
- }
555
- function furtherRefresh() {
556
- var refreshData = props.refreshData;
557
- getVisitsData();
558
- refreshData === null || refreshData === void 0 ? void 0 : refreshData();
559
- }
560
- return /*#__PURE__*/React.createElement("div", {
561
- style: {
562
- overflow: 'hidden',
563
- height: '100%'
564
- }
565
- }, /*#__PURE__*/React.createElement(Row, {
566
- gutter: 8,
567
- style: {
568
- height: '100%'
569
- }
570
- }, /*#__PURE__*/React.createElement(Col, {
571
- span: 4
572
- }, /*#__PURE__*/React.createElement(Index, {
573
- visitsData: visitsData
574
- })), /*#__PURE__*/React.createElement(Col, {
575
- span: 20,
576
- style: {
577
- height: '100%',
578
- display: 'flex',
579
- flexDirection: 'column'
580
- }
581
- }, /*#__PURE__*/React.createElement(FurtherTable, {
582
- visitsData: visitsData,
583
- setFormData: setFormData,
584
- headerInfo: headerInfo,
585
- formData: formData,
586
- furtherRefresh: furtherRefresh
587
- }), /*#__PURE__*/React.createElement(FurtherForm, {
588
- loading: loading,
589
- handleSubmit: handleSubmit,
590
- onAddBtnClick: onAddBtnClick,
591
- visitsData: visitsData,
592
- formData: formData,
593
- getVisitsData: getVisitsData,
594
- getLastRecord: getLastRecord,
595
- headerInfo: headerInfo,
596
- diagnosesList: diagnosesList,
597
- formChange: formChange
598
- }))));
359
+ return /*#__PURE__*/React.createElement(OkButton, {
360
+ title: nurseType.name,
361
+ disabled: is_existed,
362
+ style: {
363
+ margin: 8,
364
+ padding: 0,
365
+ width: 'calc(100% - 16px)'
366
+ },
367
+ key: key,
368
+ onClick: _this.selectHandleChange.bind(_this, nurseType.code, nurseType),
369
+ btn_text: text_ellipsis(nurseType.name, 12)
370
+ });
371
+ }))), this.rendersiderPanels()), /*#__PURE__*/React.createElement(Col, {
372
+ span: 20,
373
+ style: {
374
+ height: '100%'
375
+ }
376
+ }, isEmpty(this.state.template) ? (/*#__PURE__*/React.createElement(SelectTip, null)) : get(this.state, 'template') && (/*#__PURE__*/React.createElement(ComponentPanl, {
377
+ datas: datas,
378
+ template: get(this.state, 'template'),
379
+ IC: this.state.IC,
380
+ pregnancyId: this.getpregnancyId(),
381
+ selectKey: selectKey,
382
+ cardType: this.props.caseType,
383
+ on_save: function on_save(data) {
384
+ _this.newInitData();
385
+ _this.handleClickListItem(data);
386
+ }
387
+ })))));
388
+ };
389
+ return CaseReport;
390
+ }(Component);
391
+ function CaseReport_Inner(props) {
392
+ return /*#__PURE__*/React.createElement(CaseReport, __assign({}, props));
599
393
  }
600
- export { DoctorEnd_Postpartum as default };
394
+ export { CaseReport_Inner as default };