|
@@ -167,9 +167,20 @@ func (this *ContractAllocationController) CompanyContractList() {
|
|
|
condition += ` AND c.seller_id in (` + adminId + `) `
|
|
|
//pars = append(pars, adminId)
|
|
|
} else {
|
|
|
-
|
|
|
- //根据当前角色来获取查询条件
|
|
|
- condition, pars = getQueryParams(condition, pars, sysUser, "c.")
|
|
|
+ //权益申请销售只能看到自己名下的客户的申请
|
|
|
+ companyIds, err := cygxService.GetAdminLookUserCompanyIdsBySelf(sysUser)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败,GetAdminLookUserCompanyIds Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ lencompanyIds := len(companyIds)
|
|
|
+ if lencompanyIds > 0 {
|
|
|
+ condition += ` AND c.company_id IN (` + utils.GetOrmInReplace(lencompanyIds) + `)`
|
|
|
+ pars = append(pars, companyIds)
|
|
|
+ }
|
|
|
+ ////根据当前角色来获取查询条件
|
|
|
+ //condition, pars = getQueryParams(condition, pars, sysUser, "c.")
|
|
|
|
|
|
}
|
|
|
|
|
@@ -201,7 +212,7 @@ func (this *ContractAllocationController) CompanyContractList() {
|
|
|
|
|
|
//默认只查询权益 2023-06-01 之后的合同
|
|
|
condition += ` AND c.product_id = ? AND a.start_date > ? `
|
|
|
- pars = append(pars, 2, "2023-01-01")
|
|
|
+ pars = append(pars, 2, "2023-06-01")
|
|
|
|
|
|
mapMoneyPoint := make(map[int]float64)
|
|
|
//研究员姓名查询
|
|
@@ -253,6 +264,7 @@ func (this *ContractAllocationController) CompanyContractList() {
|
|
|
} else {
|
|
|
|
|
|
var contractCodes []string
|
|
|
+ var companyContractIds []int
|
|
|
for _, v := range list {
|
|
|
switch v.Source {
|
|
|
case "系统合同":
|
|
@@ -261,41 +273,49 @@ func (this *ContractAllocationController) CompanyContractList() {
|
|
|
v.FormalType = "非标"
|
|
|
}
|
|
|
contractCodes = append(contractCodes, v.ContractCode)
|
|
|
+ companyContractIds = append(companyContractIds, v.CompanyContractId)
|
|
|
mapCompamy[v.CompanyId] = strconv.Itoa(v.CompanyContractId)
|
|
|
+ }
|
|
|
+ lencontractCodes := len(contractCodes)
|
|
|
+ if lencontractCodes > 0 {
|
|
|
+ //获取标准合同的ID,这里上面的查询已经关联了三张表,拆分吧。。。
|
|
|
+ condition = ""
|
|
|
+ joinStr := ""
|
|
|
+ pars = make([]interface{}, 0)
|
|
|
+ condition = " AND a.contract_code IN (" + utils.GetOrmInReplace(lencontractCodes) + ") "
|
|
|
+ pars = append(pars, contractCodes)
|
|
|
+ listContract, err := contract.GetContractList(condition, joinStr, pars, 0, lencontractCodes)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取合同列表失败!"
|
|
|
+ br.ErrMsg = "获取合同列表失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- lencontractCodes := len(contractCodes)
|
|
|
- if lencontractCodes > 0 {
|
|
|
- //获取标准合同的ID,这里上面的查询已经关联了三张表,拆分吧。。。
|
|
|
- condition = ""
|
|
|
- joinStr := ""
|
|
|
- pars = make([]interface{}, 0)
|
|
|
- condition = " AND a.contract_code IN (" + utils.GetOrmInReplace(lencontractCodes) + ") "
|
|
|
- pars = append(pars, contractCodes)
|
|
|
- listContract, err := contract.GetContractList(condition, joinStr, pars, 0, lencontractCodes)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取合同列表失败!"
|
|
|
- br.ErrMsg = "获取合同列表失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
+ mapContractCode := make(map[string]int)
|
|
|
+ for _, v := range listContract {
|
|
|
+ mapContractCode[v.ContractCode] = v.ContractId
|
|
|
+ }
|
|
|
|
|
|
- mapContractCode := make(map[string]int)
|
|
|
- for _, v := range listContract {
|
|
|
- mapContractCode[v.ContractCode] = v.ContractId
|
|
|
- }
|
|
|
+ mapIsGray, err := cygxService.GetMapIsGrayByCompanyContractIds(companyContractIds)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取合同列表失败!"
|
|
|
+ br.ErrMsg = "获取合同列表失败,GetMapIsGrayByCompanyContractIds Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- //合并合同所对应的权限
|
|
|
- mappermissionName, err := cygxService.GetCompanyContractPermissionNameMapById(mapCompamy)
|
|
|
- if err != nil {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
+ //合并合同所对应的权限
|
|
|
+ mappermissionName, err := cygxService.GetCompanyContractPermissionNameMapById(mapCompamy)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- for _, v := range list {
|
|
|
- v.ContractId = mapContractCode[v.ContractCode]
|
|
|
- v.MoneyPoint = mapMoneyPoint[v.CompanyContractId]
|
|
|
- v.PermissionName = mappermissionName[v.CompanyId]
|
|
|
- }
|
|
|
+ for _, v := range list {
|
|
|
+ v.ContractId = mapContractCode[v.ContractCode]
|
|
|
+ v.MoneyPoint = mapMoneyPoint[v.CompanyContractId]
|
|
|
+ v.PermissionName = mappermissionName[v.CompanyId]
|
|
|
+ v.IsGray = mapIsGray[v.CompanyContractId]
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -621,6 +641,14 @@ func (this *ContractAllocationController) CompanyContracDetail() {
|
|
|
respList = append(respList, respItem)
|
|
|
}
|
|
|
}
|
|
|
+ //处理是否置灰
|
|
|
+ mapIsGray, err := cygxService.GetMapIsGrayByCompanyContractIds([]int{companyContractId})
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取合同列表失败!"
|
|
|
+ br.ErrMsg = "获取合同列表失败,GetMapIsGrayByCompanyContractIds Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ resp.IsGray = mapIsGray[companyContractId]
|
|
|
resp.List = respList
|
|
|
resp.CompanyContractId = companyContractId
|
|
|
br.Ret = 200
|
|
@@ -660,6 +688,17 @@ func (this *ContractAllocationController) CompanyContracUpdate() {
|
|
|
br.ErrMsg = "参数错误,id不可为空"
|
|
|
return
|
|
|
}
|
|
|
+ mapIsGray, err := cygxService.GetMapIsGrayByCompanyContractIds([]int{companyContractId})
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取合同列表失败!"
|
|
|
+ br.ErrMsg = "获取合同列表失败,GetMapIsGrayByCompanyContractIds Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if mapIsGray[companyContractId] {
|
|
|
+ br.Msg = "超过90天,无法修改!"
|
|
|
+ br.ErrMsg = "超过90天,无法修改,companyContractId :" + strconv.Itoa(companyContractId)
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
contractItem, err := company.GetCompanyContractById(companyContractId)
|
|
|
if err != nil {
|
|
@@ -807,11 +846,24 @@ func (this *ContractAllocationController) CompanyContractStatistics() {
|
|
|
isExport, _ := this.GetBool("IsExport")
|
|
|
|
|
|
var condition string
|
|
|
+
|
|
|
var pars []interface{}
|
|
|
|
|
|
//根据当前角色来获取查询条件
|
|
|
condition, pars = getQueryParams(condition, pars, sysUser, "c.")
|
|
|
|
|
|
+ companyIds, err := cygxService.GetAdminLookUserCompanyIdsBySelf(sysUser)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取失败,GetAdminLookUserCompanyIds Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ lencompanyIds := len(companyIds)
|
|
|
+ if lencompanyIds > 0 {
|
|
|
+ condition += ` AND c.company_id IN (` + utils.GetOrmInReplace(lencompanyIds) + `)`
|
|
|
+ pars = append(pars, companyIds)
|
|
|
+ }
|
|
|
+
|
|
|
//关键字搜索
|
|
|
if keyword != "" {
|
|
|
condition += ` and b.company_name like "%` + keyword + `%" `
|