| | |
| | | "aps_crm/pkg/ecode" |
| | | "aps_crm/utils" |
| | | "github.com/gin-gonic/gin" |
| | | "strconv" |
| | | ) |
| | | |
| | | type ContractApi struct{} |
| | |
| | | // @Success 200 {object} contextx.Response{} |
| | | // @Router /api/contract/delete [delete] |
| | | func (s *ContractApi) Delete(c *gin.Context) { |
| | | var params request.DeleteContract |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | id := c.Param("id") |
| | | ctx, _ := contextx.NewContext(c, nil) |
| | | if id == "" { |
| | | ctx.Fail(ecode.ParamsErr) |
| | | return |
| | | } |
| | | |
| | | errCode := contractService.DeleteContract(params.Ids) |
| | | atoi, err := strconv.Atoi(id) |
| | | if err != nil { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "数据转换失败") |
| | | return |
| | | } |
| | | errCode := contractService.DeleteContract(atoi) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | |
| | | } |
| | | |
| | | var whiteList = map[string]struct{}{ //白名单地址列表 |
| | | "/api/code/getCodeList": {}, |
| | | "/api/data/getAllData": {}, |
| | | "/api/code/getCodeList": {}, |
| | | "/api/data/getAllData": {}, |
| | | "/api/serviceCollectionPlan/add": {}, |
| | | "/api/bankAccount/list": {}, |
| | | "/api/paymentType/list": {}, |
| | | } |
| | | |
| | | func CheckAuth(apiPath string, token string) bool { |
| | |
| | | |
| | | // 查询公海客户 |
| | | if key == "public_sea" { |
| | | db = db.Where("member_id = ?", constvar.UserTypeSuper) |
| | | db = db.Where("clients.member_id = ?", constvar.UserTypeSuper) |
| | | } |
| | | |
| | | if key == "client_status" { |
| | |
| | | |
| | | if key == "not_admin" { |
| | | if v == float64(constvar.NotAdminYes) { |
| | | db = db.Where("member_id != ?", constvar.UserTypeSuper) |
| | | db = db.Where("clients.member_id != ?", constvar.UserTypeSuper) |
| | | } else { |
| | | db = db.Where("member_id = ?", constvar.UserTypeSuper) |
| | | db = db.Where("clients.member_id = ?", constvar.UserTypeSuper) |
| | | } |
| | | } |
| | | |
| | |
| | | for key, value := range slf.SearchMap { |
| | | switch v := value.(type) { |
| | | case string: |
| | | if key == "name" || key == "position" || key == "phone" || key == "Number" { |
| | | if key == "name" || key == "position" || key == "phone" || key == "number" { |
| | | db = db.Where(key+" LIKE ?", "%"+v+"%") |
| | | } |
| | | |
| | |
| | | ServiceCollectionPlan{}, |
| | | Receipt{}, |
| | | ServiceOrder{}, |
| | | CourierCompany{}, |
| | | InvoiceStatus{}, |
| | | InvoiceType{}, |
| | | ) |
| | | return err |
| | | } |
| | |
| | | db = db.Limit(slf.PageSize).Offset((slf.PageNum - 1) * slf.PageSize) |
| | | } |
| | | |
| | | err := db.Preload("Principal").Preload("Client").Preload("PaymentType").Preload("BankAccount").Find(&records).Error |
| | | err := db.Preload("Principal").Preload("Client").Preload("PaymentType").Preload("BankAccount").Order("created_at desc").Find(&records).Error |
| | | return records, total, err |
| | | } |
| | | |
| | |
| | | Keyword string `json:"keyword"` |
| | | SaleChanceId int `json:"saleChanceId"` //销售机会id |
| | | ClientId int `json:"clientId"` //客户id |
| | | Number string `json:"number"` //销售子单号 |
| | | } |
| | |
| | | if slf.ClientId != 0 { |
| | | db = db.Where("client_id = ?", slf.ClientId) |
| | | } |
| | | if slf.Number != "" { |
| | | db = db.Where("number = ?", slf.Number) |
| | | } |
| | | |
| | | switch slf.KeywordType { |
| | | case constvar.SalesDetailsKeywordTypeCustomerName: |
| | |
| | | } |
| | | |
| | | if len(slf.MemberIds) > 0 { |
| | | db = db.Where("member_id in ?", slf.MemberIds) |
| | | db = db.Where("sales_details.member_id in ?", slf.MemberIds) |
| | | } |
| | | |
| | | if slf.Preload { |
| | |
| | | return slf |
| | | } |
| | | |
| | | func (slf *SalesDetailsSearch) SetNumber(number string) *SalesDetailsSearch { |
| | | slf.Number = number |
| | | return slf |
| | | } |
| | | |
| | | func (slf *SalesDetailsSearch) UpdateByMap(upMap map[string]interface{}) error { |
| | | var ( |
| | | db = slf.build() |
| | |
| | | type ( |
| | | SalesLeads struct { |
| | | Id int `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"` |
| | | Name string `json:"name" gorm:"column:name;uniqueIndex:name_isDeleted_idx;;type:varchar(255);comment:公司名称"` |
| | | Name string `json:"name" gorm:"column:name;uniqueIndex:name_isDeleted_idx;;type:varchar(255);comment:客户名称"` |
| | | IsDeleted bool `json:"-" gorm:"column:is_deleted;uniqueIndex:name_isDeleted_idx;type:tinyint(1);comment:是否删除"` |
| | | Number string `json:"number" gorm:"column:number;type:varchar(255);comment:销售线索编号"` |
| | | ContactName string `json:"contact_name" gorm:"column:contact_name;type:varchar(255);comment:联系人姓名"` |
| | |
| | | |
| | | case int: |
| | | if key == "member_id" { |
| | | db = db.Where("member_id = ?", v) |
| | | db = db.Where("sales_leads.member_id = ?", v) |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | if len(slf.MemberIds) > 0 { |
| | | db = db.Where("member_id in ?", slf.MemberIds) |
| | | db = db.Where("sales_refund.member_id in ?", slf.MemberIds) |
| | | } |
| | | |
| | | return db |
| | |
| | | var db = slf.build() |
| | | return db.Updates(data).Error |
| | | } |
| | | |
| | | |
| | | func (slf *SalesRefundSearch) SetMemberIds(memberIds []int) *SalesRefundSearch { |
| | | slf.MemberIds = memberIds |
| | |
| | | } |
| | | |
| | | if len(slf.MemberIds) > 0 { |
| | | db = db.Where("member_id in ?", slf.MemberIds) |
| | | db = db.Where("sales_return.member_id in ?", slf.MemberIds) |
| | | } |
| | | |
| | | return db |
| | |
| | | } |
| | | |
| | | if len(slf.MemberIds) > 0 { |
| | | db = db.Where("member_id in ?", slf.MemberIds) |
| | | db = db.Where("service_contract.member_id in ?", slf.MemberIds) |
| | | } |
| | | |
| | | if slf.Preload { |
| | |
| | | } |
| | | |
| | | if len(slf.MemberIds) > 0 { |
| | | db = db.Where("member_id in ?", slf.MemberIds) |
| | | db = db.Where("service_followup.member_id in ?", slf.MemberIds) |
| | | } |
| | | |
| | | return db |
| | |
| | | PageSize int |
| | | Preload bool |
| | | ServiceManIds []int |
| | | Order string |
| | | } |
| | | ) |
| | | |
| | |
| | | } |
| | | if slf.SalesDetailsId != 0 { |
| | | db = db.Where("order_id = ?", slf.SalesDetailsId) |
| | | } |
| | | if slf.Order != "" { |
| | | db = db.Order(slf.Order) |
| | | } |
| | | if slf.Preload { |
| | | db = db. |
| | |
| | | return slf |
| | | } |
| | | |
| | | func (slf *ServiceOrderSearch) SetOrder(order string) *ServiceOrderSearch { |
| | | slf.Order = order |
| | | return slf |
| | | } |
| | | |
| | | func (slf *ServiceOrderSearch) First() (*ServiceOrder, error) { |
| | | var db = slf.build() |
| | | var record = new(ServiceOrder) |
| | |
| | | db = db.Where(key+" = ?", v) |
| | | } |
| | | if key == "member_id" { |
| | | db = db.Where("member_id = ?", v) |
| | | db = db.Where("sub_order.member_id = ?", v) |
| | | } |
| | | } |
| | | } |
| | |
| | | return contacts, total, ecode.OK |
| | | } |
| | | |
| | | func (ContractService) DeleteContract(ids []int) int { |
| | | func (ContractService) DeleteContract(id int) int { |
| | | // delete client |
| | | err := model.NewContractSearch().SetIds(ids).Delete() |
| | | err := model.NewContractSearch().SetId(id).Delete() |
| | | if err != nil { |
| | | return ecode.ContractDeleteErr |
| | | } |
| | |
| | | SetKeywordType(params.KeywordType). |
| | | SetSaleChanceId(params.SaleChanceId). |
| | | SetClientId(params.ClientId). |
| | | SetNumber(params.Number). |
| | | SetKeyword(params.Keyword).SetPage(params.Page, params.PageSize).FindAll() |
| | | if err != nil { |
| | | return nil, 0, ecode.SalesDetailsListErr |
| | |
| | | SetServiceContractId(serviceContractId). |
| | | SetSalesDetailsId(salesDetailsId). |
| | | SetMemberIds(memberIds). |
| | | SetOrder("created_at desc"). |
| | | Find() |
| | | if err != nil { |
| | | return nil, 0, ecode.DBErr |