| | |
| | | import com.dy.common.springUtil.SpringContextUtil; |
| | | import com.dy.pmsGlobal.daoOth.OthStatisticWorkloadMapper; |
| | | import com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper; |
| | | import com.dy.pmsGlobal.daoPr.PrOrderItemMapper; |
| | | import com.dy.pmsGlobal.daoPr.PrOrderMapper; |
| | | import com.dy.pmsGlobal.daoSta.*; |
| | | import com.dy.pmsGlobal.pojoPr.PrOrder; |
| | | import com.dy.pmsGlobal.pojoPr.PrOrderItem; |
| | | import com.dy.pmsGlobal.pojoSta.*; |
| | | import com.dy.pmsGlobal.util.UserUtil; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.dubbo.common.utils.PojoUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.time.LocalDate; |
| | | import java.time.LocalDateTime; |
| | | import java.time.LocalTime; |
| | |
| | | private StaRepairInfoMapper repairInfoDao; |
| | | private PrAssemblyPlanMapper assemblyPlanDao; |
| | | private OthStatisticWorkloadMapper workloadDao; |
| | | private PrOrderMapper orderDao; |
| | | |
| | | @Autowired |
| | | public void setOrderDao(PrOrderMapper orderDao) { |
| | | this.orderDao = orderDao; |
| | | } |
| | | |
| | | @Autowired |
| | | public void setDeviceLastDao(StaDeviceLastMapper deviceLastDao) { |
| | |
| | | return map.values().stream().collect(Collectors.toList());*/ |
| | | return list; |
| | | } |
| | | |
| | | public List<JSONObject> queryOrderList() { |
| | | List<JSONObject> list = assemblyPlanDao.queryPlanList(); |
| | | /* Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(); |
| | | List<PrOrder> orderList = orderDao.selectAll(params); |
| | | for (PrOrder prOrder : orderList) { |
| | | changeRate(prOrder); |
| | | }*/ |
| | | return null; |
| | | } |
| | | private void changeRate(PrOrder prOrder) { |
| | | if (prOrder != null && prOrder.items != null) { |
| | | List<PrOrderItem> items = prOrder.items; |
| | | for (int i = 1; i < items.size(); i++) { |
| | | for (int j = i - 1; j >= 0; j--) { |
| | | //拿着i依次跟上一个比较,如果产品相同,则上一个记录complete_number - number 如果 > 0 分给i ,如果 < 0 则将 complete_number 置为0 |
| | | if (items.get(j).getProId().intValue() == items.get(i).getProId().intValue()) { |
| | | int remainNumber = items.get(j).getCompleteNumber() - items.get(j).getNumber(); |
| | | if (remainNumber > 0) { |
| | | items.get(j).setCompleteNumber(items.get(j).getNumber()); |
| | | items.get(j).setCompleteRate("100.00%"); |
| | | items.get(i).setCompleteNumber(remainNumber); |
| | | BigDecimal remainBig = new BigDecimal(remainNumber * 100); |
| | | BigDecimal iNumberBig = new BigDecimal(items.get(i).getNumber()); |
| | | BigDecimal result = remainBig.divide(iNumberBig, 2, RoundingMode.HALF_UP); |
| | | items.get(i).setCompleteRate(result.toString() + "%"); |
| | | } else { |
| | | items.get(i).setCompleteNumber(0); |
| | | items.get(i).setCompleteRate("0.00%"); |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |