| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291 |
- package com.ruixuan.isc.service.impl;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.google.gson.Gson;
- import com.kuaidi100.sdk.api.Subscribe;
- import com.kuaidi100.sdk.contant.ApiInfoConstant;
- import com.kuaidi100.sdk.contant.CompanyConstant;
- import com.kuaidi100.sdk.core.IBaseClient;
- import com.kuaidi100.sdk.pojo.HttpResult;
- import com.kuaidi100.sdk.request.SubscribeParam;
- import com.kuaidi100.sdk.request.SubscribeParameters;
- import com.kuaidi100.sdk.request.SubscribeReq;
- import com.ruixuan.common.utils.Check;
- import com.ruixuan.common.utils.DateUtils;
- import com.ruixuan.isc.entity.KuaishouItemCollectSampleExpress;
- import com.ruixuan.isc.entity.KuaishouItemCollectSampleLog;
- import com.ruixuan.isc.entity.KuaishouItemCollectSamples;
- import com.ruixuan.isc.mapper.KuaishouItemCollectSamplesMapper;
- import com.ruixuan.isc.service.IKuaishouItemCollectSamplesService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import javax.security.auth.callback.CallbackHandler;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- /**
- * 【请填写功能名称】Service业务层处理
- *
- * @author ruoyi
- * @date 2023-02-08
- */
- @Service
- public class KuaishouItemCollectSamplesServiceImpl implements IKuaishouItemCollectSamplesService {
- @Autowired
- private KuaishouItemCollectSamplesMapper kuaishouItemCollectSamplesMapper;
- /**
- * 查询【请填写功能名称】
- *
- * @param id 【请填写功能名称】主键
- * @return 【请填写功能名称】
- */
- @Override
- public KuaishouItemCollectSamples selectKuaishouItemCollectSamplesById(Long id) {
- return kuaishouItemCollectSamplesMapper.selectKuaishouItemCollectSamplesById(id);
- }
- /**
- * 查询【请填写功能名称】列表
- *
- * @param requestMap 【请填写功能名称】
- * @return 【请填写功能名称】
- */
- @Override
- public List<KuaishouItemCollectSamples> selectKuaishouItemCollectSamplesList(Map<String, Object> requestMap) {
- return kuaishouItemCollectSamplesMapper.selectKuaishouItemCollectSamplesList(requestMap);
- }
- /**
- * 新增【请填写功能名称】
- *
- * @param kuaishouItemCollectSamples 【请填写功能名称】
- * @return 结果
- */
- @Override
- public int insertKuaishouItemCollectSamples(KuaishouItemCollectSamples kuaishouItemCollectSamples) {
- kuaishouItemCollectSamples.setCreateTime(DateUtils.getNowDate());
- return kuaishouItemCollectSamplesMapper.insertKuaishouItemCollectSamples(kuaishouItemCollectSamples);
- }
- /**
- * 修改【请填写功能名称】
- *
- * @param kuaishouItemCollectSamples 【请填写功能名称】
- * @return 结果
- */
- @Override
- public int updateKuaishouItemCollectSamples(KuaishouItemCollectSamples kuaishouItemCollectSamples) {
- kuaishouItemCollectSamples.setUpdateTime(DateUtils.getNowDate());
- return kuaishouItemCollectSamplesMapper.updateKuaishouItemCollectSamples(kuaishouItemCollectSamples);
- }
- /**
- * 批量删除【请填写功能名称】
- *
- * @param ids 需要删除的【请填写功能名称】主键
- * @return 结果
- */
- @Override
- public int deleteKuaishouItemCollectSamplesByIds(Long[] ids) {
- return kuaishouItemCollectSamplesMapper.deleteKuaishouItemCollectSamplesByIds(ids);
- }
- /**
- * 删除【请填写功能名称】信息
- *
- * @param id 【请填写功能名称】主键
- * @return 结果
- */
- @Override
- public int deleteKuaishouItemCollectSamplesById(Long id) {
- return kuaishouItemCollectSamplesMapper.deleteKuaishouItemCollectSamplesById(id);
- }
- @Override
- public JSONObject preview(Long userId, String nickName, JSONArray itemIds, JSONArray promoterIds) {
- JSONObject previewJson = new JSONObject();
- List<JSONObject> itemList = kuaishouItemCollectSamplesMapper.getItemList(itemIds);
- Map<Long, JSONObject> itemMap = new HashMap<>();
- for (int i = 0; i < itemList.size(); i++) {
- JSONObject itemJson = itemList.get(i);
- itemMap.put(itemJson.getLong("itemId"), itemJson);
- }
- Map<Long, JSONObject> promoterMap = new HashMap<>();
- List<JSONObject> promoterList = kuaishouItemCollectSamplesMapper.promoterList(promoterIds);
- for (int i = 0; i < promoterList.size(); i++) {
- JSONObject promoterJson = promoterList.get(i);
- promoterMap.put(promoterJson.getLong("promoterId"), promoterJson);
- }
- Integer sampleReceivedCount = 0;
- List<JSONObject> samples = new ArrayList<>();
- for (int i = 0; i < itemIds.size(); i++) {
- Long itemId = itemIds.getLong(i);
- JSONObject itemJson = itemMap.get(itemId);
- for (int j = 0; j < promoterIds.size(); j++) {
- Long promoterId = promoterIds.getLong(j);
- Integer count = kuaishouItemCollectSamplesMapper.check(itemId, promoterId);
- if (count > 0) {
- sampleReceivedCount++;
- continue;
- }
- JSONObject sampleJson = new JSONObject();
- sampleJson.put("itemId", itemJson.getLong("itemId"));
- sampleJson.put("itemTitle", itemJson.getString("itemTitle"));
- sampleJson.put("itemPrice", itemJson.getLong("itemPrice"));
- sampleJson.put("itemImgUrl", itemJson.getString("itemImgUrl"));
- sampleJson.put("commissionRate", itemJson.getLong("commissionRate"));
- sampleJson.put("regimentalPromotion", itemJson.getLong("regimentalPromotion"));
- sampleJson.put("itemCreateId", itemJson.getLong("userId"));
- sampleJson.put("itemCreateName", itemJson.getString("userName"));
- sampleJson.put("collectSampleId", userId);
- sampleJson.put("collectSampleName", nickName);
- JSONObject promoterJson = promoterMap.get(promoterId);
- sampleJson.put("promoterId", promoterJson.getLong("promoterId"));
- sampleJson.put("promoterNickName", promoterJson.getString("promoterNickName"));
- sampleJson.put("promoterPhone", promoterJson.getString("promoterPhone"));
- sampleJson.put("promoterAddress", promoterJson.getString("promoterAddress"));
- sampleJson.put("promoterUrl", promoterJson.getString("promoterUrl"));
- sampleJson.put("collectSampleStatus", 1);
- sampleJson.put("collectSampleDesc", "待招商审核");
- samples.add(sampleJson);
- }
- previewJson.put("sampleReceivedCount", sampleReceivedCount);
- previewJson.put("samples", samples);
- }
- return previewJson;
- }
- @Override
- public void batchAdd(JSONArray temCollectSamples) {
- List<KuaishouItemCollectSamples> adds = new ArrayList<>();
- for (int i = 0; i < temCollectSamples.size(); i++) {
- JSONObject sampleJson = temCollectSamples.getJSONObject(i);
- KuaishouItemCollectSamples sample = new KuaishouItemCollectSamples();
- sample.setItemId(sampleJson.getLong("itemId"));
- sample.setItemTitle(sampleJson.getString("itemTitle"));
- sample.setItemPrice(sampleJson.getLong("itemPrice"));
- sample.setItemImgUrl(sampleJson.getString("itemImgUrl"));
- sample.setItemDesc(sampleJson.getString("itemDesc"));
- sample.setCommissionRate(sampleJson.getLong("commissionRate"));
- sample.setRegimentalPromotion(sampleJson.getLong("regimentalPromotion"));
- sample.setSampleCount(sampleJson.getInteger("sampleCount"));
- sample.setSampleRequirement(sampleJson.getString("sampleRequirement"));
- sample.setItemCreateId(sampleJson.getLong("itemCreateId"));
- sample.setItemCreateName(sampleJson.getString("itemCreateName"));
- sample.setCollectSampleId(sampleJson.getLong("collectSampleId"));
- sample.setCollectSampleName(sampleJson.getString("collectSampleName"));
- sample.setPartnerRecommendText(sampleJson.getString("partnerRecommendText"));
- sample.setPromoterId(sampleJson.getLong("promoterId"));
- sample.setPromoterPhone(sampleJson.getString("promoterPhone"));
- sample.setPromoterAddress(sampleJson.getString("promoterAddress"));
- sample.setCollectSampleStatus(sampleJson.getInteger("collectSampleStatus"));
- sample.setCollectSampleDesc(sampleJson.getString("collectSampleDesc"));
- sample.setPromoterNickName(sampleJson.getString("promoterNickName"));
- sample.setPromoterUrl(sampleJson.getString("promoterUrl"));
- adds.add(sample);
- }
- if (!Check.isNull(adds)) {
- kuaishouItemCollectSamplesMapper.batchAdd(adds);
- }
- }
- @Override
- public void subscribe(Long id, String courierNumber, String code) throws Exception {
- KuaishouItemCollectSamples samples = kuaishouItemCollectSamplesMapper.selectKuaishouItemCollectSamplesById(id);
- SubscribeParameters subscribeParameters = new SubscribeParameters();
- subscribeParameters.setCallbackurl("http://ruixuan.api.tjyourong.com.cn/itemCollectSamples/callback");
- subscribeParameters.setPhone(samples.getPromoterPhone());
- SubscribeParam subscribeParam = new SubscribeParam();
- subscribeParam.setParameters(subscribeParameters);
- subscribeParam.setCompany(code);
- subscribeParam.setNumber(courierNumber);
- subscribeParam.setKey("BPEQUJxB9244");
- SubscribeReq subscribeReq = new SubscribeReq();
- subscribeReq.setSchema(ApiInfoConstant.SUBSCRIBE_SCHEMA);
- subscribeReq.setParam(new Gson().toJson(subscribeParam));
- IBaseClient subscribe = new Subscribe();
- JSONObject jsonObject = JSONObject.parseObject(subscribe.execute(subscribeReq).getBody());
- String returnCode = jsonObject.getString("returnCode");
- KuaishouItemCollectSamples updateSample = new KuaishouItemCollectSamples();
- updateSample.setId(id);
- if ("200".equals(returnCode)) {
- updateSample.setCollectSampleDesc("快递推送订阅成功");
- } else {
- updateSample.setCollectSampleStatus(3);
- updateSample.setCollectSampleDesc("快递推送订阅失败,失败原因:" + jsonObject.getString("message"));
- }
- kuaishouItemCollectSamplesMapper.updateKuaishouItemCollectSamples(updateSample);
- }
- @Override
- public void updateByNum(KuaishouItemCollectSamples updateSample) {
- kuaishouItemCollectSamplesMapper.updateByNum(updateSample);
- }
- @Override
- public void replaceExpress(KuaishouItemCollectSampleExpress express) {
- kuaishouItemCollectSamplesMapper.replaceExpress(express);
- }
- @Override
- public JSONObject getDetail(Long id) {
- JSONObject json = new JSONObject();
- KuaishouItemCollectSamples sample = kuaishouItemCollectSamplesMapper.selectKuaishouItemCollectSamplesById(id);
- KuaishouItemCollectSampleLog log = new KuaishouItemCollectSampleLog();
- log.setCollectSampleStatus(1);
- log.setUserId(sample.getCollectSampleId());
- log.setUserName(sample.getCollectSampleName());
- log.setSampleId(sample.getId());
- log.setCreateTime(sample.getCreateTime());
- log.setUpdateTime(sample.getCreateTime());
- kuaishouItemCollectSamplesMapper.insertLog(log);
- json.put("sample", sample);
- if (!Check.isNull(sample.getCourierNumber())) {
- KuaishouItemCollectSampleExpress express = kuaishouItemCollectSamplesMapper.getExpress(sample.getCourierNumber());
- if (!Check.isNull(express)) {
- json.put("express", express);
- }
- }
- List<KuaishouItemCollectSampleLog> logs = kuaishouItemCollectSamplesMapper.getLogList(id);
- if (!Check.isNull(logs)) {
- json.put("logs", logs);
- }
- return json;
- }
- @Override
- public Integer getStatusByCourierNumbe(String nu) {
- return kuaishouItemCollectSamplesMapper.getStatusByCourierNumbe(nu);
- }
- @Override
- public JSONObject courierNumberInfo(String courierNumber) {
- return kuaishouItemCollectSamplesMapper.courierNumberInfo(courierNumber);
- }
- @Override
- public void insertLog(KuaishouItemCollectSampleLog sampleLog) {
- kuaishouItemCollectSamplesMapper.insertLog(sampleLog);
- }
- @Override
- public void cleanLogs(Long id, Integer status) {
- kuaishouItemCollectSamplesMapper.cleanLogs(id,status);
- }
- }
|