Browse Source

Merge branch 'dev4.4' of ssh://192.168.3.207:10022/qmx/jy into dev4.4

yangfeng 4 years ago
parent
commit
3fc818ab22

+ 25 - 0
src/jfw/modules/bigmember/src/ent.json

@@ -0,0 +1,25 @@
+{
+	"ents":[
+		"山东弘盛信息科技有限公司",
+		"北京数慧时空信息技术有限公司",
+		"上海帕科信息科技有限公司",
+		"北京惠泽智信科技有限公司",
+		"泰豪软件股份有限公司",
+		"浙江创联信息技术股份有限公司",
+		"成都索贝数码科技股份有限公司",
+		"上海宝信软件股份有限公司",
+		"北京嘉和美康信息技术有限公司",
+		"内蒙古新联信息产业有限公司",
+		"中电科信息产业有限公司",
+		"深圳市雅码科技有限公司",
+		"杭州中房信息科技有限公司",
+		"福建顶点软件股份有限公司",
+		"浙江和仁科技股份有限公司",
+		"武汉荣御信息技术有限公司",
+		"武汉中地数码科技有限公司",
+		"双翊科技有限公司",
+		"南京苏迪科技有限公司",
+		"云南智讯达科技开发有限公司",
+		"南京南软科技有限公司"
+		]
+}

+ 111 - 0
src/jfw/modules/bigmember/src/entinfo/entinfo.go

@@ -0,0 +1,111 @@
+package entinfo
+
+import (
+	"db"
+	"fmt"
+	"qfw/util"
+	"qfw/util/elastic"
+	. "util"
+
+	"github.com/go-xweb/xweb"
+)
+
+type entConfig struct {
+	Ents []string `json:"ents"`
+}
+
+var EntConfig *entConfig
+
+type EntInfoStruct struct {
+	EntName        string  `json:"entName"`        //企业名称
+	EntId          string  `json:"entId"`          //id需要加密
+	Company_area   string  `json:"company_area"`   //地区
+	Company_city   string  `json:"company_city"`   //城市
+	Establish_date string  `json:"establish_date"` //注册时间
+	Capital        float64 `json:"capital"`        //注册金额
+	Company_phone  string  `json:"company_phone"`  //公司联系方式
+	Employee_no    string  `json:"employee_no"`    //员工人数
+}
+
+func init() {
+	xweb.AddAction(&EntInfo{})
+	util.ReadConfig("./ent.json", &EntConfig)
+}
+
+var entData = []EntInfoStruct{}
+
+type EntInfo struct {
+	*xweb.Action
+	entInfos xweb.Mapper `xweb:"/entinfo/bynames"` //根据entname 查询企业信息
+}
+
+//
+func (this *EntInfo) EntInfos() error {
+	defer util.Catch()
+	if len(entData) == 0 {
+		entInfoInit()
+	}
+	this.ServeJson(entData)
+	return nil
+}
+
+//查询中标企业名称【带曾用名检索】
+const queryFullEntName = `{"query":{"function_score":{"query":{"multi_match":{"query":"%s","type":"phrase","fields":["name","history_name"]}},"field_value_factor":{"field":"company_type_int","modifier":"reciprocal","factor":2}}},"_source":["name","history_name","company_type_int","_id","company_area","company_city","establish_date","capital","company_phone", "employee_no"],"size":%d}`
+
+//数据填充
+func entInfoInit() []EntInfoStruct {
+	if len(EntConfig.Ents) > 0 {
+		var lastEnts = EntConfig.Ents
+		entInfo := EntInfoStruct{}
+		query := map[string]interface{}{
+			"company_name": map[string]interface{}{
+				"$in": lastEnts,
+			},
+		}
+		sess := db.Mgo_Ent.GetMgoConn()
+		defer db.Mgo_Ent.DestoryMongoConn(sess)
+		it := sess.DB(db.Mgo_Ent.DbName).C("qyxy_std").Find(query).Select(map[string]interface{}{"company_name": 1, "_id": 1, "company_area": 1, "company_city": 1, "establish_date": 1, "capital": 1, "employee_no": 1, "company_phone": 1}).Iter()
+		for m := make(map[string]interface{}); it.Next(&m); {
+			if m["company_name"] != nil && m["company_name"].(string) != "" {
+				entInfo.EntId = EncodeId(m["_id"].(string))
+				entInfo.EntName = util.ObjToString(m["company_name"])
+				entInfo.Company_area = util.ObjToString(m["company_area"])
+				entInfo.Company_city = util.ObjToString(m["company_city"])
+				entInfo.Establish_date = util.ObjToString(m["establish_date"])
+				entInfo.Company_phone = util.ObjToString(m["company_phone"])
+				entInfo.Employee_no = util.ObjToString(m["employee_no"])
+				entInfo.Capital = util.Float64All(m["capital"])
+				entData = append(entData, entInfo)
+				for ek, ev := range lastEnts {
+					if ev == entInfo.EntName {
+						lastEnts = append(lastEnts[:ek], lastEnts[ek+1:]...)
+					}
+				}
+			}
+		}
+		if len(lastEnts) > 0 {
+			for _, ev := range lastEnts {
+				if ev != "" {
+					list := elastic.Get("qyxy", "qyxy", fmt.Sprintf(queryFullEntName, ev, 1))
+					m := make(map[string]interface{})
+					if list != nil && len(*list) > 0 {
+						m = (*list)[0]
+					}
+					if util.ObjToString(m["_id"]) == "" {
+						continue
+					}
+					entInfo.EntId = EncodeId(util.ObjToString(m["_id"]))
+					entInfo.EntName = util.ObjToString(m["name"])
+					entInfo.Company_area = util.ObjToString(m["company_area"])
+					entInfo.Company_city = util.ObjToString(m["company_city"])
+					entInfo.Establish_date = util.ObjToString(m["establish_date"])
+					entInfo.Company_phone = util.ObjToString(m["company_phone"])
+					entInfo.Employee_no = util.ObjToString(m["employee_no"])
+					entInfo.Capital = util.Float64All(m["capital"])
+					entData = append(entData, entInfo)
+				}
+			}
+		}
+	}
+	return entData
+}

+ 1 - 0
src/jfw/modules/bigmember/src/main.go

@@ -4,6 +4,7 @@ import (
 	_ "a"
 	. "config"
 	_ "db"
+	_ "entinfo"
 	_ "filter"
 	"net/http"
 	_ "service"