zouxuan 5 years ago
parent
commit
8941746efa

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDetailDao.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.dal.dao;
 
+import com.ym.mec.biz.dal.dto.musicalListDetailDto;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.common.dal.BaseDAO;
@@ -43,4 +44,11 @@ public interface StudentPaymentOrderDetailDao extends BaseDAO<Long, StudentPayme
      * @return
      */
     List<StudentPaymentOrderDetail> findUserApplyOrder(@Param("userId") Integer userId, @Param("status") DealStatusEnum status);
+
+    /**
+     * 乐器采购清单明细
+     * @param musicGroupId
+     * @return
+     */
+    List<musicalListDetailDto> getMusicalListDetail(String musicGroupId);
 }

+ 107 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/musicalListDetailDto.java

@@ -0,0 +1,107 @@
+package com.ym.mec.biz.dal.dto;
+
+import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
+
+import java.math.BigDecimal;
+
+public class musicalListDetailDto {
+    private Integer userId;
+
+    private String goodsNames;
+
+    private String musicGroupName;
+
+    private String username;
+
+    private String organName;
+
+    private KitGroupPurchaseTypeEnum kitGroupPurchaseTypeEnum;
+
+    private BigDecimal musicalAmount;
+
+    private BigDecimal accessoriesAmount;
+
+    private BigDecimal courseAmount;
+
+    private BigDecimal orderAmount;
+
+    public String getMusicGroupName() {
+        return musicGroupName;
+    }
+
+    public void setMusicGroupName(String musicGroupName) {
+        this.musicGroupName = musicGroupName;
+    }
+
+    public Integer getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Integer userId) {
+        this.userId = userId;
+    }
+
+    public String getGoodsNames() {
+        return goodsNames;
+    }
+
+    public void setGoodsNames(String goodsNames) {
+        this.goodsNames = goodsNames;
+    }
+
+    public String getUsername() {
+        return username;
+    }
+
+    public void setUsername(String username) {
+        this.username = username;
+    }
+
+    public String getOrganName() {
+        return organName;
+    }
+
+    public void setOrganName(String organName) {
+        this.organName = organName;
+    }
+
+    public KitGroupPurchaseTypeEnum getKitGroupPurchaseTypeEnum() {
+        return kitGroupPurchaseTypeEnum;
+    }
+
+    public void setKitGroupPurchaseTypeEnum(KitGroupPurchaseTypeEnum kitGroupPurchaseTypeEnum) {
+        this.kitGroupPurchaseTypeEnum = kitGroupPurchaseTypeEnum;
+    }
+
+    public BigDecimal getMusicalAmount() {
+        return musicalAmount;
+    }
+
+    public void setMusicalAmount(BigDecimal musicalAmount) {
+        this.musicalAmount = musicalAmount;
+    }
+
+    public BigDecimal getAccessoriesAmount() {
+        return accessoriesAmount;
+    }
+
+    public void setAccessoriesAmount(BigDecimal accessoriesAmount) {
+        this.accessoriesAmount = accessoriesAmount;
+    }
+
+    public BigDecimal getCourseAmount() {
+        return courseAmount;
+    }
+
+    public void setCourseAmount(BigDecimal courseAmount) {
+        this.courseAmount = courseAmount;
+    }
+
+    public BigDecimal getOrderAmount() {
+        return orderAmount;
+    }
+
+    public void setOrderAmount(BigDecimal orderAmount) {
+        this.orderAmount = orderAmount;
+    }
+}

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderDetailService.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.service;
 
+import com.ym.mec.biz.dal.dto.musicalListDetailDto;
 import com.ym.mec.biz.dal.entity.Goods;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
@@ -57,4 +58,10 @@ public interface StudentPaymentOrderDetailService extends BaseService<Long, Stud
      */
     List<StudentPaymentOrderDetail>findUserApplyOrder(Integer userId,DealStatusEnum status);
 
+    /**
+     * 乐器采购清单明细
+     * @param musicGroupId
+     * @return
+     */
+    List<musicalListDetailDto> getMusicalListDetail(String musicGroupId);
 }

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderDetailServiceImpl.java

@@ -8,6 +8,7 @@ import java.util.Map;
 
 import com.ym.mec.biz.dal.dao.MusicGroupDao;
 import com.ym.mec.biz.dal.dao.OrganizationDao;
+import com.ym.mec.biz.dal.dto.musicalListDetailDto;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.service.MusicGroupService;
 import org.apache.commons.lang3.StringUtils;
@@ -158,4 +159,9 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
     public List<StudentPaymentOrderDetail> findUserApplyOrder(Integer userId, DealStatusEnum status) {
         return studentPaymentOrderDetailDao.findUserApplyOrder(userId, status);
     }
+
+    @Override
+    public List<musicalListDetailDto> getMusicalListDetail(String musicGroupId) {
+        return studentPaymentOrderDetailDao.getMusicalListDetail(musicGroupId);
+    }
 }

+ 2 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -169,8 +169,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 		VipGroupApplyBaseInfoDto vipGroupApplyBaseInfoDto=vipGroup.getVipGroupApplyBaseInfo();
 
