diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/controller/GoodsApiController.java b/open-api/wei-api/src/main/java/com/qihang/wei/controller/GoodsApiController.java index ce99dbbb..fa72622a 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/controller/GoodsApiController.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/controller/GoodsApiController.java @@ -32,7 +32,7 @@ public class GoodsApiController { private final WeiApiCommon apiCommon; private final WeiGoodsService weiGoodsService; - @RequestMapping(value = "/pull_list", method = RequestMethod.POST) + @RequestMapping(value = "/pull_goods_list", method = RequestMethod.POST) public AjaxResult pullList(@RequestBody PullRequest params) throws Exception { if (params.getShopId() == null || params.getShopId() <= 0) { // return ApiResul new ApiResult(HttpStatus.PARAMS_ERROR, "参数错误,没有店铺Id"); diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/controller/GoodsController.java b/open-api/wei-api/src/main/java/com/qihang/wei/controller/GoodsController.java new file mode 100644 index 00000000..d797d015 --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/controller/GoodsController.java @@ -0,0 +1,45 @@ +package com.qihang.wei.controller; + + +import com.qihang.common.bo.LinkErpGoodsSkuBo; +import com.qihang.common.common.AjaxResult; +import com.qihang.common.common.PageQuery; +import com.qihang.common.common.PageResult; +import com.qihang.common.common.TableDataInfo; +import com.qihang.security.common.BaseController; +import com.qihang.wei.domain.OmsWeiGoodsSku; +import com.qihang.wei.service.OmsWeiGoodsSkuService; +import lombok.AllArgsConstructor; +import org.springframework.web.bind.annotation.*; + +@RequestMapping("/goods") +@RestController +@AllArgsConstructor +public class GoodsController extends BaseController { + private final OmsWeiGoodsSkuService skuService; + + @RequestMapping(value = "/skuList", method = RequestMethod.GET) + public TableDataInfo skuList(OmsWeiGoodsSku bo, PageQuery pageQuery) { + PageResult result = skuService.queryPageList(bo, pageQuery); + + return getDataTable(result); + } + + /** + * + */ + @GetMapping(value = "/sku/{id}") + public AjaxResult getSkuInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(skuService.getById(id)); + } + @PostMapping(value = "/sku/linkErp") + public AjaxResult linkErp(@RequestBody LinkErpGoodsSkuBo bo) + { + OmsWeiGoodsSku sku = new OmsWeiGoodsSku(); + sku.setId(bo.getId()); + sku.setErpGoodsSkuId(Long.parseLong(bo.getErpGoodsSkuId())); + skuService.updateById(sku); + return success(); + } +} diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/controller/WeiApiCommon.java b/open-api/wei-api/src/main/java/com/qihang/wei/controller/WeiApiCommon.java index ab7581cc..f454a2a8 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/controller/WeiApiCommon.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/controller/WeiApiCommon.java @@ -8,6 +8,7 @@ import cn.qihangerp.open.wei.vo.Token; import com.qihang.common.common.ResultVo; import com.qihang.common.enums.EnumShopType; import com.qihang.common.enums.HttpStatus; +import com.qihang.wei.service.SShopPlatformService; import com.qihang.wei.service.SShopService; import lombok.AllArgsConstructor; import org.springframework.stereotype.Component; @@ -17,6 +18,7 @@ import org.springframework.util.StringUtils; @Component public class WeiApiCommon { private final SShopService shopService; + private final SShopPlatformService platformService; /** * 更新前的检查 * @@ -29,27 +31,26 @@ public class WeiApiCommon { if (shop == null) { return ResultVo.error(HttpStatus.PARAMS_ERROR,"参数错误,没有找到店铺"); } - if (shop.getType() != EnumShopType.WEI.getIndex()) { + if (shop.getPlatform() != EnumShopType.WEI.getIndex()) { return ResultVo.error(HttpStatus.PARAMS_ERROR, "参数错误,店铺不是JD店铺"); } - if(!StringUtils.hasText(shop.getAppkey())) { + if(!StringUtils.hasText(shop.getAppKey())) { return ResultVo.error(HttpStatus.PARAMS_ERROR, "平台配置错误,没有找到AppKey"); } - if(!StringUtils.hasText(shop.getAppsercet())) { + if(!StringUtils.hasText(shop.getAppSercet())) { return ResultVo.error(HttpStatus.PARAMS_ERROR, "第三方平台配置错误,没有找到AppSercet"); } -// var platform =skuService.selectShopSettingById(EnumShopType.WEI.getIndex()); -// if(!StringUtils.hasText(platform.getse())) { -// return ResultVo.error(HttpStatus.PARAMS_ERROR, "第三方平台配置错误,没有找到ServerUrl"); -// } + var platform =platformService.getById(EnumShopType.WEI.getIndex()); + if(!StringUtils.hasText(platform.getServerUrl())) { + return ResultVo.error(HttpStatus.PARAMS_ERROR, "第三方平台配置错误,没有找到ServerUrl"); + } ShopApiParams params = new ShopApiParams(); - params.setAppKey(shop.getAppkey()); - params.setAppSecret(shop.getAppsercet()); - params.setAccessToken(shop.getSessionkey()); - params.setApiRequestUrl(shop.getApiRequestUrl()); -// params.setServerUrl(platform.getServerUrl()); - params.setSellerId(shop.getSelleruserid().toString()); + params.setAppKey(shop.getAppKey()); + params.setAppSecret(shop.getAppSercet()); + params.setAccessToken(shop.getAccessToken()); + params.setServerUrl(platform.getServerUrl()); + params.setSellerId(shop.getSellerShopId().toString()); if (!StringUtils.hasText(params.getAccessToken())) { diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/domain/OmsWeiGoodsSku.java b/open-api/wei-api/src/main/java/com/qihang/wei/domain/OmsWeiGoodsSku.java index 42095bf5..0b2eae7a 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/domain/OmsWeiGoodsSku.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/domain/OmsWeiGoodsSku.java @@ -12,7 +12,7 @@ public class OmsWeiGoodsSku implements Serializable { /** * */ - private Long id; + private String id; /** * 店铺id diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/domain/SShop.java b/open-api/wei-api/src/main/java/com/qihang/wei/domain/SShop.java index 241b3745..4a45cabb 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/domain/SShop.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/domain/SShop.java @@ -1,10 +1,11 @@ package com.qihang.wei.domain; import java.io.Serializable; +import java.util.Date; import lombok.Data; /** - * 数据中心-店铺 + * 电商平台店铺表 * @TableName s_shop */ @Data @@ -22,7 +23,7 @@ public class SShop implements Serializable { /** * 店铺别名 */ - private String nickname; + private String nickName; /** * 标识 @@ -37,32 +38,22 @@ public class SShop implements Serializable { /** * 对应第三方平台Id */ - private Integer type; + private Integer platform; /** * 店铺url */ - private String url; + private String shopUrl; /** * 排序 */ - private Integer ordernum; + private Integer orderNum; /** * 是否删除0否1是 */ - private Integer isdelete; - - /** - * 是否显示(0:是1否) - */ - private Integer isshow; - - /** - * 更新时间 - */ - private Long modifyOn; + private Integer isDelete; /** * 描述 @@ -70,34 +61,29 @@ public class SShop implements Serializable { private String remark; /** - * 第三方平台店铺id,淘宝天猫开放平台使用 + * 第三方平台店铺id */ - private Long selleruserid; + private Long sellerShopId; /** - * 卖家userId + * Appkey(微信视频号小店专用) */ - private String selleruseridstr; + private String appKey; + + /** + * Appsercet(微信视频号小店专用) + */ + private String appSercet; /** * 第三方平台sessionKey(access_token) */ - private String sessionkey; + private String accessToken; /** - * Appkey + * accessToken到期(秒) */ - private String appkey; - - /** - * Appsercet - */ - private String appsercet; - - /** - * 到期 - */ - private Long expiresIn; + private Long accessExpiresIn; /** * access_token开始时间 @@ -115,9 +101,14 @@ public class SShop implements Serializable { private Long refreshTokenTimeout; /** - * 请求url + * 创建时间 */ - private String apiRequestUrl; + private Date createTime; + + /** + * 更新时间 + */ + private Date updateTime; private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/domain/SShopPlatform.java b/open-api/wei-api/src/main/java/com/qihang/wei/domain/SShopPlatform.java new file mode 100644 index 00000000..79846709 --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/domain/SShopPlatform.java @@ -0,0 +1,59 @@ +package com.qihang.wei.domain; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + +/** + * 电商平台配置表 + * @TableName s_shop_platform + */ +@Data +public class SShopPlatform implements Serializable { + /** + * 主键 + */ + private Integer id; + + /** + * 平台名 + */ + private String name; + + /** + * appKey + */ + private String appKey; + + /** + * appSecret + */ + private String appSecret; + + /** + * 描述 + */ + private String remark; + + /** + * 服务url + */ + private String serverUrl; + + /** + * 回调url + */ + private String redirectUrl; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 更新时间 + */ + private Date updateTime; + + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/mapper/SShopMapper.java b/open-api/wei-api/src/main/java/com/qihang/wei/mapper/SShopMapper.java index a46f26c7..593cc716 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/mapper/SShopMapper.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/mapper/SShopMapper.java @@ -5,8 +5,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @author TW -* @description 针对表【s_shop(数据中心-店铺)】的数据库操作Mapper -* @createDate 2024-06-03 14:14:56 +* @description 针对表【s_shop(电商平台店铺表)】的数据库操作Mapper +* @createDate 2024-06-11 15:13:13 * @Entity com.qihang.wei.domain.SShop */ public interface SShopMapper extends BaseMapper { diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/mapper/SShopPlatformMapper.java b/open-api/wei-api/src/main/java/com/qihang/wei/mapper/SShopPlatformMapper.java new file mode 100644 index 00000000..7ae972ca --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/mapper/SShopPlatformMapper.java @@ -0,0 +1,18 @@ +package com.qihang.wei.mapper; + +import com.qihang.wei.domain.SShopPlatform; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** +* @author TW +* @description 针对表【s_shop_platform(电商平台配置表)】的数据库操作Mapper +* @createDate 2024-06-11 15:13:13 +* @Entity com.qihang.wei.domain.SShopPlatform +*/ +public interface SShopPlatformMapper extends BaseMapper { + +} + + + + diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiGoodsSkuService.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiGoodsSkuService.java index 60738810..555505bc 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiGoodsSkuService.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/OmsWeiGoodsSkuService.java @@ -1,5 +1,7 @@ package com.qihang.wei.service; +import com.qihang.common.common.PageQuery; +import com.qihang.common.common.PageResult; import com.qihang.wei.domain.OmsWeiGoodsSku; import com.baomidou.mybatisplus.extension.service.IService; @@ -9,5 +11,5 @@ import com.baomidou.mybatisplus.extension.service.IService; * @createDate 2024-06-03 16:51:29 */ public interface OmsWeiGoodsSkuService extends IService { - + PageResult queryPageList(OmsWeiGoodsSku bo, PageQuery pageQuery); } diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/SShopPlatformService.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/SShopPlatformService.java new file mode 100644 index 00000000..95f743f3 --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/SShopPlatformService.java @@ -0,0 +1,13 @@ +package com.qihang.wei.service; + +import com.qihang.wei.domain.SShopPlatform; +import com.baomidou.mybatisplus.extension.service.IService; + +/** +* @author TW +* @description 针对表【s_shop_platform(电商平台配置表)】的数据库操作Service +* @createDate 2024-06-11 15:13:13 +*/ +public interface SShopPlatformService extends IService { + +} diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/SShopService.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/SShopService.java index 8176822d..a761955a 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/service/SShopService.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/SShopService.java @@ -5,11 +5,10 @@ import com.baomidou.mybatisplus.extension.service.IService; /** * @author TW -* @description 针对表【s_shop(数据中心-店铺)】的数据库操作Service -* @createDate 2024-06-03 14:14:56 +* @description 针对表【s_shop(电商平台店铺表)】的数据库操作Service +* @createDate 2024-06-11 15:13:13 */ public interface SShopService extends IService { SShop selectShopById(Long shopId); - - void updateSessionKey(Long shopId,String sessionKey); + void updateSessionKey(Long shopId, String sessionKey); } diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiGoodsSkuServiceImpl.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiGoodsSkuServiceImpl.java index d6682dfa..32843e64 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiGoodsSkuServiceImpl.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/OmsWeiGoodsSkuServiceImpl.java @@ -1,9 +1,14 @@ package com.qihang.wei.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.qihang.common.common.PageQuery; +import com.qihang.common.common.PageResult; import com.qihang.wei.domain.OmsWeiGoodsSku; import com.qihang.wei.service.OmsWeiGoodsSkuService; import com.qihang.wei.mapper.OmsWeiGoodsSkuMapper; +import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; /** @@ -11,10 +16,22 @@ import org.springframework.stereotype.Service; * @description 针对表【oms_wei_goods_sku】的数据库操作Service实现 * @createDate 2024-06-03 16:51:29 */ +@AllArgsConstructor @Service public class OmsWeiGoodsSkuServiceImpl extends ServiceImpl implements OmsWeiGoodsSkuService{ + private final OmsWeiGoodsSkuMapper mapper; + @Override + public PageResult queryPageList(OmsWeiGoodsSku bo, PageQuery pageQuery) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() + .eq(bo.getShopId()!=null,OmsWeiGoodsSku::getShopId,bo.getShopId()) + ; + + Page page = mapper.selectPage(pageQuery.build(), queryWrapper); + + return PageResult.build(page); + } } diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/SShopPlatformServiceImpl.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/SShopPlatformServiceImpl.java new file mode 100644 index 00000000..c699e3ce --- /dev/null +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/SShopPlatformServiceImpl.java @@ -0,0 +1,22 @@ +package com.qihang.wei.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.qihang.wei.domain.SShopPlatform; +import com.qihang.wei.service.SShopPlatformService; +import com.qihang.wei.mapper.SShopPlatformMapper; +import org.springframework.stereotype.Service; + +/** +* @author TW +* @description 针对表【s_shop_platform(电商平台配置表)】的数据库操作Service实现 +* @createDate 2024-06-11 15:13:13 +*/ +@Service +public class SShopPlatformServiceImpl extends ServiceImpl + implements SShopPlatformService{ + +} + + + + diff --git a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/SShopServiceImpl.java b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/SShopServiceImpl.java index 23ccf3d0..29e0d0dc 100644 --- a/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/SShopServiceImpl.java +++ b/open-api/wei-api/src/main/java/com/qihang/wei/service/impl/SShopServiceImpl.java @@ -9,8 +9,8 @@ import org.springframework.stereotype.Service; /** * @author TW -* @description 针对表【s_shop(数据中心-店铺)】的数据库操作Service实现 -* @createDate 2024-06-03 14:14:56 +* @description 针对表【s_shop(电商平台店铺表)】的数据库操作Service实现 +* @createDate 2024-06-11 15:13:13 */ @AllArgsConstructor @Service @@ -26,7 +26,7 @@ public class SShopServiceImpl extends ServiceImpl public void updateSessionKey(Long shopId, String sessionKey) { SShop shop = new SShop(); shop.setId(shopId); - shop.setSessionkey(sessionKey); + shop.setAccessToken(sessionKey); mapper.updateById(shop); } } diff --git a/open-api/wei-api/src/main/resources/mapper/SShopMapper.xml b/open-api/wei-api/src/main/resources/mapper/SShopMapper.xml index d3a697d1..f448c83f 100644 --- a/open-api/wei-api/src/main/resources/mapper/SShopMapper.xml +++ b/open-api/wei-api/src/main/resources/mapper/SShopMapper.xml @@ -7,36 +7,33 @@ - + - - - - - - + + + + - - - - - - + + + + + - + + - id,name,nickName, - ename,company,type, - url,orderNum,isDelete, - isShow,modify_on,remark, - sellerUserId,sellerUserIdStr,sessionKey, - appkey,appSercet,expires_in, + id,name,nick_name, + ename,company,platform, + shop_url,order_num,is_delete, + remark,seller_shop_id,app_key, + app_sercet,access_token,access_expires_in, access_token_begin,refresh_token,refresh_token_timeout, - api_request_url + create_time,update_time diff --git a/open-api/wei-api/src/main/resources/mapper/SShopPlatformMapper.xml b/open-api/wei-api/src/main/resources/mapper/SShopPlatformMapper.xml new file mode 100644 index 00000000..71798962 --- /dev/null +++ b/open-api/wei-api/src/main/resources/mapper/SShopPlatformMapper.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + id,name,app_key, + app_secret,remark,server_url, + redirect_url,create_time,update_time + + diff --git a/vue/src/api/wei/goods.js b/vue/src/api/wei/goods.js index 694f5f2b..019e92da 100644 --- a/vue/src/api/wei/goods.js +++ b/vue/src/api/wei/goods.js @@ -43,3 +43,11 @@ export function pullGoodsList(data) { data: data }) } + +export function linkErpGoodsSkuId(data) { + return request({ + url: '/wei-api/goods/sku/linkErp', + method: 'post', + data: data + }) +} diff --git a/vue/src/views/shop/wei/goods/index.vue b/vue/src/views/shop/wei/goods/index.vue index b397ede7..e0fe0247 100644 --- a/vue/src/views/shop/wei/goods/index.vue +++ b/vue/src/views/shop/wei/goods/index.vue @@ -76,7 +76,7 @@ - +