Skip to content
  • P
    Projects
  • G
    Groups
  • S
    Snippets
  • Help

CnChunfeng / crm_server

  • This project
    • Loading...
  • Sign in
Go to a project
  • Project
  • Repository
  • Issues 0
  • Merge Requests 0
  • Pipelines
  • Wiki
  • Snippets
  • Settings
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Files
  • Commits
  • Branches
  • Tags
  • Contributors
  • Graph
  • Compare
  • Charts
Find file
Normal viewHistoryPermalink
Switch branch/tag
  • crm_server
  • internal
  • logic
  • member_user.go
member_user.go 5.59 KB
Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
1 2 3 4 5 6 7
package logic

import (
	"crm-server/internal/common"
	"crm-server/internal/dao"
	"crm-server/internal/model"
	"crm-server/internal/service"
Joneq's avatar
增加三个脚本
489ccb9f
 
Joneq committed 5 years ago
8
	"fmt"
Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
	"regexp"
	"strconv"
	"strings"
)

//会员系统的用户逻辑
var(
	adtag = ""
	ptag = ""
	refer = ""
)
const(
	AdtagRex = "adtag=.*"
	PtagRex = "ptag=.*"
	ReferRex = "refer=.*"
)


//获取会员系统的用户数据sql
const GETMEMBERUSER  = "select `lie_u`.`user_id`, `lie_u`.`mobile`, `lie_u`.`user_name`, `lie_u`.`email`," +
	" `lie_u`.`reg_remark`, `lie_u`.`create_device`, `lie_u`.`create_time`, `lie_c`.`com_id`, `lie_c`.`type_id`," +
	" `lie_c`.`com_name`, `lie_c`.`com_desc`, `lie_c`.`com_province_id`, `lie_c`.`com_city_id`, `lie_c`.`com_area_id`," +
	" `lie_c`.`com_address`, `lie_c`.`com_telphone`, `lie_c`.`com_fax`, `lie_c`.`brand_list`, `lie_i`.`work_function`," +
	" `lie_i`.`user_type`, `lie_i`.`sale_id` as `userinfo_sale_id` from `lie_user_main` as `lie_u` left join `lie_user_info` as " +
	"`lie_i` on `lie_u`.`user_id` = `lie_i`.`user_id` left join `lie_user_company` as `lie_c` on `lie_u`.`user_id` = `lie_c`.`user_id`" +
	" where  `lie_u`.`is_test` = 0 and `lie_u`.`is_type` = 0 and `lie_u`.`user_id` = ? and `lie_u`.`create_device` not in (3, 20)"


//获取会员系统的用户数据sql
func GetMemberUserInfo(memberId int) model.MemberAddUserData {

	var MemberUserInfo model.MemberAddUserData

	err := dao.GetLiexinDb().QueryRowx(GETMEMBERUSER,memberId).StructScan(&MemberUserInfo)
	if err != nil {
		service.WriteErr(err)
	}

	return MemberUserInfo
}

Joneq's avatar
完成上线
26201524
 
