From ec5a6ede3f88abebdf7a280744ea762757f310aa Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期二, 30 四月 2024 13:41:27 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ycl-server/src/main/java/com/ycl/system/controller/SysDeptController.java | 8 ycl-server/src/main/java/com/ycl/platform/service/YwUnitService.java | 8 ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java | 2 ycl-pojo/src/main/java/com/ycl/platform/domain/form/BatchEditPointForm.java | 6 ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckResult.java | 123 ---- ycl-server/src/main/java/com/ycl/task/ContractResultTask.java | 111 ++++ ycl-server/src/main/java/com/ycl/platform/service/ITContractService.java | 6 ycl-server/src/main/java/com/ycl/platform/service/impl/ContractScoreServiceImpl.java | 32 ycl-server/src/main/java/com/ycl/platform/service/IContractScoreService.java | 7 ycl-server/src/main/java/com/ycl/system/service/ISysDeptService.java | 37 ycl-pojo/src/main/java/com/ycl/platform/base/AbsVo.java | 1 ycl-common/src/main/java/enumeration/general/UrgentLevelEnum.java | 32 + ycl-pojo/src/main/java/com/ycl/platform/domain/entity/Notify.java | 69 ++ ycl-server/src/main/java/com/ycl/system/mapper/SysDeptMapper.java | 44 + ycl-server/src/main/resources/mapper/zgyw/CalculateRuleMapper.xml | 2 ycl-server/src/main/java/com/ycl/platform/mapper/ContractResultRecordMapper.java | 23 ycl-server/src/main/resources/mapper/zgyw/TContractResultRecordMapper.xml | 14 ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java | 14 ycl-pojo/src/main/java/com/ycl/platform/domain/form/YwPointForm.java | 28 ycl-server/src/main/java/com/ycl/platform/service/ICheckResultService.java | 22 ycl-server/src/main/java/com/ycl/platform/mapper/YwUnitMapper.java | 8 ycl-server/src/main/resources/mapper/zgyw/ContractScoreMapper.xml | 33 + ycl-server/src/main/java/com/ycl/platform/mapper/NotifyMapper.java | 3 ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRuleMapper.java | 2 ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java | 44 + ycl-server/src/main/java/com/ycl/system/service/UserDetailsServiceImpl.java | 19 ycl-pojo/src/main/java/com/ycl/system/model/LoginUser.java | 31 + ycl-server/src/main/resources/mapper/zgyw/YwUnitMapper.xml | 9 ycl-server/src/main/java/com/ycl/platform/service/impl/YwUnitServiceImpl.java | 22 ycl-common/src/main/java/enumeration/general/YesOrNoEnum.java | 28 + ycl-server/src/main/resources/mapper/system/SysDictTypeMapper.xml | 26 ycl-pojo/src/main/java/com/ycl/platform/base/Cascader.java | 30 + ycl-pojo/src/main/java/com/ycl/platform/base/BaseSelect.java | 3 ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckResultVO.java | 63 ++ ycl-pojo/src/main/java/com/ycl/platform/base/AbsForm.java | 3 ycl-pojo/src/main/java/com/ycl/platform/domain/vo/NotifyVO.java | 24 ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml | 35 + ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractResultRecord.java | 32 + ycl-server/src/main/java/com/ycl/platform/mapper/YwPointMapper.java | 4 ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 16 ycl-server/src/main/java/com/ycl/platform/controller/CheckResultController.java | 0 ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java | 48 - ycl-server/src/main/resources/mapper/system/SysDeptMapper.xml | 52 + ycl-pojo/src/main/java/com/ycl/platform/domain/entity/YwPoint.java | 8 ycl-common/src/main/java/enumeration/general/NotifyTypeEnum.java | 2 ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractScore.java | 4 ycl-pojo/src/main/java/com/ycl/platform/domain/query/NotifyQuery.java | 13 ycl-server/src/main/java/com/ycl/platform/mapper/TContractMapper.java | 3 ycl-pojo/src/main/java/com/ycl/platform/domain/vo/YwPointVO.java | 13 ycl-server/src/main/java/com/ycl/system/service/impl/SysDeptServiceImpl.java | 76 ++ ycl-server/src/main/java/com/ycl/platform/service/impl/CheckResultServiceImpl.java | 84 ++- ycl-server/src/main/java/com/ycl/platform/mapper/CheckResultMapper.java | 54 -- ycl-server/src/main/resources/mapper/zgyw/TContractMapper.xml | 8 ycl-common/src/main/java/enumeration/general/NotifyTargetTypeEnum.java | 32 + ycl-server/src/main/resources/mapper/zgyw/CheckResultMapper.xml | 27 + ycl-server/src/main/resources/mapper/zgyw/NotifyMapper.xml | 3 ycl-server/src/main/java/com/ycl/platform/controller/NotifyController.java | 25 + ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TContract.java | 6 58 files changed, 1,067 insertions(+), 415 deletions(-) diff --git a/ycl-common/src/main/java/enumeration/general/NotifyTargetTypeEnum.java b/ycl-common/src/main/java/enumeration/general/NotifyTargetTypeEnum.java new file mode 100644 index 0000000..f9260c8 --- /dev/null +++ b/ycl-common/src/main/java/enumeration/general/NotifyTargetTypeEnum.java @@ -0,0 +1,32 @@ +package enumeration.general; + +import com.baomidou.mybatisplus.annotation.EnumValue; +import com.fasterxml.jackson.annotation.JsonValue; +import lombok.Getter; + +/** + * 閫氱煡鐩爣绫诲瀷 + * + * @author锛歡onghl + * @date锛�2024/4/15 15:15 + */ +@Getter +public enum NotifyTargetTypeEnum { + + USER("USER", "鐢ㄦ埛"), + UNIT("UNIT", "杩愮淮鍗曚綅"), + ; + + + @EnumValue // 鏍囨槑璇ュ瓧娈靛瓨鍏ユ暟鎹簱 + @JsonValue // 鏍囨槑鍦ㄨ浆JSON鏃朵娇鐢ㄨ瀛楁锛屽嵆鍝嶅簲鏃� + private final String value; + + private final String desc; + + NotifyTargetTypeEnum(String value, String desc) { + this.value = value; + this.desc = desc; + } + +} diff --git a/ycl-common/src/main/java/enumeration/general/NotifyTypeEnum.java b/ycl-common/src/main/java/enumeration/general/NotifyTypeEnum.java index 3c7f3b2..1359f36 100644 --- a/ycl-common/src/main/java/enumeration/general/NotifyTypeEnum.java +++ b/ycl-common/src/main/java/enumeration/general/NotifyTypeEnum.java @@ -5,7 +5,7 @@ import lombok.Getter; /** - * 閫氱煡鐘舵�� + * 閫氱煡绫诲瀷 * * @author锛歡onghl * @date锛�2024/4/15 15:15 diff --git a/ycl-common/src/main/java/enumeration/general/UrgentLevelEnum.java b/ycl-common/src/main/java/enumeration/general/UrgentLevelEnum.java new file mode 100644 index 0000000..35dcc94 --- /dev/null +++ b/ycl-common/src/main/java/enumeration/general/UrgentLevelEnum.java @@ -0,0 +1,32 @@ +package enumeration.general; + +import com.baomidou.mybatisplus.annotation.EnumValue; +import com.fasterxml.jackson.annotation.JsonValue; +import lombok.Getter; + +/** + * 閫氱煡绱ф�ョ▼搴� + * + * @author锛歺p + * @date锛�2024/4/29 10:44 + */ +@Getter +public enum UrgentLevelEnum { + + NORMAL("info", "姝e父"), + SUCCESS("success", "濂界殑锛屾垚鍔熺殑"), + WARNING("warning", "璀﹀憡"), + DANGER("danger", "閿欒"), + ; + + @EnumValue + @JsonValue + private final String value; + + private final String desc; + + UrgentLevelEnum(String value, String desc) { + this.value = value; + this.desc = desc; + } +} diff --git a/ycl-common/src/main/java/enumeration/general/YesOrNoEnum.java b/ycl-common/src/main/java/enumeration/general/YesOrNoEnum.java new file mode 100644 index 0000000..1c285c5 --- /dev/null +++ b/ycl-common/src/main/java/enumeration/general/YesOrNoEnum.java @@ -0,0 +1,28 @@ +package enumeration.general; + +import com.baomidou.mybatisplus.annotation.EnumValue; +import com.fasterxml.jackson.annotation.JsonValue; +import lombok.Getter; + +/** + * @author锛歺p + * @date锛�2023/11/28 18:04 + */ +@Getter +public enum YesOrNoEnum { + + YES("0", "鏄�"), + NO("1", "鍚�") + ; + + @EnumValue + @JsonValue + private String code; + + private String desc; + + YesOrNoEnum(String code, String desc) { + this.code = code; + this.desc = desc; + } +} diff --git a/ycl-pojo/src/main/java/com/ycl/platform/base/AbsForm.java b/ycl-pojo/src/main/java/com/ycl/platform/base/AbsForm.java index d22ecf2..643708e 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/base/AbsForm.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/base/AbsForm.java @@ -3,6 +3,7 @@ import com.ycl.system.domain.group.Update; import io.swagger.annotations.ApiModelProperty; import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.Data; /** @@ -15,7 +16,7 @@ public abstract class AbsForm { @ApiModelProperty(value = "id,淇敼蹇呬紶", required = false) - @NotBlank(message = "璇烽�夋嫨鏁版嵁", groups = {Update.class}) + @NotNull(message = "璇烽�夋嫨鏁版嵁", groups = {Update.class}) private Integer id; } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/base/AbsVo.java b/ycl-pojo/src/main/java/com/ycl/platform/base/AbsVo.java index dada523..8824fd9 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/base/AbsVo.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/base/AbsVo.java @@ -4,6 +4,7 @@ import lombok.Data; import java.util.Date; +import java.util.List; /** * 鍩虹鍝嶅簲 diff --git a/ycl-pojo/src/main/java/com/ycl/platform/base/BaseSelect.java b/ycl-pojo/src/main/java/com/ycl/platform/base/BaseSelect.java index 94c3200..3812972 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/base/BaseSelect.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/base/BaseSelect.java @@ -15,8 +15,9 @@ private Integer id; /** - * 鍊� + * 灞曠ず鍐呭 */ private String value; + } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/base/Cascader.java b/ycl-pojo/src/main/java/com/ycl/platform/base/Cascader.java new file mode 100644 index 0000000..3641c24 --- /dev/null +++ b/ycl-pojo/src/main/java/com/ycl/platform/base/Cascader.java @@ -0,0 +1,30 @@ +package com.ycl.platform.base; + +import lombok.Data; + +import java.util.List; + +/** + * 绾ц仈閫夋嫨鏁版嵁鏍煎紡 + * + * @author锛歺p + * @date锛�2024/4/28 14:37 + */ +@Data +public class Cascader { + + /** + * 閫変腑 + */ + private Long value; + + /** + * 鏄剧ず + */ + private String label; + + private Long parentId; + + private List<Cascader> Children; + +} diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckResult.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckResult.java index f4e22b8..02d972c 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckResult.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CheckResult.java @@ -1,140 +1,49 @@ package com.ycl.platform.domain.entity; import annotation.Excel; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; -import com.ycl.system.entity.BaseEntity; -import org.apache.commons.lang.builder.ToStringBuilder; -import org.apache.commons.lang.builder.ToStringStyle; +import lombok.Data; import java.math.BigDecimal; import java.util.Date; /** * 鑰冩牳缁撴灉瀵硅薄 t_check_result - * + * * @author ruoyi * @date 2024-04-01 */ -public class CheckResult extends BaseEntity -{ +@TableName("t_contract_result") +@Data +public class CheckResult { private static final long serialVersionUID = 1L; - /** */ private Long id; - /** 鑰冩牳瀵硅薄 */ @Excel(name = "鑰冩牳瀵硅薄") - private Long deptId; + private Long unitId; - /** 鑰冩牳鍙戝竷 */ + @Excel(name = "杩愮淮鍚堝悓") + private Long contractId; + @Excel(name = "鑰冩牳鍙戝竷") private Long publishId; - /** 鑰冩牳绫诲瀷 */ - @Excel(name = "鑰冩牳绫诲瀷") - private Long examineCategory; - - /** 鑰冩牳鍒嗘暟 */ @Excel(name = "鑰冩牳鍒嗘暟") - private BigDecimal checkScore; + private BigDecimal score; - /** 鏄惁鍙戝竷 */ @Excel(name = "鏄惁鍙戝竷") - private Long publish; + private Integer publish; - /** 鑰冩牳鏃堕棿 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "鑰冩牳鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd") private Date checkTime; - /** 閫昏緫鍒犻櫎 */ + @TableLogic private String deleted; - public void setId(Long id) - { - this.id = id; - } - - public Long getId() - { - return id; - } - public void setDeptId(Long deptId) - { - this.deptId = deptId; - } - - public Long getDeptId() - { - return deptId; - } - public void setPublishId(Long publishId) - { - this.publishId = publishId; - } - - public Long getPublishId() - { - return publishId; - } - public void setExamineCategory(Long examineCategory) - { - this.examineCategory = examineCategory; - } - - public Long getExamineCategory() - { - return examineCategory; - } - public void setCheckScore(BigDecimal checkScore) - { - this.checkScore = checkScore; - } - - public BigDecimal getCheckScore() - { - return checkScore; - } - public void setPublish(Long publish) - { - this.publish = publish; - } - - public Long getPublish() - { - return publish; - } - public void setCheckTime(Date checkTime) - { - this.checkTime = checkTime; - } - - public Date getCheckTime() - { - return checkTime; - } - public void setDeleted(String deleted) - { - this.deleted = deleted; - } - - public String getDeleted() - { - return deleted; - } - - @Override - public String toString() { - return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("deptId", getDeptId()) - .append("publishId", getPublishId()) - .append("examineCategory", getExamineCategory()) - .append("checkScore", getCheckScore()) - .append("publish", getPublish()) - .append("checkTime", getCheckTime()) - .append("updateTime", getUpdateTime()) - .append("deleted", getDeleted()) - .toString(); - } + private Date updateTime; } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractResultRecord.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractResultRecord.java new file mode 100644 index 0000000..f93b8ab --- /dev/null +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractResultRecord.java @@ -0,0 +1,32 @@ +package com.ycl.platform.domain.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @author ghl + * @since 2024/4/28 涓嬪崍 5:45 + */ + +@Data +@TableName("t_contract_result_record") +public class ContractResultRecord { + + @TableId + private Long id; + private Long resultId; + private String ruleIds; + private String ruleName; + private String deductCategory; + private String num; + private BigDecimal score; + private Date createTime; + @TableLogic + private String deleted; + +} diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractScore.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractScore.java index 9b0f1d8..190042a 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractScore.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/ContractScore.java @@ -43,9 +43,11 @@ private Long[] ruleIdsArray; @Excel(name = "瑙勫垯") - @TableField(exist = false) private String ruleName; + @Excel(name = "鎵e噺鏂瑰紡") + private String deductCategory; + @Excel(name = "鎸囨爣") private String num; diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/Notify.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/Notify.java index 5a091d5..ff0d246 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/Notify.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/Notify.java @@ -3,7 +3,10 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.ycl.platform.base.AbsEntity; +import enumeration.general.NotifyTargetTypeEnum; import enumeration.general.NotifyTypeEnum; +import enumeration.general.UrgentLevelEnum; +import enumeration.general.YesOrNoEnum; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; @@ -36,19 +39,71 @@ private String content; @ApiModelProperty("閫氱煡璋�") - @TableField("notify_who") - private Integer notifyWho; + @TableField("notify_user") + private Integer notifyUser; @ApiModelProperty("宸茶") @TableField("readed") - private String readed; + private YesOrNoEnum readed; @ApiModelProperty("绱ф��") @TableField("urgent") - private String urgent; + private UrgentLevelEnum urgent; - @ApiModelProperty("宸ュ崟ID") - @TableField("work_order_id") - private Integer workOrderId; + @ApiModelProperty("宸ュ崟鍙�") + @TableField("work_order_no") + private String workOrderNo; + + @ApiModelProperty("閫氱煡鐩爣绫诲瀷") + @TableField("notify_target_type") + private NotifyTargetTypeEnum notifyTargetType; + + @ApiModelProperty("閫氱煡杩愮淮鍗曚綅") + @TableField("notify_unit") + private Integer notifyUnit; + + /** + * 閫氱煡鐢ㄦ埛 + * + * @param notifyType + * @param content + * @param notifyUser + * @param urgent + * @param workOrderNo + * @return + */ + public static Notify genEntityByPeople(NotifyTypeEnum notifyType, String content, Integer notifyUser, UrgentLevelEnum urgent, String workOrderNo) { + Notify notify = new Notify(); + notify.setNotifyType(notifyType); + notify.setContent(content); + notify.setNotifyUser(notifyUser); + notify.setUrgent(urgent); + notify.setWorkOrderNo(workOrderNo); + notify.setNotifyTargetType(NotifyTargetTypeEnum.USER); + notify.setReaded(YesOrNoEnum.NO); + return notify; + } + + /** + * 閫氱煡鍗曚綅 + * + * @param notifyType + * @param content + * @param notifyUnit + * @param urgent + * @param workOrderNo + * @return + */ + public static Notify genEntityByUnit(NotifyTypeEnum notifyType, String content, Integer notifyUnit, UrgentLevelEnum urgent, String workOrderNo) { + Notify notify = new Notify(); + notify.setNotifyType(notifyType); + notify.setContent(content); + notify.setUrgent(urgent); + notify.setNotifyUnit(notifyUnit); + notify.setWorkOrderNo(workOrderNo); + notify.setNotifyTargetType(NotifyTargetTypeEnum.UNIT); + notify.setReaded(YesOrNoEnum.NO); + return notify; + } } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TContract.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TContract.java index 61dc0e0..92bab73 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TContract.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/TContract.java @@ -49,7 +49,7 @@ * 鍗曚綅id */ @NotBlank - private Integer unitId; + private Long unitId; @TableField(exist = false) private String unitName; @@ -63,14 +63,14 @@ /** * 寮�濮嬫椂闂� */ - @JsonFormat(pattern = "yyyy-MM-dd hh-mm-ss") + @JsonFormat(pattern = "yyyy-MM-dd") @NotNull private Date startTime; /** * 缁撴潫鏃堕棿 */ - @JsonFormat(pattern = "yyyy-MM-dd hh-mm-ss") + @JsonFormat(pattern = "yyyy-MM-dd") @NotNull private Date endTime; diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/YwPoint.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/YwPoint.java index ba79866..e041929 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/YwPoint.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/YwPoint.java @@ -39,7 +39,7 @@ @ApiModelProperty("杩愮淮鍗曚綅") @TableField(value = "unit_id", updateStrategy = FieldStrategy.IGNORED) - private Integer unitId; + private Long unitId; @ApiModelProperty("杩愮淮鐘舵��") @TableField("status") @@ -48,15 +48,17 @@ @ApiModelProperty("澶囨敞") @TableField("remark") private String remark; + @ApiModelProperty("杩愮淮绫诲瀷") @TableField("category") private Short category; + @ApiModelProperty("涓婃姤閮ㄩ棬") @TableField("dept_id") private Long deptId; - @TableField("point_detail") - private String pointDetail; + @TableField("point_tag") + private String pointTag; } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/BatchEditPointForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/BatchEditPointForm.java index 9e200fb..23e4ed5 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/BatchEditPointForm.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/BatchEditPointForm.java @@ -23,10 +23,4 @@ private Integer unitId; - @NotNull(message = "鐐逛綅寮�濮嬫椂闂翠笉鑳戒负绌�", groups = {Add.class, Update.class}) - private LocalDateTime startTime; - - @NotNull(message = "鐐逛綅缁撴潫鏃堕棿涓嶈兘涓虹┖", groups = {Add.class, Update.class}) - private LocalDateTime endTime; - } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/YwPointForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/YwPointForm.java index 7b8274d..2e36314 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/YwPointForm.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/YwPointForm.java @@ -4,6 +4,7 @@ import com.ycl.system.domain.group.Add; import com.ycl.platform.base.AbsForm; import com.ycl.platform.domain.entity.YwPoint; +import jakarta.validation.constraints.NotEmpty; import org.springframework.beans.BeanUtils; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; @@ -14,6 +15,7 @@ import lombok.experimental.Accessors; import java.time.LocalDateTime; +import java.util.List; /** * 杩愮淮鐐逛綅琛ㄥ崟 @@ -30,28 +32,26 @@ @ApiModelProperty("鐐逛綅鍚嶇О") private String pointName; - @NotNull(message = "鐐逛綅寮�濮嬫椂闂翠笉鑳戒负绌�", groups = {Add.class, Update.class}) - @ApiModelProperty("鐐逛綅寮�濮嬫椂闂�") - private LocalDateTime startTime; - - @NotNull(message = "鐐逛綅缁撴潫鏃堕棿涓嶈兘涓虹┖", groups = {Add.class, Update.class}) - @ApiModelProperty("鐐逛綅缁撴潫鏃堕棿") - private LocalDateTime endTime; - @NotNull(message = "杩愮淮鍗曚綅涓嶈兘涓虹┖", groups = {Add.class, Update.class}) @ApiModelProperty("杩愮淮鍗曚綅") private Integer unitId; -// @NotBlank(message = "杩愮淮鐘舵�佷笉鑳戒负绌�", groups = {Add.class, Update.class}) + @NotNull(message = "鐩戠閮ㄩ棬涓嶈兘涓虹┖", groups = {Add.class, Update.class}) + @ApiModelProperty("鐩戠閮ㄩ棬") + private Long deptId; + + @NotEmpty(message = "鐐逛綅鏍囩涓嶈兘涓虹┖", groups = {Add.class, Update.class}) + @ApiModelProperty("鐐逛綅鏍囩") + private List<String> pointTag; + @ApiModelProperty("杩愮淮鐘舵��") private String status; + @ApiModelProperty("澶囨敞") + private String remark; - private String pointDetail; - -// @NotBlank(message = "澶囨敞涓嶈兘涓虹┖", groups = {Add.class, Update.class}) -// @ApiModelProperty("澶囨敞") -// private String remark; + @ApiModelProperty("绫诲瀷") + private Short category; public static YwPoint getEntityByForm(@NonNull YwPointForm form, YwPoint entity) { if(entity == null) { diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/NotifyQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/NotifyQuery.java index f4731aa..939aadf 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/NotifyQuery.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/NotifyQuery.java @@ -1,6 +1,8 @@ package com.ycl.platform.domain.query; import com.ycl.platform.base.AbsQuery; + +import java.util.Date; import java.util.List; import org.springframework.lang.NonNull; import jakarta.validation.constraints.NotBlank; @@ -16,8 +18,17 @@ * @since 2024-04-07 */ @Data -@Accessors(chain = true) @ApiModel(value = "Notify鏌ヨ", description = "閫氱煡鏌ヨ") public class NotifyQuery extends AbsQuery { + + /** 宸ュ崟鍙� */ + private String workOrderNo; + + /** 寮�濮嬫椂闂� */ + private Date start; + + /** 缁撴潫鏃堕棿 */ + private Date end; + } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckResultVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckResultVO.java new file mode 100644 index 0000000..b3ce510 --- /dev/null +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CheckResultVO.java @@ -0,0 +1,63 @@ +package com.ycl.platform.domain.vo; + +import annotation.Excel; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ycl.platform.domain.entity.CheckResult; +import lombok.Data; +import lombok.experimental.Accessors; +import org.springframework.beans.BeanUtils; +import org.springframework.lang.NonNull; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @author gonghl + */ +@Data +@Accessors(chain = true) +public class CheckResultVO { + private Long id; + + private Long unitId; + + @Excel(name = "鑰冩牳瀵硅薄") + private String unitName; + + private Long contractId; + + @Excel(name = "杩愮淮鍚堝悓") + private String contractName; + + private Long publishId; + + @Excel(name = "鑰冩牳鍒嗘暟", scale = 2) + private BigDecimal score; + + @Excel(name = "鏄惁鍙戝竷", readConverterExp = "0=鏈彂甯�,1=宸插彂甯�") + private Integer publish; + + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "鑰冩牳鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd") + private Date checkTime; + + private String deleted; + + @JsonFormat(pattern = "yyyy-MM-dd") + private Date updateTime; + + @JsonFormat(pattern = "yyyy-MM-dd") + private Date createStartTime; + + @JsonFormat(pattern = "yyyy-MM-dd") + private Date createEndTime; + + public static CheckResultVO getVoByEntity(@NonNull CheckResult entity, CheckResultVO vo) { + if (vo == null) { + vo = new CheckResultVO(); + } + BeanUtils.copyProperties(entity, vo); + return vo; + } + +} diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/NotifyVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/NotifyVO.java index fbe8397..6815160 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/NotifyVO.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/NotifyVO.java @@ -2,14 +2,14 @@ import com.ycl.platform.base.AbsVo; import com.ycl.platform.domain.entity.Notify; -import java.util.List; -import java.time.LocalDateTime; -import org.springframework.lang.NonNull; -import org.springframework.beans.BeanUtils; -import io.swagger.annotations.ApiModel; +import enumeration.general.NotifyTypeEnum; +import enumeration.general.UrgentLevelEnum; +import enumeration.general.YesOrNoEnum; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; +import org.springframework.beans.BeanUtils; +import org.springframework.lang.NonNull; /** * 閫氱煡灞曠ず @@ -22,22 +22,20 @@ public class NotifyVO extends AbsVo { /** 閫氱煡绫诲瀷 */ - private String notifyType; + private NotifyTypeEnum notifyType; /** 閫氱煡鍐呭 */ private String content; - /** 閫氱煡璋� */ - private Integer notifyWho; - /** 宸茶 */ - private String readed; + private YesOrNoEnum readed; /** 绱ф�� */ - private String urgent; + private UrgentLevelEnum urgent; - /** 宸ュ崟ID */ - private Integer workOrderId; + /** 宸ュ崟鍙� */ + private String workOrderNo; + public static NotifyVO getVoByEntity(@NonNull Notify entity, NotifyVO vo) { if(vo == null) { diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/YwPointVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/YwPointVO.java index 0d38715..a67e7dc 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/YwPointVO.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/YwPointVO.java @@ -1,6 +1,5 @@ package com.ycl.platform.domain.vo; -import com.baomidou.mybatisplus.annotation.TableField; import com.ycl.platform.base.AbsVo; import com.ycl.platform.domain.entity.YwPoint; @@ -8,8 +7,6 @@ import java.util.List; import org.springframework.lang.NonNull; import org.springframework.beans.BeanUtils; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.experimental.Accessors; @@ -33,7 +30,7 @@ private LocalDateTime endTime; /** 杩愮淮鍗曚綅 */ - private Integer unitId; + private Long unitId; private String unitName; /** 杩愮淮鐘舵�� */ @@ -44,8 +41,14 @@ private Short category; + /** 鐩戠閮ㄩ棬 */ + private Long deptId; + private List<Long> deptIds; private String deptName; - private String pointDetail; + + /** 鐐逛綅鏍囩 */ + private String [] pointTags; + private String pointTagString; public static YwPointVO getVoByEntity(@NonNull YwPoint entity, YwPointVO vo) { if(vo == null) { diff --git a/ycl-pojo/src/main/java/com/ycl/system/model/LoginUser.java b/ycl-pojo/src/main/java/com/ycl/system/model/LoginUser.java index e680a81..f32a131 100644 --- a/ycl-pojo/src/main/java/com/ycl/system/model/LoginUser.java +++ b/ycl-pojo/src/main/java/com/ycl/system/model/LoginUser.java @@ -10,7 +10,7 @@ /** * 鐧诲綍鐢ㄦ埛韬唤鏉冮檺 - * + * * @author ruoyi */ public class LoginUser implements UserDetails @@ -26,6 +26,13 @@ * 閮ㄩ棬ID */ private Long deptId; + + /** + * 杩愮淮鍗曚綅ID + */ + private Integer unitId; + /** 鏄惁鏄繍缁村崟浣嶇鐞嗗憳璐﹀彿 */ + private Boolean unitAdmin; /** * 鐢ㄦ埛鍞竴鏍囪瘑 @@ -90,6 +97,22 @@ this.permissions = permissions; } + public Integer getUnitId() { + return unitId; + } + + public void setUnitId(Integer unitId) { + this.unitId = unitId; + } + + public Boolean getUnitAdmin() { + return unitAdmin; + } + + public void setUnitAdmin(Boolean unitAdmin) { + this.unitAdmin = unitAdmin; + } + public Long getUserId() { return userId; @@ -145,7 +168,7 @@ /** * 鎸囧畾鐢ㄦ埛鏄惁瑙i攣,閿佸畾鐨勭敤鎴锋棤娉曡繘琛岃韩浠介獙璇� - * + * * @return */ @JSONField(serialize = false) @@ -157,7 +180,7 @@ /** * 鎸囩ず鏄惁宸茶繃鏈熺殑鐢ㄦ埛鐨勫嚟鎹�(瀵嗙爜),杩囨湡鐨勫嚟鎹槻姝㈣璇� - * + * * @return */ @JSONField(serialize = false) @@ -169,7 +192,7 @@ /** * 鏄惁鍙敤 ,绂佺敤鐨勭敤鎴蜂笉鑳借韩浠介獙璇� - * + * * @return */ @JSONField(serialize = false) diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/CheckResultController.java b/ycl-server/src/main/java/com/ycl/platform/controller/CheckResultController.java new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/controller/CheckResultController.java diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/NotifyController.java b/ycl-server/src/main/java/com/ycl/platform/controller/NotifyController.java new file mode 100644 index 0000000..7b450b2 --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/controller/NotifyController.java @@ -0,0 +1,25 @@ +package com.ycl.platform.controller; + +import com.ycl.platform.domain.query.NotifyQuery; +import com.ycl.platform.service.NotifyService; +import com.ycl.system.Result; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +/** + * @author锛歺p + * @date锛�2024/4/29 9:38 + */ +@RestController +@RequiredArgsConstructor +@RequestMapping("/notify") +public class NotifyController { + + private final NotifyService notifyService; + + @PostMapping("/page") + public Result page(@RequestBody NotifyQuery query) { + return notifyService.page(query); + } + +} diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRuleMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRuleMapper.java index 4b3fa26..e882f25 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRuleMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRuleMapper.java @@ -67,5 +67,5 @@ * @param unitId 杩愮淮鍗曚綅 * @return 鏁版嵁 */ - List<CalculateRuleCascaderVO> getRuleListByUnitId(Integer unitId); + List<CalculateRuleCascaderVO> getRuleListByUnitId(Integer unitId, String now); } diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/CheckResultMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/CheckResultMapper.java index 0129ff5..b58337a 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/CheckResultMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/CheckResultMapper.java @@ -2,62 +2,16 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ycl.platform.domain.entity.CheckResult; +import com.ycl.platform.domain.vo.CheckResultVO; import java.util.List; /** * 鑰冩牳缁撴灉Mapper鎺ュ彛 - * + * * @author ruoyi * @date 2024-04-01 */ -public interface CheckResultMapper extends BaseMapper<CheckResult> -{ - /** - * 鏌ヨ鑰冩牳缁撴灉 - * - * @param id 鑰冩牳缁撴灉涓婚敭 - * @return 鑰冩牳缁撴灉 - */ - public CheckResult selectCheckResultById(Long id); - - /** - * 鏌ヨ鑰冩牳缁撴灉鍒楄〃 - * - * @param checkResult 鑰冩牳缁撴灉 - * @return 鑰冩牳缁撴灉闆嗗悎 - */ - public List<CheckResult> selectCheckResultList(CheckResult checkResult); - - /** - * 鏂板鑰冩牳缁撴灉 - * - * @param checkResult 鑰冩牳缁撴灉 - * @return 缁撴灉 - */ - public int insertCheckResult(CheckResult checkResult); - - /** - * 淇敼鑰冩牳缁撴灉 - * - * @param checkResult 鑰冩牳缁撴灉 - * @return 缁撴灉 - */ - public int updateCheckResult(CheckResult checkResult); - - /** - * 鍒犻櫎鑰冩牳缁撴灉 - * - * @param id 鑰冩牳缁撴灉涓婚敭 - * @return 缁撴灉 - */ - public int deleteCheckResultById(Long id); - - /** - * 鎵归噺鍒犻櫎鑰冩牳缁撴灉 - * - * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎 - * @return 缁撴灉 - */ - public int deleteCheckResultByIds(Long[] ids); +public interface CheckResultMapper extends BaseMapper<CheckResult> { + List<CheckResultVO> selectCheckResultList(CheckResultVO checkResult); } diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/ContractResultRecordMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/ContractResultRecordMapper.java new file mode 100644 index 0000000..6739b00 --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/ContractResultRecordMapper.java @@ -0,0 +1,23 @@ +package com.ycl.platform.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ycl.platform.domain.entity.ContractResultRecord; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @author gonghl + */ +public interface ContractResultRecordMapper extends BaseMapper<ContractResultRecord> { + + /** + * 鎵归噺淇濆瓨鑰冩牳缁撴灉 + * @param contractResultRecord 闆嗗悎 + */ + void saveBatch(List<ContractResultRecord> contractResultRecord); +} + + + + diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/NotifyMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/NotifyMapper.java index 92912d8..6f21945 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/NotifyMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/NotifyMapper.java @@ -1,11 +1,14 @@ package com.ycl.platform.mapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.ycl.platform.domain.entity.Notify; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ycl.platform.domain.query.NotifyQuery; import com.ycl.platform.domain.vo.NotifyVO; import com.ycl.platform.domain.form.NotifyForm; import java.util.List; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 閫氱煡 Mapper 鎺ュ彛 diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/TContractMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/TContractMapper.java index fb4a704..919f81e 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/TContractMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/TContractMapper.java @@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ycl.platform.domain.entity.TContract; +import java.util.List; + /** * 銆愯濉啓鍔熻兘鍚嶇О銆慚apper鎺ュ彛 * @@ -10,4 +12,5 @@ * @date 2024-03-12 */ public interface TContractMapper extends BaseMapper<TContract> { + List<TContract> selectAll(); } diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/YwPointMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/YwPointMapper.java index 16e18a6..b7a099a 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/YwPointMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/YwPointMapper.java @@ -1,8 +1,10 @@ package com.ycl.platform.mapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.ycl.platform.base.BaseSelect; import com.ycl.platform.domain.entity.YwPoint; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ycl.platform.domain.query.YwPointQuery; import com.ycl.platform.domain.vo.YwPointVO; import com.ycl.platform.domain.form.YwPointForm; import java.util.List; @@ -27,4 +29,6 @@ * @return */ List<BaseSelect> selectData(@Param("keyword") String keyword, @Param("unitId") Integer unitId); + + IPage page(IPage<YwPointVO> page, @Param("query") YwPointQuery query); } diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/YwUnitMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/YwUnitMapper.java index 7f39ba0..572c8e6 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/YwUnitMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/YwUnitMapper.java @@ -23,4 +23,12 @@ * @return 鏁版嵁 */ List<YwUnitVO> workList(); + + /** + * 閫氳繃鐢ㄦ埛ID鏌ユ壘杩愮淮鍗曚綅 + * + * @param userId + * @return + */ + YwUnit getByUserId(Long userId); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/ICheckResultService.java b/ycl-server/src/main/java/com/ycl/platform/service/ICheckResultService.java index fe0a755..01c7078 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/ICheckResultService.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/ICheckResultService.java @@ -1,6 +1,9 @@ package com.ycl.platform.service; +import com.baomidou.mybatisplus.extension.service.IService; import com.ycl.platform.domain.entity.CheckResult; +import com.ycl.platform.domain.entity.ContractResultRecord; +import com.ycl.platform.domain.vo.CheckResultVO; import java.util.List; @@ -10,7 +13,7 @@ * @author ruoyi * @date 2024-04-01 */ -public interface ICheckResultService +public interface ICheckResultService extends IService<CheckResult> { /** * 鏌ヨ鑰冩牳缁撴灉 @@ -26,7 +29,7 @@ * @param checkResult 鑰冩牳缁撴灉 * @return 鑰冩牳缁撴灉闆嗗悎 */ - public List<CheckResult> selectCheckResultList(CheckResult checkResult); + public List<CheckResultVO> selectCheckResultList(CheckResultVO checkResult); /** * 鏂板鑰冩牳缁撴灉 @@ -59,4 +62,19 @@ * @return 缁撴灉 */ public int deleteCheckResultById(Long id); + + /** + * 鎵归噺淇濆瓨鑰冩牳缁撴灉 + * @param contractResultRecord 闆嗗悎 + */ + void saveBatchRecord(List<ContractResultRecord> contractResultRecord); + + /** + * 鏍规嵁鑰冩牳缁撴灉鏌ヨ璁板綍 + * @param resultId 鑰冩牳缁撴灉id + * @return 鑰冩牳缁撴灉璁板綍 + */ + List<ContractResultRecord> selectCheckResultRecordList(Long resultId); + + Boolean publish(Long id); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/IContractScoreService.java b/ycl-server/src/main/java/com/ycl/platform/service/IContractScoreService.java index 123ad3b..a55cfce 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/IContractScoreService.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/IContractScoreService.java @@ -39,4 +39,11 @@ * @return 缁撴灉 */ boolean audit(ContractScore contractScore); + + /** + * 鏍规嵁鍚堝悓id鏌ヨ鏈湀鍚堝悓鎵撳垎 + * @param id id + * @return 鏁版嵁 + */ + List<ContractScore> getDateRangeScoreByContractId(Long id, String startTime, String endTime); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/ITContractService.java b/ycl-server/src/main/java/com/ycl/platform/service/ITContractService.java index d101b61..15d8e8c 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/ITContractService.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/ITContractService.java @@ -39,4 +39,10 @@ * @return 瑙勫垯 */ List<CalculateMoneyRule> selectMoneyRules(Integer contractId); + + /** + * 鏌ヨ鎵�鏈夋鍦ㄤ娇鐢ㄧ殑鍚堝悓 + * @return 鏁版嵁 + */ + List<TContract> selectUsingContract(); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/YwUnitService.java b/ycl-server/src/main/java/com/ycl/platform/service/YwUnitService.java index 2495bb6..ada6bd0 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/YwUnitService.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/YwUnitService.java @@ -9,6 +9,7 @@ import com.ycl.platform.domain.entity.YwUnit; import com.ycl.platform.domain.form.YwUnitForm; import com.ycl.platform.domain.query.YwUnitQuery; +import com.ycl.system.model.LoginUser; import java.util.List; @@ -79,4 +80,11 @@ * @return */ Result workList(); + + /** + * 璁剧疆鐧诲綍鐢ㄦ埛鐨勮繍缁村崟浣嶄俊鎭� + * + * @param loginUser + */ + void setUnitInfo(LoginUser loginUser); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java index a6c3af1..0cadd77 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRuleServiceImpl.java @@ -144,6 +144,6 @@ @Override public List<CalculateRuleCascaderVO> getRuleListByUnitId(Integer unitId) { - return TreeUtils.build(calculateRuleMapper.getRuleListByUnitId(unitId), 0L); + return TreeUtils.build(calculateRuleMapper.getRuleListByUnitId(unitId, DateUtils.getDate()), 0L); } } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckResultServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckResultServiceImpl.java index d8ba31d..cdd747c 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckResultServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckResultServiceImpl.java @@ -1,97 +1,129 @@ package com.ycl.platform.service.impl; +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.platform.domain.entity.CheckResult; +import com.ycl.platform.domain.entity.ContractResultRecord; +import com.ycl.platform.domain.vo.CheckResultVO; import com.ycl.platform.mapper.CheckResultMapper; +import com.ycl.platform.mapper.ContractResultRecordMapper; import com.ycl.platform.service.ICheckResultService; +import com.ycl.platform.service.ITContractService; +import com.ycl.platform.service.YwUnitService; +import com.ycl.utils.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import utils.DateUtils; +import java.util.Arrays; import java.util.List; /** * 鑰冩牳缁撴灉Service涓氬姟灞傚鐞� - * + * * @author ruoyi * @date 2024-04-01 */ @Service -public class CheckResultServiceImpl extends ServiceImpl<CheckResultMapper, CheckResult> implements ICheckResultService -{ +public class CheckResultServiceImpl extends ServiceImpl<CheckResultMapper, CheckResult> implements ICheckResultService { @Autowired private CheckResultMapper checkResultMapper; + @Autowired + private ContractResultRecordMapper contractResultRecordMapper; + @Autowired + private YwUnitService unitService; + @Autowired + private ITContractService contractService; + /** * 鏌ヨ鑰冩牳缁撴灉 - * + * * @param id 鑰冩牳缁撴灉涓婚敭 * @return 鑰冩牳缁撴灉 */ @Override - public CheckResult selectCheckResultById(Long id) - { - return checkResultMapper.selectCheckResultById(id); + public CheckResult selectCheckResultById(Long id) { + return checkResultMapper.selectById(id); } /** * 鏌ヨ鑰冩牳缁撴灉鍒楄〃 - * + * * @param checkResult 鑰冩牳缁撴灉 * @return 鑰冩牳缁撴灉 */ @Override - public List<CheckResult> selectCheckResultList(CheckResult checkResult) - { + public List<CheckResultVO> selectCheckResultList(CheckResultVO checkResult) { return checkResultMapper.selectCheckResultList(checkResult); } /** * 鏂板鑰冩牳缁撴灉 - * + * * @param checkResult 鑰冩牳缁撴灉 * @return 缁撴灉 */ @Override - public int insertCheckResult(CheckResult checkResult) - { - return checkResultMapper.insertCheckResult(checkResult); + public int insertCheckResult(CheckResult checkResult) { + return checkResultMapper.insert(checkResult); } /** * 淇敼鑰冩牳缁撴灉 - * + * * @param checkResult 鑰冩牳缁撴灉 * @return 缁撴灉 */ @Override - public int updateCheckResult(CheckResult checkResult) - { + public int updateCheckResult(CheckResult checkResult) { checkResult.setUpdateTime(DateUtils.getNowDate()); - return checkResultMapper.updateCheckResult(checkResult); + return checkResultMapper.updateById(checkResult); } /** * 鎵归噺鍒犻櫎鑰冩牳缁撴灉 - * + * * @param ids 闇�瑕佸垹闄ょ殑鑰冩牳缁撴灉涓婚敭 * @return 缁撴灉 */ @Override - public int deleteCheckResultByIds(Long[] ids) - { - return checkResultMapper.deleteCheckResultByIds(ids); + public int deleteCheckResultByIds(Long[] ids) { + return checkResultMapper.deleteBatchIds(Arrays.asList(ids)); } /** * 鍒犻櫎鑰冩牳缁撴灉淇℃伅 - * + * * @param id 鑰冩牳缁撴灉涓婚敭 * @return 缁撴灉 */ @Override - public int deleteCheckResultById(Long id) - { - return checkResultMapper.deleteCheckResultById(id); + public int deleteCheckResultById(Long id) { + return checkResultMapper.deleteById(id); + } + + @Override + public void saveBatchRecord(List<ContractResultRecord> contractResultRecord) { + if (!contractResultRecord.isEmpty()) { + contractResultRecordMapper.saveBatch(contractResultRecord); + } + } + + @Override + public List<ContractResultRecord> selectCheckResultRecordList(Long resultId) { + return new LambdaQueryChainWrapper<>(contractResultRecordMapper) + .eq(ContractResultRecord::getResultId, resultId) + .list(); + } + + @Override + public Boolean publish(Long id) { + return new LambdaUpdateChainWrapper<>(checkResultMapper) + .eq(CheckResult::getId, id) + .set(CheckResult::getPublish, 1) + .set(CheckResult::getPublishId, SecurityUtils.getLoginUser().getUserId()) + .update(); } } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/ContractScoreServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/ContractScoreServiceImpl.java index c979ea1..f0e76b0 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/ContractScoreServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/ContractScoreServiceImpl.java @@ -10,6 +10,7 @@ import com.ycl.platform.mapper.YwUnitMapper; import com.ycl.platform.service.IContractScoreService; import com.ycl.system.entity.SysUser; +import com.ycl.utils.DateUtils; import com.ycl.utils.SecurityUtils; import enumeration.general.AuditingStatus; import org.apache.commons.lang3.ObjectUtils; @@ -46,22 +47,7 @@ */ @Override public List<ContractScore> selectDefaultScoreList(ContractScore contractScore) { - return new LambdaQueryChainWrapper<>(contractScoreMapper) - .eq(ObjectUtils.isNotEmpty(contractScore.getUnitId()), ContractScore::getUnitId, contractScore.getUnitId()) - .between(ObjectUtils.isNotEmpty(contractScore.getCreateStartTime()), ContractScore::getCreateTime, contractScore.getCreateStartTime(), contractScore.getCreateEndTime()) - .between(ObjectUtils.isNotEmpty(contractScore.getAuditingStartTime()), ContractScore::getAuditingTime, contractScore.getAuditingStartTime(), contractScore.getAuditingEndTime()) - .eq(ObjectUtils.isNotEmpty(contractScore.getAuditingStatus()), ContractScore::getAuditingStatus, contractScore.getAuditingStatus()) - .orderByDesc(ContractScore::getCreateTime) - .list() - .stream().peek( - item -> { - item.setUnitName(ywunitMapper.selectById(item.getUnitId()).getUnitName()); - item.setContractName(contractMapper.selectById(item.getContractId()).getName()); - item.setRuleIdsArray(Arrays.stream(item.getRuleIds().split(",")).map(Long::parseLong).toArray(Long[]::new)); - List<CalculateRule> list = new LambdaQueryChainWrapper<>(calculateRuleMapper).in(CalculateRule::getId, item.getRuleIdsArray()).list(); - item.setRuleName(String.join(" / ", new String[]{list.get(0).getRuleName(), list.get(1).getRuleDesc(), list.get(2).getRuleCondition()})); - } - ).toList(); + return contractScoreMapper.selectDefaultScoreList(contractScore); } @Override @@ -79,6 +65,9 @@ contractScore.setAuditingStatus(AuditingStatus.WAIT); contractScore.setDeleted("0"); contractScore.setRuleIds(Arrays.stream(contractScore.getRuleIdsArray()).map(String::valueOf).collect(Collectors.joining(","))); + contractScore.setRuleIdsArray(Arrays.stream(contractScore.getRuleIds().split(",")).map(Long::parseLong).toArray(Long[]::new)); + List<CalculateRule> list = new LambdaQueryChainWrapper<>(calculateRuleMapper).in(CalculateRule::getId, contractScore.getRuleIdsArray()).list(); + contractScore.setRuleName(String.join(" / ", new String[]{list.get(0).getRuleName(), list.get(1).getRuleDesc(), list.get(2).getRuleCondition()})); return super.save(contractScore); } @@ -91,10 +80,19 @@ @Override public boolean audit(ContractScore contractScore) { SysUser user = SecurityUtils.getLoginUser().getUser(); - contractScore.setRuleIds(Arrays.stream(contractScore.getRuleIdsArray()).map(String::valueOf).collect(Collectors.joining(","))); contractScore.setAuditingTime(com.ycl.utils.DateUtils.getNowDate()); contractScore.setAuditingUser(user.getNickName()); contractScore.setAuditingUserId(user.getUserId()); return super.updateById(contractScore); } + + @Override + public List<ContractScore> getDateRangeScoreByContractId(Long id, String startTime, String endTime) { + return new LambdaQueryChainWrapper<>(contractScoreMapper) + .eq(ContractScore::getContractId, id) + .between(ContractScore::getCreateTime, startTime, endTime) + .eq(ContractScore::getAuditingStatus, AuditingStatus.PASS) + .list(); + } + } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java index b42ff8f..ac2218a 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/NotifyServiceImpl.java @@ -9,19 +9,22 @@ import com.ycl.platform.domain.vo.NotifyVO; import com.ycl.platform.domain.query.NotifyQuery; import java.util.List; -import org.apache.commons.lang3.StringUtils; + import com.baomidou.mybatisplus.core.metadata.IPage; import com.ycl.system.page.PageUtil; +import com.ycl.utils.SecurityUtils; import org.springframework.stereotype.Service; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.beans.BeanUtils; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; import java.util.ArrayList; +import java.util.Objects; import java.util.stream.Collectors; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import lombok.RequiredArgsConstructor; +import org.springframework.util.StringUtils; /** * 閫氱煡 鏈嶅姟瀹炵幇绫� @@ -101,17 +104,34 @@ */ @Override public Result page(NotifyQuery query) { - - IPage<Notify> page = new LambdaQueryChainWrapper<>(baseMapper) - .orderByDesc(Notify::getCreateTime) - .page(PageUtil.getPage(query, Notify.class)); - - List<NotifyVO> vos = page.getRecords().stream() - .map( - entity -> NotifyVO.getVoByEntity(entity, null) - ) - .collect(Collectors.toList()); - return Result.ok().data(vos).total(page.getTotal()); + IPage<Notify> page = PageUtil.getPage(query, Notify.class); + // 濡傛灉鏄崟浣嶇鐞嗗憳锛氭煡璇㈠崟浣嶉�氱煡 + if (SecurityUtils.getLoginUser().getUnitAdmin()) { + new LambdaQueryChainWrapper<>(baseMapper) + .between(Objects.nonNull(query.getEnd()) && Objects.nonNull(query.getStart()), + Notify::getCreateTime, + query.getStart(), + query.getEnd()) + .eq(StringUtils.hasText(query.getWorkOrderNo()), Notify::getWorkOrderNo, query.getWorkOrderNo()) + .eq(Notify::getNotifyUnit, SecurityUtils.getLoginUser().getUnitId()) + .orderByDesc(Notify::getCreateTime) + .page(page); + } else { + // 濡傛灉鏄崟浣嶄汉鍛橈細鏌ヨ鑷繁鐨勯�氱煡 + new LambdaQueryChainWrapper<>(baseMapper) + .between(Objects.nonNull(query.getEnd()) && Objects.nonNull(query.getStart()), + Notify::getCreateTime, + query.getStart(), + query.getEnd()) + .eq(StringUtils.hasText(query.getWorkOrderNo()), Notify::getWorkOrderNo, query.getWorkOrderNo()) + .eq(Notify::getNotifyUser, SecurityUtils.getLoginUser().getUnitId()) + .orderByDesc(Notify::getCreateTime) + .page(page); + } + List<NotifyVO> result = page.getRecords().stream().map(entity -> { + return NotifyVO.getVoByEntity(entity, null); + }).collect(Collectors.toList()); + return Result.ok().data(result).total(page.getTotal()); } /** diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java index eeb6d56..b48b540 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/TContractServiceImpl.java @@ -198,15 +198,19 @@ @Override public List<TContract> selectAll() { - return list(new LambdaQueryWrapper<TContract>() - .orderByDesc(TContract::getCreateTime)) - .stream().peek( - tContract -> tContract.setUnitName(ywUnitService.getById(tContract.getUnitId()).getUnitName()) - ).toList(); + return baseMapper.selectAll(); } @Override public List<CalculateMoneyRule> selectMoneyRules(Integer contractId) { return calculateMoneyRuleService.selectMoneyRules(contractId); } + + @Override + public List<TContract> selectUsingContract() { + return new LambdaQueryChainWrapper<>(baseMapper) + .le(TContract::getStartTime, DateUtils.getDate()) + .ge(TContract::getEndTime, DateUtils.getDate()) + .list(); + } } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java index e29849f..68d709a 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java @@ -20,9 +20,7 @@ import com.ycl.utils.DateUtils; import com.ycl.utils.SecurityUtils; import com.ycl.utils.redis.RedisCache; -import enumeration.general.NotifyTypeEnum; -import enumeration.general.WorkOrderDistributeWayEnum; -import enumeration.general.WorkOrderStatusEnum; +import enumeration.general.*; import lombok.RequiredArgsConstructor; import org.apache.commons.lang3.ArrayUtils; import org.springframework.beans.BeanUtils; @@ -114,12 +112,12 @@ workOrderAuditingRecord.setRemark(form.getAuditingRemark()); workOrderAuditingRecordMapper.insert(workOrderAuditingRecord); // 娣诲姞鏂伴�氱煡 - try { - Notify notify = new Notify(NotifyTypeEnum.WORK_ORDER, form.getAuditingResult().getDesc(), workOrder.getYwPeopleId(), "0", "0", workOrder.getId()); - notifyService.save(notify); - } catch (Exception e) { - return Result.error("瀹℃牳鎴愬姛锛岄�氱煡杩愮淮浜哄憳澶辫触"); - } + Notify notify = Notify.genEntityByUnit(NotifyTypeEnum.WORK_ORDER, + form.getAuditingResult().getDesc(), + workOrder.getUnitId(), + UrgentLevelEnum.WARNING, + workOrder.getWorkOrderNo()); + notifyService.save(notify); return Result.ok("鎿嶄綔鎴愬姛"); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java index b297192..b18d3a5 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/YwPointServiceImpl.java @@ -21,6 +21,7 @@ import java.util.List; import com.ycl.system.entity.SysUser; +import com.ycl.system.mapper.SysDeptMapper; import com.ycl.system.service.ISysDeptService; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -48,11 +49,8 @@ @RequiredArgsConstructor public class YwPointServiceImpl extends ServiceImpl<YwPointMapper, YwPoint> implements YwPointService { - private final YwPointMapper ywPointMapper; - private final ISysDeptService deptService; + private final SysDeptMapper sysDeptMapper; private final YwUnitService unitService; - private final YwUnitMapper ywUnitMapper; - private final RegionMapper regionMapper; private final YwPeopleMapper ywPeopleMapper; /** @@ -88,8 +86,6 @@ new LambdaUpdateChainWrapper<>(baseMapper) .in(YwPoint::getId, form.getIds()) .set(YwPoint::getUnitId, form.getUnitId()) - .set(YwPoint::getStartTime, form.getStartTime()) - .set(YwPoint::getEndTime, form.getEndTime()) .update(); } else { new LambdaUpdateChainWrapper<>(baseMapper) @@ -109,16 +105,12 @@ */ @Override public Result update(YwPointForm form) { - YwPoint entity = baseMapper.selectById(form.getId()); - - // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊 Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); BeanUtils.copyProperties(form, entity); - if (baseMapper.updateById(entity) > 0) { - return Result.ok("淇敼鎴愬姛"); - } - return Result.error("淇敼澶辫触"); + entity.setPointTag(form.getPointTag().stream().collect(Collectors.joining(","))); + baseMapper.updateById(entity); + return Result.ok("淇敼鎴愬姛"); } /** @@ -154,21 +146,14 @@ */ @Override public Result page(YwPointQuery query) { - - IPage<YwPoint> page = new LambdaQueryChainWrapper<>(baseMapper) - .like(StringUtils.hasText(query.getPointName()), YwPoint::getPointName, query.getPointName()) - .orderByDesc(YwPoint::getCreateTime) - .page(PageUtil.getPage(query, YwPoint.class)); - - List<YwPointVO> vos = page.getRecords().stream() - .map( - entity -> YwPointVO.getVoByEntity(entity, null) - .setDeptName(deptService.selectDeptById(entity.getDeptId()).getDeptName()) - .setUnitName(unitService.getById(entity.getUnitId()).getUnitName()) - ) - .collect(Collectors.toList()); - - return Result.ok().data(vos).total(page.getTotal()); + IPage<YwPointVO> page = PageUtil.getPage(query, YwPointVO.class); + baseMapper.page(page, query); + page.getRecords().stream().forEach(point -> { + if (StringUtils.hasText(point.getPointTagString())) { + point.setPointTags(point.getPointTagString().split(",")); + } + }); + return Result.ok().data(page.getRecords()).total(page.getTotal()); } /** @@ -178,10 +163,15 @@ */ @Override public Result detail(String id) { - YwPoint entity = baseMapper.selectById(id); Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); YwPointVO vo = YwPointVO.getVoByEntity(entity, null); + if (StringUtils.hasText(entity.getPointTag())) { + vo.setPointTags(entity.getPointTag().split(",")); + } + if (Objects.nonNull(entity.getDeptId())) { + vo.setDeptIds(sysDeptMapper.selectParents(entity.getDeptId())); + } return Result.ok().data(vo); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/YwUnitServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/YwUnitServiceImpl.java index a0fb489..4ffd0d0 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/YwUnitServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/YwUnitServiceImpl.java @@ -20,6 +20,7 @@ import com.ycl.system.mapper.SysRoleMapper; import com.ycl.system.mapper.SysUserMapper; import com.ycl.system.mapper.SysUserRoleMapper; +import com.ycl.system.model.LoginUser; import com.ycl.system.page.PageUtil; import com.ycl.platform.service.YwUnitService; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -217,6 +218,27 @@ } @Override + public void setUnitInfo(LoginUser loginUser) { + // 鍗曚綅绠$悊鍛樻煡璇� + YwUnit unit = new LambdaQueryChainWrapper<>(baseMapper) + .eq(YwUnit::getUnitAdminAccount, loginUser.getUsername()) + .one(); + if (Objects.nonNull(unit)) { + loginUser.setUnitAdmin(Boolean.TRUE); + loginUser.setUnitId(unit.getId()); + } else { + unit = baseMapper.getByUserId(loginUser.getUserId()); + if (Objects.nonNull(unit)) { + loginUser.setUnitAdmin(Boolean.FALSE); + loginUser.setUnitId(unit.getId()); + } + else { + loginUser.setUnitAdmin(Boolean.FALSE); + } + } + } + + @Override public List<YwUnitVO> export(YwUnitQuery query) { // 鍒嗛〉鏉′欢鏌ヨ浣� IPage<YwUnit> page = new LambdaQueryChainWrapper<>(baseMapper) diff --git a/ycl-server/src/main/java/com/ycl/system/controller/SysDeptController.java b/ycl-server/src/main/java/com/ycl/system/controller/SysDeptController.java index 8771d99..fa070b0 100644 --- a/ycl-server/src/main/java/com/ycl/system/controller/SysDeptController.java +++ b/ycl-server/src/main/java/com/ycl/system/controller/SysDeptController.java @@ -19,7 +19,7 @@ /** * 閮ㄩ棬淇℃伅 - * + * * @author ruoyi */ @RestController @@ -134,4 +134,10 @@ public Result pullList() { return deptService.pullList(); } + + @GetMapping("/cascader") + @ApiOperation(value = "閮ㄩ棬绾ц仈閫夋嫨鏁版嵁", notes = "閮ㄩ棬绾ц仈閫夋嫨鏁版嵁") + public Result cascader() { + return deptService.cascader(); + } } diff --git a/ycl-server/src/main/java/com/ycl/system/mapper/SysDeptMapper.java b/ycl-server/src/main/java/com/ycl/system/mapper/SysDeptMapper.java index 42b54da..effeed2 100644 --- a/ycl-server/src/main/java/com/ycl/system/mapper/SysDeptMapper.java +++ b/ycl-server/src/main/java/com/ycl/system/mapper/SysDeptMapper.java @@ -1,5 +1,6 @@ package com.ycl.system.mapper; +import com.ycl.platform.base.Cascader; import com.ycl.system.entity.SysDept; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -8,7 +9,7 @@ /** * 閮ㄩ棬绠$悊 鏁版嵁灞� - * + * * @author ruoyi */ @Mapper @@ -16,7 +17,7 @@ { /** * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 閮ㄩ棬淇℃伅闆嗗悎 */ @@ -24,7 +25,7 @@ /** * 鏍规嵁瑙掕壊ID鏌ヨ閮ㄩ棬鏍戜俊鎭� - * + * * @param roleId 瑙掕壊ID * @param deptCheckStrictly 閮ㄩ棬鏍戦�夋嫨椤规槸鍚﹀叧鑱旀樉绀� * @return 閫変腑閮ㄩ棬鍒楄〃 @@ -33,7 +34,7 @@ /** * 鏍规嵁閮ㄩ棬ID鏌ヨ淇℃伅 - * + * * @param deptId 閮ㄩ棬ID * @return 閮ㄩ棬淇℃伅 */ @@ -41,7 +42,7 @@ /** * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬 - * + * * @param deptId 閮ㄩ棬ID * @return 閮ㄩ棬鍒楄〃 */ @@ -49,7 +50,7 @@ /** * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級 - * + * * @param deptId 閮ㄩ棬ID * @return 瀛愰儴闂ㄦ暟 */ @@ -57,7 +58,7 @@ /** * 鏄惁瀛樺湪瀛愯妭鐐� - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ @@ -65,7 +66,7 @@ /** * 鏌ヨ閮ㄩ棬鏄惁瀛樺湪鐢ㄦ埛 - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ @@ -73,7 +74,7 @@ /** * 鏍¢獙閮ㄩ棬鍚嶇О鏄惁鍞竴 - * + * * @param deptName 閮ㄩ棬鍚嶇О * @param parentId 鐖堕儴闂↖D * @return 缁撴灉 @@ -82,7 +83,7 @@ /** * 鏂板閮ㄩ棬淇℃伅 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -90,7 +91,7 @@ /** * 淇敼閮ㄩ棬淇℃伅 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -98,14 +99,14 @@ /** * 淇敼鎵�鍦ㄩ儴闂ㄦ甯哥姸鎬� - * + * * @param deptIds 閮ㄩ棬ID缁� */ public void updateDeptStatusNormal(Long[] deptIds); /** * 淇敼瀛愬厓绱犲叧绯� - * + * * @param depts 瀛愬厓绱� * @return 缁撴灉 */ @@ -113,9 +114,24 @@ /** * 鍒犻櫎閮ㄩ棬绠$悊淇℃伅 - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ public int deleteDeptById(Long deptId); + + /** + * 绾ц仈鏁版嵁 + * + * @return + */ + List<Cascader> cascader(); + + /** + * 鏌ヨ鑷繁鐨勭埗绫婚儴闂↖D + * + * @param deptId + * @return + */ + List<Long> selectParents(@Param("id") Long deptId); } diff --git a/ycl-server/src/main/java/com/ycl/system/service/ISysDeptService.java b/ycl-server/src/main/java/com/ycl/system/service/ISysDeptService.java index bc79014..ad7deb7 100644 --- a/ycl-server/src/main/java/com/ycl/system/service/ISysDeptService.java +++ b/ycl-server/src/main/java/com/ycl/system/service/ISysDeptService.java @@ -8,14 +8,14 @@ /** * 閮ㄩ棬绠$悊 鏈嶅姟灞� - * + * * @author ruoyi */ public interface ISysDeptService { /** * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 閮ㄩ棬淇℃伅闆嗗悎 */ @@ -23,7 +23,7 @@ /** * 鏌ヨ閮ㄩ棬鏍戠粨鏋勪俊鎭� - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 閮ㄩ棬鏍戜俊鎭泦鍚� */ @@ -31,7 +31,7 @@ /** * 鏋勫缓鍓嶇鎵�闇�瑕佹爲缁撴瀯 - * + * * @param depts 閮ㄩ棬鍒楄〃 * @return 鏍戠粨鏋勫垪琛� */ @@ -39,7 +39,7 @@ /** * 鏋勫缓鍓嶇鎵�闇�瑕佷笅鎷夋爲缁撴瀯 - * + * * @param depts 閮ㄩ棬鍒楄〃 * @return 涓嬫媺鏍戠粨鏋勫垪琛� */ @@ -47,7 +47,7 @@ /** * 鏍规嵁瑙掕壊ID鏌ヨ閮ㄩ棬鏍戜俊鎭� - * + * * @param roleId 瑙掕壊ID * @return 閫変腑閮ㄩ棬鍒楄〃 */ @@ -55,7 +55,7 @@ /** * 鏍规嵁閮ㄩ棬ID鏌ヨ淇℃伅 - * + * * @param deptId 閮ㄩ棬ID * @return 閮ㄩ棬淇℃伅 */ @@ -63,7 +63,7 @@ /** * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級 - * + * * @param deptId 閮ㄩ棬ID * @return 瀛愰儴闂ㄦ暟 */ @@ -71,7 +71,7 @@ /** * 鏄惁瀛樺湪閮ㄩ棬瀛愯妭鐐� - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ @@ -79,7 +79,7 @@ /** * 鏌ヨ閮ㄩ棬鏄惁瀛樺湪鐢ㄦ埛 - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 true 瀛樺湪 false 涓嶅瓨鍦� */ @@ -87,7 +87,7 @@ /** * 鏍¢獙閮ㄩ棬鍚嶇О鏄惁鍞竴 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -95,14 +95,14 @@ /** * 鏍¢獙閮ㄩ棬鏄惁鏈夋暟鎹潈闄� - * + * * @param deptId 閮ㄩ棬id */ public void checkDeptDataScope(Long deptId); /** * 鏂板淇濆瓨閮ㄩ棬淇℃伅 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -110,7 +110,7 @@ /** * 淇敼淇濆瓨閮ㄩ棬淇℃伅 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -118,7 +118,7 @@ /** * 鍒犻櫎閮ㄩ棬绠$悊淇℃伅 - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ @@ -134,4 +134,11 @@ * @return */ Result pullList(); + + /** + * 閮ㄩ棬绾ц仈鏁版嵁 + * + * @return + */ + Result cascader(); } diff --git a/ycl-server/src/main/java/com/ycl/system/service/UserDetailsServiceImpl.java b/ycl-server/src/main/java/com/ycl/system/service/UserDetailsServiceImpl.java index 5988e14..f16c005 100644 --- a/ycl-server/src/main/java/com/ycl/system/service/UserDetailsServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/system/service/UserDetailsServiceImpl.java @@ -1,11 +1,13 @@ package com.ycl.system.service; import com.ycl.exception.ServiceException; +import com.ycl.platform.service.YwUnitService; import com.ycl.system.entity.SysUser; import com.ycl.system.model.LoginUser; import com.ycl.utils.MessageUtils; import com.ycl.utils.StringUtils; import enumeration.UserStatus; +import lombok.RequiredArgsConstructor; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -20,18 +22,15 @@ * @author ruoyi */ @Service +@RequiredArgsConstructor public class UserDetailsServiceImpl implements UserDetailsService { private static final Logger log = LoggerFactory.getLogger(UserDetailsServiceImpl.class); - @Autowired - private ISysUserService userService; - - @Autowired - private SysPasswordService passwordService; - - @Autowired - private SysPermissionService permissionService; + private final ISysUserService userService; + private final SysPasswordService passwordService; + private final SysPermissionService permissionService; + private final YwUnitService unitService; @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException @@ -60,6 +59,8 @@ public UserDetails createLoginUser(SysUser user) { - return new LoginUser(user.getUserId(), user.getDeptId(), user, permissionService.getMenuPermission(user)); + LoginUser loginUser = new LoginUser(user.getUserId(), user.getDeptId(), user, permissionService.getMenuPermission(user)); + unitService.setUnitInfo(loginUser); + return loginUser; } } diff --git a/ycl-server/src/main/java/com/ycl/system/service/impl/SysDeptServiceImpl.java b/ycl-server/src/main/java/com/ycl/system/service/impl/SysDeptServiceImpl.java index e513424..0025f7a 100644 --- a/ycl-server/src/main/java/com/ycl/system/service/impl/SysDeptServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/system/service/impl/SysDeptServiceImpl.java @@ -3,6 +3,7 @@ import annotation.DataScope; import com.ycl.exception.ServiceException; import com.ycl.platform.base.BaseSelect; +import com.ycl.platform.base.Cascader; import com.ycl.system.Result; import com.ycl.system.domain.TreeSelect; import com.ycl.system.entity.SysDept; @@ -19,14 +20,12 @@ import org.springframework.stereotype.Service; import utils.text.Convert; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; /** * 閮ㄩ棬绠$悊 鏈嶅姟瀹炵幇 - * + * * @author ruoyi */ @Service @@ -40,7 +39,7 @@ /** * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 閮ㄩ棬淇℃伅闆嗗悎 */ @@ -53,7 +52,7 @@ /** * 鏌ヨ閮ㄩ棬鏍戠粨鏋勪俊鎭� - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 閮ㄩ棬鏍戜俊鎭泦鍚� */ @@ -66,7 +65,7 @@ /** * 鏋勫缓鍓嶇鎵�闇�瑕佹爲缁撴瀯 - * + * * @param depts 閮ㄩ棬鍒楄〃 * @return 鏍戠粨鏋勫垪琛� */ @@ -93,7 +92,7 @@ /** * 鏋勫缓鍓嶇鎵�闇�瑕佷笅鎷夋爲缁撴瀯 - * + * * @param depts 閮ㄩ棬鍒楄〃 * @return 涓嬫媺鏍戠粨鏋勫垪琛� */ @@ -106,7 +105,7 @@ /** * 鏍规嵁瑙掕壊ID鏌ヨ閮ㄩ棬鏍戜俊鎭� - * + * * @param roleId 瑙掕壊ID * @return 閫変腑閮ㄩ棬鍒楄〃 */ @@ -119,7 +118,7 @@ /** * 鏍规嵁閮ㄩ棬ID鏌ヨ淇℃伅 - * + * * @param deptId 閮ㄩ棬ID * @return 閮ㄩ棬淇℃伅 */ @@ -131,7 +130,7 @@ /** * 鏍规嵁ID鏌ヨ鎵�鏈夊瓙閮ㄩ棬锛堟甯哥姸鎬侊級 - * + * * @param deptId 閮ㄩ棬ID * @return 瀛愰儴闂ㄦ暟 */ @@ -143,7 +142,7 @@ /** * 鏄惁瀛樺湪瀛愯妭鐐� - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ @@ -156,7 +155,7 @@ /** * 鏌ヨ閮ㄩ棬鏄惁瀛樺湪鐢ㄦ埛 - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 true 瀛樺湪 false 涓嶅瓨鍦� */ @@ -169,7 +168,7 @@ /** * 鏍¢獙閮ㄩ棬鍚嶇О鏄惁鍞竴 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -187,7 +186,7 @@ /** * 鏍¢獙閮ㄩ棬鏄惁鏈夋暟鎹潈闄� - * + * * @param deptId 閮ㄩ棬id */ @Override @@ -207,7 +206,7 @@ /** * 鏂板淇濆瓨閮ㄩ棬淇℃伅 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -226,7 +225,7 @@ /** * 淇敼淇濆瓨閮ㄩ棬淇℃伅 - * + * * @param dept 閮ㄩ棬淇℃伅 * @return 缁撴灉 */ @@ -254,7 +253,7 @@ /** * 淇敼璇ラ儴闂ㄧ殑鐖剁骇閮ㄩ棬鐘舵�� - * + * * @param dept 褰撳墠閮ㄩ棬 */ private void updateParentDeptStatusNormal(SysDept dept) @@ -266,7 +265,7 @@ /** * 淇敼瀛愬厓绱犲叧绯� - * + * * @param deptId 琚慨鏀圭殑閮ㄩ棬ID * @param newAncestors 鏂扮殑鐖禝D闆嗗悎 * @param oldAncestors 鏃х殑鐖禝D闆嗗悎 @@ -286,7 +285,7 @@ /** * 鍒犻櫎閮ㄩ棬绠$悊淇℃伅 - * + * * @param deptId 閮ㄩ棬ID * @return 缁撴灉 */ @@ -327,6 +326,43 @@ return Result.ok().data(vos); } + @Override + public Result cascader() { + List<Cascader> data = deptMapper.cascader(); + return Result.ok().data(this.buildTree(data)); + } + + public List<Cascader> buildTree(List<Cascader> cascaders) { + // 鍒涘缓涓�涓槧灏勶紝浠arentId涓洪敭锛屽搴旂殑瀛愯妭鐐瑰垪琛ㄤ负鍊� + Map<Long, List<Cascader>> map = new HashMap<>(); + for (Cascader cascader : cascaders) { + Long parentId = cascader.getParentId(); + map.computeIfAbsent(parentId, k -> new ArrayList<>()).add(cascader); + } + + // 閫掑綊鍑芥暟锛岀敤浜庢瀯寤烘爲 + List<Cascader> tree = new ArrayList<>(); + for (Cascader cascader : cascaders) { + if (cascader.getParentId().equals(0L)) { // 鏍硅妭鐐� + tree.add(setChildren(cascader, map)); + } + } + + // 鏇存柊鍘熷鍒楄〃涓烘爲褰㈢粨鏋� + cascaders.clear(); + cascaders.addAll(tree); + return cascaders; + } + + private Cascader setChildren(Cascader cascader, Map<Long, List<Cascader>> map) { + List<Cascader> children = map.getOrDefault(cascader.getValue(), new ArrayList<>()); + for (Cascader child : children) { + setChildren(child, map); // 閫掑綊璁剧疆瀛愯妭鐐圭殑瀛愯妭鐐� + } + cascader.setChildren(children); + return cascader; + } + /** * 閫掑綊鍒楄〃 */ diff --git a/ycl-server/src/main/java/com/ycl/task/ContractResultTask.java b/ycl-server/src/main/java/com/ycl/task/ContractResultTask.java new file mode 100644 index 0000000..758c3a8 --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/task/ContractResultTask.java @@ -0,0 +1,111 @@ +package com.ycl.task; + +import com.ycl.platform.domain.entity.CheckResult; +import com.ycl.platform.domain.entity.ContractResultRecord; +import com.ycl.platform.domain.entity.ContractScore; +import com.ycl.platform.domain.entity.TContract; +import com.ycl.platform.service.ICheckResultService; +import com.ycl.platform.service.IContractScoreService; +import com.ycl.platform.service.ITContractService; +import com.ycl.utils.DateUtils; +import com.ycl.utils.bean.BeanUtils; +import lombok.Data; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.util.List; + +/** + * @author ghl + * @since 2024/4/28 涓嬪崍 4:14 + */ + +@Component +@Data +public class ContractResultTask { + + private final ITContractService contractService; + private final IContractScoreService contractScoreService; + private final ICheckResultService checkResultService; + + private String startTime; + private String endTime; + + /** + * 姣忎釜鏈�1鍙锋墽琛岋紝缁熻鑰冩牳缁撴灉 + */ + @Scheduled(cron = "0 0 0 1 * ?") + @Transactional + // @PostConstruct //鍚姩鏃舵墽琛屼竴娆� + public void contractResultTask() { + // 鏌ヨ鏈夋晥鏈熷唴鐨勫悎鍚� + List<TContract> list = contractService.selectUsingContract(); + getLastMonth(); + for (TContract tContract : list) { + // 涓婁釜鏈堟墸鍒嗚褰� + List<ContractScore> contractScore = contractScoreService.getDateRangeScoreByContractId(tContract.getId(), startTime, endTime); + // 鏂板鑰冩牳缁撴灉 + CheckResult checkResult = getCheckResult(tContract, contractScore); + checkResultService.save(checkResult); + // 鏂板鑰冩牳缁撴灉璁板綍 + List<ContractResultRecord> contractResultRecord = getContractResultRecord(contractScore, checkResult); + checkResultService.saveBatchRecord(contractResultRecord); + } + } + + /** + * 淇濆瓨鑰冩牳璁板綍 + * + * @param contractScore 鎵e垎 + * @param checkResult 鑰冩牳缁撴灉 + * @return 鑰冩牳璁板綍 + */ + private List<ContractResultRecord> getContractResultRecord(List<ContractScore> contractScore, CheckResult checkResult) { + return contractScore.stream().map( + item -> { + ContractResultRecord record = new ContractResultRecord(); + BeanUtils.copyProperties(item, record); + record.setResultId(checkResult.getId()); + record.setCreateTime(DateUtils.getNowDate()); + return record; + } + ).toList(); + } + + /** + * 璁$畻鑰冩牳缁撴灉 + * + * @param tContract 鍚堝悓 + * @param contractScore 鎵e垎 + * @return 鑰冩牳缁撴灉 + */ + private CheckResult getCheckResult(TContract tContract, List<ContractScore> contractScore) { + CheckResult checkResult = new CheckResult(); + checkResult.setUnitId(tContract.getUnitId()); + checkResult.setContractId(tContract.getId()); + checkResult.setPublish(0); + checkResult.setDeleted("0"); + checkResult.setCheckTime(DateUtils.getNowDate()); + checkResult.setScore(contractScore.isEmpty() ? new BigDecimal("100") : new BigDecimal("100").subtract(contractScore.stream().map(ContractScore::getScore).reduce(BigDecimal::add).get())); + return checkResult; + } + + + /** + * 鑾峰彇涓婁釜鏈堢殑绗竴澶╁拰鏈�鍚庝竴澶� + */ + public void getLastMonth() { + LocalDate currentDate = LocalDate.now().minusMonths(1); + LocalDate firstDayOfMonth = currentDate.withDayOfMonth(1); + String firstDay = firstDayOfMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); + LocalDate lastDayOfMonth = currentDate.withDayOfMonth(currentDate.lengthOfMonth()); + String lastDay = lastDayOfMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); + this.startTime = firstDay; + this.endTime = lastDay; + } + +} diff --git a/ycl-server/src/main/resources/mapper/system/SysDeptMapper.xml b/ycl-server/src/main/resources/mapper/system/SysDeptMapper.xml index 5c2f042..e2aecb8 100644 --- a/ycl-server/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/ycl-server/src/main/resources/mapper/system/SysDeptMapper.xml @@ -22,12 +22,12 @@ <result property="updateBy" column="update_by" /> <result property="updateTime" column="update_time" /> </resultMap> - + <sql id="selectDeptVo"> select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status, d.del_flag, d.create_by, d.create_time,d.area from sys_dept d </sql> - + <select id="selectDeptList" parameterType="com.ycl.system.entity.SysDept" resultMap="SysDeptResult"> <include refid="selectDeptVo"/> where d.del_flag = '0' @@ -47,7 +47,7 @@ ${params.dataScope} order by d.parent_id, d.order_num </select> - + <select id="selectDeptListByRoleId" resultType="Long"> select d.dept_id from sys_dept d @@ -58,36 +58,36 @@ </if> order by d.parent_id, d.order_num </select> - + <select id="selectDeptById" parameterType="Long" resultMap="SysDeptResult"> select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status,d.area, (select dept_name from sys_dept where dept_id = d.parent_id) parent_name from sys_dept d where d.dept_id = #{deptId} </select> - + <select id="checkDeptExistUser" parameterType="Long" resultType="int"> select count(1) from sys_user where dept_id = #{deptId} and del_flag = '0' </select> - + <select id="hasChildByDeptId" parameterType="Long" resultType="int"> select count(1) from sys_dept where del_flag = '0' and parent_id = #{deptId} limit 1 </select> - + <select id="selectChildrenDeptById" parameterType="Long" resultMap="SysDeptResult"> select * from sys_dept where find_in_set(#{deptId}, ancestors) </select> - + <select id="selectNormalChildrenDeptById" parameterType="Long" resultType="int"> select count(*) from sys_dept where status = 0 and del_flag = '0' and find_in_set(#{deptId}, ancestors) </select> - + <select id="checkDeptNameUnique" resultMap="SysDeptResult"> <include refid="selectDeptVo"/> where dept_name=#{deptName} and parent_id = #{parentId} and del_flag = '0' limit 1 </select> - + <insert id="insertDept" parameterType="com.ycl.system.entity.SysDept"> insert into sys_dept( <if test="deptId != null and deptId != 0">dept_id,</if> @@ -115,7 +115,7 @@ sysdate() ) </insert> - + <update id="updateDept" parameterType="com.ycl.system.entity.SysDept"> update sys_dept <set> @@ -133,7 +133,7 @@ </set> where dept_id = #{deptId} </update> - + <update id="updateDeptChildren" parameterType="java.util.List"> update sys_dept set ancestors = <foreach collection="depts" item="item" index="index" @@ -146,16 +146,36 @@ #{item.deptId} </foreach> </update> - + <update id="updateDeptStatusNormal" parameterType="Long"> - update sys_dept set status = '0' where dept_id in + update sys_dept set status = '0' where dept_id in <foreach collection="array" item="deptId" open="(" separator="," close=")"> #{deptId} </foreach> </update> - + <delete id="deleteDeptById" parameterType="Long"> update sys_dept set del_flag = '2' where dept_id = #{deptId} </delete> -</mapper> \ No newline at end of file + <select id="cascader" resultType="com.ycl.platform.base.Cascader"> + SELECT dept_id as value, dept_name as label, parent_id as parentId FROM sys_dept WHERE status = '0' AND del_flag = '0' + </select> + + <select id="selectParents" resultType="long"> + WITH RECURSIVE temp_table AS ( + SELECT + dept_id, dept_name, parent_id, 0 as level FROM sys_dept WHERE dept_id = 101 + UNION ALL + SELECT + sd.dept_id, sd.dept_name, sd.parent_id, tb.level+1 FROM sys_dept sd INNER JOIN temp_table tb ON sd.dept_id = tb.parent_id + ) + SELECT + dept_id + FROM + temp_table + ORDER BY + level DESC + </select> + +</mapper> diff --git a/ycl-server/src/main/resources/mapper/system/SysDictTypeMapper.xml b/ycl-server/src/main/resources/mapper/system/SysDictTypeMapper.xml index 6613b88..d6c2b55 100644 --- a/ycl-server/src/main/resources/mapper/system/SysDictTypeMapper.xml +++ b/ycl-server/src/main/resources/mapper/system/SysDictTypeMapper.xml @@ -14,9 +14,9 @@ <result property="updateBy" column="update_by" /> <result property="updateTime" column="update_time" /> </resultMap> - + <sql id="selectDictTypeVo"> - select dict_id, dict_name, dict_type, status, create_by, create_time, remark + select dict_id, dict_name, dict_type, status, create_by, create_time, remark from sys_dict_type </sql> @@ -39,36 +39,38 @@ and date_format(create_time,'%y%m%d') <= date_format(#{params.endTime},'%y%m%d') </if> </where> + ORDER BY + create_time DESC </select> - + <select id="selectDictTypeAll" resultMap="SysDictTypeResult"> <include refid="selectDictTypeVo"/> </select> - + <select id="selectDictTypeById" parameterType="Long" resultMap="SysDictTypeResult"> <include refid="selectDictTypeVo"/> where dict_id = #{dictId} </select> - + <select id="selectDictTypeByType" parameterType="String" resultMap="SysDictTypeResult"> <include refid="selectDictTypeVo"/> where dict_type = #{dictType} </select> - + <select id="checkDictTypeUnique" parameterType="String" resultMap="SysDictTypeResult"> <include refid="selectDictTypeVo"/> where dict_type = #{dictType} limit 1 </select> - + <delete id="deleteDictTypeById" parameterType="Long"> delete from sys_dict_type where dict_id = #{dictId} </delete> - + <delete id="deleteDictTypeByIds" parameterType="Long"> delete from sys_dict_type where dict_id in <foreach collection="array" item="dictId" open="(" separator="," close=")"> #{dictId} - </foreach> + </foreach> </delete> <update id="updateDictType" parameterType="com.ycl.system.entity.SysDictType"> @@ -83,7 +85,7 @@ </set> where dict_id = #{dictId} </update> - + <insert id="insertDictType" parameterType="com.ycl.system.entity.SysDictType"> insert into sys_dict_type( <if test="dictName != null and dictName != ''">dict_name,</if> @@ -101,5 +103,5 @@ sysdate() ) </insert> - -</mapper> \ No newline at end of file + +</mapper> diff --git a/ycl-server/src/main/resources/mapper/zgyw/CalculateRuleMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/CalculateRuleMapper.xml index d04f8d5..5ec3a0d 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/CalculateRuleMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/CalculateRuleMapper.xml @@ -47,7 +47,7 @@ from t_calculate_rule where deleted = 0 and contract_id - in (select id from t_contract where unit_id = #{unitId}) + in (select id from t_contract where unit_id = #{unitId} and deleted = 0 and start_time <![CDATA[ <= ]]> #{now} and end_time >= #{now} ) </select> <insert id="insertDefaultRule" useGeneratedKeys="true" keyProperty="id"> diff --git a/ycl-server/src/main/resources/mapper/zgyw/CheckResultMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/CheckResultMapper.xml new file mode 100644 index 0000000..a0cb132 --- /dev/null +++ b/ycl-server/src/main/resources/mapper/zgyw/CheckResultMapper.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ycl.platform.mapper.CheckResultMapper"> + + + <select id="selectCheckResultList" resultType="com.ycl.platform.domain.vo.CheckResultVO"> + SELECT c.*, + u.unit_name AS unitName, + ct.name AS contractName + FROM t_contract_result c + LEFT JOIN + t_yw_unit u ON c.unit_id = u.id and u.deleted = '0' + LEFT JOIN + t_contract ct ON c.contract_id = ct.id and ct.deleted = '0' + where + c.deleted = '0' + <if test="unitId != null"> + AND c.unit_id = #{unitId} + </if> + <if test="createStartTime != null"> + AND c.check_time BETWEEN #{createStartTime} AND #{createEndTime} + </if> + <if test="publish != null"> + AND c.publish = #{publish} + </if> + </select> +</mapper> diff --git a/ycl-server/src/main/resources/mapper/zgyw/ContractScoreMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/ContractScoreMapper.xml index c834028..e4ca7ab 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/ContractScoreMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/ContractScoreMapper.xml @@ -22,12 +22,33 @@ select id, publish_id, template_id, num, score, create_user, create_user_name, update_user, update_user_name, create_time, update_time from t_contract_score </sql> - <select id="selectDefaultScoreList" resultMap="DefaultScoreResult"> - <include refid="selectDefaultScoreVo"/> - <where> - <if test="publishId != null "> and publish_id = #{publishId}</if> - <if test="templateId != null "> and template_id = #{templateId}</if> - </where> + <select id="selectDefaultScoreList" resultType="com.ycl.platform.domain.entity.ContractScore"> + SELECT + cs.*, + u.unit_name AS unitName, + c.name AS contractName + FROM + t_contract_score cs + LEFT JOIN + t_yw_unit u ON cs.unit_id = u.id and u.deleted = '0' + LEFT JOIN + t_contract c ON cs.contract_id = c.id and c.deleted = '0' + where + cs.deleted = '0' + <if test="unitId != null"> + AND cs.unit_id = #{unitId} + </if> + <if test="createStartTime != null"> + AND cs.create_time BETWEEN #{createStartTime} AND #{createEndTime} + </if> + <if test="auditingStartTime != null"> + AND cs.auditing_time BETWEEN #{auditingStartTime} AND #{auditingEndTime} + </if> + <if test="auditingStatus != null"> + AND cs.auditing_status = #{auditingStatus} + </if> + ORDER BY + cs.create_time DESC </select> <select id="selectDefaultScoreById" resultMap="DefaultScoreResult"> diff --git a/ycl-server/src/main/resources/mapper/zgyw/NotifyMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/NotifyMapper.xml index 3d6cd46..19351f9 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/NotifyMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/NotifyMapper.xml @@ -9,10 +9,9 @@ <result column="update_time" property="updateTime" /> <result column="notify_type" property="notifyType" /> <result column="content" property="content" /> - <result column="notify_who" property="notifyWho" /> <result column="readed" property="readed" /> <result column="urgent" property="urgent" /> - <result column="work_order_id" property="workOrderId" /> + <result column="work_order_id" property="workOrderNo" /> </resultMap> </mapper> diff --git a/ycl-server/src/main/resources/mapper/zgyw/TContractMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TContractMapper.xml index 18a9ccb..4e2abe7 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/TContractMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/TContractMapper.xml @@ -4,4 +4,12 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ycl.platform.mapper.TContractMapper"> + <select id="selectAll" resultType="com.ycl.platform.domain.entity.TContract"> + select a.*, b.unit_name + from t_contract a + left join t_yw_unit b on a.unit_id = b.id and b.deleted = '0' + where a.deleted = '0' + order by create_time desc + </select> + </mapper> \ No newline at end of file diff --git a/ycl-server/src/main/resources/mapper/zgyw/TContractResultRecordMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TContractResultRecordMapper.xml new file mode 100644 index 0000000..d2ee5c5 --- /dev/null +++ b/ycl-server/src/main/resources/mapper/zgyw/TContractResultRecordMapper.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ycl.platform.mapper.ContractResultRecordMapper"> + + <insert id="saveBatch"> + insert into t_contract_result_record(rule_name, create_time, rule_ids, result_id, num, score, deleted, deduct_category) values + <foreach collection="contractResultRecord" item="item" separator=","> + (#{item.ruleName}, #{item.createTime}, #{item.ruleIds}, #{item.resultId}, #{item.num}, #{item.score}, 0, #{item.deductCategory}) + </foreach> + </insert> + +</mapper> diff --git a/ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml index 270f10d..d10f643 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/YwPointMapper.xml @@ -9,12 +9,47 @@ <result column="start_time" property="startTime" /> <result column="end_time" property="endTime" /> <result column="unit_id" property="unitId" /> + <result column="unit_name" property="unitName" /> <result column="status" property="status" /> + <result column="dept_id" property="deptId" /> + <result column="dept_name" property="deptName" /> <result column="remark" property="remark" /> + <result column="create_time" property="createTime" /> + <result column="update_time" property="updateTime" /> + <result column="category" property="category" /> + <result column="point_tag" property="pointTagString" /> </resultMap> <select id="selectData" resultType="com.ycl.platform.base.BaseSelect"> </select> + <select id="page" resultMap="BaseResultMap"> + SELECT + typ.id, + typ.point_name, + typ.point_tag, + typ.start_time, + typ.end_time, + typ.unit_id, + tyu.unit_name, + typ.status, + typ.dept_id, + sd.dept_name, + typ.remark, + typ.create_time, + typ.update_time, + typ.point_tag, + typ.category + FROM + t_yw_point typ + LEFT JOIN t_yw_unit tyu ON typ.unit_id = tyu.id AND tyu.deleted = 0 + LEFT JOIN sys_dept sd ON typ.dept_id = sd.dept_id AND sd.del_flag = 0 + <where> + <if test="query.pointName != null and query.pointName != ''"> + AND typ.point_name like concat('%', #{query.pointName}, '%') + </if> + </where> + </select> + </mapper> diff --git a/ycl-server/src/main/resources/mapper/zgyw/YwUnitMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/YwUnitMapper.xml index 7908573..4692c3d 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/YwUnitMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/YwUnitMapper.xml @@ -99,4 +99,13 @@ #{id} </foreach> </delete> + + <select id="getByUserId" resultMap="YwUnitResult"> + SELECT + tyw.* + FROM + t_yw_unit tyw + INNER JOIN t_unit_people tup ON tup.unit_id = tyw.id and tyw.deleted = 0 + INNER JOIN t_yw_people typ ON tup.yw_people_id = typ.id AND typ.user_id = #{userId} AND typ.deleted = 0 + </select> </mapper> -- Gitblit v1.8.0