浏览代码

Merge branch 'dev'

# Conflicts:
#	zhongzheng-common/src/main/resources/static/779352047136603/003.jpg
#	zhongzheng-framework/src/main/java/com/zhongzheng/framework/web/service/UserServiceImpl.java
#	zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java
#	zhongzheng-system/src/main/java/com/zhongzheng/modules/user/mapper/UserMapper.java
#	zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserService.java
yangdamao 1 年之前
父节点
当前提交
0f1e258fd7

+ 56 - 25
run-pre.sh

@@ -1,12 +1,12 @@
 #!/usr/bin/env bash
 # 定义应用组名
-group_name='zhongzheng-pre'
+group_name='zhongzheng'
 # 定义应用名称
-app_name='zhongzheng-saas-api-pre'
+app_name='zhongzheng-saas-api'
 # 定义应用版本
 app_version='1.0-SNAPSHOT'
 # 定义应用环境
-profile_active='pre'
+profile_active='prod'
 echo '----copy jar----'
 docker stop ${app_name}
 echo '----stop container----'
@@ -15,19 +15,20 @@ echo '----rm container----'
 docker rmi ${group_name}/${app_name}:${app_version}
 echo '----rm image----'
 # 打包编译docker镜像
-docker build -f /mydata-pre/maven/build/Dockerfile -t ${group_name}/${app_name}:${app_version} .
+docker build -f /mydata/maven/build/Dockerfile -t ${group_name}/${app_name}:${app_version} .
 echo '----build image----'
-docker run -p 6055:5055 --name ${app_name} \
+docker run -p 5055:5055 --name ${app_name} \
 --restart=always \
---link mysql:db \
---log-opt max-size=50m \
---log-opt max-file=3 \
 -e 'spring.profiles.active'=${profile_active} \
 -e TZ="Asia/Shanghai" \
+-m 10240m \
+--cpus=3 \
+--log-opt max-size=50m \
+--log-opt max-file=3 \
 -v /etc/localtime:/etc/localtime \
 -v /usr/share/fonts:/usr/share/fonts \
--v /data/logs/pre_api:/logs \
--v /mydata-pre/app/${app_name}/logs:/var/logs \
+-v /data/logs/prod_api:/logs \
+-v /mydata/app/${app_name}/logs:/var/logs \
 -d ${group_name}/${app_name}:${app_version}
 echo '----start container----'
 
@@ -36,17 +37,15 @@ echo "开始等待20秒..."
 sleep 5
 echo "等待后继续"
 
-
 #!/usr/bin/env bash
 # 定义应用组名
-group_admin_name='zhongzheng-pre'
+group_admin_name='zhongzheng'
 # 定义应用名称
-app_admin_name='zhongzheng-saas-admin-pre'
-
+app_admin_name='zhongzheng-saas-admin'
 # 定义应用版本
 app_admin_version='1.0-SNAPSHOT'
 # 定义应用环境
-profile_active='pre'
+profile_active='prod'
 echo '----copy jar admin----'
 docker stop ${app_admin_name}
 echo '----stop container admin----'
@@ -55,28 +54,60 @@ echo '----rm container admin----'
 docker rmi ${group_admin_name}/${app_admin_name}:${app_admin_version}
 echo '----rm image admin----'
 # 打包编译docker镜像
-
-docker build -f /mydata-pre/maven/build/Dockerfile-admi -t ${group_admin_name}/${app_admin_name}:${app_admin_version} .
-
+docker build -f /mydata/maven/build/Dockerfile-admi -t ${group_admin_name}/${app_admin_name}:${app_admin_version} .
 echo '----build image admin----'
 docker run \
--p 6030:5030 \
+-p 5030:5030 \
 --name ${app_admin_name} \
 --restart=always \
---link mysql:db \
 --log-opt max-size=50m \
 --log-opt max-file=3 \
 -e 'spring.profiles.active'=${profile_active} \
 -e TZ="Asia/Shanghai" \
 -v /etc/localtime:/etc/localtime \
 -v /usr/share/fonts:/usr/share/fonts \