-        if(Objects.nonNull(vipGroupApplyBaseInfoDto.getOfflineClassesUnitPrice())
-            &&Objects.nonNull(vipGroupApplyBaseInfoDto.getOnlineClassesUnitPrice())){
+        if(Objects.isNull(vipGroupApplyBaseInfoDto.getOfflineClassesUnitPrice())
+            &&Objects.isNull(vipGroupApplyBaseInfoDto.getOnlineClassesUnitPrice())){
             throw new BizException("请设置教师课酬");
         }
 

+ 15 - 0
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderDetailMapper.xml

@@ -112,4 +112,19 @@
         AND spo.status_=#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         AND spo.type_ = 'APPLY'
     </select>
+    <resultMap id="musicalListDetailDtoMap" type="com.ym.mec.biz.dal.dto.musicalListDetailDto">
+        <result property="username" column="username_"/>
+        <result property="userId" column="user_id_"/>
+        <result property="musicGroupName" column="muaic_group_name_"/>
+        <result property="accessoriesAmount" column="accessories_amount_"/>
+        <result property="courseAmount" column="course_amount_"/>
+        <result property="kitGroupPurchaseTypeEnum" column="kit_group_purchase_type_"/>
+        <result property="musicalAmount" column="musical_amount_"/>
+        <result property="orderAmount" column="order_amount_"/>
+        <result property="organName" column="organ_name_"/>
+        <result property="goodsNames" column="goods_names_"/>
+    </resultMap>
+    <select id="getMusicalListDetail" resultMap="musicalListDetailDtoMap">
+
+    </select>
 </mapper>

+ 31 - 28
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -2,6 +2,7 @@ package com.ym.mec.web.controller;
 
 import com.ym.mec.biz.dal.dto.StudentApplyDetailDto;
 import com.ym.mec.biz.dal.dto.TeacherSalaryDto;
+import com.ym.mec.biz.dal.dto.musicalListDetailDto;
 import com.ym.mec.biz.dal.entity.Goods;
 import com.ym.mec.biz.dal.page.CourseScheduleTeacherSalaryQueryInfo;
 import com.ym.mec.biz.dal.page.StudentRegistrationQueryInfo;
@@ -46,25 +47,36 @@ public class ExportController extends BaseController {
         if(musicalList == null || musicalList.size() < 1){
             throw new BizException("数据为空");
         }
-        OutputStream outputStream = null;
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[] {"乐团","分部","商品类型", "商品名称", "型号", "数量"}, new String[] {
                     "brief","memo","type.desc","name","specification","sellCount"}, musicalList);
-            response.setContentType("application/msexcel");
-            response.setHeader("Content-disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
-            outputStream = response.getOutputStream();
-            workbook.write(outputStream);
-            outputStream.flush();
+            response.setContentType("application/octet-stream");
+            response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
+            response.flushBuffer();
+            workbook.write(response.getOutputStream());
+            workbook.close();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    @ApiOperation(value = "导出学员采购清单明细")
+    @PostMapping("order/musicalListDetailExport")
+    public void musicalListDetailExport(HttpServletResponse response, String musicGroupId){
+        List<musicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId);
+        if(musicalList == null || musicalList.size() < 1){
+            throw new BizException("数据为空");
+        }
+        try {
+            HSSFWorkbook workbook = POIUtil.exportExcel(new String[] {"乐团","学员编号","购买商品","学员姓名", "分部", "采购方式", "乐器金额", "教辅金额", "课程金额", "订单总价"}, new String[] {
+                    "musicGroupName","userId","goodsNames","username","organName","kitGroupPurchaseTypeEnum.msg","musicalAmount","accessoriesAmount","courseAmount","orderAmount"}, musicalList);
+            response.setContentType("application/octet-stream");
+            response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
+            response.flushBuffer();
+            workbook.write(response.getOutputStream());
+            workbook.close();
         } catch (Exception e) {
             e.printStackTrace();
-        } finally {
-            if (outputStream != null) {
-                try {
-                    outputStream.close();
-                } catch (IOException e) {
-                    e.printStackTrace();
-                }
-            }
         }
     }
 
@@ -93,25 +105,16 @@ public class ExportController extends BaseController {
     @RequestMapping("courseScheduleTeacherSalary/export")
     public void export(CourseScheduleTeacherSalaryQueryInfo queryInfo, HttpServletResponse response) {
         List<TeacherSalaryDto> teacherSalaries = courseScheduleTeacherSalaryService.querySalaries(queryInfo).getRows();
-        OutputStream ouputStream = null;
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[] { "用户编号","用户名", "手机号", "课程类型", "实际薪水", "补助", "结算时间", "教师角色"}, new String[] {
                     "userId","username", "phone", "type.msg", "name", "actualSalary", "subsidy", "settlementTime", "teacherRole.msg"}, teacherSalaries);
-            response.setContentType("application/vnd.ms-excel");
-            response.setHeader("Content-disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
-            ouputStream = response.getOutputStream();
-            workbook.write(ouputStream);
-            ouputStream.flush();
+            response.setContentType("application/octet-stream");
+            response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
+            response.flushBuffer();
+            workbook.write(response.getOutputStream());
+            workbook.close();
         } catch (Exception e) {
             e.printStackTrace();
-        } finally {
-            if (ouputStream != null) {
-                try {
-                    ouputStream.close();
-                } catch (IOException e) {
-                    e.printStackTrace();
-                }
-            }
         }
     }