Explorar el Código

用户评价算钱,以及收货地址

LiRong hace 1 mes
padre
commit
4bf4ecf12e

+ 70 - 36
leromro-core/src/main/java/com/leromro/core/controller/AddressController.java

@@ -2,13 +2,10 @@ package com.leromro.core.controller;
 
 import java.util.List;
 
-
 import com.leromro.common.utils.SecurityUtils;
-import com.leromro.core.domain.Address;
-import com.leromro.core.service.AddressService;
 import io.swagger.annotations.Api;
-import com.leromro.common.core.domain.R;
 import io.swagger.annotations.ApiOperation;
+import com.leromro.common.core.domain.R;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -22,85 +19,122 @@ import com.leromro.common.annotation.Log;
 import com.leromro.common.core.controller.BaseController;
 import com.leromro.common.core.domain.AjaxResult;
 import com.leromro.common.enums.BusinessType;
-
+import com.leromro.core.domain.Address;
+import com.leromro.core.service.IAddressService;
+import com.leromro.common.core.page.TableDataInfo;
 
 /**
  * 受服务地址Controller
  * 
  * @author ruoyi
- * @date 2025-04-08
+ * @date 2025-04-18
  */
 @RestController
 @Api(tags = "受服务地址")
-@RequestMapping("/core/users/address")
+@RequestMapping("/core/user/address")
 public class AddressController extends BaseController
 {
     @Autowired
-    private AddressService addressService;
+    private IAddressService addressService;
 
     /**
      * 查询受服务地址列表
-     * 已测试
+     * 传入传入userI
      */
-    @ApiOperation(value = "查询自己的收货地址列表",notes = "什么都不传")
-   // @PreAuthorize("@ss.hasPermi('system:address:list')")
+    @ApiOperation("查询自己的受服务地址列表")
+/*    @PreAuthorize("@ss.hasPermi('core:address:list')")*/
     @GetMapping("/list")
-    public R<List<Address>> selectAddressList()
+    public TableDataInfo<Address> list(@RequestBody Address address)
     {
+        startPage();
         Long userId = SecurityUtils.getUserId();
-        List<Address> list = addressService.selectLAddressList(userId);
-        return R.ok(list);
+        address.setUserId(userId);
+        List<Address> list = addressService.selectAddressList(address);
+        return getDataTable(list);
     }
 
+    /**
+     * 查询受服务地址列表
+     */
+    @ApiOperation("设置默认地址")
+/*    @PreAuthorize("@ss.hasPermi('core:address:list')")*/
+    @Log(title = "设置默认地址", businessType = BusinessType.UPDATE)
+    @GetMapping("/setDefaultAddress")
+    public AjaxResult setDefaultAddress(@RequestBody Address address)
+    {
+        return addressService.setDefaultAddress(address);
+    }
+    /**
+     * 查询受默认服务地址列表
+     */
+    @ApiOperation("查询默认地址")
+/*    @PreAuthorize("@ss.hasPermi('core:address:list')")*/
+    @GetMapping("/selectDefaultAddress")
+    public R<Address> selectDefaultAddress()
+    {
+        return addressService.selectDefalutAddress();
+    }
+
+
+
+    /**
+     * 导出受服务地址列表
+     */
+    /*@ApiOperation("导出受服务地址列表")
+*//*    @PreAuthorize("@ss.hasPermi('core:address:export')")*//*
+    @Log(title = "受服务地址", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, Address address)
+    {
+        List<Address> list = addressService.selectAddressList(address);
+        ExcelUtil<Address> util = new ExcelUtil<Address>(Address.class);
+        util.exportExcel(response, list, "受服务地址数据");
+    }*/
+
     /**
      * 获取受服务地址详细信息
-     * 未测试
      */
-    @ApiOperation("获取受服务地址详细信息")
-    // @PreAuthorize("@ss.hasPermi('system:address:query')")
+    @ApiOperation("获取受服务地址详细信息 回显")
+/*    @PreAuthorize("@ss.hasPermi('core:address:query')")*/
     @GetMapping(value = "/{addressId}")
-    public R<Address> getAddressInfo(@PathVariable("addressId") Long addressId)
+    public R<Address> getInfo(@PathVariable("addressId") Long addressId)
     {
-        return R.ok(addressService.selectLAddressByAddressId(addressId));
+        return R.ok(addressService.selectAddressByAddressId(addressId));
     }
 
     /**
      * 新增受服务地址
-     * 已测试
      */
     @ApiOperation("新增受服务地址")
-   // @PreAuthorize("@ss.hasPermi('system:address:add')")
-    @Log(title = "受服务地址", businessType = BusinessType.INSERT)
-    @PutMapping("/newAddress")
-    public AjaxResult newAddress(@RequestBody Address address)
-    {   Long userId = SecurityUtils.getUserId();
-        address.setUserId(userId);
-        return toAjax(addressService.insertLAddress(address));
+/*    @PreAuthorize("@ss.hasPermi('core:address:add')")*/
+    @Log(title = "新增受服务地址", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody Address address)
+    {
+        return toAjax(addressService.insertAddress(address));
     }
 
     /**
      * 修改受服务地址
-     * 已测试
      */
     @ApiOperation("修改受服务地址")
-   // @PreAuthorize("@ss.hasPermi('system:address:edit')")
+   /* @PreAuthorize("@ss.hasPermi('core:address:edit')")*/
     @Log(title = "受服务地址", businessType = BusinessType.UPDATE)
-    @PostMapping("/updateAddress")
-    public AjaxResult updateAddress(@RequestBody Address address)
+    @PutMapping
+    public AjaxResult edit(@RequestBody Address address)
     {
-        return toAjax(addressService.updateLAddress(address));
+        return toAjax(addressService.updateAddress(address));
     }
 
     /**
      * 删除受服务地址
-     * 已测试
      */
     @ApiOperation("删除受服务地址")
-  //  @PreAuthorize("@ss.hasPermi('system:address:remove')")
+    /*@PreAuthorize("@ss.hasPermi('core:address:remove')")*/
     @Log(title = "受服务地址", businessType = BusinessType.DELETE)
 	@DeleteMapping("/{addressIds}")
-    public R<Integer> deleteAddress(@PathVariable Long[] addressIds)
+    public R<Integer> remove(@PathVariable Long[] addressIds)
     {
-        return R.ok(addressService.deleteLAddressByAddressIds(addressIds));
+        return R.ok(addressService.deleteAddressByAddressIds(addressIds));
     }
 }

+ 9 - 10
leromro-core/src/main/java/com/leromro/core/controller/OrdersController.java

@@ -14,7 +14,7 @@ import com.leromro.core.domain.dto.OrderRequestDTO;
 import com.leromro.core.domain.dto.UserOrderReviewDTO;
 import com.leromro.core.domain.vo.MainOrdersVO;
 import com.leromro.core.domain.vo.OrdersInfoVO;
-import com.leromro.core.service.AddressService;
+import com.leromro.core.service.IAddressService;
 import com.leromro.core.service.IMainOrderService;
 import com.leromro.core.service.ISecondOrderService;
 import com.leromro.core.service.IVolunteerInfoService;
@@ -42,7 +42,7 @@ public class OrdersController extends BaseController {
     @Autowired
     private ISecondOrderService secondOrderService;
     @Autowired
-    private AddressService addressService;
+    private IAddressService addressService;
     @Autowired
     private IVolunteerInfoService volunteerInfoService;
 
@@ -81,10 +81,10 @@ public class OrdersController extends BaseController {
         wrapper.eq("main_order_id", mainOrderId);
         MainOrders mainOrders = mainOrderService.list(wrapper).get(0);
         QueryWrapper<SecondOrder> wrapper1 = new QueryWrapper<>();
-        wrapper.eq("main_order_id", mainOrderId);
+        wrapper1.eq("main_order_id", mainOrderId);
         List<SecondOrder> list = secondOrderService.list(wrapper1);
         QueryWrapper<Address> addressQueryWrapper = new QueryWrapper<Address>().eq("address_id", mainOrders.getAddressId());
-        Address address = addressService.list(addressQueryWrapper).get(0);
+        Address address = addressService.getOne(addressQueryWrapper);
         QueryWrapper<VolunteerInfo> volunteerInfoQueryWrapper = new QueryWrapper<VolunteerInfo>().eq("volunteer_id", mainOrders.getVolunteerId()).eq("service_category",mainOrders.getServiceCategory());
         VolunteerInfo volunteerInfo = volunteerInfoService.list(volunteerInfoQueryWrapper).get(0);
         OrdersInfoVO ordersInfoVO = new OrdersInfoVO();
@@ -107,14 +107,13 @@ public class OrdersController extends BaseController {
     }
 
     /**
-     * 用户点击完成订单
+     * 用户点击完成订单 , 根据评价算钱。
      */
-    @ApiOperation(value = "用户评价订单",notes = "传入对象参数 seconderId,score,userReview userPicture")
+    @ApiOperation(value = "用户评价订单",notes = "传入对象参数 包含: seconderId, score, userReview, userPicture")
     @PostMapping("/userFinishOrder")
-    public AjaxResult userFinish (UserOrderReviewDTO reviewDTO) {
-        UpdateWrapper<SecondOrder> updateWrapper = new UpdateWrapper<SecondOrder>().eq("main_order_id", reviewDTO.getSecondOrderId())
-                .set("score",0).set("user_review",reviewDTO.getUserReview()).set("user_picture",reviewDTO.getUserPicture());
-        secondOrderService.update(updateWrapper);
+    public AjaxResult userFinish (@RequestBody UserOrderReviewDTO reviewDTO) {
+        secondOrderService.userFinish(reviewDTO);
+
         return AjaxResult.success();
     }
 

+ 51 - 21
leromro-core/src/main/java/com/leromro/core/domain/Address.java

@@ -3,6 +3,7 @@ package com.leromro.core.domain;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableField;
 import lombok.*;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -13,7 +14,7 @@ import com.leromro.common.core.domain.BaseEntity;
  * 受服务地址对象 l_address
  * 
  * @author ruoyi
- * @date 2025-04-08
+ * @date 2025-04-18
  */
 @Data
 @Builder
@@ -28,58 +29,87 @@ public class Address extends BaseEntity
 
     /** 主键 */
     @TableId(type = IdType.AUTO)
-    @ApiModelProperty("主键")
     private Long addressId;
 
     /** 用户id */
-    @Excel(name = "用户id")
+    @TableField("user_id")
     @ApiModelProperty("用户id")
     private Long userId;
 
     /** 联系人号码 */
-    @Excel(name = "联系人号码")
+    @TableField("telephone")
     @ApiModelProperty("联系人号码")
     private String telephone;
 
     /** 收货人姓名 */
-    @Excel(name = "收货人姓名")
+    @TableField("name")
     @ApiModelProperty("收货人姓名")
     private String name;
 
     /** 年龄 */
-    @Excel(name = "年龄")
+    @TableField("age")
     @ApiModelProperty("年龄")
-    private Long age;
+    private Integer age;
 
     /** 是否有传染病  0否  1是 */
-    @Excel(name = "是否有传染病  0否  1是")
+    @TableField("is_contagion")
     @ApiModelProperty("是否有传染病  0否  1是")
-    private Long isContagion;
+    private Integer isContagion;
 
     /** 传染病内容 */
-    @Excel(name = "传染病内容")
+    @TableField("have_contagion")
     @ApiModelProperty("传染病内容")
     private String haveContagion;
 
-    /** 地区 */
-    @Excel(name = "地区")
-    @ApiModelProperty("地区")
-    private String area;
+    /** 省级区划编号 */
+    @TableField("province_code")
+    @ApiModelProperty("省级区划编号")
+    private String provinceCode;
 
-    /** 地址 */
-    @Excel(name = "地址")
-    @ApiModelProperty("地址")
+    /** 省级名称 */
+    @TableField("province_name")
+    @ApiModelProperty("省级名称")
+    private String provinceName;
+
+    /** 市级编号 */
+    @TableField("city_code")
+    @ApiModelProperty("市级编号")
+    private String cityCode;
+
+    /** 市级名称 */
+    @TableField("city_name")
+    @ApiModelProperty("市级名称")
+    private String cityName;
+
+    /** 区级区划编号 */
+    @TableField("district_code")
+    @ApiModelProperty("区级区划编号")
+    private String districtCode;
+
+    /** 区级名称 */
+    @TableField("district_name")
+    @ApiModelProperty("区级名称")
+    private String districtName;
+
+    /** 详细地址 */
+    @TableField("address")
+    @ApiModelProperty("详细地址")
     private String address;
 
     /** 是否为默认地址 0否 1是 */
-    @Excel(name = "是否为默认地址 0否 1是")
+    @TableField("is_default")
     @ApiModelProperty("是否为默认地址 0否 1是")
-    private Long isDefault;
+    private Integer isDefault;
 
     /** 是否删除 0否 1是 */
-    @Excel(name = "是否删除 0否 1是")
+    @TableField("is_delete")
     @ApiModelProperty("是否删除 0否 1是")
-    private Long isDelete;
+    private Integer isDelete;
+
+    /** 标签 */
+    @TableField("label")
+    @ApiModelProperty("标签")
+    private String label;
 
 
 }

+ 1 - 1
leromro-core/src/main/java/com/leromro/core/domain/SecondOrder.java

@@ -129,7 +129,7 @@ public class SecondOrder extends BaseEntity
     /** 评分 */
     @Excel(name = "评分")
     @ApiModelProperty("评分")
-    private Long score;
+    private Integer score;
 
 
 

+ 14 - 7
leromro-core/src/main/java/com/leromro/core/mapper/AddressMapper.java

@@ -8,7 +8,7 @@ import com.leromro.core.domain.Address;
  * 受服务地址Mapper接口
  * 
  * @author ruoyi
- * @date 2025-04-08
+ * @date 2025-04-18
  */
 public interface AddressMapper extends BaseMapper<Address>
 {
@@ -18,8 +18,15 @@ public interface AddressMapper extends BaseMapper<Address>
      * @param addressId 受服务地址主键
      * @return 受服务地址
      */
-    public Address selectLAddressByAddressId(Long addressId);
+    public Address selectAddressByAddressId(Long addressId);
 
+    /**
+     * 查询受服务地址列表
+     * 
+     * @param address 受服务地址
+     * @return 受服务地址集合
+     */
+    public List<Address> selectAddressList(Address address);
 
     /**
      * 新增受服务地址
@@ -27,7 +34,7 @@ public interface AddressMapper extends BaseMapper<Address>
      * @param address 受服务地址
      * @return 结果
      */
-    public int insertLAddress(Address address);
+    public int insertAddress(Address address);
 
     /**
      * 修改受服务地址
@@ -35,7 +42,7 @@ public interface AddressMapper extends BaseMapper<Address>
      * @param address 受服务地址
      * @return 结果
      */
-    public int updateLAddress(Address address);
+    public int updateAddress(Address address);
 
     /**
      * 删除受服务地址
@@ -43,7 +50,7 @@ public interface AddressMapper extends BaseMapper<Address>
      * @param addressId 受服务地址主键
      * @return 结果
      */
-    public int deleteLAddressByAddressId(Long addressId);
+    public int deleteAddressByAddressId(Long addressId);
 
     /**
      * 批量删除受服务地址
@@ -51,7 +58,7 @@ public interface AddressMapper extends BaseMapper<Address>
      * @param addressIds 需要删除的数据主键集合
      * @return 结果
      */
-    public int deleteLAddressByAddressIds(Long[] addressIds);
+    public int deleteAddressByAddressIds(Long[] addressIds);
 
-    List<Address> selectByUserId(Long userId);
+    void updateDefaultAddress(Address address);
 }

+ 16 - 12
leromro-core/src/main/java/com/leromro/core/service/AddressService.java

@@ -1,18 +1,18 @@
 package com.leromro.core.service;
 
-
+import java.util.List;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.leromro.common.core.domain.AjaxResult;
+import com.leromro.common.core.domain.R;
 import com.leromro.core.domain.Address;
 
-import java.util.List;
-
 /**
  * 受服务地址Service接口
  * 
  * @author ruoyi
- * @date 2025-04-08
+ * @date 2025-04-18
  */
-public interface AddressService extends IService<Address>
+public interface IAddressService extends IService<Address>
 {
     /**
      * 查询受服务地址
@@ -20,15 +20,15 @@ public interface AddressService extends IService<Address>
      * @param addressId 受服务地址主键
      * @return 受服务地址
      */
-    public Address selectLAddressByAddressId(Long addressId);
+    public Address selectAddressByAddressId(Long addressId);
 
     /**
      * 查询受服务地址列表
      * 
-     * @param userId 受服务地址
+     * @param address 受服务地址
      * @return 受服务地址集合
      */
-    public List<Address> selectLAddressList(Long userId);
+    public List<Address> selectAddressList(Address address);
 
     /**
      * 新增受服务地址
@@ -36,7 +36,7 @@ public interface AddressService extends IService<Address>
      * @param address 受服务地址
      * @return 结果
      */
-    public Boolean insertLAddress(Address address);
+    public Boolean insertAddress(Address address);
 
     /**
      * 修改受服务地址
@@ -44,7 +44,7 @@ public interface AddressService extends IService<Address>
      * @param address 受服务地址
      * @return 结果
      */
-     Boolean updateLAddress(Address address);
+    public Boolean updateAddress(Address address);
 
     /**
      * 批量删除受服务地址
@@ -52,7 +52,7 @@ public interface AddressService extends IService<Address>
      * @param addressIds 需要删除的受服务地址主键集合
      * @return 结果
      */
-     int deleteLAddressByAddressIds(Long[] addressIds);
+    public int deleteAddressByAddressIds(Long[] addressIds);
 
     /**
      * 删除受服务地址信息
@@ -60,5 +60,9 @@ public interface AddressService extends IService<Address>
      * @param addressId 受服务地址主键
      * @return 结果
      */
-    public int deleteLAddressByAddressId(Long addressId);
+    public int deleteAddressByAddressId(Long addressId);
+
+    AjaxResult setDefaultAddress(Address address);
+
+    R<Address> selectDefalutAddress();
 }

+ 3 - 0
leromro-core/src/main/java/com/leromro/core/service/ISecondOrderService.java

@@ -3,6 +3,7 @@ package com.leromro.core.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.leromro.common.core.domain.AjaxResult;
 import com.leromro.core.domain.SecondOrder;
+import com.leromro.core.domain.dto.UserOrderReviewDTO;
 import com.leromro.core.domain.vo.VolunteerOrdersVO;
 
 import java.util.List;
@@ -11,4 +12,6 @@ public interface ISecondOrderService extends IService<SecondOrder> {
     List<VolunteerOrdersVO> selectOrderList(Long userId,Long orderStatus);
 
     AjaxResult volunteerFinishWork(SecondOrder secondOrder);
+
+    void userFinish(UserOrderReviewDTO reviewDTO);
 }

+ 55 - 19
leromro-core/src/main/java/com/leromro/core/service/impl/AddressServiceImpl.java

@@ -1,22 +1,28 @@
 package com.leromro.core.service.impl;
 
 import java.util.List;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.leromro.core.domain.Address;
+import com.leromro.common.core.domain.AjaxResult;
+import com.leromro.common.core.domain.R;
+import com.leromro.common.utils.SecurityUtils;
 import com.leromro.core.mapper.AddressMapper;
-import com.leromro.core.service.AddressService;
+import com.leromro.common.utils.DateUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-
+import com.leromro.core.mapper.AddressMapper;
+import com.leromro.core.domain.Address;
+import com.leromro.core.service.IAddressService;
 
 /**
  * 受服务地址Service业务层处理
  * 
  * @author ruoyi
- * @date 2025-04-08
+ * @date 2025-04-18
  */
 @Service
-public class AddressServiceImpl extends ServiceImpl<AddressMapper, Address> implements AddressService
+public class AddressServiceImpl extends ServiceImpl<AddressMapper, Address> implements IAddressService
 {
     @Autowired
     private AddressMapper addressMapper;
@@ -28,22 +34,23 @@ public class AddressServiceImpl extends ServiceImpl<AddressMapper, Address> impl
      * @return 受服务地址
      */
     @Override
-    public Address selectLAddressByAddressId(Long addressId)
+    public Address selectAddressByAddressId(Long addressId)
     {
-        return addressMapper.selectLAddressByAddressId(addressId);
+        return addressMapper.selectAddressByAddressId(addressId);
     }
 
     /**
-     * @param userId 受服务地址
-     * @return
+     * 查询受服务地址列表
+     * 
+     * @param address 受服务地址
+     * @return 受服务地址
      */
     @Override
-    public List<Address> selectLAddressList(Long userId) {
-
-        return addressMapper.selectByUserId(userId);
+    public List<Address> selectAddressList(Address address)
+    {
+        return addressMapper.selectAddressList(address);
     }
 
-
     /**
      * 新增受服务地址
      * 
@@ -51,8 +58,9 @@ public class AddressServiceImpl extends ServiceImpl<AddressMapper, Address> impl
      * @return 结果
      */
     @Override
-    public Boolean insertLAddress(Address address)
+    public Boolean insertAddress(Address address)
     {
+        address.setUserId(SecurityUtils.getUserId());
         return this.save(address);
     }
 
@@ -63,7 +71,7 @@ public class AddressServiceImpl extends ServiceImpl<AddressMapper, Address> impl
      * @return 结果
      */
     @Override
-    public Boolean updateLAddress(Address address)
+    public Boolean updateAddress(Address address)
     {
         return this.updateById(address);
     }
@@ -75,9 +83,9 @@ public class AddressServiceImpl extends ServiceImpl<AddressMapper, Address> impl
      * @return 结果
      */
     @Override
-    public int deleteLAddressByAddressIds(Long[] addressIds)
+    public int deleteAddressByAddressIds(Long[] addressIds)
     {
-        return addressMapper.deleteLAddressByAddressIds(addressIds);
+        return addressMapper.deleteAddressByAddressIds(addressIds);
     }
 
     /**
@@ -87,8 +95,36 @@ public class AddressServiceImpl extends ServiceImpl<AddressMapper, Address> impl
      * @return 结果
      */
     @Override
-    public int deleteLAddressByAddressId(Long addressId)
+    public int deleteAddressByAddressId(Long addressId)
     {
-        return addressMapper.deleteLAddressByAddressId(addressId);
+        return addressMapper.deleteAddressByAddressId(addressId);
+    }
+
+    /**
+     * @param address
+     * @return
+     */
+    @Override
+    public AjaxResult setDefaultAddress(Address address) {
+        //设置所有的 默认收货地址为0
+        Address oldAddress = new Address();
+        oldAddress.setIsDefault(0);
+        oldAddress.setUserId(SecurityUtils.getUserId());
+        addressMapper.updateDefaultAddress(address);
+        //设置当前收货地址为1
+        address.setIsDefault(1);
+        addressMapper.updateAddress(address);
+        return AjaxResult.success();
+    }
+
+    /**
+     * @return
+     */
+    @Override
+    public R<Address> selectDefalutAddress() {
+        Long userId = SecurityUtils.getUserId();
+        QueryWrapper<Address> defalutAddressQueryWrapper = new QueryWrapper<Address>().eq("user_id", userId).eq("is_default", 1);
+        Address address = addressMapper.selectOne(defalutAddressQueryWrapper);
+        return R.ok(address);
     }
 }

+ 44 - 1
leromro-core/src/main/java/com/leromro/core/service/impl/SecondOrdersServiceImpl.java

@@ -10,6 +10,7 @@ import com.leromro.core.domain.MainOrders;
 import com.leromro.core.domain.OrderFrozenFunds;
 import com.leromro.core.domain.SecondOrder;
 import com.leromro.core.domain.VolunteerAccount;
+import com.leromro.core.domain.dto.UserOrderReviewDTO;
 import com.leromro.core.domain.vo.VolunteerOrdersVO;
 import com.leromro.core.mapper.MainOrdersMapper;
 import com.leromro.core.mapper.OrderFrozenFundsMapper;
@@ -56,7 +57,7 @@ public class SecondOrdersServiceImpl extends ServiceImpl<SecondOrdersMapper, Sec
        // SecondOrder secondOrderInfo = secondOrdersMapper.selectById(secondOrderId);
         BigDecimal onePrice = secondOrderInfo.getServiceOnePrice();
         //默认平台佣金以及志愿者到手钱数
-        BigDecimal volunteerMoney = onePrice.multiply(new BigDecimal("0.70"));
+        BigDecimal volunteerMoney = onePrice.multiply(new BigDecimal("0.85"));
         BigDecimal platformBrokerage = onePrice.subtract(volunteerMoney);
         //计算结束冻结时间 默认开始时间+3天
         DateTime frozenStartTime = DateTimeUtil.getNowTime1();
@@ -94,4 +95,46 @@ public class SecondOrdersServiceImpl extends ServiceImpl<SecondOrdersMapper, Sec
         }
         return AjaxResult.success();
     }
+
+    /**
+     * @param reviewDTO
+     */
+    @Override
+    public void userFinish(UserOrderReviewDTO reviewDTO) {
+        //根据用户传来的评分 来设置需要计算的钱数
+        BigDecimal serviceOnePrice = reviewDTO.getServiceOnePrice();
+        BigDecimal volunteerMoney = serviceOnePrice.multiply(new BigDecimal("0.85"));
+        BigDecimal scoreMoney = BigDecimal.valueOf(0);
+        BigDecimal platformBrokerage = BigDecimal.valueOf(0);
+        Integer score = reviewDTO.getScore();
+        if  ( score.equals(1) ){
+            //  1星85%
+            scoreMoney = serviceOnePrice.multiply(new BigDecimal("0.85")).subtract(volunteerMoney);
+            platformBrokerage = serviceOnePrice.subtract(volunteerMoney).subtract(scoreMoney);
+        }
+        else if ( score.equals(2) ){
+            //  2星89%
+            scoreMoney = serviceOnePrice.multiply(new BigDecimal("0.89")).subtract(volunteerMoney);
+            platformBrokerage = serviceOnePrice.subtract(volunteerMoney).subtract(scoreMoney);
+        } else if (score.equals(3)) {
+            //  3星91%
+            scoreMoney = serviceOnePrice.multiply(new BigDecimal("0.91")).subtract(volunteerMoney);
+            platformBrokerage = serviceOnePrice.subtract(volunteerMoney).subtract(scoreMoney);
+        } else if (score.equals(4)) {
+            //  4星93%
+            scoreMoney = serviceOnePrice.multiply(new BigDecimal("0.93")).subtract(volunteerMoney);
+            platformBrokerage = serviceOnePrice.subtract(volunteerMoney).subtract(scoreMoney);
+        } else if (score.equals(5)) {
+            //  5星95%
+            scoreMoney = serviceOnePrice.multiply(new BigDecimal("0.95")).subtract(volunteerMoney);
+            platformBrokerage = serviceOnePrice.subtract(volunteerMoney).subtract(scoreMoney);
+        }
+        //修改冻结表:
+        UpdateWrapper<OrderFrozenFunds> orderFrozenFundsUpdateWrapper = new UpdateWrapper<OrderFrozenFunds>().eq("second_order_id", reviewDTO.getSecondOrderId()).set("platform_brokerage", platformBrokerage).set("score_money", scoreMoney).set("update_time", DateTimeUtil.getNowTime());
+        orderFrozenFundsMapper.update(null,orderFrozenFundsUpdateWrapper);
+        //更改订单状态:
+        UpdateWrapper<SecondOrder> updateWrapper = new UpdateWrapper<SecondOrder>().eq("second_order_id", reviewDTO.getSecondOrderId())
+                .set("score",score).set("user_review",reviewDTO.getUserReview()).set("user_picture",reviewDTO.getUserPicture());
+        secondOrdersMapper.update(null,updateWrapper);
+    }
 }

+ 56 - 21
leromro-core/src/main/resources/mapper/core/AddressMapper.xml

@@ -12,21 +12,29 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="age"    column="age"    />
         <result property="isContagion"    column="is_contagion"    />
         <result property="haveContagion"    column="have_contagion"    />
-        <result property="area"    column="area"    />
+        <result property="provinceCode"    column="province_code"    />
+        <result property="provinceName"    column="province_name"    />
+        <result property="cityCode"    column="city_code"    />
+        <result property="cityName"    column="city_name"    />
+        <result property="districtCode"    column="district_code"    />
+        <result property="districtName"    column="district_name"    />
         <result property="address"    column="address"    />
         <result property="isDefault"    column="is_default"    />
         <result property="isDelete"    column="is_delete"    />
+        <result property="label"    column="label"    />
         <result property="createTime"    column="create_time"    />
+        <result property="createBy"    column="create_by"    />
         <result property="updateTime"    column="update_time"    />
+        <result property="updateBy"    column="update_by"    />
         <result property="remark"    column="remark"    />
     </resultMap>
 
-    <sql id="selectLAddressVo">
-        select address_id, user_id, telephone, name, age, is_contagion, have_contagion, area, address, is_default, is_delete, create_time, update_time, remark from l_address
+    <sql id="selectAddressVo">
+        select address_id, user_id, telephone, name, age, is_contagion, have_contagion, province_code, province_name, city_code, city_name, district_code, district_name, address, is_default, is_delete, label, create_time, create_by, update_time, update_by, remark from l_address
     </sql>
 
-    <select id="selectLAddressList" parameterType="Address" resultMap="AddressResult">
-        <include refid="selectLAddressVo"/>
+    <select id="selectAddressList" parameterType="Address" resultMap="AddressResult">
+        <include refid="selectAddressVo"/>
         <where>  
             <if test="userId != null "> and user_id = #{userId}</if>
             <if test="telephone != null  and telephone != ''"> and telephone = #{telephone}</if>
@@ -34,25 +42,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="age != null "> and age = #{age}</if>
             <if test="isContagion != null "> and is_contagion = #{isContagion}</if>
             <if test="haveContagion != null  and haveContagion != ''"> and have_contagion = #{haveContagion}</if>
-            <if test="area != null  and area != ''"> and area = #{area}</if>
+            <if test="provinceCode != null  and provinceCode != ''"> and province_code = #{provinceCode}</if>
+            <if test="provinceName != null  and provinceName != ''"> and province_name like concat('%', #{provinceName}, '%')</if>
+            <if test="cityCode != null  and cityCode != ''"> and city_code = #{cityCode}</if>
+            <if test="cityName != null  and cityName != ''"> and city_name like concat('%', #{cityName}, '%')</if>
+            <if test="districtCode != null  and districtCode != ''"> and district_code = #{districtCode}</if>
+            <if test="districtName != null  and districtName != ''"> and district_name like concat('%', #{districtName}, '%')</if>
             <if test="address != null  and address != ''"> and address = #{address}</if>
             <if test="isDefault != null "> and is_default = #{isDefault}</if>
             <if test="isDelete != null "> and is_delete = #{isDelete}</if>
+            <if test="label != null  and label != ''"> and label = #{label}</if>
         </where>
     </select>
     
-    <select id="selectLAddressByAddressId" parameterType="Long" resultMap="AddressResult">
-        <include refid="selectLAddressVo"/>
+    <select id="selectAddressByAddressId" parameterType="Long" resultMap="AddressResult">
+        <include refid="selectAddressVo"/>
         where address_id = #{addressId}
     </select>
-    <select id="selectByUserId" resultType="com.leromro.core.domain.Address" parameterType="java.lang.Long">
-        <include refid="selectLAddressVo"/>
-        <where>
-            user_id = #{userId}
-        </where>
-    </select>
 
-    <insert id="insertLAddress" parameterType="Address" useGeneratedKeys="true" keyProperty="addressId">
+    <insert id="insertAddress" parameterType="Address" useGeneratedKeys="true" keyProperty="addressId">
         insert into l_address
         <trim prefix="(" suffix=")" suffixOverrides=",">
             <if test="userId != null">user_id,</if>
@@ -61,12 +69,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="age != null">age,</if>
             <if test="isContagion != null">is_contagion,</if>
             <if test="haveContagion != null">have_contagion,</if>
-            <if test="area != null">area,</if>
+            <if test="provinceCode != null">province_code,</if>
+            <if test="provinceName != null">province_name,</if>
+            <if test="cityCode != null">city_code,</if>
+            <if test="cityName != null">city_name,</if>
+            <if test="districtCode != null">district_code,</if>
+            <if test="districtName != null">district_name,</if>
             <if test="address != null">address,</if>
             <if test="isDefault != null">is_default,</if>
             <if test="isDelete != null">is_delete,</if>
+            <if test="label != null">label,</if>
             <if test="createTime != null">create_time,</if>
+            <if test="createBy != null">create_by,</if>
             <if test="updateTime != null">update_time,</if>
+            <if test="updateBy != null">update_by,</if>
             <if test="remark != null">remark,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
@@ -76,17 +92,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="age != null">#{age},</if>
             <if test="isContagion != null">#{isContagion},</if>
             <if test="haveContagion != null">#{haveContagion},</if>
-            <if test="area != null">#{area},</if>
+            <if test="provinceCode != null">#{provinceCode},</if>
+            <if test="provinceName != null">#{provinceName},</if>
+            <if test="cityCode != null">#{cityCode},</if>
+            <if test="cityName != null">#{cityName},</if>
+            <if test="districtCode != null">#{districtCode},</if>
+            <if test="districtName != null">#{districtName},</if>
             <if test="address != null">#{address},</if>
             <if test="isDefault != null">#{isDefault},</if>
             <if test="isDelete != null">#{isDelete},</if>
+            <if test="label != null">#{label},</if>
             <if test="createTime != null">#{createTime},</if>
+            <if test="createBy != null">#{createBy},</if>
             <if test="updateTime != null">#{updateTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
             <if test="remark != null">#{remark},</if>
          </trim>
     </insert>
 
-    <update id="updateLAddress" parameterType="Address">
+    <update id="updateAddress" parameterType="Address">
         update l_address
         <trim prefix="SET" suffixOverrides=",">
             <if test="userId != null">user_id = #{userId},</if>
@@ -95,22 +119,33 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="age != null">age = #{age},</if>
             <if test="isContagion != null">is_contagion = #{isContagion},</if>
             <if test="haveContagion != null">have_contagion = #{haveContagion},</if>
-            <if test="area != null">area = #{area},</if>
+            <if test="provinceCode != null">province_code = #{provinceCode},</if>
+            <if test="provinceName != null">province_name = #{provinceName},</if>
+            <if test="cityCode != null">city_code = #{cityCode},</if>
+            <if test="cityName != null">city_name = #{cityName},</if>
+            <if test="districtCode != null">district_code = #{districtCode},</if>
+            <if test="districtName != null">district_name = #{districtName},</if>
             <if test="address != null">address = #{address},</if>
             <if test="isDefault != null">is_default = #{isDefault},</if>
             <if test="isDelete != null">is_delete = #{isDelete},</if>
+            <if test="label != null">label = #{label},</if>
             <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
             <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
             <if test="remark != null">remark = #{remark},</if>
         </trim>
         where address_id = #{addressId}
     </update>
+    <update id="updateDefaultAddress">
+        update l_address set is_default = #{isDefault} where user_id = #{userId}
+    </update>
 
-    <delete id="deleteLAddressByAddressId" parameterType="Long">
+    <delete id="deleteAddressByAddressId" parameterType="Long">
         delete from l_address where address_id = #{addressId}
     </delete>
 
-    <delete id="deleteLAddressByAddressIds" parameterType="String">
+    <delete id="deleteAddressByAddressIds" parameterType="String">
         delete from l_address where address_id in 
         <foreach item="addressId" collection="array" open="(" separator="," close=")">
             #{addressId}