结算管理页面调整

This commit is contained in:
czx 2020-12-01 15:26:37 +08:00
parent d708c734df
commit af6b5546c9
5 changed files with 113 additions and 15 deletions

View File

@ -61,6 +61,7 @@ public class FtReportMealsDaoController extends BaseController {
@GetMapping("/listPayoff")
public TableDataInfo listPayoff(FtReportMealVo ftReportMealsDao) {
startPage();
List<FtReportMealVo> list = iFtReportMealsDaoService.listPayoff();
return getDataTable(list);
}

View File

@ -16,12 +16,12 @@ import java.util.List;
*/
@Repository
public interface FtReportMealVoMapper extends BaseMapper<FtReportMealVo> {
@Select("select a.*, b.hospital_id, b.bed_id, b.`name`, c.depart_name, c.depart_code from ft_report_meals a LEFT JOIN ft_patient b on a.patient_id = b.patient_id LEFT JOIN ft_depart c on b.depart_id = c.depart_id")
@Select("select a.price, a.patient_id, b.hospital_id, b.bed_id, b.`name`, c.depart_name, c.depart_code from ft_report_meals a LEFT JOIN ft_patient b on a.patient_id = b.patient_id LEFT JOIN ft_depart c on b.depart_id = c.depart_id")
public List<FtReportMealVo> listAll();
@Select("select a.*, b.hospital_id, b.bed_id, b.`name`, c.depart_name, c.depart_code from ft_report_meals a LEFT JOIN ft_patient b on a.patient_id = b.patient_id LEFT JOIN ft_depart c on b.depart_id = c.depart_id where a.settlement_flag = 0")
@Select("select sum(a.price) as price, a.patient_id, b.hospital_id, b.bed_id, b.`name`, c.depart_name, c.depart_code from ft_report_meals a LEFT JOIN ft_patient b on a.patient_id = b.patient_id LEFT JOIN ft_depart c on b.depart_id = c.depart_id where a.settlement_flag = 0 GROUP BY a.patient_id")
public List<FtReportMealVo> listNoPay();
@Select("select a.*, b.hospital_id, b.bed_id, b.`name`, c.depart_name, c.depart_code from ft_report_meals a LEFT JOIN ft_patient b on a.patient_id = b.patient_id LEFT JOIN ft_depart c on b.depart_id = c.depart_id where a.settlement_flag = 1")
@Select("select sum(a.price) as price, a.patient_id, b.hospital_id, b.bed_id, b.`name`, c.depart_name, c.depart_code from ft_report_meals a LEFT JOIN ft_patient b on a.patient_id = b.patient_id LEFT JOIN ft_depart c on b.depart_id = c.depart_id where a.settlement_flag = 1 GROUP BY a.patient_id")
public List<FtReportMealVo> listPayoff();
}

View File

@ -1,9 +1,5 @@
package com.ruoyi.system.fantang.vo;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.system.fantang.domain.FtReportMealsDao;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -11,10 +7,6 @@ import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 收费管理对象 ft_prepayment
*

View File

@ -78,3 +78,12 @@ export function exportMeals(query) {
params: query
})
}
// 获取最后结算日期
export function getLastSettlementDate(patientId) {
return request({
url: '/fantang/meals/getLastSettlementDate/' + patientId,
method: 'get',
})
}

View File

@ -110,14 +110,27 @@
<span>{{ parseTime(scope.row.settleAt, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="记录清单" align="center" prop="list"/>
<el-table-column label="结算总价" align="center" prop="price"/>
<el-table-column label="应收" align="center" prop="payable"/>
<el-table-column label="实收" align="center" prop="receipts"/>
<el-table-column label="结算类型" align="center" prop="type"/>
<el-table-column label="退款总额" align="center" prop="refund"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="clickAddNewSettlement(scope.row)"
v-hasPermi="['fantang:settle:AddNewSettlement']"
>收费
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="clickAddLeaveSettlement(scope.row)"
v-hasPermi="['fantang:settle:AddLeaveSettlement']"
>出院结算
</el-button>
<el-button
size="mini"
type="text"
@ -146,6 +159,45 @@
@pagination="getList"
/>
<!-- 日常收费弹出层对话框-->
<el-dialog title="伙食费结算窗口" :visible.sync="flagAddNewSettlementOpen" width="600px" append-to-body>
<el-form ref="form" :model="formAddNewSettlement" :rules="rules" label-width="160px">
<el-form-item label="住院号" prop="hospitalId">
<el-input v-model="formAddNewSettlement.hospitalId" readonly/>
</el-form-item>
<el-form-item label="姓名" prop="name">
<el-input v-model="formAddNewSettlement.name" readonly/>
</el-form-item>
<el-form-item label="科室" prop="name">
<el-input v-model="formAddNewSettlement.departName" readonly/>
</el-form-item>
<el-form-item label="床号" prop="name">
<el-input v-model="formAddNewSettlement.bedId" readonly/>
</el-form-item>
<el-form-item label="上次结算日期" prop="name">
<el-input v-model="formAddNewSettlement.name" readonly/>
</el-form-item>
<el-form-item label="应收" prop="name">
<el-input v-model="formAddNewSettlement.price" readonly/>
</el-form-item>
<el-form-item label="用餐天数" prop="name">
<el-input v-model="formAddNewSettlement.name" readonly/>
</el-form-item>
<el-form-item label="已收预付伙食费" prop="name" v-if="flagAddPrepaymentShow">
<el-input v-model="formAddNewSettlement.prepayment" readonly/>
</el-form-item>
<el-form-item label="实收" prop="receipts">
<el-input v-model="form.receipts" placeholder="请输入实收"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 出院结算弹出层对话框-->
<!-- 添加或修改结算报对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
@ -187,6 +239,24 @@ export default {
components: {},
data() {
return {
//
flagAddPrepaymentShow: false,
//
flagAddNewSettlementOpen: false,
//
formAddNewSettlement: {
hospitalId: null,
patientId: null,
name: null,
departName: null,
bedId: null,
price: null,
receivable: null,
netPeceipt: null,
prepayment: null,
settlementDate: null,
},
//
settlementFlagOptions: [{
@ -258,10 +328,36 @@ export default {
};
},
created() {
this.getList();
this.loading = true;
listNoPay(this.queryParams).then(response => {
this.settleList = response.rows;
this.total = response.total;
this.loading = false;
});
},
methods: {
//
clickAddNewSettlement(row) {
this.flagAddNewSettlementOpen = true;
this.flagAddPrepaymentShow = false;
this.formAddNewSettlement.hospitalId = row.hospitalId;
this.formAddNewSettlement.name = row.name;
this.formAddNewSettlement.departName = row.departName;
this.formAddNewSettlement.bedId = row.bedId;
this.formAddNewSettlement.patientId = row.patientId;
this.formAddNewSettlement.price = row.price;
this.formAddNewSettlement.prepayment = row.prepayment;
this.formAddNewSettlement.netPeceipt = null;
},
//
clickAddLeaveSettlement() {
this.flagAddNewSettlementOpen = true;
this.flagAddPrepaymentShow = true;
},
//
selectSettlementFlag(value) {
console.log("value", value)