对比新文件 |
| | |
| | | package com.gk.firework.Service.ServiceImpl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.gk.firework.Domain.DeliveryDetailInfo; |
| | | import com.gk.firework.Domain.DeliveryOrderInfo; |
| | | import com.gk.firework.Domain.Exception.BusinessException; |
| | | import com.gk.firework.Domain.ProductInfo; |
| | | import com.gk.firework.Domain.UserInfo; |
| | | import com.gk.firework.Domain.Utils.StringUtils; |
| | | import com.gk.firework.Domain.Vo.DirectionDetail; |
| | | import com.gk.firework.Domain.Vo.FireworkDeal; |
| | | import com.gk.firework.Mapper.DeliveryDetailInfoMapper; |
| | | import com.gk.firework.Mapper.ProductInfoMapper; |
| | | import com.gk.firework.Service.DeliveryDetailService; |
| | | import com.gk.firework.Service.ProductService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.*; |
| | | |
| | | /** |
| | | * @author : jingjy |
| | | * @date : 2021/4/1 10:25 |
| | | */ |
| | | @Service("DeliveryDetailService") |
| | | public class DeliveryDetailServiceImpl extends ServiceImpl<DeliveryDetailInfoMapper, DeliveryDetailInfo> implements DeliveryDetailService { |
| | | @Autowired |
| | | private ProductInfoMapper productInfoMapper; |
| | | @Autowired |
| | | private DeliveryDetailInfoMapper deliveryDetailInfoMapper; |
| | | @Autowired |
| | | private ProductService productService; |
| | | |
| | | @Override |
| | | public List<DeliveryDetailInfo> generateDeliveryDetail(DeliveryOrderInfo deliveryOrderInfo, UserInfo userInfo, List<String> directionCodes) { |
| | | List<DeliveryDetailInfo> deliveryDetailInfos = new ArrayList<>(); |
| | | int boxNum = 0; |
| | | for (String dire : directionCodes){ |
| | | DirectionDetail detail = FireworkDeal.dealDirectionCode(dire); |
| | | ProductInfo productInfo= productInfoMapper.selectProductByDirectionCode(detail.getItemCode()); |
| | | int num = 1; |
| | | if (productInfo != null){ |
| | | if (detail.getLength() == FireworkDeal.DIRECTION_OUTSIDE){ |
| | | num = Integer.parseInt(detail.getBoxNo()); |
| | | } |
| | | DeliveryDetailInfo deliveryDetailInfo = new DeliveryDetailInfo(); |
| | | deliveryDetailInfo.setCreateby(userInfo.getUsername()); |
| | | deliveryDetailInfo.setCreateat(new Date()); |
| | | deliveryDetailInfo.setDeliverycode(deliveryOrderInfo.getOrdercode()); |
| | | deliveryDetailInfo.setDirectioncode(dire); |
| | | deliveryDetailInfo.setItemname(productInfo.getName()); |
| | | deliveryDetailInfo.setItemcode(productInfo.getDirectionCode()); |
| | | deliveryDetailInfo.setNum(num); |
| | | deliveryDetailInfos.add(deliveryDetailInfo); |
| | | boxNum += num; |
| | | } |
| | | } |
| | | deliveryOrderInfo.setBoxnum(boxNum); |
| | | return deliveryDetailInfos; |
| | | } |
| | | |
| | | /** |
| | | * @Description: 根据{出库单号}查询出库明细 |
| | | * @date 2021/4/15 14:36 |
| | | */ |
| | | @Override |
| | | public Page selectDetailPage(Page<Map> page, Map filter) { |
| | | String code = (String) filter.get("code"); |
| | | if (StringUtils.isBlank(code)) { |
| | | throw new BusinessException("出库单号不能为空"); |
| | | } |
| | | |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("code", code); |
| | | params.put("starttime", filter.get("starttime")); |
| | | params.put("endtime", filter.get("endtime")); |
| | | List<Map> list = deliveryDetailInfoMapper.selectDetailPage(page,params); |
| | | return page.setRecords(list); |
| | | } |
| | | |
| | | /** |
| | | * @Description: 根据{出库单code}查询出库明细并导出 |
| | | * @date 2021/4/15 11:09 |
| | | */ |
| | | @Override |
| | | public List<Map> selectDetailExport(String code) { |
| | | return deliveryDetailInfoMapper.selectDetailExport(code); |
| | | } |
| | | |
| | | @Override |
| | | public List<DeliveryDetailInfo> getDetailByCode(String ordercode) { |
| | | LambdaQueryWrapper<DeliveryDetailInfo> wrapper = new LambdaQueryWrapper<>(); |
| | | wrapper.eq(DeliveryDetailInfo::getDeliverycode,ordercode); |
| | | return deliveryDetailInfoMapper.selectList(wrapper); |
| | | } |
| | | |
| | | @Override |
| | | public BigDecimal selectEnterpriseDeliveryNumber(String enterprisenumber, Object starttime, Object endtime) { |
| | | return deliveryDetailInfoMapper.selectEnterpriseDeliveryNumber(enterprisenumber,starttime,endtime); |
| | | } |
| | | |
| | | @Override |
| | | public IPage selectEnterpriseTypeDelivery(Page<Map> page, Map<String, Object> filter, UserInfo user) { |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("starttime", filter.get("starttime")); |
| | | params.put("endtime", filter.get("endtime")); |
| | | params.put("enterprisename", filter.get("enterprisename")); |
| | | params.put("safetysupervision", filter.get("safetysupervision")); |
| | | params.put("province", filter.get("province")); |
| | | params.put("city", filter.get("city")); |
| | | params.put("district", filter.get("district")); |
| | | List<String> list = productService.selectTypes(); |
| | | List<Map> res = deliveryDetailInfoMapper.selectEnterpriseTypeDelivery(page, params, list); |
| | | Map totalRow = deliveryDetailInfoMapper.selectAllType(params, list); |
| | | ArrayList<Map> result = new ArrayList<>(res); |
| | | result.add(totalRow); |
| | | return page.setRecords(result); |
| | | } |
| | | |
| | | @Override |
| | | public List<Map> selectExportEnterpriseTypeDelivery(Map<String, Object> filter, UserInfo user) { |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("starttime", filter.get("starttime")); |
| | | params.put("endtime", filter.get("endtime")); |
| | | params.put("enterprisename", filter.get("enterprisename")); |
| | | params.put("safetysupervision", filter.get("safetysupervision")); |
| | | params.put("province", filter.get("province")); |
| | | params.put("city", filter.get("city")); |
| | | params.put("district", filter.get("district")); |
| | | List<String> list = productService.selectTypes(); |
| | | List<Map> res = deliveryDetailInfoMapper.selectEnterpriseTypeDelivery(params, list); |
| | | Map totalRow = deliveryDetailInfoMapper.selectAllType(params, list); |
| | | ArrayList<Map> result = new ArrayList<>(res); |
| | | result.add(totalRow); |
| | | return result; |
| | | } |
| | | |
| | | @Override |
| | | public IPage selectCityTypeDelivery(Page<Map> page, Map<String, Object> filter, UserInfo user) { |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("province", "新疆维吾尔自治区"); |
| | | params.put("starttime", filter.get("starttime")); |
| | | params.put("endtime", filter.get("endtime")); |
| | | params.put("safetysupervision", filter.get("safetysupervision")); |
| | | params.put("enterprisename", filter.get("enterprisename")); |
| | | List<String> list = productService.selectTypes(); |
| | | List<Map> res = deliveryDetailInfoMapper.selectCityTypeDelivery(page,params, list); |
| | | Map totalRow = deliveryDetailInfoMapper.selectAllType(params, list); |
| | | ArrayList<Map> result = new ArrayList<>(res); |
| | | result.add(totalRow); |
| | | return page.setRecords(result); |
| | | } |
| | | |
| | | @Override |
| | | public List<Map> selectExportCityTypeDelivery(Map<String, Object> filter, UserInfo user) { |
| | | Map<String, Object> params = new HashMap<>(); |
| | | params.put("province", "新疆维吾尔自治区"); |
| | | params.put("starttime", filter.get("starttime")); |
| | | params.put("endtime", filter.get("endtime")); |
| | | params.put("safetysupervision", filter.get("safetysupervision")); |
| | | params.put("enterprisename", filter.get("enterprisename")); |
| | | List<String> list = productService.selectTypes(); |
| | | List<Map> res = deliveryDetailInfoMapper.selectCityTypeDelivery(params, list); |
| | | Map totalRow = deliveryDetailInfoMapper.selectAllType(params, list); |
| | | ArrayList<Map> result = new ArrayList<>(res); |
| | | result.add(totalRow); |
| | | return result; |
| | | } |
| | | } |