|
@@ -1,26 +1,37 @@
|
|
|
package com.platform.service.workplace.impl;
|
|
|
|
|
|
import com.platform.common.constant.CommonConstants;
|
|
|
+import com.platform.common.model.UserInfo;
|
|
|
import com.platform.common.util.*;
|
|
|
+import com.platform.dao.dto.fill.FillGatherTaskDTO;
|
|
|
import com.platform.dao.dto.hidden.HiddenDangerDTO;
|
|
|
import com.platform.dao.dto.repair.RepairApplicationFormDTO;
|
|
|
import com.platform.dao.dto.sb.SbInfoDTO;
|
|
|
+import com.platform.dao.dto.store.OutStoreFormDTO;
|
|
|
+import com.platform.dao.entity.repair.RepairApplicationForm;
|
|
|
+import com.platform.dao.entity.store.OutStoreForm;
|
|
|
import com.platform.dao.enums.*;
|
|
|
+import com.platform.dao.mapper.fill.FillGatherTaskMapper;
|
|
|
import com.platform.dao.mapper.hidden.HiddenDangerMapper;
|
|
|
import com.platform.dao.mapper.sb.SbInfoMapper;
|
|
|
import com.platform.dao.mapper.sb.SbPositionMapper;
|
|
|
+import com.platform.dao.mapper.store.OutStoreFormMapper;
|
|
|
+import com.platform.dao.vo.query.store.OutStoreFormVO;
|
|
|
import com.platform.dao.vo.repair.IndexStatisticVO;
|
|
|
import com.platform.dao.vo.repair.RepairApplicationFormVO;
|
|
|
+import com.platform.dao.vo.repair.WorkPlaceStatisticVO;
|
|
|
import com.platform.service.repair.RepairApplicationFormService;
|
|
|
import com.platform.service.repair.RepairFeeService;
|
|
|
import com.platform.service.sqarepartmanage.SparePartInfoService;
|
|
|
import com.platform.service.store.InStoreFormService;
|
|
|
+import com.platform.service.upms.SysUserRoleService;
|
|
|
import com.platform.service.workplace.IndexService;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.time.LocalDateTime;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
@@ -40,6 +51,12 @@ public class IndexServiceImpl implements IndexService {
|
|
|
private HiddenDangerMapper hiddenDangerMapper;
|
|
|
@Resource
|
|
|
private SbPositionMapper sbPositionMapper;
|
|
|
+ @Resource
|
|
|
+ private SysUserRoleService sysUserRoleService;
|
|
|
+ @Resource
|
|
|
+ private OutStoreFormMapper outStoreFormMapper;
|
|
|
+ @Resource
|
|
|
+ private FillGatherTaskMapper fillGatherTaskMapper;
|
|
|
|
|
|
|
|
|
@Override
|
|
@@ -210,6 +227,221 @@ public class IndexServiceImpl implements IndexService {
|
|
|
return r;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public WorkPlaceStatisticVO getWorkPlaceData() {
|
|
|
+ WorkPlaceStatisticVO result = new WorkPlaceStatisticVO();
|
|
|
+ // 班组长&维修人 工程师 区域负责人 报修生产(超级管理员)
|
|
|
+ UserInfo userInfo = SecurityUtils.getUserInfo();
|
|
|
+ if(userInfo.getSuperAdmin() == 0){
|
|
|
+ String roles = sysUserRoleService.getRoleCodesByUserId(); // 获取角色集合
|
|
|
+ if(roles.contains(SysRoleCodeEnum.MM.name())){ // 区域负责人
|
|
|
+ handleMM(result,1);
|
|
|
+ }else if(roles.contains(SysRoleCodeEnum.REPAIR_MANAGE.name())){ // 工程师
|
|
|
+ handleRepairManage(result);
|
|
|
+ }else if(roles.contains(SysRoleCodeEnum.Maintenance.name()) || roles.contains(SysRoleCodeEnum.Maintenance_Leader.name())){
|
|
|
+ // 班组长&维修人
|
|
|
+ handleMaintenance(result);
|
|
|
+ }else{
|
|
|
+ handleMM(result,0);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ handleMM(result,0);
|
|
|
+ }
|
|
|
+ // 处理公共数据
|
|
|
+ handleCommon(result);
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<RepairApplicationFormVO> getRepairPrintList() {
|
|
|
+ RepairApplicationFormDTO queryDTO = new RepairApplicationFormDTO();
|
|
|
+ queryDTO.setRepairUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ queryDTO.setStatus(RepairApplicationFormStatusEnum.PROCESSING.getValue());
|
|
|
+ queryDTO.setPrintFlag(YesNoEnum.NO.getValue());
|
|
|
+ return repairApplicationFormService.getCurrentlyListByDTO(queryDTO);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<OutStoreFormVO> getOutStorePrintList() {
|
|
|
+ OutStoreFormDTO queryOutSotre = new OutStoreFormDTO();
|
|
|
+ List<Integer> statusList = ListUtils.newArrayList();
|
|
|
+ statusList.add(OutStoreStatusEnum.PUSH_OK.getValue());
|
|
|
+ statusList.add(OutStoreStatusEnum.FINISH.getValue());
|
|
|
+ queryOutSotre.setStatusList(statusList);
|
|
|
+ queryOutSotre.setPrintFlag(YesNoEnum.NO.getValue());
|
|
|
+ queryOutSotre.setCreatedUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ return outStoreFormMapper.getCurrentlyList(queryOutSotre);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void printedTicket(String type, String id) {
|
|
|
+ switch (type){
|
|
|
+ case CommonConstants.REPAIR_TICKET_PRINT:
|
|
|
+ RepairApplicationForm updForm = new RepairApplicationForm();
|
|
|
+ updForm.setId(id);
|
|
|
+ updForm.setPrintFlag(YesNoEnum.YES.getValue());
|
|
|
+ repairApplicationFormService.modModelByPrimaryKey(updForm);
|
|
|
+ break;
|
|
|
+ case CommonConstants.OUT_STORE_PRINT:
|
|
|
+ OutStoreForm form = new OutStoreForm();
|
|
|
+ form.setId(id);
|
|
|
+ form.setPrintFlag(YesNoEnum.YES.getValue());
|
|
|
+ outStoreFormMapper.updateByPrimaryKeySelective(form);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 处理区域负责人,超级,普通其他人员
|
|
|
+ * @param result
|
|
|
+ * @param mmFlag 1 负责人 0 否
|
|
|
+ */
|
|
|
+ private void handleMM(WorkPlaceStatisticVO result,Integer mmFlag){
|
|
|
+ // 区域负责人多一个维修审批
|
|
|
+ RepairApplicationFormDTO queryDTO = new RepairApplicationFormDTO();
|
|
|
+ if(mmFlag == 1){
|
|
|
+ queryDTO.setStatus(RepairApplicationFormStatusEnum.CALLER_REPAIR_VERIFYING_TWO.getValue());
|
|
|
+ queryDTO.setReportLeaderId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ }else{
|
|
|
+ // 计划维修生产审核
|
|
|
+ queryDTO.setStatus(RepairApplicationFormStatusEnum.CALLER_REPAIR_VERIFYING_THREE.getValue());
|
|
|
+ queryDTO.setProduceVerifyUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ }
|
|
|
+ Integer verifyNum = repairApplicationFormService.countRepair(queryDTO);
|
|
|
+ result.setVerifyRepairNum(verifyNum == null ? 0 : verifyNum);
|
|
|
+ // 维修状态数据
|
|
|
+ List<RepairApplicationFormVO> statusList = repairApplicationFormService.selectCountByStatus();
|
|
|
+ Map<Integer,String> statusMap = RepairApplicationFormStatusNameEnum.getMapData();
|
|
|
+ statusList.forEach(item -> {
|
|
|
+ item.setStatusName(statusMap.get(item.getStatus()));
|
|
|
+ });
|
|
|
+ result.setRepairStatusList(statusList);
|
|
|
+ // 十大车间维修数
|
|
|
+ List<RepairApplicationFormVO> factoryRoom = repairApplicationFormService.selectCountByPosition(queryDTO);
|
|
|
+ if(factoryRoom != null && factoryRoom.size() > 0){
|
|
|
+ for(int i=0;i<factoryRoom.size();i++){
|
|
|
+ RepairApplicationFormVO vo = factoryRoom.get(i);
|
|
|
+ if(i <= 9){
|
|
|
+ vo.setSbPositionName(sbPositionMapper.selectNameById(vo.getPositionId()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ result.setFactoryRoomList(factoryRoom);
|
|
|
+ LocalDateTime now = LocalDateTime.now();
|
|
|
+ LocalDateTime startTime = now.plusDays(-6).withHour(0).withMinute(0).withSecond(0);
|
|
|
+ LocalDateTime endTime = now.withHour(23).withMinute(59).withSecond(59);
|
|
|
+ // 近一周报修统计
|
|
|
+ getCurrentlyRepairNum(startTime,endTime,result);
|
|
|
+ // 近一周领料出库统计
|
|
|
+ getCurrentlyOutStoreNum(startTime,endTime,result);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 处理工程师数据
|
|
|
+ * @param result
|
|
|
+ */
|
|
|
+ private void handleRepairManage(WorkPlaceStatisticVO result){
|
|
|
+ RepairApplicationFormDTO queryDTO = new RepairApplicationFormDTO();
|
|
|
+ queryDTO.setDispatchUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ // 维修审核
|
|
|
+ List<Integer> statusList = new ArrayList<>();
|
|
|
+ statusList.add(RepairApplicationFormStatusEnum.WAIT_SUBMIT.getValue());
|
|
|
+ statusList.add(RepairApplicationFormStatusEnum.CALLER_REPAIR_VERIFYING_ONE.getValue());
|
|
|
+ queryDTO.setStatusList(statusList);
|
|
|
+ Integer num = repairApplicationFormService.countRepair(queryDTO);
|
|
|
+ result.setVerifyRepairNum(num == null ? 0 : num);
|
|
|
+ queryDTO.setStatus(RepairApplicationFormStatusEnum.FINISHED.getValue());
|
|
|
+ queryDTO.setStatusList(null);
|
|
|
+ // 待关闭工单
|
|
|
+ num = repairApplicationFormService.countRepair(queryDTO);
|
|
|
+ result.setRepairCloseNum(num == null ? 0 : num);
|
|
|
+ // 巡检审核
|
|
|
+ FillGatherTaskDTO taskDTO = new FillGatherTaskDTO();
|
|
|
+ taskDTO.setCheckLeader(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ taskDTO.setStatus(FillGatherTaskStatusEnum.COMPLETED.getValue());
|
|
|
+ num = fillGatherTaskMapper.countTaskNum(taskDTO);
|
|
|
+ result.setFillCheckNum(num == null ? 0 : num);
|
|
|
+ // 出库审批
|
|
|
+ OutStoreFormDTO outStoreFormDTO = new OutStoreFormDTO();
|
|
|
+ outStoreFormDTO.setUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ outStoreFormDTO.setStatus(OutStoreStatusEnum.NOT_EXECUTE.getValue());
|
|
|
+ BigDecimal outVerifyNum = outStoreFormMapper.getOutStoreFormCount1(outStoreFormDTO);
|
|
|
+ result.setVerifyOutStoreNum(outVerifyNum == null ? new BigDecimal(0) : outVerifyNum);
|
|
|
+ // 计量待检定
|
|
|
+ SbInfoDTO sbInfoDTO = new SbInfoDTO();
|
|
|
+ sbInfoDTO.setUseType(SbUseType.BGCL.getValue());
|
|
|
+ sbInfoDTO.setIsMeasure(YesNoEnum.YES.getValue());
|
|
|
+ sbInfoDTO.setMeasureStatus(YesNoEnum.YES.getValue());
|
|
|
+ num = sbInfoMapper.countNum(sbInfoDTO);
|
|
|
+ result.setJljdNum(num == null ? 0 : num);
|
|
|
+ // 特种待检定
|
|
|
+ sbInfoDTO.setUseType(SbUseType.TZSB.getValue());
|
|
|
+ num = sbInfoMapper.countNum(sbInfoDTO);
|
|
|
+ result.setSpecialNum(num == null ? 0 : num);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 班组长数据
|
|
|
+ * @param result
|
|
|
+ */
|
|
|
+ private void handleMaintenance(WorkPlaceStatisticVO result){
|
|
|
+ // 维修中
|
|
|
+ RepairApplicationFormDTO queryDTO = new RepairApplicationFormDTO();
|
|
|
+ queryDTO.setRepairUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ queryDTO.setStatus(RepairApplicationFormStatusEnum.PROCESSING.getValue());
|
|
|
+ Integer num = repairApplicationFormService.countRepair(queryDTO);
|
|
|
+ result.setRepairNum(num == null ? 0 : num);
|
|
|
+ // 出库打印
|
|
|
+ OutStoreFormDTO outStoreFormDTO = new OutStoreFormDTO();
|
|
|
+ List<Integer> statusList = ListUtils.newArrayList();
|
|
|
+ statusList.add(OutStoreStatusEnum.PUSH_OK.getValue());
|
|
|
+ statusList.add(OutStoreStatusEnum.FINISH.getValue());
|
|
|
+ outStoreFormDTO.setStatusList(statusList);
|
|
|
+ outStoreFormDTO.setPrintFlag(YesNoEnum.NO.getValue());
|
|
|
+ outStoreFormDTO.setCreatedUserId(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ BigDecimal outNum = outStoreFormMapper.getOutStoreFormCount1(outStoreFormDTO);
|
|
|
+ result.setOutStorePrintNum(outNum == null ? 0 : outNum.intValue());
|
|
|
+ // 票证打印
|
|
|
+ queryDTO.setPrintFlag(YesNoEnum.NO.getValue());
|
|
|
+ num = repairApplicationFormService.countRepair(queryDTO);
|
|
|
+ result.setRepairTicketPrintNum(num == null ? 0 : num);
|
|
|
+ // 巡检任务
|
|
|
+ FillGatherTaskDTO taskDTO = new FillGatherTaskDTO();
|
|
|
+ statusList = ListUtils.newArrayList();
|
|
|
+ statusList.add(FillGatherTaskStatusEnum.LATE.getValue());
|
|
|
+ statusList.add(FillGatherTaskStatusEnum.PAUSE.getValue());
|
|
|
+ statusList.add(FillGatherTaskStatusEnum.PROCESSING.getValue());
|
|
|
+ statusList.add(FillGatherTaskStatusEnum.OVER_TIME.getValue());
|
|
|
+ statusList.add(FillGatherTaskStatusEnum.REFUSED.getValue());
|
|
|
+ taskDTO.setStatusList(statusList);
|
|
|
+ taskDTO.setChecker(SecurityUtils.getUserInfo().getUserId());
|
|
|
+ num = fillGatherTaskMapper.countTaskNum(taskDTO);
|
|
|
+ result.setFillCheckNum(num == null ? 0 : num);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 公共模块数据
|
|
|
+ * @param result
|
|
|
+ */
|
|
|
+ private void handleCommon(WorkPlaceStatisticVO result){
|
|
|
+ // 位号待完善
|
|
|
+ SbInfoDTO queryDTO = new SbInfoDTO();
|
|
|
+ queryDTO.setReplenishFlag(1);
|
|
|
+ Integer num = sbInfoMapper.countNum(queryDTO);
|
|
|
+ result.setPositionNoNum(num == null ? 0 : num);
|
|
|
+ // 设备型号待完善
|
|
|
+ queryDTO.setReplenishFlag(2);
|
|
|
+ num = sbInfoMapper.countNum(queryDTO);
|
|
|
+ result.setXinhaoNum(num == null ? 0 : num);
|
|
|
+ // 资产编号待完善
|
|
|
+ queryDTO.setReplenishFlag(3);
|
|
|
+ num = sbInfoMapper.countNum(queryDTO);
|
|
|
+ result.setFinancingNoNum(num == null ? 0 : num);
|
|
|
+ // 设备类型待完善
|
|
|
+ queryDTO.setReplenishFlag(4);
|
|
|
+ num = sbInfoMapper.countNum(queryDTO);
|
|
|
+ result.setSbTypeNum(num == null ? 0 : num);
|
|
|
+ }
|
|
|
/**
|
|
|
* 计算车间维修占比
|
|
|
* @param result
|
|
@@ -222,4 +454,99 @@ public class IndexServiceImpl implements IndexService {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
+ private void getCurrentlyRepairNum(LocalDateTime startTime,LocalDateTime endTime,WorkPlaceStatisticVO result){
|
|
|
+ RepairApplicationFormDTO queryDTO = new RepairApplicationFormDTO();
|
|
|
+ queryDTO.setSearchStartTime(startTime);
|
|
|
+ queryDTO.setSearchEndTime(endTime);
|
|
|
+ // 一周报修总数
|
|
|
+ List<RepairApplicationFormVO> list = repairApplicationFormService.getCurrentlyListByDTO(queryDTO);
|
|
|
+ if(list == null){
|
|
|
+ list = new ArrayList<>();
|
|
|
+ }
|
|
|
+ List<RepairApplicationFormVO> weekRepairList = ListUtils.newArrayList();
|
|
|
+ List<LocalDateTime> currentWeekStartAndEndList = DateUtils.currentWeek();
|
|
|
+ for(LocalDateTime tempDate: currentWeekStartAndEndList){
|
|
|
+ RepairApplicationFormVO vo = new RepairApplicationFormVO();
|
|
|
+ int tempTotalNum = 0;
|
|
|
+ vo.setWeekDayName(DateUtils.dateToString(tempDate,DateUtils.PATTERN_YMD).substring(4));
|
|
|
+ for(RepairApplicationFormVO useVO: list){
|
|
|
+ if(useVO.getApplyTime().toLocalDate().isEqual(tempDate.toLocalDate())){
|
|
|
+ tempTotalNum+=1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ vo.setTempTotalNum(new BigDecimal(tempTotalNum));
|
|
|
+ weekRepairList.add(vo);
|
|
|
+ }
|
|
|
+ result.setWeekRepairList(weekRepairList);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void getCurrentlyOutStoreNum(LocalDateTime startTime,LocalDateTime endTime,WorkPlaceStatisticVO result){
|
|
|
+ OutStoreFormDTO queryDTO = new OutStoreFormDTO();
|
|
|
+ queryDTO.setCreatedTimeStart(startTime);
|
|
|
+ queryDTO.setCreatedTimeEnd(endTime);
|
|
|
+ queryDTO.setStatus(OutStoreStatusEnum.FINISH.getValue());
|
|
|
+ // 一周出库领料总数
|
|
|
+ List<OutStoreFormVO> listOut = outStoreFormMapper.getCurrentlyList(queryDTO);
|
|
|
+ if(listOut == null){
|
|
|
+ listOut = new ArrayList<>();
|
|
|
+ }
|
|
|
+ List<OutStoreFormVO> weekStoreList = ListUtils.newArrayList();
|
|
|
+ for(LocalDateTime tempDate: DateUtils.currentWeek()){
|
|
|
+ OutStoreFormVO vo = new OutStoreFormVO();
|
|
|
+ int tempTotalNum = 0;
|
|
|
+ vo.setWeekDayName(DateUtils.dateToString(tempDate,DateUtils.PATTERN_YMD).substring(4));
|
|
|
+ for(OutStoreFormVO useVO: listOut){
|
|
|
+ if(useVO.getCreatedTime().toLocalDate().isEqual(tempDate.toLocalDate())){
|
|
|
+ tempTotalNum+=1;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ vo.setTotalNum(tempTotalNum);
|
|
|
+ weekStoreList.add(vo);
|
|
|
+ }
|
|
|
+ result.setWeekOutStoreList(weekStoreList);
|
|
|
+ }
|
|
|
+
|
|
|
+ public static void main(String[] args) {
|
|
|
+ // 新海家园
|
|
|
+ double wkje = 751.1;
|
|
|
+ int weikeNum = 70;
|
|
|
+ double tianshanbai = 183.2+1002.8+1060.2+338.16+737.16+1302+579.54+819.92+124.4+216+1328.18+279+806.46+278.72+822+87.2+496.8+607.2+189.52;
|
|
|
+ int tianshanbaiNum = 14+92+90+32+56+120+74+56+12+20+72+38+78+42+86+4+46+44+20;
|
|
|
+ double quanchen = 588.6+487.2+155+1093.12;
|
|
|
+ int quanchenNum = 54+34+10+92;
|
|
|
+ double v3weik = 235.14+484.16+412.96;
|
|
|
+ int v3weikNum = 20+36+36;
|
|
|
+ int total = weikeNum + tianshanbaiNum + quanchenNum + v3weikNum;
|
|
|
+ double totalD = wkje + tianshanbai + quanchen + v3weik;
|
|
|
+ System.out.println("联家恒通店:");
|
|
|
+ System.out.println(" 总包数:"+total);
|
|
|
+ System.out.println(" 总金额:"+BigDecimalUtil.round(totalD,2));
|
|
|
+ System.out.println(" 未可总销管包数:"+weikeNum);
|
|
|
+ System.out.println(" 总销售金额:" + wkje);
|
|
|
+ System.out.println(" 未可V3销售包数:"+v3weikNum);
|
|
|
+ System.out.println(" 总销售金额:" + v3weik);
|
|
|
+ System.out.println(" 新全程包数:"+quanchenNum);
|
|
|
+ System.out.println(" 新全程销售金额:"+ quanchen);
|
|
|
+ System.out.println(" 天山白包数:"+tianshanbaiNum);
|
|
|
+ System.out.println(" 天山白销售金额:"+ BigDecimalUtil.round(tianshanbai,2));
|
|
|
+ // 新站广场
|
|
|
+ double wkje2 = 8.90+82.50+39.60+119.90+610.40+63.60+56.80+89.60+538.20+135.50;
|
|
|
+ int weikeNum2 = 1+5+2+11+56+4+4+7+52+12;
|
|
|
+ double tianshanbai2 = 42.90+32.30+71.40+226.10+149.00+360.80+233.60+316.80+119.20+174.30+124.90+37.80+154.60;
|
|
|
+ int tianshanbaiNum2 = 3+2+6+19+10+28+16+12+8+13+7+2+13;
|
|
|
+ double quanchen2 = 74.40+17.50+16.50+76.30;
|
|
|
+ int quanchenNum2 = 5+1+1+7;
|
|
|
+ total = weikeNum2 + tianshanbaiNum2 + quanchenNum2;
|
|
|
+ totalD = wkje2 + tianshanbai2 + quanchen2;
|
|
|
+ System.out.println("华联新站广场店:");
|
|
|
+ System.out.println(" 总包数:"+total);
|
|
|
+ System.out.println(" 总销售金额:"+ BigDecimalUtil.round(totalD,2));
|
|
|
+ System.out.println(" 未可总包数(含V3):"+weikeNum2);
|
|
|
+ System.out.println(" 未可总销售金额(含V3):" + wkje2);
|
|
|
+ System.out.println(" 天山白总包数:"+tianshanbaiNum2 );
|
|
|
+ System.out.println(" 天山白总销售金额:"+ BigDecimalUtil.round(tianshanbai2,2));
|
|
|
+ System.out.println(" 新全程总包数:"+quanchenNum2);
|
|
|
+ System.out.println(" 新全程总销售金额:"+ quanchen2);
|
|
|
+ }
|
|
|
+
|
|
|
}
|