--v /data/logs/pre_admin:/logs \
--v /mydata-pre/app/${app_admin_name}/logs:/var/logs \
+-v /data/logs/prod_admin:/logs \
+-v /mydata/app/${app_admin_name}/logs:/var/logs \
 -v /data/nginx/conf.d:/data/nginx/conf.d \
 -d ${group_admin_name}/${app_admin_name}:${app_admin_version}
 echo '----start container admin----'
 
+echo "开始等待20秒..."
+# 1-10秒内随机
+sleep 5
+echo "等待后继续"
 
-
-
-
+#!/usr/bin/env bash
+# 定义应用组名
+group_admin_name='zhongzheng'
+# 定义应用名称
+app_admin_name='zhongzheng-saas-admin-top'
+# 定义应用版本
+app_admin_version='1.0-SNAPSHOT'
+# 定义应用环境
+profile_active='prod'
+echo '----copy jar admin top----'
+docker stop ${app_admin_name}
+echo '----stop container admin top----'
+docker rm ${app_admin_name}
+echo '----rm container admin top----'
+docker rmi ${group_admin_name}/${app_admin_name}:${app_admin_version}
+echo '----rm image admin top----'
+# 打包编译docker镜像
+docker build -f /mydata/maven/build/Dockerfile-saas -t ${group_admin_name}/${app_admin_name}:${app_admin_version} .
+echo '----build image admin top----'
+docker run \
+-p 7077:7077 \
+--name ${app_admin_name} \
+--restart=always \
+--log-opt max-size=50m \
+--log-opt max-file=3 \
+-e 'spring.profiles.active'=${profile_active} \
+-e TZ="Asia/Shanghai" \
+-v /etc/localtime:/etc/localtime \
+-v /usr/share/fonts:/usr/share/fonts \
+-v /data/logs/prod_admin_top:/logs \
+-v /mydata/app/${app_admin_name}/logs:/var/logs \
+-v /data/nginx/conf.d:/data/nginx/conf.d \
+-d ${group_admin_name}/${app_admin_name}:${app_admin_version}
+echo '----start container admin top----'

+ 6 - 1
zhongzheng-framework/src/main/java/com/zhongzheng/framework/web/service/UserServiceImpl.java

@@ -2196,8 +2196,13 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
     }
 
     @Override
+
     public User getByCardNoTenantNew(String idCard,String bh) {
-        return baseMapper.getByCardNoTenantNew(idCard,bh);
+        return baseMapper.getByCardNoTenantNew(idCard, bh);
+    }
+
+    public Integer getBusinessPhotoSign(Long orderGoodsId) {
+        return baseMapper.getBusinessPhotoSign(orderGoodsId);
     }
 
     @Override

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/base/service/impl/CertificateTpServiceImpl.java

@@ -956,7 +956,7 @@ public class CertificateTpServiceImpl extends ServiceImpl<CertificateTpMapper, C
             BufferedImage qrImage = toBufferedImage(bitMatrix);
             // 在模板上添加用户二维码(地址,左边距,上边距,图片宽度,图片高度,未知)
             if ("779352047136603".equals(tenantId)){
-                g.drawImage(qrImage, 395, 1914, 300, 300    , null);
+                g.drawImage(qrImage, 395, 1914,300,300, null);
             }else {
                 g.drawImage(qrImage, 128, 660, 120, 120, null);
             }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/domain/CourseBusiness.java

@@ -76,6 +76,8 @@ private static final long serialVersionUID=1L;
     private Integer periodCheckSign;
     /** 学习提示标签:1开启 0关闭 */
     private Integer reminderSign;
+    /** 是否需要增强拍照标签:1开启 0关闭 */
+    private Integer photoSign;
     private Long tenantId;
 
     @TableField(exist = false)

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

@@ -1331,6 +1331,7 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
         }
         String bh = split.get("bh");
         log.info("学时抽查"+ idCard+"RR"+datetime+"RR"+year);
