7 Commits 18fe9f64ff ... b9bebfa558

Author SHA1 Message Date
  LiRong b9bebfa558 志愿者设置时间的查询的bug 3 months ago
  LiRong a16623bf94 志愿者订单新增实际开始与实际结束时间 3 months ago
  LiRong 84a9c3aeea bug修改,订单申请退款后,小订单状态也改成申请退款中 3 months ago
  LiRong 67d583c772 地址新增校验,经纬度与代码不可以为空值 3 months ago
  LiRong 0d964c939a Merge remote-tracking branch 'origin/dev-1.1.0' into dev-1.1.0 3 months ago
  LiRong 66e7d7ddae Merge remote-tracking branch 'origin/dev-1.1.0' into dev-1.1.0 3 months ago
  LiRong 3185c2a18c 如果当前没有任何区域,那么就创建主区域金邻助家 3 months ago

+ 3 - 1
leromro-core/src/main/java/com/leromro/core/controller/AddressController.java

@@ -23,6 +23,8 @@ import com.leromro.core.domain.Address;
 import com.leromro.core.service.IAddressService;
 import com.leromro.common.core.page.TableDataInfo;
 
+import javax.validation.Valid;
+
 /**
  * 受服务地址Controller
  * 
@@ -96,7 +98,7 @@ public class AddressController extends BaseController
 /*    @PreAuthorize("@ss.hasPermi('core:address:add')")*/
     @Log(title = "新增受服务地址", businessType = BusinessType.INSERT)
     @PostMapping
-    public AjaxResult add(@RequestBody Address address)
+    public AjaxResult add(@Valid @RequestBody Address address)
     {
         return toAjax(addressService.insertAddress(address));
     }

+ 13 - 0
leromro-core/src/main/java/com/leromro/core/domain/Address.java

@@ -10,6 +10,8 @@ import io.swagger.annotations.ApiModelProperty;
 import com.leromro.common.annotation.Excel;
 import com.leromro.common.core.domain.BaseEntity;
 
+import javax.validation.constraints.NotNull;
+
 /**
  * 受服务地址对象 l_address
  * 
@@ -39,11 +41,13 @@ public class Address extends BaseEntity
     /** 联系人号码 */
     @TableField("telephone")
     @ApiModelProperty("联系人号码")
+    @NotNull(message = "手机号不能为空")
     private String telephone;
 
     /** 收货人姓名 */
     @TableField("name")
     @ApiModelProperty("收货人姓名")
+    @NotNull(message = "收货人姓名不能为空")
     private String name;
 
     /** 收货人姓名 */
@@ -59,36 +63,43 @@ public class Address extends BaseEntity
     /** 省级区划编号 */
     @TableField("province_code")
     @ApiModelProperty("省级区划编号")
+    @NotNull(message = "省级区划不能为空")
     private String provinceCode;
 
     /** 省级名称 */
     @TableField("province_name")
     @ApiModelProperty("省级名称")
+    @NotNull(message = "省级名称不能为空")
     private String provinceName;
 
     /** 市级编号 */
     @TableField("city_code")
     @ApiModelProperty("市级编号")
+    @NotNull(message = "市级编号不能为空")
     private String cityCode;
 
     /** 市级名称 */
     @TableField("city_name")
     @ApiModelProperty("市级名称")
+    @NotNull(message = "市级名称不能为空")
     private String cityName;
 
     /** 区级区划编号 */
     @TableField("district_code")
     @ApiModelProperty("区级区划编号")
+    @NotNull(message = "区划编号不能为空")
     private String districtCode;
 
     /** 区级名称 */
     @TableField("district_name")
     @ApiModelProperty("区级名称")
+    @NotNull(message = "区级名称不能为空")
     private String districtName;
 
     /** 详细地址 */
     @TableField("address")
     @ApiModelProperty("详细地址")
+    @NotNull(message = "收货地址不能为空")
     private String address;
 
     /** 详细地址 */
@@ -99,11 +110,13 @@ public class Address extends BaseEntity
     /** 详细地址 */
     @TableField("longitude")
     @ApiModelProperty("经度")
+    @NotNull(message = "经度位置信息不能为空")
     private String longitude;
 
     /** 详细地址 */
     @TableField("latitude")
     @ApiModelProperty("纬度")
+    @NotNull(message = "纬度位置信息不能为空")
     private String latitude;
 
     /** 是否为默认地址 0否 1是 */

+ 10 - 0
leromro-core/src/main/java/com/leromro/core/domain/vo/AppSecoundOrderInfoVO.java

