From baae27c3603cbea9591f2503b789c965818b2d4b Mon Sep 17 00:00:00 2001 From: hansha Date: Wed, 5 Jun 2024 16:09:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=87=BA=E7=94=9F=E7=99=BB?= =?UTF-8?q?=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/da/RuoYiApplication.java | 2 + .../controller/DaBirthDjController.java | 104 +++ .../controller/DangAnCollectController.java | 160 +++-- .../java/com/da/dangan/domain/DaBirthDj.java | 480 ++++++++++++++ .../java/com/da/dangan/domain/DaCzrkdj.java | 118 +++- .../da/dangan/domain/DaPicturesRecard.java | 12 + .../com/da/dangan/domain/vo/PicParams.java | 35 + .../com/da/dangan/mapper/DaBirthDjMapper.java | 62 ++ .../da/dangan/service/IDaBirthDjService.java | 62 ++ .../service/impl/DaBirthDjServiceImpl.java | 97 +++ .../da/dangan/util/CallThirdInterface.java | 4 +- .../mapper/dangan/DaBirthDjMapper.xml | 226 +++++++ .../mapper/dangan/DaCzrkdjMapper.xml | 52 +- dangan-ui/src/api/dangan/birthDJ.js | 44 ++ dangan-ui/src/views/dangan/birthDJ/index.vue | 626 ++++++++++++++++++ 15 files changed, 2021 insertions(+), 63 deletions(-) create mode 100644 dangan-dangan/src/main/java/com/da/dangan/controller/DaBirthDjController.java create mode 100644 dangan-dangan/src/main/java/com/da/dangan/domain/DaBirthDj.java create mode 100644 dangan-dangan/src/main/java/com/da/dangan/domain/vo/PicParams.java create mode 100644 dangan-dangan/src/main/java/com/da/dangan/mapper/DaBirthDjMapper.java create mode 100644 dangan-dangan/src/main/java/com/da/dangan/service/IDaBirthDjService.java create mode 100644 dangan-dangan/src/main/java/com/da/dangan/service/impl/DaBirthDjServiceImpl.java create mode 100644 dangan-dangan/src/main/resources/mapper/dangan/DaBirthDjMapper.xml create mode 100644 dangan-ui/src/api/dangan/birthDJ.js create mode 100644 dangan-ui/src/views/dangan/birthDJ/index.vue diff --git a/dangan-admin/src/main/java/com/da/RuoYiApplication.java b/dangan-admin/src/main/java/com/da/RuoYiApplication.java index 13ca70e..ae2b06b 100644 --- a/dangan-admin/src/main/java/com/da/RuoYiApplication.java +++ b/dangan-admin/src/main/java/com/da/RuoYiApplication.java @@ -3,12 +3,14 @@ package com.da; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; +import org.springframework.scheduling.annotation.EnableAsync; /** * 启动程序 * * @author ruoyi */ +@EnableAsync @SpringBootApplication(exclude = { DataSourceAutoConfiguration.class }) public class RuoYiApplication { diff --git a/dangan-dangan/src/main/java/com/da/dangan/controller/DaBirthDjController.java b/dangan-dangan/src/main/java/com/da/dangan/controller/DaBirthDjController.java new file mode 100644 index 0000000..75085be --- /dev/null +++ b/dangan-dangan/src/main/java/com/da/dangan/controller/DaBirthDjController.java @@ -0,0 +1,104 @@ +package com.da.dangan.controller; + +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; +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.da.common.annotation.Log; +import com.da.common.core.controller.BaseController; +import com.da.common.core.domain.AjaxResult; +import com.da.common.enums.BusinessType; +import com.da.dangan.domain.DaBirthDj; +import com.da.dangan.service.IDaBirthDjService; +import com.da.common.utils.poi.ExcelUtil; +import com.da.common.core.page.TableDataInfo; + +/** + * 出生登记Controller + * + * @author hs + * @date 2024-06-05 + */ +@RestController +@RequestMapping("/dangan/birthDJ") +public class DaBirthDjController extends BaseController +{ + @Autowired + private IDaBirthDjService daBirthDjService; + + /** + * 查询出生登记列表 + */ + @PreAuthorize("@ss.hasPermi('dangan:birthDJ:list')") + @GetMapping("/list") + public TableDataInfo list(DaBirthDj daBirthDj) + { + startPage(); + List list = daBirthDjService.selectDaBirthDjList(daBirthDj); + return getDataTable(list); + } + + /** + * 导出出生登记列表 + */ + @PreAuthorize("@ss.hasPermi('dangan:birthDJ:export')") + @Log(title = "出生登记", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, DaBirthDj daBirthDj) + { + List list = daBirthDjService.selectDaBirthDjList(daBirthDj); + ExcelUtil util = new ExcelUtil(DaBirthDj.class); + util.exportExcel(response, list, "出生登记数据"); + } + + /** + * 获取出生登记详细信息 + */ + @PreAuthorize("@ss.hasPermi('dangan:birthDJ:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(daBirthDjService.selectDaBirthDjById(id)); + } + + /** + * 新增出生登记 + */ + @PreAuthorize("@ss.hasPermi('dangan:birthDJ:add')") + @Log(title = "出生登记", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody DaBirthDj daBirthDj) + { + return toAjax(daBirthDjService.insertDaBirthDj(daBirthDj)); + } + + /** + * 修改出生登记 + */ + @PreAuthorize("@ss.hasPermi('dangan:birthDJ:edit')") + @Log(title = "出生登记", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody DaBirthDj daBirthDj) + { + return toAjax(daBirthDjService.updateDaBirthDj(daBirthDj)); + } + + /** + * 删除出生登记 + */ + @PreAuthorize("@ss.hasPermi('dangan:birthDJ:remove')") + @Log(title = "出生登记", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(daBirthDjService.deleteDaBirthDjByIds(ids)); + } +} diff --git a/dangan-dangan/src/main/java/com/da/dangan/controller/DangAnCollectController.java b/dangan-dangan/src/main/java/com/da/dangan/controller/DangAnCollectController.java index 4878541..7220d09 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/controller/DangAnCollectController.java +++ b/dangan-dangan/src/main/java/com/da/dangan/controller/DangAnCollectController.java @@ -6,6 +6,7 @@ import com.da.common.core.domain.AjaxResult; import com.da.common.utils.file.FileUploadUtils; import com.da.common.utils.file.FileUtils; import com.da.dangan.domain.DaPicturesRecard; +import com.da.dangan.domain.vo.PicParams; import com.da.dangan.service.IDaCzrkdjService; import com.da.dangan.service.IDaPicturesRecardService; import com.da.dangan.util.CallThirdInterface; @@ -24,6 +25,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; import java.util.concurrent.Executor; +import java.util.stream.Collectors; /** * 档案采集Controller @@ -101,12 +103,15 @@ public class DangAnCollectController extends BaseController { } /** - * 调用ocr识别接口——识别单张图片为一条记录 + * 调用ocr识别接口——识别单张/或者正反面图片 */ @PostMapping("/recongnize") - public AjaxResult recognize(@RequestBody DaPicturesRecard[] picRecards) { + public AjaxResult recognize(@RequestBody List picRecards) { try { - String ywType = picRecards[0].getYwType(); + //取所有id的集合 + List ids = picRecards.stream().map(DaPicturesRecard::getId).collect(Collectors.toList()); + String ywType = picRecards.get(0).getYwType(); + String singleOrDouble = picRecards.get(0).getSingelOrDouble(); //获取所有的文件 List files = new ArrayList<>(); for (DaPicturesRecard picRecard : picRecards) { @@ -132,12 +137,13 @@ public class DangAnCollectController extends BaseController { logger.info("CompletableFuture耗时--——————————————————》"+ (end-start)+"ms");*/ //不使用循环调用接口 直接传递数组 + // String result = CallThirdInterface.callThirdInterface(url, files, ywType,singeOrDouble,ids); String result = CallThirdInterface.callThirdInterface(url, files, ywType); System.out.println(result); long end =System.currentTimeMillis(); logger.info("CompletableFuture耗时--——————————————————》"+ (end-start)+"ms"); - // TODO 根据业务类型存储识别后的信息 + // TODO 数据解析 根据业务类型存储识别后的信息 switch(ywType){ case "0" : @@ -148,6 +154,7 @@ public class DangAnCollectController extends BaseController { break; case "2" : //daCzrkdjService.insertDaCzrkdj(); + //picRecards.stream().filter(p -> p.getId()==1L || p.getId()==2L).collect(Collectors.toList()); break; case "3" : @@ -166,10 +173,10 @@ public class DangAnCollectController extends BaseController { //识别成功的图片 ,修改图片信息记录表为已识别 可以用多线程 - /*for (DaPicturesRecard picRecard : picRecards) { + for (DaPicturesRecard picRecard : picRecards) { picRecard.setRecognize("1"); daPicturesRecardService.updateDaPicturesRecard(picRecard); - }*/ + } } catch (Exception e) { e.printStackTrace(); return AjaxResult.error(e.getMessage()); @@ -178,63 +185,102 @@ public class DangAnCollectController extends BaseController { } /** - * 调用ocr识别接口——上传图片为一组 (也就是上传N张图片为一个人的数据,仅需要识别一张图片) + * 调用ocr识别接口——上传图片为一组 (也就是上传N张图片为一组数据) */ - @PostMapping("/recongnize2") - public AjaxResult recognize2(@RequestBody DaPicturesRecard chekedRecard[],@RequestBody DaPicturesRecard[] unchekedRecards) { - try { - String ywType = chekedRecard[0].getYwType(); - //获取所有的文件 - List files = new ArrayList<>(); - for (DaPicturesRecard picRecard : chekedRecard) { - String path = getPath(picRecard.getPicUrl()); - File file = new File(path); - files.add(file); - } - // TODO————————多线程循环调用第三方接口 - long start =System.currentTimeMillis(); - String result = CallThirdInterface.callThirdInterface(url, files, ywType); - System.out.println(result); - long end =System.currentTimeMillis(); - logger.info("CompletableFuture耗时--——————————————————》"+ (end-start)+"ms"); - - // TODO 根据业务类型存储识别后的信息 - - switch(ywType){ - case "0" : - - break; - case "1" : - - break; - case "2" : - //daCzrkdjService.insertDaCzrkdj(); - break; - case "3" : - - break; - case "4" : - - break; - case "5" : - - break; - case "6" : - - break; - } - - + @PostMapping("/recongnizeZu") + public AjaxResult recongnizeZu(@RequestBody PicParams params) { + List checked = params.getChecked(); + List uncheked = params.getUnchecked(); + String singleOrDouble = params.getSingeOrDouble(); + //拼接所有的图片 + List listAll =checked; + if(uncheked!=null&&uncheked.size()>0){ + listAll.addAll(uncheked); + } + //参数:checked id的集合 + List ids = checked.stream().map(DaPicturesRecard::getId).collect(Collectors.toList()); + + //all id的集合 + List allIds = listAll.stream().map(DaPicturesRecard::getId).collect(Collectors.toList()); + List allPics = listAll.stream().map(DaPicturesRecard::getPicUrl).collect(Collectors.toList()); + + System.out.println(allIds.toString()); + + if(checked!=null&&checked.size()>0){ + try { + String ywType = checked.get(0).getYwType(); + //获取所有的文件 + List files = new ArrayList<>(); + for (DaPicturesRecard picRecard : checked) { + String path = getPath(picRecard.getPicUrl()); + File file = new File(path); + files.add(file); + } + // TODO————————多线程循环调用第三方接口 + long start =System.currentTimeMillis(); + //参数:地址、文件、业务类型、单双面: 1单面 2双面 + //String result = CallThirdInterface.callThirdInterface(url, files, ywType,singleOrDouble,ids); + String result = CallThirdInterface.callThirdInterface(url, files, ywType); + System.out.println(result); + long end =System.currentTimeMillis(); + logger.info("CompletableFuture耗时--——————————————————》"+ (end-start)+"ms"); + + // TODO 根据业务类型存储识别后的信息 + Long dajlId=null; + switch(ywType){ + case "0" : + + break; + case "1" : + + break; + case "2" : + /*DaCzrkdj daCzrkdj = new DaCzrkdj(); + daCzrkdj.setAllPicIds(picIds); + daCzrkdj.setAllPics(); + daCzrkdj.setPicIds(); + daCzrkdj.setPictures(); + daCzrkdjService.insertDaCzrkdj(); + //将插入后的id反写回来 + dajlid=daCzrkdj.getId();*/ + break; + case "3" : + + break; + case "4" : + + break; + case "5" : + + break; + case "6" : + + break; + } - //识别成功的图片 ,修改图片信息记录表为已识别 可以用多线程 - /*for (DaPicturesRecard picRecard : picRecards) { + //识别成功的图片 ,修改图片信息记录表为已识别 可以用多线程 + for (DaPicturesRecard picRecard : checked) { picRecard.setRecognize("1"); daPicturesRecardService.updateDaPicturesRecard(picRecard); + } + + /*if(uncheked!=null&&uncheked.size()>0){ + for (DaPicturesRecard picRecard : uncheked) { + //todo 存储记录的对应id存到未识别图片中 以便将来通过档案记录id查找相关图片 + //修改为记录存储图片信息 图片不做信息保存 + picRecard.setDaJlId(dajlId); + daPicturesRecardService.updateDaPicturesRecard(picRecard); + } }*/ - } catch (Exception e) { - e.printStackTrace(); - return AjaxResult.error(e.getMessage()); + + } catch (Exception e) { + e.printStackTrace(); + return AjaxResult.error(e.getMessage()); + } + }else{ + return AjaxResult.error("请选择需要识别的图片"); } + return AjaxResult.success(); } diff --git a/dangan-dangan/src/main/java/com/da/dangan/domain/DaBirthDj.java b/dangan-dangan/src/main/java/com/da/dangan/domain/DaBirthDj.java new file mode 100644 index 0000000..206ed15 --- /dev/null +++ b/dangan-dangan/src/main/java/com/da/dangan/domain/DaBirthDj.java @@ -0,0 +1,480 @@ +package com.da.dangan.domain; + +import com.da.common.annotation.Excel; +import com.da.common.core.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 出生登记对象 da_birth_dj + * + * @author hs + * @date 2024-06-05 + */ +public class DaBirthDj extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long id; + + /** 业务类型(字典) */ + @Excel(name = "业务类型(字典)") + private String ywType; + + /** 目录id */ + @Excel(name = "目录id") + private Long muId; + + /** 出生证编号 */ + @Excel(name = "出生证编号") + private String birthNum; + + /** 婴儿姓名 */ + @Excel(name = "婴儿姓名") + private String name; + + /** 出生时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "出生时间", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** 性别 */ + @Excel(name = "性别") + private String sex; + + /** 出生地点 */ + @Excel(name = "出生地点") + private String bornAddress; + + /** 母亲姓名 */ + @Excel(name = "母亲姓名") + private String mName; + + /** 母亲年龄 */ + @Excel(name = "母亲年龄") + private String mAge; + + /** 母亲国籍 */ + @Excel(name = "母亲国籍") + private String mGj; + + /** 母亲民族 */ + @Excel(name = "母亲民族") + private String mNation; + + /** 母亲身份证号 */ + @Excel(name = "母亲身份证号") + private String mCardId; + + /** 父亲姓名 */ + @Excel(name = "父亲姓名") + private String fName; + + /** 父亲年龄 */ + @Excel(name = "父亲年龄") + private String fAge; + + /** 父亲国籍 */ + @Excel(name = "父亲国籍") + private String fGj; + + /** 父亲民族 */ + @Excel(name = "父亲民族") + private String fNation; + + /** 父亲身份证号 */ + @Excel(name = "父亲身份证号") + private String fCardId; + + /** 家庭住址 */ + @Excel(name = "家庭住址") + private String homeAddress; + + /** 婴儿母亲签字 */ + @Excel(name = "婴儿母亲签字") + private String momSign; + + /** 接生人员签字 */ + @Excel(name = "接生人员签字") + private String jsrySign; + + /** 接生单位 */ + @Excel(name = "接生单位") + private String jsUnit; + + /** 出生登记类型(字典) */ + @Excel(name = "出生登记类型(字典)") + private String djType; + + /** 识别图片id */ + @Excel(name = "识别图片id") + private String picIds; + + /** 识别图片 */ + @Excel(name = "识别图片") + private String pictures; + + /** 相关图片id */ + @Excel(name = "相关图片id") + private String allPicIds; + + /** 相关图片 */ + @Excel(name = "相关图片") + private String allPics; + + /** 是否纠错(字典0否1是) */ + @Excel(name = "是否纠错(字典0否1是)") + private String errorCorrect; + + /** 审核状态(字典) */ + @Excel(name = "审核状态(字典)") + private String auditStatus; + + /** 审核人 */ + @Excel(name = "审核人") + private String auditName; + + /** 审核结果 */ + @Excel(name = "审核结果") + private String auditResult; + + /** 审核原由 */ + @Excel(name = "审核原由") + private String auditReason; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setYwType(String ywType) + { + this.ywType = ywType; + } + + public String getYwType() + { + return ywType; + } + public void setMuId(Long muId) + { + this.muId = muId; + } + + public Long getMuId() + { + return muId; + } + public void setBirthNum(String birthNum) + { + this.birthNum = birthNum; + } + + public String getBirthNum() + { + return birthNum; + } + public void setName(String name) + { + this.name = name; + } + + public String getName() + { + return name; + } + public void setBirthday(Date birthday) + { + this.birthday = birthday; + } + + public Date getBirthday() + { + return birthday; + } + public void setSex(String sex) + { + this.sex = sex; + } + + public String getSex() + { + return sex; + } + public void setBornAddress(String bornAddress) + { + this.bornAddress = bornAddress; + } + + public String getBornAddress() + { + return bornAddress; + } + public void setmName(String mName) + { + this.mName = mName; + } + + public String getmName() + { + return mName; + } + public void setmAge(String mAge) + { + this.mAge = mAge; + } + + public String getmAge() + { + return mAge; + } + public void setmGj(String mGj) + { + this.mGj = mGj; + } + + public String getmGj() + { + return mGj; + } + public void setmNation(String mNation) + { + this.mNation = mNation; + } + + public String getmNation() + { + return mNation; + } + public void setmCardId(String mCardId) + { + this.mCardId = mCardId; + } + + public String getmCardId() + { + return mCardId; + } + public void setfName(String fName) + { + this.fName = fName; + } + + public String getfName() + { + return fName; + } + public void setfAge(String fAge) + { + this.fAge = fAge; + } + + public String getfAge() + { + return fAge; + } + public void setfGj(String fGj) + { + this.fGj = fGj; + } + + public String getfGj() + { + return fGj; + } + public void setfNation(String fNation) + { + this.fNation = fNation; + } + + public String getfNation() + { + return fNation; + } + public void setfCardId(String fCardId) + { + this.fCardId = fCardId; + } + + public String getfCardId() + { + return fCardId; + } + public void setHomeAddress(String homeAddress) + { + this.homeAddress = homeAddress; + } + + public String getHomeAddress() + { + return homeAddress; + } + public void setMomSign(String momSign) + { + this.momSign = momSign; + } + + public String getMomSign() + { + return momSign; + } + public void setJsrySign(String jsrySign) + { + this.jsrySign = jsrySign; + } + + public String getJsrySign() + { + return jsrySign; + } + public void setJsUnit(String jsUnit) + { + this.jsUnit = jsUnit; + } + + public String getJsUnit() + { + return jsUnit; + } + public void setDjType(String djType) + { + this.djType = djType; + } + + public String getDjType() + { + return djType; + } + public void setPicIds(String picIds) + { + this.picIds = picIds; + } + + public String getPicIds() + { + return picIds; + } + public void setPictures(String pictures) + { + this.pictures = pictures; + } + + public String getPictures() + { + return pictures; + } + public void setAllPicIds(String allPicIds) + { + this.allPicIds = allPicIds; + } + + public String getAllPicIds() + { + return allPicIds; + } + public void setAllPics(String allPics) + { + this.allPics = allPics; + } + + public String getAllPics() + { + return allPics; + } + public void setErrorCorrect(String errorCorrect) + { + this.errorCorrect = errorCorrect; + } + + public String getErrorCorrect() + { + return errorCorrect; + } + public void setAuditStatus(String auditStatus) + { + this.auditStatus = auditStatus; + } + + public String getAuditStatus() + { + return auditStatus; + } + public void setAuditName(String auditName) + { + this.auditName = auditName; + } + + public String getAuditName() + { + return auditName; + } + public void setAuditResult(String auditResult) + { + this.auditResult = auditResult; + } + + public String getAuditResult() + { + return auditResult; + } + public void setAuditReason(String auditReason) + { + this.auditReason = auditReason; + } + + public String getAuditReason() + { + return auditReason; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("ywType", getYwType()) + .append("muId", getMuId()) + .append("birthNum", getBirthNum()) + .append("name", getName()) + .append("birthday", getBirthday()) + .append("sex", getSex()) + .append("bornAddress", getBornAddress()) + .append("mName", getmName()) + .append("mAge", getmAge()) + .append("mGj", getmGj()) + .append("mNation", getmNation()) + .append("mCardId", getmCardId()) + .append("fName", getfName()) + .append("fAge", getfAge()) + .append("fGj", getfGj()) + .append("fNation", getfNation()) + .append("fCardId", getfCardId()) + .append("homeAddress", getHomeAddress()) + .append("momSign", getMomSign()) + .append("jsrySign", getJsrySign()) + .append("jsUnit", getJsUnit()) + .append("djType", getDjType()) + .append("picIds", getPicIds()) + .append("pictures", getPictures()) + .append("allPicIds", getAllPicIds()) + .append("allPics", getAllPics()) + .append("errorCorrect", getErrorCorrect()) + .append("auditStatus", getAuditStatus()) + .append("auditName", getAuditName()) + .append("auditResult", getAuditResult()) + .append("auditReason", getAuditReason()) + .append("remark", getRemark()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/dangan-dangan/src/main/java/com/da/dangan/domain/DaCzrkdj.java b/dangan-dangan/src/main/java/com/da/dangan/domain/DaCzrkdj.java index 390f149..c111aa9 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/domain/DaCzrkdj.java +++ b/dangan-dangan/src/main/java/com/da/dangan/domain/DaCzrkdj.java @@ -12,7 +12,7 @@ import java.util.Date; * 常住人口登记对象 da_czrkdj * * @author hs - * @date 2024-05-30 + * @date 2024-06-03 */ public class DaCzrkdj extends BaseEntity { @@ -58,10 +58,42 @@ public class DaCzrkdj extends BaseEntity @Excel(name = "身份证号") private String cardId; - /** 识别的图片 */ - @Excel(name = "识别的图片") + /** 识别图片id */ + @Excel(name = "识别图片id") + private String picIds; + + /** 识别图片 */ + @Excel(name = "识别图片") private String pictures; + /** 相关图片id */ + @Excel(name = "相关图片id") + private String allPicIds; + + /** 相关图片 */ + @Excel(name = "相关图片") + private String allPics; + + /** 是否纠错(字典0否1是) */ + @Excel(name = "是否纠错(字典0否1是)") + private String errorCorrect; + + /** 审核状态(字典) */ + @Excel(name = "审核状态(字典)") + private String auditStatus; + + /** 审核人 */ + @Excel(name = "审核人") + private String auditName; + + /** 审核结果 */ + @Excel(name = "审核结果") + private String auditResult; + + /** 审核原由 */ + @Excel(name = "审核原由") + private String auditReason; + public void setId(Long id) { this.id = id; @@ -152,6 +184,15 @@ public class DaCzrkdj extends BaseEntity { return cardId; } + public void setPicIds(String picIds) + { + this.picIds = picIds; + } + + public String getPicIds() + { + return picIds; + } public void setPictures(String pictures) { this.pictures = pictures; @@ -161,6 +202,69 @@ public class DaCzrkdj extends BaseEntity { return pictures; } + public void setAllPicIds(String allPicIds) + { + this.allPicIds = allPicIds; + } + + public String getAllPicIds() + { + return allPicIds; + } + public void setAllPics(String allPics) + { + this.allPics = allPics; + } + + public String getAllPics() + { + return allPics; + } + public void setErrorCorrect(String errorCorrect) + { + this.errorCorrect = errorCorrect; + } + + public String getErrorCorrect() + { + return errorCorrect; + } + public void setAuditStatus(String auditStatus) + { + this.auditStatus = auditStatus; + } + + public String getAuditStatus() + { + return auditStatus; + } + public void setAuditName(String auditName) + { + this.auditName = auditName; + } + + public String getAuditName() + { + return auditName; + } + public void setAuditResult(String auditResult) + { + this.auditResult = auditResult; + } + + public String getAuditResult() + { + return auditResult; + } + public void setAuditReason(String auditReason) + { + this.auditReason = auditReason; + } + + public String getAuditReason() + { + return auditReason; + } @Override public String toString() { @@ -175,7 +279,15 @@ public class DaCzrkdj extends BaseEntity .append("address", getAddress()) .append("jiguan", getJiguan()) .append("cardId", getCardId()) + .append("picIds", getPicIds()) .append("pictures", getPictures()) + .append("allPicIds", getAllPicIds()) + .append("allPics", getAllPics()) + .append("errorCorrect", getErrorCorrect()) + .append("auditStatus", getAuditStatus()) + .append("auditName", getAuditName()) + .append("auditResult", getAuditResult()) + .append("auditReason", getAuditReason()) .append("remark", getRemark()) .append("createBy", getCreateBy()) .append("createTime", getCreateTime()) diff --git a/dangan-dangan/src/main/java/com/da/dangan/domain/DaPicturesRecard.java b/dangan-dangan/src/main/java/com/da/dangan/domain/DaPicturesRecard.java index 02a5dae..b34914f 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/domain/DaPicturesRecard.java +++ b/dangan-dangan/src/main/java/com/da/dangan/domain/DaPicturesRecard.java @@ -54,6 +54,9 @@ public class DaPicturesRecard extends BaseEntity @Excel(name = "是否已识别") private String recognize; + /**传递参数使用 单双面 0单面 1双面 */ + private String singelOrDouble; + public void setId(Long id) { this.id = id; @@ -86,6 +89,14 @@ public class DaPicturesRecard extends BaseEntity this.wlsjId = wlsjId; } + public String getSingelOrDouble() { + return singelOrDouble; + } + + public void setSingelOrDouble(String singelOrDouble) { + this.singelOrDouble = singelOrDouble; + } + public Long getWlsjId() { return wlsjId; @@ -158,6 +169,7 @@ public class DaPicturesRecard extends BaseEntity .append("ywType", getYwType()) .append("daJlId", getDaJlId()) .append("recognize", getRecognize()) + .append("singeOrDouble", getSingelOrDouble()) .append("remark", getRemark()) .append("createBy", getCreateBy()) .append("createTime", getCreateTime()) diff --git a/dangan-dangan/src/main/java/com/da/dangan/domain/vo/PicParams.java b/dangan-dangan/src/main/java/com/da/dangan/domain/vo/PicParams.java new file mode 100644 index 0000000..162e6ad --- /dev/null +++ b/dangan-dangan/src/main/java/com/da/dangan/domain/vo/PicParams.java @@ -0,0 +1,35 @@ +package com.da.dangan.domain.vo; + +import com.da.dangan.domain.DaPicturesRecard; + +import java.util.List; + +public class PicParams { + private List checked; + private List unchecked; + private String singeOrDouble; //单双面 0单面 1双面 + + public String getSingeOrDouble() { + return singeOrDouble; + } + + public void setSingeOrDouble(String singeOrDouble) { + this.singeOrDouble = singeOrDouble; + } + + public List getChecked() { + return checked; + } + + public void setChecked(List checked) { + this.checked = checked; + } + + public List getUnchecked() { + return unchecked; + } + + public void setUnchecked(List unchecked) { + this.unchecked = unchecked; + } +} diff --git a/dangan-dangan/src/main/java/com/da/dangan/mapper/DaBirthDjMapper.java b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaBirthDjMapper.java new file mode 100644 index 0000000..28b9a21 --- /dev/null +++ b/dangan-dangan/src/main/java/com/da/dangan/mapper/DaBirthDjMapper.java @@ -0,0 +1,62 @@ +package com.da.dangan.mapper; + +import com.da.dangan.domain.DaBirthDj; + +import java.util.List; + +/** + * 出生登记Mapper接口 + * + * @author hs + * @date 2024-06-05 + */ +public interface DaBirthDjMapper +{ + /** + * 查询出生登记 + * + * @param id 出生登记主键 + * @return 出生登记 + */ + public DaBirthDj selectDaBirthDjById(Long id); + + /** + * 查询出生登记列表 + * + * @param daBirthDj 出生登记 + * @return 出生登记集合 + */ + public List selectDaBirthDjList(DaBirthDj daBirthDj); + + /** + * 新增出生登记 + * + * @param daBirthDj 出生登记 + * @return 结果 + */ + public int insertDaBirthDj(DaBirthDj daBirthDj); + + /** + * 修改出生登记 + * + * @param daBirthDj 出生登记 + * @return 结果 + */ + public int updateDaBirthDj(DaBirthDj daBirthDj); + + /** + * 删除出生登记 + * + * @param id 出生登记主键 + * @return 结果 + */ + public int deleteDaBirthDjById(Long id); + + /** + * 批量删除出生登记 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteDaBirthDjByIds(Long[] ids); +} diff --git a/dangan-dangan/src/main/java/com/da/dangan/service/IDaBirthDjService.java b/dangan-dangan/src/main/java/com/da/dangan/service/IDaBirthDjService.java new file mode 100644 index 0000000..0fd19c6 --- /dev/null +++ b/dangan-dangan/src/main/java/com/da/dangan/service/IDaBirthDjService.java @@ -0,0 +1,62 @@ +package com.da.dangan.service; + +import com.da.dangan.domain.DaBirthDj; + +import java.util.List; + +/** + * 出生登记Service接口 + * + * @author hs + * @date 2024-06-05 + */ +public interface IDaBirthDjService +{ + /** + * 查询出生登记 + * + * @param id 出生登记主键 + * @return 出生登记 + */ + public DaBirthDj selectDaBirthDjById(Long id); + + /** + * 查询出生登记列表 + * + * @param daBirthDj 出生登记 + * @return 出生登记集合 + */ + public List selectDaBirthDjList(DaBirthDj daBirthDj); + + /** + * 新增出生登记 + * + * @param daBirthDj 出生登记 + * @return 结果 + */ + public int insertDaBirthDj(DaBirthDj daBirthDj); + + /** + * 修改出生登记 + * + * @param daBirthDj 出生登记 + * @return 结果 + */ + public int updateDaBirthDj(DaBirthDj daBirthDj); + + /** + * 批量删除出生登记 + * + * @param ids 需要删除的出生登记主键集合 + * @return 结果 + */ + public int deleteDaBirthDjByIds(Long[] ids); + + /** + * 删除出生登记信息 + * + * @param id 出生登记主键 + * @return 结果 + */ + public int deleteDaBirthDjById(Long id); +} diff --git a/dangan-dangan/src/main/java/com/da/dangan/service/impl/DaBirthDjServiceImpl.java b/dangan-dangan/src/main/java/com/da/dangan/service/impl/DaBirthDjServiceImpl.java new file mode 100644 index 0000000..9dbfa45 --- /dev/null +++ b/dangan-dangan/src/main/java/com/da/dangan/service/impl/DaBirthDjServiceImpl.java @@ -0,0 +1,97 @@ +package com.da.dangan.service.impl; + +import com.da.common.utils.DateUtils; +import com.da.dangan.domain.DaBirthDj; +import com.da.dangan.mapper.DaBirthDjMapper; +import com.da.dangan.service.IDaBirthDjService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 出生登记Service业务层处理 + * + * @author hs + * @date 2024-06-05 + */ +@Service +public class DaBirthDjServiceImpl implements IDaBirthDjService +{ + @Autowired + private DaBirthDjMapper daBirthDjMapper; + + /** + * 查询出生登记 + * + * @param id 出生登记主键 + * @return 出生登记 + */ + @Override + public DaBirthDj selectDaBirthDjById(Long id) + { + return daBirthDjMapper.selectDaBirthDjById(id); + } + + /** + * 查询出生登记列表 + * + * @param daBirthDj 出生登记 + * @return 出生登记 + */ + @Override + public List selectDaBirthDjList(DaBirthDj daBirthDj) + { + return daBirthDjMapper.selectDaBirthDjList(daBirthDj); + } + + /** + * 新增出生登记 + * + * @param daBirthDj 出生登记 + * @return 结果 + */ + @Override + public int insertDaBirthDj(DaBirthDj daBirthDj) + { + daBirthDj.setCreateTime(DateUtils.getNowDate()); + return daBirthDjMapper.insertDaBirthDj(daBirthDj); + } + + /** + * 修改出生登记 + * + * @param daBirthDj 出生登记 + * @return 结果 + */ + @Override + public int updateDaBirthDj(DaBirthDj daBirthDj) + { + daBirthDj.setUpdateTime(DateUtils.getNowDate()); + return daBirthDjMapper.updateDaBirthDj(daBirthDj); + } + + /** + * 批量删除出生登记 + * + * @param ids 需要删除的出生登记主键 + * @return 结果 + */ + @Override + public int deleteDaBirthDjByIds(Long[] ids) + { + return daBirthDjMapper.deleteDaBirthDjByIds(ids); + } + + /** + * 删除出生登记信息 + * + * @param id 出生登记主键 + * @return 结果 + */ + @Override + public int deleteDaBirthDjById(Long id) + { + return daBirthDjMapper.deleteDaBirthDjById(id); + } +} diff --git a/dangan-dangan/src/main/java/com/da/dangan/util/CallThirdInterface.java b/dangan-dangan/src/main/java/com/da/dangan/util/CallThirdInterface.java index 5913537..e0c49a8 100644 --- a/dangan-dangan/src/main/java/com/da/dangan/util/CallThirdInterface.java +++ b/dangan-dangan/src/main/java/com/da/dangan/util/CallThirdInterface.java @@ -58,8 +58,10 @@ public class CallThirdInterface { // File file = new File("C:\\Users\\hssym\\Downloads\\UBQ.png"); httpRequest.charset(CharsetUtil.CHARSET_UTF_8); - httpRequest.form("files[]",files.toArray(new File[0])); + httpRequest.form("files[]",files.toArray(new File[files.size()])); httpRequest.form("fileType",fileType); + //httpRequest.form("singeOrDouble",); + //httpRequest.form("picIds",ids.toArray(new Long[ids.size()])); // 4. 设置请求头 // 请求头同样可以逐一设置,也可以封装到map中再统一设置 diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaBirthDjMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaBirthDjMapper.xml new file mode 100644 index 0000000..59bb8a2 --- /dev/null +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaBirthDjMapper.xml @@ -0,0 +1,226 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, yw_type, mu_id, birth_num, name, birthday, sex, born_address, m_name, m_age, m_gj, m_nation, m_card_id, f_name, f_age, f_gj, f_nation, f_card_id, home_address, mom_sign, jsry_sign, js_unit, dj_type, pic_ids, pictures, all_pic_ids, all_pics, error_correct, audit_status, audit_name, audit_result, audit_reason, remark, create_by, create_time, update_by, update_time from da_birth_dj + + + + + + + + insert into da_birth_dj + + yw_type, + mu_id, + birth_num, + name, + birthday, + sex, + born_address, + m_name, + m_age, + m_gj, + m_nation, + m_card_id, + f_name, + f_age, + f_gj, + f_nation, + f_card_id, + home_address, + mom_sign, + jsry_sign, + js_unit, + dj_type, + pic_ids, + pictures, + all_pic_ids, + all_pics, + error_correct, + audit_status, + audit_name, + audit_result, + audit_reason, + remark, + create_by, + create_time, + update_by, + update_time, + + + #{ywType}, + #{muId}, + #{birthNum}, + #{name}, + #{birthday}, + #{sex}, + #{bornAddress}, + #{mName}, + #{mAge}, + #{mGj}, + #{mNation}, + #{mCardId}, + #{fName}, + #{fAge}, + #{fGj}, + #{fNation}, + #{fCardId}, + #{homeAddress}, + #{momSign}, + #{jsrySign}, + #{jsUnit}, + #{djType}, + #{picIds}, + #{pictures}, + #{allPicIds}, + #{allPics}, + #{errorCorrect}, + #{auditStatus}, + #{auditName}, + #{auditResult}, + #{auditReason}, + #{remark}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + + + + + update da_birth_dj + + yw_type = #{ywType}, + mu_id = #{muId}, + birth_num = #{birthNum}, + name = #{name}, + birthday = #{birthday}, + sex = #{sex}, + born_address = #{bornAddress}, + m_name = #{mName}, + m_age = #{mAge}, + m_gj = #{mGj}, + m_nation = #{mNation}, + m_card_id = #{mCardId}, + f_name = #{fName}, + f_age = #{fAge}, + f_gj = #{fGj}, + f_nation = #{fNation}, + f_card_id = #{fCardId}, + home_address = #{homeAddress}, + mom_sign = #{momSign}, + jsry_sign = #{jsrySign}, + js_unit = #{jsUnit}, + dj_type = #{djType}, + pic_ids = #{picIds}, + pictures = #{pictures}, + all_pic_ids = #{allPicIds}, + all_pics = #{allPics}, + error_correct = #{errorCorrect}, + audit_status = #{auditStatus}, + audit_name = #{auditName}, + audit_result = #{auditResult}, + audit_reason = #{auditReason}, + remark = #{remark}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from da_birth_dj where id = #{id} + + + + delete from da_birth_dj where id in + + #{id} + + + \ No newline at end of file diff --git a/dangan-dangan/src/main/resources/mapper/dangan/DaCzrkdjMapper.xml b/dangan-dangan/src/main/resources/mapper/dangan/DaCzrkdjMapper.xml index 6575310..9451ccd 100644 --- a/dangan-dangan/src/main/resources/mapper/dangan/DaCzrkdjMapper.xml +++ b/dangan-dangan/src/main/resources/mapper/dangan/DaCzrkdjMapper.xml @@ -15,7 +15,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + + + + @@ -24,7 +32,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select id,yw_type, mu_id, name, hz_name, relation, birthday, address, jiguan, card_id, pictures, remark, create_by, create_time, update_by, update_time from da_czrkdj + select id,yw_type, mu_id, name, hz_name, relation, birthday, address, jiguan, card_id, pic_ids, pictures, all_pic_ids, all_pics,error_correct, audit_status, audit_name, audit_result, audit_reason, remark, create_by, create_time, update_by, update_time from da_czrkdj @@ -57,7 +73,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and address = #{address} and jiguan = #{jiguan} and card_id = #{cardId} - and pictures = #{pictures} + pic_ids, + pictures, + all_pic_ids, + all_pics, + and error_correct = #{errorCorrect} + and audit_status = #{auditStatus} + and audit_name like concat('%', #{auditName}, '%') + and audit_result = #{auditResult} + and audit_reason = #{auditReason} @@ -78,7 +102,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" address, jiguan, card_id, + pic_ids, pictures, + all_pic_ids, + all_pics, + error_correct, + audit_status, + audit_name, + audit_result, + audit_reason, remark, create_by, create_time, @@ -95,7 +127,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{address}, #{jiguan}, #{cardId}, + #{picIds}, #{pictures}, + #{allPicIds}, + #{allPics}, + #{errorCorrect}, + #{auditStatus}, + #{auditName}, + #{auditResult}, + #{auditReason}, #{remark}, #{createBy}, #{createTime}, @@ -116,7 +156,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" address = #{address}, jiguan = #{jiguan}, card_id = #{cardId}, + pic_ids = #{picIds}, pictures = #{pictures}, + all_pic_ids = #{allPicIds}, + all_pics = #{allPics}, + error_correct = #{errorCorrect}, + audit_status = #{auditStatus}, + audit_name = #{auditName}, + audit_result = #{auditResult}, + audit_reason = #{auditReason}, remark = #{remark}, create_by = #{createBy}, create_time = #{createTime}, diff --git a/dangan-ui/src/api/dangan/birthDJ.js b/dangan-ui/src/api/dangan/birthDJ.js new file mode 100644 index 0000000..6d6b960 --- /dev/null +++ b/dangan-ui/src/api/dangan/birthDJ.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询出生登记列表 +export function listBirthDJ(query) { + return request({ + url: '/dangan/birthDJ/list', + method: 'get', + params: query + }) +} + +// 查询出生登记详细 +export function getBirthDJ(id) { + return request({ + url: '/dangan/birthDJ/' + id, + method: 'get' + }) +} + +// 新增出生登记 +export function addBirthDJ(data) { + return request({ + url: '/dangan/birthDJ', + method: 'post', + data: data + }) +} + +// 修改出生登记 +export function updateBirthDJ(data) { + return request({ + url: '/dangan/birthDJ', + method: 'put', + data: data + }) +} + +// 删除出生登记 +export function delBirthDJ(id) { + return request({ + url: '/dangan/birthDJ/' + id, + method: 'delete' + }) +} diff --git a/dangan-ui/src/views/dangan/birthDJ/index.vue b/dangan-ui/src/views/dangan/birthDJ/index.vue new file mode 100644 index 0000000..84bc3d9 --- /dev/null +++ b/dangan-ui/src/views/dangan/birthDJ/index.vue @@ -0,0 +1,626 @@ + + +