You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

129 lines
3.9 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. <template>
  2. <div style="display: flex;">
  3. <div style="display: flex;flex-wrap: wrap;width:90%">
  4. <div class="block query">
  5. <span class="demonstration">登记日期</span>
  6. <el-date-picker
  7. v-model="patientRegister.query.dateRange"
  8. type="daterange"
  9. align="right"
  10. unlink-panels
  11. range-separator="至"
  12. start-placeholder="开始日期"
  13. end-placeholder="结束日期"
  14. :picker-options="pickerOptions" size="small" style="width:240px;">
  15. </el-date-picker>
  16. </div>
  17. <div class="query">
  18. <span>条码号</span>
  19. <el-input placeholder="条码号" v-model="patientRegister.query.patientRegisterNo" size="small" clearable style="width:150px;"/>
  20. </div>
  21. <div class="query">
  22. <span>档案号</span>
  23. <el-input placeholder="档案号" v-model="patientRegister.query.patientNo" size="small" clearable style="width:135px;"/>
  24. </div>
  25. <div class="query">
  26. <span>姓名</span>
  27. <el-input placeholder="姓名" v-model="patientRegister.query.patientName" size="small" clearable style="width:135px;"/>
  28. </div>
  29. <div class="query">
  30. <span>性别</span>
  31. <el-select v-model="patientRegister.query.sex" placeholder="请选择" style="width:80px;">
  32. <el-option v-for="item in dict.sex" :key="item.id" :label="item.displayName" :value="item.id">
  33. </el-option>
  34. </el-select>
  35. </div>
  36. <div class="query">
  37. <span>身份证号</span>
  38. <el-input placeholder="身份证号" v-model="patientRegister.query.idCardNo" size="small" clearable style="width:200px;"/>
  39. </div>
  40. <div class="query">
  41. <span>单位信息</span>
  42. <el-cascader v-model="patientRegister.query.customerOrgId" :options="patientRegister.customerOrgTreeAll" :props="{ checkStrictly: true ,expandTrigger: 'hover',...customerOrg.treeprops}"
  43. :show-all-levels="false" disabled>
  44. </el-cascader>
  45. </div>
  46. </div>
  47. <!-- 按钮区域 -->
  48. <div style="margin-left: 10px; margin-top: 5px;">
  49. <div style="margin-top: 5px">
  50. <el-button type="primary" @click="btnQuery">查询</el-button>
  51. </div>
  52. <div style="margin-top: 5px">
  53. <el-button type="danger" @click="readIdCard">读身份证</el-button>
  54. </div>
  55. </div>
  56. </div>
  57. </template>
  58. <script>
  59. import { mapState } from "vuex";
  60. import { getapi, postapi, putapi, deletapi } from "@/api/api";
  61. export default {
  62. components: {},
  63. data() {
  64. return {
  65. dialogVisible:false,
  66. pickerOptions: {
  67. shortcuts: [{
  68. text: '最近一周',
  69. onClick(picker) {
  70. const end = new Date();
  71. const start = new Date();
  72. start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
  73. picker.$emit('pick', [start, end]);
  74. }
  75. }, {
  76. text: '最近一个月',
  77. onClick(picker) {
  78. const end = new Date();
  79. const start = new Date();
  80. start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
  81. picker.$emit('pick', [start, end]);
  82. }
  83. }, {
  84. text: '最近三个月',
  85. onClick(picker) {
  86. const end = new Date();
  87. const start = new Date();
  88. start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
  89. picker.$emit('pick', [start, end]);
  90. }
  91. }]
  92. },
  93. };
  94. },
  95. created() {},
  96. //挂载完成
  97. mounted() {
  98. },
  99. computed: {
  100. ...mapState(['dict','patientRegister','customerOrg']),
  101. },
  102. methods: {
  103. //查询
  104. btnQuery() {
  105. alert("查询")
  106. console.log('this.patientRegister.query.dateRange',this.patientRegister.query.dateRange)
  107. },
  108. //读身份证
  109. readIdCard() {
  110. alert("读身份证")
  111. },
  112. },
  113. };
  114. </script>
  115. <style scoped>
  116. .query{
  117. margin-left:10px;
  118. }
  119. </style>