package com.ruoyi.web.controller.smartor; import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; import com.smartor.common.ShiyiSmsUtil; import com.smartor.domain.ShiyiSmsRequest; import com.smartor.domain.ShiyiSmsResponse; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * 市一 服务平台对接 Controller (杭州市一) *
* 对应《HIS 服务平台接口说明文档 V1.1》5.2 短信业务(FASONGDX)。 * 本接口面向第三方调用,已通过 {@link Anonymous} 放开鉴权,生产环境建议由网关/IP 白名单做访问控制。 */ @Api(tags = "市一 服务平台对接") @RestController @RequestMapping("/shiyi/sms") public class ShiyiSmsController extends BaseController { @Autowired private ShiyiSmsUtil shiyiSmsUtil; /** * 第三方调用:通过 HIS 服务平台下发短信 (FASONGDX) */ @Anonymous @ApiOperation(value = "市一 短信下发", notes = "对接《HIS 服务平台接口说明文档 V1.1》5.2 短信业务") @Log(title = "市一 短信下发", businessType = BusinessType.OTHER) @PostMapping("/send") public AjaxResult send(@RequestBody ShiyiSmsRequest request) { ShiyiSmsResponse response = shiyiSmsUtil.sendSms(request); if (response == null) { return AjaxResult.error("市一 短信下发 无响应"); } if (!response.isSuccess()) { AjaxResult fail = AjaxResult.error( "市一 短信下发失败: " + response.getErrmsg()); fail.put("data", response); return fail; } return AjaxResult.success("发送成功", response); } }