liusheng
2023-06-15 77d7257c02fc811a53b8d9207e4239f69c8a600c
题目和标签代码提交
已添加13个文件
已修改25个文件
1847 ■■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/BaseTagController.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/BaseTagcategoryController.java 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchiveController.java 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchivetagController.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SchemeAutofinshruleController.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTopicController.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/BaseTagcategory.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/PatArchive.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/PatArchiveAndTag.java 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/PatArchiveReq.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/PatArchivetag.java 129 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/PatArchivetagAndPatientInfo.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/PatImportInfoVO.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/SvyLibTopicAndOptionRes.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/SvyLibTopicRes.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/SvyTopicReq.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/BaseTagMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/BaseTagcategoryMapper.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/PatArchiveMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/PatArchivetagMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/SvyLibTopicMapper.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/SvyLibTopicoptionMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IBaseTagService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IBaseTagcategoryService.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IPatArchiveService.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IPatArchivetagService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/ISvyLibTopicService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/BaseTagServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/BaseTagcategoryServiceImpl.java 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/PatArchivetagServiceImpl.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/SvyLibTopicServiceImpl.java 74 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/BaseTagMapper.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/BaseTagcategoryMapper.xml 144 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/PatArchiveMapper.xml 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/PatArchivetagMapper.xml 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/SvyLibTopicMapper.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/SvyLibTopicoptionMapper.xml 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/BaseTagController.java
@@ -45,7 +45,7 @@
    @ApiOperation("查询标签列表")
    @PreAuthorize("@ss.hasPermi('system:tag:list')")
    @GetMapping("/list")
    public TableDataInfo list(BaseTag baseTag) {
    public TableDataInfo list(@RequestBody BaseTag baseTag) {
        startPage();
        List<BaseTag> list = baseTagService.selectBaseTagList(baseTag);
        return getDataTable(list);
@@ -108,4 +108,6 @@
    public AjaxResult remove(@PathVariable Long[] tagids) {
        return toAjax(baseTagService.deleteBaseTagByTagids(tagids));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/BaseTagcategoryController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,101 @@
package com.ruoyi.web.controller.smartor;
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.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.smartor.domain.BaseTagcategory;
import com.smartor.service.IBaseTagcategoryService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
 * æ ‡ç­¾åˆ†ç±»Controller
 *
 * @author ruoyi
 * @date 2023-06-15
 */
@RestController
@RequestMapping("/system/tagcategory")
public class BaseTagcategoryController extends BaseController {
    @Autowired
    private IBaseTagcategoryService baseTagcategoryService;
    /**
     * æŸ¥è¯¢æ ‡ç­¾åˆ†ç±»åˆ—表
     */
    @PreAuthorize("@ss.hasPermi('system:tagcategory:list')")
    @GetMapping("/list")
    public TableDataInfo list(BaseTagcategory baseTagcategory) {
        startPage();
        List<BaseTagcategory> list = baseTagcategoryService.selectBaseTagcategoryList(baseTagcategory);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºæ ‡ç­¾åˆ†ç±»åˆ—表
     */
    @PreAuthorize("@ss.hasPermi('system:tagcategory:export')")
    @Log(title = "标签分类", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, BaseTagcategory baseTagcategory) {
        List<BaseTagcategory> list = baseTagcategoryService.selectBaseTagcategoryList(baseTagcategory);
        ExcelUtil<BaseTagcategory> util = new ExcelUtil<BaseTagcategory>(BaseTagcategory.class);
        util.exportExcel(response, list, "标签分类数据");
    }
    /**
     * èŽ·å–æ ‡ç­¾åˆ†ç±»è¯¦ç»†ä¿¡æ¯
     */
    @PreAuthorize("@ss.hasPermi('system:tagcategory:query')")
    @GetMapping(value = "/{tagcategoryid}")
    public AjaxResult getInfo(@PathVariable("tagcategoryid") Long tagcategoryid) {
        return success(baseTagcategoryService.selectBaseTagcategoryByTagcategoryid(tagcategoryid));
    }
    /**
     * æ–°å¢žæ ‡ç­¾åˆ†ç±»
     */
    @PreAuthorize("@ss.hasPermi('system:tagcategory:add')")
    @Log(title = "标签分类", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody BaseTagcategory baseTagcategory) {
        return toAjax(baseTagcategoryService.insertBaseTagcategory(baseTagcategory));
    }
    /**
     * ä¿®æ”¹æ ‡ç­¾åˆ†ç±»
     */
    @PreAuthorize("@ss.hasPermi('system:tagcategory:edit')")
    @Log(title = "标签分类", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody BaseTagcategory baseTagcategory) {
        return toAjax(baseTagcategoryService.updateBaseTagcategory(baseTagcategory));
    }
    /**
     * åˆ é™¤æ ‡ç­¾åˆ†ç±»
     */
    @PreAuthorize("@ss.hasPermi('system:tagcategory:remove')")
    @Log(title = "标签分类", businessType = BusinessType.DELETE)
    @DeleteMapping("/{tagcategoryids}")
    public AjaxResult remove(@PathVariable Long[] tagcategoryids) {
        return toAjax(baseTagcategoryService.deleteBaseTagcategoryByTagcategoryids(tagcategoryids));
    }
    /**
     * æ ¹æ®æ ‡ç­¾ç±»åˆ«åèŽ·å–æ ‡ç­¾åˆ†ç±»ä¿¡æ¯
     */
    @ApiOperation("根据标签类别名获取标签分类信息(标签分类)")
    @PostMapping("/baseTagCategoryByName")
    public TableDataInfo baseTagCategoryByName(@RequestParam("name") String name) {
        return getDataTable(baseTagcategoryService.baseTagCategoryByName(name));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchiveController.java
@@ -9,6 +9,8 @@
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.smartor.domain.PatArchive;
import com.smartor.domain.PatArchiveReq;
import com.smartor.domain.PatImportInfoVO;
import com.smartor.domain.PatUpInfoVO;
import com.smartor.service.IPatArchiveService;
import io.swagger.annotations.Api;
@@ -16,8 +18,12 @@
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
@@ -114,18 +120,25 @@
     */
    @ApiOperation("导入患者文件处理")
    @PostMapping("/importFilehandle")
    @ApiImplicitParams({
           @ApiImplicitParam(name = "tags", value = "标签"),
            @ApiImplicitParam(name = "multipartFile", value = "上传文件")
    })
    @ApiImplicitParams({@ApiImplicitParam(name = "tags", value = "标签"), @ApiImplicitParam(name = "multipartFile", value = "上传文件")})
    public AjaxResult importFilehandle(@RequestParam("tags") String tags, @RequestParam("multipartFile") MultipartFile multipartFile) {
        //获取当前登陆人
        LoginUser loginUser = getLoginUser();
        SysUser user = loginUser.getUser();
        PatUpInfoVO patUpInfoVO = patArchiveService.importFilehandle(user, tags, multipartFile);
        return success(patUpInfoVO);
    }
    /**
     * å¯¼å…¥æ‚£è€…信息模板
     *
     * @param response
     */
    @ApiOperation("患者信息导入模板")
    @PostMapping("/patImportTemplate")
    public void patImportTemplate(HttpServletResponse response) {
        ExcelUtil<PatImportInfoVO> util = new ExcelUtil<PatImportInfoVO>(PatImportInfoVO.class);
        util.importTemplateExcel(response, "患者信息导入");
    }
    /**
@@ -134,11 +147,50 @@
     * @param patArchiveList
     */
    @ApiOperation("导出患者错误信息")
    @PostMapping("/exportErrPatInfo")
    public AjaxResult exportErrPatInfo(@RequestBody List<PatArchive> patArchiveList) {
    @PostMapping(value = "/exportErrPatInfo")
    public void exportErrPatInfo(HttpServletResponse response, @RequestBody List<PatImportInfoVO> patArchiveList) {
        return success(patArchiveService.exportErrPatInfo(patArchiveList));
        ExcelUtil<PatImportInfoVO> util = new ExcelUtil<PatImportInfoVO>(PatImportInfoVO.class);
        util.exportExcel(response, patArchiveList, "导出患者错误信息");
    }
    /**
     * æŸ¥è¯¢æ‚£è€…列表
     */
    @ApiOperation("查询患者列表")
    @PostMapping("/patInfoByContion")
    public TableDataInfo patInfoByCondition(@RequestBody PatArchiveReq patArchive) {
        startPage();
        return getDataTable(patArchiveService.patInfoByContion(patArchive));
    }
//    /**
//     * æ‚£è€…标签管理
//     */
//    @ApiOperation("患者标签管理")
//    @PostMapping("/patTagByContion")
//    public TableDataInfo patTagByContion(@RequestBody List<Long> tagids) {
//        startPage();
//        return getDataTable(patArchiveService.patTagByContion(tagids));
//    }
    /**
     * å¯¼å‡ºæ‚£è€…列表根据条件
     */
    @ApiOperation("导出患者列表根据条件")
    @PostMapping("/exportPatInfo")
    public void exportPpatInfo(HttpServletResponse response, @RequestBody PatArchiveReq patArchive) {
        startPage();
        List<PatArchive> patArchives = patArchiveService.patInfoByContion(patArchive);
        if (!CollectionUtils.isEmpty(patArchives)) {
            for (int i = 0; i < patArchives.size(); i++) {
                patArchives.get(i).setTag(patArchives.get(i).getTagList().toString());
            }
        }
        ExcelUtil<PatArchive> util = new ExcelUtil<PatArchive>(PatArchive.class);
        util.exportExcel(response, patArchives, "患者档案数据");
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchivetagController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,99 @@
package com.ruoyi.web.controller.smartor;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.smartor.domain.PatArchivetag;
import com.smartor.service.IPatArchivetagService;
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.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.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
 * æ‚£è€…档案标签Controller
 *
 * @author ruoyi
 * @date 2023-06-13
 */
@RestController
@RequestMapping("/system/archivetag")
public class PatArchivetagController extends BaseController {
    @Autowired
    private IPatArchivetagService patArchivetagService;
    /**
     * æŸ¥è¯¢æ‚£è€…档案标签列表
     */
    @PreAuthorize("@ss.hasPermi('system:archivetag:list')")
    @GetMapping("/list")
    public TableDataInfo list(PatArchivetag patArchivetag) {
        startPage();
        List<PatArchivetag> list = patArchivetagService.selectPatArchivetagList(patArchivetag);
        return getDataTable(list);
    }
    /**
     * å¯¼å‡ºæ‚£è€…档案标签列表
     */
    @PreAuthorize("@ss.hasPermi('system:archivetag:export')")
    @Log(title = "患者档案标签", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, PatArchivetag patArchivetag) {
        List<PatArchivetag> list = patArchivetagService.selectPatArchivetagList(patArchivetag);
        ExcelUtil<PatArchivetag> util = new ExcelUtil<PatArchivetag>(PatArchivetag.class);
        util.exportExcel(response, list, "患者档案标签数据");
    }
    /**
     * èŽ·å–æ‚£è€…æ¡£æ¡ˆæ ‡ç­¾è¯¦ç»†ä¿¡æ¯
     */
    @PreAuthorize("@ss.hasPermi('system:archivetag:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return success(patArchivetagService.selectPatArchivetagById(id));
    }
    /**
     * æ–°å¢žæ‚£è€…档案标签
     */
    @PreAuthorize("@ss.hasPermi('system:archivetag:add')")
    @Log(title = "患者档案标签", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody PatArchivetag patArchivetag) {
        return toAjax(patArchivetagService.insertPatArchivetag(patArchivetag));
    }
    /**
     * ä¿®æ”¹æ‚£è€…档案标签
     */
    @PreAuthorize("@ss.hasPermi('system:archivetag:edit')")
    @Log(title = "患者档案标签", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody PatArchivetag patArchivetag) {
        return toAjax(patArchivetagService.updatePatArchivetag(patArchivetag));
    }
    /**
     * åˆ é™¤æ‚£è€…档案标签
     */
    @PreAuthorize("@ss.hasPermi('system:archivetag:remove')")
    @Log(title = "患者档案标签", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(patArchivetagService.deletePatArchivetagByIds(ids));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SchemeAutofinshruleController.java
@@ -1,7 +1,8 @@
package com.ruoyi.smartor.controller;
package com.ruoyi.web.controller.smartor;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
@@ -29,8 +30,7 @@
 */
@RestController
@RequestMapping("/smartor/schemeautofinshrule")
public class SchemeAutofinshruleController extends BaseController
{
public class SchemeAutofinshruleController extends BaseController {
    @Autowired
    private ISchemeAutofinshruleService schemeAutofinshruleService;
@@ -39,8 +39,7 @@
     */
    @PreAuthorize("@ss.hasPermi('smartor:schemeautofinshrule:list')")
    @GetMapping("/list")
    public TableDataInfo list(SchemeAutofinshrule schemeAutofinshrule)
    {
    public TableDataInfo list(SchemeAutofinshrule schemeAutofinshrule) {
        startPage();
        List<SchemeAutofinshrule> list = schemeAutofinshruleService.selectSchemeAutofinshruleList(schemeAutofinshrule);
        return getDataTable(list);
@@ -52,8 +51,7 @@
    @PreAuthorize("@ss.hasPermi('smartor:schemeautofinshrule:export')")
    @Log(title = "方案结案规则", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, SchemeAutofinshrule schemeAutofinshrule)
    {
    public void export(HttpServletResponse response, SchemeAutofinshrule schemeAutofinshrule) {
        List<SchemeAutofinshrule> list = schemeAutofinshruleService.selectSchemeAutofinshruleList(schemeAutofinshrule);
        ExcelUtil<SchemeAutofinshrule> util = new ExcelUtil<SchemeAutofinshrule>(SchemeAutofinshrule.class);
        util.exportExcel(response, list, "方案结案规则数据");
@@ -64,8 +62,7 @@
     */
    @PreAuthorize("@ss.hasPermi('smartor:schemeautofinshrule:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id)
    {
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return success(schemeAutofinshruleService.selectSchemeAutofinshruleById(id));
    }
@@ -75,8 +72,7 @@
    @PreAuthorize("@ss.hasPermi('smartor:schemeautofinshrule:add')")
    @Log(title = "方案结案规则", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody SchemeAutofinshrule schemeAutofinshrule)
    {
    public AjaxResult add(@RequestBody SchemeAutofinshrule schemeAutofinshrule) {
        return toAjax(schemeAutofinshruleService.insertSchemeAutofinshrule(schemeAutofinshrule));
    }
@@ -86,8 +82,7 @@
    @PreAuthorize("@ss.hasPermi('smartor:schemeautofinshrule:edit')")
    @Log(title = "方案结案规则", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody SchemeAutofinshrule schemeAutofinshrule)
    {
    public AjaxResult edit(@RequestBody SchemeAutofinshrule schemeAutofinshrule) {
        return toAjax(schemeAutofinshruleService.updateSchemeAutofinshrule(schemeAutofinshrule));
    }
@@ -97,8 +92,7 @@
    @PreAuthorize("@ss.hasPermi('smartor:schemeautofinshrule:remove')")
    @Log(title = "方案结案规则", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids)
    {
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(schemeAutofinshruleService.deleteSchemeAutofinshruleByIds(ids));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTopicController.java
@@ -5,6 +5,9 @@
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.smartor.domain.PatImportInfoVO;
import com.smartor.domain.SvyLibTopicRes;
import com.smartor.domain.SvyTopicReq;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -109,15 +112,36 @@
    /**
     * æ‰¹é‡å¯¼å…¥é—®é—®é¢˜ç›®
     * æ‰¹é‡å¯¼å…¥é—®é¢˜ç›®
     */
    @ApiOperation("批量导入问问题目")
    @PostMapping("/importLitTopic")
    public AjaxResult importLitTopic(MultipartFile multipartFile) {
        LoginUser loginUser = getLoginUser();
        SysUser user = loginUser.getUser();
        return success(svyLibTopicService.importLitTopic(user, multipartFile));
    }
    /**
     * å¯¼å…¥é¢˜ç›®æ¨¡æ¿
     *
     * @param response
     */
    @ApiOperation("导入题目模板")
    @PostMapping("/importLitTopicTemplate")
    public void importLitTopicTemplate(HttpServletResponse response) {
        ExcelUtil<SvyLibTopicRes> util = new ExcelUtil<SvyLibTopicRes>(SvyLibTopicRes.class);
        util.importTemplateExcel(response, "导入题目");
    }
    /**
     * èŽ·å–é¢˜ç›®
     */
    @ApiOperation("获取题目")
    @PostMapping("/showTopic")
    public AjaxResult showTopic(@RequestBody SvyTopicReq svyTopicReq) {
        return success(svyLibTopicService.showTopic(svyTopicReq));
    }
}
smartor/src/main/java/com/smartor/domain/BaseTagcategory.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,83 @@
package com.smartor.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
 * æ ‡ç­¾åˆ†ç±»å¯¹è±¡ base_tagcategory
 *
 * @author ruoyi
 * @date 2023-06-15
 */
@Data
@ApiModel(value = "BaseTagcategory", description = "标签分类对象")
public class BaseTagcategory extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**
     * è‡ªå¢žID
     */
    @ApiModelProperty(name = "自增ID")
    private Long tagcategoryid;
    /**
     * æœºæž„ID
     */
    @ApiModelProperty(name = "机构ID")
    @Excel(name = " æœºæž„ID ")
    private String orgid;
    /**
     * æ‹¼éŸ³ç 
     */
    @ApiModelProperty(name = "拼音码")
    @Excel(name = " æ‹¼éŸ³ç  ")
    private String pym;
    /**
     * äº”笔码
     */
    @ApiModelProperty(name = "五笔码")
    @Excel(name = " äº”笔码 ")
    private String wbm;
    /**
     * åˆ é™¤æ ‡è®°
     */
    @ApiModelProperty(name = "删除标记")
    private String delFlag;
    /**
     * ä¸Šä¼ æ ‡è®°
     */
    @ApiModelProperty(name = "上传标记")
    @Excel(name = " ä¸Šä¼ æ ‡è®° ")
    private Long isupload;
    /**
     * ä¸Šä¼ æ—¶é—´
     */
    @ApiModelProperty(name = "上传时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = " ä¸Šä¼ æ—¶é—´ ", width = 30, dateFormat = "yyyy-MM-dd")
    private Date uploadTime;
    /**
     * æ ‡ç­¾åç§°
     */
    @ApiModelProperty(name = "标签类别名称")
    @Excel(name = " æ ‡ç­¾ç±»åˆ«åç§° ")
    private String categoryname;
    @ApiModelProperty(name = "标签数量")
    private String tagNum;
}
smartor/src/main/java/com/smartor/domain/PatArchive.java
@@ -1,6 +1,7 @@
package com.smartor.domain;
import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiImplicitParam;
@@ -69,13 +70,13 @@
     * æ¥æº
     */
    @ApiModelProperty("来源")
    @Excel(name = " æ¥æº ")
    private Long source;
    /**
     * å»ºæ¡£æ—¶é—´
     */
    @ApiModelProperty("建档时间")
    @Excel(name = " å»ºæ¡£æ—¶é—´ ")
    private Date archivetime;
    /**
@@ -95,19 +96,20 @@
     * äº²å±žå·ç 
     */
    @ApiModelProperty("亲属号码")
    @Excel(name = " äº²å±žå·ç  ")
    private String relativetelcode;
    /**
     * è¯ä»¶ç±»åž‹
     */
    @ApiModelProperty("证件类型")
    @Excel(name = " è¯ä»¶ç±»åž‹ ")
    private String iccardtype;
    /**
     * æœºæž„ID
     */
    @ApiModelProperty("机构ID")
    @Excel(name = " æœºæž„ID ")
    private String orgid;
    /**
@@ -138,8 +140,13 @@
     * æ ‡ç­¾
     */
    @ApiModelProperty("标签")
    @Excel(name = " æ ‡ç­¾ ", cellType = Excel.ColumnType.STRING)
    private String tag;
    @ApiModelProperty("标签集合")
    private List<String> tagList;
    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("patid", getPatid()).append("name", getName()).append("sex", getSex()).append("iccardno", getIccardno()).append("birthdate", getBirthdate()).append("age", getAge()).append("source", getSource()).append("archivetime", getArchivetime()).append("archiveby", getArchiveby()).append("telcode", getTelcode()).append("relativetelcode", getRelativetelcode()).append("iccardtype", getIccardtype()).append("orgid", getOrgid()).append("openid", getOpenid()).append("delFlag", getDelFlag()).append("updateBy", getUpdateBy()).append("updateTime", getUpdateTime()).append("createBy", getCreateBy()).append("createTime", getCreateTime()).append("isupload", getIsupload()).append("uploadTime", getUploadTime()).toString();
smartor/src/main/java/com/smartor/domain/PatArchiveAndTag.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,150 @@
package com.smartor.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
import java.util.List;
/**
 * æ‚£è€…档案对象 pat_archive
 *
 * @author smartor
 * @date 2023-03-04
 */
@ApiModel(value = "PatArchive", description = "患者档案对象")
@Data
public class PatArchiveAndTag extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**
     * è‡ªå¢žID
     */
    @ApiModelProperty(name = "自增ID")
    private Long patid;
    /**
     * å§“名
     */
    @ApiModelProperty("姓名")
    @Excel(name = " å§“名 ")
    private String name;
    /**
     * æ€§åˆ«  1:男 2:女
     */
    @ApiModelProperty("性别")
    @Excel(name = " æ€§åˆ« ")
    private Long sex;
    /**
     * è¯ä»¶å·ç 
     */
    @ApiModelProperty("证件号码")
    @Excel(name = " è¯ä»¶å·ç  ")
    private String iccardno;
    /**
     * ç”Ÿæ—¥
     */
    @ApiModelProperty("生日")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = " ç”Ÿæ—¥ ", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthdate;
    /**
     * å¹´é¾„
     */
    @ApiModelProperty("年龄")
    @Excel(name = " å¹´é¾„ ")
    private Long age;
    /**
     * æ¥æº
     */
    @ApiModelProperty("来源")
    @Excel(name = " æ¥æº ")
    private Long source;
    /**
     * å»ºæ¡£æ—¶é—´
     */
    @ApiModelProperty("建档时间")
    private Date archivetime;
    /**
     * å»ºæ¡£äºº
     */
    @ApiModelProperty("建档人")
    private String archiveby;
    /**
     * æ‰‹æœºå·ç 
     */
    @ApiModelProperty("手机号码")
    @Excel(name = " æ‰‹æœºå·ç  ")
    private String telcode;
    /**
     * äº²å±žå·ç 
     */
    @ApiModelProperty("亲属号码")
    private String relativetelcode;
    /**
     * è¯ä»¶ç±»åž‹
     */
    @ApiModelProperty("证件类型")
    private String iccardtype;
    /**
     * æœºæž„ID
     */
    @ApiModelProperty("机构ID")
    @Excel(name = " æœºæž„ID ")
    private String orgid;
    /**
     * å¾®ä¿¡openid
     */
    @ApiModelProperty("微信openid")
    private String openid;
    /**
     * åˆ é™¤æ ‡è®°
     */
    @ApiModelProperty("删除标记")
    private String delFlag;
    /**
     * ä¸Šä¼ æ ‡è®°
     */
    @ApiModelProperty("上传标记")
    private Long isupload;
    /**
     * ä¸Šä¼ æ—¶é—´
     */
    @ApiModelProperty("上传时间")
    private Date uploadTime;
    /**
     * æ ‡ç­¾
     */
    @ApiModelProperty("标签")
    private String tag;
    @ApiModelProperty("标签集合")
    List<PatArchivetag> patArchivetags;
    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("patid", getPatid()).append("name", getName()).append("sex", getSex()).append("iccardno", getIccardno()).append("birthdate", getBirthdate()).append("age", getAge()).append("source", getSource()).append("archivetime", getArchivetime()).append("archiveby", getArchiveby()).append("telcode", getTelcode()).append("relativetelcode", getRelativetelcode()).append("iccardtype", getIccardtype()).append("orgid", getOrgid()).append("openid", getOpenid()).append("delFlag", getDelFlag()).append("updateBy", getUpdateBy()).append("updateTime", getUpdateTime()).append("createBy", getCreateBy()).append("createTime", getCreateTime()).append("isupload", getIsupload()).append("uploadTime", getUploadTime()).toString();
    }
}
smartor/src/main/java/com/smartor/domain/PatArchiveReq.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,54 @@
package com.smartor.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
import java.util.List;
/**
 * æ‚£è€…档案请求对象
 *
 * @author ls
 * @date 2023-06-14
 */
@ApiModel(value = "PatArchiveReq", description = "患者档案请求对象")
@Data
public class PatArchiveReq {
    /**
     * å§“名
     */
    @ApiModelProperty("姓名")
    @Excel(name = " å§“名 ")
    private String name;
    /**
     * è¯ä»¶å·ç 
     */
    @ApiModelProperty("证件号码")
    @Excel(name = " è¯ä»¶å·ç  ")
    private String iccardno;
    /**
     * æ‰‹æœºå·ç 
     */
    @ApiModelProperty("手机号码")
    @Excel(name = " æ‰‹æœºå·ç  ")
    private String telcode;
    /**
     * æ ‡ç­¾ID
     */
    @ApiModelProperty("标签ID")
    private String tagId;
}
smartor/src/main/java/com/smartor/domain/PatArchivetag.java
@@ -1,9 +1,11 @@
package com.smartor.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
@@ -15,133 +17,66 @@
 * @author ruoyi
 * @date 2023-06-02
 */
@Data
@ApiModel(value = "PatArchivetag", description = "患者档案标签对象")
public class PatArchivetag extends BaseEntity
{
public class PatArchivetag extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**  è‡ªå¢žID  */
    /**
     * è‡ªå¢žID
     */
    @ApiModelProperty(name = "自增ID")
    private Long id;
    /**  æ ‡ç­¾åˆ†ç±»ID  */
    /**
     * æ ‡ç­¾åˆ†ç±»ID
     */
    @ApiModelProperty(name = "标签分类ID")
    private Long tagcategoryid;
    /**  æ ‡ç­¾ID  */
    /**
     * æ ‡ç­¾ID
     */
    @ApiModelProperty(name = "标签ID")
    private Long tagid;
    /**  æœºæž„ID  */
    /**
     * æœºæž„ID
     */
    @ApiModelProperty(name = "机构ID")
    private String orgid;
    /**  åˆ é™¤æ ‡è®°  */
    /**
     * åˆ é™¤æ ‡è®°
     */
    @ApiModelProperty(name = "删除标记")
    private String delFlag;
    /**  ä¸Šä¼ æ ‡è®°  */
    /**
     * ä¸Šä¼ æ ‡è®°
     */
    @ApiModelProperty(name = "上传标记")
    private Long isupload;
    /**  ä¸Šä¼ æ—¶é—´  */
    /**
     * ä¸Šä¼ æ—¶é—´
     */
    @ApiModelProperty(name = "上传时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = " ä¸Šä¼ æ—¶é—´ ", width = 30, dateFormat = "yyyy-MM-dd")
    private Date uploadTime;
    /**  æ¡£æ¡ˆID  */
    @ApiModelProperty(name = "标签名称")
    private String tagname;
    /**
     * æ¡£æ¡ˆID
     */
    @ApiModelProperty(name = "档案ID")
    private Long patid;
    public void setId(Long id)
    {
        this.id = id;
    }
    public Long getId()
    {
        return id;
    }
    public void setTagcategoryid(Long tagcategoryid)
    {
        this.tagcategoryid = tagcategoryid;
    }
    public Long getTagcategoryid()
    {
        return tagcategoryid;
    }
    public void setTagid(Long tagid)
    {
        this.tagid = tagid;
    }
    public Long getTagid()
    {
        return tagid;
    }
    public void setOrgid(String orgid)
    {
        this.orgid = orgid;
    }
    public String getOrgid()
    {
        return orgid;
    }
    public void setDelFlag(String delFlag)
    {
        this.delFlag = delFlag;
    }
    public String getDelFlag()
    {
        return delFlag;
    }
    public void setIsupload(Long isupload)
    {
        this.isupload = isupload;
    }
    public Long getIsupload()
    {
        return isupload;
    }
    public void setUploadTime(Date uploadTime)
    {
        this.uploadTime = uploadTime;
    }
    public Date getUploadTime()
    {
        return uploadTime;
    }
    public void setPatid(Long patid)
    {
        this.patid = patid;
    }
    public Long getPatid()
    {
        return patid;
    }
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("tagcategoryid", getTagcategoryid())
            .append("tagid", getTagid())
            .append("orgid", getOrgid())
            .append("delFlag", getDelFlag())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("isupload", getIsupload())
            .append("uploadTime", getUploadTime())
            .append("patid", getPatid())
            .toString();
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("tagname", getTagname()).append("id", getId()).append("tagcategoryid", getTagcategoryid()).append("tagid", getTagid()).append("orgid", getOrgid()).append("delFlag", getDelFlag()).append("updateBy", getUpdateBy()).append("updateTime", getUpdateTime()).append("createBy", getCreateBy()).append("createTime", getCreateTime()).append("isupload", getIsupload()).append("uploadTime", getUploadTime()).append("patid", getPatid()).toString();
    }
}
smartor/src/main/java/com/smartor/domain/PatArchivetagAndPatientInfo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,85 @@
package com.smartor.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
import java.util.List;
/**
 * æ‚£è€…档案标签对象 pat_archivetag
 *
 * @author ruoyi
 * @date 2023-06-02
 */
@Data
@ApiModel(value = "PatArchivetag", description = "患者档案标签对象")
public class PatArchivetagAndPatientInfo {
    private static final long serialVersionUID = 1L;
//    /**
//     * è‡ªå¢žID
//     */
//    @ApiModelProperty(name = "自增ID")
//    private Long id;
//
//    /**
//     * æ ‡ç­¾åˆ†ç±»ID
//     */
//    @ApiModelProperty(name = "标签分类ID")
//    private Long tagcategoryid;
//
//    /**
//     * æ ‡ç­¾ID
//     */
//    @ApiModelProperty(name = "标签ID")
//    private Long tagid;
//
//    /**
//     * æœºæž„ID
//     */
//    @ApiModelProperty(name = "机构ID")
//    private String orgid;
//
//    /**
//     * åˆ é™¤æ ‡è®°
//     */
//    @ApiModelProperty(name = "删除标记")
//    private String delFlag;
//
//    /**
//     * ä¸Šä¼ æ ‡è®°
//     */
//    @ApiModelProperty(name = "上传标记")
//    private Long isupload;
//
//    /**
//     * ä¸Šä¼ æ—¶é—´
//     */
//    @ApiModelProperty(name = "上传时间")
//    @JsonFormat(pattern = "yyyy-MM-dd")
//    @Excel(name = " ä¸Šä¼ æ—¶é—´ ", width = 30, dateFormat = "yyyy-MM-dd")
//    private Date uploadTime;
    @ApiModelProperty(name = "标签名称")
    private String tagname;
    /**
     * æ¡£æ¡ˆID
     */
    @ApiModelProperty(name = "档案ID")
    private Long patid;
    @ApiModelProperty("患者数量")
    private Integer patNum;
    @ApiModelProperty("患者集合")
    private List<PatArchive> patArchives;
}
smartor/src/main/java/com/smartor/domain/PatImportInfoVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,77 @@
package com.smartor.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
 * æ‚£è€…导入信息
 *
 * @author åˆ˜çœ
 * @date 2023-06-06
 */
@ApiModel(value = "PatImportInfoVO", description = "患者档案对象")
@Data
public class PatImportInfoVO extends BaseEntity {
    /**
     * å§“名
     */
    @Excel(name = " å§“名 ")
    private String name;
    /**
     * æ€§åˆ«
     */
    @Excel(name = " æ€§åˆ« ")
    private String sex;
    /**
     * è¯ä»¶ç±»åž‹
     */
    @Excel(name = " è¯ä»¶ç±»åž‹ ")
    private String idcartType;
    /**
     * è¯ä»¶å·ç 
     */
    @Excel(name = " è¯ä»¶å·ç  ")
    private String idCardNum;
    /**
     * å‡ºç”Ÿæ—¥æœŸ
     */
    @Excel(name = " å‡ºç”Ÿæ—¥æœŸ ")
    private String birthday;
    /**
     * æœ¬äººè”系方式
     */
    @Excel(name = " æœ¬äººè”系方式 ")
    private String telcode;
    /**
     * äº²å±žè”系方式
     */
    @Excel(name = " äº²å±žè”系方式 ")
    private String relativetelcode;
    /**
     * æ‚£è€…标签
     */
    @Excel(name = " æ‚£è€…标签 ")
    private String tad;
    /**
     * é”™è¯¯åŽŸå› 
     */
    @Excel(name = " é”™è¯¯åŽŸå›  ")
    private String reason;
}
smartor/src/main/java/com/smartor/domain/SvyLibTopicAndOptionRes.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,64 @@
package com.smartor.domain;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * é—®å·é¢˜ç›®å±•示返参
 *
 * @author ruoyi
 * @date 2023-03-03
 */
@Data
@ApiModel(value = "SvyLibTopicAndOptionRes", description = "问卷题目展示返参")
public class SvyLibTopicAndOptionRes extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /**
     * è‡ªå¢žID
     */
    @ApiModelProperty(name = "自增ID")
    private Long topicid;
    /**
     * é¢˜ç›®
     */
    @ApiModelProperty(name = "题目")
    private String topic;
    /**
     * é¢˜ç›®code
     */
    @ApiModelProperty(name = "题目code")
    private String topiccode;
    /**
     * é¢˜ç›®ç±»åž‹;枚举 1.单选 2多选 3填空
     */
    @ApiModelProperty(name = "题目类型;枚举 1.单选 2多选 3填空")
    private String topictype;
    /**
     * ç±»åˆ«
     */
    @ApiModelProperty(name = "类别")
    private String tag;
    /**
     * é€‰é¡¹code
     */
    @ApiModelProperty(name = "选项code")
    private String optioncode;
    /**
     * é€‰é¡¹å†…容
     */
    @ApiModelProperty(name = "选项内容")
    private String optioncontent;
}
smartor/src/main/java/com/smartor/domain/SvyLibTopicRes.java
@@ -1,5 +1,6 @@
package com.smartor.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -34,12 +35,14 @@
     * é¢˜ç›®
     */
    @ApiModelProperty(name = "题目")
    @Excel(name = " é¢˜ç›® ")
    private String topic;
    /**
     * ç±»åˆ«
     */
    @ApiModelProperty(name = "类别")
    @Excel(name = " ç±»åˆ« ")
    private String tag;
@@ -47,48 +50,84 @@
     * é¢˜ç›®ç±»åž‹;枚举 1.单选 2多选 3填空
     */
    @ApiModelProperty(name = "题目类型;枚举 1.单选 2多选 3填空")
    @Excel(name = " é¢˜ç›®ç±»åž‹;枚举 1.单选 2多选 3填空 ")
    private String topictype;
    /**
     * ç­”案
     */
    @ApiModelProperty(name = "答案")
    @Excel(name = " ç­”案 ")
    private String answer;
    /**
     * é€‰é¡¹A
     */
    @ApiModelProperty(name = "选项A")
    @Excel(name = " é€‰é¡¹A ")
    private String optionA;
    /**
     * é€‰é¡¹B
     */
    @ApiModelProperty(name = "选项B")
    @Excel(name = " é€‰é¡¹B ")
    private String optionB;
    /**
     * é€‰é¡¹C
     */
    @ApiModelProperty(name = "选项C")
    @Excel(name = " é€‰é¡¹C ")
    private String optionC;
    /**
     * é€‰é¡¹D
     */
    @ApiModelProperty(name = "选项D")
    @Excel(name = " é€‰é¡¹D ")
    private String optionD;
    /**
     * é€‰é¡¹D
     */
    @ApiModelProperty(name = "选项E")
    @Excel(name = " é€‰é¡¹E ")
    private String optionE;
    /**
     * é€‰é¡¹D
     */
    @ApiModelProperty(name = "选项F")
    @Excel(name = " é€‰é¡¹F ")
    private String optionF;
    /**
     * é€‰é¡¹D
     */
    @ApiModelProperty(name = "选项G")
    @Excel(name = " é€‰é¡¹G ")
    private String optionG;
    /**
     * é€‰é¡¹D
     */
    @ApiModelProperty(name = "选项H")
    @Excel(name = " é€‰é¡¹H ")
    private String optionH;
    /**
     * åˆ†æ•°
     */
    @ApiModelProperty(name = "分数")
    @Excel(name = " åˆ†æ•° ")
    private String score;
    /**
     * å¤‡æ³¨
     */
    @ApiModelProperty(name = "备注")
    @Excel(name = " å¤‡æ³¨ ")
    private String remark;
smartor/src/main/java/com/smartor/domain/SvyTopicReq.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,34 @@
package com.smartor.domain;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
/**
 * é—®å·é¢˜ç›®æŸ¥è¯¢
 *
 * @author ls
 * @date 2023-06-13
 */
@Data
@ApiModel(value = "SvyTopicReq", description = "问卷题目查询")
public class SvyTopicReq {
    /**
     * é¢˜ç›®
     */
    @ApiModelProperty(name = "题目")
    private String topic;
    @ApiModelProperty(name = "题目类型;枚举 1.单选 2多选 3填空")
    private String topicType;
    @ApiModelProperty(name = "类别")
    private String tag;
}
smartor/src/main/java/com/smartor/mapper/BaseTagMapper.java
@@ -1,9 +1,9 @@
package com.smartor.mapper;
import java.util.List;
import com.smartor.domain.BaseTag;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * æ ‡ç­¾Mapper接口
@@ -60,4 +60,6 @@
     * @return ç»“æžœ
     */
    public int deleteBaseTagByTagids(Long[] tagids);
}
smartor/src/main/java/com/smartor/mapper/BaseTagcategoryMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,66 @@
package com.smartor.mapper;
import com.smartor.domain.BaseTagcategory;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * æ ‡ç­¾åˆ†ç±»Mapper接口
 *
 * @author ruoyi
 * @date 2023-06-15
 */
@Mapper
public interface BaseTagcategoryMapper {
    /**
     * æŸ¥è¯¢æ ‡ç­¾åˆ†ç±»
     *
     * @param tagcategoryid æ ‡ç­¾åˆ†ç±»ä¸»é”®
     * @return æ ‡ç­¾åˆ†ç±»
     */
    public BaseTagcategory selectBaseTagcategoryByTagcategoryid(Long tagcategoryid);
    /**
     * æŸ¥è¯¢æ ‡ç­¾åˆ†ç±»åˆ—表
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return æ ‡ç­¾åˆ†ç±»é›†åˆ
     */
    public List<BaseTagcategory> selectBaseTagcategoryList(BaseTagcategory baseTagcategory);
    /**
     * æ–°å¢žæ ‡ç­¾åˆ†ç±»
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return ç»“æžœ
     */
    public int insertBaseTagcategory(BaseTagcategory baseTagcategory);
    /**
     * ä¿®æ”¹æ ‡ç­¾åˆ†ç±»
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return ç»“æžœ
     */
    public int updateBaseTagcategory(BaseTagcategory baseTagcategory);
    /**
     * åˆ é™¤æ ‡ç­¾åˆ†ç±»
     *
     * @param tagcategoryid æ ‡ç­¾åˆ†ç±»ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteBaseTagcategoryByTagcategoryid(Long tagcategoryid);
    /**
     * æ‰¹é‡åˆ é™¤æ ‡ç­¾åˆ†ç±»
     *
     * @param tagcategoryids éœ€è¦åˆ é™¤çš„æ•°æ®ä¸»é”®é›†åˆ
     * @return ç»“æžœ
     */
    public int deleteBaseTagcategoryByTagcategoryids(Long[] tagcategoryids);
    public List<BaseTagcategory> baseTagCategoryByName(String categoryname);
}
smartor/src/main/java/com/smartor/mapper/PatArchiveMapper.java
@@ -3,6 +3,7 @@
import java.util.List;
import com.smartor.domain.PatArchive;
import com.smartor.domain.PatArchiveReq;
import org.apache.ibatis.annotations.Mapper;
/**
@@ -29,6 +30,9 @@
     */
    public List<PatArchive> selectPatArchiveList(PatArchive patArchive);
    public List<PatArchive> patInfoByContion(PatArchiveReq patArchive);
    /**
     * æ–°å¢žæ‚£è€…档案
     *
smartor/src/main/java/com/smartor/mapper/PatArchivetagMapper.java
@@ -29,6 +29,16 @@
     */
    public List<PatArchivetag> selectPatArchivetagList(PatArchivetag patArchivetag);
    /**
     * æŸ¥è¯¢æ‚£è€…档案标签列表
     *
     * @param patArchivetag æ‚£è€…档案标签信息
     * @return æ‚£è€…档案标签集合
     */
    public List<PatArchivetag> selectPatArchivetagAndBaseTagList(PatArchivetag patArchivetag);
    /**
     * æ–°å¢žæ‚£è€…档案标签
     *
smartor/src/main/java/com/smartor/mapper/SvyLibTopicMapper.java
@@ -3,6 +3,8 @@
import java.util.List;
import com.smartor.domain.SvyLibTopic;
import com.smartor.domain.SvyLibTopicAndOptionRes;
import com.smartor.domain.SvyTopicReq;
import org.apache.ibatis.annotations.Mapper;
/**
@@ -60,4 +62,7 @@
     * @return ç»“æžœ
     */
    public int deleteSvyLibTopicByTopicids(Long[] topicids);
    public List<SvyLibTopicAndOptionRes> showTopic(SvyTopicReq svyTopicReq);
}
smartor/src/main/java/com/smartor/mapper/SvyLibTopicoptionMapper.java
@@ -2,7 +2,10 @@
import java.util.List;
import com.smartor.domain.SvyLibTopicAndOptionRes;
import com.smartor.domain.SvyLibTopicRes;
import com.smartor.domain.SvyLibTopicoption;
import com.smartor.domain.SvyTopicReq;
import org.apache.ibatis.annotations.Mapper;
/**
@@ -60,4 +63,5 @@
     * @return ç»“æžœ
     */
    public int deleteSvyLibTopicoptionByOptionids(Long[] optionids);
}
smartor/src/main/java/com/smartor/service/IBaseTagService.java
@@ -1,6 +1,7 @@
package com.smartor.service;
import java.util.List;
import com.smartor.domain.BaseTag;
/**
@@ -9,8 +10,7 @@
 * @author ruoyi
 * @date 2023-06-02
 */
public interface IBaseTagService
{
public interface IBaseTagService {
    /**
     * æŸ¥è¯¢æ ‡ç­¾
     * 
@@ -58,4 +58,6 @@
     * @return ç»“æžœ
     */
    public int deleteBaseTagByTagid(Long tagid);
}
smartor/src/main/java/com/smartor/service/IBaseTagcategoryService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,66 @@
package com.smartor.service;
import com.ruoyi.common.core.page.TableDataInfo;
import com.smartor.domain.BaseTagcategory;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
 * æ ‡ç­¾åˆ†ç±»Service接口
 *
 * @author ruoyi
 * @date 2023-06-15
 */
public interface IBaseTagcategoryService {
    /**
     * æŸ¥è¯¢æ ‡ç­¾åˆ†ç±»
     *
     * @param tagcategoryid æ ‡ç­¾åˆ†ç±»ä¸»é”®
     * @return æ ‡ç­¾åˆ†ç±»
     */
    public BaseTagcategory selectBaseTagcategoryByTagcategoryid(Long tagcategoryid);
    /**
     * æŸ¥è¯¢æ ‡ç­¾åˆ†ç±»åˆ—表
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return æ ‡ç­¾åˆ†ç±»é›†åˆ
     */
    public List<BaseTagcategory> selectBaseTagcategoryList(BaseTagcategory baseTagcategory);
    /**
     * æ–°å¢žæ ‡ç­¾åˆ†ç±»
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return ç»“æžœ
     */
    public int insertBaseTagcategory(BaseTagcategory baseTagcategory);
    /**
     * ä¿®æ”¹æ ‡ç­¾åˆ†ç±»
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return ç»“æžœ
     */
    public int updateBaseTagcategory(BaseTagcategory baseTagcategory);
    /**
     * æ‰¹é‡åˆ é™¤æ ‡ç­¾åˆ†ç±»
     *
     * @param tagcategoryids éœ€è¦åˆ é™¤çš„æ ‡ç­¾åˆ†ç±»ä¸»é”®é›†åˆ
     * @return ç»“æžœ
     */
    public int deleteBaseTagcategoryByTagcategoryids(Long[] tagcategoryids);
    /**
     * åˆ é™¤æ ‡ç­¾åˆ†ç±»ä¿¡æ¯
     *
     * @param tagcategoryid æ ‡ç­¾åˆ†ç±»ä¸»é”®
     * @return ç»“æžœ
     */
    public int deleteBaseTagcategoryByTagcategoryid(Long tagcategoryid);
    public List<BaseTagcategory> baseTagCategoryByName(String name);
}
smartor/src/main/java/com/smartor/service/IPatArchiveService.java
@@ -4,8 +4,7 @@
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.smartor.domain.PatArchive;
import com.smartor.domain.PatUpInfoVO;
import com.smartor.domain.*;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
@@ -80,4 +79,12 @@
     * @return
     */
    public String exportErrPatInfo(List<PatArchive> patArchiveList);
    public List<PatArchive> patInfoByContion(PatArchiveReq patArchive);
    public List<PatArchivetagAndPatientInfo> patTagByContion(List<Long> tagids);
    public List<PatArchivetagAndPatientInfo> patInfoByTag(List<Long> tagids);
}
smartor/src/main/java/com/smartor/service/IPatArchivetagService.java
@@ -2,7 +2,9 @@
import java.util.List;
import com.ruoyi.common.core.page.TableDataInfo;
import com.smartor.domain.PatArchivetag;
import com.smartor.domain.PatArchivetagAndPatientInfo;
/**
 * æ‚£è€…档案标签Service接口
@@ -58,4 +60,5 @@
     * @return ç»“æžœ
     */
    public int deletePatArchivetagById(Long id);
}
smartor/src/main/java/com/smartor/service/ISvyLibTopicService.java
@@ -6,6 +6,8 @@
import com.ruoyi.common.core.domain.entity.SysUser;
import com.smartor.domain.SvyLibTopic;
import com.smartor.domain.SvyLibTopicRes;
import com.smartor.domain.SvyTopicReq;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.multipart.MultipartFile;
/**
@@ -70,4 +72,6 @@
     * @return
     */
    public List<SvyLibTopicRes> importLitTopic(SysUser user,MultipartFile multipartFile);
    public SvyLibTopicRes showTopic(SvyTopicReq svyTopicReq);
}
smartor/src/main/java/com/smartor/service/impl/BaseTagServiceImpl.java
@@ -87,4 +87,6 @@
    public int deleteBaseTagByTagid(Long tagid) {
        return baseTagMapper.deleteBaseTagByTagid(tagid);
    }
}
smartor/src/main/java/com/smartor/service/impl/BaseTagcategoryServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,101 @@
package com.smartor.service.impl;
import com.ruoyi.common.utils.DateUtils;
import com.smartor.domain.BaseTagcategory;
import com.smartor.mapper.BaseTagcategoryMapper;
import com.smartor.service.IBaseTagcategoryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * æ ‡ç­¾åˆ†ç±»Service业务层处理
 *
 * @author ruoyi
 * @date 2023-06-15
 */
@Service
public class BaseTagcategoryServiceImpl implements IBaseTagcategoryService {
    @Autowired
    private BaseTagcategoryMapper baseTagcategoryMapper;
    /**
     * æŸ¥è¯¢æ ‡ç­¾åˆ†ç±»
     *
     * @param tagcategoryid æ ‡ç­¾åˆ†ç±»ä¸»é”®
     * @return æ ‡ç­¾åˆ†ç±»
     */
    @Override
    public BaseTagcategory selectBaseTagcategoryByTagcategoryid(Long tagcategoryid) {
        return baseTagcategoryMapper.selectBaseTagcategoryByTagcategoryid(tagcategoryid);
    }
    /**
     * æŸ¥è¯¢æ ‡ç­¾åˆ†ç±»åˆ—表
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return æ ‡ç­¾åˆ†ç±»
     */
    @Override
    public List<BaseTagcategory> selectBaseTagcategoryList(BaseTagcategory baseTagcategory) {
        return baseTagcategoryMapper.selectBaseTagcategoryList(baseTagcategory);
    }
    /**
     * æ–°å¢žæ ‡ç­¾åˆ†ç±»
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return ç»“æžœ
     */
    @Override
    public int insertBaseTagcategory(BaseTagcategory baseTagcategory) {
        baseTagcategory.setCreateTime(DateUtils.getNowDate());
        return baseTagcategoryMapper.insertBaseTagcategory(baseTagcategory);
    }
    /**
     * ä¿®æ”¹æ ‡ç­¾åˆ†ç±»
     *
     * @param baseTagcategory æ ‡ç­¾åˆ†ç±»
     * @return ç»“æžœ
     */
    @Override
    public int updateBaseTagcategory(BaseTagcategory baseTagcategory) {
        baseTagcategory.setUpdateTime(DateUtils.getNowDate());
        return baseTagcategoryMapper.updateBaseTagcategory(baseTagcategory);
    }
    /**
     * æ‰¹é‡åˆ é™¤æ ‡ç­¾åˆ†ç±»
     *
     * @param tagcategoryids éœ€è¦åˆ é™¤çš„æ ‡ç­¾åˆ†ç±»ä¸»é”®
     * @return ç»“æžœ
     */
    @Override
    public int deleteBaseTagcategoryByTagcategoryids(Long[] tagcategoryids) {
        return baseTagcategoryMapper.deleteBaseTagcategoryByTagcategoryids(tagcategoryids);
    }
    /**
     * åˆ é™¤æ ‡ç­¾åˆ†ç±»ä¿¡æ¯
     *
     * @param tagcategoryid æ ‡ç­¾åˆ†ç±»ä¸»é”®
     * @return ç»“æžœ
     */
    @Override
    public int deleteBaseTagcategoryByTagcategoryid(Long tagcategoryid) {
        return baseTagcategoryMapper.deleteBaseTagcategoryByTagcategoryid(tagcategoryid);
    }
    /**
     * æ ¹æ®æ ‡ç­¾ç±»åˆ«åèŽ·å–æ ‡ç­¾ç±»åˆ«ä¿¡æ¯
     *
     * @param name
     * @return
     */
    @Override
    public List<BaseTagcategory> baseTagCategoryByName(String name) {
        return baseTagcategoryMapper.baseTagCategoryByName(name);
    }
}
smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
@@ -3,18 +3,14 @@
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.ruoyi.common.utils.StringUtils;
import com.smartor.domain.BaseTag;
import com.smartor.domain.PatArchivetag;
import com.smartor.domain.PatUpInfoVO;
import com.smartor.domain.*;
import com.smartor.mapper.BaseTagMapper;
import com.smartor.mapper.PatArchivetagMapper;
import org.apache.commons.collections4.CollectionUtils;
@@ -24,9 +20,9 @@
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.parameters.P;
import org.springframework.stereotype.Service;
import com.smartor.mapper.PatArchiveMapper;
import com.smartor.domain.PatArchive;
import com.smartor.service.IPatArchiveService;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
@@ -313,6 +309,81 @@
        return "导出成功";
    }
    @Override
    public List<PatArchive> patInfoByContion(PatArchiveReq patArchive) {
        List<PatArchive> patArchives = new ArrayList<>();
        //根据条件获取患者信息
        List<PatArchive> patArchiveList = patArchiveMapper.patInfoByContion(patArchive);
        //根据患者ID进行分组
        Map<Long, List<PatArchive>> listMap = patArchiveList.stream().collect(Collectors.groupingBy(PatArchive::getPatid));
        //对数据进行封装
        for (List<PatArchive> list : listMap.values()) {
            PatArchive patArchive1 = new PatArchive();
            List<String> stringList = new ArrayList<>();
            for (int i = 0; i < list.size(); i++) {
                if (i == 0) {
                    patArchive1 = DtoConversionUtils.sourceToTarget(list.get(0), PatArchive.class);
                    //将标签置空,不空也没有问题
                    patArchive1.setTag("");
                }
                //将查出的tag,放到patArchive1里的TagList中
                stringList.add(list.get(i).getTag());
            }
            patArchive1.setTagList(stringList);
            patArchives.add(patArchive1);
        }
        return patArchives;
    }
    @Override
    public List<PatArchivetagAndPatientInfo> patTagByContion(List<Long> tagids) {
        List<PatArchivetagAndPatientInfo> patArchivetagAndPatientInfos = new ArrayList<>();
        if (tagids.size() > 0) {
            for (int i = 0; i < tagids.size(); i++) {
                PatArchivetag patArchivetag = new PatArchivetag();
                patArchivetag.setTagid(tagids.get(i));
                //获取患者patid
                List<PatArchivetag> patArchivetags1 = patArchivetagMapper.selectPatArchivetagAndBaseTagList(patArchivetag);
                for (int j = 0; j < patArchivetags1.size(); j++) {
                    PatArchivetagAndPatientInfo patArchivetagAndPatientInfo = DtoConversionUtils.sourceToTarget(patArchivetags1.get(j), PatArchivetagAndPatientInfo.class);
                    PatArchive patArchive = new PatArchive();
                    patArchive.setPatid(patArchivetagAndPatientInfo.getPatid());
                    List<PatArchive> patArchiveList = patArchiveMapper.selectPatArchiveList(patArchive);
                    patArchivetagAndPatientInfo.setPatNum(patArchiveList.size());
                    // patArchivetagAndPatientInfo.setPatArchives(patArchiveList);
                    patArchivetagAndPatientInfos.add(patArchivetagAndPatientInfo);
                }
            }
        } else {
            PatArchivetag patArchivetag = new PatArchivetag();
            //获取患者patid
            List<PatArchivetag> patArchivetags1 = patArchivetagMapper.selectPatArchivetagAndBaseTagList(patArchivetag);
            for (int j = 0; j < patArchivetags1.size(); j++) {
                PatArchivetagAndPatientInfo patArchivetagAndPatientInfo = DtoConversionUtils.sourceToTarget(patArchivetags1.get(j), PatArchivetagAndPatientInfo.class);
                PatArchive patArchive = new PatArchive();
                patArchive.setPatid(patArchivetagAndPatientInfo.getPatid());
                List<PatArchive> patArchiveList = patArchiveMapper.selectPatArchiveList(patArchive);
                //  patArchivetagAndPatientInfo.setPatArchives(patArchiveList);
                patArchivetagAndPatientInfo.setPatNum(patArchiveList.size());
                patArchivetagAndPatientInfos.add(patArchivetagAndPatientInfo);
            }
        }
        return patArchivetagAndPatientInfos;
    }
    @Override
    public List<PatArchivetagAndPatientInfo> patInfoByTag(List<Long> tagids) {
        return null;
    }
    private void getdata(Row row, PatArchive patArchive, Boolean head) {
        if (head) {
            row.createCell(0).setCellValue("姓名");
smartor/src/main/java/com/smartor/service/impl/PatArchivetagServiceImpl.java
@@ -1,12 +1,17 @@
package com.smartor.service.impl;
import java.util.ArrayList;
import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.smartor.domain.PatArchivetag;
import com.smartor.domain.PatArchivetagAndPatientInfo;
import com.smartor.mapper.PatArchiveMapper;
import com.smartor.mapper.PatArchivetagMapper;
import com.smartor.service.IPatArchivetagService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
 * æ‚£è€…档案标签Service业务层处理
 * 
@@ -14,10 +19,10 @@
 * @date 2023-06-02
 */
@Service
public class PatArchivetagServiceImpl implements IPatArchivetagService
{
public class PatArchivetagServiceImpl implements IPatArchivetagService {
    @Autowired
    private PatArchivetagMapper patArchivetagMapper;
    /**
     * æŸ¥è¯¢æ‚£è€…档案标签
@@ -26,8 +31,7 @@
     * @return æ‚£è€…档案标签
     */
    @Override
    public PatArchivetag selectPatArchivetagById(Long id)
    {
    public PatArchivetag selectPatArchivetagById(Long id) {
        return patArchivetagMapper.selectPatArchivetagById(id);
    }
@@ -38,8 +42,7 @@
     * @return æ‚£è€…档案标签
     */
    @Override
    public List<PatArchivetag> selectPatArchivetagList(PatArchivetag patArchivetag)
    {
    public List<PatArchivetag> selectPatArchivetagList(PatArchivetag patArchivetag) {
        return patArchivetagMapper.selectPatArchivetagList(patArchivetag);
    }
@@ -50,8 +53,7 @@
     * @return ç»“æžœ
     */
    @Override
    public int insertPatArchivetag(PatArchivetag patArchivetag)
    {
    public int insertPatArchivetag(PatArchivetag patArchivetag) {
        patArchivetag.setCreateTime(DateUtils.getNowDate());
        return patArchivetagMapper.insertPatArchivetag(patArchivetag);
    }
@@ -63,8 +65,7 @@
     * @return ç»“æžœ
     */
    @Override
    public int updatePatArchivetag(PatArchivetag patArchivetag)
    {
    public int updatePatArchivetag(PatArchivetag patArchivetag) {
        patArchivetag.setUpdateTime(DateUtils.getNowDate());
        return patArchivetagMapper.updatePatArchivetag(patArchivetag);
    }
@@ -76,8 +77,7 @@
     * @return ç»“æžœ
     */
    @Override
    public int deletePatArchivetagByIds(Long[] ids)
    {
    public int deletePatArchivetagByIds(Long[] ids) {
        return patArchivetagMapper.deletePatArchivetagByIds(ids);
    }
@@ -88,8 +88,9 @@
     * @return ç»“æžœ
     */
    @Override
    public int deletePatArchivetagById(Long id)
    {
    public int deletePatArchivetagById(Long id) {
        return patArchivetagMapper.deletePatArchivetagById(id);
    }
}
smartor/src/main/java/com/smartor/service/impl/SvyLibTopicServiceImpl.java
@@ -2,13 +2,12 @@
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.smartor.domain.PatArchive;
import com.smartor.domain.SvyLibTopicRes;
import com.smartor.domain.SvyLibTopicoption;
import com.smartor.domain.*;
import com.smartor.mapper.SvyLibTopicoptionMapper;
import org.apache.catalina.User;
import org.apache.commons.collections4.CollectionUtils;
@@ -20,7 +19,6 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.smartor.mapper.SvyLibTopicMapper;
import com.smartor.domain.SvyLibTopic;
import com.smartor.service.ISvyLibTopicService;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
@@ -174,6 +172,18 @@
                if (ObjectUtils.isNotEmpty(row.getCell(8))) {
                    svyLibTopicRes.setScore(row.getCell(8).toString());
                }
                if (ObjectUtils.isNotEmpty(row.getCell(9))) {
                    svyLibTopicRes.setScore(row.getCell(9).toString());
                }
                if (ObjectUtils.isNotEmpty(row.getCell(10))) {
                    svyLibTopicRes.setScore(row.getCell(10).toString());
                }
                if (ObjectUtils.isNotEmpty(row.getCell(11))) {
                    svyLibTopicRes.setScore(row.getCell(11).toString());
                }
                if (ObjectUtils.isNotEmpty(row.getCell(12))) {
                    svyLibTopicRes.setScore(row.getCell(12).toString());
                }
                if (StringUtils.isNotEmpty(svyLibTopicRes.getRemark())) {
                    //说明该行数据有问题
                    svyLibTopicErrors.add(svyLibTopicRes);
@@ -215,29 +225,69 @@
                    //解答题,不需要再设置选项
                    svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                } else {
                    if (ObjectUtils.isNotEmpty(row.getCell(4)) || StringUtils.isNotEmpty(row.getCell(4).toString())) {
                    if (ObjectUtils.isNotEmpty(row.getCell(4))) {
                        if (StringUtils.isNotEmpty(row.getCell(4).toString())) {
                        svyLibTopicoption.setOptioncode("A");
                        svyLibTopicoption.setOptioncontent(row.getCell(4).toString());
                        svyLibTopicoption.setOptionid(null);
                        svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(5)) || StringUtils.isNotEmpty(row.getCell(5).toString())) {
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(5))) {
                        if (StringUtils.isNotEmpty(row.getCell(5).toString())) {
                        svyLibTopicoption.setOptioncode("B");
                        svyLibTopicoption.setOptioncontent(row.getCell(5).toString());
                        svyLibTopicoption.setOptionid(null);
                        svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(6)) || StringUtils.isNotEmpty(row.getCell(6).toString())) {
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(6))) {
                        if (StringUtils.isNotEmpty(row.getCell(6).toString())) {
                        svyLibTopicoption.setOptioncode("C");
                        svyLibTopicoption.setOptioncontent(row.getCell(6).toString());
                        svyLibTopicoption.setOptionid(null);
                        svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(7)) || StringUtils.isNotEmpty(row.getCell(7).toString())) {
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(7))) {
                        if (StringUtils.isNotEmpty(row.getCell(7).toString())) {
                        svyLibTopicoption.setOptioncode("D");
                        svyLibTopicoption.setOptioncontent(row.getCell(7).toString());
                        svyLibTopicoption.setOptionid(null);
                        svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                        }
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(8))) {
                        if (StringUtils.isNotEmpty(row.getCell(8).toString())) {
                            svyLibTopicoption.setOptioncode("E");
                            svyLibTopicoption.setOptioncontent(row.getCell(8).toString());
                            svyLibTopicoption.setOptionid(null);
                            svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                        }
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(9))) {
                        if (StringUtils.isNotEmpty(row.getCell(9).toString())) {
                            svyLibTopicoption.setOptioncode("F");
                            svyLibTopicoption.setOptioncontent(row.getCell(9).toString());
                            svyLibTopicoption.setOptionid(null);
                            svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                        }
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(10))) {
                        if (StringUtils.isNotEmpty(row.getCell(10).toString())) {
                            svyLibTopicoption.setOptioncode("G");
                            svyLibTopicoption.setOptioncontent(row.getCell(10).toString());
                            svyLibTopicoption.setOptionid(null);
                            svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                        }
                    }
                    if (ObjectUtils.isNotEmpty(row.getCell(11))) {
                        if (StringUtils.isNotEmpty(row.getCell(11).toString())) {
                            svyLibTopicoption.setOptioncode("H");
                            svyLibTopicoption.setOptioncontent(row.getCell(11).toString());
                            svyLibTopicoption.setOptionid(null);
                            svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption);
                        }
                    }
                }
            }
@@ -252,5 +302,13 @@
        return null;
    }
    @Override
    public SvyLibTopicRes showTopic(SvyTopicReq svyTopicReq) {
        List<SvyLibTopicAndOptionRes> svyLibTopicAndOptionRes = svyLibTopicMapper.showTopic(svyTopicReq);
        Map<Long, List<SvyLibTopicAndOptionRes>> groupByAge = svyLibTopicAndOptionRes.stream().collect(Collectors.groupingBy(SvyLibTopicAndOptionRes::getTopicid));
        return null;
    }
}
smartor/src/main/resources/mapper/smartor/BaseTagMapper.xml
@@ -21,7 +21,20 @@
    </resultMap>
    <sql id="selectBaseTagVo">
        select tagid, tagcategoryid, tagname, tagdescription, orgid, del_flag, update_by, update_time, create_by, create_time, isupload, upload_time, isenable from base_tag
        select tagid,
               tagcategoryid,
               tagname,
               tagdescription,
               orgid,
               del_flag,
               update_by,
               update_time,
               create_by,
               create_time,
               isupload,
               upload_time,
               isenable
        from base_tag
    </sql>
    <select id="selectBaseTagList" parameterType="com.smartor.domain.BaseTag" resultMap="BaseTagResult">
@@ -94,7 +107,9 @@
    </update>
    <delete id="deleteBaseTagByTagid" parameterType="Long">
        delete from base_tag where tagid = #{tagid}
        delete
        from base_tag
        where tagid = #{tagid}
    </delete>
    <delete id="deleteBaseTagByTagids" parameterType="String">
@@ -103,4 +118,5 @@
            #{tagid}
        </foreach>
    </delete>
</mapper>
smartor/src/main/resources/mapper/smartor/BaseTagcategoryMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,144 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.smartor.mapper.BaseTagcategoryMapper">
    <resultMap type="com.smartor.domain.BaseTagcategory" id="BaseTagcategoryResult">
        <result property="tagcategoryid" column="tagcategoryid"/>
        <result property="orgid" column="orgid"/>
        <result property="updateBy" column="update_by"/>
        <result property="updateTime" column="update_time"/>
        <result property="pym" column="pym"/>
        <result property="wbm" column="wbm"/>
        <result property="delFlag" column="del_flag"/>
        <result property="createBy" column="create_by"/>
        <result property="createTime" column="create_time"/>
        <result property="isupload" column="isupload"/>
        <result property="uploadTime" column="upload_time"/>
        <result property="categoryname" column="categoryname"/>
    </resultMap>
    <sql id="selectBaseTagcategoryVo">
        select tagcategoryid,
               orgid,
               update_by,
               update_time,
               pym,
               wbm,
               del_flag,
               create_by,
               create_time,
               isupload,
               upload_time,
               categoryname
        from base_tagcategory
    </sql>
    <select id="selectBaseTagcategoryList" parameterType="com.smartor.domain.BaseTagcategory"
            resultMap="BaseTagcategoryResult">
        <include refid="selectBaseTagcategoryVo"/>
        <where>
            <if test="orgid != null  and orgid != ''">and orgid = #{orgid}</if>
            <if test="pym != null  and pym != ''">and pym = #{pym}</if>
            <if test="wbm != null  and wbm != ''">and wbm = #{wbm}</if>
            <if test="isupload != null ">and isupload = #{isupload}</if>
            <if test="uploadTime != null ">and upload_time = #{uploadTime}</if>
            <if test="categoryname != null  and categoryname != ''">and categoryname like concat('%', #{categoryname},
                '%')
            </if>
        </where>
    </select>
    <select id="selectBaseTagcategoryByTagcategoryid" parameterType="Long" resultMap="BaseTagcategoryResult">
        <include refid="selectBaseTagcategoryVo"/>
        where tagcategoryid = #{tagcategoryid}
    </select>
    <insert id="insertBaseTagcategory" parameterType="com.smartor.domain.BaseTagcategory" useGeneratedKeys="true"
            keyProperty="tagcategoryid">
        insert into base_tagcategory
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="orgid != null">orgid,</if>
            <if test="updateBy != null">update_by,</if>
            <if test="updateTime != null">update_time,</if>
            <if test="pym != null">pym,</if>
            <if test="wbm != null">wbm,</if>
            <if test="delFlag != null and delFlag != ''">del_flag,</if>
            <if test="createBy != null">create_by,</if>
            <if test="createTime != null">create_time,</if>
            <if test="isupload != null">isupload,</if>
            <if test="uploadTime != null">upload_time,</if>
            <if test="categoryname != null">categoryname,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="orgid != null">#{orgid},</if>
            <if test="updateBy != null">#{updateBy},</if>
            <if test="updateTime != null">#{updateTime},</if>
            <if test="pym != null">#{pym},</if>
            <if test="wbm != null">#{wbm},</if>
            <if test="delFlag != null and delFlag != ''">#{delFlag},</if>
            <if test="createBy != null">#{createBy},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="isupload != null">#{isupload},</if>
            <if test="uploadTime != null">#{uploadTime},</if>
            <if test="categoryname != null">#{categoryname},</if>
        </trim>
    </insert>
    <update id="updateBaseTagcategory" parameterType="com.smartor.domain.BaseTagcategory">
        update base_tagcategory
        <trim prefix="SET" suffixOverrides=",">
            <if test="orgid != null">orgid = #{orgid},</if>
            <if test="updateBy != null">update_by = #{updateBy},</if>
            <if test="updateTime != null">update_time = #{updateTime},</if>
            <if test="pym != null">pym = #{pym},</if>
            <if test="wbm != null">wbm = #{wbm},</if>
            <if test="delFlag != null and delFlag != ''">del_flag = #{delFlag},</if>
            <if test="createBy != null">create_by = #{createBy},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="isupload != null">isupload = #{isupload},</if>
            <if test="uploadTime != null">upload_time = #{uploadTime},</if>
            <if test="categoryname != null">categoryname = #{categoryname},</if>
        </trim>
        where tagcategoryid = #{tagcategoryid}
    </update>
    <delete id="deleteBaseTagcategoryByTagcategoryid" parameterType="java.lang.Long">
        delete
        from base_tagcategory
        where tagcategoryid = #{tagcategoryid}
    </delete>
    <delete id="deleteBaseTagcategoryByTagcategoryids" parameterType="java.lang.String">
        delete from base_tagcategory where tagcategoryid in
        <foreach item="tagcategoryid" collection="array" open="(" separator="," close=")">
            #{tagcategoryid}
        </foreach>
    </delete>
    <select id="baseTagCategoryByName" parameterType="java.lang.String"
            resultType="com.smartor.domain.BaseTagcategory">
        select a.tagcategoryid,
        a.orgid,
        a.update_by,
        a.update_time,
        a.pym,
        a.wbm,
        a.del_flag,
        a.create_by,
        a.create_time,
        a.isupload,
        a.upload_time,
        a.categoryname,
        count(b.tagid) as tagNum
        from base_tagcategory a,base_tag b
        <where>
            a.tagcategoryid = b.tagcategoryid
            <if test="categoryname != null  and categoryname != ''">and a.categoryname like concat('%', #{categoryname},
                '%')
            </if>
        </where>
        GROUP BY a.categoryname
    </select>
</mapper>
smartor/src/main/resources/mapper/smartor/PatArchiveMapper.xml
@@ -4,7 +4,7 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.smartor.mapper.PatArchiveMapper">
    
    <resultMap type="PatArchive" id="PatArchiveResult">
    <resultMap type="com.smartor.domain.PatArchive" id="PatArchiveResult">
        <result property="patid"    column="patid"    />
        <result property="name"    column="name"    />
        <result property="sex"    column="sex"    />
@@ -26,13 +26,35 @@
        <result property="createTime"    column="create_time"    />
        <result property="isupload"    column="isupload"    />
        <result property="uploadTime"    column="upload_time"    />
        <result property="tag" column="tag"/>
    </resultMap>
    <sql id="selectPatArchiveVo">
        select patid, name, sex, iccardno, birthdate, age, source, archivetime, archiveby, telcode, relativetelcode, iccardtype, orgid, openid, del_flag, update_by, update_time, create_by, create_time, isupload, upload_time from pat_archive
        select patid,
               name,
               sex,
               iccardno,
               birthdate,
               age,
               source,
               archivetime,
               archiveby,
               telcode,
               relativetelcode,
               iccardtype,
               orgid,
               openid,
               del_flag,
               update_by,
               update_time,
               create_by,
               create_time,
               isupload,
               upload_time
        from pat_archive
    </sql>
    <select id="selectPatArchiveList" parameterType="PatArchive" resultMap="PatArchiveResult">
    <select id="selectPatArchiveList" parameterType="com.smartor.domain.PatArchive" resultMap="PatArchiveResult">
        <include refid="selectPatArchiveVo"/>
        <where>  
            <if test="name != null  and name != ''"> and name like concat('%', #{name}, '%')</if>
@@ -40,8 +62,33 @@
            <if test="source != null "> and source = #{source}</if>
            <if test="telcode != null  and telcode != ''"> and telcode = #{telcode}</if>
            <if test="orgid != null  and orgid != ''"> and orgid = #{orgid}</if>
            <if test="patid != null  and patid != ''">and patid = #{patid}</if>
            <if test="isupload != null "> and isupload = #{isupload}</if>
            <if test="uploadTime != null "> and upload_time = #{uploadTime}</if>
        </where>
    </select>
    <select id="patInfoByContion" parameterType="com.smartor.domain.PatArchiveReq" resultMap="PatArchiveResult">
        select
        a.patid,
        a.name,
        a.sex,
        c.tagname as tag,
        a.iccardtype,
        a.iccardno,
        a.age,
        a.telcode,
        a.create_time,
        a.update_time,
        a.birthdate
        from pat_archive a,pat_archivetag b ,base_tag c
        <where>
            a.patid = b.patid and b.tagid = c.tagid
            <if test="name != null  and name != ''">and a.name like concat('%', #{name}, '%')</if>
            <if test="iccardno != null  and iccardno != ''">and iccardno = #{iccardno}</if>
            <if test="telcode != null  and telcode != ''">and telcode = #{telcode}</if>
            <if test="tagId != null  and tagId != ''">and c.tagid = #{tagId}</if>
        </where>
    </select>
    
@@ -50,7 +97,7 @@
        where patid = #{patid}
    </select>
        
    <insert id="insertPatArchive" parameterType="PatArchive" useGeneratedKeys="true" keyProperty="patid">
    <insert id="insertPatArchive" parameterType="com.smartor.domain.PatArchive" useGeneratedKeys="true" keyProperty="patid">
        insert into pat_archive
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="name != null">name,</if>
@@ -98,7 +145,7 @@
         </trim>
    </insert>
    <update id="updatePatArchive" parameterType="PatArchive">
    <update id="updatePatArchive" parameterType="com.smartor.domain.PatArchive">
        update pat_archive
        <trim prefix="SET" suffixOverrides=",">
            <if test="name != null">name = #{name},</if>
@@ -126,7 +173,9 @@
    </update>
    <delete id="deletePatArchiveByPatid" parameterType="Long">
        delete from pat_archive where patid = #{patid}
        delete
        from pat_archive
        where patid = #{patid}
    </delete>
    <delete id="deletePatArchiveByPatids" parameterType="String">
@@ -135,4 +184,5 @@
            #{patid}
        </foreach>
    </delete>
</mapper>
smartor/src/main/resources/mapper/smartor/PatArchivetagMapper.xml
@@ -17,6 +17,7 @@
        <result property="isupload" column="isupload"/>
        <result property="uploadTime" column="upload_time"/>
        <result property="patid" column="patid"/>
        <result property="tagname" column="tagname"/>
    </resultMap>
    <sql id="selectPatArchivetagVo">
@@ -48,6 +49,34 @@
        </where>
    </select>
    <select id="selectPatArchivetagAndBaseTagList" parameterType="com.smartor.domain.PatArchivetag"
            resultMap="PatArchivetagResult">
        select a.id,
        a.tagcategoryid,
        a.tagid,
        a.orgid,
        a. del_flag,
        a.update_by,
        a.update_time,
        a.create_by,
        a.create_time,
        a.isupload,
        a.upload_time,
        a.patid,
        b.tagname
        from pat_archivetag a ,base_tag b
        <where>
            a.tagid=b.tagid
            <if test="tagcategoryid != null ">and a.tagcategoryid = #{tagcategoryid}</if>
            <if test="tagid != null ">and b.tagid = #{tagid}</if>
            <if test="orgid != null  and orgid != ''">and a.orgid = #{orgid}</if>
            <if test="isupload != null ">and a.isupload = #{isupload}</if>
            <if test="uploadTime != null ">and a.upload_time = #{uploadTime}</if>
            <if test="patid != null ">and a.patid = #{patid}</if>
        </where>
    </select>
    <select id="selectPatArchivetagById" parameterType="Long" resultMap="PatArchivetagResult">
        <include refid="selectPatArchivetagVo"/>
        where id = #{id}
smartor/src/main/resources/mapper/smartor/SvyLibTopicMapper.xml
@@ -64,6 +64,7 @@
            <if test="updateTime != null">update_time,</if>
            <if test="isupload != null">isupload,</if>
            <if test="uploadTime != null">upload_time,</if>
            <if test="tag != null">tag,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="oldid != null">#{oldid},</if>
@@ -82,6 +83,7 @@
            <if test="updateTime != null">#{updateTime},</if>
            <if test="isupload != null">#{isupload},</if>
            <if test="uploadTime != null">#{uploadTime},</if>
            <if test="tag != null">#{tag},</if>
         </trim>
    </insert>
@@ -118,4 +120,22 @@
            #{topicid}
        </foreach>
    </delete>
    <select id="showTopic" resultType="com.smartor.domain.SvyLibTopicAndOptionRes"
            parameterType="com.smartor.domain.SvyTopicReq">
        SELECT a.topicid, a.topiccode, a.topic, a.topictype, a.tag, b.optioncode, b.optioncontent
        FROM svy_lib_topic a,
        svy_lib_topicoption b
        WHERE a.topicid = b.topicid
        <if test="topic != null and topic != ''">
            and a.topic LIKE concat('%', #{topic}, '%')
        </if>
        <if test="topicType != null and topicType != ''">
            and a.topictype = #{topicType}
        </if>
        <if test="tag != null and tag != ''">
            and a.tag LIKE concat('%', #{tag}, '%')
        </if>
        GROUP BY a.topic, b.optioncode
    </select>
</mapper>
smartor/src/main/resources/mapper/smartor/SvyLibTopicoptionMapper.xml
@@ -39,7 +39,38 @@
    </resultMap>
    <sql id="selectSvyLibTopicoptionVo">
        select optionid, topicid, svyid, topictype, optioncode, optioncontent, isexistdetail, detailismandatory, isexceptionitem, istrack, score, prompt, jump, parentoptionid, ismutex, verifyrule, sort, verificationtype, isrange, minrange, maxrange, rangelength, orgid, oldid, del_flag, create_by, create_time, update_by, update_time, isupload, upload_time from svy_lib_topicoption
        select optionid,
               topicid,
               svyid,
               topictype,
               optioncode,
               optioncontent,
               isexistdetail,
               detailismandatory,
               isexceptionitem,
               istrack,
               score,
               prompt,
               jump,
               parentoptionid,
               ismutex,
               verifyrule,
               sort,
               verificationtype,
               isrange,
               minrange,
               maxrange,
               rangelength,
               orgid,
               oldid,
               del_flag,
               create_by,
               create_time,
               update_by,
               update_time,
               isupload,
               upload_time
        from svy_lib_topicoption
    </sql>
    <select id="selectSvyLibTopicoptionList" parameterType="SvyLibTopicoption" resultMap="SvyLibTopicoptionResult">
@@ -78,7 +109,8 @@
        where optionid = #{optionid}
    </select>
        
    <insert id="insertSvyLibTopicoption" parameterType="SvyLibTopicoption" useGeneratedKeys="true" keyProperty="optionid">
    <insert id="insertSvyLibTopicoption" parameterType="SvyLibTopicoption" useGeneratedKeys="true"
            keyProperty="optionid">
        insert into svy_lib_topicoption
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="topicid != null">topicid,</if>
@@ -184,7 +216,9 @@
    </update>
    <delete id="deleteSvyLibTopicoptionByOptionid" parameterType="Long">
        delete from svy_lib_topicoption where optionid = #{optionid}
        delete
        from svy_lib_topicoption
        where optionid = #{optionid}
    </delete>
    <delete id="deleteSvyLibTopicoptionByOptionids" parameterType="String">
@@ -193,4 +227,6 @@
            #{optionid}
        </foreach>
    </delete>
</mapper>