package controllers import ( companyContractResp "hongze/hongze_mobile_admin/models/response/company_contract" "hongze/hongze_mobile_admin/models/tables/company_contract" "hongze/hongze_mobile_admin/models/tables/company_report_permission" "hongze/hongze_mobile_admin/services" "hongze/hongze_mobile_admin/utils" ) //客户合同模块 type CompanyContractCommon struct { BaseAuth } // @Title 合同详情详情 // @Description 合同详情接口 // @Param CompanyId query int true "客户ID" // @Param CompanyContractId query int true "合同id" // @Success 200 {object} company_contract.CompanyContractDetailResp // @router /detail [get] func (c *CompanyContractCommon) ApplyContractDetail() { sysUser := c.AdminWx companyId, _ := c.GetInt("CompanyId") if companyId <= 0 { c.FailWithMessage("参数错误", "参数错误,客户id小于等于0") return } companyContractId, _ := c.GetInt("CompanyContractId") roleTypeCode := sysUser.RoleTypeCode productId := services.GetProductId(roleTypeCode) //if productId == 0 { // c.FailWithMessage("当前账户类型异常", "客户类型为:"+roleTypeCode) // return //} detail, err := company_contract.GetCompanyContractDetail(companyId, productId, companyContractId) if err != nil { c.FailWithMessage("获取信息失败", "获取信息失败,Err:"+err.Error()) return } productId = detail.ProductId if productId == 1 { for _, v := range utils.PermissionFiccClassifyArr { checkList := make([]int, 0) plist := new(company_report_permission.PermissionLookList) items, err := company_report_permission.GetPermissionLookItems(productId, v) if err != nil { c.FailWithMessage("获取失败", "获取权限信息失败,Err:"+err.Error()) return } for _, n := range items { count, err := company_contract.GetCompanyContractPermissionCheckByContractId(companyId, detail.CompanyContractId, n.ChartPermissionId) if err != nil { c.FailWithMessage("获取失败", "获取权限信息失败,Err:"+err.Error()) return } if count > 0 { checkList = append(checkList, n.ChartPermissionId) } } plist.Items = items plist.ClassifyName = v plist.CheckList = checkList detail.PermissionList = append(detail.PermissionList, plist) } } else { classifyName := "权益" checkList := make([]int, 0) plist := new(company_report_permission.PermissionLookList) items, err := company_report_permission.GetPermissionLookItems(productId, classifyName) if err != nil { c.FailWithMessage("获取失败", "获取权限信息失败,Err:"+err.Error()) return } for _, n := range items { count, err := company_contract.GetCompanyContractPermissionCheckByContractId(companyId, detail.CompanyContractId, n.ChartPermissionId) if err != nil { c.FailWithMessage("获取失败", "获取权限信息失败,Err:"+err.Error()) return } if count > 0 { checkList = append(checkList, n.ChartPermissionId) } n.PermissionName = n.Remark } plist.Items = items plist.ClassifyName = classifyName plist.CheckList = checkList detail.PermissionList = append(detail.PermissionList, plist) } resp := companyContractResp.CompanyContractDetailResp{ detail, } c.OkDetailed(resp, "获取成功") }