123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 |
- package rai_serve
- import (
- "github.com/beego/beego/v2/client/orm"
- "hongze/hongze_cygx/utils"
- "time"
- )
- type CygxRaiServeCompany struct {
- ServeCompanyId int `comment:"ServeCompanyId 主键ID"`
- CompanyId int `comment:"公司ID"`
- CompanyName string `comment:"公司名称"`
- CreateTime time.Time `comment:"创建时间"`
- Money float64 `comment:"合同金额"`
- ServeCoverageRate string `comment:"近四周服务覆盖率"`
- SellerId int `comment:"所属销售id"`
- SellerName string `comment:"所属销售名称"`
- StartDate string `comment:"开始日期"`
- EndDate string `comment:"结束日期"`
- ShareSeller string `comment:"共享销售"`
- ShareSellerId int `comment:"共享销售员id"`
- GroupId int `description:"销售分组id"`
- ShareGroupId int `description:"共享销售分组id"`
- Status string `comment:"客户状态"`
- PermissionName string `comment:"权限名"`
- IsUserMaker int `comment:"近四周之内是否包含决策人 ,1是、0否"`
- }
- func AddCygxRaiServeCompanyMulti(items, itemsUpdate []*CygxRaiServeCompany, delCompanyIds []int) (err error) {
- o, err := orm.NewOrm().Begin()
- if err != nil {
- return
- }
- defer func() {
- if err == nil {
- o.Commit()
- } else {
- o.Rollback()
- }
- }()
- if len(delCompanyIds) > 0 {
- //删除不属于权益共享的公司
- sql := ` DELETE FROM cygx_rai_serve_company WHERE company_id IN (` + utils.GetOrmInReplace(len(delCompanyIds)) + `) `
- _, err = o.Raw(sql, delCompanyIds).Exec()
- if err != nil {
- return
- }
- }
- //批量插入新的关联数据
- if len(items) > 0 {
- //批量添加流水信息
- _, err = o.InsertMulti(len(items), items)
- if err != nil {
- return
- }
- }
- if len(itemsUpdate) > 0 {
- p, errUpdate := o.Raw("UPDATE cygx_rai_serve_company SET company_name = ? ,seller_id =? ,seller_name = ? ,start_date = ? ,end_date = ? ,share_seller = ? ,share_seller_id = ? ,group_id = ? ,share_group_id = ?,status = ? WHERE company_id = ?").Prepare()
- if errUpdate != nil {
- err = errUpdate
- return
- }
- defer func() {
- _ = p.Close() // 别忘记关闭 statement
- }()
- for _, v := range itemsUpdate {
- _, err = p.Exec(v.CompanyName, v.SellerId, v.SellerName, v.StartDate, v.EndDate, v.ShareSeller, v.ShareSellerId, v.GroupId, v.ShareGroupId, v.Status, v.CompanyId)
- if err != nil {
- return
- }
- }
- }
- return
- }
- // UpdateCygxRaiServeCompanyMulti 批量修改正式客户信息
- func UpdateCygxRaiServeCompanyMulti(items []*CygxRaiServeCompany) (err error) {
- o := orm.NewOrm()
- p, err := o.Raw("UPDATE cygx_rai_serve_company SET money = ? ,serve_coverage_rate =? ,permission_name = ? ,is_user_maker = ? WHERE company_id = ?").Prepare()
- if err != nil {
- return
- }
- defer func() {
- _ = p.Close() // 别忘记关闭 statement
- }()
- for _, v := range items {
- _, err = p.Exec(v.Money, v.ServeCoverageRate, v.PermissionName, v.IsUserMaker, v.CompanyId)
- if err != nil {
- return
- }
- }
- return
- }
- // UpdateCygxRaiServeCompanyFormalNoMulti 批量修改非正式客户信息
- func UpdateCygxRaiServeCompanyFormalNoMulti(items []*CygxRaiServeCompany) (err error) {
- o := orm.NewOrm()
- p, err := o.Raw("UPDATE cygx_rai_serve_company SET money = ? , serve_coverage_rate =? ,permission_name = ? , start_date = ? , end_date = ? ,is_user_maker = ? WHERE company_id = ?").Prepare()
- if err != nil {
- return
- }
- defer func() {
- _ = p.Close() // 别忘记关闭 statement
- }()
- for _, v := range items {
- _, err = p.Exec(v.Money, v.ServeCoverageRate, v.PermissionName, v.StartDate, v.EndDate, v.IsUserMaker, v.CompanyId)
- if err != nil {
- return
- }
- }
- return
- }
- // UpdateCygxRaiServeCompanyFormalNoContractMulti 批量修改非正式,且没有签约过合同的客户信息
- func UpdateCygxRaiServeCompanyFormalNoContractMulti(items []*CygxRaiServeCompany) (err error) {
- o := orm.NewOrm()
- p, err := o.Raw("UPDATE cygx_rai_serve_company SET serve_coverage_rate =? ,is_user_maker = ? WHERE company_id = ?").Prepare()
- if err != nil {
- return
- }
- defer func() {
- _ = p.Close() // 别忘记关闭 statement
- }()
- for _, v := range items {
- _, err = p.Exec(v.ServeCoverageRate, v.IsUserMaker, v.CompanyId)
- if err != nil {
- return
- }
- }
- return
- }
- // 获取当前所属权益服务公司表所有ID
- func GetCygxRaiServeCompanyAllList() (items []*CygxRaiServeCompany, err error) {
- o := orm.NewOrm()
- sql := ` SELECT * FROM cygx_rai_serve_company LIMIT 1000 `
- _, err = o.Raw(sql).QueryRows(&items)
- return
- }
|