|
@@ -47,8 +47,11 @@ import com.zhongzheng.modules.grade.mapper.ClassGradeUserMapper;
|
|
|
import com.zhongzheng.modules.grade.service.*;
|
|
|
import com.zhongzheng.modules.grade.vo.*;
|
|
|
import com.zhongzheng.modules.order.bo.OrderGoodsQueryBo;
|
|
|
+import com.zhongzheng.modules.order.domain.Order;
|
|
|
import com.zhongzheng.modules.order.domain.OrderGoods;
|
|
|
+import com.zhongzheng.modules.order.domain.OrderInput;
|
|
|
import com.zhongzheng.modules.order.service.IOrderGoodsService;
|
|
|
+import com.zhongzheng.modules.order.service.IOrderInputService;
|
|
|
import com.zhongzheng.modules.order.service.IOrderService;
|
|
|
import com.zhongzheng.modules.order.vo.OrderGoodsVo;
|
|
|
import com.zhongzheng.modules.system.domain.SysOldOrg;
|
|
@@ -67,6 +70,7 @@ import com.zhongzheng.modules.user.service.IUserService;
|
|
|
import com.zhongzheng.modules.user.service.IUserStudyRecordPhotoService;
|
|
|
import com.zhongzheng.modules.user.service.IUserStudyRecordService;
|
|
|
import com.zhongzheng.modules.user.vo.*;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -115,6 +119,9 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
@Autowired
|
|
|
private IOrderService iOrderService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private IOrderInputService iOrderInputService;
|
|
|
+
|
|
|
@Autowired
|
|
|
private IOrderGoodsService iOrderGoodsService;
|
|
|
|
|
@@ -179,6 +186,8 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
@Value("${officialPush.sevenPeriodPath}")
|
|
|
private String OFFICIALPUSH_SEVEN_PERIODPATH;
|
|
|
|
|
|
+ @Value("${oldSys.host}")
|
|
|
+ private String OLD_SYS_HOST;
|
|
|
|
|
|
@Autowired
|
|
|
private IUserPeriodService iUserPeriodService;
|
|
@@ -619,6 +628,10 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
CourseBusinessQueryBo queryBo = new CourseBusinessQueryBo();
|
|
|
queryBo.setId(goods.getBusinessId());
|
|
|
String fullName = iCourseBusinessService.queryFullName(queryBo);
|
|
|
+ if (Validator.isEmpty(userVo.getRealName()) || Validator.isEmpty(userVo.getIdCard()) || Validator.isEmpty(userVo.getTelPhone())) {
|
|
|
+ return "用户信息缺失";
|
|
|
+ }
|
|
|
+ userVo.setRealName(userVo.getRealName().replaceAll(" ", ""));
|
|
|
if(fullName.contains("继续教育")&&fullName.contains("施工现场专业人员")){
|
|
|
return pushSevenOfficialInfo(bo,userVo,orderGoods,goods);
|
|
|
}
|
|
@@ -631,10 +644,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
} else {
|
|
|
bmrq = userVo.getClassStartTime();
|
|
|
}
|
|
|
- if (Validator.isEmpty(userVo.getRealName()) || Validator.isEmpty(userVo.getIdCard()) || Validator.isEmpty(userVo.getTelPhone())) {
|
|
|
- return "用户信息缺失";
|
|
|
- }
|
|
|
- userVo.setRealName(userVo.getRealName().trim());
|
|
|
+
|
|
|
if(Validator.isNotEmpty(configService.selectConfigByKeyNoCache("office.account"))){
|
|
|
OFFICIALPUSH_INFOACCOUNT = configService.selectConfigByKeyNoCache("office.account");
|
|
|
OFFICIALPUSH_TOKEN = configService.selectConfigByKeyNoCache("office.token");
|
|
@@ -754,7 +764,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
}
|
|
|
Major major = iMajorService.getOne(new LambdaQueryWrapper<Major>()
|
|
|
.eq(Major::getId, goods.getMajorId()));
|
|
|
- if("材料员".equals(major.getCategoryName())||"劳务员".equals(major.getCategoryName())||"资料员".equals(major.getCategoryName())){
|
|
|
+ /*if("材料员".equals(major.getCategoryName())||"劳务员".equals(major.getCategoryName())||"资料员".equals(major.getCategoryName())){
|
|
|
if(userVo.getEduLevel().equals("小学")||userVo.getEduLevel().equals("中学")){
|
|
|
userVo.setEduLevel("高中");
|
|
|
}
|
|
@@ -762,6 +772,15 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
if(userVo.getEduLevel().equals("小学")||userVo.getEduLevel().equals("中学")||userVo.getEduLevel().equals("职高")||userVo.getEduLevel().equals("高中")){
|
|
|
userVo.setEduLevel("专科");
|
|
|
}
|
|
|
+ }*/
|
|
|
+ if(userVo.getEduLevel().equals("小学")||userVo.getEduLevel().equals("中学")||userVo.getEduLevel().equals("高中")||userVo.getEduLevel().equals("中职(含技工学校)")){
|
|
|
+ userVo.setEduLevel("中职(含技工学校)");
|
|
|
+ }
|
|
|
+ else if(userVo.getEduLevel().equals("本科")||userVo.getEduLevel().equals("硕士研究生")||userVo.getEduLevel().equals("博士研究生")||userVo.getEduLevel().equals("本科及以上")){
|
|
|
+ userVo.setEduLevel("本科及以上");
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ userVo.setEduLevel("专科(含高职和技师学院)");
|
|
|
}
|
|
|
if (Validator.isEmpty(orderGoods.getSevenYear())) {
|
|
|
return "商品年份缺失";
|
|
@@ -773,6 +792,66 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
SEVEN_OFFICIALPUSH_INFOACCOUNT = configService.selectConfigByKeyNoCache("seven.office.account");
|
|
|
SEVEN_OFFICIALPUSH_TOKEN = configService.selectConfigByKeyNoCache("seven.office.token");
|
|
|
}
|
|
|
+ String jsonStr = configService.selectConfigByKeyNoCache("home.header");
|
|
|
+ boolean sevenPushAuth = false; //无需校验
|
|
|
+ if(Validator.isNotEmpty(jsonStr)){
|
|
|
+ JSONObject objectJson = JSON.parseObject(jsonStr);
|
|
|
+ if(Validator.isNotEmpty(objectJson)&&objectJson.containsKey("sevenPushAuth")){
|
|
|
+ Integer authRs = objectJson.getInteger("sevenPushAuth");
|
|
|
+ if(authRs==1){
|
|
|
+ sevenPushAuth = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(sevenPushAuth){
|
|
|
+ if(userVo.getSevenPushCheck()==0){
|
|
|
+ Map<String, String> params = new HashMap<>();
|
|
|
+ Long nowTime = DateUtils.getNowTime();
|
|
|
+ String sign = ToolsUtils.EncoderByMd5(userVo.getIdCard()+nowTime.toString());
|
|
|
+ params.put("stamp", nowTime.toString());
|
|
|
+ params.put("sign", sign);
|
|
|
+ params.put("idnum", userVo.getIdCard());
|
|
|
+ params.put("name", userVo.getRealName());
|
|
|
+ params.put("mobile", userVo.getTelPhone());
|
|
|
+ params.put("majorname", major.getCategoryName());
|
|
|
+ params.put("orderno", "");
|
|
|
+ params.put("gradeUserId", userVo.getId().toString());
|
|
|
+ Order order = iOrderService.getOne(new LambdaQueryWrapper<Order>()
|
|
|
+ .eq(Order::getOrderSn, orderGoods.getOrderSn()));
|
|
|
+ if(Validator.isNotEmpty(order.getInputOrderSn())){
|
|
|
+ OrderInput orderInput = iOrderInputService.getOne(new LambdaQueryWrapper<OrderInput>()
|
|
|
+ .eq(OrderInput::getInputOrderSn, order.getInputOrderSn()));
|
|
|
+ if(Validator.isNotEmpty(orderInput.getOldOrderSn())){
|
|
|
+ params.put("orderno", orderInput.getOldOrderSn());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ log.info("七大员权限推送参数"+OLD_SYS_HOST+"/system/BussinessApi/QdyCheckInfo"+ JSON.toJSONString(params));
|
|
|
+ String respone = "";
|
|
|
+ LambdaUpdateWrapper<ClassGradeUser> objectLambdaUpdateWrapper = Wrappers.lambdaUpdate();
|
|
|
+ objectLambdaUpdateWrapper.eq(ClassGradeUser::getId, userVo.getId());
|
|
|
+ try {
|
|
|
+ respone = HttpUtils.postFormBody(OLD_SYS_HOST+"/system/BussinessApi/QdyCheckInfo", params);
|
|
|
+ log.info("七大员权限推送结果"+ JSON.toJSONString(respone));
|
|
|
+ if (respone.contains("\"Status\":true")) {
|
|
|
+ objectLambdaUpdateWrapper.set(ClassGradeUser::getSevenPushCheck, 1);
|
|
|
+ objectLambdaUpdateWrapper.set(ClassGradeUser::getUpdateTime, DateUtils.getNowTime());
|
|
|
+ iClassGradeUserService.update(null, objectLambdaUpdateWrapper);
|
|
|
+ return "等待权限推送";
|
|
|
+ }else{
|
|
|
+ throw new CustomException("七大员权限请求错误"+JSON.toJSONString(respone));
|
|
|
+ }
|
|
|
+ } catch (IOException e) {
|
|
|
+ throw new CustomException("七大员权限请求错误"+e.getMessage());
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ else if(userVo.getSevenPushCheck()==1){
|
|
|
+ return "等待权限推送";
|
|
|
+ }
|
|
|
+ else if(userVo.getSevenPushCheck()>=3){
|
|
|
+ return "无权限推送";
|
|
|
+ }
|
|
|
+ }
|
|
|
Map<String, String> params = new HashMap<>();
|
|
|
params.put("zh", SEVEN_OFFICIALPUSH_INFOACCOUNT);
|
|
|
params.put("bh", userVo.getOfficialName());
|
|
@@ -864,10 +943,13 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
if (!DateUtils.dateTimeNow(DateUtils.YYYYMMDD).equals(datetimeStr)) {
|
|
|
throw new CustomException("数据错误");
|
|
|
}
|
|
|
- User user = iUserService.getOne(new LambdaQueryWrapper<User>().eq(User::getIdCard, EncryptHandler.encrypt(idCard)).last("limit 1"));
|
|
|
+ User user = iUserService.getByCardNoTenant(idCard);
|
|
|
if (Validator.isEmpty(user)) {
|
|
|
throw new CustomException("身份证查无用户");
|
|
|
}
|
|
|
+ if(Validator.isNotEmpty(user.getTenantId())){
|
|
|
+ ServletUtils.getRequestAttributes().getResponse().setHeader("TenantId", user.getTenantId().toString());
|
|
|
+ }
|
|
|
String bh = split.get("bh");
|
|
|
List<ClassGrade> classGradeList = iClassGradeService.list(new LambdaQueryWrapper<ClassGrade>().eq(ClassGrade::getOfficialName, bh));
|
|
|
if (Validator.isEmpty(classGradeList) || classGradeList.size() == 0) {
|
|
@@ -878,6 +960,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
for (ClassGrade classGrade : classGradeList) {
|
|
|
classGradeUser = iClassGradeUserService.getOne(new LambdaQueryWrapper<ClassGradeUser>()
|
|
|
.eq(ClassGradeUser::getGradeId, classGrade.getGradeId())
|
|
|
+ .eq(ClassGradeUser::getStatus, 1)
|
|
|
.eq(ClassGradeUser::getUserId, user.getUserId()).last("limit 1"));
|
|
|
if (Validator.isNotEmpty(classGradeUser)) {
|
|
|
grade = classGrade;
|
|
@@ -905,6 +988,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
studentVo.setGoodsName(goods.getGoodsName());
|
|
|
studentVo.setFullName(fullName);
|
|
|
studentVo.setOrderGoodsId(orderGoods.getOrderGoodsId());
|
|
|
+ studentVo.setTenantId(user.getTenantId().toString());
|
|
|
String userName = "erjian";
|
|
|
if(fullName.equals("继续教育二级建造师")){
|
|
|
studentVo.setGradeType(1);
|
|
@@ -982,6 +1066,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
LambdaQueryWrapper<ClassGradeUser> lqw = Wrappers.lambdaQuery();
|
|
|
lqw.eq(ClassGradeUser::getGradeId, classGrade.getGradeId());
|
|
|
lqw.eq(ClassGradeUser::getUserId, user.getUserId());
|
|
|
+ lqw.eq(ClassGradeUser::getStatus, 1);
|
|
|
List<ClassGradeUser> gradeUserList = iClassGradeUserService.list(lqw);
|
|
|
for (ClassGradeUser gu : gradeUserList) {
|
|
|
OrderGoods og = iOrderGoodsService.getOne(new LambdaQueryWrapper<OrderGoods>().eq(OrderGoods::getOrderGoodsId, gu.getOrderGoodsId())
|
|
@@ -1015,6 +1100,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
studentVo.setGoodsName(goods.getGoodsName());
|
|
|
studentVo.setFullName(fullName);
|
|
|
studentVo.setOrderGoodsId(orderGoods.getOrderGoodsId());
|
|
|
+ studentVo.setTenantId(user.getTenantId().toString());
|
|
|
String userName = "施工继教";
|
|
|
SysUser sysUser = iSysUserService.getOne(new LambdaQueryWrapper<SysUser>()
|
|
|
.eq(SysUser::getUserName, userName).last("limit 1"));
|
|
@@ -1070,7 +1156,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
return "用户不存在";
|
|
|
}
|
|
|
if(Validator.isNotEmpty(userVo.getRealName())){
|
|
|
- userVo.setRealName(userVo.getRealName().trim());
|
|
|
+ userVo.setRealName(userVo.getRealName().replaceAll(" ", ""));
|
|
|
}
|
|
|
if (Validator.isEmpty(userVo.getInterfacePushId())) {
|
|
|
return "没开通信息推送";
|
|
@@ -1262,6 +1348,10 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
userQueryBo.setOrderGoodsId(bo.getOrderGoodsId());
|
|
|
Long startTime = baseMapper.getPeriodStartTime(userQueryBo);
|
|
|
Long endTime = baseMapper.getPeriodEndTime(userQueryBo);
|
|
|
+ log.info("七大员学时信息推送商品"+ JSONObject.toJSONString(orderGoods));
|
|
|
+ if(orderGoods.getSevenClassCopy()>1){
|
|
|
+ startTime = baseMapper.getSevenPeriodStartTime(userQueryBo);
|
|
|
+ }
|
|
|
|
|
|
Map<String, String> params = new HashMap<>();
|
|
|
params.put("zh", SEVEN_OFFICIALPUSH_INFOACCOUNT);
|
|
@@ -1276,12 +1366,12 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
String encrypted = dataSign(dataTxt, SEVEN_OFFICIALPUSH_TOKEN);
|
|
|
params.put("SignMsg", encrypted);
|
|
|
String respone = "";
|
|
|
- log.info("学时信息推送参数"+ dataTxt);
|
|
|
+ log.info("七大员学时信息推送参数"+ dataTxt);
|
|
|
respone = HttpUtils.postFormBody(OFFICIALPUSH_SEVEN_PERIODPATH, params);
|
|
|
if (Validator.isEmpty(respone)) {
|
|
|
return "响应信息空";
|
|
|
}
|
|
|
- log.info("学时信息推送参数结果"+ respone);
|
|
|
+ log.info("七大员学时信息推送参数结果"+ respone);
|
|
|
if(Validator.isEmpty(respone)){
|
|
|
return null;
|
|
|
}
|
|
@@ -1776,7 +1866,6 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- @DataScope(businessAlias = "cb")
|
|
|
public List<ClassPeriodStudentVo> listUserPeriod(ClassGradeUserQueryBo bo) {
|
|
|
//查询班级学员信息
|
|
|
List<ClassPeriodStudentVo> classPeriodStudentVos = baseMapper.listUserPeriod(bo);
|
|
@@ -2803,6 +2892,12 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
throw new CustomException("缺少OrderGoodsId");
|
|
|
}
|
|
|
OrderGoods og = iOrderGoodsService.getOne(new LambdaQueryWrapper<OrderGoods>().eq(OrderGoods::getOrderGoodsId, bo.getOrderGoodsId()));
|
|
|
+ String commonGradeName = null;
|
|
|
+ if(Validator.isNotEmpty(og.getSevenClassCopy())&&og.getSevenClassCopy()>1){
|
|
|
+ OrderGoods copyOg = iOrderGoodsService.getOne(new LambdaQueryWrapper<OrderGoods>().eq(OrderGoods::getOrderGoodsId, og.getSevenClassCopy()));
|
|
|
+ ClassGrade classGrade = iClassGradeService.getOne(new LambdaQueryWrapper<ClassGrade>().eq(ClassGrade::getGradeId, copyOg.getGradeId()));
|
|
|
+ commonGradeName = classGrade.getClassName();
|
|
|
+ }
|
|
|
//查找最外层课程目录 模块 章 节
|
|
|
List<ClassPeriodVo> classPeriodVos = baseMapper.listPeriodAudit(bo);
|
|
|
classPeriodVos.addAll(baseMapper.listPeriodAuditSection(bo));
|
|
@@ -2818,6 +2913,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
if (classPeriodVo.getType() == 1) {
|
|
|
moduleTotal++;
|
|
|
CourseModuleVo moduleVo = iCourseModuleService.queryById(classPeriodVo.getId());
|
|
|
+ classPeriodVo.setCommonGradeName(commonGradeName);
|
|
|
List<ClassPeriodChapterVo> classPeriodChapterVos = baseMapper.listperiodChapter(classPeriodVo.getId(), bo.getGoodsId(), classPeriodVo.getCourseId(), bo.getUserId(), bo.getGradeId(),bo.getOrderGoodsId());
|
|
|
Collections.sort(classPeriodChapterVos);
|
|
|
classPeriodChapterVos.addAll(baseMapper.listperiodModuleExam(bo.getGoodsId(), classPeriodVo.getCourseId(), bo.getUserId(), classPeriodVo.getId()));
|
|
@@ -3476,6 +3572,25 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
|
|
|
return classPeriodStudentVos;
|
|
|
}
|
|
|
|
|
|
+ public Boolean sevenPushAuthCallBack(SevenPushAuthAddBo bo) {
|
|
|
+ if(Validator.isEmpty(bo.getGradeUserId())||Validator.isEmpty(bo.getPushStatus())){
|
|
|
+ throw new CustomException("参数缺失");
|
|
|
+ }
|
|
|
+ ClassGradeUser classGradeUser = getOne(new LambdaQueryWrapper<ClassGradeUser>().eq(ClassGradeUser::getId, bo.getGradeUserId()));
|
|
|
+ if(Validator.isEmpty(classGradeUser)){
|
|
|
+ throw new CustomException("数据不存在");
|
|
|
+ }
|
|
|
+ if(classGradeUser.getSevenPushCheck()==0||classGradeUser.getSevenPushCheck()==2){
|
|
|
+ throw new CustomException("无效操作");
|
|
|
+ }
|
|
|
+ LambdaUpdateWrapper<ClassGradeUser> objectLambdaUpdateWrapper = Wrappers.lambdaUpdate();
|
|
|
+ objectLambdaUpdateWrapper.eq(ClassGradeUser::getId, bo.getGradeUserId());
|
|
|
+ objectLambdaUpdateWrapper.set(ClassGradeUser::getSevenPushCheck, bo.getPushStatus()+1);
|
|
|
+ objectLambdaUpdateWrapper.set(ClassGradeUser::getUpdateTime, DateUtils.getNowTime());
|
|
|
+ objectLambdaUpdateWrapper.set(ClassGradeUser::getSevenPushReason, bo.getSevenPushReason());
|
|
|
+ return this.update(null, objectLambdaUpdateWrapper);
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* 实体类转化成视图对象
|