feat: 支持采购任务追溯并安全重新创建 (#186)
This commit is contained in:
+34
-1
@@ -83,7 +83,10 @@ func TestModuleNavigation_按账号保存稳定列表状态且安全回退(t *te
|
||||
t.Fatal("没有找到模块查询参数白名单")
|
||||
}
|
||||
whitelist := jsSource[whitelistStart:whitelistEnd]
|
||||
for _, forbidden := range []string{"\"msg\"", "\"error\"", "\"history\"", "\"login\"", "\"change_password\""} {
|
||||
for _, forbidden := range []string{
|
||||
"\"msg\"", "\"error\"", "\"history\"", "\"login\"", "\"change_password\"",
|
||||
"\"open_syb_id\"", "\"purchase_intent\"",
|
||||
} {
|
||||
if strings.Contains(whitelist, forbidden) {
|
||||
t.Errorf("稳定状态白名单不应包含临时参数 %s", forbidden)
|
||||
}
|
||||
@@ -189,6 +192,36 @@ func TestTaskDetail_采购核单结果使用独立只读分组(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestTaskDetail_采购来源与安全重新创建入口(t *testing.T) {
|
||||
files := map[string][]string{
|
||||
"templates/task/detail_modal.html": {
|
||||
"来源信息", "蝦皮订单号", "顺运宝明细 ID", "蝦皮商品 ID", "PDD 商品 ID",
|
||||
`{{if .HasSybSource}}`, `href="{{.ViewSybURL}}"`, "查看原货运单",
|
||||
`{{if .CanRecreatePurchase}}`, `href="{{.RecreatePurchaseURL}}"`, "重新创建采购任务",
|
||||
},
|
||||
"templates/syb/list.html": {
|
||||
`data-auto-open-purchase-id="{{.OpenPurchaseSybID}}"`, `{{range .PurchaseRows}}`,
|
||||
`data-auto-open-detail-id="{{.OpenSybID}}"`,
|
||||
},
|
||||
"static/js/app.js": {
|
||||
`form.getAttribute("data-auto-open-purchase-id")`,
|
||||
`modal.getAttribute("data-auto-open-detail-id")`,
|
||||
`showPurchaseSelection(autoSelected)`, `loadDetail(autoDetailID)`,
|
||||
},
|
||||
}
|
||||
for path, wants := range files {
|
||||
content, err := os.ReadFile(path)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
for _, want := range wants {
|
||||
if !strings.Contains(string(content), want) {
|
||||
t.Errorf("%s 缺少采购来源恢复约束 %q", path, want)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestTaskPage_创建人筛选列表列和详情字段齐全(t *testing.T) {
|
||||
files := map[string][]string{
|
||||
"templates/task/list.html": {
|
||||
|
||||
Reference in New Issue
Block a user