112 lines
3.3 KiB
Go
112 lines
3.3 KiB
Go
package dao
|
|
|
|
// type StoreUserInfo struct {
|
|
// legacymodel.WeiXins
|
|
// ParentMobile string `json:"parentMobile"`
|
|
// Members []*legacymodel.WeiXins `orm:"-" json:"members"`
|
|
// MembersStr string `json:"-"`
|
|
// }
|
|
|
|
// func CreateWeiXins(db *DaoDB, user *legacymodel.WeiXins) (err error) {
|
|
// Begin(db)
|
|
// if err = CreateEntity(db, user); err != nil {
|
|
// Rollback(db)
|
|
// return err
|
|
// }
|
|
// if err = SetWeiXinsEmpty2Null(db, user); err != nil {
|
|
// Rollback(db)
|
|
// return err
|
|
// }
|
|
// Commit(db)
|
|
// return err
|
|
// }
|
|
|
|
// func SetWeiXinsEmpty2Null(db *DaoDB, user *legacymodel.WeiXins) (err error) {
|
|
// _, err = ExecuteSQL(db, `
|
|
// UPDATE weixins
|
|
// SET
|
|
// openid = IF(openid = '', NULL, openid),
|
|
// openid_mini = IF(openid_mini = '', NULL, openid_mini),
|
|
// openid_union = IF(openid_union = '', NULL, openid_union),
|
|
// tel = IF(tel = '', NULL, tel),
|
|
// parentid = IF(parentid = 0, -1, parentid)
|
|
// WHERE id = ?
|
|
// `, user.ID)
|
|
// return err
|
|
// }
|
|
|
|
// func GetWeiXinUserByIDs(db *DaoDB, tel, unionID, openID, miniOpenID string) (user *legacymodel.WeiXins, err error) {
|
|
// fieldList := []string{
|
|
// "Tel",
|
|
// "OpenIDUnion",
|
|
// "OpenID",
|
|
// "OpenIDMini",
|
|
// }
|
|
// valueList := []string{
|
|
// tel,
|
|
// unionID,
|
|
// openID,
|
|
// miniOpenID,
|
|
// }
|
|
// user = &legacymodel.WeiXins{
|
|
// Tel: tel,
|
|
// OpenIDUnion: unionID,
|
|
// OpenID: openID,
|
|
// OpenIDMini: miniOpenID,
|
|
// }
|
|
// for index := range valueList {
|
|
// if valueList[index] != "" {
|
|
// if err = GetEntity(db, user, fieldList[index]); err == nil {
|
|
// return user, nil
|
|
// }
|
|
// }
|
|
// }
|
|
// return nil, err
|
|
// }
|
|
|
|
// func UpdateWeiXinUser(db *DaoDB, tel, nickname, unionID, openID, miniOpenID string) (err error) {
|
|
// user := &legacymodel.WeiXins{
|
|
// Tel: tel,
|
|
// }
|
|
// if err = GetEntity(db, user, "Tel"); err == nil {
|
|
// updateFields := []string{}
|
|
// if openID != "" {
|
|
// user.OpenID = openID
|
|
// updateFields = append(updateFields, "OpenID")
|
|
// }
|
|
// if unionID != "" {
|
|
// user.OpenIDUnion = unionID
|
|
// updateFields = append(updateFields, "OpenIDUnion")
|
|
// }
|
|
// if miniOpenID != "" {
|
|
// user.OpenIDMini = miniOpenID
|
|
// updateFields = append(updateFields, "OpenIDMini")
|
|
// }
|
|
// if nickname != "" {
|
|
// user.NickName = nickname
|
|
// updateFields = append(updateFields, "NickName")
|
|
// }
|
|
// _, err = UpdateEntity(db, user, updateFields...)
|
|
// }
|
|
// return err
|
|
// }
|
|
|
|
// func GetUserStoreInfo(db *DaoDB, fieldName, fieldValue string) (storeUserInfo *StoreUserInfo, err error) {
|
|
// sql := fmt.Sprintf(`
|
|
// SELECT t1.id, IF(t3.id IS NULL, t1.jxstoreid, t3.jxstoreid) jxstoreid, t1.openid, t1.tel, t1.nickname, t1.parentid, t3.tel parent_mobile,
|
|
// CONCAT("[", GROUP_CONCAT(CONCAT('{"id":', t2.id, ',"tel":"', t2.tel, '","nickname":"', IF(t2.nickname IS NULL, "", t2.nickname), '"}')), "]") members_str
|
|
// FROM weixins t1
|
|
// LEFT JOIN weixins t2 ON t2.parentid = t1.id
|
|
// LEFT JOIN weixins t3 ON t1.parentid = t3.id
|
|
// WHERE t1.%s = ?
|
|
// GROUP BY 1,2,3,4,5,6,7;
|
|
// `, fieldName)
|
|
// if err = GetRow(db, &storeUserInfo, sql, fieldValue); err == nil { // todo
|
|
// err = nil
|
|
// if storeUserInfo.MembersStr != "" {
|
|
// err = utils.UnmarshalUseNumber([]byte(storeUserInfo.MembersStr), &storeUserInfo.Members)
|
|
// }
|
|
// }
|
|
// return storeUserInfo, err
|
|
// }
|