he2802 3 年之前
父节点
当前提交
3eaed56bf7

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassGradeUserQueryBo.java

@@ -127,4 +127,7 @@ public class ClassGradeUserQueryBo extends BaseEntity {
 
 	@ApiModelProperty("学习状态 0 全部 1未完成 2完成")
 	private Integer studyStatus;
+
+	@ApiModelProperty("用户照片信息 1携带")
+	private Integer userPhoto;
 }

+ 59 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java

@@ -5,9 +5,12 @@ import cn.hutool.core.convert.Convert;
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.zhongzheng.common.core.redis.RedisCache;
 import com.zhongzheng.common.core.redis.RedisLockEntity;
 import com.zhongzheng.common.exception.CustomException;
+import com.zhongzheng.common.utils.AES;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.modules.goods.service.IGoodsService;
 import com.zhongzheng.modules.goods.vo.GoodsVo;
@@ -31,7 +34,9 @@ import com.zhongzheng.modules.user.service.IUserStudyRecordPhotoService;
 import com.zhongzheng.modules.user.service.IUserStudyRecordService;
 import com.zhongzheng.modules.user.vo.SubjectStudyRecordVo;
 import com.zhongzheng.modules.user.vo.UserStudyRecordPhotoVo;
+import org.apache.commons.codec.binary.Base64;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -89,6 +94,9 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
     @Autowired
     private IClassGradeUserService iClassGradeUserService;
 
+    @Value("${aliyun.oss.endpoint}")
+    private String ALIYUN_OSS_ENDPOINT;
+
     @Override
     public ClassGradeUserVo queryById(Long id){
         ClassGradeUser db = this.baseMapper.selectById(id);
@@ -373,6 +381,32 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
                 //查找开始学习时间
                 classPeriodStudentVo.setStartTime(baseMapper.selectStart(classPeriodStudentVo.getUserId(),classPeriodStudentVo.getGoodsId(),classPeriodStudentVo.getGradeId()).get(0));
             }
+            if(Validator.isNotEmpty(bo.getUserPhoto())&&bo.getUserPhoto()==1){
+                //解析身份证和一寸照
+                if(Validator.isNotEmpty(classPeriodStudentVo.getKeyValue())){
+                    JSONObject keyJSON = null;
+                    try {
+                        keyJSON = JSON.parseObject(classPeriodStudentVo.getKeyValue());
+                        if(keyJSON.containsKey("recent_photos")){
+                            String recent_photos_data = keyJSON.getString("recent_photos");
+                            JSONObject recent_photos_jsondata= JSON.parseObject(recent_photos_data);
+                            String recent_photos = recent_photos_jsondata.getString("value");
+                            classPeriodStudentVo.setOneInchPhotos(ALIYUN_OSS_ENDPOINT+"/"+recent_photos);
+                        }
+                        if(keyJSON.containsKey("idcard_face_photo")){
+                            String idcard_face_photo_data = keyJSON.getString("idcard_face_photo");
+                            JSONObject idcard_face_photo_jsondata= JSON.parseObject(idcard_face_photo_data);
+                            String idcard_face_photo = idcard_face_photo_jsondata.getString("value");
+                            classPeriodStudentVo.setIdCardImg1(ALIYUN_OSS_ENDPOINT+"/"+idcard_face_photo);
+                        }
+                        classPeriodStudentVo.setKeyValue(null);
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                }
+            }
+
+
             ClassPeriodStudentExportVo addItem = BeanUtil.toBean(classPeriodStudentVo, ClassPeriodStudentExportVo.class);
 
             List<UserPeriodVo> periodVoList = new ArrayList<>();
@@ -514,6 +548,31 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
                 //查找开始学习时间
                 classPeriodStudentVo.setStartTime(baseMapper.selectStart(classPeriodStudentVo.getUserId(),classPeriodStudentVo.getGoodsId(),classPeriodStudentVo.getGradeId()).get(0));
             }