@@ -11,6 +11,7 @@ import lombok.NoArgsConstructor;
 
 import java.math.BigDecimal;
 import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.time.LocalTime;
 
 @Data
@@ -78,6 +79,12 @@ public class AppSecoundOrderInfoVO {
     @ApiModelProperty("预计结束时间")
     private LocalTime workEndTime;
 
+    @ApiModelProperty("服务实际开始时间")
+    private LocalDateTime serviceStartTime;
+
+    @ApiModelProperty("服务实际结束时间")
+    private LocalDateTime serviceEndTime;
+
     @ApiModelProperty("单次服务数量")
     private Long singleQuantity;
 
@@ -147,4 +154,7 @@ public class AppSecoundOrderInfoVO {
     @TableField("out_trade_no")
     @ApiModelProperty("业务单号")
     private String outTradeNo;
+
+    @ApiModelProperty("头像")
+    private String avatar;
 }

+ 4 - 0
leromro-core/src/main/java/com/leromro/core/facade/VolunteerWorkDateFacade.java

@@ -20,6 +20,7 @@ import java.time.LocalTime;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 @Service
@@ -67,6 +68,9 @@ public class VolunteerWorkDateFacade {
             }
             list.add(vo);
             startTime = startTime.plusMinutes(30);
+            if(Objects.equals(startTime,  LocalTime.MIDNIGHT)){
+                break;
+            }
         }
         return R.ok(list);
     }

+ 8 - 5
leromro-core/src/main/java/com/leromro/core/service/impl/OrderRefundServiceImpl.java

@@ -195,11 +195,14 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
             if (secondOrderList.size() <= 0){
                 throw new RuntimeException("订单已全部开始,不可退款");
             }
+            List<Long> secondOrderIdList = secondOrderList.stream().map(SecondOrder::getSecondOrderId).collect(Collectors.toList());
             orderRefund.setStatus("0");
             orderRefund.setRefundAmount(mainOrders.getServiceOnePrice().multiply(BigDecimal.valueOf(mainOrders.getSingleQuantity())).multiply(new BigDecimal(mainOrders.getTotalTimes() - secondOrderList.size())));
             this.save(orderRefund);
-            UpdateWrapper<MainOrders> mainOrderUpdateWrapper = new UpdateWrapper<MainOrders>().eq("main_order_id", mainOrderId).set("order_status", "5");
+            UpdateWrapper<MainOrders> mainOrderUpdateWrapper = new UpdateWrapper<MainOrders>().eq("main_order_id", secondOrderIdList).set("order_status", "5");
             mainOrdersMapper.update(null, mainOrderUpdateWrapper);
+            UpdateWrapper<SecondOrder> secondOrderUpdateWrapper = new UpdateWrapper<SecondOrder>().in("second_order_id", mainOrderId).set("order_status", "5");
+            secondOrdersMapper.update(null, secondOrderUpdateWrapper);
             return AjaxResult.success("已提交申请");
         } else if (mainOrders.getOrderStatus().equals("4") || mainOrders.getOrderStatus().equals("8")) {
             return AjaxResult.success("订单已全部完成,不可退款");
@@ -286,7 +289,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
         QueryWrapper<MainOrders> mainOrdersQueryWrapper = new QueryWrapper<MainOrders>().eq("main_order_id", mainOrderId);
         MainOrders mainOrders = mainOrdersMapper.selectOne(mainOrdersQueryWrapper);
         //查询要修改的小订单的列表
-        QueryWrapper<SecondOrder> secondOrderQueryWrapper = new QueryWrapper<SecondOrder>().eq("main_order_id", mainOrderId).eq("order_status", "1");
+        QueryWrapper<SecondOrder> secondOrderQueryWrapper = new QueryWrapper<SecondOrder>().eq("main_order_id", mainOrderId).eq("order_status", "5");
         List<SecondOrder> secondOrderList = secondOrdersMapper.selectList(secondOrderQueryWrapper);
 
         if (orderRefund.getStatus().equals("2")) {
@@ -338,8 +341,6 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
             //更改状态 更改更新时间,更改审批状态、退款钱数、原因、图片。
             orderRefund.setUpdateTime(DateTimeUtil.getNowTime());
             lOrderRefundMapper.updateLOrderRefund(orderRefund);
-
-
             //修改志愿者的工作时间以及日期
             updateVolunteerWorkDateAndTime(secondOrderList,mainOrders);
 
@@ -364,6 +365,8 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
             } else {
                 UpdateWrapper<MainOrders> mainOrdersMapperUpdateWrapper = new UpdateWrapper<MainOrders>().eq("main_order_id", mainOrderId).set("order_status", 3);
                 mainOrdersMapper.update(null, mainOrdersMapperUpdateWrapper);
+                UpdateWrapper<SecondOrder> secondOrdersMapperUpdateWrapper = new UpdateWrapper<SecondOrder>().eq("main_order_id", mainOrderId).eq("order_status",5).set("order_status", 1);
+                secondOrdersMapper.update(null, secondOrdersMapperUpdateWrapper);
             }
             lOrderRefundMapper.updateLOrderRefund(orderRefund);
         }
