Skip to content

Commit c72ff90

Browse files
committed
handling signature data type in FormElementGroup and Observations
1 parent 125e8a0 commit c72ff90

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

packages/openchs-android/src/views/common/Observations.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Text, TouchableOpacity, View} from "react-native";
1+
import {Text, TouchableOpacity, View, Image} from "react-native";
22
import ListView from "deprecated-react-native-listview";
33
import PropTypes from 'prop-types';
44
import React, {Fragment} from "react";
@@ -22,6 +22,7 @@ import EncounterService from "../../service/EncounterService";
2222
import CustomActivityIndicator from "../CustomActivityIndicator";
2323
import PhoneCall from "../../model/PhoneCall";
2424
import {TaskActionNames as Actions} from "../../action/task/TaskActions";
25+
import SignatureFormElement from "../form/formElement/SignatureFormElement";
2526

2627
class Observations extends AbstractComponent {
2728
static propTypes = {
@@ -163,6 +164,13 @@ class Observations extends AbstractComponent {
163164
</View>
164165
</View>
165166
);
167+
} else if (renderType === Concept.dataType.Signature) {
168+
return (
169+
<View style={this.styles.observationColumn}>
170+
<Image width={100} height={100} source={{uri: `file://${SignatureFormElement.signatureFileDirectory}/${observationModel.getValueWrapper().getValue()}`}}/>
171+
<Text></Text>
172+
</View>
173+
);
166174
} else if (Concept.dataType.Media.includes(renderType)) {
167175
const allMediaURIs = _.split(displayable.displayValue, ',');
168176
return (

packages/openchs-android/src/views/form/FormElementGroup.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ import SingleSelectEncounterFormElement from "./formElement/SingleSelectEncounte
4343
import MultiSelectEncounterFormElement from "./formElement/MultiSelectEncounterFormElement";
4444
import MediaV2FormElement from "./formElement/MediaV2FormElement";
4545
import Colors from "../primitives/Colors";
46+
import SignatureFormElement from "./formElement/SignatureFormElement";
4647

4748
class FormElementGroup extends AbstractComponent {
4849
static propTypes = {
@@ -220,6 +221,14 @@ class FormElementGroup extends AbstractComponent {
220221
value={this.getSelectedAnswer(formElement.concept, new MultipleCodedValues())}
221222
validationResult={validationResult}
222223
/>, uniqueKey, formElement.uuid === erroredUUID);
224+
} else if (formElement.concept.datatype === Concept.dataType.Signature) {
225+
return this.wrap(<SignatureFormElement
226+
key={uniqueKey}
227+
element={formElement}
228+
actionName={this.props.actions["TOGGLE_SINGLESELECT_ANSWER"]}
229+
value={this.getSelectedAnswer(formElement.concept, new PrimitiveValue())}
230+
validationResult={validationResult}
231+
/>, uniqueKey, formElement.uuid === erroredUUID);
223232
} else if ([Concept.dataType.ImageV2].includes(formElement.concept.datatype)) {
224233
return this.wrap(<MediaV2FormElement
225234
key={uniqueKey}

0 commit comments

Comments
 (0)