ContentAreaMedium.tsx 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. import {
  2. Row,
  3. Col,
  4. Card,
  5. Select,
  6. InputNumber,
  7. Button,
  8. Switch,
  9. Tooltip,
  10. Divider,
  11. } from 'antd';
  12. import {
  13. DeleteOutlined,
  14. CopyOutlined,
  15. SaveOutlined,
  16. CameraOutlined,
  17. CloseOutlined,
  18. } from '@ant-design/icons';
  19. import { patientSizes } from '@/states/patientSize';
  20. import { WorkstationTypeLabels } from '@/states/workstation';
  21. import { FormattedMessage } from 'react-intl';
  22. const ContentAreaMedium = () => {
  23. return (
  24. <Row gutter={16}>
  25. <Col span={16}>
  26. <Card title="体位区">
  27. <Row gutter={16}>
  28. <Col span={24} style={{ height: 50 }}>
  29. <Card title="体位列表">体位列表</Card>
  30. </Col>
  31. <Col span={24}>
  32. <Card title="体位详情">体位详情</Card>
  33. </Col>
  34. </Row>
  35. </Card>
  36. </Col>
  37. <Col span={8}>
  38. <Card>
  39. <Row gutter={16} align="middle">
  40. <Col span={9}>
  41. <Select
  42. placeholder="选择体型"
  43. style={{ width: '100%', marginBottom: 8 }}
  44. >
  45. {Object.entries(patientSizes).map(
  46. ([key, value]: [string, string]) => (
  47. <Select.Option key={key} value={key}>
  48. {value}
  49. </Select.Option>
  50. )
  51. )}
  52. </Select>
  53. </Col>
  54. <Col span={15}>
  55. <Select
  56. placeholder="选择工作位"
  57. style={{ width: '100%', marginBottom: 8 }}
  58. >
  59. {Object.entries(WorkstationTypeLabels).map(
  60. ([key, value]: [string, string]) => (
  61. <Select.Option key={key} value={value}>
  62. <FormattedMessage
  63. id={`workstation.${key.toLowerCase()}`}
  64. />
  65. </Select.Option>
  66. )
  67. )}
  68. </Select>
  69. </Col>
  70. </Row>
  71. <div>
  72. <InputNumber
  73. placeholder="mA"
  74. style={{ width: '100%', marginBottom: 8 }}
  75. />
  76. <InputNumber
  77. placeholder="ms"
  78. style={{ width: '100%', marginBottom: 8 }}
  79. />
  80. <InputNumber
  81. placeholder="mAs"
  82. style={{ width: '100%', marginBottom: 8 }}
  83. />
  84. <InputNumber
  85. placeholder="KV"
  86. style={{ width: '100%', marginBottom: 8 }}
  87. />
  88. <InputNumber
  89. placeholder="density"
  90. style={{ width: '100%', marginBottom: 8 }}
  91. />
  92. </div>
  93. <Row gutter={16} align="middle">
  94. <Col span={12}>
  95. <Select placeholder="选择曝光模式" style={{ width: '100%' }}>
  96. <Select.Option value="mAs">mAs</Select.Option>
  97. <Select.Option value="time">time</Select.Option>
  98. </Select>
  99. </Col>
  100. <Col span={9}>
  101. <Switch
  102. checkedChildren="开启AEC"
  103. unCheckedChildren="关闭AEC"
  104. defaultChecked
  105. />
  106. </Col>
  107. <Col span={3}>
  108. <Button
  109. type="primary"
  110. style={{ width: '100%' }}
  111. icon={<DeleteOutlined />}
  112. title="重置参数"
  113. />
  114. </Col>
  115. </Row>
  116. <Divider />
  117. <Row gutter={16} align="middle">
  118. <Col span={4}>
  119. <Tooltip title="删除选择的体位">
  120. <Button
  121. type="primary"
  122. style={{ width: '100%' }}
  123. icon={<DeleteOutlined />}
  124. />
  125. </Tooltip>
  126. </Col>
  127. <Col span={4}>
  128. <Tooltip title="复制选择的体位">
  129. <Button
  130. type="primary"
  131. style={{ width: '100%' }}
  132. icon={<CopyOutlined />}
  133. />
  134. </Tooltip>
  135. </Col>
  136. <Col span={4}>
  137. <Tooltip title="保存参数">
  138. <Button
  139. type="primary"
  140. style={{ width: '100%' }}
  141. icon={<SaveOutlined />}
  142. />
  143. </Tooltip>
  144. </Col>
  145. <Col span={4}>
  146. <Tooltip title="打开/关闭摄像头">
  147. <Button
  148. type="primary"
  149. style={{ width: '100%' }}
  150. icon={<CameraOutlined />}
  151. />
  152. </Tooltip>
  153. </Col>
  154. <Col span={4}>
  155. <Tooltip title="拒绝">
  156. <Button
  157. type="primary"
  158. style={{ width: '100%' }}
  159. icon={<CloseOutlined />}
  160. />
  161. </Tooltip>
  162. </Col>
  163. </Row>
  164. </Card>
  165. </Col>
  166. </Row>
  167. );
  168. };
  169. export default ContentAreaMedium;