+
 //        User user;
 //        if (flag){
 //            user = iUserService.getByCardNoTenantNew(idCard,bh);
@@ -1338,6 +1339,8 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
 //            user = iUserService.getOne(new LambdaQueryWrapper<User>().eq(User::getIdCard,EncryptHandler.encrypt(idCard)).last("limit 1"));
 //        }
         User user = iUserService.getByCardNoTenantNew(idCard,bh);
+//        User user = iUserService.getByCardNoTenant(idCard);
+//        User user = iUserService.getOne(new LambdaQueryWrapper<User>().eq(User::getIdCard,EncryptHandler.encrypt(idCard)).last("limit 1"));
         if (Validator.isEmpty(user)) {
             throw new CustomException("身份证查无用户");
         }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/bo/OrderGoodsEditBo.java

@@ -116,4 +116,6 @@ public class OrderGoodsEditBo {
     /** 复制状态 1自学 2复制 */
     @ApiModelProperty("复制状态 1自学 2复制")
     private Integer sevenClassCopy;
+    @ApiModelProperty("是否线下退款标识:0否 1是")
+    private Integer offlineRefundSign;
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/domain/OrderGoods.java

@@ -103,6 +103,8 @@ private static final long serialVersionUID=1L;
     private Integer sevenClassStatus;
     /** 复制状态 1自学 2复制 */
     private Long sevenClassCopy;
+    /** 是否线下退款标识:0否 1是 */
+    private Integer offlineRefundSign;
 
     private Long tenantId;
 

+ 2 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/vo/OrderGoodsVo.java

@@ -379,7 +379,8 @@ public class OrderGoodsVo {
 	@ApiModelProperty("资料审核状态  1通过 3不通过 2待审")
 	private Long profileStatus;
 
-
+	@ApiModelProperty("是否线下退款标识:0否 1是")
+	private Integer offlineRefundSign;
 	@ApiModelProperty("学员资料 变更状态 2变更 1否")
 	private Integer profileChangeStatus;
 

+ 32 - 29
zhongzheng-system/src/main/java/com/zhongzheng/modules/tencentcloud/service/impl/FaceOcrServiceImpl.java

@@ -154,35 +154,38 @@ public class FaceOcrServiceImpl implements IFaceOcrService {
             if(Validator.isEmpty(face[0].getFaceQualityInfo().getCompleteness())){
                 throw new CustomException("照片五官不达标");
             }
-            FaceQualityCompleteness completeness = face[0].getFaceQualityInfo().getCompleteness();
-            if (ObjectUtils.isNull(completeness.getEyebrow()) || completeness.getEyebrow() < 80){
-                throw new CustomException("请勿遮挡眉毛");
-            }
-            if (ObjectUtils.isNull(completeness.getEye()) || completeness.getEye() < 80){
-                throw new CustomException("请勿遮挡眼睛");
-            }
-            if (ObjectUtils.isNull(completeness.getNose()) || completeness.getNose() < 60){
-                throw new CustomException("请勿遮挡鼻子");
-            }
-            if (ObjectUtils.isNull(completeness.getCheek()) || completeness.getCheek() < 70){
-                throw new CustomException("请勿遮挡脸颊");
-            }
-            if (ObjectUtils.isNull(completeness.getMouth()) || completeness.getMouth() < 50){
-                throw new CustomException("请勿遮挡嘴巴");
-            }
-            if (ObjectUtils.isNull(completeness.getChin()) || completeness.getChin() < 60){
-                throw new CustomException("请勿遮挡下巴");
-            }
-            if (imageWidth * 0.55 < face[0].getWidth()){
-                throw new CustomException("人脸与摄像头距离太近,请把摄像头或手机离脸远一些再拍照!");
-            }
-            if (imageHeight * 0.85 < (face[0].getY()+face[0].getHeight())){
-                throw new CustomException("照片的人脸太下,请拍照时把两肩拍出来!");
-            }
-            if(face[0].getX()<0|| face[0].getY()<0
-                    || (face[0].getX() + face[0].getWidth()) > imageWidth)
-            {
-                throw new CustomException("请保证人脸全部在照片范围内!");
+            Integer photoSign = iUserService.getBusinessPhotoSign(bo.getOrderGoodsId());
+            if (photoSign == 1){
+                FaceQualityCompleteness completeness = face[0].getFaceQualityInfo().getCompleteness();
+                if (ObjectUtils.isNull(completeness.getEyebrow()) || completeness.getEyebrow() < 80){
+                    throw new CustomException("请勿遮挡眉毛");
+                }
+                if (ObjectUtils.isNull(completeness.getEye()) || completeness.getEye() < 80){
+                    throw new CustomException("请勿遮挡眼睛");
+                }
+                if (ObjectUtils.isNull(completeness.getNose()) || completeness.getNose() < 60){
+                    throw new CustomException("请勿遮挡鼻子");
+                }
+                if (ObjectUtils.isNull(completeness.getCheek()) || completeness.getCheek() < 70){
+                    throw new CustomException("请勿遮挡脸颊");
+                }
+                if (ObjectUtils.isNull(completeness.getMouth()) || completeness.getMouth() < 50){
+                    throw new CustomException("请勿遮挡嘴巴");
+                }
+                if (ObjectUtils.isNull(completeness.getChin()) || completeness.getChin() < 60){
+                    throw new CustomException("请勿遮挡下巴");
+                }
+                if (imageWidth * 0.55 < face[0].getWidth()){
+                    throw new CustomException("人脸与摄像头距离太近,请把摄像头或手机离脸远一些再拍照!");
+                }
+                if (imageHeight * 0.85 < (face[0].getY()+face[0].getHeight())){
+                    throw new CustomException("照片的人脸太下,请拍照时把两肩拍出来!");
+                }
+                if(face[0].getX()<0|| face[0].getY()<0
+                        || (face[0].getX() + face[0].getWidth()) > imageWidth)
+                {
+                    throw new CustomException("请保证人脸全部在照片范围内!");
+                }
             }
         }catch (TencentCloudSDKException e){
             throw new CustomException("人脸检测错误:"+e.getMessage());

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/mapper/UserMapper.java

@@ -99,4 +99,7 @@ public interface UserMapper extends BaseMapper<User> {
 
     @InterceptorIgnore(tenantLine = "true")
     User getByCardNoTenantNew(@Param("idCard")String idCard,@Param("bh")String bh);
+
+    Integer getBusinessPhotoSign(@Param("orderGoodsId")Long orderGoodsId);
+
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserService.java

@@ -172,4 +172,7 @@ public interface IUserService extends IService<User> {
     String studyRecord(List<UserStudyExportVo> customerBos);
 
 	User getByCardNoTenantNew(String idCard,String bh);
+
+	Integer getBusinessPhotoSign(Long orderGoodsId);
+
 }

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/order/OrderGoodsMapper.xml

@@ -63,6 +63,7 @@
         <result property="periodStatus" column="period_status"/>
         <result property="distributionCode" column="distribution_code"/>
         <result property="distributionLinkCode" column="distribution_link_code"/>
+        <result property="offlineRefundSign" column="offline_refund_sign"/>
 
         <result property="code" column="code"/>
         <result property="goodsName" column="goods_name"/>

+ 13 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserMapper.xml

@@ -728,6 +728,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             og.create_time DESC
     </select>
 
+
+    <select id="getBusinessPhotoSign" parameterType="java.lang.Long" resultType="java.lang.Integer">
+        SELECT
+            cb.photo_sign
+        FROM
+            order_goods og
+                LEFT JOIN goods g ON og.goods_id = g.goods_id
+                LEFT JOIN course_business cb ON g.business_id = cb.id
+        WHERE
+            og.order_goods_id = #{orderGoodsId}
+            LIMIT 1
+    </select>
+
     <select id="getUserOrderCount" parameterType="map" resultType="java.lang.Long">
         SELECT
             COUNT(o.order_sn)