he2802 3 anos atrás
pai
commit
f063450537

+ 11 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/user/UserSubscribeController.java

@@ -382,4 +382,15 @@ public class UserSubscribeController extends BaseController {
         return util.exportExcel(list, "学员签到表");
     }
 
+    @ApiOperation("导出学员承诺书")
+    @PreAuthorize("@ss.hasPermi('system:subscribe:list')")
+    @GetMapping("/listLetterExport")
+    public AjaxResult listLetterExport(UserSubscribeQueryBo bo) {
+        Map<String,Object> map = iUserSubscribeService.listLetterExport(bo);
+        List<UserSubscribeLetterExportVo> list = (List<UserSubscribeLetterExportVo>)map.get("list");
+        ExcelUtil<UserSubscribeLetterExportVo> util = new ExcelUtil<UserSubscribeLetterExportVo>(UserSubscribeLetterExportVo.class);
+        map.put("excel",util.exportExcel(list, "疫情防控承诺书"));
+        map.remove("list");
+        return AjaxResult.success(map);
+    }
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserSubscribeService.java

@@ -98,6 +98,8 @@ public interface IUserSubscribeService extends IService<UserSubscribe> {
 
 	List<UserSubscribeSignExportVo> listSignExport(UserSubscribeQueryBo bo);
 
+	Map<String,Object> listLetterExport(UserSubscribeQueryBo bo);
+
 	Long saveByAddBo(UserSubscribeAddBo bo) throws ParseException;
 
 }

+ 45 - 10
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserSubscribeServiceImpl.java

@@ -317,7 +317,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
         add.setExamStatus(0);
         add.setCreateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());
-        add.setExamineeCode(ServletUtils.getEncoded("ZZ"+ ToolsUtils.autoGenericCode(String.valueOf(add.getApplyId()),3) +ToolsUtils.autoGenericCode(String.valueOf(add.getUserId()),3)));
+        add.setExamineeCode(ServletUtils.getEncoded("ZZ"+ ToolsUtils.autoGenericCode(String.valueOf(add.getApplyId()),4) +ToolsUtils.autoGenericCode(String.valueOf(add.getUserId()),4)));
         this.save(add);
         //发送预约考试消息
         sendExamSucceed(bo);
@@ -1766,6 +1766,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
         String reportUrl = drawReport(bo.getSignImageStr(),bo);
         userSubscribe.setReportStatus(1);//已签署
         userSubscribe.setReportFile(reportUrl);
+        userSubscribe.setReportFileTime(DateUtils.getNowTime());
         updateById(userSubscribe);
         return true;
     }
@@ -1780,15 +1781,11 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
         Map<String,Object> map = new HashMap<>();
         List<UserVo> list = baseMapper.listUserExport(bo);
         List<UserSubscribeStudentExportVo> list1 = new ArrayList<>();
-        List<FileBean> fileBeanList = new ArrayList<>(); //身份证列表
-        List<FileBean> fileBeanList2 = new ArrayList<>(); //证件照列表
+        List<FileBean> fileBeanList = new ArrayList<>(); //图片列表
         String filename = FileUtils.encodingZipFilename("学员信息数据");
         String zipFile = FileUtils.getZipAbsoluteFile(filename);
- /*       String filename2 = FileUtils.encodingZipFilename("证件照压缩包");
-        String zipFile2 = FileUtils.getZipAbsoluteFile(filename2);*/
         try {
             ZipOutputStream outStream = new ZipOutputStream(new FileOutputStream(zipFile));
-    //        ZipOutputStream outStream2 = new ZipOutputStream(new FileOutputStream(zipFile2));
             for (UserVo vo : list) {
                 UserSubscribeStudentExportVo item = BeanUtil.toBean(vo, UserSubscribeStudentExportVo.class);
                 if (Validator.isNotEmpty(vo.getSex())) {
@@ -1833,15 +1830,12 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
                 }
             }
             ossService.zipWisdomDownload(fileBeanList,outStream);
-     //       ossService.zipWisdomDownload(fileBeanList2,outStream2);
             outStream.close();
-    //        outStream2.close();
         }
        catch (IOException e) {
         }
         map.put("list", list1);
         map.put("zip", AjaxResult.success(filename));
-    //    map.put("zip2", AjaxResult.success(filename2));
         return map;
     }
 
@@ -1859,6 +1853,47 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
         return list1;
     }
 
