liweifan пре 3 година
родитељ
комит
5480516ece

+ 2 - 2
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/SubjectController.java

@@ -74,11 +74,11 @@ public class SubjectController extends BaseController {
 		return succeed();
 	}
 
-	@ApiOperation(value = "删除指定声部")
+	/*@ApiOperation(value = "删除指定声部")
 	@PostMapping("/delete/{id}")
 	@PreAuthorize("@pcs.hasPermissions('subject/delete')")
 	public HttpResponseResult<Subject> delete(@ApiParam(value = "声部编号", required = true) @PathVariable("id") Long id) {
 		subjectService.deleteById(id);
 		return succeed();
-	}
+	}*/
 }

+ 2 - 2
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/UserWithdrawalController.java

@@ -99,7 +99,7 @@ public class UserWithdrawalController extends BaseController {
         return userWithdrawalService.batchAuth(authOperaReq, user);
     }
 
-    @ApiImplicitParams({
+    /*@ApiImplicitParams({
             @ApiImplicitParam(
                     name = "id",
                     value = "审核单id",
@@ -130,5 +130,5 @@ public class UserWithdrawalController extends BaseController {
             e.printStackTrace();
             return HttpResponseResult.failed("转账失败");
         }
-    }
+    }*/
 }

+ 1 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/MessageTypeEnum.java

@@ -81,6 +81,7 @@ public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     TEACHER_STYLE_VIDEO_SUCCESS("个人风采审核通过"),
     TEACHER_STYLE_VIDEO_FAIL("个人风采审核失败"),
 
+    TEACHER_WITHDRAW_UNPASS("老师结算审核不通过"),
     TEACHER_WITHDRAW_SUCCESS("老师结算成功"),
 
     //------短信模板------

+ 29 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserWithdrawalServiceImpl.java

@@ -221,7 +221,6 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
 
         //请求三方
         SysUser withdrawalUser = sysUserService.findUserById(build.getUserId());
-        Boolean flag = false;
         if (authOperaReq.getPass()) {
             //请求三方接口
             //交易流水号生成
@@ -234,14 +233,15 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
             if (withdraw.getStatus() && withdraw.getData()) {
                 build.setTradeStatus(TradeStatusEnum.pending);
                 build.setTransNo(transNo.toString());
-                flag = true;
             } else {
                 build.setTradeStatus(TradeStatusEnum.failed);
                 build.setErrorMsg("请求三方接口返回失败");
             }
         }
+        updateById(build);
+
         //修改系统中账户
-        if (!authOperaReq.getPass() || !flag) {
+        if (!authOperaReq.getPass()) {
             //审核不通过,账户解冻
             UserAccountRecordDto accountRecordDto = new UserAccountRecordDto(
                     build.getUserId(), build.getAmount(), InOrOutEnum.OUT, AccountBizTypeEnum.WITHDRAWAL,
@@ -250,8 +250,11 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
             accountRecordDto.setFrozenType(FrozenTypeEnum.FROZEN_BACK);
             accountRecordDto.setSaveRecord(false);
             userAccountService.accountChange(accountRecordDto);
+
+            //发生结算成功通知
+            unpassSend(build.getUserId(), build.getPhone(), authOperaReq.getReason());
         }
-        updateById(build);
+
     }
 
     @Override
@@ -327,6 +330,18 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
             detail.setTradeNo(callback.getOrderNo());
             detail.setErrorCode(callback.getErrorCode());
             detail.setErrorMsg(callback.getErrorMsg());
+
+            //审核不通过,账户解冻
+            UserAccountRecordDto accountRecordDto = new UserAccountRecordDto(
+                    detail.getUserId(), detail.getAmount(), InOrOutEnum.OUT, AccountBizTypeEnum.WITHDRAWAL,
+                    detail.getId(), "老师结算", null
+            );
+            accountRecordDto.setFrozenType(FrozenTypeEnum.FROZEN_BACK);
+            accountRecordDto.setSaveRecord(false);
+            userAccountService.accountChange(accountRecordDto);
+
+            //发生结算失败通知
+            unpassSend(detail.getUserId(), detail.getPhone(), "结算失败,请重新提交。");
         } else {
             return;
         }
@@ -360,6 +375,16 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
         }
     }
 
+    private void unpassSend(Long userId, String phone, String reason) {
+        Map<Long, String> receivers = new HashMap<>();
+        receivers.put(userId, phone);
+        try {
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.TEACHER_WITHDRAW_UNPASS,
+                    receivers, null, 0, null, ClientEnum.TEACHER.getCode(), reason);
+        } catch (Exception e) {
+            log.error("老师结算极光消息推送异常,userId={}", userId);
+        }
+    }
 
     /***
      * 入结算表

+ 32 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/SysUserContractRecordVo.java

@@ -2,6 +2,7 @@ package com.yonge.cooleshow.biz.dal.vo;
 
 import com.yonge.cooleshow.biz.dal.entity.SysUserContractRecord;
 import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import org.apache.commons.beanutils.BeanUtils;
 
 /**
@@ -11,7 +12,37 @@ import org.apache.commons.beanutils.BeanUtils;
 @ApiModel(value = "SysUserContractRecordVo对象", description = "用户协议记录表-一个用户一种协议一个版本一条记录查询视图对象")
 public class SysUserContractRecordVo extends SysUserContractRecord{
 	private static final long serialVersionUID = 1L;
-    
+    @ApiModelProperty(value = "协议名称")
+    private String templateName;
+    @ApiModelProperty(value = "协议类型")
+    private String templateType;
+    @ApiModelProperty(value = "协议版本")
+    private Integer version;
+
+    public String getTemplateName() {
+        return templateName;
+    }
+
+    public void setTemplateName(String templateName) {
+        this.templateName = templateName;
+    }
+
+    public String getTemplateType() {
+        return templateType;
+    }
+
+    public void setTemplateType(String templateType) {
+        this.templateType = templateType;
+    }
+
+    public Integer getVersion() {
+        return version;
+    }
+
+    public void setVersion(Integer version) {
+        this.version = version;
+    }
+
     public SysUserContractRecordVo buildVo(SysUserContractRecord sysUserContractRecord){
         try {
             BeanUtils.copyProperties(this,sysUserContractRecord);

+ 2 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -143,7 +143,8 @@
 
     <select id="querySubjectItem" resultType="com.yonge.cooleshow.biz.dal.entity.Subject">
         select * from subject t
-        where exists(
+        where t.parent_subject_id_ != 0
+        and exists(
             select 1 from teacher s where s.user_id_ = #{userId} and find_in_set(t.id_,s.subject_id_)
             union all
             select 1 from music_sheet a where a.user_id_ = #{userId} and find_in_set(t.id_,a.music_subject_)

+ 1 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/UserWithdrawalMapper.xml

@@ -126,6 +126,7 @@
                 <![CDATA[AND t.create_time_ < #{param.endTime} ]]>
             </if>
         </where>
+        order by t.create_time_ desc
     </sql>
 
     <select id="selectPage" resultType="com.yonge.cooleshow.biz.dal.vo.UserWithdrawalVo">