Explorar el Código

FIX 时间格式

he2802 hace 3 años
padre
commit
c3215f5b6a

+ 11 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/grade/ClassStudentController.java

@@ -175,4 +175,15 @@ public class ClassStudentController extends BaseController {
     public AjaxResult<Void> edit(@RequestBody UserUpdateEditBo bo) {
         return toAjax(iUserUpdateService.updateByEditBo(bo) ? 1 : 0);
     }
+
+
+    /**
+     * 官方信息推送
+     */
+    @ApiOperation("官方信息推送")
+    @PreAuthorize("@ss.hasPermi('app:user:edit')")
+    @PostMapping("/pushInfo")
+    public AjaxResult<Void> pushInfo(@RequestBody ClassGradeUserQueryBo  bo) {
+        return toAjax(iClassGradeUserService.pushOfficialInfo(bo) ? 1 : 0);
+    }
 }

+ 33 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassGradeUserOfficialBo.java

@@ -0,0 +1,33 @@
+package com.zhongzheng.modules.grade.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+
+/**
+ * 学员记录添加对象 class_grade_user
+ *
+ * @author ruoyi
+ * @date 2021-11-10
+ */
+@Data
+@ApiModel("学员信息官方推送对象")
+public class ClassGradeUserOfficialBo {
+
+
+    @ApiModelProperty("培训机构登陆账号")
+    private String zh;
+    @ApiModelProperty("班号")
+    private String bh;
+    @ApiModelProperty("学员姓名")
+    private String xm;
+    @ApiModelProperty("身份证号码")
+    private String sfz;
+    @ApiModelProperty("联系电话")
+    private String dh;
+    @ApiModelProperty("报名日期")
+    private String bmrq;
+    @ApiModelProperty("数据签名")
+    private String SignMsg;
+}

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/mapper/ClassGradeUserMapper.java