+    @Override
+    public Map<String,Object> listLetterExport(UserSubscribeQueryBo bo) {
+        List<UserSubscribeVo> list = baseMapper.listSignExport(bo);
+        List<UserSubscribeLetterExportVo> list1 = new ArrayList<>();
+        Map<String,Object> map = new HashMap<>();
+        List<FileBean> fileBeanList = new ArrayList<>(); //图片列表
+        String filename = FileUtils.encodingZipFilename("学员承诺书数据");
+        String zipFile = FileUtils.getZipAbsoluteFile(filename);
+
+        for(UserSubscribeVo vo : list){
+            UserSubscribeLetterExportVo item = BeanUtil.toBean(vo, UserSubscribeLetterExportVo.class);
+            if(Validator.isNotEmpty(vo.getReportFileTime())){
+                item.setReportFileTimeTxt(DateUtils.timestampToDateFormat(vo.getReportFileTime(),DateUtils.YYYY_MM_DD_HH_MM_SS));
+            }
+            if(Validator.isNotEmpty(vo.getReportStatus())&&vo.getReportStatus()==1){
+                item.setSignTxt("是");
+            }
+            if(Validator.isNotEmpty(vo.getReportStatus())&&vo.getReportStatus()==0){
+                item.setSignTxt("否");
+            }
+            list1.add(item);
+            if(Validator.isNotEmpty(vo.getReportFile())){
+                FileBean f = new FileBean();
+                f.setPath(vo.getReportFile());
+                f.setFileName(vo.getIdCard() + "_0.jpg");
+                fileBeanList.add(f);
+            }
+
+        }
+        try {
+            ZipOutputStream outStream = new ZipOutputStream(new FileOutputStream(zipFile));
+            ossService.zipWisdomDownload(fileBeanList,outStream);
+            outStream.close();
+        }
+        catch (IOException e) {
+        }
+        map.put("list", list1);
+        map.put("zip", AjaxResult.success(filename));
+        return map;
+    }
+
     @Override
     public Long saveByAddBo(UserSubscribeAddBo bo) throws ParseException{
         UserSubscribe add = BeanUtil.toBean(bo, UserSubscribe.class);
@@ -1901,7 +1936,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
         add.setExamStatus(0);
         add.setCreateTime(DateUtils.getNowTime());
         add.setUpdateTime(DateUtils.getNowTime());
-        add.setExamineeCode(ServletUtils.getEncoded("ZS"+add.getUserId()));
+        add.setExamineeCode(ServletUtils.getEncoded("ZZ"+ ToolsUtils.autoGenericCode(String.valueOf(add.getApplyId()),4) +ToolsUtils.autoGenericCode(String.valueOf(add.getUserId()),4)));
         this.save(add);
         //签署疫情防控书
         if (org.apache.commons.lang3.StringUtils.isNotBlank(bo.getSignImageStr())){

+ 47 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserSubscribeLetterExportVo.java

@@ -0,0 +1,47 @@
+package com.zhongzheng.modules.user.vo;
+
+import com.zhongzheng.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+
+/**
+ * 用户预约考试视图对象 mall_package
+ *
+ * @author ruoyi
+ * @date 2021-12-07
+ */
+@Data
+@ApiModel("用户预约考试视图对象")
+public class UserSubscribeLetterExportVo {
+	private static final long serialVersionUID = 1L;
+
+
+	@Excel(name = "学员姓名")
+	@ApiModelProperty("真实姓名")
+	private String realname;
+
+
+	@Excel(name = "身份证号")
+	@ApiModelProperty("身份证号")
+	private String idCard;
+
+	@Excel(name = "手机号码")
+	@ApiModelProperty("手机号码")
+	private String telphone;
+
+
+	@Excel(name = "是否已签署疫情承诺书")
+	@ApiModelProperty("是否已签署疫情承诺书")
+	private String signTxt;
+
+
+	@Excel(name = "签署时间")
+	@ApiModelProperty("签署时间")
+	private String reportFileTimeTxt;
+
+
+
+
+}

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserSubscribeVo.java

@@ -293,4 +293,7 @@ public class UserSubscribeVo {
 
 	@ApiModelProperty("1云学堂 2智慧考场")
 	private Integer fromPlat;
+
+	@ApiModelProperty("签署承诺书时间")
+	private Long reportFileTime;
 }

+ 3 - 3
zhongzheng-system/src/main/resources/mapper/modules/user/UserSubscribeMapper.xml

@@ -103,7 +103,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="syncExamResult" column="sync_exam_result"/>
         <result property="signaturePushTime" column="signature_push_time"/>
         <result property="reportFileTime" column="report_file_time"/>
-        <result property="applyReportStatus" column="report_status"/>
+        <result property="applyReportStatus" column="apply_report_status"/>
         <result property="fromPlat" column="from_plat"/>
     </resultMap>
 
@@ -134,7 +134,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             (SELECT ea.apply_start_time FROM exam_apply ea where ea.apply_id = us.apply_id) as apply_start_time,
             (SELECT ea.apply_end_time FROM exam_apply ea where ea.apply_id = us.apply_id) as apply_end_time,
             (SELECT eb.before_name FROM exam_before eb where eb.before_id = us.before_id) as before_name,
-            (SELECT ea.report_status FROM exam_apply ea where ea.apply_id = us.apply_id) as report_status,
+            (SELECT ea.report_status FROM exam_apply ea where ea.apply_id = us.apply_id) as apply_report_status,
             (SELECT ueg.do_number-ueg.expend_before FROM user_exam_goods ueg where ueg.goods_id = us.goods_id and ueg.user_id = us.user_id ORDER BY user_exam_goods_id DESC limit 1) as before_count,
             ueg.exam_number,
             ueg.do_number,
@@ -475,7 +475,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="listSignExport" parameterType="com.zhongzheng.modules.user.bo.UserSubscribeQueryBo" resultMap="UserSubscribeVo">
         SELECT
-        us.*,u.realname,u.id_card
+        us.*,u.realname,u.id_card,u.telphone
         FROM
         user_subscribe us
         LEFT JOIN `user` u on u.user_id =us.user_id