xiongxing 2 недель назад
Родитель
Сommit
bb0ac2bfb7
1 измененных файлов с 65 добавлено и 30 удалено
  1. 65 30
      src/views/elderly/fee/daily-fee/LXForm.vue

+ 65 - 30
src/views/elderly/fee/daily-fee/LXForm.vue

@@ -11,7 +11,12 @@
         <el-row>
         <el-row>
           <el-col :span="12" :xs="24">
           <el-col :span="12" :xs="24">
             <el-form-item label="长者姓名" prop="elderId">
             <el-form-item label="长者姓名" prop="elderId">
-              <selectElder v-model="dataForm.elderId" @elder="handleUpdateElder" :tId="dataForm.tenantId" inStatus=""/>
+              <selectElder
+                v-model="dataForm.elderId"
+                @elder="handleUpdateElder"
+                :tId="dataForm.tenantId"
+                inStatus=""
+              />
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
           <el-col :span="12" :xs="24">
           <el-col :span="12" :xs="24">
@@ -57,14 +62,21 @@
                 placeholder="请选择日期"
                 placeholder="请选择日期"
                 :style="{ width: '100%' }"
                 :style="{ width: '100%' }"
               />
               />
-<!--              <TgSelect v-model="dataForm.attributionBillTime" v-if="!isDetail">-->
-<!--                <el-option v-for="item in attributionBillTimeOption" :key="item" :value="item"/>-->
-<!--              </TgSelect>-->
+              <!--              <TgSelect v-model="dataForm.attributionBillTime" v-if="!isDetail">-->
+              <!--                <el-option v-for="item in attributionBillTimeOption" :key="item" :value="item"/>-->
+              <!--              </TgSelect>-->
               <span v-else>{{ dataForm.attributionBillTime }}</span>
               <span v-else>{{ dataForm.attributionBillTime }}</span>
             </el-form-item>
             </el-form-item>
           </el-col>
           </el-col>
         </el-row>
         </el-row>
-        <el-button v-if="!isDetail" type="primary" @click="handleAdd" link class="mb5" :disabled="!dataForm.attributionBillTime">
+        <el-button
+          v-if="!isDetail"
+          type="primary"
+          @click="handleAdd"
+          link
+          class="mb5"
+          :disabled="!dataForm.attributionBillTime"
+        >
           <Icon icon="ep:zoom-in" class="mr-5px" />添加明细
           <Icon icon="ep:zoom-in" class="mr-5px" />添加明细
         </el-button>
         </el-button>
         <el-table :data="dataForm.dailyExpenses" :header-cell-style="tableHeaderColor">
         <el-table :data="dataForm.dailyExpenses" :header-cell-style="tableHeaderColor">
@@ -100,7 +112,7 @@
           <el-table-column prop="itemName" label="收费项目" :width="isDetail ? 150 : 180">
           <el-table-column prop="itemName" label="收费项目" :width="isDetail ? 150 : 180">
             <template #default="scope">
             <template #default="scope">
               <TgSelect
               <TgSelect
-                v-if="![4,9].includes(scope.row.type)"
+                v-if="![4, 9].includes(scope.row.type)"
                 v-model="scope.row.itemId"
                 v-model="scope.row.itemId"
                 @change="handleChangeItemName(scope.row)"
                 @change="handleChangeItemName(scope.row)"
                 :list="scope.row.itemList"
                 :list="scope.row.itemList"
@@ -110,7 +122,7 @@
                 <el-option
                 <el-option
                   v-for="(n, i) in scope.row.itemList"
                   v-for="(n, i) in scope.row.itemList"
                   :key="i"
                   :key="i"
-                  :label="n.chargeName + '(' + n.price +  '元)'"
+                  :label="n.chargeName + '(' + n.price + '元)'"
                   :value="n.id"
                   :value="n.id"
                 />
                 />
               </TgSelect>
               </TgSelect>
@@ -119,7 +131,7 @@
           </el-table-column>
           </el-table-column>
           <el-table-column prop="price" label="单价(元)" width="100">
           <el-table-column prop="price" label="单价(元)" width="100">
             <template #default="scope">
             <template #default="scope">
-              <TgInputNumber v-model="scope.row.price" @change="handleChangeNum(scope.row)"/>
+              <TgInputNumber v-model="scope.row.price" @change="handleChangeNum(scope.row)" />
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column prop="count" label="数量" width="100">
           <el-table-column prop="count" label="数量" width="100">
