123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540 |
- package com.imed.costaccount.service.impl;
- import cn.hutool.core.util.StrUtil;
- import cn.hutool.poi.excel.ExcelWriter;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.imed.costaccount.common.exception.CostException;
- import com.imed.costaccount.constants.NumberConstant;
- import com.imed.costaccount.mapper.CostCostingCollectionMapper;
- import com.imed.costaccount.model.CostCostingCollection;
- import com.imed.costaccount.model.vo.*;
- import com.imed.costaccount.service.CostCostingCollectionService;
- import com.imed.costaccount.service.CostShareLevelService;
- import lombok.extern.slf4j.Slf4j;
- import org.apache.poi.ss.usermodel.Sheet;
- import org.springframework.stereotype.Service;
- import java.util.*;
- import java.util.stream.Collectors;
- @Slf4j
- @Service("costCostingCollectionService")
- public class CostCostingCollectionServiceImpl extends ServiceImpl<CostCostingCollectionMapper, CostCostingCollection> implements CostCostingCollectionService {
- private final CostShareLevelService costShareLevelService;
- public CostCostingCollectionServiceImpl(CostShareLevelService costShareLevelService) {
- this.costShareLevelService = costShareLevelService;
- }
- /**
- * 分摊后报表输出
- *
- * @param writer
- * @param shareNumber
- * @param sheet
- * @return
- */
- @Override
- public ExcelWriter getShareReportTemplate(ExcelWriter writer, Integer shareNumber, Sheet sheet) {
- // 需要封装两个 分摊层级责任中心集合 目标层级责任中心
- // 分摊层级责任中心集合
- // LinkedList<SplitLevelVO> splitLevelVOLinkedList = new LinkedList<>();
- // // 目标层级责任中心集合
- // LinkedList<TargetSplitLevelVO> targetSplitLevelVOLinkedList = new LinkedList<>();
- // setMockData(splitLevelVOLinkedList, targetSplitLevelVOLinkedList);
- List<CostCostingVO> costCostingVOS = setMockDa();
- Map<String, List<CostCostingVO>> responsibilityMap = costCostingVOS.stream().collect(Collectors.groupingBy(CostCostingVO::getResponsibilityCode));
- // Map<String, String> collect = costCostingVOS.stream().collect(Collectors.toMap(CostCostingVO::getResponsibilityCode, CostCostingVO::getAccountCode));
- Map<String, List<CostCostingVO>> targetResponsibilityMap = costCostingVOS.stream().collect(Collectors.groupingBy(CostCostingVO::getTargetResponsibilityCode));
- Map<String, CostCostingVO> allAccMap = costCostingVOS.stream().collect(Collectors.toMap(k -> k.getResponsibilityName()+k.getAccountName()+k.getTargetResponsibilityName()+k.getShareParamName(), synOne -> synOne));
- Map<String, CostCostingVO> allAliMap = costCostingVOS.stream().collect(Collectors.toMap(k -> k.getResponsibilityName()+k.getAlias()+k.getTargetResponsibilityName()+k.getShareParamName(), synOne -> synOne));
- // 当前责任中心下面有几个会计科目 后面进行合并使用
- int numResponsibility;
- // 从第几列开始编写数据
- int column = shareNumber + 4;
- // 总共有多少个单元格
- // Integer shareLevelGrid = 0;
- Set<String> keySet = responsibilityMap.keySet();
- for (String key : keySet) {
- List<CostCostingVO> costCostingVOS1 = responsibilityMap.get(key);
- Map<String, CostCostingVO> linkedHashMap = new LinkedHashMap<>();
- costCostingVOS1.forEach(i -> {
- String s = i.getResponsibilityCode() + i.getAccountCode();
- if (!linkedHashMap.containsKey(s)) {
- linkedHashMap.put(s, i);
- }
- });
- numResponsibility = linkedHashMap.size();
- if (numResponsibility >= NumberConstant.TWO) {
- // 需要合并单元格
- // writer.merge(0, 0, column, column + numResponsibility - 1, costCostingVOS1.get(0).getResponsibilityName(), false);
- // 设置对应的会计科目或者别名
- Set<String> strings = linkedHashMap.keySet();
- for (String s : strings) {
- CostCostingVO costCostingVO = linkedHashMap.get(s);
- if (StrUtil.isBlank(costCostingVO.getAlias())) {
- writer.writeCellValue(column,0,costCostingVO.getResponsibilityName());
- // 别名不存在
- writer.writeCellValue(column, 1, costCostingVO.getAccountName());
- } else {
- // 不为空 设置别名
- writer.writeCellValue(column,0,costCostingVO.getResponsibilityName());
- writer.writeCellValue(column, 1, costCostingVO.getAlias());
- }
- writer.writeCellValue(column, 2, costCostingVO.getAmount());
- column++;
- }
- // for (int j=0;j<numResponsibility;j++){
- // CostCostingVO costCostingVO = costCostingVOS1.get(j);
- // if (StrUtil.isBlank(costCostingVO.getAlias())){
- // // 别名不存在
- // writer.writeCellValue(j+column,1,costCostingVO.getAccountName());
- // }else {
- // // 不为空 设置别名
- // writer.writeCellValue(j+column,1,costCostingVO.getAlias());
- // }
- // writer.writeCellValue(j+column,2,costCostingVO.getAmount());
- // }
- // column+=numResponsibility;
- } else {
- // 不需要合并单元格
- writer.writeCellValue(column, 0, costCostingVOS1.get(0).getResponsibilityName());
- writer.writeCellValue(column, 1, costCostingVOS1.get(0).getAccountName());
- writer.writeCellValue(column, 2, costCostingVOS1.get(0).getAmount());
- column++;
- }
- }
- // for (int i=0; i< responsibilityMap.size();i++){
- // 判断当前当成的责任中心对应的分摊参数的数量
- // List<CostCostingVO> costCostingVOS1 = responsibilityMap.get(responsibilityCode);
- // numResponsibility=costCostingVOS1.size();
- // shareLevelGrid+=numResponsibility;
- // if (numResponsibility>= NumberConstant.TWO){
- // writer.merge(0,0,column,column+numResponsibility-1,costCostingVOS1.get(0).getResponsibilityName(),false);
- // // 设置对应的会计科目或者金额
- // for (int j=0;j<numResponsibility;j++){
- // CostCostingVO costCostingVO = costCostingVOS1.get(j);
- // if (StrUtil.isBlank(costCostingVO.getAlias())){
- // // 别名不存在的时候
- // writer.writeCellValue(j+column,1,costCostingVO.getAccountName());
- // }else {
- // // 为空的话设置别名
- // writer.writeCellValue(j+column,1,costCostingVO.getAlias());
- // }
- // writer.writeCellValue(j+column,2,costCostingVO.getAccountName());
- // }
- // column+=numResponsibility;
- // }else {
- // writer.writeCellValue(column,0,costCostingVOS1.get(0).getResponsibilityName());
- // writer.writeCellValue(column,1,costCostingVOS1.get(0).getAccountName());
- // writer.writeCellValue(column,2,costCostingVOS1.get(0).getMoney());
- // column++;
- // }
- // }
- // 设置单元格合并
- for (int j = 1; j <= shareNumber; j++) {
- writer.merge(0, 1, j, j, "第" + j + "次分摊", false);
- }
- // 目标责任集合
- writer.passCurrentRow();
- // 从第三行开始
- int num = 3;
- Set<String> targetSet = targetResponsibilityMap.keySet();
- for (String target : targetSet) {
- List<CostCostingVO> costCostingVOS1 = targetResponsibilityMap.get(target);
- Map<String, CostCostingVO> linkedHashMap = new LinkedHashMap<>();
- costCostingVOS1.forEach(i -> {
- String s = i.getTargetResponsibilityCode() + i.getShareParamName();
- if (!linkedHashMap.containsKey(s)) {
- linkedHashMap.put(s, i);
- }
- });
- int shareParamSize = linkedHashMap.size();
- if (shareParamSize >= NumberConstant.TWO) {
- // 责任中心
- CostCostingVO costCostingVO = costCostingVOS1.get(0);
- // writer.merge(num, num + shareParamSize - 1, 0, 0, costCostingVO.getTargetResponsibilityName(), false);
- // 设置第几次分摊的值
- for (int k = 0; k < shareNumber; k++) {
- writer.merge(num, num + shareParamSize - 1, k + 1, k + 1, costCostingVO.getTargetShareMoneys().get(k), false);
- }
- // 设置对应的分摊参数值
- Set<String> strings = linkedHashMap.keySet();
- for (String s : strings) {
- CostCostingVO costCostingVO1 = linkedHashMap.get(s);
- writer.writeCellValue(0,num,costCostingVO1.getTargetResponsibilityName());
- writer.writeCellValue(shareNumber + 1, num, costCostingVO1.getShareParamName());
- writer.writeCellValue(shareNumber + 2, num, costCostingVO1.getShareValue());
- writer.writeCellValue(shareNumber + 3, num, costCostingVO1.getShareParamProportion());
- for (int m=shareNumber+4;m<column;m++){
- // x是m y是num
- // 获取当前这一列对应的责任中心 以及会计科目
- // 第一行责任中心
- String responsibilityName = sheet.getRow(0).getCell(m).getStringCellValue();
- // 第二行的会计科目或者
- String accountNameOrAlias = sheet.getRow(1).getCell(m).getStringCellValue();
- // 这一行的目标责任中心
- String otherResponsibilityName = sheet.getRow(num).getCell(0).getStringCellValue();
- // 分摊参数
- String shareName = sheet.getRow(num).getCell(shareNumber + 1).getStringCellValue();
- CostCostingVO costCostingVO2 = allAccMap.get(responsibilityName + accountNameOrAlias + otherResponsibilityName + shareName);
- CostCostingVO costCostingVO3 = allAliMap.get(responsibilityName + accountNameOrAlias + otherResponsibilityName + shareName);
- if (Objects.nonNull(costCostingVO2)){
- writer.writeCellValue(m,num,costCostingVO2.getMoney());
- }else if (Objects.nonNull(costCostingVO3)){
- writer.writeCellValue(m,num,costCostingVO3.getMoney());
- }else {
- throw new CostException(500,"数据异常");
- }
- // 第二行的会计科目/别名
- // System.out.println(responsibilityName+"--"+accountNameOrAlias+"--"+otherResponsibilityName+"--"+shareName);
- }
- num++;
- }
- }
- if (shareParamSize < NumberConstant.TWO) {
- writer.writeCellValue(0, num, costCostingVOS1.get(0).getTargetResponsibilityName());
- for (int k = 0; k < shareNumber; k++) {
- writer.writeCellValue(k + 1, num, costCostingVOS1.get(0).getTargetShareMoneys().get(k));
- }
- writer.writeCellValue(shareNumber + 1, num, costCostingVOS1.get(0).getShareParamName());
- writer.writeCellValue(shareNumber + 2, num, costCostingVOS1.get(0).getShareValue());
- writer.writeCellValue(shareNumber + 3, num, costCostingVOS1.get(0).getShareParamProportion());
- //TODO 金额没有写
- for (int m=shareNumber+4;m<column;m++){
- // x是m y是num
- // 获取当前这一列对应的责任中心 以及会计科目
- // 第一行责任中心
- String responsibilityName = sheet.getRow(0).getCell(m).getStringCellValue();
- // 第二行的会计科目或者
- String accountNameOrAlias = sheet.getRow(1).getCell(m).getStringCellValue();
- // 这一行的目标责任中心
- String otherResponsibilityName = sheet.getRow(num).getCell(0).getStringCellValue();
- // 分摊参数
- String shareName = sheet.getRow(num).getCell(shareNumber + 1).getStringCellValue();
- CostCostingVO costCostingVO2 = allAccMap.get(responsibilityName + accountNameOrAlias + otherResponsibilityName + shareName);
- CostCostingVO costCostingVO3 = allAliMap.get(responsibilityName + accountNameOrAlias + otherResponsibilityName + shareName);
- if (Objects.nonNull(costCostingVO2)){
- writer.writeCellValue(m,num,costCostingVO2.getMoney());
- }else if (Objects.nonNull(costCostingVO3)){
- writer.writeCellValue(m,num,costCostingVO3.getMoney());
- }else {
- throw new CostException(500,"数据异常");
- }
- // 第二行的会计科目/别名
- System.out.println(responsibilityName+"--"+accountNameOrAlias+"--"+otherResponsibilityName+"--"+shareName);
- }
- num++;
- }
- }
- // for (int j=0;j<targetResponsibilityList.size();j++){
- // String targetResponsibilityCode = targetResponsibilityList.get(j);
- // // 需要判断是否需要合并单元格
- // List<CostCostingVO> costingVOList = targetResponsibilityMap.get(targetResponsibilityCode);
- // // 当前责任中心下面有多少个分摊参数
- // int shareParamSize=costingVOList.size();
- // if (shareParamSize>=NumberConstant.TWO){
- // //设置责任中心
- // CostCostingVO costCostingVO = costingVOList.get(0);
- // writer.merge(j+num,j+num+shareParamSize-1,0,0,costCostingVO.getResponsibilityName(),false);
- // // 设置第一次分摊参数值
- // for (int k=0;k<shareNumber;k++){
- // writer.merge(j+num,j+num+shareParamSize-1,k+1,k+1,costCostingVO.getTargetShareMoneys().get(k),false);
- //
- // }
- // // 设置对应的分摊参数值
- // for (int i=0;i<shareParamSize;i++){
- // // 设置分摊参数
- // CostCostingVO costCostingVO1 = costingVOList.get(i);
- // int row=j+num+i;
- // writer.writeCellValue(shareNumber+1,row,costCostingVO1.getShareParamName());
- // writer.writeCellValue(shareNumber+2,row,costCostingVO1.getShareValue());
- // writer.writeCellValue(shareNumber+3,row,costCostingVO1.getShareParamProportion());
- // //TODO 金额没有写
- //// for (int k=shareNumber+4;k<shareLevelGrid+6;k++){
- //// writer.writeCellValue(k,row,"0.1111");
- //// }
- // }
- //
- // }
- // num+=shareParamSize-1;
- // if (shareParamSize<NumberConstant.TWO){
- // writer.writeCellValue(0, j + num, costingVOList.get(0).getResponsibilityName());
- // for (int k=0;k<shareNumber;k++){
- // writer.merge(j+num,j+num+shareParamSize-1,k+1,k+1,costingVOList.get(0).getTargetShareMoneys().get(k),false);
- // }
- // writer.writeCellValue(shareNumber+1,j+num,costingVOList.get(0).getShareParamName());
- // writer.writeCellValue(shareNumber+2,j+num,costingVOList.get(0).getShareValue());
- // writer.writeCellValue(shareNumber+3,j+num,costingVOList.get(0).getShareParamProportion());
- // // TODO 金额暂时不设置
- //// for (int k=shareNumber+4;k<shareLevelGrid+6;k++){
- //// writer.writeCellValue(k,j+num,"0.3456");
- //// }
- // }
- //
- // }
- // TODO 统一设置列宽 处理中文问题
- for (int i = 0; i < 30; i++) {
- // 调整每一列宽度
- sheet.autoSizeColumn((short) i);
- // 解决自动设置列宽中文失效的问题
- sheet.setColumnWidth(i, sheet.getColumnWidth(i) * 13 / 10);
- }
- // todo 合并单元格
- return writer;
- }
- // private void setMockData(LinkedList<SplitLevelVO> splitLevelVOLinkedList, LinkedList<TargetSplitLevelVO> targetSplitLevelVOLinkedList) {
- // // 设置分摊层级责任中心数据
- // SplitLevelVO splitLevelVO = new SplitLevelVO();
- // splitLevelVO.setResponsibilityName("责任中心1");
- // splitLevelVO.setResponsibilityCode("zr1");
- // LinkedList<ResponsibilityAccountVO> responsibilityAccountVOS = new LinkedList<>();
- //
- // ResponsibilityAccountVO responsibilityAccountVO = new ResponsibilityAccountVO();
- // responsibilityAccountVO.setAccountingNames("其他费用,资产改良及摊销");
- // responsibilityAccountVO.setAccountingCodes("1825,1824");
- // responsibilityAccountVO.setAccountingIds("57,56");
- // responsibilityAccountVO.setMoney("12.6666");
- // responsibilityAccountVOS.add(responsibilityAccountVO);
- //
- // ResponsibilityAccountVO responsibilityAccountVORequest = new ResponsibilityAccountVO();
- // responsibilityAccountVORequest.setAccountingNames("低值易耗品");
- // responsibilityAccountVORequest.setAccountingCodes("1822");
- // responsibilityAccountVORequest.setAccountingIds("54");
- // responsibilityAccountVORequest.setAlias("设置了别名");
- // responsibilityAccountVORequest.setMoney("12.1111");
- // responsibilityAccountVOS.add(responsibilityAccountVORequest);
- // splitLevelVO.setResponsibilityAccountVOList(responsibilityAccountVOS);
- // splitLevelVOLinkedList.add(splitLevelVO);
- //
- // SplitLevelVO splitLevelVO1 = new SplitLevelVO();
- // splitLevelVO1.setResponsibilityName("责任中心2");
- // splitLevelVO1.setResponsibilityCode("zr2");
- // LinkedList<ResponsibilityAccountVO> responsibilityAccountVOS1 = new LinkedList<>();
- // ResponsibilityAccountVO responsibilityAccountVORequest1 = new ResponsibilityAccountVO();
- // responsibilityAccountVORequest1.setAccountingNames("低值易耗品");
- // responsibilityAccountVORequest1.setAccountingCodes("1822");
- // responsibilityAccountVORequest1.setAccountingIds("54");
- // responsibilityAccountVORequest1.setAlias("设置的别名");
- // responsibilityAccountVORequest1.setMoney("12.1111");
- // responsibilityAccountVOS1.add(responsibilityAccountVORequest1);
- // splitLevelVO1.setResponsibilityAccountVOList(responsibilityAccountVOS1);
- // splitLevelVOLinkedList.add(splitLevelVO1);
- //
- // TargetSplitLevelVO targetSplitLevelVO = new TargetSplitLevelVO();
- // targetSplitLevelVO.setResponsibilityCode("zr1");
- // targetSplitLevelVO.setResponsibilityName("责任中心1");
- // targetSplitLevelVO.setOneShareMoney("100.1111");
- // targetSplitLevelVO.setTwoShareMoney("200.1111");
- // targetSplitLevelVO.setThreeShareMoney("300.1111");
- // LinkedList<TargetShareParamValue> targetShareParamValueLinkedList = new LinkedList<>();
- // TargetShareParamValue targetShareParamValue = new TargetShareParamValue();
- // targetShareParamValue.setShareParamName("员工费");
- // targetShareParamValue.setShareParamCode("A11");
- // targetShareParamValue.setShareParamValue("66");
- // targetShareParamValue.setShareParamProportion("0.1111");
- // targetShareParamValueLinkedList.add(targetShareParamValue);
- // TargetShareParamValue targetShareParamValueRequest = new TargetShareParamValue();
- // targetShareParamValueRequest.setShareParamName("医疗收入");
- // targetShareParamValueRequest.setShareParamCode("A22");
- // targetShareParamValueRequest.setShareParamValue("77");
- // targetShareParamValueRequest.setShareParamProportion("0.4444");
- // targetShareParamValueLinkedList.add(targetShareParamValueRequest);
- // targetSplitLevelVO.setTargetShareParamValueList(targetShareParamValueLinkedList);
- // targetSplitLevelVOLinkedList.add(targetSplitLevelVO);
- //
- // TargetSplitLevelVO targetSplitLevelVORequest = new TargetSplitLevelVO();
- // targetSplitLevelVORequest.setResponsibilityCode("zr2");
- // targetSplitLevelVORequest.setResponsibilityName("责任中心2");
- // targetSplitLevelVORequest.setOneShareMoney("102.1111");
- // targetSplitLevelVORequest.setTwoShareMoney("202.1111");
- // targetSplitLevelVORequest.setThreeShareMoney("300.1111");
- // LinkedList<TargetShareParamValue> targetShareParamValueLinkedList1 = new LinkedList<>();
- // TargetShareParamValue targetShareParamValue1 = new TargetShareParamValue();
- // targetShareParamValue1.setShareParamName("水费");
- // targetShareParamValue1.setShareParamCode("A66");
- // targetShareParamValue1.setShareParamValue("777");
- // targetShareParamValue1.setShareParamProportion("0.777");
- // targetShareParamValueLinkedList1.add(targetShareParamValue1);
- // targetSplitLevelVORequest.setTargetShareParamValueList(targetShareParamValueLinkedList1);
- // targetSplitLevelVOLinkedList.add(targetSplitLevelVORequest);
- //
- // }
- private List<CostCostingVO> setMockDa() {
- List<CostCostingVO> costCostingVOS = new LinkedList<>();
- CostCostingVO costCostingVO = new CostCostingVO();
- costCostingVO.setResponsibilityCode("zr1");
- costCostingVO.setResponsibilityName("责任中心1");
- costCostingVO.setAccountCode("A11");
- costCostingVO.setAccountName("人事费用");
- costCostingVO.setAmount("800");
- costCostingVO.setTargetResponsibilityCode("tzr1");
- costCostingVO.setTargetResponsibilityName("目标责任中心1");
- List<String> strings = new ArrayList<>();
- strings.add("1000");
- strings.add("2000");
- costCostingVO.setTargetShareMoneys(strings);
- costCostingVO.setShareParamName("员工数");
- costCostingVO.setShareValue("3");
- costCostingVO.setShareParamProportion("0.3344");
- costCostingVO.setMoney("5.28");
- costCostingVOS.add(costCostingVO);
- CostCostingVO costCostingVO1 = new CostCostingVO();
- costCostingVO1.setResponsibilityCode("zr1");
- costCostingVO1.setResponsibilityName("责任中心1");
- // 会计科目可能为空
- costCostingVO1.setAccountCode("A12");
- costCostingVO1.setAccountName("其他费用");
- costCostingVO1.setAmount("600");
- costCostingVO1.setAlias("设置的别名");
- costCostingVO1.setTargetResponsibilityCode("tzr1");
- costCostingVO1.setTargetResponsibilityName("目标责任中心1");
- List<String> strings1 = new ArrayList<>();
- strings1.add("1000");
- strings1.add("2000");
- costCostingVO1.setTargetShareMoneys(strings);
- costCostingVO1.setShareParamName("员工数");
- costCostingVO1.setShareValue("3");
- costCostingVO1.setShareParamProportion("0.3344");
- costCostingVO1.setMoney("0.88");
- costCostingVOS.add(costCostingVO1);
- CostCostingVO costCostingVO2 = new CostCostingVO();
- costCostingVO2.setResponsibilityCode("zr1");
- costCostingVO2.setResponsibilityName("责任中心1");
- // 会计科目可能为空
- costCostingVO2.setAccountCode("A11");
- costCostingVO2.setAccountName("人事费用");
- costCostingVO2.setAmount("800");
- costCostingVO2.setTargetResponsibilityCode("tzr1");
- costCostingVO2.setTargetResponsibilityName("目标责任中心1");
- List<String> strings2 = new ArrayList<>();
- strings2.add("1000");
- strings2.add("2000");
- costCostingVO2.setTargetShareMoneys(strings);
- costCostingVO2.setShareParamName("医疗收入");
- costCostingVO2.setShareValue("95");
- costCostingVO2.setShareParamProportion("0.19");
- costCostingVO2.setMoney("0.55");
- costCostingVOS.add(costCostingVO2);
- CostCostingVO costCostingVO3 = new CostCostingVO();
- costCostingVO3.setResponsibilityCode("zr1");
- costCostingVO3.setResponsibilityName("责任中心1");
- costCostingVO3.setAccountCode("A12");
- costCostingVO3.setAccountName("其他费用");
- costCostingVO3.setAmount("600");
- costCostingVO3.setAlias("设置的别名");
- costCostingVO3.setTargetResponsibilityCode("tzr1");
- costCostingVO3.setTargetResponsibilityName("目标责任中心1");
- List<String> strings3 = new ArrayList<>();
- strings3.add("1000");
- strings3.add("2000");
- costCostingVO3.setTargetShareMoneys(strings);
- costCostingVO3.setShareParamName("医疗收入");
- costCostingVO3.setShareValue("95");
- costCostingVO3.setShareParamProportion("0.19");
- costCostingVO3.setMoney("0.44");
- costCostingVOS.add(costCostingVO3);
- CostCostingVO costCostingVO5 = new CostCostingVO();
- costCostingVO5.setResponsibilityCode("zr2");
- costCostingVO5.setResponsibilityName("责任中心2");
- costCostingVO5.setAccountCode("A13");
- costCostingVO5.setAccountName("责任费用");
- costCostingVO5.setAmount("900");
- costCostingVO5.setTargetResponsibilityCode("tzr2");
- costCostingVO5.setTargetResponsibilityName("目标责任中心2");
- List<String> strings5 = new ArrayList<>();
- strings5.add("1000");
- strings5.add("2000");
- costCostingVO5.setTargetShareMoneys(strings5);
- costCostingVO5.setShareParamName("麻醉科收入");
- costCostingVO5.setShareValue("100");
- costCostingVO5.setShareParamProportion("0.188");
- costCostingVO5.setMoney("1.11");
- costCostingVOS.add(costCostingVO5);
- CostCostingVO costCostingVO6 = new CostCostingVO();
- costCostingVO6.setResponsibilityCode("zr1");
- costCostingVO6.setResponsibilityName("责任中心1");
- // 会计科目可能为空
- costCostingVO6.setAccountCode("A11");
- costCostingVO6.setAccountName("人事费用");
- costCostingVO6.setAmount("800");
- costCostingVO6.setTargetResponsibilityCode("tzr2");
- costCostingVO6.setTargetResponsibilityName("目标责任中心2");
- List<String> strings6 = new ArrayList<>();
- strings6.add("1000");
- strings6.add("2000");
- costCostingVO6.setTargetShareMoneys(strings6);
- costCostingVO6.setShareParamName("麻醉科收入");
- costCostingVO6.setShareValue("100");
- costCostingVO6.setShareParamProportion("0.18");
- costCostingVO6.setMoney("0.33");
- costCostingVOS.add(costCostingVO6);
- CostCostingVO costCostingVO7 = new CostCostingVO();
- costCostingVO7.setResponsibilityCode("zr1");
- costCostingVO7.setResponsibilityName("责任中心1");
- costCostingVO7.setAccountCode("A12");
- costCostingVO7.setAccountName("其他费用");
- costCostingVO7.setAmount("600");
- costCostingVO7.setAlias("设置的别名");
- costCostingVO7.setTargetResponsibilityCode("tzr2");
- costCostingVO7.setTargetResponsibilityName("目标责任中心2");
- List<String> strings7 = new ArrayList<>();
- strings7.add("1000");
- strings7.add("2000");
- costCostingVO7.setTargetShareMoneys(strings);
- costCostingVO7.setShareParamName("麻醉科收入");
- costCostingVO7.setShareValue("100");
- costCostingVO7.setShareParamProportion("0.18");
- costCostingVO7.setMoney("0.22");
- costCostingVOS.add(costCostingVO7);
- CostCostingVO costCostingVO8 = new CostCostingVO();
- costCostingVO8.setResponsibilityCode("zr2");
- costCostingVO8.setResponsibilityName("责任中心2");
- costCostingVO8.setAccountCode("A13");
- costCostingVO8.setAccountName("责任费用");
- costCostingVO8.setAmount("900");
- costCostingVO8.setTargetResponsibilityCode("tzr1");
- costCostingVO8.setTargetResponsibilityName("目标责任中心1");
- List<String> strings8 = new ArrayList<>();
- strings8.add("1000");
- strings8.add("2000");
- costCostingVO8.setTargetShareMoneys(strings8);
- costCostingVO8.setShareParamName("员工数");
- costCostingVO8.setShareValue("3");
- costCostingVO8.setShareParamProportion("0.3344");
- costCostingVO8.setMoney("1.55");
- costCostingVOS.add(costCostingVO8);
- CostCostingVO costCostingVO9 = new CostCostingVO();
- costCostingVO9.setResponsibilityCode("zr2");
- costCostingVO9.setResponsibilityName("责任中心2");
- costCostingVO9.setAccountCode("A13");
- costCostingVO9.setAccountName("责任费用");
- costCostingVO9.setAmount("900");
- costCostingVO9.setTargetResponsibilityCode("tzr1");
- costCostingVO9.setTargetResponsibilityName("目标责任中心1");
- List<String> strings9 = new ArrayList<>();
- strings9.add("1000");
- strings9.add("2000");
- costCostingVO9.setTargetShareMoneys(strings9);
- costCostingVO9.setShareParamName("医疗收入");
- costCostingVO9.setShareValue("95");
- costCostingVO9.setShareParamProportion("0.19");
- costCostingVO9.setMoney("2.66");
- costCostingVOS.add(costCostingVO9);
- return costCostingVOS;
- }
- /**
- * 科室
- */
- }
|