Joneq committed 5 years ago
50 51 52 53 54 55 56 57 58 59 60 61 62
//查找对应tag得到的客服
func SetTagSale(tag string,memberInfo *model.MemberAddUserData){
	//查找交易员
	var saleId int
	err := dao.GetDb().QueryRowx("select sale_id from lie_sale_tag where `is_del` = 0  and (`adtag` = ? or `ptag` = ?)",tag,tag).Scan(&saleId)
	if err != nil {
		service.WriteErr(err)
	}
	if saleId != 0 {
		memberInfo.Sale_Id = saleId
	}
}

Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
63 64 65 66 67 68 69 70 71 72 73 74 75 76
//处理基本的原始数据
func HandleData(MemberUserInfo model.MemberAddUserData) model.MemberAddUserData{

	var saleId = 0
	//查找交易员
	err := dao.GetLiexinDb().QueryRowx("select sale_id from lie_order where user_id = ? order by create_time desc",MemberUserInfo.User_Id).Scan(&saleId)
	if err != nil {
		service.WriteErr(err)
	}

	if saleId != 0 {
		MemberUserInfo.Sale_Id = saleId
	}

Joneq's avatar
增加数据
98b15981
 
Joneq committed 5 years ago
77 78 79 80
	if MemberUserInfo.Userinfo_Sale_Id != 0{
		MemberUserInfo.Sale_Id = MemberUserInfo.Userinfo_Sale_Id
	}

Joneq's avatar
增加后台新增客服绑定
08c8e88a
 
Joneq committed 5 years ago
81

Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
	// 个人转化为贸易商
	if MemberUserInfo.Type_Id == 0 {
		MemberUserInfo.Type_Id = 5
	}

	//来源
	if MemberUserInfo.Create_Device != 2 {
		MemberUserInfo.Source = 1
	}else{
		MemberUserInfo.Source = 2
	}

	// 客户身份
	if MemberUserInfo.Work_Function != 0 {
		MemberUserInfo.Customer_identity = MemberUserInfo.Work_Function
	}

	//获取oems数据


	//抓取adtag和ptag,refer
	adtag = regexp.MustCompile(AdtagRex).FindString(MemberUserInfo.Reg_Remark)
	ptag = regexp.MustCompile(PtagRex).FindString(MemberUserInfo.Reg_Remark)
	refer = regexp.MustCompile(ReferRex).FindString(MemberUserInfo.Reg_Remark)


	if refer != ""{
Joneq's avatar
完成上线
26201524
 
Joneq committed 5 years ago
109
		refer = strings.Split(refer,",")[0]
Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
110 111 112 113 114 115 116
		//如果是以上refer则为自营样片
		if strings.Contains(refer,"sample") {
			MemberUserInfo.Channel_source = 10
		}
	}
	
	if ptag != "" {
Joneq's avatar
完成上线
26201524
 
Joneq committed 5 years ago
117
		ptag = strings.Split(ptag,",")[0]
Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
		MemberUserInfo.Ptag = strings.Split(ptag,",")[0]
		switch ptag {
		case "ptag=activity-140":
		case "ptag=activity-141":
		case "ptag=activity-143":
		case "ptag=activity-144":
			MemberUserInfo.Customer_identity = 2//如果是以上ptag则为采购用户
			MemberUserInfo.Channel_source = 9//如果是以上ptag则为展会用户
			break
		case "ptag=activity-142":
		case "ptag=activity-145":
			MemberUserInfo.Customer_identity = 1//如果是以上ptag则为工程师
			MemberUserInfo.Channel_source = 9//如果是以上ptag则为展会用户
			break
		case "ptag=sample":
		case "ptag=sample-pop":
		case "ptag=samplereg":
		case "ptag=sample-stopnav":
			MemberUserInfo.Channel_source = 10//如果是以上ptag则为自营样片
			break
		case "ptag=jr":
			MemberUserInfo.Channel_source = 11//如果是以上ptag则为信用金融
			break
		case "ptag=edcp":
			MemberUserInfo.Channel_source = 12//如果是以上ptag则为信用贷测评
			break
		}
Joneq's avatar
完成上线
26201524
 
Joneq committed 5 years ago
145
		SetTagSale(ptag,&MemberUserInfo)
Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
146 147 148 149 150 151 152 153 154 155 156
	}

	if adtag != "" {
		adtag = strings.Split(adtag,",")[0]
		MemberUserInfo.Adtag = adtag
		if adtag == "adtag=bps" {
			MemberUserInfo.Channel_source = 13//如果是以上adtag则为白皮书下载用户
		}
		if adtag == "adtag=findchips" {
			MemberUserInfo.Channel_source = 14//如果是以上adtagfindchips广告
		}
Joneq's avatar
完成上线
26201524
 
Joneq committed 5 years ago
157 158

		SetTagSale(adtag,&MemberUserInfo)
Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
159 160 161 162 163 164 165
	}

	//地址
	if MemberUserInfo.Com_Province_Id != 0 && MemberUserInfo.Com_City_Id != 0 && MemberUserInfo.Com_Area_Id != 0  {
		MemberUserInfo.Com_Full_addr = common.AllCity[strconv.Itoa(MemberUserInfo.Com_Province_Id)] + common.AllCity[strconv.Itoa(MemberUserInfo.Com_City_Id)] + common.AllCity[strconv.Itoa(MemberUserInfo.Com_Area_Id)] + MemberUserInfo.Com_Address
	}

Joneq's avatar
增加三个脚本
489ccb9f
 
Joneq committed 5 years ago
166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188
	//oems信息
	var oems model.OemsUserinfo
	dao.GetDb().QueryRowx("select contract,contract_name,note,outter_uid from lie_oems_userinfo where outter_uid = ?",&oems.Outter_Uid)
	if oems.Outter_Uid != 0 {
		fmt.Println(oems)
		if MemberUserInfo.Mobile == "" {
			MemberUserInfo.Mobile = oems.Contact
		}
		MemberUserInfo.User_Name = oems.Contact_Name
		MemberUserInfo.Channel_source = 8
		MemberUserInfo.Remark = oems.Note
	}

	//判断是否下单
	var orderId int
	err = dao.GetLiexinDb().QueryRowx("select order_id from lie_order where user_id = ?",MemberUserInfo.User_Id).Scan(orderId);
	if orderId != 0  {
		 MemberUserInfo.No_Create_Order = 2
	}else{
		MemberUserInfo.No_Create_Order = 1
	}


Joneq's avatar
增加拉取用户脚本
170d329a
 
Joneq committed 5 years ago
189 190 191

	return MemberUserInfo
}