package com.ltkj.web.controller.system; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ltkj.common.utils.poi.ExcelUtil; import com.ltkj.framework.config.MatchUtils; import com.ltkj.hosp.domain.TjSendRecord; import com.ltkj.hosp.service.ITjSendRecordService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import com.ltkj.common.annotation.Log; import com.ltkj.common.core.controller.BaseController; import com.ltkj.common.core.domain.AjaxResult; import com.ltkj.common.enums.BusinessType; import com.ltkj.common.core.page.TableDataInfo; import sun.util.resources.cldr.nyn.CalendarData_nyn_UG; import java.util.*; /** * 邮件短信发送记录Controller * * @author ltkj * @date 2023-03-15 */ @RestController @RequestMapping("/system/record") @Api(tags = "邮件短信发送记录") public class TjSendRecordController extends BaseController { @Resource private ITjSendRecordService tjSendRecordService; /** * 查询邮件短信发送记录列表 */ //@PreAuthorize("@ss.hasPermi('system:record:list')") @GetMapping("/list") @ApiOperation(value = "查询邮件短信发送记录列表") public AjaxResult list(@RequestParam(required = false) @ApiParam("体检号") String tjNum, @RequestParam(required = false) @ApiParam("手机号") String number, @RequestParam(required = false) @ApiParam("体检标题") String subject, @RequestParam(required = false) @ApiParam("发送时间") Date sendTime, @ApiParam(value = "页码数(默认1)") @RequestParam(defaultValue = "1") Integer pageNum, @ApiParam(value = "显示条数(默认10)") @RequestParam(defaultValue = "10") Integer pageSize) { Page page = new Page<>(pageNum, pageSize); LambdaQueryWrapper wq = new LambdaQueryWrapper<>(); if (null != tjNum) wq.likeLeft(TjSendRecord::getTjNumber,tjNum); if (null != number) wq.eq(TjSendRecord::getNumber,number); if (null != subject) wq.like(TjSendRecord::getSubject,subject); if (null != sendTime) wq.between(TjSendRecord::getSendTime, DateUtil.beginOfDay(sendTime), DateUtil.endOfDay(sendTime)); wq.orderByDesc(TjSendRecord::getSendTime); Page recordPage = tjSendRecordService.page(page,wq); if(null !=recordPage.getRecords() && recordPage.getRecords().size()>0){ for (TjSendRecord record : recordPage.getRecords()) { if(null !=record){ if(null !=record.getNumber()) record.setNumber(MatchUtils.hidePhoneNum(record.getNumber())); } } } Map map = new HashMap<>(); map.put("data", recordPage.getRecords()); map.put("total", recordPage.getTotal()); return AjaxResult.success(map); } /** * 导出邮件短信发送记录列表 */ //@PreAuthorize("@ss.hasPermi('system:record:export')") @Log(title = "邮件短信发送记录", businessType = BusinessType.EXPORT) @PostMapping("/export") @ApiOperation(value = "导出邮件短信发送记录列表") public void export(HttpServletResponse response) { List list = tjSendRecordService.list(); ExcelUtil util = new ExcelUtil(TjSendRecord.class); util.exportExcel(response, list, "邮件短信发送记录数据"); } /** * 获取邮件短信发送记录详细信息 */ //@PreAuthorize("@ss.hasPermi('system:record:query')") @GetMapping(value = "/{id}") @ApiOperation(value = "获取邮件短信发送记录详细信息") public AjaxResult getInfo(@PathVariable("id") String id) { return success(tjSendRecordService.getById(id)); } /** * 新增邮件短信发送记录 */ @ApiOperation(value = "新增邮件短信发送记录") //@PreAuthorize("@ss.hasPermi('system:record:add')") @Log(title = "邮件短信发送记录", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody TjSendRecord tjSendRecord) { return toAjax(tjSendRecordService.save(tjSendRecord)); } /** * 修改邮件短信发送记录 */ @ApiOperation(value = "修改邮件短信发送记录") //@PreAuthorize("@ss.hasPermi('system:record:edit')") @Log(title = "邮件短信发送记录", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody TjSendRecord tjSendRecord) { return toAjax(tjSendRecordService.updateById(tjSendRecord)); } /** * 删除邮件短信发送记录 */ @ApiOperation(value = "删除邮件短信发送记录") //@PreAuthorize("@ss.hasPermi('system:record:remove')") @Log(title = "邮件短信发送记录", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable String[] ids) { return toAjax(tjSendRecordService.removeByIds(Arrays.asList(ids))); } }