shangke 2 éve
szülő
commit
c032cc67f0

+ 44 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/wrapper/SchoolStaffWrapper.java

@@ -13,8 +13,8 @@ import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import org.apache.commons.lang3.StringUtils;
+import org.joda.time.DateTime;
 
-import javax.validation.constraints.NotNull;
 import java.io.Serializable;
 import java.util.Date;
 import java.util.Optional;
@@ -98,6 +98,9 @@ public class SchoolStaffWrapper {
 
         @ApiModelProperty("用户头像")
         private String avatar;
+
+        @ApiModelProperty("验证码")
+        private String smsCode;
         
         public String jsonString() {
             return JSON.toJSONString(this);
@@ -308,4 +311,44 @@ public class SchoolStaffWrapper {
         @ApiModelProperty("员工身份统计")
         private SchoolStaffStat staffStat;
     }
+
+    @Data
+    @Builder
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ApiModel("合作单位")
+    public static class Cooperation implements Serializable {
+
+        @ApiModelProperty("合作单位编号")
+        private Integer id;
+
+        @ApiModelProperty("合作单位logo")
+        private String logo;
+
+        @ApiModelProperty("合作单位名称")
+        private String name;
+
+        @ApiModelProperty("更新时间")
+        private Date updateTime;
+
+        @ApiModelProperty("机构编号")
+        private Integer tenantId;
+
+        public Date getUpdateTime() {
+            return Optional.ofNullable(updateTime).orElse(DateTime.now().toDate());
+        }
+
+        public String jsonString() {
+            return JSON.toJSONString(this);
+        }
+
+        public Integer getTenantId() {
+            return Optional.ofNullable(tenantId).orElse(TenantContextHolder.getTenantId());
+        }
+
+        public Cooperation tenantId(Integer tenantId) {
+            this.tenantId = tenantId;
+            return this;
+        }
+    }
 }

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SchoolStaffService.java

@@ -62,4 +62,10 @@ public interface SchoolStaffService extends IService<SchoolStaff>  {
      * @return SchoolStaffWrapper.SchoolStaffStat
      */
     SchoolStaffWrapper.SchoolStaffStat getUserTypeStatByCooperationId(Integer schoolId);
+
+    /***
+     * 更新合作单位信息
+     * @param info SchoolStaffWrapper.Cooperation
+     */
+    void updateCooperation(SchoolStaffWrapper.Cooperation info);
 }

+ 27 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SchoolStaffServiceImpl.java

@@ -8,6 +8,7 @@ import com.microsvc.toolkit.common.response.paging.QueryInfo;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.auth.api.enums.SysUserType;
 import com.ym.mec.auth.api.enums.YesOrNoEnum;
+import com.ym.mec.biz.dal.dao.CooperationOrganDao;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.entity.CooperationOrgan;
 import com.ym.mec.biz.dal.entity.SchoolStaff;
@@ -18,6 +19,7 @@ import com.ym.mec.biz.dal.wrapper.SchoolStaffWrapper;
 import com.ym.mec.biz.dal.wrapper.StatGroupWrapper;
 import com.ym.mec.biz.service.CooperationOrganService;
 import com.ym.mec.biz.service.SchoolStaffService;
+import com.ym.mec.biz.service.SmsCodeService;
 import com.ym.mec.biz.service.SysConfigService;
 import com.ym.mec.common.exception.BizException;
 import lombok.extern.slf4j.Slf4j;
@@ -27,6 +29,7 @@ import org.joda.time.DateTime;
 import org.redisson.api.RBucket;
 import org.redisson.api.RedissonClient;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -57,6 +60,14 @@ public class SchoolStaffServiceImpl extends ServiceImpl<SchoolStaffMapper, Schoo
     private TeacherDao teacherDao;
     @Autowired
     private SysConfigService sysConfigService;
+    @Autowired
+    private CooperationOrganDao cooperationOrganDao;
+    @Autowired
+    private SmsCodeService smsCodeService;
+
+
+    @Value("${message.debugMode:false}")
+    private boolean debugMode;
 
 	/**
      * 查询详情
@@ -98,7 +109,11 @@ public class SchoolStaffServiceImpl extends ServiceImpl<SchoolStaffMapper, Schoo
         }
 
         // 验证码合法性校验
+        if(smsCodeService.verifyValidCode(schoolStaff.getMobile(), schoolStaff.getSmsCode())
+                && !debugMode) {
 
+            throw new BizException("验证码错误");
+        }
 
         // 合作单位编号
         CooperationOrgan cooperation = cooperationOrganService.get(schoolStaff.getSchoolId().intValue());
@@ -354,4 +369,16 @@ public class SchoolStaffServiceImpl extends ServiceImpl<SchoolStaffMapper, Schoo
                 .build();
     }
 
+    /***
+     * 更新合作单位信息
+     * @param info SchoolStaffWrapper.Cooperation
+     */
+    @Override
+    public void updateCooperation(SchoolStaffWrapper.Cooperation info) {
+
+        // 合作单位信息
+        cooperationOrganDao.update(JSON.parseObject(info.jsonString(), CooperationOrgan.class));
+    }
+
+
 }

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/CooperationOrganMapper.xml

@@ -94,6 +94,9 @@
             <if test="isEnable != null">
                 is_enable_ = #{isEnable},
             </if>
+            <if test="logo != null">
+                logo_ = #{logo},
+            </if>
         </set>
         WHERE id_ = #{id} and tenant_id_ = #{tenantId}
     </update>

+ 26 - 0
mec-web/src/main/java/com/ym/mec/web/controller/school/SchoolStaffController.java

@@ -198,4 +198,30 @@ public class SchoolStaffController extends BaseController {
         return succeed(schoolCooperation);
     }
 
+    @ApiOperation(value = "更新合作单位", notes = "学校合作单位查询")
+    @GetMapping("/updateCooperation")
+    public HttpResponseResult<Boolean> updateCooperation(@RequestBody SchoolStaffWrapper.Cooperation info) {
+
+        // 查询用户信息
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (Objects.isNull(sysUser)) {
+            throw new BizException("请先登录");
+        }
+
+        // 查询学校员工信息
+        SchoolStaff schoolStaff = schoolStaffService.queryByUserId(Long.valueOf(sysUser.getId()));
+        if (Objects.isNull(schoolStaff)) {
+            throw new BizException("员工账号不存在");
+        }
+
+        // 设置默认参数
+        info.tenantId(schoolStaff.getTenantId())
+                .setId(schoolStaff.getSchoolId().intValue());
+
+        // 更新合作单位信息
+        schoolStaffService.updateCooperation(info);
+
+        return succeed();
+    }
+
 }

+ 4 - 1
mec-web/src/main/java/com/ym/mec/web/vo/SchoolStaffVo.java

@@ -61,7 +61,10 @@ public class SchoolStaffVo {
         @Pattern(regexp = "1[3456789][0-9]{9}", message = "手机号码格式不正确")
         @ApiModelProperty("手机号码")
         private String mobile;
-                
+
+        @NotBlank(message = "验证码不能为空")
+        @ApiModelProperty("验证码")
+        private String smsCode;
                 
         public String jsonString() {
             return JSON.toJSONString(this);