@@ -131,10 +143,14 @@
               />
               />
             </template>
             </template>
           </el-table-column>
           </el-table-column>
-          <el-table-column prop="amount" label="费用(元)" :width="!settingStore.getRceivable ? 120 : 120">
+          <el-table-column
+            prop="amount"
+            label="费用(元)"
+            :width="!settingStore.getRceivable ? 120 : 120"
+          >
             <template #default="scope">
             <template #default="scope">
               {{ formatNum(scope.row.amount) }}
               {{ formatNum(scope.row.amount) }}
-<!--              <span class="underline" v-if="!settingStore.getRceivable">{{ formatNum(scope.row.count * scope.row.price) }}</span>-->
+              <!--              <span class="underline" v-if="!settingStore.getRceivable">{{ formatNum(scope.row.count * scope.row.price) }}</span>-->
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <!-- <el-table-column prop="createdTime" label="费用产生时间" width="150">
           <!-- <el-table-column prop="createdTime" label="费用产生时间" width="150">
@@ -144,23 +160,38 @@
           </el-table-column> -->
           </el-table-column> -->
           <el-table-column prop="startDate" label="开始日期" width="160">
           <el-table-column prop="startDate" label="开始日期" width="160">
             <template #default="scope">
             <template #default="scope">
-              <TgDatePicker v-model="scope.row.startDate" type="date" :clearable="false"  :editable="false"/>
+              <TgDatePicker
+                v-model="scope.row.startDate"
+                type="date"
+                :clearable="false"
+                :editable="false"
+              />
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column prop="endDate" label="结束日期" width="160">
           <el-table-column prop="endDate" label="结束日期" width="160">
             <template #default="scope">
             <template #default="scope">
-              <TgDatePicker v-model="scope.row.endDate" type="date" :clearable="false"  :editable="false"/>
+              <TgDatePicker
+                v-model="scope.row.endDate"
+                type="date"
+                :clearable="false"
+                :editable="false"
+              />
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column prop="accountingTime" label="记账时间" width="210">
           <el-table-column prop="accountingTime" label="记账时间" width="210">
             <template #default="scope">
             <template #default="scope">
-              <TgDatePicker   v-model="scope.row.accountingTime" type="datetime" :clearable="false"  :editable="false"/>
-<!--              {{ formatDate(scope.row.accountingTime) }}-->
+              <TgDatePicker
+                v-model="scope.row.accountingTime"
+                type="datetime"
+                :clearable="false"
+                :editable="false"
+              />
+              <!--              {{ formatDate(scope.row.accountingTime) }}-->
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column prop="remarks" label="备注" :width="isDetail ? 300 : 180">
           <el-table-column prop="remarks" label="备注" :width="isDetail ? 300 : 180">
             <template #default="scope">
             <template #default="scope">
-              <TgTextarea v-model="scope.row.remarks" v-if="!isDetail"/>
+              <TgTextarea v-model="scope.row.remarks" v-if="!isDetail" />
               <span v-else>{{ scope.row.remarks }}</span>
               <span v-else>{{ scope.row.remarks }}</span>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
@@ -169,7 +200,9 @@
     </div>
     </div>
     <template #footer>
     <template #footer>
       <el-button @click="handleClosed">取消</el-button>
       <el-button @click="handleClosed">取消</el-button>
-      <el-button v-loading="formLoading" type="primary" @click="submitForm" v-if="!isDetail">确定</el-button>
+      <el-button v-loading="formLoading" type="primary" @click="submitForm" v-if="!isDetail"
+        >确定</el-button
+      >
     </template>
     </template>
   </Dialog>
   </Dialog>
 </template>
 </template>
@@ -229,7 +262,7 @@ const state = reactive<DailyFeeFormType>({
         message: '项目类别不能为空',
         message: '项目类别不能为空',
         trigger: 'blur'
         trigger: 'blur'
       }
       }
-    ],
+    ]
   }
   }
 })
 })
 const { dataForm, dataRule } = toRefs(state)
 const { dataForm, dataRule } = toRefs(state)
