package com.yeshi.fanli.controller.admin;
|
|
import java.io.PrintWriter;
|
import java.util.Calendar;
|
import java.util.Date;
|
import java.util.List;
|
|
import javax.annotation.Resource;
|
|
import net.sf.json.JSONObject;
|
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import com.google.gson.Gson;
|
import com.google.gson.GsonBuilder;
|
import com.yeshi.fanli.entity.bus.clazz.GoodsClass;
|
import com.yeshi.fanli.entity.bus.clazz.TaoBaoClass;
|
import com.yeshi.fanli.entity.bus.lable.BoutiqueAutoRule;
|
import com.yeshi.fanli.entity.taobao.TaobaoMeterial;
|
import com.yeshi.fanli.exception.goods.quality.BoutiqueAutoRuleException;
|
import com.yeshi.fanli.service.inter.goods.GoodsClassService;
|
import com.yeshi.fanli.service.inter.goods.TaoBaoClassService;
|
import com.yeshi.fanli.service.inter.lable.BoutiqueAutoRuleService;
|
import com.yeshi.fanli.service.inter.taobao.TaobaoMeterialService;
|
import com.yeshi.fanli.tag.PageEntity;
|
import com.yeshi.fanli.util.Constant;
|
import com.yeshi.fanli.util.StringUtil;
|
import org.yeshi.utils.JsonUtil;
|
|
@Controller
|
@RequestMapping("admin/new/api/v1/autoRule")
|
public class BoutiqueAutoRuleAdminController {
|
|
@Resource
|
private BoutiqueAutoRuleService boutiqueAutoRuleService;
|
|
@Resource
|
private TaobaoMeterialService taobaoMeterialService;
|
@Resource
|
private GoodsClassService goodsClassService;
|
|
@Resource
|
private TaoBaoClassService taoBaoClassService;
|
|
|
|
|
/**
|
* 新增入库规则
|
*
|
* @param callback
|
* @param boutiqueAutoRule
|
* @param out
|
*/
|
@RequestMapping(value = "saveAdd")
|
public void saveAdd(String callback, BoutiqueAutoRule boutiqueAutoRule, PrintWriter out) {
|
try {
|
|
// 验证传递数据是否正确
|
boolean validationData = validationData(callback, boutiqueAutoRule, out);
|
// 验证未通过
|
if (!validationData) {
|
return;
|
}
|
|
// 转换json
|
transformJsonString(boutiqueAutoRule);
|
|
// cron时间
|
String cronTime = boutiqueAutoRuleService.setCronTime(boutiqueAutoRule.getExecuteDay(),boutiqueAutoRule.getExecuteTime());
|
boutiqueAutoRule.setCronTime(cronTime);
|
|
// 默认状态为启用
|
boutiqueAutoRule.setState(1);
|
boutiqueAutoRule.setCreatetime(new Date());
|
boutiqueAutoRule.setUpdatetime(new Date());
|
|
boutiqueAutoRuleService.insertSelective(boutiqueAutoRule);
|
|
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("保存成功"));
|
|
|
// 验证当前任务是否立即启动
|
boolean validateDate = boutiqueAutoRuleService.validateDate(boutiqueAutoRule);
|
if (validateDate) {
|
// 任务启动
|
boutiqueAutoRuleService.setScheduler(boutiqueAutoRule, "add");
|
}
|
|
|
} catch (BoutiqueAutoRuleException e) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("保存失败"));
|
e.printStackTrace();
|
}
|
}
|
|
/**
|
* 获取入库规则-修改
|
*
|
* @param callback
|
* @param id
|
* @param out
|
*/
|
@RequestMapping(value = "enterModify")
|
public void enterModify(String callback, Long id, PrintWriter out) {
|
try {
|
if (id == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请传递正确参数"));
|
return;
|
}
|
|
BoutiqueAutoRule boutiqueAutoRule = boutiqueAutoRuleService.selectByPrimaryKey(id);
|
|
if (boutiqueAutoRule == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该规则已不存在"));
|
return;
|
}
|
|
jsonTransformString(boutiqueAutoRule);
|
|
|
Integer source = boutiqueAutoRule.getSource();
|
if (source.equals(BoutiqueAutoRule.TB_OPTIONAL) || source == BoutiqueAutoRule.TB_OPTIONAL) {
|
String className = boutiqueAutoRule.getClassName();
|
GoodsClass rb = goodsClassService.getGoodsClass(Long.parseLong(className));
|
if (rb != null) {
|
boutiqueAutoRule.setClassNameChinese(rb.getName());
|
}
|
}
|
|
GsonBuilder gsonBuilder = new GsonBuilder();
|
gsonBuilder.serializeNulls();
|
Gson gson = gsonBuilder.setDateFormat("yyyy-MM-dd").create();
|
|
JSONObject data = new JSONObject();
|
data.put("autoRule", gson.toJson(boutiqueAutoRule));
|
|
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data));
|
|
} catch (BoutiqueAutoRuleException e) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("获取失败"));
|
e.printStackTrace();
|
}
|
}
|
|
/**
|
* 修改入库规则
|
*
|
* @param callback
|
* @param boutiqueAutoRule
|
* @param out
|
*/
|
@RequestMapping(value = "saveModify")
|
public void saveModify(String callback, BoutiqueAutoRule boutiqueAutoRule, PrintWriter out) {
|
try {
|
Long id = boutiqueAutoRule.getId();
|
if (id == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请传递正确参数"));
|
return;
|
}
|
|
BoutiqueAutoRule crrent = boutiqueAutoRuleService.selectByPrimaryKey(id);
|
if (crrent == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该条规则已不存在"));
|
return;
|
}
|
|
// 验证传递数据是否正确
|
boolean validationData = validationData(callback, boutiqueAutoRule, out);
|
// 验证未通过
|
if (!validationData) {
|
return;
|
}
|
|
transformJsonString(boutiqueAutoRule);
|
|
String cronTime = boutiqueAutoRuleService.setCronTime(boutiqueAutoRule.getExecuteDay(),boutiqueAutoRule.getExecuteTime());
|
// cron时间
|
boutiqueAutoRule.setCronTime(cronTime);
|
|
boutiqueAutoRule.setState(crrent.getState());
|
boutiqueAutoRule.setCreatetime(crrent.getCreatetime());
|
// 更新时间
|
boutiqueAutoRule.setUpdatetime(new Date());
|
|
boutiqueAutoRuleService.updateByPrimaryKey(boutiqueAutoRule);
|
|
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("修改成功"));
|
|
|
// 验证当前任务是否需要修改 、立即执行
|
Integer crrentState = crrent.getState();
|
|
if (crrentState != null) {
|
if (crrentState.equals(1)){
|
boolean validateDate = boutiqueAutoRuleService.validateDate(boutiqueAutoRule);
|
if (validateDate) {
|
// 任务修改
|
boutiqueAutoRuleService.setScheduler(boutiqueAutoRule, "modify");
|
} else {
|
boutiqueAutoRuleService.setScheduler(boutiqueAutoRule, "delete");
|
}
|
}
|
|
}
|
|
|
} catch (BoutiqueAutoRuleException e) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("修改失败"));
|
e.printStackTrace();
|
}
|
}
|
|
/**
|
* 修改规则状态
|
*
|
* @param callback
|
* @param id
|
* @param state
|
* 状态:1启用 0停用
|
* @param out
|
*/
|
@RequestMapping(value = "saveState")
|
public void saveState(String callback, Long id, Integer state, PrintWriter out) {
|
try {
|
|
if (id == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请传递正确参数"));
|
return;
|
}
|
|
BoutiqueAutoRule crrent = boutiqueAutoRuleService.selectByPrimaryKey(id);
|
if (crrent == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该条规则已不存在"));
|
return;
|
}
|
|
if (state == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("修改状态为空"));
|
return;
|
}
|
|
crrent.setState(state);
|
crrent.setUpdatetime(new Date());
|
|
boutiqueAutoRuleService.updateByPrimaryKeySelective(crrent);
|
|
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("修改成功"));
|
|
boolean validateDate = boutiqueAutoRuleService.validateDate(crrent);
|
if (state.equals(1)) {
|
if (validateDate) {
|
boutiqueAutoRuleService.setScheduler(crrent, "add"); // 任务启动
|
}
|
} else {
|
boutiqueAutoRuleService.setScheduler(crrent, "delete"); // 任务删除
|
}
|
|
} catch (BoutiqueAutoRuleException e) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("修改失败"));
|
e.printStackTrace();
|
}
|
}
|
|
/**
|
* 查询入库规则
|
*
|
* @param callback
|
* @param pageIndex
|
* @param pageSize
|
* @param source
|
* 来源
|
* @param out
|
*/
|
@RequestMapping(value = "query")
|
public void query(String callback, Integer pageIndex, Integer pageSize, Integer source,
|
String key, Integer state, Integer sort, PrintWriter out) {
|
|
try {
|
|
if (pageIndex == null)
|
pageIndex = 1;
|
|
if (pageSize == null)
|
pageSize = Constant.PAGE_SIZE;
|
|
List<BoutiqueAutoRule> list = boutiqueAutoRuleService.query((pageIndex - 1) * pageSize,
|
pageSize, source, key, state, sort);
|
|
if (list == null || list.size() == 0) {
|
out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("暂无数据")));
|
return;
|
}
|
|
for (BoutiqueAutoRule boutiqueAutoRule: list) {
|
jsonTransformString(boutiqueAutoRule);
|
|
if (source.equals(BoutiqueAutoRule.TB_OPTIONAL) || source == BoutiqueAutoRule.TB_OPTIONAL) {
|
String className = boutiqueAutoRule.getClassName();
|
GoodsClass rb = goodsClassService.getGoodsClass(Long.parseLong(className));
|
if (rb != null) {
|
boutiqueAutoRule.setClassNameChinese(rb.getName());
|
}
|
}
|
}
|
|
|
long count = boutiqueAutoRuleService.queryCount(source, key, state);
|
|
int totalPage = (int) (count % pageSize == 0 ? count / pageSize : count / pageSize + 1);
|
PageEntity pe = new PageEntity(pageIndex, pageSize, count, totalPage);
|
|
GsonBuilder gsonBuilder = new GsonBuilder();
|
gsonBuilder.serializeNulls();
|
Gson gson = gsonBuilder.setDateFormat("yyyy/MM/dd HH:mm:ss").create();
|
|
JSONObject data = new JSONObject();
|
data.put("pe", pe);
|
data.put("resultList", gson.toJson(list));
|
|
out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(data)));
|
|
} catch (Exception e) {
|
e.printStackTrace();
|
out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadFalseResult("查询失败")));
|
}
|
}
|
|
|
/**
|
* 修改入库规则
|
*
|
* @param callback
|
* @param boutiqueAutoRule
|
* @param out
|
*/
|
@RequestMapping(value = "delete")
|
public void delete(String callback, Long id, PrintWriter out) {
|
try {
|
|
if (id == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请传递正确参数"));
|
return;
|
}
|
|
BoutiqueAutoRule boutiqueAutoRule = boutiqueAutoRuleService.selectByPrimaryKey(id);
|
if (boutiqueAutoRule == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该规则已被删除"));
|
return;
|
}
|
|
// 任务删除
|
boutiqueAutoRuleService.setScheduler(boutiqueAutoRule, "delete");
|
|
boutiqueAutoRuleService.deleteByPrimaryKey(id);
|
|
JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("删除成功"));
|
|
} catch (BoutiqueAutoRuleException e) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("删除失败"));
|
e.printStackTrace();
|
}
|
}
|
|
/**
|
* 修改入库规则
|
*
|
* @param callback
|
* @param boutiqueAutoRule
|
* @param out
|
*/
|
@RequestMapping(value = "shutdownJobs")
|
public void shutdownJobs(String callback, PrintWriter out) {
|
|
try {
|
|
boutiqueAutoRuleService.shutdownJobs();
|
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
|
|
/**
|
* 将查询筛选条件转换为json
|
* @param boutiqueAutoRule
|
*/
|
public void transformJsonString(BoutiqueAutoRule boutiqueAutoRule){
|
|
|
JSONObject data = new JSONObject();
|
|
Integer source = boutiqueAutoRule.getSource();
|
if (source.equals(BoutiqueAutoRule.TB_OPTIONAL)) {
|
// 类目id
|
data.put("systemCid", boutiqueAutoRule.getClassName());
|
}
|
|
|
if (boutiqueAutoRule.getKey() != null){
|
// 搜索关键词
|
data.put("key", boutiqueAutoRule.getKey());
|
}
|
|
if (boutiqueAutoRule.getTitle() != null){
|
// 搜索关键词
|
data.put("title", boutiqueAutoRule.getTitle());
|
}
|
|
|
if ( boutiqueAutoRule.getCateIds() != null){
|
// 官方推荐商品库投放ID;淘宝类目id集合
|
data.put("cateIds", boutiqueAutoRule.getCateIds());
|
}
|
|
if ( boutiqueAutoRule.getStartTkRate() != null){
|
// 佣金范围小值
|
data.put("startTkRate", boutiqueAutoRule.getStartTkRate());
|
}
|
|
if ( boutiqueAutoRule.getEndTkRate() != null){
|
// 佣金范围大值
|
data.put("endTkRate", boutiqueAutoRule.getEndTkRate());
|
}
|
|
if ( boutiqueAutoRule.getStartSales() != null){
|
// 销量小值
|
data.put("startSales", boutiqueAutoRule.getStartSales());
|
}
|
|
if ( boutiqueAutoRule.getEndSales() != null){
|
// 销量大值
|
data.put("endSales", boutiqueAutoRule.getEndSales());
|
}
|
|
|
if ( boutiqueAutoRule.getStartZkPrice() != null){
|
// 在售价范围小值
|
data.put("startZkPrice", boutiqueAutoRule.getStartZkPrice());
|
}
|
|
if ( boutiqueAutoRule.getEndZkPrice() != null){
|
// 在售价范围大值
|
data.put("endZkPrice", boutiqueAutoRule.getEndZkPrice());
|
}
|
|
|
|
if ( boutiqueAutoRule.getStartPrice() != null){
|
// 券后价范围小值
|
data.put("startPrice", boutiqueAutoRule.getStartPrice());
|
}
|
|
if ( boutiqueAutoRule.getEndPrice() != null){
|
// 券后价范围大值
|
data.put("endPrice", boutiqueAutoRule.getEndPrice());
|
}
|
|
if ( boutiqueAutoRule.getIsTmall() != null){
|
// 是否天猫
|
data.put("isTmall", boutiqueAutoRule.getIsTmall());
|
}
|
|
if ( boutiqueAutoRule.getHasCoupon() != null){
|
// 是否有券:1 有 0 无
|
data.put("hasCoupon", boutiqueAutoRule.getHasCoupon());
|
}
|
|
if ( boutiqueAutoRule.getFreeShipment() != null){
|
// 是否包邮:1 有 0 无
|
data.put("freeShipment", boutiqueAutoRule.getFreeShipment());
|
}
|
|
if ( boutiqueAutoRule.getNeedPrepay() != null){
|
// 是否消费保障:1有 0 无
|
data.put("needPrepay", boutiqueAutoRule.getNeedPrepay());
|
}
|
|
if (boutiqueAutoRule.getNpxLevel() != null){
|
// 牛皮癣程度,取值:1:不限,2:无,3:轻微
|
data.put("npxLevel", boutiqueAutoRule.getNpxLevel());
|
}
|
|
if ( boutiqueAutoRule.getIncludePayRate30() != null){
|
// 成交转化是否高于行业均值 1 有 0 无
|
data.put("includePayRate30", boutiqueAutoRule.getIncludePayRate30());
|
}
|
|
if ( boutiqueAutoRule.getIncludeGoodRate() != null){
|
// 好评率是否高于行业均值 1 有 0 无
|
data.put("includeGoodRate", boutiqueAutoRule.getIncludeGoodRate());
|
}
|
|
if ( boutiqueAutoRule.getIncludeRfdRate() != null){
|
// 退款率是否低于行业均值 1 有 0 无
|
data.put("includeRfdRate", boutiqueAutoRule.getIncludeRfdRate());
|
}
|
|
if ( boutiqueAutoRule.getLableNames() != null){
|
data.put("lableNames", boutiqueAutoRule.getLableNames());
|
}
|
|
// 请求最大页码
|
if (boutiqueAutoRule.getMaxPage() != null){
|
data.put("maxPage", boutiqueAutoRule.getMaxPage());
|
}
|
|
// 请求最大页码
|
if (boutiqueAutoRule.getClassName() != null){
|
|
if (source.equals(BoutiqueAutoRule.TB_OPTIONAL) || source== BoutiqueAutoRule.TB_OPTIONAL) {
|
|
String classId = boutiqueAutoRule.getClassName();
|
if (!StringUtil.isNullOrEmpty(classId)){
|
GoodsClass rb = goodsClassService.getGoodsClass(Long.parseLong(classId));
|
if (rb != null) {
|
data.put("sourceCalss", rb.getName());
|
}
|
}
|
|
} else if (source.equals(BoutiqueAutoRule.TB_MATERIAL) || source == BoutiqueAutoRule.TB_MATERIAL) {
|
String subName = boutiqueAutoRule.getSubclassName();
|
String superName = boutiqueAutoRule.getClassName();
|
if (StringUtil.isNullOrEmpty(subName)) {
|
data.put("sourceCalss", superName);
|
} else {
|
data.put("sourceCalss", superName +" "+ subName);
|
}
|
}
|
}
|
|
boutiqueAutoRule.setSearchContent(data.toString());
|
|
}
|
|
|
/**
|
* json 转换未String
|
* @param boutiqueAutoRule
|
*/
|
public void jsonTransformString(BoutiqueAutoRule boutiqueAutoRule){
|
|
String searchContent = boutiqueAutoRule.getSearchContent();
|
if (StringUtil.isNullOrEmpty(searchContent)) {
|
return;
|
}
|
|
JSONObject jsonData = JSONObject.fromObject(searchContent);
|
|
if (jsonData.get("key") != null){
|
// 搜索关键词
|
boutiqueAutoRule.setKey(jsonData.get("key").toString());
|
}
|
|
if (jsonData.get("cateIds") != null){
|
// 官方推荐商品库投放ID;淘宝类目id集合
|
boutiqueAutoRule.setCateIds(jsonData.get("cateIds").toString());
|
}
|
|
if (jsonData.get("startTkRate") != null){
|
// 佣金范围小值Double.valueOf(itoString());
|
boutiqueAutoRule.setStartTkRate(Double.valueOf(jsonData.get("startTkRate").toString()));
|
}
|
|
if (jsonData.get("endTkRate") != null){
|
// 佣金范围大值
|
boutiqueAutoRule.setEndTkRate(Double.valueOf(jsonData.get("endTkRate").toString()));
|
}
|
|
if (jsonData.get("startSales") != null){
|
// 销量小值
|
boutiqueAutoRule.setStartSales((int)jsonData.get("startSales"));
|
}
|
|
if (jsonData.get("endSales") != null){
|
// 销量大值
|
boutiqueAutoRule.setEndSales((int)jsonData.get("endSales"));
|
}
|
|
if (jsonData.get("startZkPrice") != null){
|
// 在售价范围小值
|
boutiqueAutoRule.setStartZkPrice(Double.valueOf(jsonData.get("startZkPrice").toString()));
|
}
|
|
if (jsonData.get("endZkPrice") != null){
|
// 在售价范围大值
|
boutiqueAutoRule.setEndZkPrice(Double.valueOf(jsonData.get("endZkPrice").toString()));
|
}
|
|
if (jsonData.get("startPrice") != null){
|
// 券后价范围小值
|
boutiqueAutoRule.setStartPrice(Double.valueOf(jsonData.get("startPrice").toString()));
|
}
|
|
if (jsonData.get("endPrice") != null){
|
// 券后价范围大值
|
boutiqueAutoRule.setEndPrice(Double.valueOf(jsonData.get("endPrice").toString()));
|
}
|
|
if (jsonData.get("isTmall") != null){
|
// 是否天猫
|
boutiqueAutoRule.setIsTmall((int)jsonData.get("isTmall"));
|
}
|
|
if (jsonData.get("hasCoupon") != null){
|
// 是否有券:1 有 0 无
|
boutiqueAutoRule.setHasCoupon((int)jsonData.get("hasCoupon"));
|
}
|
|
if (jsonData.get("freeShipment") != null){
|
// 是否包邮:1 有 0 无
|
boutiqueAutoRule.setFreeShipment((int)jsonData.get("freeShipment"));
|
}
|
|
if (jsonData.get("needPrepay") != null){
|
// 是否消费保障:1有 0 无
|
boutiqueAutoRule.setNeedPrepay((int)jsonData.get("needPrepay"));
|
}
|
|
if (jsonData.get("npxLevel") != null){
|
// 牛皮癣程度,取值:1:不限,2:无,3:轻微
|
boutiqueAutoRule.setNpxLevel((int)jsonData.get("npxLevel"));
|
}
|
|
if (jsonData.get("includePayRate30") != null){
|
// 成交转化是否高于行业均值 1 有 0 无
|
boutiqueAutoRule.setIncludePayRate30((int)jsonData.get("includePayRate30"));
|
}
|
|
if (jsonData.get("includeGoodRate") != null){
|
// 好评率是否高于行业均值 1 有 0 无
|
boutiqueAutoRule.setIncludeGoodRate((int)jsonData.get("includeGoodRate"));
|
}
|
|
if (jsonData.get("includeRfdRate") != null){
|
// 退款率是否低于行业均值 1 有 0 无
|
boutiqueAutoRule.setIncludeRfdRate((int)jsonData.get("includeRfdRate"));
|
}
|
|
if (jsonData.get("lableNames") != null){
|
boutiqueAutoRule.setLableNames(jsonData.get("lableNames").toString());
|
}
|
|
if (jsonData.get("maxPage") != null){
|
// 是否包邮:1 有 0 无
|
boutiqueAutoRule.setMaxPage((int)jsonData.get("maxPage"));
|
}
|
|
}
|
|
/**
|
* 验证前端展示数据是否符合规范
|
* @param callback
|
* @param boutiqueAutoRule
|
* @param out
|
* @return
|
*/
|
public boolean validationData(String callback, BoutiqueAutoRule boutiqueAutoRule, PrintWriter out){
|
|
Integer source = boutiqueAutoRule.getSource();
|
if (source == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("来源不能为空"));
|
return false;
|
}
|
|
Integer maxPage = boutiqueAutoRule.getMaxPage();
|
if (maxPage == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请求最大页数不能空"));
|
return false;
|
}
|
|
|
if (source.equals(BoutiqueAutoRule.TB_OPTIONAL) || source== BoutiqueAutoRule.TB_OPTIONAL) {
|
|
/* 淘宝导购物料API 数据验证 */
|
|
String key = boutiqueAutoRule.getKey();
|
String classId = boutiqueAutoRule.getClassName();
|
|
if (StringUtil.isNullOrEmpty(key) && StringUtil.isNullOrEmpty(classId)) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("类型与关键词不能同时为空"));
|
return false;
|
}
|
|
|
if (!StringUtil.isNullOrEmpty(classId)){
|
|
GoodsClass rb = goodsClassService.getGoodsClass(Long.parseLong(classId));
|
if (rb == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该类型已不存在,请刷新重试"));
|
return false;
|
}
|
|
|
List<TaoBaoClass> listCatIds = taoBaoClassService.listBySystemCid(0, 10, Long.parseLong(classId));
|
if (listCatIds == null || listCatIds.size() == 0) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(rb.getName() + "对应淘宝id为空,请通知相关人员进行维护"));
|
return false;
|
}
|
|
String taobaoCatIds = "";
|
for (TaoBaoClass taoBaoClass: listCatIds) {
|
Integer categoryId = taoBaoClass.getCategoryId();
|
|
if (categoryId == null ) {
|
continue;
|
}
|
|
taobaoCatIds += categoryId + ",";
|
}
|
|
if (StringUtil.isNullOrEmpty(taobaoCatIds)){
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult(rb.getName() + "对应淘宝id为空,请通知相关人员进行维护"));
|
return false;
|
}
|
|
boutiqueAutoRule.setCateIds(taobaoCatIds.substring(0, taobaoCatIds.length()-1));
|
}
|
|
} else if (source.equals(BoutiqueAutoRule.TB_MATERIAL) || source == BoutiqueAutoRule.TB_MATERIAL) {
|
|
/* 淘宝官方推荐 数据验证 */
|
|
String subName = boutiqueAutoRule.getSubclassName();
|
String superName = boutiqueAutoRule.getClassName();
|
|
if (StringUtil.isNullOrEmpty(subName) && StringUtil.isNullOrEmpty(superName) ) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请选择正确的类目"));
|
return false;
|
}
|
|
List<TaobaoMeterial> taobaoMeterials = taobaoMeterialService.selectByClassNameAndSuperName(subName, superName);
|
|
if (taobaoMeterials == null || taobaoMeterials.size() == 0) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该类目信息不存在"));
|
return false;
|
} else if (taobaoMeterials.size() > 1) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请选择相应的子类"));
|
return false;
|
}
|
|
TaobaoMeterial taobaoMeterial = taobaoMeterials.get(0);
|
Integer materialId = taobaoMeterial.getMaterialId();
|
|
if (materialId == null) {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("该类目物料ID不存在"));
|
return false;
|
}
|
|
boutiqueAutoRule.setCateIds(materialId + "");
|
} else {
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请传递正确来源"));
|
return false;
|
}
|
|
|
// 生效时间
|
Date startTime = boutiqueAutoRule.getStartTime();
|
|
// 失效时间
|
Date endTime = boutiqueAutoRule.getEndTime();
|
|
if (endTime != null) {
|
|
if (startTime != null && startTime.getTime() > endTime.getTime()){
|
JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("生效时间不能大于失效时间"));
|
return false;
|
}
|
|
Calendar calendar = Calendar.getInstance();
|
calendar.setTime(endTime);
|
calendar.set(Calendar.HOUR, 23);
|
calendar.set(Calendar.MINUTE, 59);
|
calendar.set(Calendar.SECOND, 59);
|
|
boutiqueAutoRule.setEndTime(calendar.getTime());
|
}
|
|
if (startTime == null) {
|
boutiqueAutoRule.setStartTime(new Date());
|
}
|
|
|
return true;
|
}
|
|
|
public static void main(String[] args) {
|
String s = "abacada";
|
if (s.contains("a")) {
|
System.out.println(1);
|
} else {
|
System.out.println(0);
|
}
|
}
|
|
}
|