+
+            if(Validator.isNotEmpty(bo.getUserPhoto())&&bo.getUserPhoto()==1){
+                //解析身份证和一寸照
+                if(Validator.isNotEmpty(classPeriodStudentVo.getKeyValue())){
+                    JSONObject keyJSON = null;
+                    try {
+                        keyJSON = JSON.parseObject(classPeriodStudentVo.getKeyValue());
+                        if(keyJSON.containsKey("recent_photos")){
+                            String recent_photos_data = keyJSON.getString("recent_photos");
+                            JSONObject recent_photos_jsondata= JSON.parseObject(recent_photos_data);
+                            String recent_photos = recent_photos_jsondata.getString("value");
+                            classPeriodStudentVo.setOneInchPhotos(recent_photos);
+                        }
+                        if(keyJSON.containsKey("idcard_face_photo")){
+                            String idcard_face_photo_data = keyJSON.getString("idcard_face_photo");
+                            JSONObject idcard_face_photo_jsondata= JSON.parseObject(idcard_face_photo_data);
+                            String idcard_face_photo = idcard_face_photo_jsondata.getString("value");
+                            classPeriodStudentVo.setIdCardImg1(idcard_face_photo);
+                        }
+                        classPeriodStudentVo.setKeyValue(null);
+                    } catch (Exception e) {
+                        e.printStackTrace();
+                    }
+                }
+            }
         }
         return classPeriodStudentVos;
     }

+ 8 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassPeriodStudentExportVo.java

@@ -67,7 +67,14 @@ public class ClassPeriodStudentExportVo {
 	@Excel(name = "當前班級學員審核狀態 -1不可审核 0待審  1未通过 2通过")
 	@ApiModelProperty("當前班級學員審核狀態 -1不可审核 0待審  1未通过 2通过")
 	private Integer allStatus;
-
+	/** 身份证人像照 */
+	@Excel(name = "身份证人像照")
+	@ApiModelProperty("身份证人像照")
+	private String idCardImg1;
+	/** 一寸照片 */
+	@Excel(name = "一寸照片")
+	@ApiModelProperty("一寸照片")
+	private String oneInchPhotos;
 
 
 	@ExcelCollection(name = "学习记录")

+ 17 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassPeriodStudentVo.java

@@ -156,4 +156,21 @@ public class ClassPeriodStudentVo {
 
 	@ApiModelProperty("编码")
 	private String goodsCode;
+
+	/** 身份证人像照 */
+	@Excel(name = "身份证人像照")
+	@ApiModelProperty("身份证人像照")
+	private String idCardImg1;
+	/** 身份证国徽照 */
+	@Excel(name = "身份证国徽照")
+	@ApiModelProperty("身份证国徽照")
+	private String idCardImg2;
+
+	/** 一寸照片 */
+	@Excel(name = "一寸照片")
+	@ApiModelProperty("一寸照片")
+	private String oneInchPhotos;
+
+	@ApiModelProperty("key值")
+	private String keyValue;
 }

+ 4 - 0
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeUserMapper.xml

@@ -77,6 +77,7 @@
         <result property="goodsName" column="goods_name"/>
         <result property="standPrice" column="stand_price"/>
         <result property="goodsCode" column="goods_code"/>
+        <result property="keyValue" column="key_value"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.grade.vo.ClassPeriodUserVo" id="ClassPeriodUserVo">
@@ -237,6 +238,9 @@
         cg.class_name,
         cgu.period_plush,
         IFNULL(ge.exam_num,0) as exam_num,
+        <if test="userPhoto != null and userPhoto == 1">
+        up.key_value,
+        </if>
         (SELECT COUNT(DISTINCT ubr.module_id,ubr.chapter_id,ubr.exam_id) FROM user_bank_record ubr  where ubr.`status`=1 and ubr.report_status=1 and ubr.grade_id = cgu.grade_id and ubr.user_id = cgu.user_id and ubr.current_status = 1) as record_num,
         cgu.period_time as end_time,
       (select COUNT(up.id) from user_period up LEFT JOIN user_period_status ups on up.id=ups.period_id where up.goods_id = (SELECT cgg.goods_id FROM class_grade_goods cgg where cg.grade_id=cgg.grade_id) and up.grade_id = cgu.grade_id and up.user_id = u.user_id