| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 | 
							- package restful
 
- import (
 
- 	"github.com/pkg/errors"
 
- )
 
- type User struct {
 
- 	Id         int     `xorm:"not null pk autoincr INT(10)"`
 
- 	Username   string  `xorm:"default '''' comment('账号') VARCHAR(50)"`
 
- 	Password   string  `xorm:"default '''' comment('密码') VARCHAR(50)"`
 
- 	Empid      int     `xorm:"default -1 INT(11)"`
 
- 	Sort       int     `xorm:"default 0 INT(11)"`
 
- 	Enable     int     `xorm:"default 1 TINYINT(4)"`
 
- 	CreatedOn  int     `xorm:"default NULL comment('创建时间') INT(11)"`
 
- 	ModifiedOn int     `xorm:"default NULL comment('更新时间') INT(11)"`
 
- 	DeletedOn  int     `xorm:"default 0 comment('删除时间戳') INT(11)"`
 
- }
 
- /*
 
- type UserRole struct {
 
- 	Id        int `xorm:"not null pk autoincr INT(10)"`
 
- 	UserId    int `xorm:"default NULL comment('用户ID') INT(11)"`
 
- 	RoleId    int `xorm:"default NULL comment('角色ID') INT(11)"`
 
- 	DeletedOn int `xorm:"default 0 comment('删除时间戳') INT(11)"`
 
- }
 
- type Role struct {
 
- 	Id         int    `xorm:"not null pk autoincr INT(10)"`
 
- 	Name       string `xorm:"default '''' comment('名字') VARCHAR(50)"`
 
- 	Sort       int    `xorm:"default 0 INT(11)"`
 
- 	Enable     int    `xorm:"default 1 TINYINT(4)"`
 
- 	CreatedOn  int    `xorm:"default NULL comment('创建时间') INT(11)"`
 
- 	ModifiedOn int    `xorm:"default NULL comment('更新时间') INT(11)"`
 
- 	DeletedOn  int    `xorm:"default 0 comment('删除时间戳') INT(11)"`
 
- }
 
- */
 
- func CheckUser(username, password string) (bool, error) {
 
- 	has, err := Engine.Exist(&User{Username: username,Password:password})
 
- 	return has, err
 
- }
 
- func GetUserInfo(username string )(map[string]interface{}){
 
- 	valuesMap, err := Engine.SQL("SELECT * FROM  `user` WHERE `username` = ? and `enable` >0 ", username).Query().List()
 
- 	if err != nil {
 
- 		return nil
 
- 	}
 
- 	if len(valuesMap)>0 {
 
- 		valuesMap2, err := Engine.SQL("SELECT r.`name`,r.`id` FROM `user` u  JOIN `role` r ON r.id=u.`roleid` WHERE r.`enable`>0  AND u.username=?", username).Query().List()
 
- 		if err == nil {
 
- 			valuesMap[0]["role"] = valuesMap2
 
- 		}
 
- 		return valuesMap[0]
 
- 	}
 
- 	return nil
 
- }
 
- func CheckUserFace(username,imei string,typein int )(error){
 
- 	tx := Engine.NewSession()
 
- 	err := tx.Begin()
 
- 	defer func() {
 
- 		switch {
 
- 		case err != nil:
 
- 			if tx != nil {
 
- 				tx.Rollback()
 
- 			}
 
- 		default:
 
- 			if tx != nil {
 
- 				err = tx.Commit()
 
- 			}
 
- 		}
 
- 		if tx != nil {
 
- 			tx.Close()
 
- 		}
 
- 	}()
 
- 	valuesMap1, err := tx.SQL("SELECT * FROM  `tmr` WHERE `imei` = ?", imei).Query().List()
 
- 	if err != nil {
 
- 		return err
 
- 	}
 
- 	if len(valuesMap1)== 0{
 
- 		return errors.New("TMR设备不存在")
 
- 	}
 
- 	valuesMap, err := tx.SQL("SELECT * FROM  `user` WHERE `username` = ? and `enable` >0 and pastureid = (SELECT pastureid FROM  tmr  WHERE imei = ?) ", username,imei).Query().List()
 
- 	if err != nil {
 
- 		return err
 
- 	}
 
- 	if len(valuesMap)== 0{
 
- 		return errors.New("用户不存在")
 
- 	}
 
- 	if len(valuesMap)>0 &&  len(valuesMap1)>0{
 
- 		_, err := Engine.SQL(`INSERT INTO emprecord(pastureid,imei,empid,empcode,empname,TYPE,recordtime)
 
-          SELECT tmr.pastureid,tmr.imei, driver.id,driver.drivercode,driver.drivername,?,NOW() FROM tmr  
 
-                   JOIN driver ON driver.drivercode=? AND driver.pastureid=tmr.pastureid AND tmr.imei=?`, typein,username,imei).Query().List()
 
- 		if err != nil {
 
- 			return err
 
- 		}
 
- 		return nil
 
- 	}
 
- 	return err
 
- }
 
- /*
 
- func GetByName(username string) (User, error) {
 
- 	user := &User{Username:username}
 
- 	has, err := engine.Get(user)
 
- 	var valuesMap1 = make(map[string]string)
 
- 	engine.Find(&User{Username: username,Password:password})
 
- 	has, err := db.Sql("select * from article where id=?", 2).Get(&valuesMap1)
 
- 	has, err := engine.Exist(&User{Username: username})
 
- 	err := engine.Where("name = ?", name).And("age > 10").Limit(10, 0).Find(&users)
 
- 	has, err := engine.Where("Username = ?", username).Get(&user)
 
- 	return has, err
 
- }*/
 
 
  |