Browse Source

批量处理借口修改

anderx 1 year ago
parent
commit
fd7fc26fd5

+ 48 - 26
src/main/java/com/goafanti/order/service/impl/OrderProjectServiceImpl.java

@@ -2069,8 +2069,9 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 	@Override
 	public void pushProjectCompleteDate() {
 		List<TOrderTask> tOrderTasks = tOrderTaskMapper.selectAll();
+//		List<TOrderTask> tOrderTasks = tOrderTaskMapper.selectTasksByTid(2272);
 		for (TOrderTask e : tOrderTasks) {
-			 updateProjectCompleteDate(e,0);
+		updateProjectCompleteDate(e,0);
 		}
 	}
 
@@ -2080,28 +2081,26 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 	 * @param type =0 是批量处理会修改  =1是修改属性,外部一起修改
 	 */
 	private void  updateProjectCompleteDate(TOrderTask e ,Integer type) {
-		if (StringUtils.isNotEmpty(e.getTimeRecord())) {
 			ObjectMapper mapper = new ObjectMapper();
 			try {
-				Map map = mapper.readValue(e.getTimeRecord(), Map.class);
-
+				Map map =null;
+				if(StringUtils.isNotBlank(e.getTimeRecord()))map = mapper.readValue(e.getTimeRecord(), Map.class);
 				String[] str={"4","5","6","7","8","9","10","11","13","14","15","16","17","18","19","20","27"};
 				String date = null;
 				boolean flag = false;
 				for (String s : str) {
 					//判定时间是否为空
 					if (StringUtils.isEmpty(date)){
-						String s1 = pushStr(s, map);
-						if (s1!=null)date=s1;
-					}
-					//比对类型是不是完成状态
-					for (String string : str) {
-                        if (string.equals(s)) {
-                            flag = true;
-                            break;
+                        String s1 = null;
+                        if (map != null) {
+                            s1 = pushStr(s, map);
+							if (s1!=null)date=s1;
                         }
 					}
-
+					if (Integer.parseInt(s)==e.getProjectStatus()) {
+						flag = true;
+						break;
+					}
 				}
 				//如果是完成则修改成完成
 				if(flag){
@@ -2109,35 +2108,58 @@ public class OrderProjectServiceImpl extends BaseMybatisDao<TOrderTaskMapper> im
 					Integer sort = orderTaskDetail.getSort();
 					if (type==1){
 						e.setCompleteStatus(1);
-						e.setCompleteDate(DateUtils.parseDate(date));
+						if (date !=null)e.setCompleteDate(DateUtils.parseDate(date));
 						if (sort==3||sort==6||sort==9){
-							e.setScoreStatus(1);
+							// 创建一个SimpleDateFormat对象用于解析日期字符串
+							SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+							// 解析字符串"2024-01-01"为Date对象
+							Date targetDate = sdf.parse("2024-01-01");
+							// 使用compareTo方法比较两个日期
+							int result=0;
+							if (e.getTaskDistributionTime()!=null){
+								result = targetDate.compareTo(e.getTaskDistributionTime());
+								//2024-01-01之后派单返回-1
+								if (result <0){
+									e.setScoreStatus(1);
+								}else {
+									e.setScoreStatus(0);
+								}
+							}
 							taskScoreService.updateTOrderNewByTid(e.getId());
 						}
 					}else {
 						TOrderTask t=new TOrderTask();
 						t.setId(e.getId());
+
 						t.setCompleteStatus(1);
-						t.setCompleteDate(DateUtils.parseDate(date));
+						if (date !=null)e.setCompleteDate(DateUtils.parseDate(date));
 						if (sort==3||sort==6||sort==9){
-							t.setScoreStatus(1);
+							// 创建一个SimpleDateFormat对象用于解析日期字符串
+							SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+							// 解析字符串"2024-01-01"为Date对象
+							Date targetDate = sdf.parse("2024-01-01");
+							// 使用compareTo方法比较两个日期
+							int result=0;
+							if (e.getTaskDistributionTime()!=null){
+								result = targetDate.compareTo(e.getTaskDistributionTime());
+								//2024-01-01之后派单返回-1
+								if (result <0){
+									t.setScoreStatus(1);
+								}else {
+									t.setScoreStatus(0);
+								}
+							}
+
 							taskScoreService.updateTOrderNewByTid(e.getId());
 						}
 						tOrderTaskMapper.update(t);
 					}
-					//计算会员评分
-					if (sort==6){
-
-					}else {
-
-					}
 				}
-			} catch (JsonProcessingException ex) {
+			} catch (JsonProcessingException | ParseException ex) {
 				throw new RuntimeException(ex);
 			}
-		}
 
-	}
+    }
 
 	private String pushStr(String s,Map map) {
 		String date=null;

+ 0 - 1
src/main/java/com/goafanti/order/service/impl/TaskScoreServiceImpl.java

@@ -180,7 +180,6 @@ public class TaskScoreServiceImpl extends BaseMybatisDao<TaskScoreMapper> implem
     @Override
     public void updateTOrderNewByTid(Integer tid) {
         List<TOrderTask> tOrderTasks = tOrderTaskMapper.selectTasksByTid(tid);
-
         if (!tOrderTasks.isEmpty()){
             String orderNo=null;
             int count=0;