Explorar o código

医疗领域~准备~标签~备份

zhengkun %!s(int64=2) %!d(string=hai) anos
pai
achega
e2364506ce

+ 15 - 5
fieldproject_medical/data_preparation/src/hospital/hospital.go

@@ -18,7 +18,7 @@ var (
 
 func RunHospital() {
 	RunBuildHospitalInfo()
-	RunCleanHospitalInfo()
+	RunCleanHospitalNameInfo(save_hospital_coll)
 	RunResetHospitalInfo(save_hospital_coll, "name")
 	//增加索引
 	createMgoIndex(save_hospital_coll, []string{"repeat_id", "name"})
@@ -26,14 +26,19 @@ func RunHospital() {
 	//增加索引
 	createMgoIndex(merge_hospital_coll_1, []string{"repeat_id", "name"})
 	RunRepairHospitalInfo()
+	RunCleanHospitalSpecTypeInfo(merge_hospital_coll_1)
 	RunResetHospitalInfo(merge_hospital_coll_1, "name")
 	RunMergeHospitalInfo(merge_hospital_coll_1, merge_hospital_coll_2)
+
 	//根据最终的company_id 重置判重标记
 	RunResetHospitalInfo(merge_hospital_coll_2, "company_id")
 	//增加索引
 	createMgoIndex(merge_hospital_coll_2, []string{"repeat_id", "name"})
 	RunMergeHospitalInfo(merge_hospital_coll_2, merge_hospital_coll_3)
 
+	//修改mgo~特殊情况下~数据信息~
+	RepairMgoFalseInfoData()
+
 }
 
 //开始执行医院数据
@@ -46,10 +51,15 @@ func RunBuildHospitalInfo() {
 	time.Sleep(10 * time.Second)
 }
 
-//开始执行清洗医院数据
-func RunCleanHospitalInfo() {
-	//清洗~医院信息~名称
-	cleanHospitalInfoData()
+//开始执行清洗医院名称数据
+func RunCleanHospitalNameInfo(coll_name string) {
+	cleanHospitalNameInfoData(coll_name)
+	time.Sleep(10 * time.Second)
+}
+
+//开始执行清洗医院特殊类型数据
+func RunCleanHospitalSpecTypeInfo(coll_name string) {
+	cleanHospitalSpecTypeInfoData(coll_name)
 	time.Sleep(10 * time.Second)
 }
 

+ 38 - 9
fieldproject_medical/data_preparation/src/hospital/hospital_clean.go

@@ -17,13 +17,13 @@ var suffixReg_4 = regexp.MustCompile("[((]原([::])?(.*)[))]$")
 var suffixReg_5 = regexp.MustCompile("(院|区|部)[))]$")
 
 //整合医院数据
-func cleanHospitalInfoData() {
-	log.Debug("清洗医院信息~~开始~~")
+func cleanHospitalSpecTypeInfoData(coll_name string) {
+	log.Debug("清洗医院特殊信息~~开始~~")
 	data_hospitals = map[string]string{}
 	sess := class.Save_Mgo.GetMgoConn()
 	defer class.Save_Mgo.DestoryMongoConn(sess)
 	q := map[string]interface{}{}
-	it := sess.DB(class.Save_Mgo.DbName).C(save_hospital_coll).Find(&q).Sort("_id").Iter()
+	it := sess.DB(class.Save_Mgo.DbName).C(coll_name).Find(&q).Sort("_id").Iter()
 	total := 0
 	for tmp := make(map[string]interface{}); it.Next(&tmp); total++ {
 		if total%5000 == 0 {
@@ -32,24 +32,53 @@ func cleanHospitalInfoData() {
 		//更新表
 		update := map[string]interface{}{}
 		tmpid := class.BsonTOStringId(tmp["_id"])
-		//清洗当前别名
-		cleanHospitalAlias(tmp, &update)
-		//清洗医院名称~涉及别名
-		cleanHospitalName(tmp, &update)
 		//清洗等级,性质
 		cleanHospitalLevelBuss(tmp, &update)
 		//清洗类型
 		cleanHospitalType(tmp, &update)
 
 		if len(update) > 0 && tmpid != "" {
-			class.Save_Mgo.UpdateById(save_hospital_coll, tmpid, map[string]interface{}{
+			class.Save_Mgo.UpdateById(coll_name, tmpid, map[string]interface{}{
+				"$set": update,
+			})
+		}
+		tmp = make(map[string]interface{})
+	}
+
+	log.Debug("清洗医院特殊信息~~over~~", total)
+
+}
+
+//整合医院数据
+func cleanHospitalNameInfoData(coll_name string) {
+	log.Debug("清洗医院名称信息~~开始~~")
+	data_hospitals = map[string]string{}
+	sess := class.Save_Mgo.GetMgoConn()
+	defer class.Save_Mgo.DestoryMongoConn(sess)
+	q := map[string]interface{}{}
+	it := sess.DB(class.Save_Mgo.DbName).C(coll_name).Find(&q).Sort("_id").Iter()
+	total := 0
+	for tmp := make(map[string]interface{}); it.Next(&tmp); total++ {
+		if total%5000 == 0 {
+			log.Debug("cur index ", total)
+		}
+		//更新表
+		update := map[string]interface{}{}
+		tmpid := class.BsonTOStringId(tmp["_id"])
+		//清洗当前别名
+		cleanHospitalAlias(tmp, &update)
+		//清洗医院名称~涉及别名
+		cleanHospitalName(tmp, &update)
+
+		if len(update) > 0 && tmpid != "" {
+			class.Save_Mgo.UpdateById(coll_name, tmpid, map[string]interface{}{
 				"$set": update,
 			})
 		}
 		tmp = make(map[string]interface{})
 	}
 
-	log.Debug("清洗医院信息~~over~~", total)
+	log.Debug("清洗医院名称信息~~over~~", total)
 
 }
 

+ 14 - 3
fieldproject_medical/data_preparation/src/hospital/hospital_pingan.go

@@ -28,6 +28,10 @@ func SupplementPingAnMedicalData() {
 		}
 		company_id := qu.ObjToString(tmp["company_id"])
 		if company_id != "" {
+			save_data := map[string]interface{}{
+				"company_name": tmp["company_name"],
+				"company_id":   tmp["company_id"],
+			}
 			data := class.MysqlMedicalTool.FindOne(class.V_Institution_Baseinfo, map[string]interface{}{
 				"company_id": company_id,
 			}, "company_id", "")
@@ -35,7 +39,11 @@ func SupplementPingAnMedicalData() {
 				isok++
 				//构建数据信息
 				dealWithPingAnInfo(tmp)
+				save_data["repeat"] = 0
+			} else {
+				save_data["repeat"] = 1
 			}
+			class.Save_Mgo.Save("zktest_hospital_supplement_data", save_data)
 		}
 		tmp = make(map[string]interface{})
 	}
@@ -44,12 +52,15 @@ func SupplementPingAnMedicalData() {
 
 func dealWithPingAnInfo(tmp map[string]interface{}) {
 	data_info := map[string]interface{}{}
+	hospital_name := qu.ObjToString(tmp["company_name"])
 	data_info["company_id"] = qu.ObjToString(tmp["company_id"])
-	data_info["mi_name"] = qu.ObjToString(tmp["company_name"])
+	data_info["mi_name"] = hospital_name
 	data_info["address"] = qu.ObjToString(tmp["company_address"])
 	data_info["introduce"] = qu.ObjToString(tmp["business_scope"])
 
-	new_level, new_type, new_bustype, new_sdequipment := codificationOfInfo("其它", "其它~", "其它")
+	type_1, type_2 := confrimFromFieldHospitalRule(hospital_name, hospital_name, false)
+	new_type := type_1 + "~" + type_2
+	new_level, new_type, new_bustype, new_sdequipment := codificationOfInfo("其它", new_type, "公立")
 	data_info["level_code"] = new_level
 	data_info["mi_type_code"] = new_type
 	data_info["business_type"] = new_bustype
@@ -61,7 +72,7 @@ func dealWithPingAnInfo(tmp map[string]interface{}) {
 	area_code := regionallyCode(area, "", "")
 	data_info["area_code"] = area_code
 
-	data_info["sourceweb"] = "凭安"
+	data_info["sourceweb"] = "凭安补充"
 	data_info["pcompany_id"] = ""
 	data_info["mark_id"] = 4
 	data_info["comeintime"] = time.Unix(time.Now().Unix(), 0).Format(class.TimeLayout)

+ 35 - 0
fieldproject_medical/data_preparation/src/hospital/hospital_repair.go

@@ -5,6 +5,7 @@ import (
 	log "github.com/donnie4w/go-logger/logger"
 	"github.com/uuid"
 	qu "qfw/util"
+	"regexp"
 	"strings"
 	"sync"
 )
@@ -96,3 +97,37 @@ func updateMarkIdHospital() {
 	}
 	log.Debug("更新机构~自生id~~over~~ ", total, isok)
 }
+
+//根据最后的规则~修复特殊~数据
+func RepairMgoFalseInfoData() {
+	log.Debug("最后执行信息的~特殊清洗~~~")
+	repairFalseReg := regexp.MustCompile("[()()]")
+	sess := class.Save_Mgo.GetMgoConn()
+	defer class.Save_Mgo.DestoryMongoConn(sess)
+	q := map[string]interface{}{
+		"type": "综合医院~",
+	}
+	it := sess.DB(class.Save_Mgo.DbName).C(merge_hospital_coll_3).Find(&q).Sort("_id").Select(map[string]interface{}{
+		"name": 1,
+	}).Iter()
+	total, isok := 0, 0
+	for tmp := make(map[string]interface{}); it.Next(&tmp); total++ {
+		if total%5000 == 0 {
+			log.Debug("cur index ", total, "~", isok)
+		}
+		tmpid := class.BsonTOStringId(tmp["_id"])
+		name := qu.ObjToString(tmp["name"])
+		if strings.Contains(name, "卫生院") &&
+			!repairFalseReg.MatchString(name) {
+			isok++
+			class.Save_Mgo.UpdateById(merge_hospital_coll_3, tmpid, map[string]interface{}{
+				"$set": map[string]interface{}{
+					"type": "乡镇卫生院~",
+				},
+			})
+		}
+		tmp = make(map[string]interface{})
+	}
+
+	log.Debug("is spec repair over ", total, "~", isok)
+}

+ 1 - 1
fieldproject_medical/data_preparation/src/hospital/hospital_sql.go

@@ -19,7 +19,7 @@ func ExportHospitalInfoToMysql() {
 	defer class.Save_Mgo.DestoryMongoConn(sess)
 	q := map[string]interface{}{}
 	it := sess.DB(class.Save_Mgo.DbName).C(merge_hospital_coll_3).Find(&q).Sort("_id").Iter()
-	pool := make(chan bool, 3)
+	pool := make(chan bool, 5)
 	wg := &sync.WaitGroup{}
 	total := 0
 	for tmp := make(map[string]interface{}); it.Next(&tmp); total++ {

+ 2 - 7
fieldproject_medical/data_preparation/src/main.go

@@ -4,7 +4,6 @@ import (
 	"class"
 	"flag"
 	log "github.com/donnie4w/go-logger/logger"
-	"hospital"
 	"net/http"
 	"time"
 )
@@ -15,14 +14,10 @@ func init() {
 }
 func main() {
 	log.Debug("run main ... ")
-	hospital.SupplementPingAnMedicalData()
-
-	//hospital.RunMergeHospitalInfo("zktest_hospital_info", "zktest_hospital_info_new")
-
 	//处理医院
 	//hospital.RunHospital()
-	//导入信息~医疗关联sql表
 	//hospital.ExportHospitalInfoToMysql()
+	//hospital.SupplementPingAnMedicalData()
 
 	//代码表构建
 	//vcode.RunVCodeData()
@@ -33,7 +28,7 @@ func main() {
 	//企业生产经营产品~信息
 	//company.RunCompanyProductInfo()
 
-	time.Sleep(999 * time.Hour)
+	time.Sleep(99999 * time.Hour)
 }
 
 //暂不使用~

+ 26 - 0
fieldproject_medical/data_preparation/src/repair/repairclass.go

@@ -5,6 +5,8 @@ import (
 	"fmt"
 	log "github.com/donnie4w/go-logger/logger"
 	qu "qfw/util"
+	"regexp"
+	"strings"
 )
 
 var (
@@ -13,6 +15,30 @@ var (
 	NameClassData  = map[string]string{}
 )
 
+var repairNameReg_1 = regexp.MustCompile("[()()]")
+
+//修复异常类型数据~测试版~是否需要?
+func RepairUnTypeHospitalData() {
+	/*
+		医疗机构名称包含“卫生院”,type是“综合医院”,且医疗机构名称不包含括号。这批数据的类型更新为乡镇卫生院
+	*/
+	datas := class.MysqlMedicalTool.Find("institution_baseinfo", map[string]interface{}{
+		"mi_type_code": "01",
+	}, "mi_name,id,mi_type_code", "", -1, -1)
+	if datas != nil {
+		log.Debug("数量~", len(*datas))
+		ok := 0
+		for _, v := range *datas {
+			name := qu.ObjToString(v["mi_name"])
+			if strings.Contains(name, "卫生院") &&
+				!repairNameReg_1.MatchString(name) {
+				ok++
+			}
+		}
+		log.Debug("待修改数量~", ok)
+	}
+}
+
 //修复未分类产品信息
 func RepairUnClassProduct() {
 	initRepairVCodeData()

+ 14 - 14
fieldproject_medical/data_preparation/src/vcode/vcode.go

@@ -10,21 +10,21 @@ import (
 func RunVCodeData() {
 	log.Debug("开始准备~代码表~")
 
-	g_code_bidfield()
-	g_code_bidscope()
-	g_code_bidtopsubtype()
-	g_code_area()
+	//g_code_bidfield()
+	//g_code_bidscope()
+	//g_code_bidtopsubtype()
+	//g_code_area()
 	log.Debug("代码表数据准备完毕~g")
 
-	y_code_level()
-	y_code_department()
+	//y_code_level()
+	//y_code_department()
 	y_code_type()
-	y_code_sdleveltypeequip()
-	y_code_productclass()
+	//y_code_sdleveltypeequip()
+	//y_code_productclass()
 	log.Debug("代码表数据准备完毕~y")
 
-	b_code_buyerclass()
-	b_code_buyerfield()
+	//b_code_buyerclass()
+	//b_code_buyerfield()
 	log.Debug("代码表数据准备完毕~b")
 }
 
@@ -13594,10 +13594,10 @@ func y_code_department() {
 
 //医疗机构类型代码表 code_type
 func y_code_type() {
-	code := []string{"01", "02", "0201", "0202", "0203", "0204", "0205", "0206", "0207", "0208", "0209", "0210", "0211", "0212", "03", "04", "05", "0501", "0502", "06", "07", "08", "09", "0901", "0902", "0903", "0904", "0905", "0906", "0907", "10", "1001", "1002", "1003", "1004", "1005", "1006", "1007", "1008", "1009", "1010", "1011", "1012", "11", "12", "1201", "1202", "1203", "13", "1301", "1302", "1303", "14", "15", "16", "17"}
-	pcode := []string{"", "", "02", "02", "02", "02", "02", "02", "02", "02", "02", "02", "02", "02", "", "", "", "05", "05", "", "", "", "", "09", "09", "09", "09", "09", "09", "09", "", "10", "10", "10", "10", "10", "10", "10", "10", "10", "10", "10", "10", "", "", "12", "12", "12", "", "13", "13", "13", "", "", "", ""}
-	level := []string{"1", "1", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "1", "1", "1", "2", "2", "1", "1", "1", "1", "2", "2", "2", "2", "2", "2", "2", "1", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "1", "1", "2", "2", "2", "1", "2", "2", "2", "1", "1", "1", "1"}
-	name := []string{"综合医院", "专科医院", "口腔医院", "肿瘤医院", "儿童医院", "精神病医院", "传染病医院", "心血管病医院", "血液病医院", "皮肤病医院", "整形外科医院", "美容医院", "康复医院", "其它", "中医医院", "民族医院", "妇幼保健", "妇幼保健院", "妇幼保健计划生育服务中心", "社区卫生服务中心", "乡镇卫生院", "疗养院", "门诊部", "综合门诊部", "中西医结合门诊部", "普通专科门诊部", "口腔门诊部", "整形外科门诊部", "医疗美容门诊部", "其它", "诊所卫生所", "卫生所", "医务室", "中医诊所", "中西医结合诊所", "民族医诊所", "口腔诊所", "美容整形外科诊所", "医疗美容诊所", "精神卫生诊所", "中小学卫生保健所", "卫生站", "其它", "村卫生室", "急救中心/站", "急救站", "急救中心", "急救科", "防治院", "口腔病防治所", "职业病防治所", "职业病防治院", "护理中心", "检验诊断中心", "中西医结合医院", "其它"}
+	code := []string{"01", "02", "0201", "0202", "0203", "0204", "0205", "0206", "0207", "0208", "0209", "0210", "0211", "0200", "03", "04", "05", "0501", "0502", "0500", "06", "07", "08", "09", "0901", "0902", "0903", "0904", "0905", "0906", "0900", "10", "1001", "1002", "1003", "1004", "1005", "1006", "1007", "1008", "1009", "1010", "1011", "1000", "11", "12", "1201", "1202", "1203", "1200", "13", "1301", "1302", "1303", "1300", "14", "15", "16", "00"}
+	pcode := []string{"", "", "02", "02", "02", "02", "02", "02", "02", "02", "02", "02", "02", "02", "", "", "", "05", "05", "05", "", "", "", "", "09", "09", "09", "09", "09", "09", "09", "", "10", "10", "10", "10", "10", "10", "10", "10", "10", "10", "10", "10", "", "", "12", "12", "12", "12", "", "13", "13", "13", "13", "", "", "", ""}
+	level := []string{"1", "1", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "1", "1", "1", "2", "2", "2", "1", "1", "1", "1", "2", "2", "2", "2", "2", "2", "2", "1", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "2", "1", "1", "2", "2", "2", "2", "1", "2", "2", "2", "2", "1", "1", "1", "1"}
+	name := []string{"综合医院", "专科医院", "口腔医院", "肿瘤医院", "儿童医院", "精神病医院", "传染病医院", "心血管病医院", "血液病医院", "皮肤病医院", "整形外科医院", "美容医院", "康复医院", "其它", "中医医院", "民族医院", "妇幼保健", "妇幼保健院", "妇幼保健计划生育服务中心", "其它", "社区卫生服务中心", "乡镇卫生院", "疗养院", "门诊部", "综合门诊部", "中西医结合门诊部", "普通专科门诊部", "口腔门诊部", "整形外科门诊部", "医疗美容门诊部", "其它", "诊所卫生所", "卫生所", "医务室", "中医诊所", "中西医结合诊所", "民族医诊所", "口腔诊所", "美容整形外科诊所", "医疗美容诊所", "精神卫生诊所", "中小学卫生保健所", "卫生站", "其它", "村卫生室", "急救中心/站", "急救站", "急救中心", "急救科", "其它", "防治院", "口腔病防治所", "职业病防治所", "职业病防治院", "其它", "护理中心", "检验诊断中心", "中西医结合医院", "其它"}
 	log.Debug(len(code), len(pcode), len(level), len(name))
 	for k, _ := range code {
 		dict := map[string]interface{}{

+ 8 - 9
fieldproject_medical/data_service/src/main.go

@@ -2,24 +2,23 @@ package main
 
 import (
 	"bidding"
-	log "github.com/donnie4w/go-logger/logger"
-	"time"
+	"udp"
 	ul "util"
 )
 
 func init() {
+	udp.InitUdpMsg()
 	ul.InitClass()
 }
 
 func main() {
-	//http.ListenAndServe(":9991", nil)
-	time.Sleep(999 * time.Hour)
+	//Test()
+	lock := make(chan bool)
+	<-lock
 }
 
-func mainT() {
-	gtid := "5a868de3ddb36226a5764a75"
-	lteid := "5fc49168f0f9d716c165a22c"
-	log.Debug("run main ... ...", gtid, "~", lteid)
+func Test() {
+	gtid := "630e34000000000000000000"
+	lteid := "6314cb800000000000000000"
 	bidding.RunPurchasingInfo(gtid, lteid, true)
-	time.Sleep(999 * time.Hour)
 }

+ 80 - 1
fieldproject_medical/data_service/src/mark

@@ -1,3 +1,16 @@
+8月31日 ~ id
+630e34000000000000000000
+9月05日 ~ id
+6314cb800000000000000000
+
+
+
+
+
+
+
+
+
 for k, v := range Medical_Class_Code {
 	key := ""
     if utf8.RuneCountInString(k) == 2 {
@@ -53,4 +66,70 @@ for k, v := range Medical_Class_Code {
 
     5fc49168f0f9d716c165a22c
     630e30ad555d34cf90e0aed1
-*/
+*/
+
+
+
+
+func taskMedicalData() {
+	pool := make(chan bool, 10) //控制线程数
+	wg := &sync.WaitGroup{}
+
+	finalId := 0
+	lastInfo := MysqlM.SelectBySql(fmt.Sprintf("SELECT * FROM %s where mark_id = 1 ORDER BY id DESC LIMIT 1", "institution_baseinfo"))
+	if len(*lastInfo) > 0 {
+		finalId = util.IntAll((*lastInfo)[0]["id"])
+	}
+	log.Info("查询最后id---", zap.Int("finally id: ", finalId))
+	lastid, count := 0, 0
+	for {
+		log.Info("重新查询,lastid---", zap.Int("lastid: ", lastid))
+		q := fmt.Sprintf("SELECT id, company_id FROM %s WHERE id > %d AND mark_id = 1 ORDER BY id ASC limit 1000000", "institution_baseinfo", lastid)
+		rows, err := MysqlM.DB.Query(q)
+		if err != nil {
+			log.Error("mysql query err ", zap.Error(err))
+		}
+		columns, err := rows.Columns()
+		if finalId == lastid {
+			log.Info("----finish-----", zap.Int("count: ", count))
+			break
+		}
+		for rows.Next() {
+			scanArgs := make([]interface{}, len(columns))
+			values := make([]interface{}, len(columns))
+			ret := make(map[string]interface{})
+			for k := range values {
+				scanArgs[k] = &values[k]
+			}
+			err = rows.Scan(scanArgs...)
+			if err != nil {
+				log.Error("mysql scan err ", zap.Error(err))
+				break
+			}
+			for i, col := range values {
+				if v, ok := col.([]uint8); ok {
+					ret[columns[i]] = string(v)
+				} else {
+					ret[columns[i]] = col
+				}
+			}
+			lastid = util.IntAll(ret["id"])
+			count++
+			if count%2000 == 0 {
+				log.Info("current----", zap.Int("count: ", count), zap.Int("lastid: ", lastid))
+			}
+			pool <- true
+			wg.Add(1)
+			go func(tmp map[string]interface{}) {
+				defer func() {
+					<-pool
+					wg.Done()
+				}()
+				taskB(util.ObjToString(tmp["company_id"]))
+			}(ret)
+			ret = make(map[string]interface{})
+		}
+		_ = rows.Close()
+		wg.Wait()
+	}
+}

+ 0 - 1
fieldproject_medical/data_service/src/service/service.go

@@ -15,7 +15,6 @@ func InitService() {
 		gtid := r.FormValue("gtid")
 		lteid := r.FormValue("lteid")
 		bidding.RunPurchasingInfo(gtid, lteid, true)
-		//mgo~
 		res, _ := json.Marshal("ok")
 		w.Write(res)
 	})

+ 47 - 0
fieldproject_medical/data_service/src/udp/udp.go

@@ -0,0 +1,47 @@
+package udp
+
+import (
+	"bidding"
+	"encoding/json"
+	log "github.com/donnie4w/go-logger/logger"
+	mu "mfw/util"
+	"net"
+	qu "qfw/util"
+)
+
+var (
+	udpclient mu.UdpClient
+)
+
+func InitUdpMsg() {
+	port := ":5550"
+	udpclient = mu.UdpClient{Local: ":5550", BufSize: 1024}
+	udpclient.Listen(processUdpMsg)
+	log.Debug("监听~", port)
+}
+
+//udp接收
+func processUdpMsg(act byte, data []byte, ra *net.UDPAddr) {
+	switch act {
+	case mu.OP_TYPE_DATA:
+		var mapInfo map[string]interface{}
+		err := json.Unmarshal(data, &mapInfo)
+		if err != nil {
+			udpclient.WriteUdp([]byte("err:"+err.Error()), mu.OP_NOOP, ra)
+		} else if mapInfo != nil {
+			sid, eid := qu.ObjToString(mapInfo["gtid"]), qu.ObjToString(mapInfo["lteid"])
+			if sid == "" || eid == "" {
+				log.Debug("异常~", sid, "~", eid)
+			} else {
+				key := sid + "-" + eid + "-" + qu.ObjToString(mapInfo["stype"])
+				udpclient.WriteUdp([]byte(key), mu.OP_NOOP, ra)
+				bidding.RunPurchasingInfo(sid, eid, true)
+			}
+		}
+	case mu.OP_NOOP: //下个节点回应
+		ok := string(data)
+		if ok != "" {
+			log.Debug("ok:", ok)
+		}
+	}
+}

+ 1 - 1
fieldproject_medical/data_service/src/util/initcfg.go

@@ -16,7 +16,7 @@ const (
 	V_Code_Productclass  = "code_productclass"
 	V_Product_Baseinfo   = "product_baseinfo"
 
-	S_Bidding_Coll = "bidding_field_0101"
+	S_Bidding_Coll = "bidding"
 
 	U_Bidding_Coll = "bidding"
 )