Explorar el Código

优化物业手机端首页统计

wuxw hace 2 años
padre
commit
38c703bda4

+ 24 - 0
java110-bean/src/main/java/com/java110/dto/workTask/WorkTaskDto.java

@@ -24,6 +24,8 @@ public class WorkTaskDto extends WorkPoolDto implements Serializable {
     private String state;
     private String state;
     private String stateName;
     private String stateName;
     private String endTime;
     private String endTime;
+
+    private String finishTime;
     private String communityId;
     private String communityId;
     private String storeId;
     private String storeId;
     private String taskId;
     private String taskId;
@@ -37,9 +39,15 @@ public class WorkTaskDto extends WorkPoolDto implements Serializable {
 
 
     private String createUserNameLike;
     private String createUserNameLike;
 
 
+    private String taskTimeout;
+
+
+
 
 
     private Date createTime;
     private Date createTime;
 
 
+
+
     private String statusCd = "0";
     private String statusCd = "0";
 
 
 
 
@@ -179,4 +187,20 @@ public class WorkTaskDto extends WorkPoolDto implements Serializable {
     public void setCreateUserNameLike(String createUserNameLike) {
     public void setCreateUserNameLike(String createUserNameLike) {
         this.createUserNameLike = createUserNameLike;
         this.createUserNameLike = createUserNameLike;
     }
     }
+
+    public String getFinishTime() {
+        return finishTime;
+    }
+
+    public void setFinishTime(String finishTime) {
+        this.finishTime = finishTime;
+    }
+
+    public String getTaskTimeout() {
+        return taskTimeout;
+    }
+
+    public void setTaskTimeout(String taskTimeout) {
+        this.taskTimeout = taskTimeout;
+    }
 }
 }

+ 18 - 0
java110-bean/src/main/java/com/java110/po/workTask/WorkTaskPo.java

@@ -39,6 +39,10 @@ public class WorkTaskPo implements Serializable {
     private String workId;
     private String workId;
     private String staffId;
     private String staffId;
 
 
+    private String finishTime;
+
+    private String taskTimeout;
+
     public String getStaffName() {
     public String getStaffName() {
         return staffName;
         return staffName;
     }
     }
@@ -119,5 +123,19 @@ public class WorkTaskPo implements Serializable {
         this.staffId = staffId;
         this.staffId = staffId;
     }
     }
 
 
+    public String getFinishTime() {
+        return finishTime;
+    }
+
+    public void setFinishTime(String finishTime) {
+        this.finishTime = finishTime;
+    }
+
+    public String getTaskTimeout() {
+        return taskTimeout;
+    }
 
 
+    public void setTaskTimeout(String taskTimeout) {
+        this.taskTimeout = taskTimeout;
+    }
 }
 }

+ 13 - 1
java110-db/src/main/resources/mapper/oa/WorkTaskV1ServiceDaoImplMapper.xml

@@ -24,7 +24,7 @@
         td.`name` stateName,
         td.`name` stateName,
         wp.work_cycle workCycle,wp.create_user_id
         wp.work_cycle workCycle,wp.create_user_id
         createUserId,wp.create_user_name createUserName,wp.work_name workName,wp.wt_id wtId,wp.create_user_tel createUserTel,
         createUserId,wp.create_user_name createUserName,wp.work_name workName,wp.wt_id wtId,wp.create_user_tel createUserTel,
-        wt.type_name typeName
+        wt.type_name typeName,t.finish_time finishTime,t.task_timeout taskTimeout
         from work_task t
         from work_task t
         left join t_dict td on t.state = td.status_cd and td.table_name = 'work_pool' and td.table_columns = 'state'
         left join t_dict td on t.state = td.status_cd and td.table_name = 'work_pool' and td.table_columns = 'state'
         left join work_pool wp on t.work_id = wp.work_id and wp.status_cd = '0'
         left join work_pool wp on t.work_id = wp.work_id and wp.status_cd = '0'
@@ -76,6 +76,9 @@
         <if test="staffId !=null and staffId != ''">
         <if test="staffId !=null and staffId != ''">
             and t.staff_id= #{staffId}
             and t.staff_id= #{staffId}
         </if>
         </if>
+        <if test="taskTimeout !=null and taskTimeout != ''">
+            and t.task_timeout= #{taskTimeout}
+        </if>
         <if test="queryStartTime !=null and queryStartTime != ''">
         <if test="queryStartTime !=null and queryStartTime != ''">
             and t.create_time &gt; #{queryStartTime}
             and t.create_time &gt; #{queryStartTime}
         </if>
         </if>
@@ -108,6 +111,12 @@
         <if test="endTime !=null and endTime != ''">
         <if test="endTime !=null and endTime != ''">
             , t.end_time= #{endTime}
             , t.end_time= #{endTime}
         </if>
         </if>
