ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatecomporganController.java
@@ -166,7 +166,7 @@ serviceDonatecompletion.setId(serviceDonatecomporgans.get(0).getId()); i = serviceDonatecomporganService.updateById(serviceDonatecompletion); } if (i) { if (i&&!serviceDonorchargeorgan.getOrganname().equals("遗体")) { serviceDonorchargeorgan.setId(null); QueryWrapper<ServiceDonorchargeorgan> queryWrapper = new QueryWrapper(); queryWrapper.eq("InfoID", serviceDonorchargeorgan.getInfoid()) ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonorchargeorganController.java
@@ -112,6 +112,15 @@ } /** * 器官费用汇总(应收/实收/未回款),按当前查询条件统计全部结果 */ @ApiOperation("器官费用汇总") @GetMapping("/organfeeSummary") public AjaxResult organfeeSummary(ServiceDonorchargeorgan serviceDonorchargeorgan) { return AjaxResult.success(serviceDonorchargeorganService.organfeeSummary(serviceDonorchargeorgan)); } /** * 器官状态值转文本 */ private String organStateName(String organState) { ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceInvoiceController.java
@@ -168,6 +168,7 @@ String url = url1 + fileName; String base64= Base64.getEncoder().encodeToString(file.getBytes()); List<Map<String,Object>> lists=aliOCR(base64,userId,caseId); logger.info(JSON.toJSONString(lists)); List<ServiceInvoice> invoiceList=new ArrayList<>(); for(Map<String,Object> row : lists){ ServiceInvoice invoice=new ServiceInvoice(); @@ -177,14 +178,14 @@ if(ObjectUtils.isNotEmpty(caseId)) { invoice.setCaseId(Long.parseLong(caseId)); } invoice.setInvoiceType(row.get("发票分类")+""); invoice.setInvoiceType(row.get("type")+""); invoice.setInvoiceNo(row.get("发票号码")+""); invoice.setOccurDate(row.get("开票日期")+""); invoice.setInvoiceAmount(row.get("金额")+""); invoice.setInvoiceAmount(row.get("发票金额")+""); invoice.setSellerName(row.get("受票方名称")+""); invoice.setInvoiceUrl(url); String invoiceName=newFilename.isEmpty() ? filename : newFilename; invoice.setInvoiceName(invoiceName.split(".")[0]); invoice.setInvoiceName(invoiceName.substring(0, invoiceName.lastIndexOf("."))); invoice.setExtContent(JSON.toJSONString(row)); invoice.setCreateBy(userId); invoice.setCreateTime(DateUtils.getNowDate()); @@ -221,6 +222,7 @@ HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys); //获取response的body String content= EntityUtils.toString(response.getEntity()); logger.info(content); JSONObject jsonContent=JSONObject.parseObject(content); JSONArray subMsgs=jsonContent.getJSONArray("subMsgs"); @@ -234,19 +236,20 @@ for(Map.Entry<String, Object> entry : result.entrySet()){ tempList.put(entry.getKey(),entry.getValue()); } if(rowObject.getString("发票分类").equals("银行承兑汇票")){ if(rowObject.getString("type").equals("银行承兑汇票")){ BigDecimal totalAmount= ChineseUtils.chineseToNumber(result.getString("票据金额大写")); tempList.put("金额",totalAmount); tempList.put("发票金额",totalAmount); } if(rowObject.getString("发票分类").equals("火车票")){ tempList.put("金额",result.getString("票价")); if(rowObject.getString("type").equals("火车票")){ tempList.put("发票金额",result.getString("票价")); } tempList.put("type",rowObject.getString("type")); lists.add(tempList); } return lists; } catch (Exception e) { logger.error(e.getMessage()); return lists; } } ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceInvoice.java
@@ -119,6 +119,13 @@ private String reimburseState; /** * 报销ID */ @ApiModelProperty("报销ID") @Excel(name = "报销ID") private String reimburseId; /** * 扩展内容(json存) */ @ApiModelProperty("扩展内容(json存)") ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonorchargeorganService.java
@@ -8,6 +8,7 @@ import com.ruoyi.project.domain.SpStatChangeReq; import java.util.List; import java.util.Map; /** * 捐献器官Service接口 @@ -48,4 +49,12 @@ * @return 明细集合 */ public List<SpStatChangeDetail> getSpStatChangeDetail(SpStatChangeDetailReq req); /** * 器官费用汇总(应收/实收/未回款),按查询条件统计全部结果 * * @param serviceDonorchargeorgan 查询条件 * @return 汇总结果 */ public Map<String, Object> organfeeSummary(ServiceDonorchargeorgan serviceDonorchargeorgan); } ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonorchargeorganServiceImpl.java
@@ -14,7 +14,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 捐献器官Service业务层处理 @@ -120,6 +123,29 @@ } @Override public Map<String, Object> organfeeSummary(ServiceDonorchargeorgan serviceDonorchargeorgan) { List<ServiceDonorchargeorgan> list = Boolean.TRUE.equals(serviceDonorchargeorgan.getPaymentidIsNotNull()) ? queryList(serviceDonorchargeorgan) : queryListBypaymentidIsNull(serviceDonorchargeorgan); BigDecimal organchargeTotal = BigDecimal.ZERO; BigDecimal amountTotal = BigDecimal.ZERO; for (ServiceDonorchargeorgan item : list) { if (item.getOrgancharge() != null) { organchargeTotal = organchargeTotal.add(item.getOrgancharge()); } if (item.getAmount() != null) { amountTotal = amountTotal.add(item.getAmount()); } } Map<String, Object> summary = new HashMap<>(4); summary.put("organchargeTotal", organchargeTotal); summary.put("amountTotal", amountTotal); summary.put("unreceivedTotal", organchargeTotal.subtract(amountTotal)); summary.put("rowCount", list.size()); return summary; } @Override public List<SpStatChange> getListBySpStatChange(SpStatChangeReq spStatChangeReq) { return serviceDonorchargeorganMapper.getListBySpStatChange( spStatChangeReq.getPabegtime(), ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceInvoiceServiceImpl.java
@@ -68,6 +68,9 @@ if (StringUtils.isNotBlank(serviceInvoice.getReimburseState())) { wrappers.eq(ServiceInvoice::getReimburseState, serviceInvoice.getReimburseState()); } if (StringUtils.isNotBlank(serviceInvoice.getReimburseId())) { wrappers.eq(ServiceInvoice::getReimburseId, serviceInvoice.getReimburseId()); } wrappers.orderByDesc(ServiceInvoice::getCreateTime).orderByDesc(ServiceInvoice::getId); return this.list(wrappers); }