Commit d4018b0a by peii

下单添加报台单配置

parent a20d0623
......@@ -217,6 +217,12 @@ class EquipConsuPage extends Component {
value: 'N',
isRedio: 'N', // 单选
},
{
id: '20',
title: '报台单',
name: '请选择',
value: '',
}
],
subInitListOption: [], // 提交成功后,初始化当前数据
submitOption: { // 提交的信息
......@@ -284,6 +290,7 @@ class EquipConsuPage extends Component {
OBS_MOBILE_DELIVERYMAN_DISPLAY: 0,
OBS_MOBILE_SUPPLYMENT_DISPLAY: 0,
OBS_MOBILE_LONG_COLLECT_DISPLAY: 0,
OBS_MOBILE_NEWSPAPER_DISPLAY: 0,
},
departments: []
}
......@@ -645,7 +652,8 @@ class EquipConsuPage extends Component {
if (((chIndex == 14 && sysValues.OBS_MOBILE_DEPARTMENT_DISPLAY > 2)
|| (chIndex == 15 && sysValues.OBS_MOBILE_BM_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) {
tempTit = listOptionData[chIndex].title
tempStatus = true
......@@ -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) {
let that = this
......@@ -1526,6 +1559,7 @@ class EquipConsuPage extends Component {
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_NEWSPAPER_DISPLAY > 0 && (tempSubOption.newspaper_order_id = state.listOptionData[20].value)
let params = {
access_token: props.token,
data: { ...tempSubOption }
......@@ -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
listActOpa={.8}
listHasAster={true}
......
......@@ -266,6 +266,12 @@ class SelfOrderPage extends Component {
value: 'N',
isRedio: 'N', // 单选
},
{
id: '27',
title: '报台单',
name: '请选择',
value: '',
},
],
subInitListOption: [], // 存储最初数据
submitOption: {
......@@ -333,6 +339,7 @@ class SelfOrderPage extends Component {
OBS_MOBILE_BOR_WARE_REQUIRED: 0,
OBS_MOBILE_SUPPLYMENT_DISPLAY: 0,
OBS_MOBILE_LONG_COLLECT_DISPLAY: 0,
OBS_MOBILE_NEWSPAPER_DISPLAY: 0,
},
departments: [],
surgery_types: [],
......@@ -693,7 +700,8 @@ class SelfOrderPage extends Component {
(chIndex == 16 && sysValues.OBS_MOBILE_SUR_FOLLOWER_DISPLAY > 2) ||
(chIndex == 17 && sysValues.OBS_MOBILE_DELIVERYMAN_DISPLAY > 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
) {
tempTit = listOptionData[chIndex].title
......@@ -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)
if (!isShowOrg && filterOpt.length > 1) {
show(`请先选择组织`)
......@@ -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) {
let that = this
......@@ -1920,6 +1955,7 @@ class SelfOrderPage extends Component {
sysValues.OBS_MOBILE_SUR_FOLLOWER_DISPLAY > 0 &&
(tempSubOption.surgery_follower_code = state.listOptionData[16].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 patientGenderProfile = this.decodeDisplayLendProfile('PATIENT_GENDER_DISPLAY')
......@@ -2370,6 +2406,18 @@ class SelfOrderPage extends Component {
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
listActOpa={0.8}
listHasAster={true}
......
......@@ -2,7 +2,7 @@
* @FilePath: /BoneHouse_Business_APP/src/pages/operation_report/index.tsx
* @Author: PEII
* @Date: 2022-11-25 14:28:21
* @LastEditTime: 2022-11-29 12:02:36
* @LastEditTime: 2023-02-08 15:00:56
* @LastEditors: PEII
* @Vision: 1.0
* @Description:
......@@ -61,8 +61,15 @@ class OperationReport extends React.Component<IProps, IState> {
const { searchText, pageNum, pageSize, loading } = this.state
if (loading) return
const aciton = this.props.navigation.getParam('action', 'list')
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)
this.setState({ refreshing: false, loading: false, isEnd })
}
......@@ -110,9 +117,10 @@ class OperationReport extends React.Component<IProps, IState> {
}
render(): React.ReactNode {
const title = '报台单'
let { navigation, orders } = this.props
const { refreshing } = this.state
const title = navigation.getParam('title', '报台单')
const action = navigation.getParam('action', 'list')
return (
<View style={g(styles, 'container')}>
......@@ -156,12 +164,19 @@ class OperationReport extends React.Component<IProps, IState> {
{...props}
list={orders}
updateStatus={this.updateStatusHandler.bind(this)}
action={action}
onPressHandler={() => {
this.props.navigation.navigate('AddOperationReport', {
isEdit: true,
order: props.item,
forceUpdate: () => this.forceUpdate(),
})
if (action === 'list') {
this.props.navigation.navigate('AddOperationReport', {
isEdit: true,
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([
[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 (
<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)}>
......@@ -207,17 +222,19 @@ const Item = ({ item, index, updateStatus, onPressHandler, list }: { item: IRepo
<Text style={g(styles, 'item-info-val')}>{item.surgery_desc}</Text>
</View>
</TouchableOpacity>
<View style={g(styles, 'item-action')}>
<View style={g(styles, { pill: true, 'pill-danger': item.status === 'N' })}>
<Text style={g(styles, 'pill-text')}>{statusText(item.status)}</Text>
{action === 'list' && (
<View style={g(styles, 'item-action')}>
<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>
<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>
)
}
......
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