| | |
| | | "aps_crm/pkg/contextx" |
| | | "aps_crm/pkg/ecode" |
| | | "github.com/gin-gonic/gin" |
| | | "strconv" |
| | | ) |
| | | |
| | | type QuotationApi struct{} |
| | |
| | | // @Tags Quotation |
| | | // @Summary 删除报价单 |
| | | // @Produce application/json |
| | | // @Param id path int true "查询参数" |
| | | // @Param object body request.DeleteQuotation true "查询参数" |
| | | // @Success 200 {object} contextx.Response{} |
| | | // @Router /api/quotation/delete/{id} [delete] |
| | | // @Router /api/quotation/delete [delete] |
| | | func (s *QuotationApi) Delete(c *gin.Context) { |
| | | ctx, ok := contextx.NewContext(c, nil) |
| | | var params request.DeleteQuotation |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | id, _ := strconv.Atoi(c.Param("id")) |
| | | errCode := quotationService.DeleteQuotation(id) |
| | | errCode := quotationService.DeleteQuotation(params.Ids) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | |
| | | ctx.Ok() |
| | | } |
| | | |
| | | // List |
| | | // |
| | | // @Tags Quotation |
| | | // @Summary 报价单列表 |
| | | // @Produce application/json |
| | | // @Success 200 {object} contextx.Response{data=response.QuotationResponse} |
| | | // @Router /api/quotation/list [get] |
| | | func (s *QuotationApi) List(c *gin.Context) { |
| | | ctx, ok := contextx.NewContext(c, nil) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | list, errCode := quotationService.GetQuotationList() |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | ctx.OkWithDetailed(response.QuotationResponse{ |
| | | List: list, |
| | | }) |
| | | } |
| | | |
| | | // checkQuotationParams |
| | | func checkQuotationParams(quotation request.Quotation) (int, model.Quotation) { |
| | | var errCode int |
| | |
| | | return errCode, quotationModel |
| | | } |
| | | |
| | | // 将时间字符转换为时间类型 |
| | | |
| | | quotationModel.ValidityDate = t |
| | | quotationModel.ClientId = quotation.ClientId |
| | | quotationModel.QuotationStatusId = quotation.QuotationStatusId |
| | |
| | | quotationModel.ContactId = quotation.ContactId |
| | | quotationModel.Conditions = quotation.Conditions |
| | | quotationModel.File = quotation.File |
| | | quotationModel.Products = quotation.Products |
| | | |
| | | return ecode.OK, quotationModel |
| | | |
| | | } |
| | | |
| | | // List |
| | | // |
| | | // @Tags Quotation |
| | | // @Summary 报价单列表 |
| | | // @Produce application/json |
| | | // @Param object body request.GetQuotationList true "参数" |
| | | // @Success 200 {object} contextx.Response{data=response.QuotationResponse} |
| | | // @Router /api/quotation/list [post] |
| | | func (con *QuotationApi) List(c *gin.Context) { |
| | | var params request.GetQuotationList |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | quotations, total, errCode := quotationService.GetQuotationList(params.Page, params.PageSize, params.SearchMap) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | ctx.OkWithDetailed(response.QuotationResponse{ |
| | | List: quotations, |
| | | Count: int(total), |
| | | }) |
| | | } |