|
|
@ -16,6 +16,7 @@ using Shentun.Peis.InternalReports; |
|
|
using Shentun.Peis.Models; |
|
|
using Shentun.Peis.Models; |
|
|
using Shentun.Peis.PeisReports; |
|
|
using Shentun.Peis.PeisReports; |
|
|
using Shentun.Peis.ReportTemplates; |
|
|
using Shentun.Peis.ReportTemplates; |
|
|
|
|
|
using SqlSugar; |
|
|
using System; |
|
|
using System; |
|
|
using System.Collections.Generic; |
|
|
using System.Collections.Generic; |
|
|
using System.IO; |
|
|
using System.IO; |
|
|
@ -2279,6 +2280,8 @@ namespace Shentun.Peis.CustomerReports |
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
/// <summary>
|
|
|
/// 获取单位费用汇总报表
|
|
|
/// 获取单位费用汇总报表
|
|
|
|
|
|
/// 项目只统计单位支付的
|
|
|
|
|
|
/// 实检项目 不是检查项目的不用检索已检条件
|
|
|
/// </summary>
|
|
|
/// </summary>
|
|
|
/// <param name="input"></param>
|
|
|
/// <param name="input"></param>
|
|
|
/// <returns></returns>
|
|
|
/// <returns></returns>
|
|
|
@ -2347,14 +2350,17 @@ namespace Shentun.Peis.CustomerReports |
|
|
var queryAsbitemList = (from patientRegister in await _patientRegisterRepository.GetQueryableAsync() |
|
|
var queryAsbitemList = (from patientRegister in await _patientRegisterRepository.GetQueryableAsync() |
|
|
join registerCheck in await _registerCheckRepository.GetQueryableAsync() on patientRegister.Id equals registerCheck.PatientRegisterId |
|
|
join registerCheck in await _registerCheckRepository.GetQueryableAsync() on patientRegister.Id equals registerCheck.PatientRegisterId |
|
|
join registerCheckAsbitem in await _registerAsbitemRepository.GetQueryableAsync() on registerCheck.Id equals registerCheckAsbitem.RegisterCheckId |
|
|
join registerCheckAsbitem in await _registerAsbitemRepository.GetQueryableAsync() on registerCheck.Id equals registerCheckAsbitem.RegisterCheckId |
|
|
|
|
|
join asbitem in await _asbitemRepository.GetQueryableAsync() on registerCheckAsbitem.AsbitemId equals asbitem.Id |
|
|
where customerOrgRegisterList.Select(s => s.customerOrgRegisterId).Contains(patientRegister.CustomerOrgRegisterId) |
|
|
where customerOrgRegisterList.Select(s => s.customerOrgRegisterId).Contains(patientRegister.CustomerOrgRegisterId) |
|
|
|
|
|
&& registerCheckAsbitem.PayTypeFlag == RegisterCheckAsbitemPayTypeFlag.UnitPayment |
|
|
select new |
|
|
select new |
|
|
{ |
|
|
{ |
|
|
patientRegister, |
|
|
patientRegister, |
|
|
completeFlag = registerCheck.CompleteFlag, |
|
|
completeFlag = registerCheck.CompleteFlag, |
|
|
standardPrice = registerCheckAsbitem.StandardPrice, |
|
|
standardPrice = registerCheckAsbitem.StandardPrice, |
|
|
chargePrice = registerCheckAsbitem.ChargePrice, |
|
|
chargePrice = registerCheckAsbitem.ChargePrice, |
|
|
amount = registerCheckAsbitem.Amount |
|
|
|
|
|
|
|
|
amount = registerCheckAsbitem.Amount, |
|
|
|
|
|
isCheck = asbitem.IsCheck, |
|
|
}).ToList(); |
|
|
}).ToList(); |
|
|
|
|
|
|
|
|
var customerOrgRegisterGroup = queryAsbitemList.GroupBy(g => g.patientRegister.CustomerOrgRegisterId); |
|
|
var customerOrgRegisterGroup = queryAsbitemList.GroupBy(g => g.patientRegister.CustomerOrgRegisterId); |
|
|
@ -2389,13 +2395,15 @@ namespace Shentun.Peis.CustomerReports |
|
|
|| m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.SumCheck).Sum(s => s.chargePrice * s.amount); |
|
|
|| m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.SumCheck).Sum(s => s.chargePrice * s.amount); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
entDto.CheckItemStandardAmount = item.Where(m => m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.PartCheck |
|
|
|
|
|
|| m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.SumCheck |
|
|
|
|
|
&& m.completeFlag != RegisterCheckCompleteFlag.UnChecked).Sum(s => s.standardPrice * s.amount); |
|
|
|
|
|
|
|
|
entDto.CheckItemStandardAmount = item.Where(m => (m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.PartCheck |
|
|
|
|
|
|| m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.SumCheck) |
|
|
|
|
|
&& (m.completeFlag != RegisterCheckCompleteFlag.UnChecked |
|
|
|
|
|
|| m.isCheck == 'N')).Sum(s => s.standardPrice * s.amount); |
|
|
|
|
|
|
|
|
entDto.CheckItemChargeAmount = item.Where(m => m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.PartCheck |
|
|
|
|
|
|| m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.SumCheck |
|
|
|
|
|
&& m.completeFlag != RegisterCheckCompleteFlag.UnChecked).Sum(s => s.chargePrice * s.amount); |
|
|
|
|
|
|
|
|
entDto.CheckItemChargeAmount = item.Where(m => (m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.PartCheck |
|
|
|
|
|
|| m.patientRegister.CompleteFlag == PatientRegisterCompleteFlag.SumCheck) |
|
|
|
|
|
&& (m.completeFlag != RegisterCheckCompleteFlag.UnChecked |
|
|
|
|
|
|| m.isCheck == 'N')).Sum(s => s.chargePrice * s.amount); |
|
|
|
|
|
|
|
|
entListDto.Add(entDto); |
|
|
entListDto.Add(entDto); |
|
|
} |
|
|
} |
|
|
|