Browse Source

增加导出报名缴费中乐团缴费情况

周箭河 5 năm trước cách đây
mục cha
commit
1a6067132f

+ 21 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/CooperationOrgan.java

@@ -41,6 +41,8 @@ public class CooperationOrgan {
 	/** 分部编号 */
 	@ApiModelProperty(value = "分部编号", required = false)
 	private Integer organId;
+	
+	private Organization organization = new Organization();
 
 	/** 联系人 */
 	@ApiModelProperty(value = "联系人", required = false)
@@ -60,6 +62,9 @@ public class CooperationOrgan {
 
 	@ApiModelProperty(value = "权属类型(OWN('自有'),COOPERATION('合作'),LEASE('租赁'))", required = false)
 	private OwnershipType ownershipType;
+	
+	@ApiModelProperty(value = "是否启用", required = false)
+	private Boolean isEnable;
 
 	/**  */
 	private java.util.Date createTime;
@@ -75,6 +80,14 @@ public class CooperationOrgan {
 		this.organId = organId;
 	}
 
+	public Organization getOrganization() {
+		return organization;
+	}
+
+	public void setOrganization(Organization organization) {
+		this.organization = organization;
+	}
+
 	public void setId(Integer id) {
 		this.id = id;
 	}
@@ -147,6 +160,14 @@ public class CooperationOrgan {
 		this.ownershipType = ownershipType;
 	}
 
+	public Boolean getIsEnable() {
+		return isEnable;
+	}
+
+	public void setIsEnable(Boolean isEnable) {
+		this.isEnable = isEnable;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/CooperationOrganQueryInfo.java

@@ -5,6 +5,8 @@ import com.ym.mec.common.page.QueryInfo;
 public class CooperationOrganQueryInfo extends QueryInfo {
 
     private String organId;
+    
+    private Boolean isEnable;
 
 	public String getOrganId() {
 		return organId;
@@ -13,4 +15,12 @@ public class CooperationOrganQueryInfo extends QueryInfo {
 	public void setOrganId(String organId) {
 		this.organId = organId;
 	}
+
+	public Boolean getIsEnable() {
+		return isEnable;
+	}
+
+	public void setIsEnable(Boolean isEnable) {
+		this.isEnable = isEnable;
+	}
 }

+ 23 - 8
mec-biz/src/main/resources/config/mybatis/CooperationOrganMapper.xml

@@ -12,10 +12,16 @@
         <result column="job_" property="job"/>
         <result column="mobile_no_" property="mobileNo"/>
         <result column="address_" property="address"/>
+        <result column="is_enable_" property="isEnable"/>
         <result column="ownership_type_" property="ownershipType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
     </resultMap>
+    
+    <resultMap type="com.ym.mec.biz.dal.entity.CooperationOrgan" id="ExtCooperationOrgan" extends="CooperationOrgan">
+    	<result column="organ_id_" property="organization.id"/>
+    	<result column="organ_name_" property="organization.name"/>
+    </resultMap>
 
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="CooperationOrgan">
@@ -33,8 +39,8 @@
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.CooperationOrgan"
             useGeneratedKeys="true" keyColumn="id" keyProperty="id">
         INSERT INTO cooperation_organ
-        (id_,name_,linkman_,job_,mobile_no_,address_,organ_id_,create_time_,update_time_,ownership_type_)
-        VALUES(#{id},#{name},#{linkman},#{job},#{mobileNo},#{address},#{organId},now(),now(),#{ownershipType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler})
+        (id_,name_,linkman_,job_,mobile_no_,address_,organ_id_,create_time_,update_time_,ownership_type_,is_enable_)
+        VALUES(#{id},#{name},#{linkman},#{job},#{mobileNo},#{address},#{organId},now(),now(),#{ownershipType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{isEnable})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -65,6 +71,9 @@
             <if test="organId != null">
                 organ_id_ = #{organId},
             </if>
+            <if test="isEnable != null">
+                is_enable_ = #{isEnable},
+            </if>
         </set>
         WHERE id_ = #{id}
     </update>
@@ -75,19 +84,22 @@
 	</update>
 
     <!-- 分页查询 -->
-    <select id="queryPage" resultMap="CooperationOrgan"
+    <select id="queryPage" resultMap="ExtCooperationOrgan"
             parameterType="map">
-        SELECT * FROM cooperation_organ
+        SELECT co.*,o.name_ organ_name_ FROM cooperation_organ co left join organization o on co.organ_id_ = o.id_
         <where>
-                del_flag_ != 1
+                co.del_flag_ != 1
             <if test="search != null">
-                AND (id_ LIKE CONCAT('%',#{search},'%') OR name_ LIKE CONCAT('%',#{search},'%'))
+                AND (co.id_ LIKE CONCAT('%',#{search},'%') OR co.name_ LIKE CONCAT('%',#{search},'%'))
             </if>
 	        <if test="organId != null">
-	            AND FIND_IN_SET(organ_id_,#{organId})
+	            AND FIND_IN_SET(co.organ_id_,#{organId})
+	        </if>
+	        <if test="isEnable != null">
+	            AND co.is_enable_ = #{isEnable}
 	        </if>
         </where>
-        ORDER BY update_time_ DESC
+        ORDER BY co.update_time_ DESC
         <include refid="global.limit"/>
     </select>
 
@@ -102,6 +114,9 @@
 	        <if test="organId != null">
 	            AND FIND_IN_SET(organ_id_,#{organId})
 	        </if>
+	        <if test="isEnable != null">
+	            AND is_enable_ = #{isEnable}
+	        </if>
         </where>
 	</select>
 

+ 2 - 20
mec-biz/src/main/resources/config/mybatis/PracticeGroupMapper.xml

@@ -534,6 +534,7 @@
             sys_user su
         WHERE
             1=1
+            AND su.del_flag_=0 AND su.lock_flag_=0
 			AND FIND_IN_SET('STUDENT',su.user_type_)
             <if test="organIdList!=null">
                 AND su.organ_id_ IN
@@ -544,16 +545,6 @@
             <if test="search != null">
                 AND (su.username_ LIKE CONCAT('%', #{search}, '%') OR su.phone_ LIKE CONCAT('%', #{search}, '%'))
             </if>
-            AND su.id_ NOT IN (
-        SELECT DISTINCT pg.student_id_ FROM course_schedule_student_payment cssp LEFT JOIN practice_group pg ON pg.id_=cssp.music_group_id_ WHERE cssp.group_type_='PRACTICE' AND  pg.type_ = 'CHARGE'
-            )
-            AND NOT EXISTS (
-                SELECT user_id_ FROM course_schedule_student_payment cssp
-                LEFT JOIN course_schedule cs ON cs.id_=cssp.course_schedule_id_
-                WHERE cssp.user_id_=su.id_ AND cs.teach_mode_='ONLINE'
-                AND NOT EXISTS(SELECT student_id_ FROM practice_group WHERE cssp.music_group_id_=id_ AND cssp.group_type_='PRACTICE' AND type_='TRIAL')
-                AND CONCAT(cs.class_date_, ' ', cs.start_class_time_) > NOW()
-            )
         ORDER BY su.id_
         <include refid="global.limit"/>
     </select>
@@ -564,6 +555,7 @@
             sys_user su
         WHERE
             1=1
+            AND su.del_flag_=0 AND su.lock_flag_=0
 			AND FIND_IN_SET('STUDENT',su.user_type_)
             <if test="organIdList!=null">
             AND su.organ_id_ IN
@@ -574,16 +566,6 @@
             <if test="search != null">
                 AND (su.username_ LIKE CONCAT('%', #{search}, '%') OR su.phone_ LIKE CONCAT('%', #{search}, '%'))
             </if>
-            AND su.id_ NOT IN (
-                SELECT DISTINCT pg.student_id_ FROM course_schedule_student_payment cssp LEFT JOIN practice_group pg ON pg.id_=cssp.music_group_id_ WHERE cssp.group_type_='PRACTICE' AND  pg.type_ = 'CHARGE'
-            )
-            AND NOT EXISTS (
-                SELECT user_id_ FROM course_schedule_student_payment cssp
-                LEFT JOIN course_schedule cs ON cs.id_=cssp.course_schedule_id_
-                WHERE cssp.user_id_=su.id_ AND cs.teach_mode_='ONLINE'
-                AND NOT EXISTS(SELECT student_id_ FROM practice_group WHERE cssp.music_group_id_=id_ AND cssp.group_type_='PRACTICE' AND type_='TRIAL')
-                AND CONCAT(cs.class_date_, ' ', cs.start_class_time_) > NOW()
-            )
     </select>
     <select id="findEnableAssignTeachers" resultType="com.ym.mec.biz.dal.dto.SimpleUserDto">
         SELECT su.id_ userId,su.username_ userName,su.avatar_ avatar

+ 63 - 3
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -14,8 +14,10 @@ import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.excel.POIUtil;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+
 import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -27,6 +29,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletResponse;
+
 import java.io.IOException;
 import java.io.OutputStream;
 import java.math.BigDecimal;
@@ -87,6 +90,9 @@ public class ExportController extends BaseController {
     @Autowired
     private DegreeRegistrationService degreeRegistrationService;
 
+    @Autowired
+    private CooperationOrganService cooperationOrganService;
+
     @ApiOperation(value = "导出教师考勤列表")
     @PostMapping("export/queryTeacherAttendances")
     @PreAuthorize("@pcs.hasPermissions('export/queryTeacherAttendances')")
@@ -1624,7 +1630,62 @@ public class ExportController extends BaseController {
     }
 
 
-    @ApiOperation(value = "考级报名导出")
+    @ApiOperation(value = "合作单位导出")
+    @RequestMapping("export/cooperationOrgan")
+    @PreAuthorize("@pcs.hasPermissions('export/cooperationOrgan')")
+    public void cooperationOrgan(CooperationOrganQueryInfo queryInfo, HttpServletResponse response) throws IOException {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            throw new IOException("用户信息获取失败");
+        }
+        if (!sysUser.getIsSuperAdmin()) {
+            Employee employee = employeeDao.get(sysUser.getId());
+            if (StringUtils.isEmpty(queryInfo.getOrganId())) {
+                queryInfo.setOrganId(employee.getOrganIdList());
+            } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
+                throw new IOException("用户所在分部异常");
+            } else {
+                List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
+                if (!list.containsAll(Arrays.asList(queryInfo.getOrganId().split(",")))) {
+                    throw new IOException("非法请求");
+                }
+            }
+        }
+        queryInfo.setRows(65000);
+        PageInfo<CooperationOrgan> pageList = cooperationOrganService.queryPage(queryInfo);
+        if (pageList.getTotal() <= 0) {
+            response.setStatus(200);
+            response.setContentType("Content-Type: application/json;charset=UTF-8");
+            response.getOutputStream().write("{\"data\": null, \"code\": 500, \"status\": false, \"msg\": \"没有可导出的记录\"}".getBytes());
+            response.flushBuffer();
+            return;
+        }
+        OutputStream outputStream = response.getOutputStream();
+        try {
+
+            String[] header = {"分部", "单位编号", "单位名称", "联系人", "职位", "手机号", "是否启用"};
+            String[] body = {"organization.name", "id", "name", "linkman", "job", "mobileNo", "isEnable"};
+            HSSFWorkbook workbook = POIUtil.exportExcel(header, body, pageList.getRows());
+            response.setContentType("application/octet-stream");
+            response.setHeader("Content-Disposition", "attachment;filename=cooperationOrgan-" + DateUtil.getDate(new Date()) + ".xls");
+            response.flushBuffer();
+            outputStream = response.getOutputStream();
+            workbook.write(outputStream);
+            outputStream.flush();
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            if (outputStream != null) {
+                try {
+                    outputStream.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+    }
+
+    @ApiOperation(value = "报名中缴费中乐团缴费情况导出")
     @RequestMapping("export/musicGroupRegister")
     @PreAuthorize("@pcs.hasPermissions('export/musicGroupRegister')")
     public void degreeRegistration(String organIds, HttpServletResponse response) throws IOException {
@@ -1678,7 +1739,6 @@ public class ExportController extends BaseController {
         body.add("totalMoney");
 
 
-
         List<Map<String, Object>> data = new ArrayList<>();
         for (MusicGroupRegisterDto musicGroupRegister : musicGroupRegisters) {
             added.clear();
@@ -1705,7 +1765,7 @@ public class ExportController extends BaseController {
                     musicGroupRegisterMap.put("subject" + registerSubject.getSubjectId(), registerSubject.getNum());
                     registerPayNum += registerSubject.getNum();
                 }
-                if(!added.contains(registerSubject.getSubjectId())){
+                if (!added.contains(registerSubject.getSubjectId())) {
                     musicGroupRegisterMap.put("subject" + registerSubject.getSubjectId(), 0);
                 }
             }