|
@@ -3,9 +3,6 @@ package service
|
|
|
import (
|
|
|
"encoding/json"
|
|
|
"fmt"
|
|
|
- "github.com/go-xweb/xweb"
|
|
|
- "github.com/lauyoume/gopinyin"
|
|
|
- "gopkg.in/mgo.v2/bson"
|
|
|
"io/ioutil"
|
|
|
"log"
|
|
|
"net/http"
|
|
@@ -13,47 +10,52 @@ import (
|
|
|
"strings"
|
|
|
"time"
|
|
|
. "util"
|
|
|
+
|
|
|
+ "github.com/go-xweb/xweb"
|
|
|
+ "github.com/lauyoume/gopinyin"
|
|
|
+ "gopkg.in/mgo.v2/bson"
|
|
|
)
|
|
|
|
|
|
type Customer struct {
|
|
|
*xweb.Action
|
|
|
- customerList xweb.Mapper `xweb:"/service/customer/list"`
|
|
|
- customerCreate xweb.Mapper `xweb:"/service/customer/create"`
|
|
|
- customerEdit xweb.Mapper `xweb:"/service/customer/edit"`
|
|
|
+ customerList xweb.Mapper `xweb:"/service/customer/list"`
|
|
|
+ customerCreate xweb.Mapper `xweb:"/service/customer/create"`
|
|
|
+ customerEdit xweb.Mapper `xweb:"/service/customer/edit"`
|
|
|
customerEuser xweb.Mapper `xweb:"/service/customer/euser"`
|
|
|
- customerSave xweb.Mapper `xweb:"/service/customer/save"`
|
|
|
- customerDel xweb.Mapper `xweb:"/service/customer/del"`
|
|
|
- customerHistory xweb.Mapper `xweb:"/service/customer/history"`
|
|
|
- setupDepart xweb.Mapper `xweb:"/service/customer/setup"`
|
|
|
+ customerSave xweb.Mapper `xweb:"/service/customer/save"`
|
|
|
+ customerDel xweb.Mapper `xweb:"/service/customer/del"`
|
|
|
+ customerHistory xweb.Mapper `xweb:"/service/customer/history"`
|
|
|
+ setupDepart xweb.Mapper `xweb:"/service/customer/setup"`
|
|
|
|
|
|
- departDel xweb.Mapper `xweb:"/service/depart/del"`
|
|
|
- departEdit xweb.Mapper `xweb:"/service/depart/edit"`
|
|
|
+ departDel xweb.Mapper `xweb:"/service/depart/del"`
|
|
|
+ departEdit xweb.Mapper `xweb:"/service/depart/edit"`
|
|
|
|
|
|
//转企
|
|
|
- cuserToEuser xweb.Mapper `xweb:"/service/cuser/converted"`
|
|
|
+ cuserToEuser xweb.Mapper `xweb:"/service/cuser/converted"`
|
|
|
//同步
|
|
|
- synEuser xweb.Mapper `xweb:"/service/euser/synchronous"`
|
|
|
+ synEuser xweb.Mapper `xweb:"/service/euser/synchronous"`
|
|
|
//企业客户
|
|
|
- entEuserList xweb.Mapper `xweb:"/service/entCustomer/list"`
|
|
|
-
|
|
|
- cuserRule xweb.Mapper `xweb:"/service/cuser/rule/list"` //规则列表 部门
|
|
|
- euserRule xweb.Mapper `xweb:"/service/euser/rule/list"`
|
|
|
- cuserRuleCreate xweb.Mapper `xweb:"/service/cuser/rule/create"` //新建规则
|
|
|
- cuserRuleEdit xweb.Mapper `xweb:"/service/cuser/rule/Edit"`
|
|
|
- euserRule1 xweb.Mapper `xweb:"/service/euser/rule"`
|
|
|
- cuserRuleDel xweb.Mapper `xweb:"/service/cuser/rule/Del"`
|
|
|
+ entEuserList xweb.Mapper `xweb:"/service/entCustomer/list"`
|
|
|
+
|
|
|
+ cuserRule xweb.Mapper `xweb:"/service/cuser/rule/list"` //规则列表 部门
|
|
|
+ euserRule xweb.Mapper `xweb:"/service/euser/rule/list"`
|
|
|
+ cuserRuleCreate xweb.Mapper `xweb:"/service/cuser/rule/create"` //新建规则
|
|
|
+ cuserRuleEdit xweb.Mapper `xweb:"/service/cuser/rule/Edit"`
|
|
|
+ euserRule1 xweb.Mapper `xweb:"/service/euser/rule"`
|
|
|
+ cuserRuleDel xweb.Mapper `xweb:"/service/cuser/rule/Del"`
|
|
|
cuserRuleSetup xweb.Mapper `xweb:"/service/cuser/rule/setup"`
|
|
|
- productData xweb.Mapper `xweb:"/service/cuser/produce"` //生成预览数据
|
|
|
+ productData xweb.Mapper `xweb:"/service/cuser/produce"` //生成预览数据
|
|
|
//企业标签
|
|
|
- euserTagEdit xweb.Mapper `xweb:"/service/euser/tag/edit"`
|
|
|
- euserTag xweb.Mapper `xweb:"/service/euser/tag"`
|
|
|
- euserImport xweb.Mapper `xweb:"/service/esuer/tag/import"`
|
|
|
- tagSetup xweb.Mapper `xweb:"/service/euser/tag/setup"`
|
|
|
- tagDel xweb.Mapper `xweb:"/service/euser/tag/del"`
|
|
|
- cuserRuleList xweb.Mapper `xweb:"/service/tag/ruleList"` //规则列表 客户
|
|
|
- tagAssociated xweb.Mapper `xweb:"/service/euser/tag/associated"` //私有标签关联规则
|
|
|
- customerAllRule xweb.Mapper `xweb:"/service/customer/history/allrule"` //用户历史规则
|
|
|
- saveHistoryRule xweb.Mapper `xweb:"/service/customer/history/saverule"` //保存历史规则
|
|
|
+ euserTagEdit xweb.Mapper `xweb:"/service/euser/tag/edit"`
|
|
|
+ euserTag xweb.Mapper `xweb:"/service/euser/tag"`
|
|
|
+ euserImport xweb.Mapper `xweb:"/service/esuer/tag/import"`
|
|
|
+ tagSetup xweb.Mapper `xweb:"/service/euser/tag/setup"`
|
|
|
+ tagDel xweb.Mapper `xweb:"/service/euser/tag/del"`
|
|
|
+ cuserRuleList xweb.Mapper `xweb:"/service/tag/ruleList"` //规则列表 客户
|
|
|
+ tagAssociated xweb.Mapper `xweb:"/service/euser/tag/associated"` //私有标签关联规则
|
|
|
+ customerAllRule xweb.Mapper `xweb:"/service/customer/history/allrule"` //用户历史规则
|
|
|
+ saveHistoryRule xweb.Mapper `xweb:"/service/customer/history/saverule"` //保存历史规则
|
|
|
+ historyRuleCreate xweb.Mapper `xweb:"/service/cuser/rule/history/edit"`
|
|
|
}
|
|
|
|
|
|
func (c *Customer) CustomerList() {
|
|
@@ -103,7 +105,7 @@ func (c *Customer) CustomerEdit() {
|
|
|
data, _ := Mgo.FindOneByField("cuser", query, `{}`)
|
|
|
depart, _ := Mgo.Find("cuserdepart", bson.M{"s_userid": id, "b_delete": false}, nil, nil, false, -1, -1)
|
|
|
(*data)["_id"] = qu.BsonIdToSId((*data)["_id"])
|
|
|
- if (*data)["i_state"] == 1 {
|
|
|
+ if (*data)["i_state"] == 1 {
|
|
|
tagRule, _ := Mgo.Find("eusertagrule", bson.M{"s_userid": id, "b_delete": false}, nil, nil, false, -1, -1)
|
|
|
c.T["tagrule"] = *tagRule
|
|
|
}
|
|
@@ -120,7 +122,7 @@ func (c *Customer) CustomerEuser() {
|
|
|
data, _ := Mgo.FindOneByField("euser", query, `{}`)
|
|
|
depart, _ := Mgo.Find("euserdepart", bson.M{"s_userid": id, "b_delete": false}, nil, nil, false, -1, -1)
|
|
|
(*data)["_id"] = qu.BsonIdToSId((*data)["_id"])
|
|
|
- if (*data)["i_state"] == 1 {
|
|
|
+ if (*data)["i_state"] == 1 {
|
|
|
tagRule, _ := Mgo.Find("eusertagrule", bson.M{"s_userid": id, "b_delete": false}, nil, nil, false, -1, -1)
|
|
|
c.T["tagrule"] = *tagRule
|
|
|
}
|
|
@@ -202,7 +204,7 @@ func (c *Customer) DepartEdit() {
|
|
|
if _id == "" {
|
|
|
b = false
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
set := bson.M{
|
|
|
"$set": data,
|
|
|
}
|
|
@@ -224,7 +226,7 @@ func (c *Customer) SetupDepart() {
|
|
|
set := bson.M{
|
|
|
"$set": bson.M{
|
|
|
"i_updatetime": nowtime,
|
|
|
- "i_isuse": i_isuse,
|
|
|
+ "i_isuse": i_isuse,
|
|
|
},
|
|
|
}
|
|
|
b := Mgo.UpdateById("cuserdepart", _id, set)
|
|
@@ -234,7 +236,7 @@ func (c *Customer) SetupDepart() {
|
|
|
ruleMap, _ := Mgo.Find("cuserdepartrule", bson.M{"s_userid": _id}, nil, nil, false, -1, -1)
|
|
|
for _, v := range *ruleMap {
|
|
|
idAndSet := []map[string]interface{}{}
|
|
|
- idAndSet = append(idAndSet, bson.M{"_id": v["_id"]}) //查询条件
|
|
|
+ idAndSet = append(idAndSet, bson.M{"_id": v["_id"]}) //查询条件
|
|
|
idAndSet = append(idAndSet, bson.M{"i_isuse": i_isuse, "i_updatetime": nowtime}) //修改的数据
|
|
|
update = append(update, idAndSet)
|
|
|
}
|
|
@@ -284,7 +286,7 @@ func (c *Customer) CuserToEuser() {
|
|
|
"$set": bson.M{
|
|
|
"i_toservicetime": nowTime,
|
|
|
"i_lastsynctime": nowTime,
|
|
|
- "s_appid": appid,
|
|
|
+ "s_appid": appid,
|
|
|
"i_state": 1,
|
|
|
},
|
|
|
}
|
|
@@ -313,7 +315,7 @@ func (c *Customer) CuserToEuser() {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-func GetCustomerAppId(customer string ) string {
|
|
|
+func GetCustomerAppId(customer string) string {
|
|
|
defer qu.Catch()
|
|
|
user, _ := MgoCus.FindOne("user", map[string]interface{}{"username": customer})
|
|
|
appid := ""
|
|
@@ -353,16 +355,17 @@ func GetCustomerAppId(customer string ) string {
|
|
|
//}
|
|
|
return appid
|
|
|
}
|
|
|
+
|
|
|
//同步
|
|
|
func (c *Customer) SynEuser() {
|
|
|
defer qu.Catch()
|
|
|
_id := c.GetString("_id")
|
|
|
cuser, _ := Mgo.FindById("cuser", _id, nil)
|
|
|
nowTime := time.Now().Unix()
|
|
|
- (*cuser)["i_lastsynctime"] = nowTime //同步时间
|
|
|
+ (*cuser)["i_lastsynctime"] = nowTime //同步时间
|
|
|
set := bson.M{
|
|
|
"$set": bson.M{
|
|
|
- "i_lastsynctime": nowTime,
|
|
|
+ "i_lastsynctime": nowTime,
|
|
|
},
|
|
|
}
|
|
|
b := Mgo.Update("cuser", bson.M{"_id": qu.StringTOBsonId(_id)}, set, false, false)
|
|
@@ -384,8 +387,8 @@ func (c *Customer) SynEuser() {
|
|
|
update := [][]map[string]interface{}{}
|
|
|
for _, v := range *departMap {
|
|
|
idAndSet := []map[string]interface{}{}
|
|
|
- idAndSet = append(idAndSet, bson.M{"_id": v["_id"]}) //查询条件
|
|
|
- idAndSet = append(idAndSet, v) //修改的数据
|
|
|
+ idAndSet = append(idAndSet, bson.M{"_id": v["_id"]}) //查询条件
|
|
|
+ idAndSet = append(idAndSet, v) //修改的数据
|
|
|
update = append(update, idAndSet)
|
|
|
}
|
|
|
Mgo.UpSertBulk("euserdepart", update...)
|
|
@@ -394,8 +397,8 @@ func (c *Customer) SynEuser() {
|
|
|
update2 := [][]map[string]interface{}{}
|
|
|
for _, v := range *ruleMap {
|
|
|
idAndSet := []map[string]interface{}{}
|
|
|
- idAndSet = append(idAndSet, bson.M{"_id": v["_id"]}) //查询条件
|
|
|
- idAndSet = append(idAndSet, v) //修改的数据
|
|
|
+ idAndSet = append(idAndSet, bson.M{"_id": v["_id"]}) //查询条件
|
|
|
+ idAndSet = append(idAndSet, v) //修改的数据
|
|
|
update2 = append(update2, idAndSet)
|
|
|
}
|
|
|
b = Mgo.UpSertBulk("euserdepartrule", update2...)
|
|
@@ -541,7 +544,7 @@ func (c *Customer) CuserRuleCreate() {
|
|
|
} else {
|
|
|
rep = false
|
|
|
}
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
query := bson.M{
|
|
|
"_id": qu.StringTOBsonId(id),
|
|
|
}
|
|
@@ -579,7 +582,7 @@ func (c *Customer) CuserRuleEdit() {
|
|
|
data, _ := Mgo.FindOneByField("cuserdepartrule", query, `{}`)
|
|
|
(*data)["id"] = qu.BsonIdToSId((*data)["_id"])
|
|
|
c.T["cid"] = (*data)["s_userid"]
|
|
|
- c.T["ids"] = qu.ObjToString((*data)["s_departid"]) + "," + qu.ObjToString((*data)["s_userid"])
|
|
|
+ c.T["ids"] = qu.ObjToString((*data)["s_departid"]) + "," + qu.ObjToString((*data)["s_userid"])
|
|
|
c.T["data"] = *data
|
|
|
c.T["province"] = Province
|
|
|
c.T["city"] = ProvinceCitys
|
|
@@ -601,7 +604,7 @@ func (c *Customer) EuserRule1() {
|
|
|
data, _ := Mgo.FindOneByField("euserdepartrule", query, `{}`)
|
|
|
(*data)["id"] = qu.BsonIdToSId((*data)["_id"])
|
|
|
c.T["cid"] = (*data)["s_userid"]
|
|
|
- c.T["ids"] = qu.ObjToString((*data)["s_departid"]) + "," + qu.ObjToString((*data)["s_userid"])
|
|
|
+ c.T["ids"] = qu.ObjToString((*data)["s_departid"]) + "," + qu.ObjToString((*data)["s_userid"])
|
|
|
c.T["data"] = *data
|
|
|
c.T["province"] = Province
|
|
|
c.T["city"] = ProvinceCitys
|
|
@@ -630,7 +633,7 @@ func (c *Customer) CuserRuleDel() {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-func (c *Customer) CuserRuleSetup() {
|
|
|
+func (c *Customer) CuserRuleSetup() {
|
|
|
defer qu.Catch()
|
|
|
if c.Method() == "POST" {
|
|
|
_id := c.GetString("_id")
|
|
@@ -667,7 +670,7 @@ func (c *Customer) ProductData() {
|
|
|
func (c *Customer) EuserTagEdit() {
|
|
|
defer qu.Catch()
|
|
|
if c.Method() == "POST" {
|
|
|
- _id := c.GetString("_id");
|
|
|
+ _id := c.GetString("_id")
|
|
|
data := GetPostForm(c.Request)
|
|
|
cid := qu.ObjToString(data["s_userid"])
|
|
|
createTime := time.Now().Unix()
|
|
@@ -681,7 +684,7 @@ func (c *Customer) EuserTagEdit() {
|
|
|
data["i_updatetime"] = createTime
|
|
|
data["b_delete"] = false
|
|
|
_id = Mgo.Save("eusertagrule", data)
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
query := bson.M{
|
|
|
"_id": qu.StringTOBsonId(_id),
|
|
|
}
|
|
@@ -689,8 +692,8 @@ func (c *Customer) EuserTagEdit() {
|
|
|
}
|
|
|
|
|
|
c.ServeJson(map[string]interface{}{
|
|
|
- "id": cid,
|
|
|
- "rep": rep,
|
|
|
+ "id": cid,
|
|
|
+ "rep": rep,
|
|
|
})
|
|
|
} else {
|
|
|
if c.GetString("id") != "" {
|
|
@@ -707,7 +710,7 @@ func (c *Customer) EuserTagEdit() {
|
|
|
func (c *Customer) EuserTag() {
|
|
|
defer qu.Catch()
|
|
|
if c.Method() == "POST" {
|
|
|
- _id := c.GetString("_id");
|
|
|
+ _id := c.GetString("_id")
|
|
|
data := GetPostForm(c.Request)
|
|
|
cid := qu.ObjToString(data["s_userid"])
|
|
|
createTime := time.Now().Unix()
|
|
@@ -721,7 +724,7 @@ func (c *Customer) EuserTag() {
|
|
|
data["i_updatetime"] = createTime
|
|
|
data["b_delete"] = false
|
|
|
_id = Mgo.Save("eusertagrule", data)
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
query := bson.M{
|
|
|
"_id": qu.StringTOBsonId(_id),
|
|
|
}
|
|
@@ -729,8 +732,8 @@ func (c *Customer) EuserTag() {
|
|
|
}
|
|
|
|
|
|
c.ServeJson(map[string]interface{}{
|
|
|
- "id": cid,
|
|
|
- "rep": rep,
|
|
|
+ "id": cid,
|
|
|
+ "rep": rep,
|
|
|
})
|
|
|
} else {
|
|
|
if c.GetString("id") != "" {
|
|
@@ -808,9 +811,9 @@ func (c *Customer) CuserRuleList() {
|
|
|
searchStr := c.GetString("search[value]")
|
|
|
search := strings.TrimSpace(searchStr)
|
|
|
query := bson.M{
|
|
|
- "s_userid": eid,
|
|
|
- "i_isuse": 1,
|
|
|
- "b_delete": false,
|
|
|
+ "s_userid": eid,
|
|
|
+ "i_isuse": 1,
|
|
|
+ "b_delete": false,
|
|
|
}
|
|
|
if search != "" {
|
|
|
query["$or"] = []interface{}{
|
|
@@ -847,8 +850,7 @@ func (c *Customer) TagAssociated() {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-func (c *Customer)CustomerHistory(){
|
|
|
+func (c *Customer) CustomerHistory() {
|
|
|
defer qu.Catch()
|
|
|
log.Println("&&&")
|
|
|
id := c.GetString("id")
|
|
@@ -857,7 +859,7 @@ func (c *Customer)CustomerHistory(){
|
|
|
data, _ := Mgo.FindOneByField("cuser", query, `{}`)
|
|
|
depart, _ := Mgo.Find("cuserdepart", bson.M{"s_userid": id, "b_delete": false}, nil, nil, false, -1, -1)
|
|
|
(*data)["_id"] = qu.BsonIdToSId((*data)["_id"])
|
|
|
- if (*data)["i_state"] == 1 {
|
|
|
+ if (*data)["i_state"] == 1 {
|
|
|
tagRule, _ := Mgo.Find("eusertagrule", bson.M{"s_userid": id, "b_delete": false}, nil, nil, false, -1, -1)
|
|
|
c.T["tagrule"] = *tagRule
|
|
|
}
|
|
@@ -867,45 +869,128 @@ func (c *Customer)CustomerHistory(){
|
|
|
}
|
|
|
|
|
|
//选择历史规则
|
|
|
-func (c *Customer)CustomerAllRule(){
|
|
|
+func (c *Customer) CustomerAllRule() {
|
|
|
customerId := c.GetString("c_id")
|
|
|
query := bson.M{
|
|
|
- "s_userid": customerId,
|
|
|
- "b_delete": false,
|
|
|
+ "s_userid": customerId,
|
|
|
+ "b_delete": false,
|
|
|
}
|
|
|
- data,_ := Mgo.Find("cuserdepart",query, `{"i_createtime":-1}`, nil, false, 0, 0)
|
|
|
- if data!=nil&&len(*data)!=0{
|
|
|
+ data, _ := Mgo.Find("cuserdepart", query, `{"i_createtime":-1}`, nil, false, 0, 0)
|
|
|
+ if data != nil && len(*data) != 0 {
|
|
|
res := []map[string]interface{}{}
|
|
|
- for _,m := range *data{
|
|
|
+ for _, m := range *data {
|
|
|
history_rule_data := make(map[string]interface{})
|
|
|
q := bson.M{
|
|
|
- "s_departid": m["_id"].(bson.ObjectId).Hex(),
|
|
|
+ "s_departid": m["_id"].(bson.ObjectId).Hex(),
|
|
|
"b_delete": false,
|
|
|
}
|
|
|
history_rule_data["department_isuse"] = m["i_isuse"]
|
|
|
history_rule_data["depart_name"] = m["s_name"]
|
|
|
- depart_rule_data,_:=Mgo.Find("cuserdepartrule",q, `{"i_createtime":-1}`, `{"s_tagname":1,"i_updatetime":1,"i_isuse":1,"_id":1}`, false, 0, 0)
|
|
|
- if depart_rule_data!=nil&&len(*depart_rule_data)!=0{
|
|
|
- for _,j:= range *depart_rule_data{
|
|
|
+ depart_rule_data, _ := Mgo.Find("cuserdepartrule", q, `{"i_createtime":-1}`, `{"s_tagname":1,"i_updatetime":1,"i_isuse":1,"_id":1}`, false, 0, 0)
|
|
|
+ if depart_rule_data != nil && len(*depart_rule_data) != 0 {
|
|
|
+ for _, j := range *depart_rule_data {
|
|
|
j["_id"] = j["_id"].(bson.ObjectId).Hex()
|
|
|
}
|
|
|
history_rule_data["department_rule"] = depart_rule_data
|
|
|
}
|
|
|
- res = append(res,history_rule_data)
|
|
|
+ res = append(res, history_rule_data)
|
|
|
}
|
|
|
c.ServeJson(map[string]interface{}{
|
|
|
- "status":"success",
|
|
|
- "data":res,
|
|
|
+ "status": "success",
|
|
|
+ "data": res,
|
|
|
})
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
c.ServeJson(map[string]interface{}{
|
|
|
- "status":"fail",
|
|
|
- "data":"",
|
|
|
+ "status": "fail",
|
|
|
+ "data": "",
|
|
|
})
|
|
|
}
|
|
|
}
|
|
|
|
|
|
//保存历史规则
|
|
|
-func (c *Customer)SaveHistoryRule(){
|
|
|
+func (c *Customer) SaveHistoryRule() {
|
|
|
|
|
|
-}
|
|
|
+}
|
|
|
+
|
|
|
+func (c *Customer) HistoryRuleCreate() {
|
|
|
+ defer qu.Catch()
|
|
|
+ if c.Method() == "POST" {
|
|
|
+ user := c.GetSession("user").(map[string]interface{})
|
|
|
+ data := GetPostForm(c.Request)
|
|
|
+ o_rules := []map[string]interface{}{}
|
|
|
+ o_rulesStr := data["o_rules"].(string)
|
|
|
+ json.Unmarshal([]byte(o_rulesStr), &o_rules)
|
|
|
+ data["o_rules"] = o_rules
|
|
|
+ id := qu.ObjToString(data["id"])
|
|
|
+ user_id := data["ids"]
|
|
|
+ delete(data, "id")
|
|
|
+ delete(data, "ids")
|
|
|
+ if qu.IntAll(data["i_esquerytype"]) == 1 { //自动生成es
|
|
|
+ data["s_esquery"] = Utiltags(data)
|
|
|
+ }
|
|
|
+ i_createtime := time.Now().Unix()
|
|
|
+ data["i_updatetime"] = i_createtime
|
|
|
+ data["s_updateuser"] = user["name"]
|
|
|
+ var rep = false
|
|
|
+ s_id := ""
|
|
|
+ if id == "" { //新建
|
|
|
+ dData, ok := Mgo.FindOne("euserdepart", bson.M{"s_userid": user_id, "s_name": data["departmentName"]})
|
|
|
+ if dData == nil || *dData == nil || !ok {
|
|
|
+ d_data := map[string]interface{}{
|
|
|
+ "i_isuse": 1,
|
|
|
+ "s_userid": user_id,
|
|
|
+ "s_name": data["departmentName"],
|
|
|
+ "i_createtime": time.Now().Unix(),
|
|
|
+ "i_updatetime": time.Now().Unix(),
|
|
|
+ "b_delete": false,
|
|
|
+ "i_type": "historyData",
|
|
|
+ }
|
|
|
+ s_id = Mgo.Save("euserdepart", d_data)
|
|
|
+ } else {
|
|
|
+ s_id = qu.BsonIdToSId((*dData)["_id"])
|
|
|
+ }
|
|
|
+ data["s_userid"] = user_id
|
|
|
+ data["s_departid"] = s_id
|
|
|
+ data["i_createtime"] = i_createtime
|
|
|
+ data["s_createuser"] = user["name"]
|
|
|
+ s_tagnamekey := gopinyin.Convert(qu.ObjToString(data["s_tagname"]), false)
|
|
|
+ data["s_tagnamekey"] = s_tagnamekey
|
|
|
+ data["b_delete"] = false
|
|
|
+ data["s_dataid"] = qu.SE.EncodeString(fmt.Sprintf("%v", i_createtime) + s_tagnamekey + s_id)
|
|
|
+ id = Mgo.Save("cuserdepartrule", data)
|
|
|
+ if id != "" {
|
|
|
+ rep = true
|
|
|
+ } else {
|
|
|
+ rep = false
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ query := bson.M{
|
|
|
+ "_id": qu.StringTOBsonId(id),
|
|
|
+ }
|
|
|
+ rep = Mgo.Update("cuserdepartrule", query, bson.M{"$set": data}, false, false)
|
|
|
+ }
|
|
|
+
|
|
|
+ c.ServeJson(map[string]interface{}{
|
|
|
+ "id": id,
|
|
|
+ "rep": rep,
|
|
|
+ "s_esquery": data["s_esquery"],
|
|
|
+ "s_dataid": data["s_dataid"],
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ id := c.GetString("id")
|
|
|
+ c.T["did"] = id //部门id
|
|
|
+ c.T["cid"] = id //客户id
|
|
|
+ c.T["ids"] = id
|
|
|
+ c.T["province"] = Province
|
|
|
+ c.T["city"] = ProvinceCitys
|
|
|
+ c.T["district"] = CityDistricts
|
|
|
+ c.T["topTypeArr"] = TopTypeArr
|
|
|
+ c.T["subTypeArr"] = SubTypeArr
|
|
|
+ c.T["matchTypeMap"] = MatchTypeMap
|
|
|
+ c.T["matchTypeMap2"] = MatchTypeMap2
|
|
|
+ c.T["existField"] = ExistFiled
|
|
|
+ c.T["buyerClass"] = BuyerClass
|
|
|
+ c.T["scopeClass"] = ScopeClassMap
|
|
|
+ c.Render("private/cuser_rule_history_edit.html", &c.T)
|
|
|
+ }
|
|
|
+}
|