//1 患者id 和诊断时间
srv := micro_srv.InitMicroSrvClient("BiologicalSamples", "micro_srv.sample")
defer srv.Close()
resp := &comm_def.CommonMsg{}
where := "1 =1 "
var SelectDate []string
nowTime := gtime.Datetime()
beforeTime := gtime.NewFromStr(nowTime).AddDate(0, 0, -7).String()
SelectDate = append(SelectDate, beforeTime)
SelectDate = append(SelectDate, nowTime)
//查询七天内的
if len(SelectDate) != 0 && SelectDate[0] != "" && SelectDate[1] != "" {
where += " and a.CreateOn between '" + SelectDate[0] + "' and '" + SelectDate[1] + "'"
}
var list []bank_samplesource.BankSamplesourceVisit
err := s.DB.Model("bank_samplesource a").LeftJoin("bank_samplesource_visit b", "a.Id=b.sid").Where(where).
Fields("a.InnerNo,b.dateVisit").
Scan(&list)
if err != nil {
log.Println(err)
return
}
if len(list) == 0 {
log.Println("来源信息查询为空")
return
}
for _, val := range list {
if val.DateVisit == nil || val.DateVisit.IsZero() {
continue
}
fmt.Println(gconv.String(val.DateVisit))
err = srv.Call(context.TODO(), "List", common.BiologicalSamplesListReq{
PatientId: val.Innerno,
DateVisit: gconv.String(val.DateVisit),
//PatientId: "1",
//DateVisit: "2022-9-8",
}, resp)
if err != nil {
log.Println("查询错误:", val.Innerno)
continue
}
data := resp.Data.([]interface{})
if len(data) == 0 {
log.Println("查询没有值:", val.Innerno)
return
}
datas := data[0].(map[string]interface{})
//fmt.Println(data[0].(map[string]interface{})["Age"])
sourcedata := g.Map{
"Age": datas["Age"],
"Birthday": datas["Birthday"],
"Nation": datas["Nation"],
"Duty": datas["Duty"],
//"InnerNo": datas["InnerNo"],
"Name": datas["Name"],
"Sex": datas["Sex"],
"IdCard": datas["IdCard"],
"MaritalStatus": datas["MaritalStatus"],
"Department": datas["Department"],
"Telephone": datas["Telephone"],
}
Visitdata := g.Map{
"diseaseName": datas["diseaseName"],
"dateVisit": datas["dateVisit"],
"diagnosis": datas["diagnosis"],
}
_, err = s.DB.Model("bank_samplesource").Where("InnerNo=?", val.Innerno).Data(sourcedata).Update()
_, err = s.DB.Model("bank_samplesource_visit").Where("innerno=? and dateVisit= ? ", val.Innerno, val.DateVisit).Data(Visitdata).Update()
if err != nil {
continue
}
glog.Info("更新成功", val.Innerno)
}
微服务调用二
最新推荐文章于 2024-05-11 15:07:54 发布