package com.ltkj.web.controller.system;
|
|
import java.util.List;
|
import java.util.Optional;
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletResponse;
|
|
import com.google.common.base.Joiner;
|
import com.ltkj.common.core.domain.model.LoginUser;
|
import com.ltkj.framework.config.UserHoder;
|
import com.ltkj.hosp.domain.TjPrintOrder;
|
import com.ltkj.hosp.service.IJimuOnlineReportService;
|
import com.ltkj.hosp.service.ITjFlowingWaterService;
|
import com.ltkj.hosp.service.ITjPrintOrderService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PutMapping;
|
import org.springframework.web.bind.annotation.DeleteMapping;
|
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
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.utils.poi.ExcelUtil;
|
import com.ltkj.common.core.page.TableDataInfo;
|
|
/**
|
* 体检打印记录Controller
|
*
|
* @author ltkj_赵佳豪&李格
|
* @date 2023-04-26
|
*/
|
@RestController
|
@RequestMapping("/system/order")
|
@Api(tags = "体检发票打印记录接口")
|
public class TjPrintOrderController extends BaseController {
|
@Autowired
|
private ITjPrintOrderService tjPrintOrderService;
|
|
@Resource
|
private ITjFlowingWaterService flowingWaterService;
|
@Resource
|
private IJimuOnlineReportService reportService;
|
|
/**
|
* 查询体检打印记录列表
|
*/
|
//@PreAuthorize("@ss.hasPermi('system:order:list')")
|
@GetMapping("/list")
|
@ApiOperation(value = "查询")
|
public TableDataInfo list(TjPrintOrder tjPrintOrder) {
|
startPage();
|
List<TjPrintOrder> list = tjPrintOrderService.selectTjPrintOrderList(tjPrintOrder);
|
return getDataTable(list);
|
}
|
|
/**
|
* 导出体检打印记录列表
|
*/
|
// @PreAuthorize("@ss.hasPermi('system:order:export')")
|
@Log(title = "体检打印记录", businessType = BusinessType.EXPORT)
|
@PostMapping("/export")
|
@ApiOperation(value = "导出")
|
public void export(HttpServletResponse response, TjPrintOrder tjPrintOrder) {
|
List<TjPrintOrder> list = tjPrintOrderService.selectTjPrintOrderList(tjPrintOrder);
|
ExcelUtil<TjPrintOrder> util = new ExcelUtil<TjPrintOrder>(TjPrintOrder.class);
|
util.exportExcel(response, list, "体检打印记录数据");
|
}
|
|
/**
|
* 获取体检打印记录详细信息
|
*/
|
//@PreAuthorize("@ss.hasPermi('system:order:query')")
|
@GetMapping(value = "/{id}")
|
@ApiOperation(value = "详请")
|
public AjaxResult getInfo(@PathVariable("id") Long id) {
|
return success(tjPrintOrderService.selectTjPrintOrderById(id));
|
}
|
|
/**
|
* 新增体检打印记录
|
*/
|
//@PreAuthorize("@ss.hasPermi('system:order:add')")
|
@Log(title = "体检打印记录", businessType = BusinessType.INSERT)
|
@PostMapping
|
@ApiOperation(value = "新增")
|
public AjaxResult add(@RequestBody TjPrintOrder tjPrintOrder) {
|
LoginUser loginUser = UserHoder.getLoginUser();
|
List<String> list = Optional.ofNullable(flowingWaterService.getFlowingWaterIds(tjPrintOrder.getTjNum())).get();
|
String join = Joiner.on(";").join(list);
|
tjPrintOrder.setWaterId(join);
|
tjPrintOrder.setPrintType(Long.valueOf(reportService.getById(tjPrintOrder.getMoBanId()).getPrintType()));
|
tjPrintOrder.setCreateId(loginUser.getUserId());
|
return toAjax(tjPrintOrderService.save(tjPrintOrder));
|
}
|
|
/**
|
* 修改体检打印记录
|
*/
|
//@PreAuthorize("@ss.hasPermi('system:order:edit')")
|
@Log(title = "体检打印记录", businessType = BusinessType.UPDATE)
|
@PutMapping
|
@ApiOperation(value = "修改")
|
public AjaxResult edit(@RequestBody TjPrintOrder tjPrintOrder) {
|
return toAjax(tjPrintOrderService.updateTjPrintOrder(tjPrintOrder));
|
}
|
|
/**
|
* 删除体检打印记录
|
*/
|
//@PreAuthorize("@ss.hasPermi('system:order:remove')")
|
@Log(title = "体检打印记录", businessType = BusinessType.DELETE)
|
@DeleteMapping("/{ids}")
|
@ApiOperation(value = "删除")
|
public AjaxResult remove(@PathVariable Long[] ids) {
|
return toAjax(tjPrintOrderService.deleteTjPrintOrderByIds(ids));
|
}
|
}
|