@@ -18,6 +18,8 @@ import java.util.List;
  */
 public interface ClassGradeUserMapper extends BaseMapper<ClassGradeUser> {
 
+    ClassGradeUserVo selectUser(ClassGradeUserQueryBo bo);
+
     Collection<ClassGradeUserVo> select(ClassGradeUserQueryBo bo);
 
     List<ClassGradeUserGoodsVo> listUser(ClassGradeUserQueryBo bo);

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/IClassGradeUserService.java

@@ -42,6 +42,8 @@ public interface IClassGradeUserService extends IService<ClassGradeUser> {
 
 	Boolean updateUserPeriodStatus(ClassGradeUserQueryBo bo);
 
+	Boolean pushOfficialInfo(ClassGradeUserQueryBo bo);
+
 	List<ClassPeriodStudentExportVo> exportPo(ClassGradeUserQueryBo bo);
 
 	/**

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

@@ -7,11 +7,14 @@ import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 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.common.utils.http.HttpUtils;
+import com.zhongzheng.common.utils.polyv.PolyvUtils;
 import com.zhongzheng.modules.goods.service.IGoodsService;
 import com.zhongzheng.modules.goods.vo.GoodsVo;
 import com.zhongzheng.modules.grade.bo.*;
@@ -48,7 +51,11 @@ import com.zhongzheng.modules.grade.service.IClassGradeUserService;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
 import java.math.BigDecimal;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -335,6 +342,106 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
         return null;
     }
 
+    @Override
+    public Boolean pushOfficialInfo(ClassGradeUserQueryBo bo){
+        ClassGradeUserVo userVo = this.baseMapper.selectUser(bo);
+        if(Validator.isEmpty(userVo)){
+            throw new CustomException("用户不存在");
+        }
+
+        Map<String, String> params =  new HashMap<>();
+        params.put("zh","peixunjigou");
+        params.put("bh",userVo.getClassName());
+        params.put("xm",userVo.getRealName());
+        params.put("sfz",userVo.getIdCard());
+        params.put("dh",userVo.getTelPhone());
+        params.put("bmrq","2022-2-15");
+        String  dataTxt = params.get("zh")+params.get("bh")+params.get("xm")+params.get("sfz")+params.get("dh")+params.get("bmrq");
+        System.out.println(dataTxt);
+        String encrypted = dataSign(dataTxt,"0ca175b9c0f726a831d895e26933246");
+        System.out.println(encrypted);
+        params.put("SignMsg",encrypted);
+        String respone = "";
+        try{
+         respone = HttpUtils.postFormBody("http://jypt-dev.gdcic.net/organjxjy/ShangBaoMingdan",params);
+        System.out.println(respone);
+        }catch (IOException e){
+            throw new CustomException("请求错误");
+        }
+        /*ClassGradeUserOfficialBo officialBo = new ClassGradeUserOfficialBo();
+        officialBo.setZh("peixunjigou");
+        officialBo.setBh(userVo.getClassName());
+        officialBo.setSfz(userVo.getIdCard());
+        officialBo.setXm(userVo.getRealName());
+        officialBo.setDh(userVo.getTelPhone());
+        officialBo.setBmrq("2022-2-15");*/
+
+        return true;
+    }
+
+
+
+    public String dataSign(String SourceMsg,String PKey)
+    {
+        try{
+            String TempPKey;
+            TempPKey = getMD5(PKey,"UTF-16LE");
+            System.out.println(TempPKey);
+            TempPKey = SourceMsg + TempPKey;
+            System.out.println(TempPKey);
+            TempPKey = getMD5(TempPKey,"UTF-16LE");
+            System.out.println(TempPKey);
+            return TempPKey;
+        }catch (NoSuchAlgorithmException e){
+            throw new CustomException("数据错误");
+        }catch (UnsupportedEncodingException exception){
+            throw new CustomException("数据错误");
+        }catch (Exception exception2){
+            throw new CustomException("数据错误");
+        }
+
+    }
+
+    public static String MD5Encode(String origin) {
+        StringBuffer sb = new StringBuffer();
+        try {
+            MessageDigest md = MessageDigest.getInstance("MD5");
+            md.update(origin.getBytes("utf8"));
+            byte[] result = md.digest();
+            for (int i = 0; i < result.length; i++) {
+                //int val = result[i] & 0xff;
+                //sb.append(Integer.toHexString(val));
+                int val = (result[i] & 0x000000ff) | 0xffffff00;
+                sb.append(Integer.toHexString(val).substring(6));
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+
+        return sb.toString();
+    }
+
+    public  String getMD5(String str, String encoding) throws Exception {
+
+        MessageDigest md = MessageDigest.getInstance("MD5");
+
+        md.update(str.getBytes(encoding));
+
+        byte[] result = md.digest();
+
+        StringBuffer sb = new StringBuffer();
+
+        for (int i = 0; i < result.length; i++) {
+
+            int val = result[i] & 0xff;
+
+            sb.append(Integer.toHexString(val));
+
+        }
+        return sb.toString();
+
+    }
+
     @Override
     public List<ClassPeriodStudentExportVo> exportPo(ClassGradeUserQueryBo bo) {
         //查询班级学员信息

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassGradeUserVo.java

@@ -71,4 +71,7 @@ public class ClassGradeUserVo {
 	@Excel(name = "是否已换班 0没有 1已换去新班")
 	@ApiModelProperty("是否已换班 0没有 1已换去新班")
 	private Integer changeGrade;
+
+	@ApiModelProperty("班名称")
+	private String className;
 }

+ 3 - 3
zhongzheng-system/src/main/java/com/zhongzheng/modules/schedule/service/impl/ScheduleServiceImpl.java

@@ -478,8 +478,8 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
             Long timeId = subscribeVo.getApplySiteExamTime()*1000;
             Date date = new Date(timeId);
             res = simpleDateFormat.format(date);
-            String startTime = subscribeVo.getApplySiteStartTime().replace("-", ":");
-            String endTime = subscribeVo.getApplySiteEndTime().replace("-", ":");
+            String startTime = subscribeVo.getApplySiteStartTime();
+            String endTime = subscribeVo.getApplySiteEndTime();
             if (informRemindVo.getWayStatus().equals(1)) {
                 InformUserAddBo informUserAddBo = new InformUserAddBo();
                 informUserAddBo.setUserId(subscribeVo.getUserId());
@@ -835,7 +835,7 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
             SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
             String dateString = formatter.format(times);
             String dateForma =null;
-            dateForma = dateString+" "+userSubscribeVo.getApplySiteStartTime().replace("-", ":");
+            dateForma = dateString+" "+userSubscribeVo.getApplySiteStartTime();
             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
             Long time = sdf.parse(dateForma).getTime() / 1000;
             if (System.currentTimeMillis()/1000 > time){

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

@@ -526,7 +526,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
             }
 
             if (!StringUtils.isEmpty(userSubscribeImport.getApplySiteTime())) {
-                String[] split = userSubscribeImport.getApplySiteTime().split("-");
+                String[] split = userSubscribeImport.getApplySiteTime().split(":");
                 if (split.length < 2) {
                     userSubscribeImport.setCause("考试时间段错误");
                     userSubscribeImports.add(userSubscribeImport);
@@ -534,8 +534,8 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
                 }
                 String startTime = split[0];
                 String endTime = split[1];
-                startTime = startTime.replace(":", "-");
-                endTime = endTime.replace(":", "-");
+               /* startTime = startTime.replace(":", "-");
+                endTime = endTime.replace(":", "-");*/
 
                 userSubscribeAddBo.setApplySiteStartTime(startTime);
                 userSubscribeAddBo.setApplySiteEndTime(endTime);
@@ -555,7 +555,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
             }
 
             if (!StringUtils.isEmpty(userSubscribeImport.getApplySiteTrainTime())) {
-                String[] split = userSubscribeImport.getApplySiteTrainTime().split("-");
+                String[] split = userSubscribeImport.getApplySiteTrainTime().split(":");
                 if (split.length < 2) {
                     userSubscribeImport.setCause("考试时间段错误");
                     userSubscribeImports.add(userSubscribeImport);
@@ -563,8 +563,8 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
                 }
                 String startTime = split[0];
                 String endTime = split[1];
-                startTime = startTime.replace(":", "-");
-                endTime = endTime.replace(":", "-");
+              /*  startTime = startTime.replace(":", "-");
+                endTime = endTime.replace(":", "-");*/
 
                 userSubscribeAddBo.setApplySiteStartTrainTime(startTime);
                 userSubscribeAddBo.setApplySiteEndTrainTime(endTime);
@@ -724,7 +724,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
             }
 
             if (!StringUtils.isEmpty(userSubscribeImport.getApplySiteTime())) {
-                String[] split = userSubscribeImport.getApplySiteTime().split("-");
+                String[] split = userSubscribeImport.getApplySiteTime().split(":");
                 if (split.length < 2) {
                     userSubscribeImport.setCause("考试时间段错误");
                     userSubscribeImports.add(userSubscribeImport);
@@ -732,8 +732,8 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
                 }
                 String startTime = split[0];
                 String endTime = split[1];
-                startTime = startTime.replace(":", "-");
-                endTime = endTime.replace(":", "-");
+               /* startTime = startTime.replace(":", "-");
+                endTime = endTime.replace(":", "-");*/
 
                 userSbusciEditBo.setApplySiteStartTime(startTime);
                 userSbusciEditBo.setApplySiteEndTime(endTime);
@@ -753,7 +753,7 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
             }
 
             if (!StringUtils.isEmpty(userSubscribeImport.getApplySiteTrainTime())) {
-                String[] split = userSubscribeImport.getApplySiteTrainTime().split("-");
+                String[] split = userSubscribeImport.getApplySiteTrainTime().split(":");
                 if (split.length < 2) {
                     userSubscribeImport.setCause("考试时间段错误");
                     userSubscribeImports.add(userSubscribeImport);
@@ -761,8 +761,8 @@ public class UserSubscribeServiceImpl extends ServiceImpl<UserSubscribeMapper, U
                 }
                 String startTime = split[0];
                 String endTime = split[1];
-                startTime = startTime.replace(":", "-");
-                endTime = endTime.replace(":", "-");
+               /* startTime = startTime.replace(":", "-");
+                endTime = endTime.replace(":", "-");*/
 
                 userSbusciEditBo.setApplySiteStartTrainTime(startTime);
                 userSbusciEditBo.setApplySiteEndTrainTime(endTime);

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

@@ -21,6 +21,7 @@
         <result property="id" column="id"/>
         <result property="userId" column="user_id"/>
         <result property="gradeId" column="grade_id"/>
+        <result property="className" column="class_name"/>
         <result property="status" column="status"/>
         <result property="code" column="user_account"/>
         <result property="realName" column="realname"/>
@@ -148,6 +149,27 @@
         <result property="auditNum" column="audit_num"/>
     </resultMap>
 
+    <select id="selectUser" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
+            resultMap="ClassGradeUserVoResult">
+        SELECT
+        g.*,
+        u.user_account,
+        u.realname,
+        u.id_card,
+        u.telphone,
+        cg.class_name
+        FROM
+        class_grade_user g
+        LEFT JOIN `user` u ON g.user_id = u.user_id
+        LEFT JOIN class_grade cg ON cg.grade_id = g.grade_id
+        WHERE
+        1 = 1
+
+        AND g.grade_id = #{gradeId}
+        AND g.user_id = #{userId}
+
+    </select>
+
     <select id="select" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo"
             resultMap="ClassGradeUserVoResult">
         SELECT