@@ -441,7 +444,7 @@ public class OrderRefundServiceImpl extends ServiceImpl<OrderRefundMapper, Order
         UpdateWrapper<MainOrders> mainOrderUpdateWrapper = new UpdateWrapper<MainOrders>().eq("main_order_id", mainOrderId).set("order_status",mainOrdersOrderStatus);
         mainOrdersMapper.update(null, mainOrderUpdateWrapper);
         //修改,小订单表
-        UpdateWrapper<SecondOrder> secondOrderUpdateWrapper = new UpdateWrapper<SecondOrder>().eq("main_order_id", mainOrderId).in("order_status","0","1").set("order_status", secondOrderStatus);
+        UpdateWrapper<SecondOrder> secondOrderUpdateWrapper = new UpdateWrapper<SecondOrder>().eq("main_order_id", mainOrderId).in("order_status","0","5").set("order_status", secondOrderStatus);
         secondOrdersMapper.update(null, secondOrderUpdateWrapper);
     }
 

+ 4 - 2
leromro-core/src/main/resources/mapper/core/SecondOrdersMapper.xml

@@ -530,10 +530,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             lso.second_order_id,lso.order_status,lso.volunteer_settlement_status,lso.volunteer_review,lso.volunteer_picture,lso.user_review
                 ,lso.user_picture,lso.work_date,lso.work_start_time,lso.work_end_time,lso.single_quantity,lso.work_number,lso.service_duration,
             lso.province_code,lso.province_name,lso.city_code,lso.city_name,lso.district_code,lso.district_name,lso.latitude,lso.longitude,lso.out_trade_no
-                ,lso.clothing_score,lso.ability_score,lso.quality_score,lso.protocol_score,lvi.business_tier_name businessTireName,lmo.client_telephone as clientPhoneNumber,lmo.client_name clientName,lso.remark,lso.score,
+                ,lso.clothing_score,lso.ability_score,lso.quality_score,lso.protocol_score,lvi.business_tier_name businessTireName,lmo.client_telephone as clientPhoneNumber,
+            lso.service_start_time,lso.service_end_time,lmo.client_name clientName,lso.remark,lso.score,
             CONCAT( IFNULL(lso.province_name, ''),IFNULL(lso.city_name, ''), IFNULL(lso.district_name, ''), IFNULL(lso.address, '') ) AS address,
             (select sd.dept_name from sys_dept sd where sd.dept_id = lso.area_distribution_id) as areaDistributionName,
-            (select sd.dept_name from  sys_dept sd where sd.dept_id = lso.service_center_id) as  serviceCenterName
+            (select sd.dept_name from  sys_dept sd where sd.dept_id = lso.service_center_id) as  serviceCenterName,
+            (select su.avatar from sys_user su where su.user_id = lmo.user_id) as avatar
         from (l_second_order lso left join l_volunteer_info lvi on lso.volunteer_info_id = lvi.volunteer_info_id )left join l_main_orders lmo on lmo.main_order_id = lso.main_order_id
         where lso.second_order_id = #{secondOrderId}
     </select>

+ 12 - 0
leromro-system/src/main/java/com/leromro/system/service/impl/SysDeptServiceImpl.java

@@ -51,6 +51,18 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
     @DataScope(deptAlias = "d")
     public List<SysDept> selectDeptList(SysDept dept)
     {
+        List<SysDept> sysDepts = deptMapper.selectDeptList(dept);
+        if (sysDepts.isEmpty()){
+            SysDept sysDept = new SysDept();
+            sysDept.setDeptName("金邻助家");
+            sysDept.setParentId(0L);
+            sysDept.setAreaType("0");
+            sysDept.setOrderNum(0);
+            sysDept.setStatus("0");
+            sysDept.setDelFlag("0");
+            deptMapper.insertDept(sysDept);
+        }
+
         return deptMapper.selectDeptList(dept);
     }