gongdecai %!s(int64=3) %!d(string=hai) anos
pai
achega
2b854749f7

+ 9 - 1
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/sys/CustomerBillingService.java

@@ -13,6 +13,7 @@ import com.iotechn.unimall.data.domain.CustomerBillingInfoDO;
 import com.iotechn.unimall.data.dto.CustomerBillingInfoDTO;
 
 import javax.servlet.http.HttpServletResponse;
+import java.util.List;
 
 /**
  * Generate Code By Unimall
@@ -34,8 +35,15 @@ public interface CustomerBillingService {
             @NotNull @HttpParam(name = "adminId", type = HttpParamType.ADMIN_ID, description = "管理员ID") Long adminId) throws ServiceException;
 
 
+    @HttpMethod(description = "查询客户", permission = "customerBilling:customerbilling:customerList", permissionParentName = "其他", permissionName = "CustomerBilling")
+    public List<String> customerList() throws ServiceException ;
+
+    @HttpMethod(description = "查询月份", permission = "customerBilling:customerbilling:cusDate", permissionParentName = "其他", permissionName = "CustomerBilling")
+    public List<CustomerBillingInfoDO> cusDate(@HttpParam(name = "customer", type = HttpParamType.COMMON, description = "customer") String customer)throws ServiceException;
+
+
     @HttpMethod(description = "查询详情", permission = "customerBilling:customerbilling:getInfo", permissionParentName = "其他", permissionName = "CustomerBilling")
-    public CustomerBillingInfoDO getInfo(Long id) throws ServiceException;
+    public CustomerBillingInfoDO getInfo(@HttpParam(name = "id", type = HttpParamType.COMMON, description = "id") Long id) throws ServiceException;
 
 
 

+ 41 - 0
unimall-admin-api/src/main/java/com/iotechn/unimall/admin/api/sys/CustomerBillingServiceImpl.java

@@ -23,10 +23,13 @@ import org.springframework.transaction.annotation.Transactional;
 import org.apache.ibatis.session.RowBounds;
 import org.springframework.beans.BeanUtils;
 import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
+import tk.mybatis.mapper.util.StringUtil;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * Generate Code By Unimall
@@ -50,11 +53,49 @@ public class CustomerBillingServiceImpl implements CustomerBillingService {
     @Override
     public Page<CustomerBillingInfoDO> list(CustomerBillingInfoDTO selectDTO, Integer page, Integer limit, Long adminId) throws ServiceException {
         Wrapper<CustomerBillingInfoDO> wrapper = new EntityWrapper<CustomerBillingInfoDO>();
+        if (!StringUtils.isEmpty(selectDTO.getPayNo())) {
+            wrapper.like("pay_no", selectDTO.getPayNo());
+        }
+        if (!StringUtils.isEmpty(selectDTO.getBusinessType())) {
+            wrapper.eq("business_type", selectDTO.getBusinessType());
+        }
+        if (!StringUtils.isEmpty(selectDTO.getStatus())) {
+            wrapper.eq("status", selectDTO.getStatus());
+        }
+        if (StringUtil.isNotEmpty(selectDTO.getStartDate())) {
+            wrapper.and("DATE_FORMAT(closing_date,'%Y%m%d') >= DATE_FORMAT('" + selectDTO.getStartDate() + "','%Y%m%d')");
+        }
+        if (StringUtil.isNotEmpty(selectDTO.getEndDate())) {
+            wrapper.and("DATE_FORMAT(closing_date,'%Y%m%d') <= DATE_FORMAT('" + selectDTO.getEndDate() + "','%Y%m%d')");
+
+        }
         List<CustomerBillingInfoDO> list = customerBillingInfoMapper.selectPage(new RowBounds((page - 1) * limit, limit), wrapper);
         Integer count = customerBillingInfoMapper.selectCount(wrapper);
         return new Page<CustomerBillingInfoDO>(list, page, limit, count);
     }
 
+
+    @Override
+    public List<String> customerList() throws ServiceException {
+        Wrapper<CustomerBillingInfoDO> wrapper = new EntityWrapper<CustomerBillingInfoDO>();
+            wrapper.groupBy("customer");
+        List<CustomerBillingInfoDO> list = customerBillingInfoMapper.selectList(wrapper);
+        List<String> customer = list.stream().map(CustomerBillingInfoDO::getCustomer).collect(Collectors.toList());
+        return customer;
+    }
+    @Override
+    public List<CustomerBillingInfoDO> cusDate(String customer) throws ServiceException {
+        Wrapper<CustomerBillingInfoDO> wrapper = new EntityWrapper<CustomerBillingInfoDO>();
+        wrapper.eq("customer",customer);
+        List<CustomerBillingInfoDO> list = customerBillingInfoMapper.selectList(wrapper);
+        for(int i=0;i<list.size();i++){
+            List<CustomerBillingDetailDO> customerBillingDetailDOS = customerBillingDetailMapper.selectList(new EntityWrapper<CustomerBillingDetailDO>()
+                    .eq("info_id", list.get(i).getId()));
+            list.get(i).setCustomerBillingDetailDOList(customerBillingDetailDOS);
+        }
+        return list;
+    }
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public CustomerBillingInfoDO create(CustomerBillingInfoDTO insertDTO, Long adminId) throws ServiceException {

+ 8 - 1
unimall-data/src/main/java/com/iotechn/unimall/data/dto/CustomerBillingInfoDTO.java

@@ -7,9 +7,11 @@ import java.awt.*;
 import java.util.Date;
 import java.util.List;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.iotechn.unimall.core.framework.aspectj.lang.annotaion.Excel;
 import com.iotechn.unimall.data.domain.CustomerBillingDetailDO;
 import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
 
 /**
  * Generate Code By Unimall
@@ -64,5 +66,10 @@ public class CustomerBillingInfoDTO extends SuperDTO {
     private String updatePeople;
     private List<CustomerBillingDetailDTO> customerBillingDetailDTOS;
     private List<CustomerBillingInfoDTO> customerBillingInfoDTOS;
-
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private String startDate;
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    private String endDate;
 }