Browse Source

优化结算单上传申请的提示。

xiaochan 3 years ago
parent
commit
fa9cbef459

+ 6 - 4
src/components/si-sheet-upload/BeiZhu.vue

@@ -1,20 +1,22 @@
 <template>
   <el-dialog v-model="beiZhuDialog" title="备注" @closed="emit('close')">
-    <el-input type="textarea" v-model="beiZhu"></el-input>
+    <el-input v-model="beiZhu" type="textarea"></el-input>
     <el-divider></el-divider>
     <el-button type="success" @click="baoCunClick">保存</el-button>
   </el-dialog>
 </template>
 
-<script setup name="BeiZhu">
-import { ref } from 'vue'
-import { setlModifyReq } from '../../api/medical-insurance/si-setl-upload'
+<script name="BeiZhu" setup>
+import {ref} from 'vue'
+import {setlModifyReq} from '@/api/medical-insurance/si-setl-upload'
 
 const emit = defineEmits(['baoCunHouGuanBi', 'close'])
 const props = defineProps({
   data: {},
 })
 
+console.log(props.data.dataChanges)
+
 const beiZhuDialog = $ref(true)
 const beiZhu = ref('')
 

+ 62 - 18
src/components/si-sheet-upload/JieSuanDanXiangQing.vue

@@ -635,11 +635,15 @@ const baoCunHouGuanBi = () => {
   ctx.emit('shua-xin')
 }
 const baoCunXiuGai = () => {
-  let oldData = oprninfo.value.concat(diseinfo.value)
-  let newData = oldOprninfo.concat(oldDiseinfo)
-  if (ArrayIsEqual(oldData, newData)) {
-    return ElMessage.error('数据无变化请勿点击。')
+  let newData = {
+    decType: setlinfo.value.decType,
+    operation: setlinfo.value.operation,
+    diseinfo: diseinfo.value,
+    oprninfo: oprninfo.value
   }
+  // if (JSON.stringify(newData) === JSON.stringify(oldData)) {
+  //   return ElMessage.error("数据没有变化请勿点击。")
+  // }
   if (setlinfo.value.operation === '1' || setlinfo.value.operation === '2' || setlinfo.value.operation === '3') {
     if (listIsBlank(oprninfo.value)) {
       return ElMessage.error('选择治疗类型为手术的,至少要有一个手术。')
@@ -652,14 +656,57 @@ const baoCunXiuGai = () => {
   } else if (diseinfo.value.length > 27) {
     return ElMessage.error('诊断超过27个。')
   }
+  let changeData = ''
   let data = setlinfo.value
   data['opIdCode'] = code
   data['opIdName'] = name
+  if (newData.decType !== oldData.decType) {
+    changeData = `申报类型变动:原:【${getTreatmentName(oldData.decType)}】新:【${getTreatmentName(newData.decType)}】。`
+  }
+  if (newData.operation !== oldData.operation) {
+    changeData += `治疗方式变动:原:【${getDeclarationType(oldData.operation)}】新:【${getTreatmentName(newData.operation)}】。`
+  }
+  // 住院诊断信息
+  if (ArrayIsEqual(oldData.diseinfo, newData.diseinfo)) {
+    changeData += "【诊断有变动】"
+  }
+  // 手术有变动
+  if (ArrayIsEqual(oldData.oprninfo, newData.oprninfo)) {
+    changeData += "【手术有变动】"
+  }
+  data['dataChanges'] = changeData
   data.batjBa4 = oprninfo.value
   data.ybZyDisDiag = diseinfo.value
   baoCunXiuGaiData.value = data
   beiZhuRef.value = true
 }
+
+/**
+ * 获取治疗方式
+ * @param val 治疗方式code
+ * @returns {*}
+ */
+function getTreatmentName(val) {
+  for (let i = 0; i < operations.length; i++) {
+    if (operations[i].code === val) {
+      return operations[i].name
+    }
+  }
+  return "无"
+}
+
+/**
+ * 获取申报类型
+ */
+function getDeclarationType(val) {
+  for (let i = 0; i < decTypes.length; i++) {
+    if (decTypes[i].code === val) {
+      return decTypes[i].name
+    }
+  }
+  return "无"
+}
+
 /* 提交审核信息 */
 
 /* 查看审核信息 */
@@ -722,12 +769,12 @@ const shenHeTongGuoShangChuanClick = () => {
 }
 
 const shenHeBoHuiClick = () => {
-  ElMessageBox.prompt('请填写申请备注', '提示', {
+  ElMessageBox.prompt('驳回信息', '提示', {
     type: 'warning',
     confirmButtonText: '确定',
     cancelButtonText: '取消',
     inputPattern: /\S/,
-    inputErrorMessage: '审核备注不能为空且不得超过 100 字 (∩•̀ω•́)⊃-*⋆',
+    inputErrorMessage: '驳回信息不能为空且不得超过 100 字 (∩•̀ω•́)⊃-*⋆',
   })
       .then(({value}) => {
         if (value.length > 100) {
@@ -772,10 +819,8 @@ const feiYongDrawer = () => {
 }
 /* 获取患者各个科室的费用结束 */
 
-// 原来的诊断 用来判断是否数据有变化
-let oldDiseinfo = $ref([])
-// 原来的手术
-let oldOprninfo = $ref([])
+// 老数据的信息
+let oldData = $ref({});
 
 const init = () => {
   setlinfo.value = clone(props.data)
@@ -783,10 +828,6 @@ const init = () => {
   if (stringNotBlank(props.data.shenHeXinXi.id)) {
     diseinfo.value = clone(props.data.newYbZyDisDiag)
     oprninfo.value = clone(props.data.newBatjBa4)
-
-    oldDiseinfo = props.data.newYbZyDisDiag
-    oldOprninfo = props.data.newBatjBa4
-
     if (stringNotBlank(props.data.shenHeXinXi.reqRemark) && props.data.shenHeXinXi.auditFlag === 0) {
       setTimeout(() => {
         ElMessageBox.alert(props.data.shenHeXinXi.reqRemark, '申请备注', {
@@ -797,9 +838,6 @@ const init = () => {
   } else {
     diseinfo.value = clone(props.data.ybZyDisDiag)
     oprninfo.value = clone(props.data.batjBa4)
-
-    oldDiseinfo = props.data.ybZyDisDiag
-    oldOprninfo = props.data.batjBa4
   }
   //初始化拖拽表格
   if (diseinfo.value.length > 0) {
@@ -812,7 +850,13 @@ const init = () => {
       sortableOprninfo()
     }, 100)
   }
-
+  let data = {
+    decType: setlinfo.value.decType,
+    operation: setlinfo.value.operation,
+    diseinfo: diseinfo.value,
+    oprninfo: oprninfo.value
+  }
+  oldData = clone(data)
   diagnosticQuery.value.medType = props.data.medType
 }