Commit d4018b0a by peii

下单添加报台单配置

parent a20d0623
...@@ -217,6 +217,12 @@ class EquipConsuPage extends Component { ...@@ -217,6 +217,12 @@ class EquipConsuPage extends Component {
value: 'N', value: 'N',
isRedio: 'N', // 单选 isRedio: 'N', // 单选
}, },
{
id: '20',
title: '报台单',
name: '请选择',
value: '',
}
], ],
subInitListOption: [], // 提交成功后,初始化当前数据 subInitListOption: [], // 提交成功后,初始化当前数据
submitOption: { // 提交的信息 submitOption: { // 提交的信息
...@@ -284,6 +290,7 @@ class EquipConsuPage extends Component { ...@@ -284,6 +290,7 @@ class EquipConsuPage extends Component {
OBS_MOBILE_DELIVERYMAN_DISPLAY: 0, OBS_MOBILE_DELIVERYMAN_DISPLAY: 0,
OBS_MOBILE_SUPPLYMENT_DISPLAY: 0, OBS_MOBILE_SUPPLYMENT_DISPLAY: 0,
OBS_MOBILE_LONG_COLLECT_DISPLAY: 0, OBS_MOBILE_LONG_COLLECT_DISPLAY: 0,
OBS_MOBILE_NEWSPAPER_DISPLAY: 0,
}, },
departments: [] departments: []
} }
...@@ -645,7 +652,8 @@ class EquipConsuPage extends Component { ...@@ -645,7 +652,8 @@ class EquipConsuPage extends Component {
if (((chIndex == 14 && sysValues.OBS_MOBILE_DEPARTMENT_DISPLAY > 2) if (((chIndex == 14 && sysValues.OBS_MOBILE_DEPARTMENT_DISPLAY > 2)
|| (chIndex == 15 && sysValues.OBS_MOBILE_BM_DISPLAY > 2) || (chIndex == 15 && sysValues.OBS_MOBILE_BM_DISPLAY > 2)
|| (chIndex == 16 && sysValues.OBS_MOBILE_SUR_FOLLOWER_DISPLAY > 2) || (chIndex == 16 && sysValues.OBS_MOBILE_SUR_FOLLOWER_DISPLAY > 2)
|| (chIndex == 17 && sysValues.OBS_MOBILE_DELIVERYMAN_DISPLAY > 2)) || (chIndex == 17 && sysValues.OBS_MOBILE_DELIVERYMAN_DISPLAY > 2)
|| (chIndex == 20 && sysValues.OBS_MOBILE_NEWSPAPER_DISPLAY > 2))
&& !listOptionData[chIndex].value) { && !listOptionData[chIndex].value) {
tempTit = listOptionData[chIndex].title tempTit = listOptionData[chIndex].title
tempStatus = true tempStatus = true
...@@ -992,6 +1000,31 @@ class EquipConsuPage extends Component { ...@@ -992,6 +1000,31 @@ class EquipConsuPage extends Component {
}) })
} }
/**
* 报台单点击
* @returns
*/
handleNewsPaperCheck() {
const { listOptionData } = this.state
if (!this.judgeOrgIsNull()) return
this.props.navigation.navigate('OperationReport', {
title: '选择报台单',
orgCode: listOptionData[1].value,
action: 'select',
callback: order => {
listOptionData[20].value = order.id
listOptionData[20].name = order.order_number
if (isNotBlank(order.surgery_date)) {
listOptionData[8].value = order.surgery_date
listOptionData[8].name = moment(order.surgery_date).format('YYYY-MM-DD HH:mm')
listOptionData[8].dateValue = moment(order.surgery_date).format('YYYY-MM-DD HH:mm')
}
this.setState({ listOptionData })
},
})
}
// 客户名称 点击 // 客户名称 点击
handleCustomerCheck(curData) { handleCustomerCheck(curData) {
let that = this let that = this
...@@ -1526,6 +1559,7 @@ class EquipConsuPage extends Component { ...@@ -1526,6 +1559,7 @@ class EquipConsuPage extends Component {
sysValues.OBS_MOBILE_SUPPLYMENT_DISPLAY > 0 && (tempSubOption.supplement_flag = state.listOptionData[18].value) sysValues.OBS_MOBILE_SUPPLYMENT_DISPLAY > 0 && (tempSubOption.supplement_flag = state.listOptionData[18].value)
sysValues.OBS_MOBILE_LONG_COLLECT_DISPLAY > 0 && (tempSubOption.is_long_collected = state.listOptionData[19].value) sysValues.OBS_MOBILE_LONG_COLLECT_DISPLAY > 0 && (tempSubOption.is_long_collected = state.listOptionData[19].value)
sysValues.OBS_MOBILE_NEWSPAPER_DISPLAY > 0 && (tempSubOption.newspaper_order_id = state.listOptionData[20].value)
let params = { let params = {
access_token: props.token, access_token: props.token,
data: { ...tempSubOption } data: { ...tempSubOption }
...@@ -1774,7 +1808,17 @@ class EquipConsuPage extends Component { ...@@ -1774,7 +1808,17 @@ class EquipConsuPage extends Component {
/> />
) )
} }
{sysValues.OBS_MOBILE_NEWSPAPER_DISPLAY > 1 && (
<PageListArrow
listActOpa={0.8}
listHasAster={sysValues.OBS_MOBILE_NEWSPAPER_DISPLAY > 2}
listItem={listOptionData[20]}
listName={'name'}
listTitle={'title'}
listCallBack={this.handleNewsPaperCheck.bind(this)}
listHasArrow={true}
/>
)}
<PageListArrow <PageListArrow
listActOpa={.8} listActOpa={.8}
listHasAster={true} listHasAster={true}
......
...@@ -266,6 +266,12 @@ class SelfOrderPage extends Component { ...@@ -266,6 +266,12 @@ class SelfOrderPage extends Component {
value: 'N', value: 'N',
isRedio: 'N', // 单选 isRedio: 'N', // 单选
}, },
{
id: '27',
title: '报台单',
name: '请选择',
value: '',
},
], ],
subInitListOption: [], // 存储最初数据 subInitListOption: [], // 存储最初数据
submitOption: { submitOption: {
...@@ -333,6 +339,7 @@ class SelfOrderPage extends Component { ...@@ -333,6 +339,7 @@ class SelfOrderPage extends Component {
OBS_MOBILE_BOR_WARE_REQUIRED: 0, OBS_MOBILE_BOR_WARE_REQUIRED: 0,
OBS_MOBILE_SUPPLYMENT_DISPLAY: 0, OBS_MOBILE_SUPPLYMENT_DISPLAY: 0,
OBS_MOBILE_LONG_COLLECT_DISPLAY: 0, OBS_MOBILE_LONG_COLLECT_DISPLAY: 0,
OBS_MOBILE_NEWSPAPER_DISPLAY: 0,
}, },
departments: [], departments: [],
surgery_types: [], surgery_types: [],
...@@ -693,7 +700,8 @@ class SelfOrderPage extends Component { ...@@ -693,7 +700,8 @@ class SelfOrderPage extends Component {
(chIndex == 16 && sysValues.OBS_MOBILE_SUR_FOLLOWER_DISPLAY > 2) || (chIndex == 16 && sysValues.OBS_MOBILE_SUR_FOLLOWER_DISPLAY > 2) ||
(chIndex == 17 && sysValues.OBS_MOBILE_DELIVERYMAN_DISPLAY > 2) || (chIndex == 17 && sysValues.OBS_MOBILE_DELIVERYMAN_DISPLAY > 2) ||
(chIndex == 18 && sysValues.OBS_MOBILE_BOR_WARE_REQUIRED > 2) || (chIndex == 18 && sysValues.OBS_MOBILE_BOR_WARE_REQUIRED > 2) ||
(chIndex == 19 && sysProfiles.SUR_MOBILE_INV_PRODUCT_LINE_CATEGORY_FLAG > 2)) && (chIndex == 19 && sysProfiles.SUR_MOBILE_INV_PRODUCT_LINE_CATEGORY_FLAG > 2) &&
(chIndex == 27 && sysProfiles.OBS_MOBILE_NEWSPAPER_DISPLAY > 2)) &&
!listOptionData[chIndex].value !listOptionData[chIndex].value
) { ) {
tempTit = listOptionData[chIndex].title tempTit = listOptionData[chIndex].title
...@@ -1055,7 +1063,7 @@ class SelfOrderPage extends Component { ...@@ -1055,7 +1063,7 @@ class SelfOrderPage extends Component {
) )
} }
// 贵州需要不显示组织, 所以只能每个用户只能授权1个组织 // 贵州需要不显示组织, 所以只能每个用户只能授权1个组织
const isShowOrg = R.compose(R.equals('Y'), R.prop('OBS_SHOW_ORG_FLAG'))(this.props.sysProfiles) const isShowOrg = R.compose(R.equals('Y'), R.prop('OBS_SHOW_ORG_FLAG'))(this.props.sysProfiles)
if (!isShowOrg && filterOpt.length > 1) { if (!isShowOrg && filterOpt.length > 1) {
show(`请先选择组织`) show(`请先选择组织`)
...@@ -1106,6 +1114,33 @@ class SelfOrderPage extends Component { ...@@ -1106,6 +1114,33 @@ class SelfOrderPage extends Component {
}) })
} }
/**
* 报台单点击
* @returns
*/
handleNewsPaperCheck() {
const { listOptionData } = this.state
if (!this.judgeOrgIsNull()) return
this.props.navigation.navigate('OperationReport', {
title: '选择报台单',
orgCode: listOptionData[1].value,
action: 'select',
callback: order => {
listOptionData[27].value = order.id
listOptionData[27].name = order.order_number
listOptionData[5].value = order.doctor_name
listOptionData[5].name = order.doctor_name
if (isNotBlank(order.surgery_date)) {
listOptionData[6].value = order.surgery_date
listOptionData[6].name = moment(order.surgery_date).format('YYYY-MM-DD HH:mm')
listOptionData[6].dateValue = moment(order.surgery_date).format('YYYY-MM-DD HH:mm')
}
this.setState({ listOptionData })
},
})
}
// 客户名称 点击 // 客户名称 点击
handleCustomerCheck(curData) { handleCustomerCheck(curData) {
let that = this let that = this
...@@ -1920,6 +1955,7 @@ class SelfOrderPage extends Component { ...@@ -1920,6 +1955,7 @@ class SelfOrderPage extends Component {
sysValues.OBS_MOBILE_SUR_FOLLOWER_DISPLAY > 0 && sysValues.OBS_MOBILE_SUR_FOLLOWER_DISPLAY > 0 &&
(tempSubOption.surgery_follower_code = state.listOptionData[16].value) (tempSubOption.surgery_follower_code = state.listOptionData[16].value)
sysValues.OBS_MOBILE_DELIVERYMAN_DISPLAY > 0 && (tempSubOption.deliveryman_code = state.listOptionData[17].value) sysValues.OBS_MOBILE_DELIVERYMAN_DISPLAY > 0 && (tempSubOption.deliveryman_code = state.listOptionData[17].value)
sysValues.OBS_MOBILE_NEWSPAPER_DISPLAY > 0 && (tempSubOption.newspaper_order_id = state.listOptionData[27].value)
const patientNameProfile = this.decodeDisplayLendProfile('PATIENT_NAME_DISPLAY') const patientNameProfile = this.decodeDisplayLendProfile('PATIENT_NAME_DISPLAY')
const patientGenderProfile = this.decodeDisplayLendProfile('PATIENT_GENDER_DISPLAY') const patientGenderProfile = this.decodeDisplayLendProfile('PATIENT_GENDER_DISPLAY')
...@@ -2370,6 +2406,18 @@ class SelfOrderPage extends Component { ...@@ -2370,6 +2406,18 @@ class SelfOrderPage extends Component {
listHasArrow={true} listHasArrow={true}
/> />
)} )}
{sysValues.OBS_MOBILE_NEWSPAPER_DISPLAY > 1 && (
<PageListArrow
listActOpa={0.8}
listHasAster={sysValues.OBS_MOBILE_NEWSPAPER_DISPLAY > 2}
listItem={listOptionData[27]}
listName={'name'}
listTitle={'title'}
listCallBack={this.handleNewsPaperCheck.bind(this)}
listHasArrow={true}
/>
)}
<PageListArrow <PageListArrow
listActOpa={0.8} listActOpa={0.8}
listHasAster={true} listHasAster={true}
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* @FilePath: /BoneHouse_Business_APP/src/pages/operation_report/index.tsx * @FilePath: /BoneHouse_Business_APP/src/pages/operation_report/index.tsx
* @Author: PEII * @Author: PEII
* @Date: 2022-11-25 14:28:21 * @Date: 2022-11-25 14:28:21
* @LastEditTime: 2022-11-29 12:02:36 * @LastEditTime: 2023-02-08 15:00:56
* @LastEditors: PEII * @LastEditors: PEII
* @Vision: 1.0 * @Vision: 1.0
* @Description: * @Description:
...@@ -61,8 +61,15 @@ class OperationReport extends React.Component<IProps, IState> { ...@@ -61,8 +61,15 @@ class OperationReport extends React.Component<IProps, IState> {
const { searchText, pageNum, pageSize, loading } = this.state const { searchText, pageNum, pageSize, loading } = this.state
if (loading) return if (loading) return
const aciton = this.props.navigation.getParam('action', 'list')
this.setState({ loading: true }) this.setState({ loading: true })
const res = await this.props.getOrders({ pageNum, pageSize, orderNumber: searchText }) const params = { pageNum, pageSize, orderNumber: searchText }
if (aciton === 'select') {
params.status = 'Y'
}
const res = await this.props.getOrders(params)
const isEnd = R.compose(R.gt(pageSize), R.length, R.propOr([], 'payload'))(res) const isEnd = R.compose(R.gt(pageSize), R.length, R.propOr([], 'payload'))(res)
this.setState({ refreshing: false, loading: false, isEnd }) this.setState({ refreshing: false, loading: false, isEnd })
} }
...@@ -110,9 +117,10 @@ class OperationReport extends React.Component<IProps, IState> { ...@@ -110,9 +117,10 @@ class OperationReport extends React.Component<IProps, IState> {
} }
render(): React.ReactNode { render(): React.ReactNode {
const title = '报台单'
let { navigation, orders } = this.props let { navigation, orders } = this.props
const { refreshing } = this.state const { refreshing } = this.state
const title = navigation.getParam('title', '报台单')
const action = navigation.getParam('action', 'list')
return ( return (
<View style={g(styles, 'container')}> <View style={g(styles, 'container')}>
...@@ -156,12 +164,19 @@ class OperationReport extends React.Component<IProps, IState> { ...@@ -156,12 +164,19 @@ class OperationReport extends React.Component<IProps, IState> {
{...props} {...props}
list={orders} list={orders}
updateStatus={this.updateStatusHandler.bind(this)} updateStatus={this.updateStatusHandler.bind(this)}
action={action}
onPressHandler={() => { onPressHandler={() => {
this.props.navigation.navigate('AddOperationReport', { if (action === 'list') {
isEdit: true, this.props.navigation.navigate('AddOperationReport', {
order: props.item, isEdit: true,
forceUpdate: () => this.forceUpdate(), order: props.item,
}) forceUpdate: () => this.forceUpdate(),
})
} else {
const callback = this.props.navigation.state.params.callback
callback && callback(props.item)
navigation.goBack()
}
}} }}
/> />
)} )}
...@@ -180,7 +195,7 @@ const statusText = R.cond([ ...@@ -180,7 +195,7 @@ const statusText = R.cond([
[R.T, R.always('开启')], [R.T, R.always('开启')],
]) ])
const Item = ({ item, index, updateStatus, onPressHandler, list }: { item: IReportOrder; index: number }) => { const Item = ({ item, index, updateStatus, onPressHandler, list, action }: { item: IReportOrder; index: number }) => {
return ( return (
<View style={g(styles, { item: true, 'item-last': R.length(list) - 1 === index })}> <View style={g(styles, { item: true, 'item-last': R.length(list) - 1 === index })}>
<TouchableOpacity style={g(styles, 'item-info')} activeOpacity={0.8} onPress={() => onPressHandler(item)}> <TouchableOpacity style={g(styles, 'item-info')} activeOpacity={0.8} onPress={() => onPressHandler(item)}>
...@@ -207,17 +222,19 @@ const Item = ({ item, index, updateStatus, onPressHandler, list }: { item: IRepo ...@@ -207,17 +222,19 @@ const Item = ({ item, index, updateStatus, onPressHandler, list }: { item: IRepo
<Text style={g(styles, 'item-info-val')}>{item.surgery_desc}</Text> <Text style={g(styles, 'item-info-val')}>{item.surgery_desc}</Text>
</View> </View>
</TouchableOpacity> </TouchableOpacity>
<View style={g(styles, 'item-action')}> {action === 'list' && (
<View style={g(styles, { pill: true, 'pill-danger': item.status === 'N' })}> <View style={g(styles, 'item-action')}>
<Text style={g(styles, 'pill-text')}>{statusText(item.status)}</Text> <View style={g(styles, { pill: true, 'pill-danger': item.status === 'N' })}>
<Text style={g(styles, 'pill-text')}>{statusText(item.status)}</Text>
</View>
<TouchableOpacity
style={g(styles, 'item-btn')}
onPress={() => updateStatus(item, item.status === 'N' ? 'Y' : 'N')}
>
<Text style={g(styles, 'item-btn__text')}>{item.status === 'N' ? '开启' : '关闭'}</Text>
</TouchableOpacity>
</View> </View>
<TouchableOpacity )}
style={g(styles, 'item-btn')}
onPress={() => updateStatus(item, item.status === 'N' ? 'Y' : 'N')}
>
<Text style={g(styles, 'item-btn__text')}>{item.status === 'N' ? '开启' : '关闭'}</Text>
</TouchableOpacity>
</View>
</View> </View>
) )
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment