act.QueryActs

This commit is contained in:
gazebo
2019-12-23 18:14:57 +08:00
parent 65c09d395b
commit c730a28f19

View File

@@ -204,25 +204,25 @@ func QueryActs(db *DaoDB, actID int, offset, pageSize int, syncStatus int, keywo
SELECT
t1.*,
t2.id map_id, t2.vendor_id, t2.vendor_act_id, t2.sync_status, t2.remark map_remark
FROM act t1
LEFT JOIN act_map t2 ON t2.act_id = t1.id AND t2.deleted_at = ?`
sqlParams = []interface{}{utils.DefaultTimeValue}
if syncStatus >= 0 {
sql += " AND (t2.sync_status = ? OR t2.sync_status & ? <> 0)"
sqlParams = append(sqlParams, syncStatus, syncStatus)
}
} else if syncStatus >= 0 {
sql += " JOIN act_map t2 ON t2.act_id = t1.id AND t2.deleted_at = ? AND (t2.sync_status = ? OR t2.sync_status & ? <> 0)"
sqlParams = append(sqlParams, utils.DefaultTimeValue, syncStatus, syncStatus)
FROM act t1`
}
sql += " LEFT JOIN act_map t2 ON t2.act_id = t1.id AND t2.deleted_at = ?"
sqlParams = append(sqlParams, utils.DefaultTimeValue)
if syncStatus >= 0 {
sql += " AND (t2.sync_status = ? OR t2.sync_status & ? <> 0)"
sqlParams = append(sqlParams, syncStatus, syncStatus)
}
sql += `
WHERE t1.deleted_at = ?`
if syncStatus >= 0 {
sql += " AND t2.id IS NOT NULL"
}
sqlParams = append(sqlParams, utils.DefaultTimeValue)
keywordInt := int64(0)
if keyword != "" {
keywordLike := "%" + keyword + "%"
sql += " AND ( t1.name LIKE ? OR t1.advertising LIKE ? OR t1.remark LIKE ?"
sqlParams = append(sqlParams, keywordLike, keywordLike, keywordLike)
sql += " AND ( t1.name LIKE ? OR t1.advertising LIKE ? OR t1.remark LIKE ? OR t2.vendor_act_id LIKE ?"
sqlParams = append(sqlParams, keywordLike, keywordLike, keywordLike, keywordLike)
keywordInt = utils.Str2Int64WithDefault(keyword, 0)
if keywordInt > 0 {
sql += `
@@ -321,9 +321,12 @@ func QueryActs(db *DaoDB, actID int, offset, pageSize int, syncStatus int, keywo
t2.id map_id, t2.vendor_id, t2.vendor_org_code, t2.vendor_act_id, t2.sync_status, t2.remark map_remark
FROM act t1
LEFT JOIN act_map t2 ON t2.act_id = t1.id AND t2.deleted_at = ?
WHERE t1.id IN (` + GenQuestionMarks(len(idList)) + `)
ORDER BY t1.id DESC, t2.vendor_id
`
WHERE t1.id IN (` + GenQuestionMarks(len(idList)) + `)`
if syncStatus >= 0 {
sql += " AND t2.id IS NOT NULL"
}
sql += `
ORDER BY t1.id DESC, t2.vendor_id`
sqlParams = []interface{}{
utils.DefaultTimeValue,
idList,