package com.ruoyi.web.controller.zhang;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.text.Convert;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.domain.ZfContact;
import com.ruoyi.domain.excel.ZfCollectionExcelBean;
import com.ruoyi.domain.excel.ZfContactExcelBean;
import com.ruoyi.service.ZfContactService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import static com.ruoyi.common.core.page.TableSupport.PAGE_NUM;
import static com.ruoyi.common.core.page.TableSupport.PAGE_SIZE;
/**
*
* 前端控制器
*
*
* @author ojq
* @since 2023-03-12
*/
@RestController
@RequestMapping("/zfContact")
@Slf4j
public class ZfContactController extends BaseController {
@Resource
private ZfContactService zfContactService;
@GetMapping("/all")
public AjaxResult listAll(ZfContact zfContact){
Integer pageNum = Convert.toInt(ServletUtils.getParameter(PAGE_NUM), 1);
Integer pageSize = Convert.toInt(ServletUtils.getParameter(PAGE_SIZE), 10);
return zfContactService.selectDataList(zfContact, pageNum, pageSize);
}
/**
* 获取导入模板
*/
@PostMapping("/model")
public void getExportModel(HttpServletResponse response){
List list = Collections.singletonList(new ZfContactExcelBean());
ExcelUtil util = new ExcelUtil<>(ZfContactExcelBean.class);
util.exportExcel(response,list,"通讯录导入模板");
}
/**
* 导出通讯录记录列表
*/
// @PreAuthorize("@ss.hasPermi('system:property:export')")
@Log(title = "通讯录记录", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, ZfContact zfContact)
{
List list = zfContactService.selectByCondition(zfContact);
log.info("导出记录为:{}",list);
ExcelUtil util = new ExcelUtil<>(ZfContact.class);
util.exportExcel(response, list, "通讯录记录数据");
}
/**
* 导出通讯录记录列表
*/
// @PreAuthorize("@ss.hasPermi('system:property:export')")
@Log(title = "通讯录记录", businessType = BusinessType.EXPORT)
@PostMapping("/export1/{ids}")
public void export(HttpServletResponse response, @PathVariable Long[] ids)
{
List list = zfContactService.selectByIds(ids);
log.info("导出记录为:{}",list);
ExcelUtil util = new ExcelUtil<>(ZfContact.class);
util.exportExcel(response, list, "通讯录记录数据");
}
/**
* 导入通讯录记录列表
*/
@Log(title = "用户管理", businessType = BusinessType.IMPORT)
@PostMapping("/importData")
public AjaxResult importData(@RequestParam("excelImport") MultipartFile file) throws Exception
{
// ExcelUtil util = new ExcelUtil<>(ZfContact.class);
// List eventList = util.importExcel(file.getInputStream());
// log.info("通讯录列表为:{}",eventList);
// if (zfContactService.saveBatch(eventList)) {
// return AjaxResult.success("导入数据成功");
// }
// return AjaxResult.error("导入数据失败");
return zfContactService.importExcel(file);
}
/**
* 获取通讯录记录详细信息
*/
// @PreAuthorize("@ss.hasPermi('system:property:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(zfContactService.getById(id));
}
//
/**
* 新增通讯录记录
*/
// @PreAuthorize("@ss.hasPermi('system:property:add')")
@Log(title = "通讯录记录", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody ZfContact zfContact)
{
return (zfContactService.addData(zfContact));
}
/**
* 修改通讯录记录
*/
// @PreAuthorize("@ss.hasPermi('system:property:edit')")
@Log(title = "通讯录记录", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody ZfContact zfContact)
{
return zfContactService.updateData(zfContact);
}
//
/**
* 批量删除通讯录记录
*/
// @PreAuthorize("@ss.hasPermi('system:property:remove')")
@Log(title = "通讯录记录", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return zfContactService.deleteData(ids);
}
}