123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- package cygx
- import (
- "github.com/beego/beego/v2/client/orm"
- "hongze/hongze_task/utils"
- "time"
- )
- type CygxActivitySpecialPermissionPoints struct {
- Id int `orm:"column(id);pk"`
- CompanyId int `description:"公司ID"`
- Points int `description:"剩余点数"`
- CompanyName string `description:"公司名称"`
- ChartPermissionId int `description:"行业id"`
- ChartPermissionName string `description:"行业名称"`
- CreateTime time.Time `description:"创建时间"`
- ModifyTime time.Time `description:"更新时间"`
- }
- // MultiAddCygxActivitySpecialPermissionPoints 批量添加
- func MultiAddCygxActivitySpecialPermissionPoints(items []*CygxActivitySpecialPermissionPoints) (err error) {
- if len(items) == 0 {
- return
- }
- var chartPermissionIds []int
- var companyId int
- for _, v := range items {
- companyId = v.CompanyId
- if v.ChartPermissionId > 0 {
- chartPermissionIds = append(chartPermissionIds, v.ChartPermissionId)
- }
- }
- lenchartPermissionIds := len(chartPermissionIds)
- o, err := orm.NewOrmUsingDB("hz_cygx").Begin()
- if err != nil {
- return
- }
- defer func() {
- if err == nil {
- o.Commit()
- } else {
- o.Rollback()
- }
- }()
- var condition string
- var pars []interface{}
- pars = make([]interface{}, 0)
- condition = " AND company_id = ? "
- pars = append(pars, companyId)
- if lenchartPermissionIds > 0 {
- condition += " AND chart_permission_id IN (" + utils.GetOrmInReplace(lenchartPermissionIds) + ") "
- pars = append(pars, chartPermissionIds)
- }
- //删除历史记录
- sql := ""
- if condition != "" {
- sql = " DELETE FROM cygx_activity_special_permission_points WHERE 1= 1 " + condition
- _, err = o.Raw(sql, pars).Exec()
- if err != nil {
- return
- }
- }
- //批量插入
- _, err = o.InsertMulti(len(items), items)
- if err != nil {
- return
- }
- return
- }
- // 获取公司每个行业剩余研选点数列表
- func GetCygxActivitySpecialPermissionPointsList(condition string, pars []interface{}) (items []*CygxActivitySpecialPermissionPoints, err error) {
- o := orm.NewOrmUsingDB("hz_cygx")
- sql := `SELECT * FROM cygx_activity_special_permission_points WHERE 1 = 1 `
- if condition != "" {
- sql += condition
- }
- _, err = o.Raw(sql, pars).QueryRows(&items)
- return
- }
- // 到期清零
- func UpdateCygxActivitySpecialPermissionPointsTryOutReduce( companyId int) (err error) {
- o := orm.NewOrmUsingDB("hz_cygx")
- sql := `UPDATE cygx_activity_special_permission_points SET points = 0 WHERE company_id=? `
- _, err = o.Raw(sql, companyId ).Exec()
- return
- }
|