Просмотр исходного кода

Merge branch 'feat-something-210907'

# Conflicts:
#	hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/ApiController.java
shc 3 лет назад
Родитель
Сommit
13e198b590

+ 2 - 2
hnqz-common/pom.xml

@@ -45,9 +45,9 @@
 		<module>hnqz-common-oss</module>
 		<module>hnqz-common-security</module>
 		<module>hnqz-common-sentinel</module>
-		<module>hnqz-common-sequence</module>
+		<!--<module>hnqz-common-sequence</module>-->
 		<module>hnqz-common-swagger</module>
-		<module>hnqz-common-transaction</module>
+		<!--<module>hnqz-common-transaction</module>-->
 		<module>hnqz-common-ding</module>
 		<module>hnqz-common-taxhelper</module>
 		<module>hnqz-common-qcc</module>

+ 62 - 40
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/ApiController.java

@@ -529,7 +529,7 @@ public class ApiController {
 				mapOne.put("rljCertStatus", sysU.getRljCertStatus());
 				mapOne.put("userSign", sysU.getUserSign());
 				mapOne.put("certRemark", sysU.getCertRemark());
-				mapOne.put("taxHelperAgreementSignature",sysU.getTaxHelperAgreementSignature());
+				mapOne.put("taxHelperAgreementSignature", sysU.getTaxHelperAgreementSignature());
 
 				if (redisTemplate.hasKey(CacheConstants.USER_NOTICE_KEY + sysU.getUserId())) {
 					mapOne.put("notice", true);
@@ -2043,21 +2043,20 @@ public class ApiController {
 	@GetMapping("/getTaskListByPackageId")
 	public R getTaskListByPackageId(Page page, WmTask wmTask) {
 
-//		LambdaQueryWrapper<WmTask> queryWrapper = Wrappers.lambdaQuery();
-//		Page<WmTask> taskPage = null;
-		Integer userId = SecurityUtils.getUser().getId();
+		Page<WmTask> taskPage = wmTaskService.page(page,
+				Wrappers.<WmTask>lambdaQuery()
+						.eq(WmTask::getScorePackageId, wmTask.getScorePackageId())
+						.eq(WmTask::getTaskUserId, wmTask.getTaskUserId())
+						.ne(WmTask::getScore, 0)
+						.eq(WmTask::getRealFlag, "0")
+						.eq(WmTask::getDelFlag, DelEnum.NOT_DEL.val())
+						.orderByDesc(WmTask::getCreateTime));
 
-		Page<WmTask> taskPage = wmTaskService.page(page, Wrappers.query(wmTask)
-				.lambda()
-				.eq(WmTask::getRealFlag, "0")
-				.eq(WmTask::getDelFlag, DelEnum.NOT_DEL.val())
-				.orderByDesc(WmTask::getCreateTime));
 		List<WmTask> wmTaskList = taskPage.getRecords();
 
-		WmTaskType typeQuery = new WmTaskType();
-		typeQuery.setTaskTypeLevel("1");
 		List<WmTaskType> wmTaskTypeList = wmTaskTypeService.
-				list(Wrappers.query(typeQuery).lambda());
+				list(Wrappers.<WmTaskType>lambdaQuery().eq(WmTaskType::getTaskTypeLevel, "1"));
+
 		Map<String, String> typeMap = wmTaskTypeList.stream()
 				.collect(Collectors.toMap(WmTaskType::getId, WmTaskType::getTaskTypeName));
 
@@ -2128,7 +2127,7 @@ public class ApiController {
 			}
 		}
 
-
+		queryWrapper.ne(WmTask::getScore, 0);
 		queryWrapper.orderByDesc(WmTask::getCreateTime);
 		taskPage = wmTaskService.page(page, queryWrapper);
 		List<WmTask> wmTaskList = taskPage.getRecords();
@@ -2277,9 +2276,9 @@ public class ApiController {
 		List<Integer> roles = SecurityUtils.getRoles();
 
 		// 如果角色中包含全职和兼职就需要校验身份证年龄
-		if (roles.contains(5) || roles.contains(6)){
+		if (roles.contains(5) || roles.contains(6)) {
 			// 校验身份证上的年龄
-			if(StringUtils.isNotEmpty(userUpdateInput.getIdCardNumber())){
+			if (StringUtils.isNotEmpty(userUpdateInput.getIdCardNumber())) {
 				int ageByIdCard = IdcardUtil.getAgeByIdCard(userUpdateInput.getIdCardNumber());
 				if (ageByIdCard < 18) {
 					return R.failed("年龄未满十八");
@@ -2449,8 +2448,9 @@ public class ApiController {
 		// 姓名去除空格(包括字符之间的所有空格都会去除)
 		sysUser.setRealname(StrUtil.cleanBlank(userUpdateInput.getRealname()));
 		sysUser.setUserSign(userUpdateInput.getUserSign());
-		if (StringUtils.isNotEmpty(userUpdateInput.getTaxHelperAgreementSignature())){
-			sysUser.setTaxHelperAgreementSignature(StringUtils.equals(SignatureStatusEnum.SIGNED.name(), userUpdateInput.getTaxHelperAgreementSignature()) ? 1 : 0);
+		if (StringUtils.isNotEmpty(userUpdateInput.getTaxHelperAgreementSignature())) {
+			sysUser.setTaxHelperAgreementSignature(StringUtils.equals(SignatureStatusEnum.SIGNED.name(), userUpdateInput
+					.getTaxHelperAgreementSignature()) ? 1 : 0);
 		}
 		sysUserService.updateById(sysUser);
 
@@ -2918,18 +2918,18 @@ public class ApiController {
 				if ("3".equals(wmScorePackage.getPackageType1())) {
 					continue;
 				}
-				if (ArrayUtils.isEmpty(wmScorePackage.getDrugProducerList())){
+				if (ArrayUtils.isEmpty(wmScorePackage.getDrugProducerList())) {
 					continue;
 				}
 				boolean flag = false;
-				for (String name : wmScorePackage.getDrugProducerList() ){
-					if (StringUtils.equals(name, drugProducer)){
+				for (String name : wmScorePackage.getDrugProducerList()) {
+					if (StringUtils.equals(name, drugProducer)) {
 						flag = true;
 						break;
 					}
 				}
 
-				if (!flag){
+				if (!flag) {
 					continue;
 				}
 
@@ -2980,10 +2980,12 @@ public class ApiController {
 	 * @return 结果
 	 */
 	private R<?> shareAndReadTaskMethod(String id, String shareUserId, String openUserId, String type, String packageId,
-									 String sharePicUrl, String taskCategoryName) {
+										String sharePicUrl, String taskCategoryName) {
 
 		LocalDateTime now = LocalDateTime.now();
 		int score = 0;
+		boolean autoRejectFlag = false;
+		String msg = null;
 		WmWkAlbum wmWkAlbum = null;
 		WmWkArticle wmWkArticle = null;
 		WmScorePackageStatus scorePackageStatus = null;
@@ -3016,6 +3018,7 @@ public class ApiController {
 		// 获取分享人
 		SysUser sysUser = sysUserService.getById(shareUserId);
 
+		int displayScore = 0;
 		if (null != sysUser) {
 			UserVO userVO = sysUserService.selectUserVoById(sysUser.getUserId());
 			if (null != userVO) {
@@ -3029,7 +3032,7 @@ public class ApiController {
 					String info = null;
 					if ("album".equalsIgnoreCase(taskCategoryName)) {
 						info = checkAlbumLimit(wmWkAlbum, sysUser);
-					} else if ("article".equalsIgnoreCase(taskCategoryName)){
+					} else if ("article".equalsIgnoreCase(taskCategoryName)) {
 						info = checkArticleLimit(wmWkArticle, sysUser);
 					}
 					if (StringUtils.isNotEmpty(info)) {
@@ -3101,7 +3104,8 @@ public class ApiController {
 				}
 				wmTask.setScore(score);
 
-				boolean needToCheckLimit = true;
+
+				boolean needToCheckLimit = tWmScorePackage.getScore() > 3000;
 				if ("open".equals(type)) {
 					List<WmWkArticleShare> wmWkArticleShareList = wmWkArticleShareService.list(Wrappers.
 							<WmWkArticleShare>lambdaQuery()
@@ -3148,12 +3152,13 @@ public class ApiController {
 					}
 
 					// 校验打开结果
-					if ("article".equalsIgnoreCase(taskCategoryName)) {
-						needToCheckLimit = checkArticleOpenLimit(wmWkArticle,sysUser,wmTask);
-					} else if ("album".equalsIgnoreCase(taskCategoryName)) {
-						needToCheckLimit = checkAlbumOpenLimit(wmWkAlbum, sysUser, wmTask);
+					if (needToCheckLimit) {
+						if ("article".equalsIgnoreCase(taskCategoryName)) {
+							needToCheckLimit = checkArticleOpenLimit(wmWkArticle, sysUser, wmTask);
+						} else if ("album".equalsIgnoreCase(taskCategoryName)) {
+							needToCheckLimit = checkAlbumOpenLimit(wmWkAlbum, sysUser, wmTask);
+						}
 					}
-
 				}
 
 				// 记录分享记录
@@ -3163,8 +3168,6 @@ public class ApiController {
 				wmTask.setTaskUserId(String.valueOf(userVO.getUserId()));  //任务提交人
 				wmTask.setLookintoDate(now);       //调研时间
 				wmTask.setUpdateTime(now);
-				wmTask.setTaskStatus("2"); //任务状态
-				wmTask.setSubmitStatus("0");
 				wmTask.setDrugEntId(userVO.getDrugEntId());
 				wmTask.setShareImgUrl(sharePicUrl);
 				wmTask.setScorePackageId(tWmScorePackage.getId());
@@ -3182,7 +3185,8 @@ public class ApiController {
 				}
 
 
-				// 判断是否保存前最后校验一遍文章分享和文章阅读以及产品分享和产品分享阅读所做的积分值是否在比例范围之内(初始设定为30%)
+				// 判断是否保存前最后校验一遍文章分享和文章阅读以及产品分享和产品分享阅读所做的积分值是否在比例范围之内
+				// (初始设定为30%,积分包值小于3000不做校验)
 				if (needToCheckLimit && null != scorePackageStatus) {
 					String value = sysPublicParamService.getSysPublicParamKeyToValue("SHARE_READ_TASK_SCORE_UPPER_LIMIT_RATIO");
 					value = StringUtils.isEmpty(value) ? "0.3" : value;
@@ -3205,10 +3209,19 @@ public class ApiController {
 						log.warn("完成任务积分值已经超过上限,设置为0");
 						wmTask.setScore(0);
 					}
+					msg = String.format("转发类任务所得积分不得大于积分包值的%d%s",
+							new BigDecimal(value).multiply(new BigDecimal("100"))
+									.setScale(0, BigDecimal.ROUND_HALF_UP).intValue(), "%");
 				}
 
+				// 校验结果为0积分的自动审核不通过
+				autoRejectFlag = (displayScore = wmTask.getScore() )== 0;
+
+				wmTask.setTaskStatus(autoRejectFlag ? "4" : "2"); //任务状态
+				wmTask.setSubmitStatus(autoRejectFlag ? "1" : "0");
 				boolean isSave = wmTaskService.save(wmTask);   //保存任务
 
+
 				//判断任务是否完成
 				if (isSave) {
 					WmScorePackage wmScorePackage1 = wmScorePackageService.getById(tWmScorePackage.getId());
@@ -3262,38 +3275,47 @@ public class ApiController {
 						wmScorePackageService.updateById(wmScorePackage1);
 
 					}
+
 				} else {
 					return R.failed("任务保存失败");
 				}
 			}
 		}
 
+		// // 正常的提示
+		// if (StringUtils.isEmpty(msg)){
+		// 	msg = displayScore == 0 ? "成功" : String.format("转发成功,获得%d积分。", displayScore);
+		// }
+
 		if ("album".equalsIgnoreCase(taskCategoryName)) {
 			if ("share".equalsIgnoreCase(type)) {
 				wmWkAlbum.setForwardNum(wmWkAlbum.getForwardNum() + 1);
 			}
 			wmWkAlbumService.updateById(wmWkAlbum);
 			wmWkAlbum.setScore(String.valueOf(score));
-			return R.ok(wmWkAlbum);
+
+			return R.ok(wmWkAlbum, msg);
 		} else if ("article".equalsIgnoreCase(taskCategoryName)) {
 			if ("share".equalsIgnoreCase(type)) {
 				wmWkArticle.setForwardNum(wmWkArticle.getForwardNum() + 1);
 			}
 			wmWkArticleService.updateById(wmWkArticle);
 			wmWkArticle.setScore(String.valueOf(score));
-			return R.ok(wmWkArticle);
+			return R.ok(wmWkArticle, msg);
 		}
-		return R.ok();
+
+		return R.ok(null, msg);
 	}
 
 
 	/**
 	 * 文章打开判断
+	 *
 	 * @param article 文章
 	 * @param user    分享用户
-	 * @param task	  任务
+	 * @param task    任务
 	 */
-	private Boolean checkArticleOpenLimit(WmWkArticle article, SysUser user, WmTask task){
+	private Boolean checkArticleOpenLimit(WmWkArticle article, SysUser user, WmTask task) {
 		Assert.notNull(article);
 		LocalDateTime now = LocalDateTime.now();
 		final String cacheKey = CacheConstants.ARTICLE_PERSONAL_SHARE_KEY + DateUtil.format(now, "yyyyMMdd:")
@@ -3314,15 +3336,15 @@ public class ApiController {
 	 * @param user  分享用户
 	 * @param task  任务
 	 */
-	private Boolean checkAlbumOpenLimit(WmWkAlbum album, SysUser user, WmTask task){
+	private Boolean checkAlbumOpenLimit(WmWkAlbum album, SysUser user, WmTask task) {
 		Assert.notNull(album);
 		if (StringUtils.isNotEmpty(album.getGlyp())) {
 			List<WmDaDrugEntDrugtable> drugTableList =
 					wmDaDrugEntDrugtableService.listByIds(Arrays.asList(album.getGlyp().split(",")));
 			if (CollectionUtils.isNotEmpty(drugTableList)) {
 				String date = DateUtil.today() + ":";
-				log.info("DateUtil.today():{}",date);
-				for (WmDaDrugEntDrugtable drug : drugTableList){
+				log.info("DateUtil.today():{}", date);
+				for (WmDaDrugEntDrugtable drug : drugTableList) {
 					if (StringUtils.isEmpty(drug.getDrugEntId())) {
 						continue;
 					}

+ 4 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/entity/WmTask.java

@@ -110,6 +110,10 @@ public class WmTask extends Model<WmTask> {
 	@ApiModelProperty(value="任务状态")
 	private String taskStatus;
 
+	/**
+	 * 提交审核状态
+	 */
+	@ApiModelProperty(value="提交审核状态")
 	private String submitStatus;
 
 	/**

+ 8 - 8
hnqz-visual/pom.xml

@@ -32,15 +32,15 @@
 	<packaging>pom</packaging>
 
 	<modules>
-		<module>hnqz-codegen</module>
+		<!--<module>hnqz-codegen</module>-->
 		<module>hnqz-daemon-elastic-job</module>
 		<module>hnqz-daemon-quartz</module>
-		<module>hnqz-oa-platform</module>
-		<module>hnqz-pay-platform</module>
-		<module>hnqz-monitor</module>
-		<module>hnqz-mp-platform</module>
-		<module>hnqz-sso-client-demo</module>
-		<module>hnqz-sentinel-dashboard</module>
-		<module>hnqz-tx-manager</module>
+		<!--<module>hnqz-oa-platform</module>-->
+		<!--<module>hnqz-pay-platform</module>-->
+		<!--<module>hnqz-monitor</module>-->
+		<!--<module>hnqz-mp-platform</module>-->
+		<!--<module>hnqz-sso-client-demo</module>-->
+		<!--<module>hnqz-sentinel-dashboard</module>-->
+		<!--<module>hnqz-tx-manager</module>-->
 	</modules>
 </project>