123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510 |
- package cn.com.ty.lift.common.verify;
- import cn.hutool.core.util.ObjectUtil;
- import java.util.Objects;
- /**
- * <p>
- * 条件判断,如果不符合条件,抛出异常
- * </p>
- * @author wcz
- * @since 2020/1/9 8:46
- */
- public interface Verify {
- static VerifyException verifyException(String message){
- return new VerifyException(message);
- }
- /**
- * 判断表达式是否为真,如果为假,直接抛出异常,返回message
- *
- * @param expression 需要判断的布尔表达式
- * @param message 抛出异常的消息
- */
- static void isTrue(boolean expression, String message) {
- if (!expression) {
- throw verifyException(message);
- }
- }
- /**
- * 判断表达式是否为真,如果为真,直接抛出异常,返回message
- *
- * @param expression 需要判断的布尔表达式
- * @param message 抛出异常的消息
- */
- static void notTrue(boolean expression, String message) {
- if (expression) {
- throw verifyException(message);
- }
- }
- /**
- * 判断对象object是否为空,如果不为空,直接抛出异常,返回message
- *
- * @param object 参数值
- * @param message 抛出异常的消息
- */
- static void isNull(Object object, String message) {
- isTrue(Objects.isNull(object), message);
- }
- /**
- * 判断对象object是否为空,如果为真,直接抛出异常,返回message
- *
- * @param object 参数值
- * @param message 抛出异常的消息
- */
- static void notNull(Object object, String message) {
- isTrue(Objects.nonNull(object), message);
- }
- static void between(int value, int min, int max, String message){
- isTrue(value >= min && value <= max, message);
- }
- static void notBetween(int value, int min, int max, String message){
- isTrue(value < min || value > max, message);
- }
- static void equals(int one, int other, String message){
- isTrue(one == other, message);
- }
- static void greater(int value, int bounds, String message){
- isTrue(value > bounds, message);
- }
- static void less(int value, int bounds, String message){
- isTrue(value < bounds, message);
- }
- static void notEmpty(Object object, String message) {
- isTrue(ObjectUtil.isNotEmpty(object), message);
- }
- static void isEmpty(Object object, String message) {
- isTrue(ObjectUtil.isEmpty(object), message);
- }
- static void isBlank(CharSequence cs, String message) {
- isTrue(Objects.isNull(cs) || cs.toString().trim().isEmpty(), message);
- }
- static void notBlank(CharSequence cs, String message) {
- isTrue(Objects.nonNull(cs) && cs.toString().trim().length() > 0, message);
- }
- //======================年检相关状态值和判断方法======================================
- interface Inspection{
- /**
- * 年检未开始0
- */
- int STEP_NOT_START = 0;
- /**
- * 判断年检是否开始
- * @param step
- * @return
- */
- static boolean notStart(int step){
- return STEP_NOT_START == step;
- }
- /**
- * 年检 第一阶段
- */
- int STEP_ONE = 1;
- /**
- * 判断是否为年检阶段一
- * @param step
- * @return
- */
- static boolean stepOne(int step){
- return STEP_ONE == step;
- }
- /**
- * 年检 第二阶段
- */
- int STEP_TWO = 2;
- /**
- * 判断是否为年检阶段二
- * @param step
- * @return
- */
- static boolean stepTwo(int step){
- return STEP_TWO == step;
- }
- /**
- * 年检 第三阶段
- */
- int STEP_THREE = 3;
- /**
- * 判断是否为年检阶段三
- * @param step
- * @return
- */
- static boolean stepThree(int step){
- return STEP_THREE == step;
- }
- /**
- * 年检 第四阶段
- */
- int STEP_FOUR = 4;
- /**
- * 判断是否为年检阶段四
- * @param step
- * @return
- */
- static boolean stepFour(int step){
- return STEP_FOUR == step;
- }
- /**
- * 0 年检计划初始状态
- */
- int STATUS_NOT_START = 0;
- static boolean statusNotStart(int status){
- return STEP_NOT_START == status;
- }
- /**
- * 1 维保工确认年检计划
- */
- int STATUS_CONFIRM = 1;
- String confirm = "年检不存在,请确认年检计划";
- static boolean statusConfirm(int status){
- return STATUS_CONFIRM == status;
- }
- /**
- * 2 维保工上传自检报告,选择自检时间 或者 文员设置 是否检查限速器和荷载年检设置,
- * 文员也可以上传自检报告或者确认自检报告和自检时间,自检时间以最后设置的为准
- */
- int STATUS_SELFCHECK = 2;
- String selfcheckUpload = "请完善自检报告信息";
- String selfcheckDate = "请设置自检时间";
- String selfcheckReportImg = "请设置自检报告";
- static boolean statusSelfcheck(int status){
- return STATUS_SELFCHECK == status;
- }
- /**
- * 3 企业文员确认现场检验时间
- * 录入人员信息,政府质检,企业质检,联系电话
- */
- int STATUS_CHECK_CONFIRM = 3;
- String checkConfirm = "请确认检验结果";
- String checkDate = "请设置现场检验时间";
- String checkResultImg = "请设置现场检验结果";
- String inspector = "请设置政府质检人员";
- String operator = "请设置公司质检人员";
- String telephone = "请设置人员联系电话";
- static boolean statusCheckConfirm(int status){
- return STATUS_CHECK_CONFIRM == status;
- }
- /**
- * 4 维保工上传检验结果
- */
- int STATUS_CHECK_UPLOAD = 4;
- static boolean statusCheckUpload(int status){
- return STATUS_CHECK_UPLOAD == status;
- }
- /**
- * 5 企业文员确认检验结果-合格 --> 不能算年检超期
- */
- int STATUS_CHECK_QUALIFIED = 5;
- static boolean statusCheckQualified(int status){
- return STATUS_CHECK_QUALIFIED == status;
- }
- /**
- * 6 企业文员确认检验结果-整改 --> 回到第二阶段
- */
- int STATUS_CHECK_RECTIFICATION = 6;
- static boolean statusCheckRectification(int status){
- return STATUS_CHECK_RECTIFICATION == status;
- }
- /**
- * 7 企业文员确认检验结果-不合格 --> 可以算年检超期
- */
- int STATUS_CHECK_UNQUALIFIED = 7;
- static boolean statusCheckUnqualified(int status){
- return STATUS_CHECK_UNQUALIFIED == status;
- }
- /**
- * 8 维保工上传年检报告和合格证
- */
- int STATUS_CERTIFICATE_REPORT_UPLOAD = 8;
- String certificateReportUpload = "请上传年检报告和合格证";
- static boolean statusCertificateReportUpload(int status){
- return STATUS_CERTIFICATE_REPORT_UPLOAD == status;
- }
- /**
- * 9 企业文员确认年检报告和合格证-合格
- */
- int STATUS_CERTIFICATE_REPORT_QUALIFIED = 9;
- String nextInspectionTime = "请设置下次年检时间";
- static boolean statusCertificateReportQualified(int status){
- return STATUS_CERTIFICATE_REPORT_QUALIFIED == status;
- }
- /**
- * 10 企业文员确认年检报告和合格证-不合格 -->停用电梯
- */
- int STATUS_CERTIFICATE_REPORT_UNQUALIFIED = 10;
- static boolean statusCertificateReportUnqualified(int status){
- return STATUS_CERTIFICATE_REPORT_UNQUALIFIED == status;
- }
- String statusError = "年检状态有误";
- /**
- * 根据年检的状态值返回成年检的状态阶段
- * @param stepStatus 年检状态值
- * @return int
- */
- static int status2StepName(Integer stepStatus){
- int stepName;
- switch (stepStatus){
- case STATUS_NOT_START:
- stepName = 0;
- break;
- case STATUS_CONFIRM:
- case STATUS_SELFCHECK:
- stepName = 1;
- break;
- case STATUS_CHECK_CONFIRM:
- stepName = 2;
- break;
- case STATUS_CHECK_UPLOAD:
- case STATUS_CHECK_QUALIFIED:
- case STATUS_CHECK_RECTIFICATION:
- case STATUS_CHECK_UNQUALIFIED:
- stepName = 3;
- break;
- case STATUS_CERTIFICATE_REPORT_UPLOAD:
- case STATUS_CERTIFICATE_REPORT_QUALIFIED:
- case STATUS_CERTIFICATE_REPORT_UNQUALIFIED:
- stepName = 4;
- break;
- default:
- stepName = -1;
- break;
- }
- return stepName;
- }
- /**
- * 判断年检状态是否处于其他阶段之间 min < middle < max
- * @param middle 中间值
- * @param min 最小值
- * @param max 最大值
- * @return boolean
- */
- static boolean inStatus(int min, int middle,int max){
- return min <= middle && middle <= max;
- }
- /**
- * 判断两个年检状态是否一样 one == two
- * @param one 一个值
- * @param other 另一个值
- * @return boolean
- */
- static boolean sameStatus(int one,int other){
- return one == other;
- }
- /**
- * 判断年检中一个状态是否为另一个状态的下一个状态
- * @param front 前一个值
- * @param behind 后一个值
- * @return boolean
- */
- static boolean nextStatus(int front,int behind){
- return front + 1 == behind;
- }
- /**
- * 判断年检中两个状态相同或者为下一个状态
- * @param front 前一个值
- * @param behind 后一个值
- * @return boolean
- */
- static boolean sameNext(int front,int behind){
- return front == behind || front + 1 == behind;
- }
- //==============================================================================
- }
- interface Repair{
- //===================急修相关状态值和判断方法======================================
- /**
- * 急修状态(-1 暂停中)
- */
- int STATUS_STOPING = -1;
- static boolean statusStoping(int status){
- return STATUS_STOPING == status;
- }
- /**
- * 急修状态(0 待修理)
- */
- int STATUS_TO_REPAIRED = 0;
- static boolean statusToRepaired(int status){
- return STATUS_TO_REPAIRED == status;
- }
- /**
- * 急修状态(1 修理中)
- */
- int STATUS_REPAIRING = 1;
- static boolean statusRepairing(int status){
- return STATUS_REPAIRING == status;
- }
- /**
- * 急修状态(2 完成)
- */
- int STATUS_FINISH = 2;
- static boolean statusFinish(int status){
- return STATUS_FINISH == status;
- }
- /**
- * 急修状态(3 关闭)
- */
- int STATUS_CLOSE = 3;
- static boolean statusClose(int status){
- return STATUS_CLOSE == status;
- }
- String haveUnfinisedRepair = "该电梯存在未完成的急修,无法创建";
- String repairHadTaked = "急修已经接单,不能转派";
- String mustToRepair = "待急修才能操作";
- String mustInRepairing = "急修中才能操作";
- String missingFault = "缺少故障信息";
- String mustFinish = "急修完成后才能操作";
- String hadEvaluate = "急修已经评价了";
- String incorrectAmount = "金额有误";
- String inspection = "电梯正在年检中,无法创建";
- String notExist = "急修不存在,请核查";
- //==============================================================================
- }
- interface Upload{
- //===================上传相关状态值和判断方法======================================
- /**
- * 图片上传最大大小10M * 1024 * 1024
- */
- long maxSizePic = 10 << 20;
- String maxSizePicDesc = "10M";
- /**
- * 文件上传最大大小50M * 1024 * 1024
- */
- long maxSizeFile = 50 << 20;
- String maxSizeFileDesc = "50M";
- /**
- * 视频上传最大大小100M * 1024 * 1024
- */
- long maxSizeVideo = 100 << 20;
- String maxSizeVideoDesc = "100M";
- /**
- * 上传图片文件类型
- */
- String[] pics = {".jpg",".jpeg", ".png", ".bmp", ".gif"};
- /**
- * 上传其他文件类型
- */
- String[] files = {".pdf",".txt",".rar",".zip",".7z", ".xls", ".xlsx", ".doc",".docx",".ppt",".pptx"};
- /**
- * 上传视频文件类型
- */
- String[] videos = {".mov",".mp4", ".avi",".mpg",".mpeg",".rm",".rmvb",".wmv"};
- String fileDataMissing = "没有文件数据";
- String fileUploadFail = "上传文件失败";
- String fileFormatNotSupport = "文件格式暂时不支持";
- String fileFormatIllegal = "文件格式不合法";
- //==============================================================================
- }
- /**
- * 操作证相关常量
- */
- interface LiftCert{
- //0:无证,1:待审核,2:审核未通过,3:审核通过,4:超期
- int Status_Unlicense = 0;
- int Status_ToAudit = 1;
- int Status_AuditFail = 2;
- int Status_AuditPass = 3;
- int Status_Overdue = 4;
- String MustToAudit = "待审核才能操作";
- String CertHadExist = "操作证已存在";
- String CertNotExist = "操作证不存在";
- static boolean unlicense(int status){
- return status == Status_Unlicense;
- }
- static boolean toAudit(int status){
- return status == Status_ToAudit;
- }
- static boolean auditFail(int status){
- return status == Status_AuditFail;
- }
- static boolean auditPass(int status){
- return status == Status_AuditPass;
- }
- static boolean overdue(int status){
- return status == Status_Overdue;
- }
- }
- /**
- * 签到相关常量
- */
- interface Attend{
- String SetAmTime = "请设置上午的上/下班时间";
- String SetPmTime = "请设置下午的上/下班时间";
- String SetOtTime = "请设置加班的上/下班时间";
- String InvalidAmTime = "上午的上(%tT)/下班(%tT)时间有误";
- String InvalidPmTime = "下午的上(%tT)/下班(%tT)时间有误";
- String InvalidOtTime = "加班的上(%tT)/下班(%tT)时间有误";
- String AmTopClock = "上午上班打卡";
- String AmDownClock = "上午下班打卡";
- String PmTopClock = "下午上班打卡";
- String PmDownClock = "下午下班打卡";
- String OtTopClock = "加班上班打卡";
- String OtDownClock = "加班下班打卡";
- String hadClock = "记录已存在(打卡时间:%tF %tT)";
- String missingTime = "请至少设置一组打卡时间";
- String AmDownPmTop = "下午的上班(%tT)时间不得早于上午的下班(%tT)时间";
- String PmDownOtTop = "加班的上班(%tT)时间不得早于下午的下班(%tT)时间";
- }
- interface Excel{
- String ValidDataMissing = "未解析到有效数据";
- String FormatSupport = "文件格式不支持,暂时只支持xls,xlsx";
- String[] excelSuffix = {".xls",".xlsx"};
- /**
- * 一次导入表格的最大有效记录数
- */
- int maxRows = 5000;
- String outMaxRows = "一次性导入不能超过5000条数据";
- }
- }
|