浏览代码

1.标准化工时

WoNiu 4 年之前
父节点
当前提交
c4de9a2468

+ 11 - 0
src/main/java/com/galaxis/manatee/dao/ChuanyunSelfWorkHourDao.java

@@ -0,0 +1,11 @@
+package com.galaxis.manatee.dao;
+
+
+import com.galaxis.capsule.util.GalaxisRepository;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunSelfWorkHourDO;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunWorkHourDO;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface ChuanyunSelfWorkHourDao extends GalaxisRepository<ChuanyunSelfWorkHourDO,String> {
+}

+ 5 - 0
src/main/java/com/galaxis/manatee/dao/ChuanyunUserCompanyDao.java

@@ -1,7 +1,10 @@
 package com.galaxis.manatee.dao;
 
 import com.galaxis.capsule.util.GalaxisRepository;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunProjectDO;
 import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunUserCompanyDO;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -22,4 +25,6 @@ public interface ChuanyunUserCompanyDao extends GalaxisRepository<ChuanyunUserCo
     List<ChuanyunUserCompanyDO> findAllByUserId(String userId);
 
     ChuanyunUserCompanyDO findByUserId(String userId);
+
+    Page<ChuanyunUserCompanyDO> findAllByStatus(int status, Pageable pageable);
 }

+ 22 - 0
src/main/java/com/galaxis/manatee/dao/ChuanyunWorkHourDao.java

@@ -0,0 +1,22 @@
+package com.galaxis.manatee.dao;
+
+
+import com.galaxis.capsule.util.GalaxisRepository;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunWorkHourDO;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.stereotype.Repository;
+
+import java.time.LocalDateTime;
+import java.util.List;
+
+@Repository
+public interface ChuanyunWorkHourDao extends GalaxisRepository<ChuanyunWorkHourDO,String> {
+
+    @Query(value="SELECT chuanyun_day_log.hours_worked,chuanyun_day_log.project_id,chuanyun_log.user_id,chuanyun_day_log.day_log_date FROM chuanyun_day_log"+
+            " LEFT JOIN chuanyun_log ON chuanyun_day_log.parent_object_id = chuanyun_log.object_id WHERE chuanyun_log.user_id = ? ORDER BY day_log_date",nativeQuery = true)
+    List<ChuanyunWorkHourDO> getSelfWorkHour(String userId);
+
+    @Query(value="SELECT SUM(chuanyun_day_log.hours_worked) AS hours_worked,chuanyun_day_log.project_id,chuanyun_log.user_id,chuanyun_day_log.day_log_date FROM chuanyun_day_log"+
+            " LEFT JOIN chuanyun_log ON chuanyun_day_log.parent_object_id = chuanyun_log.object_id WHERE chuanyun_log.user_id = ? AND chuanyun_day_log.day_log_date =? GROUP BY chuanyun_log.user_id,chuanyun_day_log.day_log_date",nativeQuery = true)
+    ChuanyunWorkHourDO getDayWorkHour(String userId, LocalDateTime day);
+}

+ 39 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunSelfWorkHourDO.java

@@ -0,0 +1,39 @@
+package com.galaxis.manatee.entity.chuanyun.data.object;
+
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.galaxis.manatee.util.ChuanyunLocalDateTimeDeserializer;
+import com.galaxis.manatee.util.ChuanyunLocalDateTimeSerializer;
+import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
+import org.hibernate.annotations.GenericGenerator;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+@Slf4j
+@Data
+@Entity(name = "CHUANYUN_SELF_WORK_HOUR")
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class ChuanyunSelfWorkHourDO {
+
+    @Id
+    @GeneratedValue(generator = "idGeneratorUser")
+    @GenericGenerator(name ="idGeneratorUser" ,strategy="com.galaxis.capsule.util.GalaxisIdGenerator")
+    private Long objectId;
+
+    private String userId;
+
+    private String projectId;
+
+    @JsonSerialize(using = ChuanyunLocalDateTimeSerializer.class)
+    @JsonDeserialize(using = ChuanyunLocalDateTimeDeserializer.class)
+    private LocalDateTime dayLogDate;
+
+    private BigDecimal standardWorkHour;
+}

+ 33 - 0
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunWorkHourDO.java

@@ -0,0 +1,33 @@
+package com.galaxis.manatee.entity.chuanyun.data.object;
+
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.galaxis.manatee.util.ChuanyunLocalDateTimeDeserializer;
+import com.galaxis.manatee.util.ChuanyunLocalDateTimeSerializer;
+import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
+
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+@Slf4j
+@Data
+@Entity
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class ChuanyunWorkHourDO {
+
+    @Id
+    private String userId;
+
+    private String projectId;
+
+    @JsonSerialize(using = ChuanyunLocalDateTimeSerializer.class)
+    @JsonDeserialize(using = ChuanyunLocalDateTimeDeserializer.class)
+    private LocalDateTime dayLogDate;
+
+    private BigDecimal hoursWorked;
+}

文件差异内容过多而无法显示
+ 49 - 1
src/main/java/com/galaxis/manatee/task/ChuanyunProjectScheduledTask.java