test summary
This commit is contained in:
parent
36d1599817
commit
2ee52e849d
91
job.go
91
job.go
@ -2379,10 +2379,12 @@ func jobCraftAll(j Job) {
|
|||||||
|
|
||||||
func jobCheckVaultLimit(j Job) {
|
func jobCheckVaultLimit(j Job) {
|
||||||
var (
|
var (
|
||||||
p JobPayloadCheckVaultLimit
|
p JobPayloadCheckVaultLimit
|
||||||
p2 JobPayloadGetVault
|
p2 JobPayloadGetVault
|
||||||
b []byte
|
pPost JobPayloadGetVault
|
||||||
out string
|
pPre JobPayloadGetVault
|
||||||
|
b []byte
|
||||||
|
out string
|
||||||
)
|
)
|
||||||
|
|
||||||
err := setJobStart(j.ID64)
|
err := setJobStart(j.ID64)
|
||||||
@ -2391,7 +2393,30 @@ func jobCheckVaultLimit(j Job) {
|
|||||||
err = json.Unmarshal(j.Payload, &p)
|
err = json.Unmarshal(j.Payload, &p)
|
||||||
logOnError(err, "jobCheckVaultLimit : Unmarshal payload")
|
logOnError(err, "jobCheckVaultLimit : Unmarshal payload")
|
||||||
|
|
||||||
if p.Status == 0 {
|
if p.Status == 0 { // check pre war
|
||||||
|
p2.JobCallbackID64 = j.ID64
|
||||||
|
p2.ItemTypeList = make([]int64, 1)
|
||||||
|
p2.ItemTypeList = append(p2.ItemTypeList, cacheObjSubType[`item_res`])
|
||||||
|
|
||||||
|
b, err = json.Marshal(p2)
|
||||||
|
logOnError(err, "jobCheckVaultLimit : Marshal(p2)")
|
||||||
|
|
||||||
|
jobID64, err := createJob(cacheObjSubType[`job_get_vault`], objJobPriority, j.UserID64, 0, time.Now().UTC(), b)
|
||||||
|
|
||||||
|
p.Status = 1
|
||||||
|
p.VaulPreJobID64 = jobID64
|
||||||
|
|
||||||
|
b, err = json.Marshal(p)
|
||||||
|
logOnError(err, "jobCheckVaultLimit : Marshal(p)")
|
||||||
|
|
||||||
|
err = setJobPayloadJSON(j.ID64, p)
|
||||||
|
logOnError(err, "jobCheckVaultLimit : setJobPayloadJSON(p)")
|
||||||
|
|
||||||
|
rescheduleJob(j.ID64, 0, time.Unix(maxUnixTimestamp, 0).UTC())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if p.Status == 1 {
|
||||||
p2.JobCallbackID64 = j.ID64
|
p2.JobCallbackID64 = j.ID64
|
||||||
p2.ItemTypeList = make([]int64, 0)
|
p2.ItemTypeList = make([]int64, 0)
|
||||||
|
|
||||||
@ -2405,10 +2430,10 @@ func jobCheckVaultLimit(j Job) {
|
|||||||
b, err = json.Marshal(p2)
|
b, err = json.Marshal(p2)
|
||||||
logOnError(err, "jobCheckVaultLimit : Marshal(p2)")
|
logOnError(err, "jobCheckVaultLimit : Marshal(p2)")
|
||||||
|
|
||||||
jobID64, err := createJob(cacheObjSubType[`job_get_vault`], objJobPriority, j.UserID64, 0, time.Now().UTC(), b)
|
jobID64, err := createJob(cacheObjSubType[`job_get_vault`], objJobPriority, j.UserID64, 0, time.Now().Add(time.Duration(15)*time.Minute).UTC(), b) // schedule for after battle
|
||||||
|
|
||||||
p.Status = 1
|
p.Status = 2
|
||||||
p.VaultJobID64 = jobID64
|
p.VaultPostJobID64 = jobID64
|
||||||
|
|
||||||
b, err = json.Marshal(p)
|
b, err = json.Marshal(p)
|
||||||
logOnError(err, "jobCheckVaultLimit : Marshal(p)")
|
logOnError(err, "jobCheckVaultLimit : Marshal(p)")
|
||||||
@ -2420,8 +2445,12 @@ func jobCheckVaultLimit(j Job) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
b = getJobPayload(p.VaultJobID64)
|
b = getJobPayload(p.VaultPostJobID64)
|
||||||
err = json.Unmarshal(b, &p2)
|
err = json.Unmarshal(b, &pPost)
|
||||||
|
logOnError(err, "jobCheckVaultLimit : Unmarshal(p2)")
|
||||||
|
|
||||||
|
b = getJobPayload(p.VaultPreJobID64)
|
||||||
|
err = json.Unmarshal(b, &pPre)
|
||||||
logOnError(err, "jobCheckVaultLimit : Unmarshal(p2)")
|
logOnError(err, "jobCheckVaultLimit : Unmarshal(p2)")
|
||||||
|
|
||||||
var empty bool = true
|
var empty bool = true
|
||||||
@ -2430,7 +2459,7 @@ func jobCheckVaultLimit(j Job) {
|
|||||||
id := getObjItemID(l.Item, ``)
|
id := getObjItemID(l.Item, ``)
|
||||||
obj, err := getObjItem(id)
|
obj, err := getObjItem(id)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
for _, i := range p2.Vault {
|
for _, i := range pPost.Vault {
|
||||||
if id == i.ItemID64 {
|
if id == i.ItemID64 {
|
||||||
if i.Quantity > l.Max {
|
if i.Quantity > l.Max {
|
||||||
empty = false
|
empty = false
|
||||||
@ -2444,7 +2473,45 @@ func jobCheckVaultLimit(j Job) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if empty {
|
if empty {
|
||||||
out = fmt.Sprintf("%s- all good !", out)
|
out = fmt.Sprintf("%s- all good !\n", out)
|
||||||
|
}
|
||||||
|
|
||||||
|
empty = true
|
||||||
|
out = fmt.Sprintf("%sWar summary :\n", out)
|
||||||
|
for _, iPre := range pPre.Vault {
|
||||||
|
var itemEmpty bool = true
|
||||||
|
for _, iPost := range pPost.Vault {
|
||||||
|
if iPre.ItemID64 == iPost.ItemID64 {
|
||||||
|
itemEmpty = false
|
||||||
|
if iPre.Quantity != iPost.Quantity {
|
||||||
|
empty = false
|
||||||
|
obj, _ := getObjItem(iPre.ItemID64)
|
||||||
|
if iPre.Quantity > iPost.Quantity {
|
||||||
|
out = fmt.Sprintf("%s- [%s] lost %d\n", out, obj.Names[0], iPre.Quantity-iPost.Quantity)
|
||||||
|
} else {
|
||||||
|
out = fmt.Sprintf("%s- [%s] won %d\n", out, obj.Names[0], iPost.Quantity-iPre.Quantity)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if itemEmpty {
|
||||||
|
empty = false
|
||||||
|
obj, _ := getObjItem(iPre.ItemID64)
|
||||||
|
out = fmt.Sprintf("%s- [%s] lost %d\n", out, obj.Names[0], iPre.Quantity)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for _, iPost := range pPost.Vault {
|
||||||
|
var itemEmpty bool = true
|
||||||
|
for _, iPre := range pPre.Vault {
|
||||||
|
if iPre.ItemID64 == iPost.ItemID64 {
|
||||||
|
itemEmpty = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if itemEmpty {
|
||||||
|
empty = false
|
||||||
|
obj, _ := getObjItem(iPre.ItemID64)
|
||||||
|
out = fmt.Sprintf("%s- [%s] won %d\n", out, obj.Names[0], iPost.Quantity)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
c := TGCommand{
|
c := TGCommand{
|
||||||
|
Loading…
Reference in New Issue
Block a user