123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- package company
- import (
- //"fmt"
- "github.com/beego/beego/v2/client/orm"
- "time"
- )
- type CompanyContractMerge struct {
- CompanyContractMergeId int `orm:"column(company_contract_merge_id);pk" description:"主键ID"`
- ContractType string `description:"合同类型:枚举值:'新签合同','续约合同','补充协议'"`
- ProductId int `description:"产品id"`
- ProductName string `description:"产品名称"`
- CompanyId int `description:"客户id"`
- CompanyProductId int `description:"客户产品id"`
- StartDate string `description:"合同开始时间"`
- EndDate string `description:"合同结束时间"`
- Money float64 `description:"合同金额"`
- CreateTime time.Time `description:"合同创建时间"`
- ModifyTime time.Time `description:"合同修改时间"`
- CompanyContractIdGroup string `description:"表company_contract合并的 company_contract_id"`
- ChartPermissionName string `description:"权限类目名称"`
- PackageDifference string `description:"和上一份合同的区别"`
- IsBestNew int `description:"是否是最新的一条数据"`
- }
- type CompanyContractMergeResp struct {
- CompanyContractMergeId int `orm:"column(company_contract_merge_id);pk" description:"主键ID"`
- ContractType string `description:"合同类型:枚举值:'新签合同','续约合同','补充协议'"`
- ProductId int `description:"产品id"`
- ProductName string `description:"产品名称"`
- CompanyId int `description:"客户id"`
- CompanyProductId int `description:"客户产品id"`
- StartDate time.Time `description:"合同开始时间"`
- EndDate time.Time `description:"合同结束时间"`
- Money float64 `description:"合同金额"`
- CreateTime time.Time `description:"合同创建时间"`
- ModifyTime time.Time `description:"合同修改时间"`
- CompanyContractIdGroup string `description:"表company_contract合并的 company_contract_id"`
- ChartPermissionName string `description:"权限类目名称"`
- PackageDifference string `description:"和上一份合同的区别"`
- }
- type CompanyContractMergeDetailResp struct {
- CompanyContractMergeId int `orm:"column(company_contract_merge_id);pk" description:"主键ID"`
- ContractType string `description:"合同类型:枚举值:'新签合同','续约合同','补充协议'"`
- ProductId int `description:"产品id"`
- ProductName string `description:"产品名称"`
- CompanyId int `description:"客户id"`
- CompanyProductId int `description:"客户产品id"`
- StartDate string `description:"合同开始时间"`
- EndDate string `description:"合同结束时间"`
- Money float64 `description:"合同金额"`
- CreateTime time.Time `description:"合同创建时间"`
- ModifyTime time.Time `description:"合同修改时间"`
- CompanyContractIdGroup string `description:"表company_contract合并的 company_contract_id"`
- ChartPermissionName string `description:"权限类目名称"`
- PackageDifference string `description:"和上一份合同的区别"`
- PermissionName string `description:"权限名"`
- }
- func AddCompanyContractMerge(item *CompanyContractMerge) (err error) {
- o := orm.NewOrm()
- _, err = o.Insert(item)
- return
- }
- // MultiAddCompanyContractMerge 批量添加合同合并之后的数据
- func MultiAddCompanyContractMerge(items []*CompanyContractMerge) (err error) {
- if len(items) == 0 {
- return
- }
- o := orm.NewOrm()
- _, err = o.InsertMulti(len(items), items)
- return
- }
- // 修改
- func UpdateCompanyContractMerge(item *CompanyContractMerge) (err error) {
- o := orm.NewOrm()
- to, err := o.Begin()
- if err != nil {
- return
- }
- defer func() {
- if err != nil {
- _ = to.Rollback()
- } else {
- _ = to.Commit()
- }
- }()
- updateParams := make(map[string]interface{})
- updateParams["EndDate"] = item.EndDate
- updateParams["Money"] = item.Money
- updateParams["CompanyContractIdGroup"] = item.CompanyContractIdGroup
- updateParams["PackageDifference"] = item.PackageDifference
- updateParams["IsBestNew"] = item.IsBestNew
- updateParams["ModifyTime"] = item.ModifyTime
- ptrStructOrTableName := "company_contract_merge"
- whereParam := map[string]interface{}{"company_contract_merge_id": item.CompanyContractMergeId}
- qs := to.QueryTable(ptrStructOrTableName)
- for expr, exprV := range whereParam {
- qs = qs.Filter(expr, exprV)
- }
- _, err = qs.Update(updateParams)
- if err != nil {
- return
- }
- return
- }
- // GetIncrementalNewCompanyProductMergeCount 获取增量客户产品报表列表统计数据(根据合同来展示)
- func GetIncrementalNewCompanyProductMergeCount(condition string, pars []interface{}) (total int, err error) {
- o := orm.NewOrm()
- sql := `SELECT a.*,b.region_type,c.seller_id,c.seller_name,b.company_name FROM company_contract a
- JOIN company b ON a.company_id = b.company_id
- JOIN company_product c ON a.company_id = c.company_id and a.product_id=c.product_id WHERE 1 = 1 `
- if condition != "" {
- sql += condition
- }
- sql = `select count(1) count from (` + sql + ` ) f`
- err = o.Raw(sql, pars).QueryRow(&total)
- return
- }
- // GetIncrementalRenewalCompanyProductMergeCount 续约合同数量
- func GetIncrementalRenewalCompanyProductMergeCount(condition string, pars []interface{}) (total int, err error) {
- o := orm.NewOrm()
- sql := `SELECT a.*,b.region_type,c.seller_id,c.seller_name,b.company_name FROM company_contract a
- JOIN company b ON a.company_id = b.company_id
- JOIN company_product c ON a.company_id = c.company_id and a.product_id=c.product_id WHERE 1 = 1 `
- if condition != "" {
- sql += condition
- }
- sql = `select count(1) count from (` + sql + ` ) f`
- err = o.Raw(sql, pars).QueryRow(&total)
- return
- }
- type GetCompanyContractMergeDetailResp struct {
- Detail *CompanyContractMergeDetailResp
- }
- // 通过ID获取详情
- //func GetCompanyContractMergeDetail(condition string, pars []interface{}) (item *CompanyContractMergeDetailResp, err error) {
- // o := orm.NewOrm()
- // sql := `SELECT * FROM company_contract_merge WHERE 1= 1 ` + condition
- // err = o.Raw(sql, pars).QueryRow(&item)
- // return
- //}
- //
- //// UpdateCompanyContractMergeIsBestNew 更改 is_best_new 状态
- //func UpdateCompanyContractMergeIsBestNew(isBestNew, companyId int) (err error) {
- // o := orm.NewOrm()
- // sql := `UPDATE company_contract_merge SET is_best_new = ? WHERE company_id=? `
- // _, err = o.Raw(sql, isBestNew, companyId).Exec()
- // return
- //}
- //
- //// UpdateCompanyContractMergeIsBestNew 更改 is_best_new 状态
- //func UpdateCompanyContractMergeIsBestNewto1(companyContractMergeId int) (err error) {
- // o := orm.NewOrm()
- // sql := `UPDATE company_contract_merge SET is_best_new = 1 WHERE company_contract_merge_id=? `
- // _, err = o.Raw(sql, companyContractMergeId).Exec()
- // return
- //}
|