zhuo
2025-02-20 da59bd81334e7b4ddeaaa401f27c5b93797fde46
cnas-manage/src/main/java/com/ruoyi/manage/controller/ClientSatisfactionController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,142 @@
package com.ruoyi.manage.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.utils.JackSonUtil;
import com.ruoyi.manage.mapper.ClientSatisfactionAnalyseFileMapper;
import com.ruoyi.manage.pojo.ClientSatisfaction;
import com.ruoyi.manage.pojo.ClientSatisfactionAnalyseFile;
import com.ruoyi.manage.service.ClientSatisfactionService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.util.Map;
/**
 * å®¢æˆ·æ»¡æ„åº¦
 *
 * @author zhuo
 * @since 2024-11-09
 */
@Api(tags = "客户满意度调查")
@AllArgsConstructor
@RestController
@RequestMapping("/clientSatisfaction")
public class ClientSatisfactionController {
    private ClientSatisfactionService clientSatisfactionService;
    private ClientSatisfactionAnalyseFileMapper clientSatisfactionAnalyseFileMapper;
    /**
     * å®¢æˆ·æ»¡æ„åº¦è°ƒæŸ¥åˆ—表
     * @param
     * @return
     */
    @ApiOperation(value = "客户满意度调查列表")
    @PostMapping("/pageClientSatisfaction")
    public Result<IPage<ClientSatisfaction>> pageClientSatisfaction(Page page,ClientSatisfaction clientSatisfaction) throws Exception {
        return Result.success(clientSatisfactionService.pageClientSatisfaction(page, clientSatisfaction));
    }
    /**
     * å®¢æˆ·æ»¡æ„åº¦è°ƒæŸ¥æ–°å¢ž
     * @return
     */
    @ApiOperation(value = "客户满意度调查新增")
    @PostMapping("/addClientSatisfaction")
    public Result addClientSatisfaction(@RequestBody ClientSatisfaction clientSatisfaction){
        return Result.success(clientSatisfactionService.save(clientSatisfaction));
    }
    /**
     * å®¢æˆ·æ»¡æ„åº¦è°ƒæŸ¥ä¿®æ”¹
     * @return
     */
    @ApiOperation(value = "客户满意度调查新增")
    @PostMapping("/updateClientSatisfaction")
    public Result updateClientSatisfaction(@RequestBody ClientSatisfaction clientSatisfaction){
        return Result.success(clientSatisfactionService.updateById(clientSatisfaction));
    }
    /**
     * å®¢æˆ·æ»¡æ„åº¦è°ƒæŸ¥ä¿®æ”¹
     * @return
     */
    @ApiOperation(value = "客户满意度调查新增")
    @GetMapping("/delClientSatisfaction")
    public Result updateClientSatisfaction(Integer clientSatisfactionId){
        return Result.success(clientSatisfactionService.removeById(clientSatisfactionId));
    }
    /**
     * å®¢æˆ·æ»¡æ„åº¦å¯¼å‡º
     * @param clientSatisfactionId
     * @param response
     * @return
     */
    @ApiOperation(value = "客户满意导出")
    @GetMapping("/exportWordClientSatisfaction")
    public Result exportWordClientSatisfaction(Integer clientSatisfactionId, HttpServletResponse response){
        clientSatisfactionService.exportWordClientSatisfaction(clientSatisfactionId, response);
        return Result.success();
    }
    /**
     * ç¡®è®¤å®¢æˆ·æ»¡æ„åº¦
     * @param clientSatisfaction è¦ä¿®æ”¹å®¢æˆ·æ»¡æ„åº¦çš„状态对象
     * @param userId ä¿®æ”¹äººid
     */
    @ApiOperation(value = "确认客户满意度")
    @GetMapping("/confirmClientSatisfaction")
    public void confirmClientSatisfaction(ClientSatisfaction clientSatisfaction, Integer userId){
        clientSatisfactionService.confirmClientSatisfaction(clientSatisfaction, userId);
    }
    /**
     * æ–°å¢žå®¢æˆ·åˆ†æžé™„ä»¶
     * @param file
     * @return
     */
    @ApiOperation(value = "新增户分析附件")
    @PostMapping("/uploadAnalyseFile")
    public Result<?> uploadAnalyseFile(MultipartFile file) {
        return Result.success(clientSatisfactionService.uploadAnalyseFile(file));
    }
    /**
     * æŸ¥è¯¢æˆ·åˆ†æžé™„ä»¶
     * @return
     */
    @ApiOperation(value = "查询户分析附件")
    @PostMapping("/pageAnalyseFile")
    public Result<IPage<ClientSatisfactionAnalyseFile>> pageAnalyseFile(@RequestBody Map<String, Object> data) throws Exception {
        Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class);
        ClientSatisfactionAnalyseFile analyseFile = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), ClientSatisfactionAnalyseFile.class);
        return Result.success(clientSatisfactionService.pageAnalyseFile(page, analyseFile));
    }
    /**
     * åˆ é™¤æˆ·åˆ†æžé™„ä»¶
     * @return
     */
    @ApiOperation(value = "删除户分析附件")
    @GetMapping("/delAnalyseFile")
    public Result delAnalyseFile(Integer analyseFileId){
        return Result.success(clientSatisfactionAnalyseFileMapper.deleteById(analyseFileId));
    }
}