diff --git a/cloudutil/src/main/java/com/ccsens/cloudutil/aspect/LogAspect.java b/cloudutil/src/main/java/com/ccsens/cloudutil/aspect/LogAspect.java index 5d251207..c88b21a2 100644 --- a/cloudutil/src/main/java/com/ccsens/cloudutil/aspect/LogAspect.java +++ b/cloudutil/src/main/java/com/ccsens/cloudutil/aspect/LogAspect.java @@ -100,7 +100,7 @@ public class LogAspect { } LogDto dto = new LogDto(); dto.setUrl(url); - dto.setFacility(""); + dto.setFacility(request.getHeader("fingerprint")); //参数 Object[] args = pjp.getArgs(); StringBuilder param = new StringBuilder(); diff --git a/mt/src/main/java/com/ccsens/mt/api/ExcelController.java b/mt/src/main/java/com/ccsens/mt/api/ExcelController.java new file mode 100644 index 00000000..e6cfadbb --- /dev/null +++ b/mt/src/main/java/com/ccsens/mt/api/ExcelController.java @@ -0,0 +1,36 @@ +package com.ccsens.mt.api; + + +import com.ccsens.cloudutil.annotation.MustLogin; +import com.ccsens.mt.bean.dto.CompeteDto; +import com.ccsens.util.JsonResponse; +import com.ccsens.util.bean.dto.QueryDto; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import java.io.IOException; + +/** + * @author li + */ +@Slf4j +@Api(tags = "报名表格的下载", description = "") +@RestController +@RequestMapping("/down") +public class ExcelController { + @MustLogin + @ApiOperation(value = "报名表详情表(关联wps)", notes = "") + @RequestMapping(value = "/enrollWPS", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse enrollPlayInfoWps(@ApiParam @Validated @RequestBody QueryDto params) throws IOException { + log.info("查询各个项目报名人员信息:{}",params); +// String enrollPlayInfoList= competeService.enrollPlayInfoWps(params); + return JsonResponse.newInstance().ok(); + } +} diff --git a/mt/src/main/java/com/ccsens/mt/api/FileController.java b/mt/src/main/java/com/ccsens/mt/api/FileController.java index c0c7eaa6..90bc751e 100644 --- a/mt/src/main/java/com/ccsens/mt/api/FileController.java +++ b/mt/src/main/java/com/ccsens/mt/api/FileController.java @@ -1,29 +1,28 @@ package com.ccsens.mt.api; -import cn.hutool.core.collection.CollectionUtil; + import cn.hutool.core.lang.Snowflake; -import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.ccsens.cloudutil.feign.TallFeignClient; +import com.ccsens.mt.bean.dto.CompeteDto; import com.ccsens.mt.bean.po.CommonFile; import com.ccsens.mt.bean.vo.FileVo; import com.ccsens.mt.service.IFileService; import com.ccsens.mt.util.Constant; import com.ccsens.util.*; +import com.ccsens.util.bean.dto.QueryDto; import com.ccsens.util.exception.BaseException; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParams; -import io.swagger.annotations.ApiOperation; +import io.jsonwebtoken.Claims; +import io.swagger.annotations.*; import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.Part; -import java.io.File; -import java.util.ArrayList; import java.util.List; /** @@ -149,4 +148,25 @@ public class FileController { // } return JsonResponse.newInstance().ok(vo); } + + @ApiOperation(value = "上传图片证明文件(不大于2M)") + @ApiImplicitParams({ + }) + @RequestMapping(value = "/upload/photoBase64", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse uploadPhoneBase64(HttpServletRequest request, @ApiParam @Validated @RequestBody CompeteDto.FileBase64 params) throws Exception { +// log.info("文件上传:{}", params); + String authHeader = request.getHeader(WebConstant.HEADER_KEY_TOKEN); + JsonResponse tokenRes = tallFeignClient.getUserIdByToken(authHeader); + log.info("{}查询userId返回:{}", authHeader, tokenRes); + if (tokenRes.getCode().intValue() != CodeEnum.SUCCESS.getCode().intValue()) { + return tokenRes; + } + JSONObject json = JSON.parseObject(JSON.toJSONString(tokenRes.getData())); + Long userId = json.getLong("id"); + + FileVo.Upload vo = fileService.uploadPhoneBase64(params.getFileBase64(),userId); + + return JsonResponse.newInstance().ok(vo); + } + } diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java index 0b308c1c..35d18e31 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/CompeteDto.java @@ -5,8 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.NonNull; -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.NotNull; +import javax.validation.constraints.*; import java.util.List; /** @@ -230,26 +229,33 @@ public class CompeteDto { private String family; } @Data - @ApiModel("当前用户参赛单位基本信息") + @ApiModel("添加或修改单位信息") public static class CompeteCompany{ + @NotNull @ApiModelProperty("大赛id") private Long competeTimeId; @ApiModelProperty("参赛单位id") private Long companyId; +// @NotEmpty(message = "请输入单位名称") + @Size(min =0,max = 50,message = "单位名称过长") @ApiModelProperty("单位名称") private String companyName; + @NotEmpty(message = "姓名不能为空") + @Size(min =0,max = 50 ,message = "联系人姓名过长") @ApiModelProperty("主要联系人姓名") - private String contactsName ; + private String contactsName; + @NotEmpty(message = "联系方式不能为空") + @Pattern(regexp="^[1]([3-9])[0-9]{9}$",message="请输入正确的手机号") @ApiModelProperty("联系方式") private String contactsPhone ; @ApiModelProperty("教练的人数") - private int coachNum ; + private int coachNum; @ApiModelProperty("领队的人数") - private int guideNum ; + private int guideNum; @ApiModelProperty("参赛人员的人数") private int playerNum; @ApiModelProperty("是否同意安全责任书 0否 1是 只有同意才能报名") - private Byte authorization; + private byte authorization; } // @Data @@ -278,7 +284,7 @@ public class CompeteDto { @Data @ApiModel("领队id") public static class LeaderId{ - @NonNull + @NotNull @ApiModelProperty("教练或领队的id") private Long coachId; @@ -286,9 +292,17 @@ public class CompeteDto { @Data @ApiModel("项目id和组别id") public static class DelPlayer{ - @NonNull + @NotNull @ApiModelProperty("选手id") private Long playerId; } + + + @Data + @ApiModel("文件base64") + public static class FileBase64{ + @ApiModelProperty("") + private String fileBase64; + } } diff --git a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java index cb3a445d..f57e3ab8 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java +++ b/mt/src/main/java/com/ccsens/mt/bean/dto/ProvinceCompeteDto.java @@ -16,6 +16,7 @@ public class ProvinceCompeteDto { @Data @ApiModel("参赛单位id") public static class CompanyIdVo{ + @NotNull(message = "请先填写基础信息") @ApiModelProperty("参赛单位id") private Long companyId; } @@ -32,7 +33,7 @@ public class ProvinceCompeteDto { @Data @ApiModel("通过组别查找本单位注册的选手") public static class QueryPlayerByGroup{ - @NotNull + @NotNull(message = "请先填写基础信息") @ApiModelProperty("参赛单位id") private Long companyId; @ApiModelProperty("组别id") @@ -45,14 +46,14 @@ public class ProvinceCompeteDto { @ApiModel("添加或修改选手") public static class PlayerInfo{ @ApiModelProperty("选手id") - private Long playerId ; + private Long playerId; @ApiModelProperty("参赛单位id") private Long competeId; @ApiModelProperty("组别id") private Long groupId; @ApiModelProperty("选手姓名") private String playerName; - @ApiModelProperty("性别") + @ApiModelProperty("性别 0女 1男") private int gender; @ApiModelProperty("身份证号") private String idCard; diff --git a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteGroup.java b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteGroup.java index ebf5a181..f25ad54e 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteGroup.java +++ b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteGroup.java @@ -24,6 +24,12 @@ public class CompeteGroup implements Serializable { private Byte recStatus; + private Byte sex; + + private Byte maxAge; + + private Byte minAge; + private static final long serialVersionUID = 1L; public Long getId() { @@ -106,6 +112,30 @@ public class CompeteGroup implements Serializable { this.recStatus = recStatus; } + public Byte getSex() { + return sex; + } + + public void setSex(Byte sex) { + this.sex = sex; + } + + public Byte getMaxAge() { + return maxAge; + } + + public void setMaxAge(Byte maxAge) { + this.maxAge = maxAge; + } + + public Byte getMinAge() { + return minAge; + } + + public void setMinAge(Byte minAge) { + this.minAge = minAge; + } + @Override public String toString() { StringBuilder sb = new StringBuilder(); @@ -122,6 +152,9 @@ public class CompeteGroup implements Serializable { sb.append(", createdAt=").append(createdAt); sb.append(", updatedAt=").append(updatedAt); sb.append(", recStatus=").append(recStatus); + sb.append(", sex=").append(sex); + sb.append(", maxAge=").append(maxAge); + sb.append(", minAge=").append(minAge); sb.append("]"); return sb.toString(); } diff --git a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteGroupExample.java b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteGroupExample.java index 57fe09bb..a2bba3a7 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/po/CompeteGroupExample.java +++ b/mt/src/main/java/com/ccsens/mt/bean/po/CompeteGroupExample.java @@ -724,6 +724,186 @@ public class CompeteGroupExample { addCriterion("rec_status not between", value1, value2, "recStatus"); return (Criteria) this; } + + public Criteria andSexIsNull() { + addCriterion("sex is null"); + return (Criteria) this; + } + + public Criteria andSexIsNotNull() { + addCriterion("sex is not null"); + return (Criteria) this; + } + + public Criteria andSexEqualTo(Byte value) { + addCriterion("sex =", value, "sex"); + return (Criteria) this; + } + + public Criteria andSexNotEqualTo(Byte value) { + addCriterion("sex <>", value, "sex"); + return (Criteria) this; + } + + public Criteria andSexGreaterThan(Byte value) { + addCriterion("sex >", value, "sex"); + return (Criteria) this; + } + + public Criteria andSexGreaterThanOrEqualTo(Byte value) { + addCriterion("sex >=", value, "sex"); + return (Criteria) this; + } + + public Criteria andSexLessThan(Byte value) { + addCriterion("sex <", value, "sex"); + return (Criteria) this; + } + + public Criteria andSexLessThanOrEqualTo(Byte value) { + addCriterion("sex <=", value, "sex"); + return (Criteria) this; + } + + public Criteria andSexIn(List values) { + addCriterion("sex in", values, "sex"); + return (Criteria) this; + } + + public Criteria andSexNotIn(List values) { + addCriterion("sex not in", values, "sex"); + return (Criteria) this; + } + + public Criteria andSexBetween(Byte value1, Byte value2) { + addCriterion("sex between", value1, value2, "sex"); + return (Criteria) this; + } + + public Criteria andSexNotBetween(Byte value1, Byte value2) { + addCriterion("sex not between", value1, value2, "sex"); + return (Criteria) this; + } + + public Criteria andMaxAgeIsNull() { + addCriterion("max_age is null"); + return (Criteria) this; + } + + public Criteria andMaxAgeIsNotNull() { + addCriterion("max_age is not null"); + return (Criteria) this; + } + + public Criteria andMaxAgeEqualTo(Byte value) { + addCriterion("max_age =", value, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeNotEqualTo(Byte value) { + addCriterion("max_age <>", value, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeGreaterThan(Byte value) { + addCriterion("max_age >", value, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeGreaterThanOrEqualTo(Byte value) { + addCriterion("max_age >=", value, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeLessThan(Byte value) { + addCriterion("max_age <", value, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeLessThanOrEqualTo(Byte value) { + addCriterion("max_age <=", value, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeIn(List values) { + addCriterion("max_age in", values, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeNotIn(List values) { + addCriterion("max_age not in", values, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeBetween(Byte value1, Byte value2) { + addCriterion("max_age between", value1, value2, "maxAge"); + return (Criteria) this; + } + + public Criteria andMaxAgeNotBetween(Byte value1, Byte value2) { + addCriterion("max_age not between", value1, value2, "maxAge"); + return (Criteria) this; + } + + public Criteria andMinAgeIsNull() { + addCriterion("min_age is null"); + return (Criteria) this; + } + + public Criteria andMinAgeIsNotNull() { + addCriterion("min_age is not null"); + return (Criteria) this; + } + + public Criteria andMinAgeEqualTo(Byte value) { + addCriterion("min_age =", value, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeNotEqualTo(Byte value) { + addCriterion("min_age <>", value, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeGreaterThan(Byte value) { + addCriterion("min_age >", value, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeGreaterThanOrEqualTo(Byte value) { + addCriterion("min_age >=", value, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeLessThan(Byte value) { + addCriterion("min_age <", value, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeLessThanOrEqualTo(Byte value) { + addCriterion("min_age <=", value, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeIn(List values) { + addCriterion("min_age in", values, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeNotIn(List values) { + addCriterion("min_age not in", values, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeBetween(Byte value1, Byte value2) { + addCriterion("min_age between", value1, value2, "minAge"); + return (Criteria) this; + } + + public Criteria andMinAgeNotBetween(Byte value1, Byte value2) { + addCriterion("min_age not between", value1, value2, "minAge"); + return (Criteria) this; + } } public static class Criteria extends GeneratedCriteria { diff --git a/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java b/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java index a2e88edd..62be8623 100644 --- a/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java +++ b/mt/src/main/java/com/ccsens/mt/bean/vo/ProvinceCompeteVo.java @@ -159,16 +159,28 @@ public class ProvinceCompeteVo { private int gender; @ApiModelProperty("身份证号") private String idCard; + @ApiModelProperty("身份证正面照片 或户口本照片id") + private Long idCardFrontId; @ApiModelProperty("身份证正面照片 或户口本照片 (浏览路径)") private String idCardFront ; + @ApiModelProperty("身份证反面照片ID") + private Long idCardBackId; @ApiModelProperty("身份证反面照片(浏览路径)") private String idCardBack; + @ApiModelProperty("一寸证件照id") + private Long idPhoneId; @ApiModelProperty("一寸证件照(浏览路径)") private String idPhone; + @ApiModelProperty("学籍证明id") + private Long studentRecordId; @ApiModelProperty("学籍证明(浏览路径)") private String studentRecord; + @ApiModelProperty("体检证明id") + private Long healthRecordId; @ApiModelProperty("体检证明(浏览路径)") private String healthRecord; + @ApiModelProperty("保险证明id") + private Long insuranceRecordId; @ApiModelProperty("保险证明(浏览路径)") private String insuranceRecord; } @@ -191,9 +203,13 @@ public class ProvinceCompeteVo { private String phone; @ApiModelProperty("身份证号") private String idCard; + @ApiModelProperty("证件照id") + private Long idPhotoId; @ApiModelProperty("证件照(浏览路径)") - private Long idPhoto; + private String idPhoto; + @ApiModelProperty("教练证id") + private Long coachCertificateId; @ApiModelProperty("教练证(浏览路径)") - private Long coachCertificate; + private String coachCertificate; } } diff --git a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java index f7db0974..9bc2d22d 100644 --- a/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java +++ b/mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java @@ -68,7 +68,7 @@ public interface CompeteCompanyDao extends CompeteCompanyMapper { * @param companyId 单位id * @return 返回单位参加的项目的数量 */ - int getJoinProjectNum(@Param("competeTimeId")Long companyId); + int getJoinProjectNum(@Param("companyId")Long companyId); /** * 查找单位在某项目下的某个组别的参赛数量(个人项目) diff --git a/mt/src/main/java/com/ccsens/mt/service/FileService.java b/mt/src/main/java/com/ccsens/mt/service/FileService.java index f798ea08..b28438c3 100644 --- a/mt/src/main/java/com/ccsens/mt/service/FileService.java +++ b/mt/src/main/java/com/ccsens/mt/service/FileService.java @@ -1,8 +1,14 @@ package com.ccsens.mt.service; +import cn.hutool.core.codec.Base64; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.io.FileUtil; import cn.hutool.core.lang.Snowflake; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ImageUtil; import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.ccsens.mt.bean.po.CommonFile; @@ -19,9 +25,13 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import javax.servlet.http.Part; import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; +import java.util.Date; import java.util.List; +import java.util.Random; /** * @description: 文件操作 @@ -103,4 +113,50 @@ public class FileService implements IFileService { } return vo; } + + @Override + public FileVo.Upload uploadPhoneBase64(String fileBas64, Long userId) throws Exception { + FileVo.Upload vo = new FileVo.Upload(); + if(ObjectUtil.isNotNull(fileBas64)) { + log.info("-------------解析base64"); + //获取后缀 data:image/png;base64,xxxxxx + String suffix = fileBas64.substring(fileBas64.indexOf("/")+1, fileBas64.indexOf(";")); + String dir = PropUtil.path + Constant.File.UPLOAD_URL + File.separator; + Random random = new Random(); + String randomStr = String.valueOf(System.currentTimeMillis()) + random.nextInt(100) + "." + suffix; + String fileName = DateUtil.today() + "/" + randomStr; + + File file = new File(dir + fileName); + if (!file.getParentFile().exists()) { + file.getParentFile().mkdirs(); + } + // 截取base64,后面的字符串 + String base64flag = "base64,"; + int index = fileBas64.indexOf(base64flag); + String str = index < 0 ? fileBas64 : fileBas64.substring(index + base64flag.length()); + byte[] decode = Base64.decode(str); + FileOutputStream out = new FileOutputStream(file); + out.write(decode); + out.close(); + + if (file.length() > 2097152) { +// throw new BaseException(CodeEnum.PHOTO_FILE_EXCEED_2M); + } + String name = file.getName(); + + CommonFile fileDo = new CommonFile(); + fileDo.setId(snowflake.nextId()); + fileDo.setFileName(name); + fileDo.setLocation(dir + fileName); + fileDo.setUserId(userId); + fileDo.setVisitLocation(PropUtil.imgDomain + Constant.File.UPLOAD_URL + File.separator + fileName); + + commonFileMapper.insertSelective(fileDo); + log.info("保存文件:{}", fileDo); + vo.setId(fileDo.getId()); + vo.setName(fileDo.getFileName()); + vo.setVisitUrl(fileDo.getVisitLocation()); + } + return vo; + } } diff --git a/mt/src/main/java/com/ccsens/mt/service/IFileService.java b/mt/src/main/java/com/ccsens/mt/service/IFileService.java index 2ec2b66a..83a1061f 100644 --- a/mt/src/main/java/com/ccsens/mt/service/IFileService.java +++ b/mt/src/main/java/com/ccsens/mt/service/IFileService.java @@ -5,6 +5,7 @@ import com.ccsens.mt.bean.vo.FileVo; import com.ccsens.util.NotSupportedFileTypeException; import javax.servlet.http.Part; +import java.io.FileNotFoundException; import java.io.IOException; import java.util.List; @@ -37,4 +38,6 @@ public interface IFileService { * @return */ FileVo.Upload uploadPhone(Part file,Long userId) throws IOException, NotSupportedFileTypeException; + + FileVo.Upload uploadPhoneBase64(String file, Long userId) throws FileNotFoundException, Exception; } diff --git a/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java b/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java index aecd2404..1b114f88 100644 --- a/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java +++ b/mt/src/main/java/com/ccsens/mt/service/ProvinceService.java @@ -9,6 +9,7 @@ import cn.hutool.core.util.StrUtil; import com.ccsens.mt.bean.dto.CompeteDto; import com.ccsens.mt.bean.dto.ProvinceCompeteDto; import com.ccsens.mt.bean.po.*; +import com.ccsens.mt.bean.vo.CompeteVo; import com.ccsens.mt.bean.vo.ProvinceCompeteVo; import com.ccsens.mt.persist.dao.CompeteCompanyDao; import com.ccsens.mt.persist.dao.CompetePlayerDao; @@ -65,6 +66,8 @@ public class ProvinceService implements IProvinceService { private CompeteTeamMemberMapper teamMemberMapper; @Resource private CompetePlayerMapper competePlayerMapper; + @Resource + private CompeteGroupMapper competeGroupMapper; /** * 查找当前用户填写的信息的概览 @@ -133,16 +136,26 @@ public class ProvinceService implements IProvinceService { CompetePlayerExample competePlayerExample = new CompetePlayerExample(); competePlayerExample.createCriteria().andIdCardEqualTo(param.getIdCard()); if(competePlayerDao.countByExample(competePlayerExample) != 0){ - throw new BaseException(CodeEnum.WBS_REPEAT_MEMBER_PHONE); + throw new BaseException(CodeEnum.ID_CARD_ALREADY); + } + + if(ObjectUtil.isNull(param.getCompeteId())){ throw new BaseException(CodeEnum.NOT_COMPANY); } + if(ObjectUtil.isNull(param.getGroupId())){ throw new BaseException(CodeEnum.MT_NOT_GROUP); } + //检查性别与组别是否匹配 + CompeteGroup competeGroup = competeGroupMapper.selectByPrimaryKey(param.getGroupId()); + if(ObjectUtil.isNull(competeGroup) || param.getGender() != competeGroup.getSex()){ + throw new BaseException(CodeEnum.MT_NOT_GROUP); } //判断各种证件是否为空 - if(ObjectUtil.isNull(param.getCompeteId())){ throw new BaseException(CodeEnum.PARAM_ERROR); } - if(ObjectUtil.isNull(param.getGroupId())){ throw new BaseException(CodeEnum.PARAM_ERROR); } - if(ObjectUtil.isNull(param.getIdCardFront())){ throw new BaseException(CodeEnum.PARAM_ERROR); } - if(ObjectUtil.isNull(param.getIdPhone())){ throw new BaseException(CodeEnum.PARAM_ERROR); } - if(ObjectUtil.isNull(param.getStudentRecord())){ throw new BaseException(CodeEnum.PARAM_ERROR); } - if(ObjectUtil.isNull(param.getHealthRecord())){ throw new BaseException(CodeEnum.PARAM_ERROR); } - if(ObjectUtil.isNull(param.getInsuranceRecord())){ throw new BaseException(CodeEnum.PARAM_ERROR); } + if(ObjectUtil.isNull(param.getIdCardFront()) && ObjectUtil.isNotNull(param.getIdCardBack())){ + param.setIdCardFront(param.getIdCardBack()); + param.setIdCardBack(null); + } + if(ObjectUtil.isNull(param.getIdCardFront())){ throw new BaseException(CodeEnum.PHOTO_IS_EMPTY.mtMsgPhoto("身份证/户口本信息")); } + if(ObjectUtil.isNull(param.getIdPhone())){ throw new BaseException(CodeEnum.PHOTO_IS_EMPTY.mtMsgPhoto("证件照")); } + if(ObjectUtil.isNull(param.getStudentRecord())){ throw new BaseException(CodeEnum.PHOTO_IS_EMPTY.mtMsgPhoto("学籍证明")); } + if(ObjectUtil.isNull(param.getHealthRecord())){ throw new BaseException(CodeEnum.PHOTO_IS_EMPTY.mtMsgPhoto("健康证明")); } + if(ObjectUtil.isNull(param.getInsuranceRecord())){ throw new BaseException(CodeEnum.PHOTO_IS_EMPTY.mtMsgPhoto("保险证明")); } player.setIdCard(param.getIdCard()); player.setCompanyId(param.getCompeteId()); player.setCompeteGroupId(param.getGroupId()); @@ -239,6 +252,9 @@ public class ProvinceService implements IProvinceService { return competeCompany; } + /** + * 新增、修改单位信息 + */ @Override public ProvinceCompeteVo.CompeteCompany changeCompany(CompeteDto.CompeteCompany param, Long userId) { //判断当前单位id是否为空, @@ -246,51 +262,61 @@ public class ProvinceService implements IProvinceService { CompeteCompany competeCompany = new CompeteCompany(); //单位id为空,新增 if (ObjectUtil.isNull(companyid)){ - Long id = snowflake.nextId(); - competeCompany.setId(id); - competeCompany.setCoachNum(param.getCoachNum()); - if (ObjectUtil.isNull(param.getCompanyName())){ - throw new BaseException(CodeEnum.PARAM_ERROR); - } - competeCompany.setName(param.getCompanyName()); - if (ObjectUtil.isNull(param.getContactsName())){ - throw new BaseException(CodeEnum.PARAM_ERROR); - } - competeCompany.setContactsName(param.getContactsName()); - if (ObjectUtil.isNull(param.getContactsPhone())){ - throw new BaseException(CodeEnum.PARAM_ERROR); + //检查当前用户是否已经添加过单位,有的话直接返回 + CompeteCompanyExample companyExample = new CompeteCompanyExample(); + companyExample.createCriteria().andUserIdEqualTo(userId).andCompeteTimeIdEqualTo(param.getCompeteTimeId()); + if(competeCompanyDao.countByExample(companyExample) == 0) { + Long id = snowflake.nextId(); + competeCompany.setId(id); +// competeCompany.setCoachNum(param.getCoachNum()); + if (StrUtil.isEmpty(param.getCompanyName())) { + throw new BaseException(CodeEnum.NAME_EMPTY); + } + competeCompany.setName(param.getCompanyName()); + + if (StrUtil.isEmpty(param.getContactsName())) { + throw new BaseException(CodeEnum.CONTACTS_NAME_EMPTY); + } + competeCompany.setContactsName(param.getContactsName()); + + if (StrUtil.isEmpty(param.getContactsPhone()) || !param.getContactsPhone().matches(WebConstant.REGEX_PHONE)) { + throw new BaseException(CodeEnum.PHONE_ERR); + } + competeCompany.setContactsPhone(param.getContactsPhone()); + competeCompany.setLeaderNum(param.getGuideNum()); + competeCompany.setJoinNum(param.getPlayerNum()); + competeCompany.setUserId(userId); + competeCompany.setCompeteTimeId(param.getCompeteTimeId()); + if (param.getAuthorization() != 1) { + throw new BaseException(CodeEnum.AUTHORIZATION_AGREE); + } + competeCompany.setAuthorization(param.getAuthorization()); + competeCompanyDao.insertSelective(competeCompany); } - competeCompany.setContactsPhone(param.getContactsPhone()); - competeCompany.setLeaderNum(param.getGuideNum()); - competeCompany.setJoinNum(param.getPlayerNum()); - competeCompany.setUserId(userId); - competeCompany.setCompeteTimeId(param.getCompeteTimeId()); -// if (ObjectUtil.isNull(authorization)){ -// throw new BaseException(CodeEnum.PARAM_ERROR); -// } - competeCompany.setAuthorization(param.getAuthorization()); - competeCompanyDao.insertSelective(competeCompany); }else { //不为空,根据单位id查出来修改 判断传进来的参数是否为空 为空则跳过 不为空则修改 competeCompany = competeCompanyDao.selectByPrimaryKey(companyid); - if (ObjectUtil.isNotNull(param.getCoachNum())){ - competeCompany.setCoachNum(param.getCoachNum()); - } - if (ObjectUtil.isNotNull(param.getCompanyName())) { +// if (ObjectUtil.isNotNull(param.getCoachNum())){ +// competeCompany.setCoachNum(param.getCoachNum()); +// } + if (StrUtil.isNotEmpty(param.getCompanyName())) { competeCompany.setName(param.getCompanyName()); } - if (ObjectUtil.isNotNull(param.getContactsName())) { + if (StrUtil.isNotEmpty(param.getContactsName())) { competeCompany.setContactsName(param.getContactsName()); } - if (ObjectUtil.isNotNull(param.getContactsPhone())) { + if (StrUtil.isNotEmpty(param.getContactsPhone())) { + if(!param.getContactsPhone().matches(WebConstant.REGEX_PHONE)){ + throw new BaseException(CodeEnum.PHONE_ERR); + } competeCompany.setContactsPhone(param.getContactsPhone()); } - if (ObjectUtil.isNotNull(param.getGuideNum())) { - competeCompany.setLeaderNum(param.getGuideNum()); - } - if (ObjectUtil.isNotNull(param.getPlayerNum())) { - competeCompany.setJoinNum(param.getPlayerNum()); - } +// if (ObjectUtil.isNotNull(param.getGuideNum())) { +// competeCompany.setLeaderNum(param.getGuideNum()); +// } +// if (ObjectUtil.isNotNull(param.getPlayerNum())) { +// competeCompany.setJoinNum(param.getPlayerNum()); +// } competeCompanyDao.updateByPrimaryKeySelective(competeCompany); // competeCompany1.setCompanyId(competeCompany.getId()); // competeCompany1.setCoachNum(competeCompany.getCoachNum()); @@ -308,9 +334,9 @@ public class ProvinceService implements IProvinceService { @Override public ProvinceCompeteVo.CompeteCompanyHeadList queryCoach(ProvinceCompeteDto.CompanyIdVo param) { Long company = param.getCompanyId(); - if (ObjectUtil.isNull(company)){ - throw new BaseException(CodeEnum.PARAM_ERROR); - } +// if (ObjectUtil.isNull(company)){ +// throw new BaseException(CodeEnum.PARAM_ERROR); +// } CompeteCoachExample competeCoachExample = new CompeteCoachExample(); competeCoachExample.createCriteria().andCompanyIdEqualTo(company); List competeCoachList = competeCoachMapper.selectByExample(competeCoachExample); @@ -387,9 +413,13 @@ public class ProvinceService implements IProvinceService { competeCoachExample.createCriteria().andIdEqualTo(id); competeCoachMapper.updateByExample(competeCoach,competeCoachExample); + }else { throw new BaseException(CodeEnum.PARAM_ERROR); } +// else { +// throw new BaseException(CodeEnum.PARAM_ERROR); +// } } @@ -424,40 +454,18 @@ public class ProvinceService implements IProvinceService { // CompetePlayerExample competePlayerExample = new CompetePlayerExample(); // competePlayerExample.createCriteria().andIdEqualTo(playerId); // competePlayerMapper.updateByExampleSelective(competePlayer,competePlayerExample); - }else { - throw new BaseException(CodeEnum.PARAM_ERROR); } +// else { +// throw new BaseException(CodeEnum.PARAM_ERROR); +// } } @Override public ProvinceCompeteVo.PlayerInfo getPlayerInfo(CompeteDto.DelPlayer param) { -//<<<<<<< HEAD return competePlayerDao.getPlayerByPlayerId(param.getPlayerId()); -//======= -//// -// Long playerId = param.getPlayerId(); -// CompetePlayer competePlayer = competePlayerMapper.selectByPrimaryKey(playerId); -// if (ObjectUtil.isNull(competePlayer)){ -// throw new BaseException(CodeEnum.PARAM_ERROR); -// } -//// ProvinceCompeteVo.PlayerInfo playerInfo = new ProvinceCompeteVo.PlayerInfo(); -//// playerInfo.setPlayerId(competePlayer.getId()); -//// playerInfo.setCompeteId(competePlayer.getCompeteTimeId()); -//// playerInfo.setGroupId(competePlayer.getCompeteGroupId()); -//// playerInfo.setPlayerName(competePlayer.getName()); -//// playerInfo.setGender(competePlayer.getGender()); -//// playerInfo.setIdCard(competePlayer.getIdCard()); -//// playerInfo.setIdCardFront(competePlayer.getIdCardFront()); -//// playerInfo.setIdCardBack(competePlayer.getIdCardBack()); -//// playerInfo.setIdPhone(competePlayer.getIdPhotoFile()); -//// playerInfo.setStudentRecord(competePlayer.getStudentRecordFile()); -//// playerInfo.setHealthRecord(competePlayer.getHealthRecordFile()); -//// playerInfo.setInsuranceRecord(competePlayer.getInsuranceRecordFile()); -//// return playerInfo; -// return competePlayerDao.getPlayerByPlayerId(playerId); -//>>>>>>> f1a5f1b5d162548202a10e15eaec41aacda91a21 } + @Override public void updateLeader(ProvinceCompeteDto.ModifyLeader param) { if(ObjectUtil.isNull(param.getCoachId())){ @@ -465,31 +473,31 @@ public class ProvinceService implements IProvinceService { competeCoachExample.createCriteria().andCompanyIdEqualTo(param.getCompanyId()).andIdentityEqualTo((byte) param.getIdentity()); long count = competeCoachMapper.countByExample(competeCoachExample); if (param.getIdentity() == 0 && count >= 2){ - throw new BaseException(CodeEnum.COACH_NUM_FULL); + throw new BaseException(CodeEnum.COACH_NUM_FULL); } if (param.getIdentity() == 1 && count >=3){ - throw new BaseException(CodeEnum.COACH_NUM_FULL); + throw new BaseException(CodeEnum.LEADER_NUM_FULL); } //手机号不能为空,且正确 if(StrUtil.isEmpty(param.getPhone()) || !param.getPhone().matches(WebConstant.REGEX_PHONE)){ - throw new BaseException(CodeEnum.PARAM_ERROR); + throw new BaseException(CodeEnum.PHONE_ERR); } //身份证不能为空,且正确 if(StrUtil.isEmpty(param.getIdCard()) || !IdcardUtil.isValidCard(param.getIdCard())){ - throw new BaseException(CodeEnum.PARAM_ERROR); + throw new BaseException(CodeEnum.ID_CARD_ERROR); } //证件照判断 - if (ObjectUtil.isNull(param.getIdPhoto())){ - throw new BaseException(CodeEnum.PARAM_ERROR); + if (param.getIdentity() == 1 && ObjectUtil.isNull(param.getIdPhoto())){ + throw new BaseException(CodeEnum.PHOTO_IS_EMPTY); } CompeteCoach competeCoach1 = new CompeteCoach(); competeCoach1.setId(snowflake.nextId()); BeanUtil.copyProperties(param, competeCoach1); competeCoachMapper.insertSelective(competeCoach1); }else { - CompeteCoach competeCoach2 = new CompeteCoach(); - BeanUtil.copyProperties(param, competeCoach2); - competeCoachMapper.updateByPrimaryKeySelective(competeCoach2); + CompeteCoach competeCoach = competeCoachMapper.selectByPrimaryKey(param.getCoachId()); + BeanUtil.copyProperties(param, competeCoach); + competeCoachMapper.updateByPrimaryKeySelective(competeCoach); } } @@ -502,20 +510,20 @@ public class ProvinceService implements IProvinceService { CompeteProject competeProject = competeProjectMapper.selectByPrimaryKey(param.getProjectId()); if(ObjectUtil.isNull(competeProject)){ throw new BaseException(CodeEnum.PARAM_ERROR); } - //检查参赛人数是否符合 -// if(CollectionUtil.isEmpty(param.getPlayers())){ throw new BaseException(CodeEnum.PARAM_ERROR); } - int joinCount = 0; - for(ProvinceCompeteDto.JoinProjectPlayer joinProject : param.getPlayers()){ - if(joinProject.getJoinProject() == 1){ - joinCount++; - } - } - if(joinCount > competeProject.getMemberMax() ){ - throw new BaseException(CodeEnum.TEAM_MEMBER_ERROR); - } +// //检查参赛人数是否符合 +// int joinCount = 0; +// for(ProvinceCompeteDto.JoinProjectPlayer joinProject : param.getPlayers()){ +// if(joinProject.getJoinProject() == 1){ +// joinCount++; +// } +// } +//// if(joinCount > competeProject.getMemberMax() ){ +//// throw new BaseException(CodeEnum.TEAM_MEMBER_ERROR); +//// } //判断项目是个人还是团队,参加 if(competeProject.getTeam() == 0){ - param.getPlayers().forEach(joinPlayer -> { +// param.getPlayers().forEach(joinPlayer -> { + for(ProvinceCompeteDto.JoinProjectPlayer joinPlayer : param.getPlayers()){ //检查此用户之前是否参加此项目 CompeteProjectPlayerExample example = new CompeteProjectPlayerExample(); example.createCriteria().andProjectIdEqualTo(competeProject.getId()).andPlayerIdEqualTo(joinPlayer.getPlayerId()) @@ -537,13 +545,13 @@ public class ProvinceService implements IProvinceService { //查找此公司此组别是否参加过这个项目 int num = competeCompanyDao.getNumByCompanyAndGroup(competeProject.getId(), player.getCompanyId(), player.getCompeteGroupId(), param.getCompeteTimeId()); if (num > 0) { - throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg("该项目该组别")); + throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg1("该项目该组别")); } - //查找个人参赛数量是否符合 + //查找个人参赛数量是否符合(个人比赛3个) CompeteProjectPlayerExample projectPlayerExample = new CompeteProjectPlayerExample(); projectPlayerExample.createCriteria().andPlayerIdEqualTo(joinPlayer.getPlayerId()).andCompeteTimeIdEqualTo(param.getCompeteTimeId()); if (projectPlayerMapper.countByExample(projectPlayerExample) >= 3) { - throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName())); + throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName()+"个人")); } //参加比赛记录 CompeteProjectPlayer projectPlayer = new CompeteProjectPlayer(); @@ -555,7 +563,8 @@ public class ProvinceService implements IProvinceService { projectPlayer.setGenderGroup(player.getGender()); projectPlayerMapper.insertSelective(projectPlayer); } - }); +// }); + } }else { //查找当前公司是否已经报名此项目 CompeteTeam competeTeam; @@ -574,6 +583,24 @@ public class ProvinceService implements IProvinceService { competeTeamDao.insertSelective(competeTeam); } + //检查参赛人数是否符合 + int joinCount = 0; + for(ProvinceCompeteDto.JoinProjectPlayer joinProject : param.getPlayers()){ + if(joinProject.getJoinProject() == 1){ + joinCount++; + }else { + joinCount--; + } + } + CompeteTeamMemberExample example = new CompeteTeamMemberExample(); + example.createCriteria().andCompeteTeamIdEqualTo(competeTeam.getId()); + long memberNum = teamMemberMapper.countByExample(example); + + if(joinCount + memberNum > competeProject.getMemberMax() ){ + throw new BaseException(CodeEnum.MEMBER_NUM_ERROR); + //TODO 参赛人数不满足比赛人数要求 + } + for (int i = 0; i < param.getPlayers().size(); i++) { ProvinceCompeteDto.JoinProjectPlayer joinProjectPlayer = param.getPlayers().get(i); CompetePlayer player = competePlayerDao.selectByPrimaryKey(joinProjectPlayer.getPlayerId()); @@ -592,10 +619,11 @@ public class ProvinceService implements IProvinceService { } //选手这次参加,以前未参加,添加数据 if(joinProjectPlayer.getJoinProject() == 1 && CollectionUtil.isEmpty(teamMemberList)){ - //检查该选手报名项目数量 + //检查该选手报名项目数量(团队6个) int a = competeCompanyDao.getTeamNumByPlayerId(param.getCompeteTimeId(),player.getId()); if(a >= 6){ - throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName())); + throw new BaseException(CodeEnum.JOIN_PROJECT_NUM_FULL.mtProjectMsg(player.getName()+"团队")); + //XXX团队项目参赛次数已满 } //添加成员表 CompeteTeamMember teamMember = new CompeteTeamMember(); diff --git a/mt/src/main/resources/application.yml b/mt/src/main/resources/application.yml index 5889ff7f..5c2cd5c4 100644 --- a/mt/src/main/resources/application.yml +++ b/mt/src/main/resources/application.yml @@ -1,4 +1,4 @@ spring: profiles: - active: test - include: common, util-test \ No newline at end of file + active: dev + include: common, util-dev \ No newline at end of file diff --git a/mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml b/mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml index 7d7e09e0..0cab33f8 100644 --- a/mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml +++ b/mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml @@ -39,6 +39,7 @@ cc.compete_time_id = #{competeTimeId} and cc.user_id = #{userId} and cc.rec_status = 0 + limit 1 select @@ -109,11 +112,13 @@ insert into t_compete_group (id, group_name, description, start_age, end_age, sequence, type, created_at, updated_at, - rec_status) + rec_status, sex, max_age, + min_age) values (#{id,jdbcType=BIGINT}, #{groupName,jdbcType=VARCHAR}, #{description,jdbcType=VARCHAR}, #{startAge,jdbcType=INTEGER}, #{endAge,jdbcType=INTEGER}, #{sequence,jdbcType=INTEGER}, #{type,jdbcType=TINYINT}, #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP}, - #{recStatus,jdbcType=TINYINT}) + #{recStatus,jdbcType=TINYINT}, #{sex,jdbcType=TINYINT}, #{maxAge,jdbcType=TINYINT}, + #{minAge,jdbcType=TINYINT}) insert into t_compete_group @@ -148,6 +153,15 @@ rec_status, + + sex, + + + max_age, + + + min_age, + @@ -180,6 +194,15 @@ #{recStatus,jdbcType=TINYINT}, + + #{sex,jdbcType=TINYINT}, + + + #{maxAge,jdbcType=TINYINT}, + + + #{minAge,jdbcType=TINYINT}, + + select + + distinct + + + from t_pro_plugin_parameter + + + + + order by ${orderByClause} + + + + + delete from t_pro_plugin_parameter + where id = #{id,jdbcType=BIGINT} + + + delete from t_pro_plugin_parameter + + + + + + insert into t_pro_plugin_parameter (id, sub_task_id, member_id, + project_id, plugin_id, parameter, + created_at, updated_at, rec_status + ) + values (#{id,jdbcType=BIGINT}, #{subTaskId,jdbcType=BIGINT}, #{memberId,jdbcType=BIGINT}, + #{projectId,jdbcType=BIGINT}, #{pluginId,jdbcType=BIGINT}, #{parameter,jdbcType=VARCHAR}, + #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT} + ) + + + insert into t_pro_plugin_parameter + + + id, + + + sub_task_id, + + + member_id, + + + project_id, + + + plugin_id, + + + parameter, + + + created_at, + + + updated_at, + + + rec_status, + + + + + #{id,jdbcType=BIGINT}, + + + #{subTaskId,jdbcType=BIGINT}, + + + #{memberId,jdbcType=BIGINT}, + + + #{projectId,jdbcType=BIGINT}, + + + #{pluginId,jdbcType=BIGINT}, + + + #{parameter,jdbcType=VARCHAR}, + + + #{createdAt,jdbcType=TIMESTAMP}, + + + #{updatedAt,jdbcType=TIMESTAMP}, + + + #{recStatus,jdbcType=TINYINT}, + + + + + + update t_pro_plugin_parameter + + + id = #{record.id,jdbcType=BIGINT}, + + + sub_task_id = #{record.subTaskId,jdbcType=BIGINT}, + + + member_id = #{record.memberId,jdbcType=BIGINT}, + + + project_id = #{record.projectId,jdbcType=BIGINT}, + + + plugin_id = #{record.pluginId,jdbcType=BIGINT}, + + + parameter = #{record.parameter,jdbcType=VARCHAR}, + + + created_at = #{record.createdAt,jdbcType=TIMESTAMP}, + + + updated_at = #{record.updatedAt,jdbcType=TIMESTAMP}, + + + rec_status = #{record.recStatus,jdbcType=TINYINT}, + + + + + + + + update t_pro_plugin_parameter + set id = #{record.id,jdbcType=BIGINT}, + sub_task_id = #{record.subTaskId,jdbcType=BIGINT}, + member_id = #{record.memberId,jdbcType=BIGINT}, + project_id = #{record.projectId,jdbcType=BIGINT}, + plugin_id = #{record.pluginId,jdbcType=BIGINT}, + parameter = #{record.parameter,jdbcType=VARCHAR}, + created_at = #{record.createdAt,jdbcType=TIMESTAMP}, + updated_at = #{record.updatedAt,jdbcType=TIMESTAMP}, + rec_status = #{record.recStatus,jdbcType=TINYINT} + + + + + + update t_pro_plugin_parameter + + + sub_task_id = #{subTaskId,jdbcType=BIGINT}, + + + member_id = #{memberId,jdbcType=BIGINT}, + + + project_id = #{projectId,jdbcType=BIGINT}, + + + plugin_id = #{pluginId,jdbcType=BIGINT}, + + + parameter = #{parameter,jdbcType=VARCHAR}, + + + created_at = #{createdAt,jdbcType=TIMESTAMP}, + + + updated_at = #{updatedAt,jdbcType=TIMESTAMP}, + + + rec_status = #{recStatus,jdbcType=TINYINT}, + + + where id = #{id,jdbcType=BIGINT} + + + update t_pro_plugin_parameter + set sub_task_id = #{subTaskId,jdbcType=BIGINT}, + member_id = #{memberId,jdbcType=BIGINT}, + project_id = #{projectId,jdbcType=BIGINT}, + plugin_id = #{pluginId,jdbcType=BIGINT}, + parameter = #{parameter,jdbcType=VARCHAR}, + created_at = #{createdAt,jdbcType=TIMESTAMP}, + updated_at = #{updatedAt,jdbcType=TIMESTAMP}, + rec_status = #{recStatus,jdbcType=TINYINT} + where id = #{id,jdbcType=BIGINT} + + \ No newline at end of file diff --git a/util/src/main/java/com/ccsens/util/CodeEnum.java b/util/src/main/java/com/ccsens/util/CodeEnum.java index 98ab9657..1ec281e0 100644 --- a/util/src/main/java/com/ccsens/util/CodeEnum.java +++ b/util/src/main/java/com/ccsens/util/CodeEnum.java @@ -161,15 +161,34 @@ public enum CodeEnum { DINGDING_EXCEPTION(132,"钉钉接口调用异常。",true), URL_ERROR(133, "请求路径转换异常", true), + JOIN_PROJECT_NUM_FULL(134, "可参赛次数已满", true), PHOTO_FILE_EXCEED_2M(135, "图片大小不能超过2M", true), - COACH_NUM_FULL(136,"该单位领队或教练人数已达上限",true) - + COACH_NUM_FULL(136,"教练人数已达上限",true), + LEADER_NUM_FULL(137,"领队人数已达上限",true), + AUTHORIZATION_AGREE(138,"请阅读并同意安全责任书",true), + NAME_EMPTY(139,"单位名称不能为空",true), + PHOTO_IS_EMPTY(140,"请上传证件照",true), + ID_CARD_ALREADY(141,"此身份证已注册",true), + NOT_COMPANY(142,"请先填写基础信息",true), + MT_NOT_GROUP(143,"请选择正确的组别信息",true), + CONTACTS_NAME_EMPTY(144,"联系人名称不能为空",true), + MEMBER_NUM_ERROR(144,"参赛人数不满足比赛人数要求",true), ; + + public CodeEnum mtMsgPhoto(String msg){ + this.msg = "请上传"+msg; + return this; + } + public CodeEnum mtProjectMsg(String msg){ - this.msg = msg+this.msg; + this.msg = msg+"项目参赛次数已满"; + return this; + } + public CodeEnum mtProjectMsg1(String msg){ + this.msg = msg+"报名人数已满"; return this; } public CodeEnum addMsg(String msg){ diff --git a/util/src/main/java/com/ccsens/util/WebConstant.java b/util/src/main/java/com/ccsens/util/WebConstant.java index b0b3e3c5..fb48601b 100644 --- a/util/src/main/java/com/ccsens/util/WebConstant.java +++ b/util/src/main/java/com/ccsens/util/WebConstant.java @@ -5,6 +5,8 @@ import cn.hutool.core.util.URLUtil; import lombok.Getter; import lombok.Setter; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.Pattern; import java.io.File; public class WebConstant { @@ -17,7 +19,8 @@ public class WebConstant { public static final byte STATUS_DELETE = 1; public static final String IMG_TYPE = "bmp,jpg,png,tif,gif,pcx,tga,exif,fpx,svg,psd,cdr,pcd,dxf,ufo,eps,ai,raw,WMF,webp,jpeg"; /**手机号正则*/ - public static final String REGEX_PHONE = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(17[013678])|(18[0,5-9]))\\d{8}$"; +// public static final String REGEX_PHONE = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(17[013678])|(18[0,1-9]))\\d{8}$"; + public static final String REGEX_PHONE = "^[1]([3-9])[0-9]{9}$"; /**属性名*/ public static class Field{ diff --git a/util/src/test/java/com/ccsens/util/OtherTest.java b/util/src/test/java/com/ccsens/util/OtherTest.java index a9ddb926..723727e2 100644 --- a/util/src/test/java/com/ccsens/util/OtherTest.java +++ b/util/src/test/java/com/ccsens/util/OtherTest.java @@ -1,22 +1,24 @@ package com.ccsens.util; +import cn.hutool.core.util.ImageUtil; import lombok.extern.slf4j.Slf4j; import org.junit.Test; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; import javax.script.ScriptException; +import java.io.File; @Slf4j public class OtherTest { - public static final String REGEX_PHONE = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(17[013678])|(18[0,5-9]))\\d{8}$"; + public static final String REGEX_PHONE = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(17[013678])|(18[0,1-9]))\\d{8}$"; @Test public void test2() throws ScriptException { - String str = "11100000000"; + String str = "18200000000"; if (str.matches(REGEX_PHONE)) { System.out.println("是手机号"); } else { @@ -24,4 +26,15 @@ public class OtherTest { } } + @Test + public void test3() { + File file = new File("C:\\Users\\逗\\Desktop\\ABDBBE53630FE09D526858C4A8029873.jpg"); + File file1 = new File("C:\\Users\\逗\\Desktop\\1.jpg"); + File file2 = new File("C:\\Users\\逗\\Desktop\\2.jpg"); + System.out.println(file.length()); + ImageUtil.scale(file,file1,0.5f); + System.out.println(file1); + ImageUtil.scale(file1,file2,2); + } + }