package clean import ( qu "jygit.jydev.jianyu360.cn/data_processing/common_utils" "regexp" ) // 通用清洗方法 var ( fieldReg1 = regexp.MustCompile("([\\s ]+)") pcodeReg1 = regexp.MustCompile("([((]变更[))])$") pcodeReg2 = regexp.MustCompile("([\\*]+)") ) func CleanFieldInfo(zhipu map[string]interface{}, fns []string) map[string]interface{} { data := map[string]interface{}{} if s_area, s_city := CleanRegion(qu.ObjToString(zhipu["省份"]), qu.ObjToString(zhipu["城市"])); s_area != "" || s_city != "" { data["s_area"] = s_area data["s_city"] = s_city } if s_buyer := CleanBuyer(qu.ObjToString(zhipu["采购单位"])); s_buyer != "" { data["s_buyer"] = s_buyer } if s_pname := CleanPname(qu.ObjToString(zhipu["项目名称"])); s_pname != "" { data["s_projectname"] = s_pname } if s_pcode := CleanPcode(qu.ObjToString(zhipu["项目编号"]), fns); s_pcode != "" { data["s_projectcode"] = s_pcode } if s_budget := CleanMoney([]interface{}{zhipu["预算金额"], ""}); s_budget > 0.0 && s_budget < 1000000000.0 { data["s_budget"] = s_budget } if s_bidamount := CleanMoney([]interface{}{zhipu["中标金额"], ""}); s_bidamount > 0.0 && s_bidamount < 1000000000.0 { data["s_bidamount"] = s_bidamount } if s_winner := CleanWinner(qu.ObjToString(zhipu["中标单位"])); s_winner != "" { data["s_winner"] = s_winner } //分包字段 if zhipu["s_pkg"] != nil { data["s_pkg"] = zhipu["s_pkg"] } if zhipu["ispkg"] != nil { data["ispkg"] = zhipu["ispkg"] } //分类字段 s_toptype := qu.ObjToString(zhipu["s_toptype"]) s_subtype := qu.ObjToString(zhipu["s_subtype"]) data["s_toptype"] = s_toptype data["s_subtype"] = s_subtype if s_subtype == "合同" || s_subtype == "中标" || s_subtype == "成交" { if qu.Float64All(data["s_budget"]) == qu.Float64All(data["s_bidamount"]) && qu.Float64All(data["s_budget"]) > 0.0 { delete(data, "s_budget") } } return data }