ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTopicController.java
@@ -1,7 +1,12 @@ package com.smartor.controller; package com.ruoyi.web.controller.smartor; import java.util.List; import javax.servlet.http.HttpServletResponse; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -20,17 +25,18 @@ import com.smartor.service.ISvyLibTopicService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; import org.springframework.web.multipart.MultipartFile; /** * é®å·é¢ç®Controller * * * @author ruoyi * @date 2023-03-03 */ @Api("é®å·é¢ç®") @RestController @RequestMapping("/smartor/svytopic") public class SvyLibTopicController extends BaseController { public class SvyLibTopicController extends BaseController { @Autowired private ISvyLibTopicService svyLibTopicService; @@ -39,8 +45,7 @@ */ @PreAuthorize("@ss.hasPermi('smartor:svytopic:list')") @GetMapping("/list") public TableDataInfo list(SvyLibTopic svyLibTopic) { public TableDataInfo list(SvyLibTopic svyLibTopic) { startPage(); List<SvyLibTopic> list = svyLibTopicService.selectSvyLibTopicList(svyLibTopic); return getDataTable(list); @@ -51,9 +56,9 @@ */ @PreAuthorize("@ss.hasPermi('smartor:svytopic:export')") @Log(title = "é®å·é¢ç®", businessType = BusinessType.EXPORT) @ApiOperation("导åºé®å·é¢ç®å表") @PostMapping("/export") public void export(HttpServletResponse response, SvyLibTopic svyLibTopic) { public void export(HttpServletResponse response, SvyLibTopic svyLibTopic) { List<SvyLibTopic> list = svyLibTopicService.selectSvyLibTopicList(svyLibTopic); ExcelUtil<SvyLibTopic> util = new ExcelUtil<SvyLibTopic>(SvyLibTopic.class); util.exportExcel(response, list, "é®å·é¢ç®æ°æ®"); @@ -62,43 +67,57 @@ /** * è·åé®å·é¢ç®è¯¦ç»ä¿¡æ¯ */ @ApiOperation("è·åé®å·é¢ç®è¯¦ç»ä¿¡æ¯") @PreAuthorize("@ss.hasPermi('smartor:svytopic:query')") @GetMapping(value = "/{topicid}") public AjaxResult getInfo(@PathVariable("topicid") Long topicid) { public AjaxResult getInfo(@PathVariable("topicid") Long topicid) { return success(svyLibTopicService.selectSvyLibTopicByTopicid(topicid)); } /** * æ°å¢é®å·é¢ç® */ @ApiOperation("æ°å¢é®å·é¢ç®") @PreAuthorize("@ss.hasPermi('smartor:svytopic:add')") @Log(title = "é®å·é¢ç®", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody SvyLibTopic svyLibTopic) { public AjaxResult add(@RequestBody SvyLibTopic svyLibTopic) { return toAjax(svyLibTopicService.insertSvyLibTopic(svyLibTopic)); } /** * ä¿®æ¹é®å·é¢ç® */ @ApiOperation("ä¿®æ¹é®å·é¢ç®") @PreAuthorize("@ss.hasPermi('smartor:svytopic:edit')") @Log(title = "é®å·é¢ç®", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody SvyLibTopic svyLibTopic) { public AjaxResult edit(@RequestBody SvyLibTopic svyLibTopic) { return toAjax(svyLibTopicService.updateSvyLibTopic(svyLibTopic)); } /** * å é¤é®å·é¢ç® */ @ApiOperation("å é¤é®å·é¢ç®") @PreAuthorize("@ss.hasPermi('smartor:svytopic:remove')") @Log(title = "é®å·é¢ç®", businessType = BusinessType.DELETE) @DeleteMapping("/{topicids}") public AjaxResult remove(@PathVariable Long[] topicids) { @DeleteMapping("/{topicids}") public AjaxResult remove(@PathVariable Long[] topicids) { return toAjax(svyLibTopicService.deleteSvyLibTopicByTopicids(topicids)); } /** * æ¹éå¯¼å ¥é®é®é¢ç® */ @ApiOperation("æ¹éå¯¼å ¥é®é®é¢ç®") @PostMapping("/importLitTopic") public AjaxResult importLitTopic(MultipartFile multipartFile) { LoginUser loginUser = getLoginUser(); SysUser user = loginUser.getUser(); return success(svyLibTopicService.importLitTopic(user, multipartFile)); } } smartor/pom.xml
@@ -28,7 +28,11 @@ <artifactId>swagger-annotations</artifactId> <version>1.6.2</version> </dependency> <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-spring-boot-starter</artifactId> <version>4.4.0</version> </dependency> </dependencies> </project> smartor/src/main/java/com/smartor/domain/SvyLibTopic.java
@@ -1,7 +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; @@ -9,197 +13,108 @@ /** * é®å·é¢ç®å¯¹è±¡ svy_lib_topic * * * @author ruoyi * @date 2023-03-03 */ public class SvyLibTopic extends BaseEntity { @Data @ApiModel(value = "SvyLibTopic", description = "é®å·é¢ç®å¯¹è±¡") public class SvyLibTopic extends BaseEntity { private static final long serialVersionUID = 1L; /** èªå¢ID */ /** * èªå¢ID */ @ApiModelProperty(name = "èªå¢ID") private Long topicid; /** èçæ¬ID */ /** * èçæ¬ID */ @ApiModelProperty(name = "èçæ¬ID") private Long oldid; /** é®å·ID */ /** * é®å·ID */ @Excel(name = " é®å·ID ") @ApiModelProperty(name = "é®å·ID") private Long svyid; /** é¢ç®ç±»å;æä¸¾ 1.åé 2å¤é 3填空 */ /** * é¢ç®ç±»å;æä¸¾ 1.åé 2å¤é 3填空 */ @Excel(name = " é¢ç®ç±»å;æä¸¾ 1.åé 2å¤é 3填空 ") @ApiModelProperty(name = "é¢ç®ç±»å;æä¸¾ 1.åé 2å¤é 3填空") private Long topictype; /** é¢ç®Code */ /** * é¢ç®Code */ @ApiModelProperty(name = "é¢ç®Code") private String topiccode; /** é¢ç® */ /** * é¢ç® */ @Excel(name = " é¢ç® ") @ApiModelProperty(name = "é¢ç®") private String topic; /** æåº */ /** * æåº */ @Excel(name = " æåº ") @ApiModelProperty(name = "æåº") private Long sort; /** æ¯å¦å¿ å¡« */ /** * æ¯å¦å¿ å¡« */ @ApiModelProperty(name = "æ¯å¦å¿ å¡«") private Long ismandatory; /** æ¯å¦éè */ /** * æ¯å¦éè */ @Excel(name = " æ¯å¦éè ") @ApiModelProperty(name = "æ¯å¦éè") private Long ishide; /** å 餿 è®° */ /** * å 餿 è®° */ @ApiModelProperty(name = "å 餿 è®°") private String delFlag; /** æºæID */ /** * æºæID */ @Excel(name = " æºæID ") @ApiModelProperty(name = "æºæID") private String orgid; /** ä¸ä¼ æ è®° */ /** * ä¸ä¼ æ è®° */ @ApiModelProperty(name = "ä¸ä¼ æ è®°") private Long isupload; /** ä¸ä¼ æ¶é´ */ /** * ä¸ä¼ æ è®° */ @ApiModelProperty(name = "æ ç¾") private String tag; /** * ä¸ä¼ æ¶é´ */ @ApiModelProperty(name = "ä¸ä¼ æ¶é´") private Date uploadTime; public void setTopicid(Long topicid) { this.topicid = topicid; } public Long getTopicid() { return topicid; } public void setOldid(Long oldid) { this.oldid = oldid; } public Long getOldid() { return oldid; } public void setSvyid(Long svyid) { this.svyid = svyid; } public Long getSvyid() { return svyid; } public void setTopictype(Long topictype) { this.topictype = topictype; } public Long getTopictype() { return topictype; } public void setTopiccode(String topiccode) { this.topiccode = topiccode; } public String getTopiccode() { return topiccode; } public void setTopic(String topic) { this.topic = topic; } public String getTopic() { return topic; } public void setSort(Long sort) { this.sort = sort; } public Long getSort() { return sort; } public void setIsmandatory(Long ismandatory) { this.ismandatory = ismandatory; } public Long getIsmandatory() { return ismandatory; } public void setIshide(Long ishide) { this.ishide = ishide; } public Long getIshide() { return ishide; } public void setDelFlag(String delFlag) { this.delFlag = delFlag; } public String getDelFlag() { return delFlag; } public void setOrgid(String orgid) { this.orgid = orgid; } public String getOrgid() { return orgid; } 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; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("topicid", getTopicid()) .append("oldid", getOldid()) .append("svyid", getSvyid()) .append("topictype", getTopictype()) .append("topiccode", getTopiccode()) .append("topic", getTopic()) .append("sort", getSort()) .append("ismandatory", getIsmandatory()) .append("ishide", getIshide()) .append("delFlag", getDelFlag()) .append("orgid", getOrgid()) .append("createBy", getCreateBy()) .append("createTime", getCreateTime()) .append("updateBy", getUpdateBy()) .append("updateTime", getUpdateTime()) .append("isupload", getIsupload()) .append("uploadTime", getUploadTime()) .toString(); return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("topicid", getTopicid()).append("oldid", getOldid()).append("svyid", getSvyid()).append("topictype", getTopictype()).append("topiccode", getTopiccode()).append("topic", getTopic()).append("sort", getSort()).append("ismandatory", getIsmandatory()).append("ishide", getIshide()).append("delFlag", getDelFlag()).append("orgid", getOrgid()).append("createBy", getCreateBy()).append("createTime", getCreateTime()).append("updateBy", getUpdateBy()).append("updateTime", getUpdateTime()).append("isupload", getIsupload()).append("uploadTime", getUploadTime()).toString(); } } smartor/src/main/java/com/smartor/domain/SvyLibTopicRes.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,95 @@ package com.smartor.domain; import com.ruoyi.common.core.domain.BaseEntity; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * é®å·é¢ç®å¯¹è±¡ svy_lib_topic * * @author ruoyi * @date 2023-03-03 */ @Data @ApiModel(value = "SvyLibTopicRes", description = "é®å·é¢ç®è¿å") public class SvyLibTopicRes extends BaseEntity { private static final long serialVersionUID = 1L; /** * èªå¢ID */ @ApiModelProperty(name = "èªå¢ID") private Long topicid; /** * é®å·ID */ @ApiModelProperty(name = "é®å·ID") private Long svyid; /** * é¢ç® */ @ApiModelProperty(name = "é¢ç®") private String topic; /** * ç±»å« */ @ApiModelProperty(name = "ç±»å«") private String tag; /** * é¢ç®ç±»å;æä¸¾ 1.åé 2å¤é 3填空 */ @ApiModelProperty(name = "é¢ç®ç±»å;æä¸¾ 1.åé 2å¤é 3填空") private String topictype; /** * çæ¡ */ @ApiModelProperty(name = "çæ¡") private String answer; /** * é项A */ @ApiModelProperty(name = "é项A") private String optionA; /** * é项B */ @ApiModelProperty(name = "é项B") private String optionB; /** * é项C */ @ApiModelProperty(name = "é项C") private String optionC; /** * é项D */ @ApiModelProperty(name = "é项D") private String optionD; /** * åæ° */ @ApiModelProperty(name = "åæ°") private String score; /** * 夿³¨ */ @ApiModelProperty(name = "夿³¨") private String remark; } smartor/src/main/java/com/smartor/domain/SvyLibTopicoption.java
@@ -1,7 +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; @@ -9,399 +13,177 @@ /** * é®å·é®é¢é项对象 svy_lib_topicoption * * * @author ruoyi * @date 2023-03-02 */ public class SvyLibTopicoption extends BaseEntity { private static final long serialVersionUID = 1L; @Data @ApiModel(value = "SvyLibTopicoption", description = "é®å·é®é¢é项对象") public class SvyLibTopicoption extends BaseEntity { /** èªå¢ID */ /** * èªå¢ID */ @ApiModelProperty(name = "èªå¢ID") private Long optionid; /** é¢ç®ID */ /** * é¢ç®ID */ @ApiModelProperty(name = "é¢ç®ID") @Excel(name = " é¢ç®ID ") private Long topicid; /** é®å·ID */ @Excel(name = " é®å·ID ") /** * é®å·ID */ @ApiModelProperty(name = "é®å·ID") private Long svyid; /** é¢ç®ç±»å */ @Excel(name = " é¢ç®ç±»å ") /** * é¢ç®ç±»å */ @ApiModelProperty(name = "é¢ç®ç±»å") private Long topictype; /** é项Code */ @Excel(name = " é项Code ") /** * é项Code */ @ApiModelProperty(name = "é项Code") private String optioncode; /** é项å 容 */ @Excel(name = " é项å 容 ") /** * é项å 容 */ @ApiModelProperty(name = "é项å 容") private String optioncontent; /** æ¯å¦åå¨æç» */ @Excel(name = " æ¯å¦åå¨æç» ") /** * æ¯å¦åå¨æç» */ @ApiModelProperty(name = "æ¯å¦å卿ç»") private Long isexistdetail; /** æç»æ¯å¦å¿ å¡« */ @Excel(name = " æç»æ¯å¦å¿ å¡« ") /** * æç»æ¯å¦å¿ å¡« */ @ApiModelProperty(name = "æç»æ¯å¦å¿ å¡«") private Long detailismandatory; /** æ¯å¦å¼å¸¸é¡¹ç® */ @Excel(name = " æ¯å¦å¼å¸¸é¡¹ç® ") /** * æ¯å¦å¼å¸¸é¡¹ç® */ @ApiModelProperty(name = "æ¯å¦å¼å¸¸é¡¹ç®") private Long isexceptionitem; /** æ¯å¦è·è¿ */ @Excel(name = " æ¯å¦è·è¿ ") /** * æ¯å¦è·è¿ */ @ApiModelProperty(name = "æ¯å¦è·è¿") private Long istrack; /** åæ° */ @Excel(name = " åæ° ") /** * åæ° */ @ApiModelProperty(name = "åæ°") private Long score; /** æç¤º */ @Excel(name = " æç¤º ") /** * æç¤º */ @ApiModelProperty(name = "æç¤º") private String prompt; /** 跳转 */ @Excel(name = " 跳转 ") /** * 跳转 */ @ApiModelProperty(name = "跳转") private String jump; /** ç¶é项ID */ @Excel(name = " ç¶é项ID ") /** * ç¶é项ID */ @ApiModelProperty(name = "ç¶é项ID") private Long parentoptionid; /** æ¯å¦äºæ¥ */ @Excel(name = " æ¯å¦äºæ¥ ") /** * æ¯å¦äºæ¥ */ @ApiModelProperty(name = "æ¯å¦äºæ¥") private Long ismutex; /** éªè¯è§å */ @Excel(name = " éªè¯è§å ") /** * éªè¯è§å */ @ApiModelProperty(name = "éªè¯è§å") private String verifyrule; /** æåº */ @Excel(name = " æåº ") /** * æåº */ @ApiModelProperty(name = "æåº") private Long sort; /** éªè¯ç±»å;0.ä¸éªè¯ 1.æ´æ° 2.å°æ° 3.ææºå· 4.èº«ä»½è¯ 5.æ¥æ */ @Excel(name = " éªè¯ç±»å;0.ä¸éªè¯ 1.æ´æ° 2.å°æ° 3.ææºå· 4.èº«ä»½è¯ 5.æ¥æ ") /** * éªè¯ç±»å;0.ä¸éªè¯ 1.æ´æ° 2.å°æ° 3.ææºå· 4.èº«ä»½è¯ 5.æ¥æ */ @ApiModelProperty(name = "éªè¯ç±»å;0.ä¸éªè¯ 1.æ´æ° 2.å°æ° 3.ææºå· 4.èº«ä»½è¯ 5.æ¥æ ") private Long verificationtype; /** æ¯å¦éå¶èå´ */ @Excel(name = " æ¯å¦éå¶èå´ ") /** * æ¯å¦éå¶èå´ */ @ApiModelProperty(name = "æ¯å¦éå¶èå´") private Long isrange; /** æå°èå´ */ @Excel(name = " æå°èå´ ") /** * æå°èå´ */ @ApiModelProperty(name = "æå°èå´") private String minrange; /** æå¤§èå´ */ @Excel(name = " æå¤§èå´ ") /** * æå¤§èå´ */ @ApiModelProperty(name = "æå¤§èå´") private String maxrange; /** èå´é¿åº¦;ç¨äºå°æ°ä¿ç使° */ @Excel(name = " èå´é¿åº¦;ç¨äºå°æ°ä¿ç使° ") /** * èå´é¿åº¦;ç¨äºå°æ°ä¿ç使° */ @ApiModelProperty(name = "èå´é¿åº¦;ç¨äºå°æ°ä¿ç使°") private Long rangelength; /** æºæID */ @Excel(name = " æºæID ") /** * æºæID */ @ApiModelProperty(name = "æºæID") private String orgid; /** ä¸ä¸çæ¬ID */ @Excel(name = " ä¸ä¸çæ¬ID ") /** * ä¸ä¸çæ¬ID */ @ApiModelProperty(name = "ä¸ä¸çæ¬ID") private Long oldid; /** å 餿 è®° */ /** * å 餿 è®° */ @ApiModelProperty(name = "å 餿 è®°") private String delFlag; /** ä¸ä¼ æ è®° */ @Excel(name = " ä¸ä¼ æ è®° ") /** * ä¸ä¼ æ è®° */ @ApiModelProperty(name = "ä¸ä¼ æ è®°") private Long isupload; /** ä¸ä¼ æ¶é´ */ /** * ä¸ä¼ æ¶é´ */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = " ä¸ä¼ æ¶é´ ", width = 30, dateFormat = "yyyy-MM-dd") @ApiModelProperty(name = "ä¸ä¼ æ¶é´") private Date uploadTime; public void setOptionid(Long optionid) { this.optionid = optionid; } public Long getOptionid() { return optionid; } public void setTopicid(Long topicid) { this.topicid = topicid; } public Long getTopicid() { return topicid; } public void setSvyid(Long svyid) { this.svyid = svyid; } public Long getSvyid() { return svyid; } public void setTopictype(Long topictype) { this.topictype = topictype; } public Long getTopictype() { return topictype; } public void setOptioncode(String optioncode) { this.optioncode = optioncode; } public String getOptioncode() { return optioncode; } public void setOptioncontent(String optioncontent) { this.optioncontent = optioncontent; } public String getOptioncontent() { return optioncontent; } public void setIsexistdetail(Long isexistdetail) { this.isexistdetail = isexistdetail; } public Long getIsexistdetail() { return isexistdetail; } public void setDetailismandatory(Long detailismandatory) { this.detailismandatory = detailismandatory; } public Long getDetailismandatory() { return detailismandatory; } public void setIsexceptionitem(Long isexceptionitem) { this.isexceptionitem = isexceptionitem; } public Long getIsexceptionitem() { return isexceptionitem; } public void setIstrack(Long istrack) { this.istrack = istrack; } public Long getIstrack() { return istrack; } public void setScore(Long score) { this.score = score; } public Long getScore() { return score; } public void setPrompt(String prompt) { this.prompt = prompt; } public String getPrompt() { return prompt; } public void setJump(String jump) { this.jump = jump; } public String getJump() { return jump; } public void setParentoptionid(Long parentoptionid) { this.parentoptionid = parentoptionid; } public Long getParentoptionid() { return parentoptionid; } public void setIsmutex(Long ismutex) { this.ismutex = ismutex; } public Long getIsmutex() { return ismutex; } public void setVerifyrule(String verifyrule) { this.verifyrule = verifyrule; } public String getVerifyrule() { return verifyrule; } public void setSort(Long sort) { this.sort = sort; } public Long getSort() { return sort; } public void setVerificationtype(Long verificationtype) { this.verificationtype = verificationtype; } public Long getVerificationtype() { return verificationtype; } public void setIsrange(Long isrange) { this.isrange = isrange; } public Long getIsrange() { return isrange; } public void setMinrange(String minrange) { this.minrange = minrange; } public String getMinrange() { return minrange; } public void setMaxrange(String maxrange) { this.maxrange = maxrange; } public String getMaxrange() { return maxrange; } public void setRangelength(Long rangelength) { this.rangelength = rangelength; } public Long getRangelength() { return rangelength; } public void setOrgid(String orgid) { this.orgid = orgid; } public String getOrgid() { return orgid; } public void setOldid(Long oldid) { this.oldid = oldid; } public Long getOldid() { return oldid; } 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; } @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("optionid", getOptionid()) .append("topicid", getTopicid()) .append("svyid", getSvyid()) .append("topictype", getTopictype()) .append("optioncode", getOptioncode()) .append("optioncontent", getOptioncontent()) .append("isexistdetail", getIsexistdetail()) .append("detailismandatory", getDetailismandatory()) .append("isexceptionitem", getIsexceptionitem()) .append("istrack", getIstrack()) .append("score", getScore()) .append("prompt", getPrompt()) .append("jump", getJump()) .append("parentoptionid", getParentoptionid()) .append("ismutex", getIsmutex()) .append("verifyrule", getVerifyrule()) .append("sort", getSort()) .append("verificationtype", getVerificationtype()) .append("isrange", getIsrange()) .append("minrange", getMinrange()) .append("maxrange", getMaxrange()) .append("rangelength", getRangelength()) .append("orgid", getOrgid()) .append("oldid", getOldid()) .append("delFlag", getDelFlag()) .append("createBy", getCreateBy()) .append("createTime", getCreateTime()) .append("updateBy", getUpdateBy()) .append("updateTime", getUpdateTime()) .append("isupload", getIsupload()) .append("uploadTime", getUploadTime()) .toString(); } } smartor/src/main/java/com/smartor/mapper/SvyLibTopicMapper.java
@@ -1,19 +1,21 @@ package com.smartor.mapper; import java.util.List; import com.smartor.domain.SvyLibTopic; import org.apache.ibatis.annotations.Mapper; /** * é®å·é¢ç®Mapperæ¥å£ * * * @author ruoyi * @date 2023-03-03 */ public interface SvyLibTopicMapper { @Mapper public interface SvyLibTopicMapper { /** * æ¥è¯¢é®å·é¢ç® * * * @param topicid é®å·é¢ç®ä¸»é® * @return é®å·é¢ç® */ @@ -21,7 +23,7 @@ /** * æ¥è¯¢é®å·é¢ç®å表 * * * @param svyLibTopic é®å·é¢ç® * @return é®å·é¢ç®éå */ @@ -29,7 +31,7 @@ /** * æ°å¢é®å·é¢ç® * * * @param svyLibTopic é®å·é¢ç® * @return ç»æ */ @@ -37,7 +39,7 @@ /** * ä¿®æ¹é®å·é¢ç® * * * @param svyLibTopic é®å·é¢ç® * @return ç»æ */ @@ -45,7 +47,7 @@ /** * å é¤é®å·é¢ç® * * * @param topicid é®å·é¢ç®ä¸»é® * @return ç»æ */ @@ -53,7 +55,7 @@ /** * æ¹éå é¤é®å·é¢ç® * * * @param topicids éè¦å é¤çæ°æ®ä¸»é®éå * @return ç»æ */ smartor/src/main/java/com/smartor/mapper/SvyLibTopicoptionMapper.java
@@ -1,19 +1,21 @@ package com.smartor.mapper; import java.util.List; import com.smartor.domain.SvyLibTopicoption; import org.apache.ibatis.annotations.Mapper; /** * é®å·é®é¢é项Mapperæ¥å£ * * * @author ruoyi * @date 2023-03-02 */ public interface SvyLibTopicoptionMapper { @Mapper public interface SvyLibTopicoptionMapper { /** * æ¥è¯¢é®å·é®é¢é项 * * * @param optionid é®å·é®é¢éé¡¹ä¸»é® * @return é®å·é®é¢é项 */ @@ -21,7 +23,7 @@ /** * æ¥è¯¢é®å·é®é¢é项å表 * * * @param svyLibTopicoption é®å·é®é¢é项 * @return é®å·é®é¢é项éå */ @@ -29,7 +31,7 @@ /** * æ°å¢é®å·é®é¢é项 * * * @param svyLibTopicoption é®å·é®é¢é项 * @return ç»æ */ @@ -37,7 +39,7 @@ /** * ä¿®æ¹é®å·é®é¢é项 * * * @param svyLibTopicoption é®å·é®é¢é项 * @return ç»æ */ @@ -45,7 +47,7 @@ /** * å é¤é®å·é®é¢é项 * * * @param optionid é®å·é®é¢éé¡¹ä¸»é® * @return ç»æ */ @@ -53,7 +55,7 @@ /** * æ¹éå é¤é®å·é®é¢é项 * * * @param optionids éè¦å é¤çæ°æ®ä¸»é®éå * @return ç»æ */ smartor/src/main/java/com/smartor/service/IPatArchiveService.java
@@ -68,7 +68,7 @@ /** * æ£è ä¿¡æ¯æ¹éæå ¥ * * @param title * @param tags * @param file */ public PatUpInfoVO importFilehandle(SysUser user,String tags, MultipartFile file); smartor/src/main/java/com/smartor/service/ISvyLibTopicService.java
@@ -1,19 +1,23 @@ package com.smartor.service; import java.util.List; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.SysUser; import com.smartor.domain.SvyLibTopic; import com.smartor.domain.SvyLibTopicRes; import org.springframework.web.multipart.MultipartFile; /** * é®å·é¢ç®Serviceæ¥å£ * * * @author ruoyi * @date 2023-03-03 */ public interface ISvyLibTopicService { public interface ISvyLibTopicService { /** * æ¥è¯¢é®å·é¢ç® * * * @param topicid é®å·é¢ç®ä¸»é® * @return é®å·é¢ç® */ @@ -21,7 +25,7 @@ /** * æ¥è¯¢é®å·é¢ç®å表 * * * @param svyLibTopic é®å·é¢ç® * @return é®å·é¢ç®éå */ @@ -29,7 +33,7 @@ /** * æ°å¢é®å·é¢ç® * * * @param svyLibTopic é®å·é¢ç® * @return ç»æ */ @@ -37,7 +41,7 @@ /** * ä¿®æ¹é®å·é¢ç® * * * @param svyLibTopic é®å·é¢ç® * @return ç»æ */ @@ -45,7 +49,7 @@ /** * æ¹éå é¤é®å·é¢ç® * * * @param topicids éè¦å é¤çé®å·é¢ç®ä¸»é®éå * @return ç»æ */ @@ -53,9 +57,17 @@ /** * å é¤é®å·é¢ç®ä¿¡æ¯ * * * @param topicid é®å·é¢ç®ä¸»é® * @return ç»æ */ public int deleteSvyLibTopicByTopicid(Long topicid); /** * æ¹éå¯¼å ¥é®é®é¢ç® * * @param multipartFile * @return */ public List<SvyLibTopicRes> importLitTopic(SysUser user,MultipartFile multipartFile); } smartor/src/main/java/com/smartor/service/impl/SvyLibTopicServiceImpl.java
@@ -1,96 +1,256 @@ package com.smartor.service.impl; import java.util.List; import java.io.IOException; import java.util.*; 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.mapper.SvyLibTopicoptionMapper; import org.apache.catalina.User; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; 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; /** * é®å·é¢ç®Serviceä¸å¡å±å¤ç * * * @author ruoyi * @date 2023-03-03 */ @Service public class SvyLibTopicServiceImpl implements ISvyLibTopicService { public class SvyLibTopicServiceImpl implements ISvyLibTopicService { @Autowired private SvyLibTopicMapper svyLibTopicMapper; @Autowired private SvyLibTopicoptionMapper svyLibTopicoptionMapper; /** * æ¥è¯¢é®å·é¢ç® * * * @param topicid é®å·é¢ç®ä¸»é® * @return é®å·é¢ç® */ @Override public SvyLibTopic selectSvyLibTopicByTopicid(Long topicid) { public SvyLibTopic selectSvyLibTopicByTopicid(Long topicid) { return svyLibTopicMapper.selectSvyLibTopicByTopicid(topicid); } /** * æ¥è¯¢é®å·é¢ç®å表 * * * @param svyLibTopic é®å·é¢ç® * @return é®å·é¢ç® */ @Override public List<SvyLibTopic> selectSvyLibTopicList(SvyLibTopic svyLibTopic) { public List<SvyLibTopic> selectSvyLibTopicList(SvyLibTopic svyLibTopic) { return svyLibTopicMapper.selectSvyLibTopicList(svyLibTopic); } /** * æ°å¢é®å·é¢ç® * * * @param svyLibTopic é®å·é¢ç® * @return ç»æ */ @Override public int insertSvyLibTopic(SvyLibTopic svyLibTopic) { public int insertSvyLibTopic(SvyLibTopic svyLibTopic) { svyLibTopic.setCreateTime(DateUtils.getNowDate()); return svyLibTopicMapper.insertSvyLibTopic(svyLibTopic); } /** * ä¿®æ¹é®å·é¢ç® * * * @param svyLibTopic é®å·é¢ç® * @return ç»æ */ @Override public int updateSvyLibTopic(SvyLibTopic svyLibTopic) { public int updateSvyLibTopic(SvyLibTopic svyLibTopic) { svyLibTopic.setUpdateTime(DateUtils.getNowDate()); return svyLibTopicMapper.updateSvyLibTopic(svyLibTopic); } /** * æ¹éå é¤é®å·é¢ç® * * * @param topicids éè¦å é¤çé®å·é¢ç®ä¸»é® * @return ç»æ */ @Override public int deleteSvyLibTopicByTopicids(Long[] topicids) { public int deleteSvyLibTopicByTopicids(Long[] topicids) { return svyLibTopicMapper.deleteSvyLibTopicByTopicids(topicids); } /** * å é¤é®å·é¢ç®ä¿¡æ¯ * * * @param topicid é®å·é¢ç®ä¸»é® * @return ç»æ */ @Override public int deleteSvyLibTopicByTopicid(Long topicid) { public int deleteSvyLibTopicByTopicid(Long topicid) { return svyLibTopicMapper.deleteSvyLibTopicByTopicid(topicid); } /** * æ¹éå¯¼å ¥é®é®é¢ç® * * @param multipartFile * @return */ @Override @Transactional public List<SvyLibTopicRes> importLitTopic(SysUser user, MultipartFile multipartFile) { List<SvyLibTopicRes> svyLibTopicErrors = new ArrayList<>(); try { Workbook workbook = new XSSFWorkbook(multipartFile.getInputStream()); Sheet sheet = workbook.getSheetAt(0); //é®å·é¢ç®å¯¹è±¡ SvyLibTopic svyLibTopic = new SvyLibTopic(); for (int i = sheet.getFirstRowNum() + 1; i < sheet.getLastRowNum(); i++) { SvyLibTopicRes svyLibTopicRes = new SvyLibTopicRes(); Row row = sheet.getRow(i); //妿è¡ä¸ºç©ºï¼è¿è¡ä¸ä¸æ¬¡å¾ªç¯ if (ObjectUtils.isEmpty(row.getCell(0)) && ObjectUtils.isEmpty(row.getCell(1)) && ObjectUtils.isEmpty(row.getCell(2))) { continue; } //å¤ææ°æ®æ¯å¦æé®é¢ svyLibTopicRes.setTopic(row.getCell(0).toString()); if (ObjectUtils.isEmpty(row.getCell(0)) || StringUtils.isEmpty(row.getCell(0).toString())) { svyLibTopicRes.setRemark("é¢ç®ä¸ºç©º,"); } else { //夿ä¸ä¸è¯¥é¢æ¯å¦å·²ç»å¨è¡¨éåºç° SvyLibTopic svyLibTopic1 = new SvyLibTopic(); svyLibTopic1.setTopic(row.getCell(0).toString()); List<SvyLibTopic> svyLibTopics = svyLibTopicMapper.selectSvyLibTopicList(svyLibTopic1); if (svyLibTopics.size() > 0) { //å·²ç»åå¨äºï¼å°±ä¸åäº continue; } } svyLibTopicRes.setTag(row.getCell(1).toString()); if (ObjectUtils.isEmpty(row.getCell(1)) || StringUtils.isEmpty(row.getCell(1).toString())) { svyLibTopicRes.setRemark(StringUtils.isNotEmpty(svyLibTopicRes.getRemark()) ? svyLibTopicRes.getRemark() : "" + "ç±»å«ä¸ºç©º,"); } svyLibTopicRes.setTopictype(row.getCell(2).toString()); if (ObjectUtils.isEmpty(row.getCell(2)) || StringUtils.isEmpty(row.getCell(2).toString())) { svyLibTopicRes.setRemark(StringUtils.isNotEmpty(svyLibTopicRes.getRemark()) ? svyLibTopicRes.getRemark() : "" + "é¢ç®ç±»å为空,"); } if (ObjectUtils.isNotEmpty(row.getCell(3))) { svyLibTopicRes.setAnswer(row.getCell(3).toString()); } if (ObjectUtils.isNotEmpty(row.getCell(4))) { svyLibTopicRes.setOptionA(row.getCell(4).toString()); } if (ObjectUtils.isNotEmpty(row.getCell(5))) { svyLibTopicRes.setOptionB(row.getCell(5).toString()); } if (ObjectUtils.isNotEmpty(row.getCell(6))) { svyLibTopicRes.setOptionC(row.getCell(6).toString()); } if (ObjectUtils.isNotEmpty(row.getCell(7))) { svyLibTopicRes.setOptionD(row.getCell(7).toString()); } if (ObjectUtils.isNotEmpty(row.getCell(8))) { svyLibTopicRes.setScore(row.getCell(8).toString()); } if (StringUtils.isNotEmpty(svyLibTopicRes.getRemark())) { //说æè¯¥è¡æ°æ®æé®é¢ svyLibTopicErrors.add(svyLibTopicRes); continue; } //æ°æ®æ²¡æé®é¢ï¼å¼å§æè¡¨ svyLibTopic.setTopic(row.getCell(0).toString()); if (row.getCell(2).toString().equals("åé")) { svyLibTopic.setTopictype(1L); } else if (row.getCell(2).toString().equals("å¤é")) { svyLibTopic.setTopictype(2L); } else { svyLibTopic.setTopictype(3L); } svyLibTopic.setTopiccode(UUID.randomUUID().toString().replace("-", "")); //é¢ç®ç±»å« svyLibTopic.setTag(row.getCell(1).toString()); svyLibTopic.setCreateBy(user.getUserName()); svyLibTopic.setOrgid(user.getDeptId().toString()); svyLibTopic.setUpdateBy(user.getUserName()); svyLibTopic.setUpdateTime(new Date()); svyLibTopic.setCreateTime(new Date()); svyLibTopic.setDelFlag("0"); //æ°å¢é¢ç®è¡¨ svyLibTopicMapper.insertSvyLibTopic(svyLibTopic); //æ°å¢é¢ç®é项表 SvyLibTopicoption svyLibTopicoption = new SvyLibTopicoption(); svyLibTopicoption.setTopicid(svyLibTopic.getTopicid()); svyLibTopicoption.setTopictype(svyLibTopic.getTopictype()); svyLibTopicoption.setOptioncode(UUID.randomUUID().toString().replace("-", "")); svyLibTopicoption.setCreateBy(user.getUserName()); svyLibTopicoption.setCreateTime(new Date()); svyLibTopicoption.setUpdateBy(user.getUserName()); svyLibTopicoption.setUpdateTime(new Date()); svyLibTopicoption.setDelFlag("0"); if (svyLibTopicoption.getTopictype() == 3) { //è§£çé¢ï¼ä¸éè¦å设置é项 svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption); } else { if (ObjectUtils.isNotEmpty(row.getCell(4)) || 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())) { 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())) { 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())) { svyLibTopicoption.setOptioncode("D"); svyLibTopicoption.setOptioncontent(row.getCell(7).toString()); svyLibTopicoption.setOptionid(null); svyLibTopicoptionMapper.insertSvyLibTopicoption(svyLibTopicoption); } } } if (CollectionUtils.isNotEmpty(svyLibTopicErrors)) { return svyLibTopicErrors; } } catch (Exception e) { e.printStackTrace(); } return null; } } smartor/src/main/resources/mapper/smartor/SvyLibTopicMapper.xml
@@ -4,7 +4,7 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.smartor.mapper.SvyLibTopicMapper"> <resultMap type="SvyLibTopic" id="SvyLibTopicResult"> <resultMap type="com.smartor.domain.SvyLibTopic" id="SvyLibTopicResult"> <result property="topicid" column="topicid" /> <result property="oldid" column="oldid" /> <result property="svyid" column="svyid" /> @@ -22,10 +22,11 @@ <result property="updateTime" column="update_time" /> <result property="isupload" column="isupload" /> <result property="uploadTime" column="upload_time" /> <result property="tag" column="tag" /> </resultMap> <sql id="selectSvyLibTopicVo"> select topicid, oldid, svyid, topictype, topiccode, topic, sort, ismandatory, ishide, del_flag, orgid, create_by, create_time, update_by, update_time, isupload, upload_time from svy_lib_topic select topicid, oldid, svyid, topictype, topiccode, topic, sort, ismandatory, ishide, del_flag, orgid, create_by, create_time, update_by, update_time, isupload, upload_time,tag from svy_lib_topic </sql> <select id="selectSvyLibTopicList" parameterType="SvyLibTopic" resultMap="SvyLibTopicResult">