+        <if test="finishTime !=null and finishTime != ''">
+            , t.finish_time = #{finishTime}
+        </if>
+        <if test="taskTimeout !=null and taskTimeout != ''">
+            , t.task_timeout= #{taskTimeout}
+        </if>
 
 
         <if test="staffId !=null and staffId != ''">
         <if test="staffId !=null and staffId != ''">
             , t.staff_id= #{staffId}
             , t.staff_id= #{staffId}
@@ -183,6 +192,9 @@
         <if test="staffId !=null and staffId != ''">
         <if test="staffId !=null and staffId != ''">
             and t.staff_id= #{staffId}
             and t.staff_id= #{staffId}
         </if>
         </if>
+        <if test="taskTimeout !=null and taskTimeout != ''">
+            and t.task_timeout= #{taskTimeout}
+        </if>
         <if test="queryStartTime !=null and queryStartTime != ''">
         <if test="queryStartTime !=null and queryStartTime != ''">
             and t.create_time &gt; #{queryStartTime}
             and t.create_time &gt; #{queryStartTime}
         </if>
         </if>

+ 17 - 5
service-oa/src/main/java/com/java110/oa/cmd/work/FinishWorkTaskCmd.java

@@ -23,11 +23,13 @@ import com.java110.po.workPoolFile.WorkPoolFilePo;
 import com.java110.po.workTask.WorkTaskPo;
 import com.java110.po.workTask.WorkTaskPo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.Assert;
+import com.java110.utils.util.DateUtil;
 import com.java110.utils.util.ListUtil;
 import com.java110.utils.util.ListUtil;
 import com.java110.utils.util.StringUtil;
 import com.java110.utils.util.StringUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 
 
 import java.text.ParseException;
 import java.text.ParseException;
+import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
 @Java110Cmd(serviceCode = "work.finishWorkTask")
 @Java110Cmd(serviceCode = "work.finishWorkTask")
@@ -118,12 +120,22 @@ public class FinishWorkTaskCmd extends Cmd {
      */
      */
     private void doFinish(JSONObject reqJson, WorkTaskDto workTaskDto) {
     private void doFinish(JSONObject reqJson, WorkTaskDto workTaskDto) {
 
 
+        Date endTime = DateUtil.getDateFromStringA(workTaskDto.getEndTime());
+
+        String taskTimeout = "N";
+        //todo 工单已经超时
+        if(endTime.before(DateUtil.getCurrentDate())){
+            taskTimeout = "Y";
+        }
+
         //todo 完成任务
         //todo 完成任务
 
 
         WorkTaskPo workTaskPo = new WorkTaskPo();
         WorkTaskPo workTaskPo = new WorkTaskPo();
         workTaskPo.setState(WorkPoolDto.STATE_COMPLETE);
         workTaskPo.setState(WorkPoolDto.STATE_COMPLETE);
         workTaskPo.setTaskId(workTaskDto.getTaskId());
         workTaskPo.setTaskId(workTaskDto.getTaskId());
         workTaskPo.setStoreId(workTaskDto.getStoreId());
         workTaskPo.setStoreId(workTaskDto.getStoreId());
+        workTaskPo.setFinishTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+        workTaskPo.setTaskTimeout(taskTimeout);
         workTaskV1InnerServiceSMOImpl.updateWorkTask(workTaskPo);
         workTaskV1InnerServiceSMOImpl.updateWorkTask(workTaskPo);
 
 
 
 
@@ -143,12 +155,12 @@ public class FinishWorkTaskCmd extends Cmd {
         workEventDto.setTaskId(workTaskDto.getTaskId());
         workEventDto.setTaskId(workTaskDto.getTaskId());
         workEventDto.setWorkId(workTaskDto.getWorkId());
         workEventDto.setWorkId(workTaskDto.getWorkId());
         workEventDto.setOrderByDesc("desc");
         workEventDto.setOrderByDesc("desc");
-       List<WorkEventDto> workEventDtos = workEventV1InnerServiceSMOImpl.queryWorkEvents(workEventDto);
-       if(!ListUtil.isNull(workEventDtos)){
-           preStaffId = workEventDtos.get(0).getStaffId();
-           preStaffName = workEventDtos.get(0).getStaffName();
+        List<WorkEventDto> workEventDtos = workEventV1InnerServiceSMOImpl.queryWorkEvents(workEventDto);
+        if (!ListUtil.isNull(workEventDtos)) {
+            preStaffId = workEventDtos.get(0).getStaffId();
+            preStaffName = workEventDtos.get(0).getStaffName();
 
 
-       }
+        }
 
 
         //todo 保存事件
         //todo 保存事件
         WorkEventPo workEventPo = new WorkEventPo();
         WorkEventPo workEventPo = new WorkEventPo();