@@ -249,7 +282,7 @@ const open = async (tId, id, detail, type) => {
   toggleType.value = type
   toggleType.value = type
   dataForm.value.tenantId = tId
   dataForm.value.tenantId = tId
   //if (type){
   //if (type){
-    dataForm.value.attributionBillTime = formatDate(new Date(), 'YYYY-MM')
+  dataForm.value.attributionBillTime = formatDate(new Date(), 'YYYY-MM')
   //}
   //}
   if (id) {
   if (id) {
     try {
     try {
@@ -291,13 +324,13 @@ const formRef = ref()
 /** 提交表单 */
 /** 提交表单 */
 const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
 const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调
 const submitForm = async () => {
 const submitForm = async () => {
-  if(formLoading.value){
+  if (formLoading.value) {
     return
     return
   }
   }
   formLoading.value = true
   formLoading.value = true
   // 提交请求
   // 提交请求
   try {
   try {
-    if(!dataForm.value.dailyExpenses.length){
+    if (!dataForm.value.dailyExpenses.length) {
       message.error('至少添加一条数据')
       message.error('至少添加一条数据')
       return
       return
     }
     }
@@ -308,8 +341,8 @@ const submitForm = async () => {
 
 
     const params = { ...JSON.parse(JSON.stringify(dataForm.value)) }
     const params = { ...JSON.parse(JSON.stringify(dataForm.value)) }
     params.dailyExpenses.map((item) => {
     params.dailyExpenses.map((item) => {
-      if(item.itemCategory.length - 2 > 0){
-        for(let i = 0; i <= item.itemCategory.length - 2; i++){
+      if (item.itemCategory.length - 2 > 0) {
+        for (let i = 0; i <= item.itemCategory.length - 2; i++) {
           item.itemCategory.shift()
           item.itemCategory.shift()
         }
         }
       }
       }
@@ -320,17 +353,18 @@ const submitForm = async () => {
     params.isCashSettlementFee = 1
     params.isCashSettlementFee = 1
     const res = !toggleType.value ? await editDailyExpenses(params) : await addDailyExpenses(params)
     const res = !toggleType.value ? await editDailyExpenses(params) : await addDailyExpenses(params)
     if (res) {
     if (res) {
-      message.success(`新增成功!需要重新生成一次‘${dataForm.value.elderName}’${dataForm.value.attributionBillTime.toString().substring(5,7)}月份的账单`)
+      // message.success(`新增成功!需要重新生成一次‘${dataForm.value.elderName}’${dataForm.value.attributionBillTime.toString().substring(5,7)}月份的账单`)
+      message.success(`新增成功!`)
       handleClosed()
       handleClosed()
       // 发送操作成功的事件
       // 发送操作成功的事件
       emit('success')
       emit('success')
     }
     }
-  }catch (e){
+  } catch (e) {
     message.error('请填写完整信息后再确定!')
     message.error('请填写完整信息后再确定!')
   } finally {
   } finally {
-    setTimeout(()=>{
+    setTimeout(() => {
       formLoading.value = false
       formLoading.value = false
-    },500)
+    }, 500)
   }
   }
 }
 }
 // 护理等级列表
 // 护理等级列表
@@ -434,7 +468,7 @@ const handleChangeNum = (row) => {
   // }else if(settingStore.getFixNum){
   // }else if(settingStore.getFixNum){
   //   row.amount = row.count * fixedNum(row.price)
   //   row.amount = row.count * fixedNum(row.price)
   // }else{
   // }else{
-    row.amount = row.count * row.price
+  row.amount = row.count * row.price
   //}
   //}
 }
 }
 
 
@@ -452,9 +486,10 @@ const handleUpdateElder = async (item) => {
   dataForm.value.bedName = item.bedName
   dataForm.value.bedName = item.bedName
   dataForm.value.elderName = item.elderName
   dataForm.value.elderName = item.elderName
   dataForm.value.nursingLevel = item.nurseLevelId
   dataForm.value.nursingLevel = item.nurseLevelId
-  if(!toggleType.value){ // 补录
+  if (!toggleType.value) {
+    // 补录
     const res = await getBillingMonthByElderId(item.id)
     const res = await getBillingMonthByElderId(item.id)
-   attributionBillTimeOption.value = res
+    attributionBillTimeOption.value = res
   }
   }
 }
 }
 
 
@@ -469,7 +504,7 @@ const handleUpdateElder = async (item) => {
 .w80 {
 .w80 {
   width: 250px !important;
   width: 250px !important;
 }
 }
-.underline{
+.underline {
   margin-left: 0.5rem;
   margin-left: 0.5rem;
   padding: 5px;
   padding: 5px;
   background-color: #f2f2f2;
   background-color: #f2f2f2;