package controllers import ( "encoding/json" contractReq "hongze/hongze_mobile_admin/models/request/contract" "hongze/hongze_mobile_admin/models/tables/contract" contractService "hongze/hongze_mobile_admin/services/contract" "hongze/hongze_mobile_admin/utils" ) //合同模块 type ContractCommon struct { BaseAuth } // @Title 上传签回附件 // @Description 上传签回附件接口 // @Param request body contract.UploadCheckBackFileReq true "type json string" // @Success Ret=200 驳回成功 // @router /upload_check_back_file [get] func (this *ContractCommon) UploadCheckBackFile() { var req contractReq.UploadCheckBackFileReq err := json.Unmarshal(this.Ctx.Input.RequestBody, &req) if err != nil { this.FailWithMessage("参数解析异常!", "参数解析失败,Err:"+err.Error()) return } //合同编号 if req.ContractId <= 0 { this.FailWithMessage("请传入合同编号!", "请传入合同编号") return } if req.FileUrl == "" { this.FailWithMessage("请先上传附件!", "请先上传附件") return } err = contractService.UploadCheckBackFile(req.ContractId, req.FileUrl, this.AdminWx) this.OkWithMessage("上传成功") } // @Title 获取合同详情 // @Description 获取合同详情接口 // @Param ContractId query int true "合同id" // @Success 200 {object} contract.ContractDetail // @router /detail [get] func (this *ContractCommon) Detail() { //合同类型、产品类型、合同状态、更新时间、所选销售 //关键字:合同编号、客户名称,社会信用码 contractId, _ := this.GetInt("ContractId") //合同id if contractId <= 0 { this.FailWithMessage("合同id必传!", "合同id必传!") return } contractInfo, err := contractService.GetContractDetail(contractId) if err != nil { this.FailWithMessage("获取合同详情失败!", "获取合同详情失败,ERR:"+err.Error()) return } contractInfo.StartDateStr = contractInfo.StartDate.Format(utils.FormatDate) contractInfo.EndDateStr = contractInfo.EndDate.Format(utils.FormatDate) contractInfo.ModifyTimeStr = contractInfo.ModifyTime.Format(utils.FormatDateTime) contractInfo.CreateTimeStr = contractInfo.CreateTime.Format(utils.FormatDateTime) this.OkDetailed(contractInfo, "获取成功") } // @Title 根据客户名称获取已存在合同系统中客户名称列表 // @Description 获取合同详情接口 // @Param CompanyName query string true "客户名称" // @Success 200 {object} []string // @router /company_list [get] func (this *ContractCommon) CompanyList() { companyName := this.GetString("CompanyName") //合同id if companyName == "" { this.FailWithMessage("客户名称必传!", "客户名称必传!") return } companyNameList := make([]string, 0) list, err := contract.GetCompanyNameList(companyName) if err != nil { this.FailWithMessage("获取客户名称列表失败!", "获取客户名称列表失败,ERR:"+err.Error()) return } for _, v := range list { companyNameList = append(companyNameList, v.CompanyName) } this.OkDetailed(companyNameList, "获取成功") }