diff --git a/src/main/java/com/sczx/pay/alipay/service/impl/ItemServiceImpl.java b/src/main/java/com/sczx/pay/alipay/service/impl/ItemServiceImpl.java
index 2fbcd86..fa91ec7 100644
--- a/src/main/java/com/sczx/pay/alipay/service/impl/ItemServiceImpl.java
+++ b/src/main/java/com/sczx/pay/alipay/service/impl/ItemServiceImpl.java
@@ -170,7 +170,13 @@ public class ItemServiceImpl implements ItemService {
// 设置属性列表
model.setAttrs(getItemAttrs(rentRuleItem, model.getImageList(), model.getItemType()));
- rentRuleItemMapper.insertByFourId(rentRuleItemvo);
+ RentRuleItem res = rentRuleItemMapper.selectByIds(rentRuleItem.getBatteryRuleId(), rentRuleItem.getCarRuleId(), rentRuleItem.getCarModelId(), rentRuleItem.getBrandId());
+
+ if(res != null ){
+ rentRuleItemMapper.updateItemIdByOutItemId(rentRuleItemvo);
+ }else {
+ rentRuleItemMapper.insertByFourId(rentRuleItemvo);
+ }
logger.info("属性列表:" + JSON.toJSONString(model));
request.setBizModel(model);
return alipaySdkUtil.execute(request);
@@ -178,7 +184,7 @@ public class ItemServiceImpl implements ItemService {
@Override
public String getData(AlipayOpenAppItemCreateResponse response) {
- rentRuleItemMapper.updateItemIdByOutItemId(response.getOutItemId(), response.getItemId());
+ rentRuleItemMapper.updateByOutItemId(response.getOutItemId(), response.getItemId());
return response.getItemId();
}
diff --git a/src/main/java/com/sczx/pay/mapper/RentRuleItemMapper.java b/src/main/java/com/sczx/pay/mapper/RentRuleItemMapper.java
index dd43042..9d1da7a 100644
--- a/src/main/java/com/sczx/pay/mapper/RentRuleItemMapper.java
+++ b/src/main/java/com/sczx/pay/mapper/RentRuleItemMapper.java
@@ -32,16 +32,15 @@ public interface RentRuleItemMapper {
RentRuleItem selectByFourId(@Param("batteryRuleId") Long batteryRuleId, @Param("carRuleId") Long carRuleId, @Param("carModelId") Long carModelId,@Param("brandId") Long brandId);
+ RentRuleItem selectItemByFourIds(@Param("batteryRuleId") Long batteryRuleId, @Param("carRuleId") Long carRuleId, @Param("carModelId") Long carModelId,@Param("brandId") Long brandId);
+
+
+
int insertByFourId(RentRuleItem zcRentRuleItem);
- /**
- * 更新车型租赁规则项
- * @param zcRentRuleItem 车型租赁规则项信息
- * @return 影响行数
- */
- int update(RentRuleItem zcRentRuleItem);
+ int updateItemIdByOutItemId(RentRuleItem rentRuleItem);
- int updateItemIdByOutItemId(@Param("outItemId") String outItemId, @Param("itemId") String aliItemId);
+ int updateByOutItemId(@Param("outItemId") String outItemId, @Param("aliItemId") String aliItemId);
/**
* 根据ID删除车型租赁规则项
diff --git a/src/main/resources/mapper/RentRuleItemMapper.xml b/src/main/resources/mapper/RentRuleItemMapper.xml
index c65172e..2f11042 100644
--- a/src/main/resources/mapper/RentRuleItemMapper.xml
+++ b/src/main/resources/mapper/RentRuleItemMapper.xml
@@ -79,6 +79,16 @@
WHERE out_item_id = #{outItemId}
+
+