记得上下班打卡 | git大法好,push需谨慎

Commit aaa1b232 authored by 胡佳晨's avatar 胡佳晨

提交merchant

parent b1dd5fc7
......@@ -247,3 +247,6 @@ create index permission_id_index on merchant_authorization_permissions (permissi
-- >>------------------------------------------------------------------------------------
-- >>------------------------------------------------------------------------------------
-- >>------------------------------------------------------------------------------------
alter table kylin_ticket_status modify qr_code_show_time datetime default '2030-01-01 12:00:00' null comment '二维码显示时间';
alter table kylin_tickets modify time_end_express datetime default '2030-01-01 12:00:00' null comment '快递票结束时间';
......@@ -21,8 +21,6 @@ import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketTimesVo;
import com.liquidnet.service.kylin.dto.vo.middle.KylinTicketVo;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.kylin.dto.vo.partner.*;
import com.liquidnet.service.kylin.entity.*;
import com.liquidnet.service.kylin.mapper.*;
import com.liquidnet.service.kylin.service.partner.IKylinPerformancesPartnerService;
import com.liquidnet.service.kylin.service.partner.IKylinTicketTimesPartnerService;
import com.liquidnet.service.kylin.service.partner.IKylinTicketsPartnerService;
......@@ -33,7 +31,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.aggregation.LookupOperation;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
......@@ -81,7 +78,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
if (null == step1Param.getPerformancesId()) {
result = createStep1(step1Param);
} else { // 获取 create 数据 status = 0 或 无数据 创建
PerformancePartnerVo createParam = mongoMerchantUtils.getPerformancePartnerVo(step1Param.getPerformancesId(),step1Param.getMerchantId());
PerformancePartnerVo createParam = mongoMerchantUtils.getPerformancePartnerVo(step1Param.getPerformancesId(), step1Param.getMerchantId());
if (createParam == null) {
result = createStep1(step1Param);
log.info(UserPathDto.setPartnerData(step1Param.getMerchantId(), "createStep1", step1Param, result));
......@@ -130,7 +127,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
LocalDateTime timeNow = LocalDateTime.now();
String performanceId = step1Param.getPerformancesId();
try {
PerformancePartnerVo data = mongoMerchantUtils.getPerformancePartnerVo(performanceId,step1Param.getMerchantId());
PerformancePartnerVo data = mongoMerchantUtils.getPerformancePartnerVo(performanceId, step1Param.getMerchantId());
if (data == null || data.getAuditStatus() == null || data.getAuditStatus() == 0) {
return "不可修改";
}
......@@ -152,7 +149,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
performancePartnerVo.setProjectId(data.getProjectId());
mongoMerchantUtils.updatePerformancePartnerVoById(performancePartnerVo);
} else { // 无修改记录
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performanceId,step1Param.getMerchantId());
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performanceId, step1Param.getMerchantId());
performancePartnerVo.setIsTrueName(vo.getIsTrueName());
performancePartnerVo.setLimitCount(vo.getLimitCount());
performancePartnerVo.setStatusSell(vo.getStatusSell());
......@@ -171,15 +168,15 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
@Override
public ResponseDto<PerformancePartnerVo> getStep1(String performancesId) {
String merchantId = CurrentUtil.getCurrentUid();
PerformancePartnerVo data = mongoMerchantUtils.getPerformancePartnerVo(performancesId,merchantId);
PerformancePartnerVo data = mongoMerchantUtils.getPerformancePartnerVo(performancesId, merchantId);
if (data == null) {
return ResponseDto.failure(ErrorMapping.get(20104));
}
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(data.getPerformancesId(),merchantId);
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(data.getPerformancesId(), merchantId);
if (null != vo) {
data.setStatus(vo.getAppStatus());
}
log.info(UserPathDto.setPartnerData("0", "getStep1", "merchant="+merchantId+"&performancesId=" + performancesId, data));
log.info(UserPathDto.setPartnerData("0", "getStep1", "merchant=" + merchantId + "&performancesId=" + performancesId, data));
return ResponseDto.success(data);
}
......@@ -189,7 +186,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
step2Param.setMerchantId(CurrentUtil.getCurrentUid());
// 无 performancesId 则 创建
if (!step2Param.getPerformancesId().isEmpty()) { // 获取 create 数据 status = 0 或 无数据 创建
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(step2Param.getPerformancesId(),step2Param.getMerchantId());
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(step2Param.getPerformancesId(), step2Param.getMerchantId());
if (vo == null || vo.getAppStatus() == 0 || vo.getAppStatus() == 4) {
result = createStep2(step2Param);
log.info(UserPathDto.setPartnerData("0", "createStep2", step2Param, result));
......@@ -210,8 +207,8 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
String performanceId = step2Param.getPerformancesId();
// 获取 当前时间 -> 创建时间
LocalDateTime createdAt = LocalDateTime.now();
String merchantId =step2Param.getMerchantId();
boolean isExistsSubmit = mongoMerchantUtils.isExistsSubmitPerformancePartner(performanceId,merchantId);
String merchantId = step2Param.getMerchantId();
boolean isExistsSubmit = mongoMerchantUtils.isExistsSubmitPerformancePartner(performanceId, merchantId);
if (isExistsSubmit) {
return ResponseDto.failure(ErrorMapping.get(20112));
}
......@@ -274,7 +271,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
public ResponseDto<String> updateStep2(PerformanceStep2Param step2Param) {
try {
// 获取 主键id
String merchantId =step2Param.getMerchantId();
String merchantId = step2Param.getMerchantId();
String performanceId = step2Param.getPerformancesId();
LinkedList<String> sqls = CollectionUtil.linkedListString();
sqls.add(SqlMapping.get("kylin_performance.updateStep2"));
......@@ -287,10 +284,10 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
LinkedList<Object[]> sqlsDataD = CollectionUtil.linkedListObjectArr();
LocalDateTime now = LocalDateTime.now();
// 获取 当前时间 -> 创建时间
boolean isExistsSubmit = mongoMerchantUtils.isExistsSubmitPerformancePartner(performanceId,merchantId);
if (isExistsSubmit) {
return ResponseDto.failure(ErrorMapping.get(20112));
}
// boolean isExistsSubmit = mongoMerchantUtils.isExistsSubmitPerformancePartner(performanceId, merchantId);
// if (isExistsSubmit) {
// return ResponseDto.failure(ErrorMapping.get(20112));
// }
//演出修改数据
PerformancePartnerVo performancePartnerVo = PerformancePartnerVo.getNew();
performancePartnerVo.setPerformancesId(performanceId);
......@@ -327,10 +324,10 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
mapSql.put("status", performancePartnerVo.getStatus());
mapSql.put("updatedAt", now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
sqlsDataA.add(new Object[]{
now, kylinPerformanceMisVo.getNoticeImage(), performanceId,now,now
now, kylinPerformanceMisVo.getNoticeImage(), performanceId, now, now
});
sqlsDataB.add(new Object[]{
performancePartnerVo.getAuditStatus(), step2Param.getIsTrueName(), step2Param.getLimitCount(), performanceId,now,now
performancePartnerVo.getAuditStatus(), step2Param.getIsTrueName(), step2Param.getLimitCount(), performanceId, now, now
});
redisMerchantUtils.setPerformanceIsTrueName(performanceId, step2Param.getIsTrueName());
......@@ -341,10 +338,10 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
for (KylinTicketPartnerVo ticketItem : ticketList) {
//修改 redis库存
if (redisMerchantUtils.hasKey(KylinRedisConst.PERFORMANCES_INVENTORY + ticketItem.getTicketsId() + ":" + KylinRedisConst.SURPLUS_GENERAL)) {
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performanceId,merchantId);
KylinTicketTimesVo ticketTimesData = null;
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performanceId, merchantId);
KylinTicketVo ticketData = null;
for (int x = 0; x < vo.getTicketTimeList().size(); x++) {
KylinTicketTimesVo ticketTimesData = vo.getTicketTimeList().get(x);
for (int y = 0; y < ticketTimesData.getTicketList().size(); y++) {
KylinTicketVo ticketStatus = ticketTimesData.getTicketList().get(y);
if (ticketStatus.getTicketsId().equals(ticketItem.getTicketsId())) {
......@@ -364,21 +361,21 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
sqlsDataC.add(new Object[]{
DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketItem.getTimeEnd()), DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketItem.getTimeStart()),
DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketItem.getTimeEndExpress()), kylinPerformanceMisVo.getPayCountdownMinute(),
ticketItem.getPrice(), ticketItem.getTicketsId(),now,now
ticketItem.getPrice(), ticketItem.getTicketsId(), now, now
});
//修改 mysql 购票限购、库存
sqlsDataD.add(new Object[]{
ticketItem.getTotalExchange(), ticketItem.getTotalGeneral(), kylinPerformanceMisVo.getIsTrueName(),
ticketItem.getLimitCount(), ticketItem.getIsLackRegister(), ticketItem.getIsExpress(),
ticketItem.getIsElectronic(), ticketItem.getCounts(), ticketItem.getIsShowCode(),
DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketItem.getQrCodeShowTime()), ticketItem.getTicketsId(),now,now
DateUtil.Formatter.yyyyMMddHHmmss.parse(ticketItem.getQrCodeShowTime()), ticketItem.getTicketsId(), now, now
});
}
}
String sqlData = SqlMapping.gets(sqls, sqlsDataA, sqlsDataB, sqlsDataC, sqlsDataD);
queueUtil.sendMsgByRedis(MQConst.MerchantQueue.SQL_MERCHANT_STEP2.getKey(),
sqlData);
performanceUtils.performanceVoStatus(performanceId);
performanceUtils.performanceVoStatus(performanceId, null);
}
return ResponseDto.success("操作完成");
} else { //保存
......@@ -397,7 +394,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
@Override
public ResponseDto<PerformanceStep2Param> getStep2(String performancesId) {
String merchantId = CurrentUtil.getCurrentUid();
PerformancePartnerVo data = mongoMerchantUtils.getPerformancePartnerVo(performancesId,merchantId);
PerformancePartnerVo data = mongoMerchantUtils.getPerformancePartnerVo(performancesId, merchantId);
if (data == null) {
return ResponseDto.failure(ErrorMapping.get(20104));
}
......@@ -412,7 +409,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
}
PerformanceStep2Param performanceStep2Param = PerformanceStep2Param.getNew();
BeanUtils.copyProperties(data, performanceStep2Param);
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performancesId,merchantId);
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performancesId, merchantId);
if (null != vo) {
performanceStep2Param.setStatus(vo.getAppStatus());
} else {
......@@ -434,7 +431,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
// LinkedList<Object[]> sqlsDataA = CollectionUtil.linkedListObjectArr();
// LinkedList<Object[]> sqlsDataB = CollectionUtil.linkedListObjectArr();
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performancesId,merchantId);
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performancesId, merchantId);
if (!(vo.getAppStatus() == 3 || vo.getAppStatus() == 7)) {
return ResponseDto.failure(ErrorMapping.get(20110));
}
......@@ -467,7 +464,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
mongoMerchantUtils.delPerformanceVo(performancesId);
mongoMerchantUtils.insertPerformanceVo(vo);
// 判断状态
performanceUtils.performanceVoStatus(performancesId);
performanceUtils.performanceVoStatus(performancesId, null);
log.info(UserPathDto.setPartnerData("0", "onLinePerformance", "performancesId=" + performancesId, "上线成功"));
return ResponseDto.success("上线成功");
} catch (Exception e) {
......@@ -480,7 +477,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
public ResponseDto<String> outLinePerformance(String performancesId) {
try {
String merchantId = CurrentUtil.getCurrentUid();
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performancesId,merchantId);
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performancesId, merchantId);
if (vo.getAppStatus() >= 3 && vo.getAppStatus() != 4 && vo.getAppStatus() != 7) {//未提审||被拒绝 && performanceStatusData.getStatus() != 10
// HashMap<String, Object> map = CollectionUtil.mapStringObject();
// map.put("status", 7);
......@@ -488,13 +485,13 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
// mongoMerchantUtils.updatePerformanceVo(map,performancesId);
vo.setAppStatus(7);
mongoMerchantUtils.delPerformanceVo(performancesId);
mongoMerchantUtils.insertPerformanceVo(vo);
vo = mongoMerchantUtils.insertPerformanceVo(vo);
// LocalDateTime updatedAt = LocalDateTime.now();
// queueUtil.sendMsgByRedis(MQConst.MerchantQueue.SQL_MERCHANT_LINE.getKey(),
// SqlMapping.get("kylin_performances_status.outLine",
// 7, updatedAt, performancesId,updatedAt,updatedAt
// ));
performanceUtils.performanceVoStatus(performancesId);
performanceUtils.performanceVoStatus(performancesId, vo.getAppStatus());
log.info(UserPathDto.setPartnerData("0", "outLinePerformance", "performancesId=" + performancesId, "下线成功"));
return ResponseDto.success("下线成功");
} else {
......@@ -510,7 +507,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
public String copyPerformance(String performancesId) {
try {
String merchantId = CurrentUtil.getCurrentUid();
PerformancePartnerVo performancePartnerVo = mongoMerchantUtils.getPerformancePartnerVo(performancesId,merchantId);
PerformancePartnerVo performancePartnerVo = mongoMerchantUtils.getPerformancePartnerVo(performancesId, merchantId);
//复制演出
performancePartnerVo.setPerformancesId(IDGenerator.nextSnowId());
performancePartnerVo.setStatus(0);
......@@ -606,7 +603,7 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
try {
String merchantId = CurrentUtil.getCurrentUid();
LocalDateTime now = LocalDateTime.now();
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performancesId,merchantId);
KylinPerformanceVo vo = redisMerchantUtils.getPerformanceVo(performancesId, merchantId);
if (vo != null && vo.getAuditStatus() == 0) {
PerformancePartnerVo performancePartnerVo = PerformancePartnerVo.getNew();
performancePartnerVo.setPerformancesId(performancesId);
......@@ -614,20 +611,20 @@ public class KylinPerformancesPartnerServiceImpl implements IKylinPerformancesPa
performancePartnerVo.setAuditStatus(1);
queueUtil.sendMsgByRedis(MQConst.MerchantQueue.SQL_MERCHANT_PERFORMANCE_UPDATE.getKey(),
SqlMapping.get("kylin_performances_status.withdraw",
1, performancesId,now,now
1, performancesId, now, now
));
} else if (vo.getAppStatus() == 4 || vo.getAppStatus() == 1) {//未通过审核
performancePartnerVo.setAuditStatus(-1);
performancePartnerVo.setStatus(0);
queueUtil.sendMsgByRedis(MQConst.MerchantQueue.SQL_MERCHANT_PERFORMANCE_UPDATE.getKey(),
SqlMapping.get("kylin_performances_status.withdraw2",
-1, 0, performancesId,now,now
-1, 0, performancesId, now, now
));
} else {
performancePartnerVo.setAuditStatus(2);
queueUtil.sendMsgByRedis(MQConst.MerchantQueue.SQL_MERCHANT_PERFORMANCE_UPDATE.getKey(),
SqlMapping.get("kylin_performances_status.withdraw",
2, performancesId,now,now
2, performancesId, now, now
));
}
mongoMerchantUtils.updatePerformancePartnerVoById(performancePartnerVo);
......
......@@ -354,7 +354,7 @@ public class KylinTicketsPartnerServiceImpl implements IKylinTicketsPartnerServi
ticketPartnerVo.setTicketsId(ticketsId);
ticketPartnerVo.setStatus(9);
mongoMerchantUtils.updateTicketPartnerVo(ticketPartnerVo);
performanceUtils.performanceVoStatus(performancesId);
performanceUtils.performanceVoStatus(performancesId,null);
log.info(UserPathDto.setPartnerData("0", "onLine", "performancesId=" + performancesId + ",ticketsId=" + ticketsId, "上线成功"));
return ResponseDto.success("上线成功");
} else {
......@@ -397,7 +397,7 @@ public class KylinTicketsPartnerServiceImpl implements IKylinTicketsPartnerServi
ticketPartnerVo.setTicketsId(ticketsId);
ticketPartnerVo.setStatus(7);
mongoMerchantUtils.updateTicketPartnerVo(ticketPartnerVo);
performanceUtils.performanceVoStatus(performancesId);
performanceUtils.performanceVoStatus(performancesId,null);
log.info(UserPathDto.setPartnerData("0", "outLine", "performancesId=" + performancesId + ",ticketsId=" + ticketsId, "下线成功"));
return ResponseDto.success("下线成功");
} else {
......
......@@ -35,6 +35,8 @@ public class MongoMerchantUtils {
private MongoTemplate mongoTemplate;
@Autowired
private MongoConverter mongoConverter;
@Autowired
private RedisMerchantUtils redisMerchantUtils;
public PerformancePartnerVo getPerformancePartnerVo(String performanceId,String merchantId) {
......@@ -175,15 +177,8 @@ public class MongoMerchantUtils {
return mongoTemplate.insert(data, KylinPerformanceVo.class.getSimpleName());
}
public void updatePerformanceVo(HashMap<String, Object> map, String performanceId) {
BasicDBObject objectTicketVo = new BasicDBObject("$set", mongoConverter.convertToMongoType(map));
mongoTemplate.getCollection(KylinPerformanceVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("performancesId").is(performanceId)).getQueryObject(),
objectTicketVo
);
}
public Object delPerformanceVo(String performanceId) {
redisMerchantUtils.delPerformanceVo(performanceId);
return mongoTemplate.remove(Query.query(Criteria.where("performancesId").is(performanceId)), KylinPerformanceVo.class, KylinPerformanceVo.class.getSimpleName());
}
......
......@@ -55,7 +55,7 @@ public class PerformanceUtils {
*
* @param performanceSingleId
*/
public void performanceVoStatus(String performanceSingleId) {
public void performanceVoStatus(String performanceSingleId,Integer voStatus) {
LinkedList<String> sqls = CollectionUtil.linkedListString();
sqls.add(SqlMapping.get("kylin_ticket_status.VoStatus"));
sqls.add(SqlMapping.get("kylin_performance_status.VoStatus"));
......@@ -74,6 +74,9 @@ public class PerformanceUtils {
for (String performancesId : performanceIdList) {
KylinPerformanceVo vo = combinePerformanceVoData(performancesId);
if(voStatus!=null){
vo.setAppStatus(voStatus);
}
//场次
List<KylinTicketTimesVo> timesData = vo.getTicketTimeList();
if (timesData.size() == 0) {
......
......@@ -52,17 +52,27 @@ public class RedisMerchantUtils {
* @param performanceId
* @return
*/
public KylinPerformanceVo getPerformanceVo(String performanceId,String merchantId) {
public KylinPerformanceVo getPerformanceVo(String performanceId, String merchantId) {
Object obj = redisUtil.get(KylinRedisConst.PERFORMANCES + performanceId);
if (obj != null) {
return (KylinPerformanceVo) obj;
} else {
KylinPerformanceVo performanceData = mongoMerchantUtils.getPerformanceVo(performanceId,merchantId);
KylinPerformanceVo performanceData = mongoMerchantUtils.getPerformanceVo(performanceId, merchantId);
redisUtil.set(KylinRedisConst.PERFORMANCES + performanceId, performanceData);
return performanceData;
}
}
/**
* 根据演出id 删除 演出vo 详情
*
* @param performanceId
* @return
*/
public void delPerformanceVo(String performanceId) {
redisUtil.del(KylinRedisConst.PERFORMANCES+performanceId);
}
public KylinPerformanceVo getPerformanceVoNoMerchant(String performanceId) {
Object obj = redisUtil.get(KylinRedisConst.PERFORMANCES + performanceId);
if (obj != null) {
......
......@@ -26,8 +26,8 @@ kylin_ticket_status.onLine=UPDATE kylin_ticket_status SET status = ?, updated_at
# ---- 演出第二步骤操作 ----
kylin_performance.updateStep2=UPDATE kylin_performances SET audit_time = ? , notice_image = ? WHERE performances_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
kylin_performance_status.updateStep2=UPDATE kylin_performance_status SET audit_status = ? , is_true_name = ? , limit_count = ? WHERE performance_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
kylin_ticket.updateStep2=UPDATE kylin_tickets SET time_end = ? , time_start = ? ,time_end_express = ? ,pay_countdown_minute = ? WHERE tickets_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
kylin_ticket_status.updateStep2=UPDATE kylin_ticket_status SET WHERE ticket_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
kylin_ticket.updateStep2=UPDATE kylin_tickets SET time_end = ? , time_start = ? ,time_end_express = ? ,pay_countdown_minute = ? ,price = ? WHERE tickets_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
kylin_ticket_status.updateStep2=UPDATE kylin_ticket_status SET total_exchange = ? , total_general = ? , is_true_name = ? , limit_count = ? , is_lack_register = ? , is_express = ? , is_electronic = ? ,counts = ? , is_show_code = ? ,qr_code_show_time = ? WHERE ticket_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
# ---- VoStatus ----
kylin_ticket_status.VoStatus=UPDATE kylin_ticket_status SET status = ?, surplus_general = ? WHERE ticket_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
kylin_performance_status.VoStatus=UPDATE kylin_performance_status SET status = ? WHERE performance_id = ? and (updated_at <= ? or created_at = ? or updated_at is null)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment