From 1197b506f405666f3e17a2f9985cbe005737a4fc Mon Sep 17 00:00:00 2001 From: mhsnet Date: Thu, 2 Feb 2023 14:53:08 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E7=84=B6=E4=BA=BA=E5=8F=8A=E5=BA=93?= =?UTF-8?q?=E5=8C=BA=E5=88=A0=E9=99=A4=E5=A4=B1=E6=95=88=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/Jg_naturalController.java | 322 ++++++++++++++++++ .../Jg_natural/entity/Jg_naturalEntity.java | 71 ++++ .../jg_natural/Jg_naturalCrForm.java | 42 +++ .../jg_natural/Jg_naturalInfoVO.java | 46 +++ .../jg_natural/Jg_naturalListQuery.java | 26 ++ .../jg_natural/Jg_naturalListVO.java | 53 +++ .../jg_natural/Jg_naturalPagination.java | 27 ++ .../Jg_naturalPaginationExportModel.java | 29 ++ .../jg_natural/Jg_naturalUpForm.java | 47 +++ .../Jg_natural/mapper/Jg_naturalMapper.java | 17 + .../Jg_natural/service/Jg_naturalService.java | 35 ++ .../service/impl/Jg_naturalServiceImpl.java | 222 ++++++++++++ .../entity/ReservoirareaEntity.java | 9 - .../src/main/resources/Jg_naturalMapper.xml | 7 + .../scm/basicInformation/natural/Detail.vue | 110 ++++++ .../basicInformation/natural/ExportBox.vue | 68 ++++ .../scm/basicInformation/natural/Form.vue | 195 +++++++++++ .../scm/basicInformation/natural/index.vue | 256 ++++++++++++++ 18 files changed, 1573 insertions(+), 9 deletions(-) create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/controller/Jg_naturalController.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/entity/Jg_naturalEntity.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalCrForm.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalInfoVO.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalListQuery.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalListVO.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalPagination.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalPaginationExportModel.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalUpForm.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/mapper/Jg_naturalMapper.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/service/Jg_naturalService.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/service/impl/Jg_naturalServiceImpl.java create mode 100644 SC-boot/linkage-scm/src/main/resources/Jg_naturalMapper.xml create mode 100644 SC-web/src/views/scm/basicInformation/natural/Detail.vue create mode 100644 SC-web/src/views/scm/basicInformation/natural/ExportBox.vue create mode 100644 SC-web/src/views/scm/basicInformation/natural/Form.vue create mode 100644 SC-web/src/views/scm/basicInformation/natural/index.vue diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/controller/Jg_naturalController.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/controller/Jg_naturalController.java new file mode 100644 index 00000000..355c1889 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/controller/Jg_naturalController.java @@ -0,0 +1,322 @@ + + +package jnpf.Jg_natural.controller; + +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; +import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import jnpf.Jg_natural.entity.Jg_naturalEntity; +import jnpf.Jg_natural.jg_natural.*; +import jnpf.Jg_natural.service.Jg_naturalService; +import jnpf.base.ActionResult; +import jnpf.base.UserInfo; +import jnpf.base.vo.DownloadVO; +import jnpf.base.vo.PageListVO; +import jnpf.base.vo.PaginationVO; +import jnpf.config.ConfigValueUtil; +import jnpf.exception.DataException; +import jnpf.util.*; +import jnpf.util.enums.FileTypeEnum; +import jnpf.util.file.UploadUtil; +import lombok.Cleanup; +import lombok.extern.slf4j.Slf4j; +import org.apache.poi.hssf.usermodel.HSSFWorkbook; +import org.apache.poi.ss.usermodel.Workbook; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + * + * jg_natural + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Slf4j +@RestController +@Api(tags = "jg_natural" , value = "example") +@RequestMapping("/api/example/Jg_natural") +public class Jg_naturalController { + + @Autowired + private GeneraterSwapUtil generaterSwapUtil; + + @Autowired + private ConfigValueUtil configValueUtil; + + @Autowired + private UserProvider userProvider; + + @Autowired + private Jg_naturalService jg_naturalService; + + + + + /** + * 列表 + * + * @param jg_naturalPagination + * @return + */ + @PostMapping("/getList") + public ActionResult list(@RequestBody Jg_naturalPagination jg_naturalPagination)throws IOException{ + List list= jg_naturalService.getList(jg_naturalPagination); + //处理id字段转名称,若无需转或者为空可删除 + for(Jg_naturalEntity entity:list){ + } + List listVO=JsonUtil.getJsonToList(list,Jg_naturalListVO.class); + for(Jg_naturalListVO jg_naturalVO:listVO){ + } + + + PageListVO vo=new PageListVO(); + vo.setList(listVO); + PaginationVO page=JsonUtil.getJsonToBean(jg_naturalPagination,PaginationVO.class); + vo.setPagination(page); + return ActionResult.success(vo); + } + + + /** + * 创建 + * + * @param jg_naturalCrForm + * @return + */ + @PostMapping + @Transactional + public ActionResult create(@RequestBody @Valid Jg_naturalCrForm jg_naturalCrForm) throws DataException { + String mainId =RandomUtil.uuId(); + UserInfo userInfo=userProvider.get(); + jg_naturalCrForm.setCreatorTime(DateUtil.getNow()); + Jg_naturalEntity entity = JsonUtil.getJsonToBean(jg_naturalCrForm, Jg_naturalEntity.class); + entity.setId(mainId); + jg_naturalService.save(entity); + + + return ActionResult.success("创建成功"); +} + + + + /** + * 模板下载 + * + * @return + */ + @ApiOperation("模板下载") + @GetMapping("/templateDownload") + public ActionResult TemplateDownload(){ + UserInfo userInfo=userProvider.get(); + DownloadVO vo=DownloadVO.builder().build(); + try{ + vo.setName("职员信息.xlsx"); + vo.setUrl(UploaderUtil.uploaderFile("/api/Common/DownloadModel?encryption=" ,userInfo.getId()+"#"+"职员信息.xlsx"+"#"+"Temporary")); + }catch(Exception e){ + log.error("信息导出Excel错误:{}" ,e.getMessage()); + } + return ActionResult.success(vo); + } + /** + * 导出Excel + * + * @return + */ + @ApiOperation("导出Excel") + @GetMapping("/Actions/Export") + public ActionResult Export(Jg_naturalPaginationExportModel jg_naturalPaginationExportModel) throws IOException { + if (StringUtil.isEmpty(jg_naturalPaginationExportModel.getSelectKey())){ + return ActionResult.fail("请选择导出字段"); + } + Jg_naturalPagination jg_naturalPagination=JsonUtil.getJsonToBean(jg_naturalPaginationExportModel, Jg_naturalPagination.class); + List list= jg_naturalService.getTypeList(jg_naturalPagination,jg_naturalPaginationExportModel.getDataType()); + //处理id字段转名称,若无需转或者为空可删除 + for(Jg_naturalEntity entity:list){ + } + List listVO=JsonUtil.getJsonToList(list,Jg_naturalListVO.class); + for(Jg_naturalListVO jg_naturalVO:listVO){ + } + + //转换为map输出 + List>mapList=JsonUtil.getJsonToListMap(JsonUtil.getObjectToStringDateFormat(listVO,"yyyy-MM-dd HH:mm:ss")); + String[]keys=!StringUtil.isEmpty(jg_naturalPaginationExportModel.getSelectKey())?jg_naturalPaginationExportModel.getSelectKey().split(","):new String[0]; + UserInfo userInfo=userProvider.get(); + DownloadVO vo=this.creatModelExcel(configValueUtil.getTemporaryFilePath(),mapList,keys,userInfo); + return ActionResult.success(vo); + } + //导出表格 + public DownloadVO creatModelExcel(String path,List>list,String[]keys,UserInfo userInfo){ + DownloadVO vo=DownloadVO.builder().build(); + List entitys=new ArrayList<>(); + if(keys.length>0){ + for(String key:keys){ + switch(key){ + case "name" : + entitys.add(new ExcelExportEntity("姓名" ,"name")); + break; + case "adress" : + entitys.add(new ExcelExportEntity("地址" ,"adress")); + break; + case "contact" : + entitys.add(new ExcelExportEntity("手机号" ,"contact")); + break; + case "creatorUserName" : + entitys.add(new ExcelExportEntity("录入人" ,"creatorUserName")); + break; + case "creatorTime" : + entitys.add(new ExcelExportEntity("创建时间" ,"creatorTime")); + break; + default: + break; + } + } + } + + ExportParams exportParams = new ExportParams(null, "表单信息"); + exportParams.setType(ExcelType.XSSF); + try{ + @Cleanup Workbook workbook = new HSSFWorkbook(); + if (entitys.size()>0){ + workbook = ExcelExportUtil.exportExcel(exportParams, entitys, list); + } + String name = "表单信息" + DateUtil.dateNow("yyyyMMdd") + "_" + RandomUtil.uuId() + ".xlsx"; + + String fileName = configValueUtil.getTemporaryFilePath() + name; + @Cleanup FileOutputStream output = new FileOutputStream(XSSEscape.escapePath(fileName)); + workbook.write(output); + //上传文件 + UploadUtil.uploadFile(configValueUtil.getFileType(), fileName, FileTypeEnum.TEMPORARY, name); + + vo.setName(name); + vo.setUrl(UploaderUtil.uploaderFile(userInfo.getId() + "#" + name + "#" + "Temporary")); + } catch (Exception e) { + log.error("信息导出Excel错误:{}", e.getMessage()); + e.printStackTrace(); + } + return vo; + } + + + /** + * 批量删除 + * + * @param ids + * @return + */ + @DeleteMapping("/batchRemove/{ids}") + @Transactional + public ActionResult batchRemove(@PathVariable("ids") String ids){ + String[] idList = ids.split(","); + int i =0; + for (String allId : idList){ + this.delete(allId); + i++; + } + if (i == 0 ){ + return ActionResult.fail("删除失败"); + } + return ActionResult.success("删除成功"); + } + + + /** + * 信息 + * + * @param id + * @return + */ + @GetMapping("/{id}") + public ActionResult info(@PathVariable("id") String id){ + Jg_naturalEntity entity= jg_naturalService.getInfo(id); + Jg_naturalInfoVO vo=JsonUtil.getJsonToBean(entity, Jg_naturalInfoVO.class); + if(vo.getCreatorTime()!=null){ + vo.setCreatorTime(vo.getCreatorTime()); + } + + //子表 + //副表 + return ActionResult.success(vo); + } + + /** + * 表单信息(详情页) + * + * @param id + * @return + */ + @GetMapping("/detail/{id}") + public ActionResult detailInfo(@PathVariable("id") String id){ + Jg_naturalEntity entity= jg_naturalService.getInfo(id); + Jg_naturalInfoVO vo=JsonUtil.getJsonToBean(entity, Jg_naturalInfoVO.class); + + //子表数据转换 + + //附表数据转换 + +//添加到详情表单对象中 + + return ActionResult.success(vo); + } + + + + + /** + * 更新 + * + * @param id + * @return + */ + @PutMapping("/{id}") + @Transactional + public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid Jg_naturalUpForm jg_naturalUpForm) throws DataException { + UserInfo userInfo=userProvider.get(); + Jg_naturalEntity entity= jg_naturalService.getInfo(id); + if(entity!=null){ + Jg_naturalEntity subentity=JsonUtil.getJsonToBean(jg_naturalUpForm, Jg_naturalEntity.class); + subentity.setCreatorTime(entity.getCreatorTime()); + jg_naturalService.update(id, subentity); + return ActionResult.success("更新成功"); + }else{ + return ActionResult.fail("更新失败,数据不存在"); + } + } + + + + /** + * 删除 + * + * @param id + * @return + */ + @DeleteMapping("/{id}") + @Transactional + public ActionResult delete(@PathVariable("id") String id){ + Jg_naturalEntity entity= jg_naturalService.getInfo(id); + if(entity!=null){ + jg_naturalService.delete(entity); + + } + return ActionResult.success("删除成功"); + } + + + + + + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/entity/Jg_naturalEntity.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/entity/Jg_naturalEntity.java new file mode 100644 index 00000000..7f8175ad --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/entity/Jg_naturalEntity.java @@ -0,0 +1,71 @@ +package jnpf.Jg_natural.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + + +/** + * + * 自然人 + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Data +@TableName("jg_natural") +public class Jg_naturalEntity { + + @TableId("ID") + private String id; + + @TableField("CREATOR_USER_ID") + private String creatorUserId; + + @TableField("CREATOR_USER_NAME") + private String creatorUserName; + + @TableField("CREATOR_TIME") + private Date creatorTime; + + @TableField("LAST_MODIFY_USER_ID") + private String lastModifyUserId; + + @TableField("LAST_MODIFY_USER_NAME") + private String lastModifyUserName; + + @TableField("LAST_MODIFY_TIME") + private Date lastModifyTime; + + @TableField("DELETE_USER_ID") + private String deleteUserId; + + @TableField("DELETE_USER_NAME") + private String deleteUserName; + + @TableField("DELETE_TIME") + private Date deleteTime; + + @TableField("DELETE_MARK") + private String deleteMark; + + @TableField("ORGNIZE_ID") + private String orgnizeId; + + @TableField("DEPARTMENT_ID") + private String departmentId; + + @TableField("ADRESS") + private String adress; + + @TableField("NAME") + private String name; + + @TableField("CONTACT") + private String contact; + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalCrForm.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalCrForm.java new file mode 100644 index 00000000..758dec1f --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalCrForm.java @@ -0,0 +1,42 @@ + + +package jnpf.Jg_natural.jg_natural; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Data +public class Jg_naturalCrForm { + + /** 姓名 **/ + @JsonProperty("name") + private String name; + + /** 地址 **/ + @JsonProperty("adress") + private String adress; + + /** 手机号 **/ + @JsonProperty("contact") + private String contact; + + /** 录入人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + /** 创建时间 **/ + @JsonProperty("creatorTime") + private String creatorTime; + + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalInfoVO.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalInfoVO.java new file mode 100644 index 00000000..b778b1d6 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalInfoVO.java @@ -0,0 +1,46 @@ + + + +package jnpf.Jg_natural.jg_natural; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.util.Date; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Data +public class Jg_naturalInfoVO{ + /** 主键 **/ + @JsonProperty("id") + private String id; + + /** 姓名 **/ + @JsonProperty("name") + private String name; + + /** 地址 **/ + @JsonProperty("adress") + private String adress; + + /** 手机号 **/ + @JsonProperty("contact") + private String contact; + + /** 录入人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + /** 创建时间 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("creatorTime") + private Date creatorTime; + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalListQuery.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalListQuery.java new file mode 100644 index 00000000..cb45f9de --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalListQuery.java @@ -0,0 +1,26 @@ +package jnpf.Jg_natural.jg_natural; + +import jnpf.base.Pagination; +import lombok.Data; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Data +public class Jg_naturalListQuery extends Pagination { + + /** 姓名 */ + private String name; + + /** 手机号 */ + private String contact; + /** + * 菜单id + */ + private String menuId; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalListVO.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalListVO.java new file mode 100644 index 00000000..167305f8 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalListVO.java @@ -0,0 +1,53 @@ + + +package jnpf.Jg_natural.jg_natural; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.util.Date; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Data +public class Jg_naturalListVO{ + + /** 主键 */ + private String id; + + + /** 姓名 **/ + @JsonProperty("name") + private String name; + + + /** 地址 **/ + @JsonProperty("adress") + private String adress; + + + /** 手机号 **/ + @JsonProperty("contact") + private String contact; + + + /** 录入人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + + /** 创建时间 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("creatorTime") + private Date creatorTime; + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalPagination.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalPagination.java new file mode 100644 index 00000000..2de6fbe2 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalPagination.java @@ -0,0 +1,27 @@ +package jnpf.Jg_natural.jg_natural; + + +import jnpf.base.Pagination; +import lombok.Data; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Data +public class Jg_naturalPagination extends Pagination { + + /** 姓名 */ + private String name; + + /** 手机号 */ + private String contact; + /** + * 菜单id + */ + private String menuId; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalPaginationExportModel.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalPaginationExportModel.java new file mode 100644 index 00000000..fe22e60b --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalPaginationExportModel.java @@ -0,0 +1,29 @@ +package jnpf.Jg_natural.jg_natural; + +import jnpf.base.Pagination; +import lombok.Data; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Data +public class Jg_naturalPaginationExportModel extends Pagination { + + private String selectKey; + + private String json; + + private String dataType; + + + /** 姓名 */ + private String name; + + /** 手机号 */ + private String contact; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalUpForm.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalUpForm.java new file mode 100644 index 00000000..5f789b69 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/jg_natural/Jg_naturalUpForm.java @@ -0,0 +1,47 @@ + + +package jnpf.Jg_natural.jg_natural; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-02-01 + */ +@Data +public class Jg_naturalUpForm{ + /** 主键 */ + private String id; + + + /** 姓名 **/ + @JsonProperty("name") + private String name; + + + /** 地址 **/ + @JsonProperty("adress") + private String adress; + + + /** 手机号 **/ + @JsonProperty("contact") + private String contact; + + + /** 录入人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + + /** 创建时间 **/ + @JsonProperty("creatorTime") + private String creatorTime; + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/mapper/Jg_naturalMapper.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/mapper/Jg_naturalMapper.java new file mode 100644 index 00000000..7404abfa --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/mapper/Jg_naturalMapper.java @@ -0,0 +1,17 @@ +package jnpf.Jg_natural.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import jnpf.Jg_natural.entity.Jg_naturalEntity; + +/** + * + * jg_natural + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-02-01 + */ +public interface Jg_naturalMapper extends BaseMapper { + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/service/Jg_naturalService.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/service/Jg_naturalService.java new file mode 100644 index 00000000..d856549b --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/service/Jg_naturalService.java @@ -0,0 +1,35 @@ +package jnpf.Jg_natural.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import jnpf.Jg_natural.entity.Jg_naturalEntity; +import jnpf.Jg_natural.jg_natural.Jg_naturalPagination; + +import java.util.List; +/** + * + * jg_natural + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-02-01 + */ +public interface Jg_naturalService extends IService { + + List getList(Jg_naturalPagination jg_naturalPagination); + + List getTypeList(Jg_naturalPagination jg_naturalPagination,String dataType); + + + + Jg_naturalEntity getInfo(String id); + + void delete(Jg_naturalEntity entity); + + void create(Jg_naturalEntity entity); + + boolean update( String id, Jg_naturalEntity entity); + +// 子表方法 + + //列表子表数据方法 +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/service/impl/Jg_naturalServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/service/impl/Jg_naturalServiceImpl.java new file mode 100644 index 00000000..158286af --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/Jg_natural/service/impl/Jg_naturalServiceImpl.java @@ -0,0 +1,222 @@ +package jnpf.Jg_natural.service.impl; + +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import jnpf.Jg_natural.entity.Jg_naturalEntity; +import jnpf.Jg_natural.jg_natural.Jg_naturalPagination; +import jnpf.Jg_natural.mapper.Jg_naturalMapper; +import jnpf.Jg_natural.service.Jg_naturalService; +import jnpf.permission.model.authorize.AuthorizeConditionModel; +import jnpf.permission.service.AuthorizeService; +import jnpf.util.ServletUtil; +import jnpf.util.StringUtil; +import jnpf.util.UserProvider; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.List; + +/** + * + * jg_natural + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-02-01 + */ +@Service +public class Jg_naturalServiceImpl extends ServiceImpl implements Jg_naturalService { + + + @Autowired + private UserProvider userProvider; + + @Autowired + private AuthorizeService authorizeService; + + + + + + @Override + public List getList(Jg_naturalPagination jg_naturalPagination){ + String userId=userProvider.get().getUserId(); + List AllIdList =new ArrayList(); + int total=0; + int jg_naturalNum =0; + QueryWrapper jg_naturalQueryWrapper=new QueryWrapper<>(); + boolean pcPermission = false; + boolean appPermission = false; + boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc"); + if(isPc && pcPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object jg_naturalObj=authorizeService.getCondition(new AuthorizeConditionModel(jg_naturalQueryWrapper,jg_naturalPagination.getMenuId(),"jg_natural")); + if (ObjectUtil.isEmpty(jg_naturalObj)){ + return new ArrayList<>(); + } else { + jg_naturalQueryWrapper = (QueryWrapper)jg_naturalObj; + jg_naturalNum++; + } + } + } + if(!isPc && appPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object jg_naturalObj=authorizeService.getCondition(new AuthorizeConditionModel(jg_naturalQueryWrapper,jg_naturalPagination.getMenuId(),"jg_natural")); + if (ObjectUtil.isEmpty(jg_naturalObj)){ + return new ArrayList<>(); + } else { + jg_naturalQueryWrapper = (QueryWrapper)jg_naturalObj; + jg_naturalNum++; + } + + + } + } + if(StringUtil.isNotEmpty(jg_naturalPagination.getName())){ + jg_naturalNum++; + jg_naturalQueryWrapper.lambda().like(Jg_naturalEntity::getName,jg_naturalPagination.getName()); + } + + if(StringUtil.isNotEmpty(jg_naturalPagination.getContact())){ + jg_naturalNum++; + jg_naturalQueryWrapper.lambda().like(Jg_naturalEntity::getContact,jg_naturalPagination.getContact()); + } + + if(AllIdList.size()>0){ + jg_naturalQueryWrapper.lambda().in(Jg_naturalEntity::getId, AllIdList); + } + //排序 + if(StringUtil.isEmpty(jg_naturalPagination.getSidx())){ + jg_naturalQueryWrapper.lambda().orderByDesc(Jg_naturalEntity::getCreatorTime); + }else{ + try { + String sidx = jg_naturalPagination.getSidx(); + Jg_naturalEntity jg_naturalEntity = new Jg_naturalEntity(); + Field declaredField = jg_naturalEntity.getClass().getDeclaredField(sidx); + declaredField.setAccessible(true); + String value = declaredField.getAnnotation(TableField.class).value(); + jg_naturalQueryWrapper="asc".equals(jg_naturalPagination.getSort().toLowerCase())?jg_naturalQueryWrapper.orderByAsc(value):jg_naturalQueryWrapper.orderByDesc(value); + } catch (NoSuchFieldException e) { + e.printStackTrace(); + } + } + if((total>0 && AllIdList.size()>0) || total==0){ + Page page=new Page<>(jg_naturalPagination.getCurrentPage(), jg_naturalPagination.getPageSize()); + IPage userIPage=this.page(page, jg_naturalQueryWrapper); + return jg_naturalPagination.setData(userIPage.getRecords(),userIPage.getTotal()); + }else{ + List list = new ArrayList(); + return jg_naturalPagination.setData(list, list.size()); + } + } + @Override + public List getTypeList(Jg_naturalPagination jg_naturalPagination,String dataType){ + String userId=userProvider.get().getUserId(); + List AllIdList =new ArrayList(); + int total=0; + int jg_naturalNum =0; + QueryWrapper jg_naturalQueryWrapper=new QueryWrapper<>(); + boolean pcPermission = false; + boolean appPermission = false; + boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc"); + if(isPc && pcPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object jg_naturalObj=authorizeService.getCondition(new AuthorizeConditionModel(jg_naturalQueryWrapper,jg_naturalPagination.getMenuId(),"jg_natural")); + if (ObjectUtil.isEmpty(jg_naturalObj)){ + return new ArrayList<>(); + } else { + jg_naturalQueryWrapper = (QueryWrapper)jg_naturalObj; + jg_naturalNum++; + } + } + } + if(!isPc && appPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object jg_naturalObj=authorizeService.getCondition(new AuthorizeConditionModel(jg_naturalQueryWrapper,jg_naturalPagination.getMenuId(),"jg_natural")); + if (ObjectUtil.isEmpty(jg_naturalObj)){ + return new ArrayList<>(); + } else { + jg_naturalQueryWrapper = (QueryWrapper)jg_naturalObj; + jg_naturalNum++; + } + + + } + } + if(StringUtil.isNotEmpty(jg_naturalPagination.getName())){ + jg_naturalNum++; + jg_naturalQueryWrapper.lambda().like(Jg_naturalEntity::getName,jg_naturalPagination.getName()); + } + + if(StringUtil.isNotEmpty(jg_naturalPagination.getContact())){ + jg_naturalNum++; + jg_naturalQueryWrapper.lambda().like(Jg_naturalEntity::getContact,jg_naturalPagination.getContact()); + } + + if(AllIdList.size()>0){ + jg_naturalQueryWrapper.lambda().in(Jg_naturalEntity::getId, AllIdList); + } + //排序 + if(StringUtil.isEmpty(jg_naturalPagination.getSidx())){ + jg_naturalQueryWrapper.lambda().orderByDesc(Jg_naturalEntity::getCreatorTime); + }else{ + try { + String sidx = jg_naturalPagination.getSidx(); + Jg_naturalEntity jg_naturalEntity = new Jg_naturalEntity(); + Field declaredField = jg_naturalEntity.getClass().getDeclaredField(sidx); + declaredField.setAccessible(true); + String value = declaredField.getAnnotation(TableField.class).value(); + jg_naturalQueryWrapper="asc".equals(jg_naturalPagination.getSort().toLowerCase())?jg_naturalQueryWrapper.orderByAsc(value):jg_naturalQueryWrapper.orderByDesc(value); + } catch (NoSuchFieldException e) { + e.printStackTrace(); + } + } + if("0".equals(dataType)){ + if((total>0 && AllIdList.size()>0) || total==0){ + Page page=new Page<>(jg_naturalPagination.getCurrentPage(), jg_naturalPagination.getPageSize()); + IPage userIPage=this.page(page, jg_naturalQueryWrapper); + return jg_naturalPagination.setData(userIPage.getRecords(),userIPage.getTotal()); + }else{ + List list = new ArrayList(); + return jg_naturalPagination.setData(list, list.size()); + } + }else{ + return this.list(jg_naturalQueryWrapper); + } + } + + @Override + public Jg_naturalEntity getInfo(String id){ + QueryWrapper queryWrapper=new QueryWrapper<>(); + queryWrapper.lambda().eq(Jg_naturalEntity::getId,id); + return this.getOne(queryWrapper); + } + + @Override + public void create(Jg_naturalEntity entity){ + this.save(entity); + } + + @Override + public boolean update(String id, Jg_naturalEntity entity){ + entity.setId(id); + return this.updateById(entity); + } + @Override + public void delete(Jg_naturalEntity entity){ + if(entity!=null){ + this.removeById(entity.getId()); + } + } + //子表方法 + + //列表子表数据方法 + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/reservoirarea/entity/ReservoirareaEntity.java b/SC-boot/linkage-scm/src/main/java/jnpf/reservoirarea/entity/ReservoirareaEntity.java index 632b5342..259518ef 100644 --- a/SC-boot/linkage-scm/src/main/java/jnpf/reservoirarea/entity/ReservoirareaEntity.java +++ b/SC-boot/linkage-scm/src/main/java/jnpf/reservoirarea/entity/ReservoirareaEntity.java @@ -82,13 +82,4 @@ public class ReservoirareaEntity { @TableField("UNIT") private String unit; - @TableField("UNTITLED") - private String untitled; - - @TableField("UNTITLED1") - private String untitled1; - - @TableField("UNTITLED2") - private String untitled2; - } diff --git a/SC-boot/linkage-scm/src/main/resources/Jg_naturalMapper.xml b/SC-boot/linkage-scm/src/main/resources/Jg_naturalMapper.xml new file mode 100644 index 00000000..8132306f --- /dev/null +++ b/SC-boot/linkage-scm/src/main/resources/Jg_naturalMapper.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/SC-web/src/views/scm/basicInformation/natural/Detail.vue b/SC-web/src/views/scm/basicInformation/natural/Detail.vue new file mode 100644 index 00000000..2fe14793 --- /dev/null +++ b/SC-web/src/views/scm/basicInformation/natural/Detail.vue @@ -0,0 +1,110 @@ + + diff --git a/SC-web/src/views/scm/basicInformation/natural/ExportBox.vue b/SC-web/src/views/scm/basicInformation/natural/ExportBox.vue new file mode 100644 index 00000000..e61a2182 --- /dev/null +++ b/SC-web/src/views/scm/basicInformation/natural/ExportBox.vue @@ -0,0 +1,68 @@ + + + + \ No newline at end of file diff --git a/SC-web/src/views/scm/basicInformation/natural/Form.vue b/SC-web/src/views/scm/basicInformation/natural/Form.vue new file mode 100644 index 00000000..c59d6b0a --- /dev/null +++ b/SC-web/src/views/scm/basicInformation/natural/Form.vue @@ -0,0 +1,195 @@ + + diff --git a/SC-web/src/views/scm/basicInformation/natural/index.vue b/SC-web/src/views/scm/basicInformation/natural/index.vue new file mode 100644 index 00000000..b2897101 --- /dev/null +++ b/SC-web/src/views/scm/basicInformation/natural/index.vue @@ -0,0 +1,256 @@ + + +