From c4d2d517937c937281b8db080712125bcee3bf87 Mon Sep 17 00:00:00 2001 From: wangchuang <994001556@qq.com> Date: Thu, 12 Jan 2023 10:02:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A5=E5=BA=93=E5=8D=95=20=E5=87=BA?= =?UTF-8?q?=E5=BA=93=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ReceiptinController.java | 418 ++++++++++++++++++ .../receiptin/entity/ReceiptinEntity.java | 96 ++++ .../entity/Receiptin_item0Entity.java | 113 +++++ .../receiptin/mapper/ReceiptinMapper.java | 17 + .../mapper/Receiptin_item0Mapper.java | 17 + .../model/receiptin/ReceiptinCrForm.java | 96 ++++ .../model/receiptin/ReceiptinInfoVO.java | 100 +++++ .../model/receiptin/ReceiptinListQuery.java | 27 ++ .../model/receiptin/ReceiptinListVO.java | 120 +++++ .../model/receiptin/ReceiptinPagination.java | 28 ++ .../ReceiptinPaginationExportModel.java | 29 ++ .../model/receiptin/ReceiptinUpForm.java | 116 +++++ .../receiptin/service/ReceiptinService.java | 35 ++ .../service/Receiptin_item0Service.java | 16 + .../service/impl/ReceiptinServiceImpl.java | 259 +++++++++++ .../impl/Receiptin_item0ServiceImpl.java | 21 + .../controller/ReceiptoutController.java | 415 +++++++++++++++++ .../receiptout/entity/ReceiptoutEntity.java | 99 +++++ .../entity/Receiptout_item0Entity.java | 113 +++++ .../receiptout/mapper/ReceiptoutMapper.java | 17 + .../mapper/Receiptout_item0Mapper.java | 17 + .../model/receiptout/ReceiptoutCrForm.java | 96 ++++ .../model/receiptout/ReceiptoutInfoVO.java | 100 +++++ .../model/receiptout/ReceiptoutListQuery.java | 27 ++ .../model/receiptout/ReceiptoutListVO.java | 120 +++++ .../receiptout/ReceiptoutPagination.java | 28 ++ .../ReceiptoutPaginationExportModel.java | 29 ++ .../model/receiptout/ReceiptoutUpForm.java | 116 +++++ .../receiptout/service/ReceiptoutService.java | 35 ++ .../service/Receiptout_item0Service.java | 17 + .../service/impl/ReceiptoutServiceImpl.java | 259 +++++++++++ .../impl/Receiptout_item0ServiceImpl.java | 21 + .../src/main/resources/PaymentMapper.xml | 7 + .../main/resources/Payment_item0Mapper.xml | 7 + .../src/main/resources/ReceiptinMapper.xml | 7 + .../main/resources/Receiptin_item0Mapper.xml | 7 + .../src/main/resources/ReceiptoutMapper.xml | 7 + .../main/resources/Receiptout_item0Mapper.xml | 7 + .../scm/basicInformation/receiptin/Detail.vue | 149 +++++++ .../basicInformation/receiptin/ExportBox.vue | 68 +++ .../scm/basicInformation/receiptin/Form.vue | 249 +++++++++++ .../scm/basicInformation/receiptin/index.vue | 298 +++++++++++++ 42 files changed, 3823 insertions(+) create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/controller/ReceiptinController.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/entity/ReceiptinEntity.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/entity/Receiptin_item0Entity.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/mapper/ReceiptinMapper.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/mapper/Receiptin_item0Mapper.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinCrForm.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinInfoVO.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinListQuery.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinListVO.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinPagination.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinPaginationExportModel.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinUpForm.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/ReceiptinService.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/Receiptin_item0Service.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/impl/ReceiptinServiceImpl.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/impl/Receiptin_item0ServiceImpl.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/controller/ReceiptoutController.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/entity/ReceiptoutEntity.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/entity/Receiptout_item0Entity.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/mapper/ReceiptoutMapper.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/mapper/Receiptout_item0Mapper.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutCrForm.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutInfoVO.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutListQuery.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutListVO.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutPagination.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutPaginationExportModel.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutUpForm.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/ReceiptoutService.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/Receiptout_item0Service.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/impl/ReceiptoutServiceImpl.java create mode 100644 SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/impl/Receiptout_item0ServiceImpl.java create mode 100644 SC-boot/linkage-scm/src/main/resources/PaymentMapper.xml create mode 100644 SC-boot/linkage-scm/src/main/resources/Payment_item0Mapper.xml create mode 100644 SC-boot/linkage-scm/src/main/resources/ReceiptinMapper.xml create mode 100644 SC-boot/linkage-scm/src/main/resources/Receiptin_item0Mapper.xml create mode 100644 SC-boot/linkage-scm/src/main/resources/ReceiptoutMapper.xml create mode 100644 SC-boot/linkage-scm/src/main/resources/Receiptout_item0Mapper.xml create mode 100644 SC-web/src/views/scm/basicInformation/receiptin/Detail.vue create mode 100644 SC-web/src/views/scm/basicInformation/receiptin/ExportBox.vue create mode 100644 SC-web/src/views/scm/basicInformation/receiptin/Form.vue create mode 100644 SC-web/src/views/scm/basicInformation/receiptin/index.vue diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/controller/ReceiptinController.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/controller/ReceiptinController.java new file mode 100644 index 00000000..000c24bd --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/controller/ReceiptinController.java @@ -0,0 +1,418 @@ + + +package jnpf.receiptin.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.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.receiptin.entity.ReceiptinEntity; +import jnpf.receiptin.model.receiptin.*; +import jnpf.receiptin.service.ReceiptinService; +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; + +/** + * + * 出库单 + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Slf4j +@RestController +@Api(tags = "出库单" , value = "出库单") +@RequestMapping("/api/example/Receiptin") +public class ReceiptinController { + + @Autowired + private GeneraterSwapUtil generaterSwapUtil; + + @Autowired + private ConfigValueUtil configValueUtil; + + @Autowired + private UserProvider userProvider; + + @Autowired + private ReceiptinService receiptinService; + + + + + /** + * 列表 + * + * @param receiptinPagination + * @return + */ + @PostMapping("/getList") + public ActionResult list(@RequestBody ReceiptinPagination receiptinPagination)throws IOException{ + List list= receiptinService.getList(receiptinPagination); + //处理id字段转名称,若无需转或者为空可删除 + for(ReceiptinEntity entity:list){ + entity.setCreatorUserName(generaterSwapUtil.userSelectValue(entity.getCreatorUserName())); + entity.setCreatorUserId(generaterSwapUtil.userSelectValue(entity.getCreatorUserId())); + entity.setLastModifyUserName(generaterSwapUtil.userSelectValue(entity.getLastModifyUserName())); + entity.setLastModifyUserId(generaterSwapUtil.userSelectValue(entity.getLastModifyUserId())); + if (StringUtil.isNotBlank(entity.getOrgnizeId())){ + entity.setOrgnizeId(generaterSwapUtil.comSelectValue(entity.getOrgnizeId(), "all")); + } + + entity.setDepartmentId(generaterSwapUtil.posSelectValue(entity.getDepartmentId())); + } + List listVO=JsonUtil.getJsonToList(list,ReceiptinListVO.class); + for(ReceiptinListVO receiptinVO:listVO){ + } + + + PageListVO vo=new PageListVO(); + vo.setList(listVO); + PaginationVO page=JsonUtil.getJsonToBean(receiptinPagination,PaginationVO.class); + vo.setPagination(page); + return ActionResult.success(vo); + } + + + /** + * 创建 + * + * @param receiptinCrForm + * @return + */ + @PostMapping + @Transactional + public ActionResult create(@RequestBody @Valid ReceiptinCrForm receiptinCrForm) throws DataException { + String mainId =RandomUtil.uuId(); + UserInfo userInfo=userProvider.get(); + receiptinCrForm.setCreatorTime(DateUtil.getNow()); + receiptinCrForm.setCreatorUserName(userInfo.getUserId()); + receiptinCrForm.setCreatorUserId(userInfo.getUserId()); + receiptinCrForm.setOrgnizeId(StringUtil.isEmpty(userInfo.getDepartmentId()) ? userInfo.getOrganizeId() : userInfo.getDepartmentId()); + if(userInfo.getPositionIds()!=null&&userInfo.getPositionIds().length>0){ + receiptinCrForm.setDepartmentId(userInfo.getPositionIds()[0]); + } + ReceiptinEntity entity = JsonUtil.getJsonToBean(receiptinCrForm, ReceiptinEntity.class); + entity.setId(mainId); + receiptinService.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(ReceiptinPaginationExportModel receiptinPaginationExportModel) throws IOException { + if (StringUtil.isEmpty(receiptinPaginationExportModel.getSelectKey())){ + return ActionResult.fail("请选择导出字段"); + } + ReceiptinPagination receiptinPagination=JsonUtil.getJsonToBean(receiptinPaginationExportModel, ReceiptinPagination.class); + List list= receiptinService.getTypeList(receiptinPagination,receiptinPaginationExportModel.getDataType()); + //处理id字段转名称,若无需转或者为空可删除 + for(ReceiptinEntity entity:list){ + entity.setCreatorUserName(generaterSwapUtil.userSelectValue(entity.getCreatorUserName())); + entity.setCreatorUserId(generaterSwapUtil.userSelectValue(entity.getCreatorUserId())); + entity.setLastModifyUserName(generaterSwapUtil.userSelectValue(entity.getLastModifyUserName())); + entity.setLastModifyUserId(generaterSwapUtil.userSelectValue(entity.getLastModifyUserId())); + if (StringUtil.isNotBlank(entity.getOrgnizeId())){ + entity.setOrgnizeId(generaterSwapUtil.comSelectValue(entity.getOrgnizeId(), "all")); + } + + entity.setDepartmentId(generaterSwapUtil.posSelectValue(entity.getDepartmentId())); + } + List listVO=JsonUtil.getJsonToList(list,ReceiptinListVO.class); + for(ReceiptinListVO receiptinVO:listVO){ + } + + //转换为map输出 + List>mapList=JsonUtil.getJsonToListMap(JsonUtil.getObjectToStringDateFormat(listVO,"yyyy-MM-dd HH:mm:ss")); + String[]keys=!StringUtil.isEmpty(receiptinPaginationExportModel.getSelectKey())?receiptinPaginationExportModel.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 "documentno" : + entitys.add(new ExcelExportEntity("单据编号" ,"documentno")); + break; + case "suppliername" : + entitys.add(new ExcelExportEntity("客户名称" ,"suppliername")); + break; + case "receiptamount" : + entitys.add(new ExcelExportEntity("出库金额" ,"receiptamount")); + break; + case "receiptnum" : + entitys.add(new ExcelExportEntity("出库数量" ,"receiptnum")); + break; + case "currency" : + entitys.add(new ExcelExportEntity("币别" ,"currency")); + break; + case "warehousingdate" : + entitys.add(new ExcelExportEntity("出库日期" ,"warehousingdate")); + break; + case "souceno" : + entitys.add(new ExcelExportEntity("来源单号" ,"souceno")); + break; + case "type" : + entitys.add(new ExcelExportEntity("业务类型" ,"type")); + break; + case "remark" : + entitys.add(new ExcelExportEntity("备注" ,"remark")); + break; + case "status" : + entitys.add(new ExcelExportEntity("单据状态" ,"status")); + break; + case "creatorTime" : + entitys.add(new ExcelExportEntity("创建日期" ,"creatorTime")); + break; + case "creatorUserName" : + entitys.add(new ExcelExportEntity("创建人" ,"creatorUserName")); + break; + case "creatorUserId" : + entitys.add(new ExcelExportEntity("创建人id" ,"creatorUserId")); + break; + case "lastModifyUserName" : + entitys.add(new ExcelExportEntity("修改人名称" ,"lastModifyUserName")); + break; + case "lastModifyUserId" : + entitys.add(new ExcelExportEntity("修改人id" ,"lastModifyUserId")); + break; + case "lastModifyTime" : + entitys.add(new ExcelExportEntity("修改时间" ,"lastModifyTime")); + break; + case "orgnizeId" : + entitys.add(new ExcelExportEntity("组织id" ,"orgnizeId")); + break; + case "departmentId" : + entitys.add(new ExcelExportEntity("部门id" ,"departmentId")); + 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){ + ReceiptinEntity entity= receiptinService.getInfo(id); + ReceiptinInfoVO vo=JsonUtil.getJsonToBean(entity, ReceiptinInfoVO.class); + if(vo.getCreatorTime()!=null){ + vo.setCreatorTime(vo.getCreatorTime()); + } + vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); + vo.setCreatorUserId(generaterSwapUtil.userSelectValue(vo.getCreatorUserId())); + vo.setLastModifyUserName(generaterSwapUtil.userSelectValue(vo.getLastModifyUserName())); + vo.setLastModifyUserId(generaterSwapUtil.userSelectValue(vo.getLastModifyUserId())); + if(vo.getLastModifyTime()!=null){ + vo.setLastModifyTime(vo.getLastModifyTime()); + } + if (StringUtil.isNotBlank(vo.getOrgnizeId())){ + vo.setOrgnizeId(generaterSwapUtil.comSelectValue(vo.getOrgnizeId(), "all")); + } + + vo.setDepartmentId(generaterSwapUtil.posSelectValue(vo.getDepartmentId())); + + //子表 + //副表 + return ActionResult.success(vo); + } + + /** + * 表单信息(详情页) + * + * @param id + * @return + */ + @GetMapping("/detail/{id}") + public ActionResult detailInfo(@PathVariable("id") String id){ + ReceiptinEntity entity= receiptinService.getInfo(id); + ReceiptinInfoVO vo=JsonUtil.getJsonToBean(entity, ReceiptinInfoVO.class); + + //子表数据转换 + + //附表数据转换 + +//添加到详情表单对象中 + vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); + vo.setCreatorUserId(generaterSwapUtil.userSelectValue(vo.getCreatorUserId())); + vo.setLastModifyUserName(generaterSwapUtil.userSelectValue(vo.getLastModifyUserName())); + vo.setLastModifyUserId(generaterSwapUtil.userSelectValue(vo.getLastModifyUserId())); + if (StringUtil.isNotBlank(vo.getOrgnizeId())){ + vo.setOrgnizeId(generaterSwapUtil.comSelectValue(vo.getOrgnizeId(), "all")); + } + + vo.setDepartmentId(generaterSwapUtil.posSelectValue(vo.getDepartmentId())); + + return ActionResult.success(vo); + } + + + + + /** + * 更新 + * + * @param id + * @return + */ + @PutMapping("/{id}") + @Transactional + public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid ReceiptinUpForm receiptinUpForm) throws DataException { + UserInfo userInfo=userProvider.get(); + ReceiptinEntity entity= receiptinService.getInfo(id); + if(entity!=null){ + receiptinUpForm.setLastModifyUserName(userInfo.getUserId()); + receiptinUpForm.setLastModifyUserId(userInfo.getUserId()); + receiptinUpForm.setLastModifyTime(DateUtil.getNow()); + receiptinUpForm.setOrgnizeId(entity.getOrgnizeId()); + receiptinUpForm.setDepartmentId(entity.getDepartmentId()); + ReceiptinEntity subentity=JsonUtil.getJsonToBean(receiptinUpForm, ReceiptinEntity.class); + subentity.setCreatorTime(entity.getCreatorTime()); + subentity.setCreatorUserName(entity.getCreatorUserName()); + subentity.setCreatorUserId(entity.getCreatorUserId()); + receiptinService.update(id, subentity); + return ActionResult.success("更新成功"); + }else{ + return ActionResult.fail("更新失败,数据不存在"); + } + } + + + + /** + * 删除 + * + * @param id + * @return + */ + @DeleteMapping("/{id}") + @Transactional + public ActionResult delete(@PathVariable("id") String id){ + ReceiptinEntity entity= receiptinService.getInfo(id); + if(entity!=null){ + receiptinService.delete(entity); + + } + return ActionResult.success("删除成功"); + } + + + + + + + + + + + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/entity/ReceiptinEntity.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/entity/ReceiptinEntity.java new file mode 100644 index 00000000..71a86fa3 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/entity/ReceiptinEntity.java @@ -0,0 +1,96 @@ +package jnpf.receiptin.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + + +/** + * + * 入库单 + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +@TableName("jg_receiptin") +public class ReceiptinEntity { + + @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("DOCUMENTNO") + private String documentno; + + @TableField("SUPPLIERCODE") + private String suppliercode; + + @TableField("SUPPLIERNAME") + private String suppliername; + + @TableField("RECEIPTAMOUNT") + private BigDecimal receiptamount; + + @TableField("RECEIPTNUM") + private BigDecimal receiptnum; + + @TableField("CURRENCY") + private String currency; + + @TableField("WAREHOUSINGDATE") + private Date warehousingdate; + + @TableField("TYPE") + private String type; + + @TableField("STATUS") + private String status; + + @TableField("SOUCENO") + private String souceno; + + @TableField("REMARK") + private String remark; + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/entity/Receiptin_item0Entity.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/entity/Receiptin_item0Entity.java new file mode 100644 index 00000000..95806c1f --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/entity/Receiptin_item0Entity.java @@ -0,0 +1,113 @@ +package jnpf.receiptin.entity; + +import com.alibaba.fastjson.annotation.JSONField; +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; +import java.math.BigDecimal; +import java.math.BigDecimal; +import java.math.BigDecimal; +import java.math.BigDecimal; +import com.fasterxml.jackson.annotation.JsonProperty; + + +/** + * + * 入库明细 + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +@TableName("jg_receiptin_item0") +public class Receiptin_item0Entity { + + @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("RECEIPTIN_ID") + private String receiptinId; + + @TableField("POUNDLIST_ID") + private String poundlistId; + + @TableField("LICENSENO") + private String licenseno; + + @TableField("MATERIALCODE") + private String materialcode; + + @TableField("MATERIALNAME") + private String materialname; + + @TableField("AREACODE") + private String areacode; + + @TableField("AREANAME") + private String areaname; + + @TableField("UNIT") + private String unit; + + @TableField("NUM") + private BigDecimal num; + + @TableField("BATCHNO") + private String batchno; + + @TableField("PRICE") + private BigDecimal price; + + @TableField("RATE") + private String rate; + + @TableField("AMOUNT") + private BigDecimal amount; + + @TableField("RATEAMOUNT") + private BigDecimal rateamount; + + @TableField("REMARK") + private String remark; + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/mapper/ReceiptinMapper.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/mapper/ReceiptinMapper.java new file mode 100644 index 00000000..54b8dc4a --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/mapper/ReceiptinMapper.java @@ -0,0 +1,17 @@ +package jnpf.receiptin.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import jnpf.receiptin.entity.ReceiptinEntity; + +/** + * + * 出库单 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-11 + */ +public interface ReceiptinMapper extends BaseMapper { + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/mapper/Receiptin_item0Mapper.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/mapper/Receiptin_item0Mapper.java new file mode 100644 index 00000000..3bae49a4 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/mapper/Receiptin_item0Mapper.java @@ -0,0 +1,17 @@ +package jnpf.receiptin.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import jnpf.receiptin.entity.Receiptin_item0Entity; + +/** + * + * jg_receiptin_item0 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-11 + */ +public interface Receiptin_item0Mapper extends BaseMapper { + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinCrForm.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinCrForm.java new file mode 100644 index 00000000..104e8a69 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinCrForm.java @@ -0,0 +1,96 @@ + + +package jnpf.receiptin.model.receiptin; + +import lombok.Data; +import java.util.List; +import java.math.BigDecimal; +import com.fasterxml.jackson.annotation.JsonProperty; + + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +public class ReceiptinCrForm { + + /** 单据编号 **/ + @JsonProperty("documentno") + private String documentno; + + /** 客户名称 **/ + @JsonProperty("suppliername") + private String suppliername; + + /** 出库金额 **/ + @JsonProperty("receiptamount") + private String receiptamount; + + /** 出库数量 **/ + @JsonProperty("receiptnum") + private String receiptnum; + + /** 币别 **/ + @JsonProperty("currency") + private String currency; + + /** 出库日期 **/ + @JsonProperty("warehousingdate") + private Long warehousingdate; + + /** 来源单号 **/ + @JsonProperty("souceno") + private String souceno; + + /** 业务类型 **/ + @JsonProperty("type") + private String type; + + /** 备注 **/ + @JsonProperty("remark") + private String remark; + + /** 单据状态 **/ + @JsonProperty("status") + private String status; + + /** 创建日期 **/ + @JsonProperty("creatorTime") + private String creatorTime; + + /** 创建人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + /** 创建人id **/ + @JsonProperty("creatorUserId") + private String creatorUserId; + + /** 修改人名称 **/ + @JsonProperty("lastModifyUserName") + private String lastModifyUserName; + + /** 修改人id **/ + @JsonProperty("lastModifyUserId") + private String lastModifyUserId; + + /** 修改时间 **/ + @JsonProperty("lastModifyTime") + private String lastModifyTime; + + /** 组织id **/ + @JsonProperty("orgnizeId") + private String orgnizeId; + + /** 部门id **/ + @JsonProperty("departmentId") + private String departmentId; + + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinInfoVO.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinInfoVO.java new file mode 100644 index 00000000..bee70f16 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinInfoVO.java @@ -0,0 +1,100 @@ + + + +package jnpf.receiptin.model.receiptin; + +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +public class ReceiptinInfoVO{ + /** 主键 **/ + @JsonProperty("id") + private String id; + + /** 单据编号 **/ + @JsonProperty("documentno") + private String documentno; + + /** 客户名称 **/ + @JsonProperty("suppliername") + private String suppliername; + + /** 出库金额 **/ + @JsonProperty("receiptamount") + private String receiptamount; + + /** 出库数量 **/ + @JsonProperty("receiptnum") + private String receiptnum; + + /** 币别 **/ + @JsonProperty("currency") + private String currency; + + /** 出库日期 **/ + @JsonProperty("warehousingdate") + private Long warehousingdate; + + /** 来源单号 **/ + @JsonProperty("souceno") + private String souceno; + + /** 业务类型 **/ + @JsonProperty("type") + private String type; + + /** 备注 **/ + @JsonProperty("remark") + private String remark; + + /** 单据状态 **/ + @JsonProperty("status") + private String status; + + /** 创建日期 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("creatorTime") + private Date creatorTime; + + /** 创建人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + /** 创建人id **/ + @JsonProperty("creatorUserId") + private String creatorUserId; + + /** 修改人名称 **/ + @JsonProperty("lastModifyUserName") + private String lastModifyUserName; + + /** 修改人id **/ + @JsonProperty("lastModifyUserId") + private String lastModifyUserId; + + /** 修改时间 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("lastModifyTime") + private Date lastModifyTime; + + /** 组织id **/ + @JsonProperty("orgnizeId") + private String orgnizeId; + + /** 部门id **/ + @JsonProperty("departmentId") + private String departmentId; + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinListQuery.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinListQuery.java new file mode 100644 index 00000000..52f4e933 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinListQuery.java @@ -0,0 +1,27 @@ +package jnpf.receiptin.model.receiptin; + +import lombok.Data; +import java.util.Date; +import jnpf.base.Pagination; +import java.util.List; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +public class ReceiptinListQuery extends Pagination { + + /** 单据编号 */ + private String documentno; + + /** 客户名称 */ + private String suppliername; + /** + * 菜单id + */ + private String menuId; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinListVO.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinListVO.java new file mode 100644 index 00000000..4a8507e5 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinListVO.java @@ -0,0 +1,120 @@ + + +package jnpf.receiptin.model.receiptin; + + +import lombok.Data; +import java.sql.Time; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.math.BigDecimal; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +public class ReceiptinListVO{ + + /** 主键 */ + private String id; + + + /** 单据编号 **/ + @JsonProperty("documentno") + private String documentno; + + + /** 客户名称 **/ + @JsonProperty("suppliername") + private String suppliername; + + + /** 出库金额 **/ + @JsonProperty("receiptamount") + private String receiptamount; + + + /** 出库数量 **/ + @JsonProperty("receiptnum") + private String receiptnum; + + + /** 币别 **/ + @JsonProperty("currency") + private String currency; + + + /** 出库日期 **/ + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + @JsonProperty("warehousingdate") + private Date warehousingdate; + + + /** 来源单号 **/ + @JsonProperty("souceno") + private String souceno; + + + /** 业务类型 **/ + @JsonProperty("type") + private String type; + + + /** 备注 **/ + @JsonProperty("remark") + private String remark; + + + /** 单据状态 **/ + @JsonProperty("status") + private String status; + + + /** 创建日期 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("creatorTime") + private Date creatorTime; + + + /** 创建人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + + /** 创建人id **/ + @JsonProperty("creatorUserId") + private String creatorUserId; + + + /** 修改人名称 **/ + @JsonProperty("lastModifyUserName") + private String lastModifyUserName; + + + /** 修改人id **/ + @JsonProperty("lastModifyUserId") + private String lastModifyUserId; + + + /** 修改时间 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("lastModifyTime") + private Date lastModifyTime; + + + /** 组织id **/ + @JsonProperty("orgnizeId") + private String orgnizeId; + + + /** 部门id **/ + @JsonProperty("departmentId") + private String departmentId; + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinPagination.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinPagination.java new file mode 100644 index 00000000..45255513 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinPagination.java @@ -0,0 +1,28 @@ +package jnpf.receiptin.model.receiptin; + + +import lombok.Data; +import jnpf.base.Pagination; +import java.util.List; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +public class ReceiptinPagination extends Pagination { + + /** 单据编号 */ + private String documentno; + + /** 客户名称 */ + private String suppliername; + /** + * 菜单id + */ + private String menuId; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinPaginationExportModel.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinPaginationExportModel.java new file mode 100644 index 00000000..eb7e6ed1 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinPaginationExportModel.java @@ -0,0 +1,29 @@ +package jnpf.receiptin.model.receiptin; + +import lombok.Data; +import jnpf.base.Pagination; +import java.util.*; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +public class ReceiptinPaginationExportModel extends Pagination { + + private String selectKey; + + private String json; + + private String dataType; + + + /** 单据编号 */ + private String documentno; + + /** 客户名称 */ + private String suppliername; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinUpForm.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinUpForm.java new file mode 100644 index 00000000..1543b3ed --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/model/receiptin/ReceiptinUpForm.java @@ -0,0 +1,116 @@ + + +package jnpf.receiptin.model.receiptin; + +import lombok.Data; +import java.util.List; +import java.math.BigDecimal; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-11 + */ +@Data +public class ReceiptinUpForm{ + /** 主键 */ + private String id; + + + /** 单据编号 **/ + @JsonProperty("documentno") + private String documentno; + + + /** 客户名称 **/ + @JsonProperty("suppliername") + private String suppliername; + + + /** 出库金额 **/ + @JsonProperty("receiptamount") + private String receiptamount; + + + /** 出库数量 **/ + @JsonProperty("receiptnum") + private String receiptnum; + + + /** 币别 **/ + @JsonProperty("currency") + private String currency; + + + /** 出库日期 **/ + @JsonProperty("warehousingdate") + private Long warehousingdate; + + + /** 来源单号 **/ + @JsonProperty("souceno") + private String souceno; + + + /** 业务类型 **/ + @JsonProperty("type") + private String type; + + + /** 备注 **/ + @JsonProperty("remark") + private String remark; + + + /** 单据状态 **/ + @JsonProperty("status") + private String status; + + + /** 创建日期 **/ + @JsonProperty("creatorTime") + private String creatorTime; + + + /** 创建人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + + /** 创建人id **/ + @JsonProperty("creatorUserId") + private String creatorUserId; + + + /** 修改人名称 **/ + @JsonProperty("lastModifyUserName") + private String lastModifyUserName; + + + /** 修改人id **/ + @JsonProperty("lastModifyUserId") + private String lastModifyUserId; + + + /** 修改时间 **/ + @JsonProperty("lastModifyTime") + private String lastModifyTime; + + + /** 组织id **/ + @JsonProperty("orgnizeId") + private String orgnizeId; + + + /** 部门id **/ + @JsonProperty("departmentId") + private String departmentId; + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/ReceiptinService.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/ReceiptinService.java new file mode 100644 index 00000000..3a1804d0 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/ReceiptinService.java @@ -0,0 +1,35 @@ +package jnpf.receiptin.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import jnpf.receiptin.entity.ReceiptinEntity; +import jnpf.receiptin.model.receiptin.ReceiptinPagination; + +import java.util.List; +/** + * + * 出库单 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-11 + */ +public interface ReceiptinService extends IService { + + List getList(ReceiptinPagination receiptinPagination); + + List getTypeList(ReceiptinPagination receiptinPagination,String dataType); + + + + ReceiptinEntity getInfo(String id); + + void delete(ReceiptinEntity entity); + + void create(ReceiptinEntity entity); + + boolean update( String id, ReceiptinEntity entity); + +// 子表方法 + + //列表子表数据方法 +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/Receiptin_item0Service.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/Receiptin_item0Service.java new file mode 100644 index 00000000..78414ccf --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/Receiptin_item0Service.java @@ -0,0 +1,16 @@ +package jnpf.receiptin.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import jnpf.receiptin.entity.Receiptin_item0Entity; + +/** + * + * jg_receiptin_item0 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-11 + */ +public interface Receiptin_item0Service extends IService { + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/impl/ReceiptinServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/impl/ReceiptinServiceImpl.java new file mode 100644 index 00000000..3170146d --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/impl/ReceiptinServiceImpl.java @@ -0,0 +1,259 @@ +package jnpf.receiptin.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.permission.model.authorize.AuthorizeConditionModel; +import jnpf.permission.service.AuthorizeService; +import jnpf.receiptin.entity.ReceiptinEntity; +import jnpf.receiptin.entity.Receiptin_item0Entity; +import jnpf.receiptin.mapper.ReceiptinMapper; +import jnpf.receiptin.model.receiptin.ReceiptinPagination; +import jnpf.receiptin.service.ReceiptinService; +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; + +/** + * + * 出库单 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-11 + */ +@Service +public class ReceiptinServiceImpl extends ServiceImpl implements ReceiptinService { + + + @Autowired + private UserProvider userProvider; + + @Autowired + private AuthorizeService authorizeService; + + + + + + @Override + public List getList(ReceiptinPagination receiptinPagination){ + String userId=userProvider.get().getUserId(); + List AllIdList =new ArrayList(); + int total=0; + int receiptinNum =0; + QueryWrapper receiptinQueryWrapper=new QueryWrapper<>(); + int receiptin_item0Num =0; + QueryWrapper receiptin_item0QueryWrapper=new QueryWrapper<>(); + boolean pcPermission = false; + boolean appPermission = false; + boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc"); + if(isPc && pcPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object receiptinObj=authorizeService.getCondition(new AuthorizeConditionModel(receiptinQueryWrapper,receiptinPagination.getMenuId(),"receiptin")); + if (ObjectUtil.isEmpty(receiptinObj)){ + return new ArrayList<>(); + } else { + receiptinQueryWrapper = (QueryWrapper)receiptinObj; + receiptinNum++; + } + Object receiptin_item0Obj=authorizeService.getCondition(new AuthorizeConditionModel(receiptin_item0QueryWrapper,receiptinPagination.getMenuId(),"receiptin_item0")); + if (ObjectUtil.isEmpty(receiptin_item0Obj)){ + return new ArrayList<>(); + } else { + receiptin_item0QueryWrapper = (QueryWrapper)receiptin_item0Obj; + receiptin_item0Num++; + } + } + } + if(!isPc && appPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object receiptinObj=authorizeService.getCondition(new AuthorizeConditionModel(receiptinQueryWrapper,receiptinPagination.getMenuId(),"receiptin")); + if (ObjectUtil.isEmpty(receiptinObj)){ + return new ArrayList<>(); + } else { + receiptinQueryWrapper = (QueryWrapper)receiptinObj; + receiptinNum++; + } + + + Object receiptin_item0Obj=authorizeService.getCondition(new AuthorizeConditionModel(receiptin_item0QueryWrapper,receiptinPagination.getMenuId(),"receiptin_item0")); + if (ObjectUtil.isEmpty(receiptin_item0Obj)){ + return new ArrayList<>(); + } else { + receiptin_item0QueryWrapper = (QueryWrapper)receiptin_item0Obj; + receiptin_item0Num++; + } + + + } + } + if(StringUtil.isNotEmpty(receiptinPagination.getDocumentno())){ + receiptinNum++; + receiptinQueryWrapper.lambda().like(ReceiptinEntity::getDocumentno,receiptinPagination.getDocumentno()); + } + + if(StringUtil.isNotEmpty(receiptinPagination.getSuppliername())){ + receiptinNum++; + receiptinQueryWrapper.lambda().like(ReceiptinEntity::getSuppliername,receiptinPagination.getSuppliername()); + } + + if(AllIdList.size()>0){ + receiptinQueryWrapper.lambda().in(ReceiptinEntity::getId, AllIdList); + } + //排序 + if(StringUtil.isEmpty(receiptinPagination.getSidx())){ + receiptinQueryWrapper.lambda().orderByDesc(ReceiptinEntity::getCreatorTime); + }else{ + try { + String sidx = receiptinPagination.getSidx(); + ReceiptinEntity receiptinEntity = new ReceiptinEntity(); + Field declaredField = receiptinEntity.getClass().getDeclaredField(sidx); + declaredField.setAccessible(true); + String value = declaredField.getAnnotation(TableField.class).value(); + receiptinQueryWrapper="asc".equals(receiptinPagination.getSort().toLowerCase())?receiptinQueryWrapper.orderByAsc(value):receiptinQueryWrapper.orderByDesc(value); + } catch (NoSuchFieldException e) { + e.printStackTrace(); + } + } + if((total>0 && AllIdList.size()>0) || total==0){ + Page page=new Page<>(receiptinPagination.getCurrentPage(), receiptinPagination.getPageSize()); + IPage userIPage=this.page(page, receiptinQueryWrapper); + return receiptinPagination.setData(userIPage.getRecords(),userIPage.getTotal()); + }else{ + List list = new ArrayList(); + return receiptinPagination.setData(list, list.size()); + } + } + @Override + public List getTypeList(ReceiptinPagination receiptinPagination,String dataType){ + String userId=userProvider.get().getUserId(); + List AllIdList =new ArrayList(); + int total=0; + int receiptinNum =0; + QueryWrapper receiptinQueryWrapper=new QueryWrapper<>(); + int receiptin_item0Num =0; + QueryWrapper receiptin_item0QueryWrapper=new QueryWrapper<>(); + boolean pcPermission = false; + boolean appPermission = false; + boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc"); + if(isPc && pcPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object receiptinObj=authorizeService.getCondition(new AuthorizeConditionModel(receiptinQueryWrapper,receiptinPagination.getMenuId(),"receiptin")); + if (ObjectUtil.isEmpty(receiptinObj)){ + return new ArrayList<>(); + } else { + receiptinQueryWrapper = (QueryWrapper)receiptinObj; + receiptinNum++; + } + Object receiptin_item0Obj=authorizeService.getCondition(new AuthorizeConditionModel(receiptin_item0QueryWrapper,receiptinPagination.getMenuId(),"receiptin_item0")); + if (ObjectUtil.isEmpty(receiptin_item0Obj)){ + return new ArrayList<>(); + } else { + receiptin_item0QueryWrapper = (QueryWrapper)receiptin_item0Obj; + receiptin_item0Num++; + } + } + } + if(!isPc && appPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object receiptinObj=authorizeService.getCondition(new AuthorizeConditionModel(receiptinQueryWrapper,receiptinPagination.getMenuId(),"receiptin")); + if (ObjectUtil.isEmpty(receiptinObj)){ + return new ArrayList<>(); + } else { + receiptinQueryWrapper = (QueryWrapper)receiptinObj; + receiptinNum++; + } + + + Object receiptin_item0Obj=authorizeService.getCondition(new AuthorizeConditionModel(receiptin_item0QueryWrapper,receiptinPagination.getMenuId(),"receiptin_item0")); + if (ObjectUtil.isEmpty(receiptin_item0Obj)){ + return new ArrayList<>(); + } else { + receiptin_item0QueryWrapper = (QueryWrapper)receiptin_item0Obj; + receiptin_item0Num++; + } + + + } + } + if(StringUtil.isNotEmpty(receiptinPagination.getDocumentno())){ + receiptinNum++; + receiptinQueryWrapper.lambda().like(ReceiptinEntity::getDocumentno,receiptinPagination.getDocumentno()); + } + + if(StringUtil.isNotEmpty(receiptinPagination.getSuppliername())){ + receiptinNum++; + receiptinQueryWrapper.lambda().like(ReceiptinEntity::getSuppliername,receiptinPagination.getSuppliername()); + } + + if(AllIdList.size()>0){ + receiptinQueryWrapper.lambda().in(ReceiptinEntity::getId, AllIdList); + } + //排序 + if(StringUtil.isEmpty(receiptinPagination.getSidx())){ + receiptinQueryWrapper.lambda().orderByDesc(ReceiptinEntity::getCreatorTime); + }else{ + try { + String sidx = receiptinPagination.getSidx(); + ReceiptinEntity receiptinEntity = new ReceiptinEntity(); + Field declaredField = receiptinEntity.getClass().getDeclaredField(sidx); + declaredField.setAccessible(true); + String value = declaredField.getAnnotation(TableField.class).value(); + receiptinQueryWrapper="asc".equals(receiptinPagination.getSort().toLowerCase())?receiptinQueryWrapper.orderByAsc(value):receiptinQueryWrapper.orderByDesc(value); + } catch (NoSuchFieldException e) { + e.printStackTrace(); + } + } + if("0".equals(dataType)){ + if((total>0 && AllIdList.size()>0) || total==0){ + Page page=new Page<>(receiptinPagination.getCurrentPage(), receiptinPagination.getPageSize()); + IPage userIPage=this.page(page, receiptinQueryWrapper); + return receiptinPagination.setData(userIPage.getRecords(),userIPage.getTotal()); + }else{ + List list = new ArrayList(); + return receiptinPagination.setData(list, list.size()); + } + }else{ + return this.list(receiptinQueryWrapper); + } + } + + @Override + public ReceiptinEntity getInfo(String id){ + QueryWrapper queryWrapper=new QueryWrapper<>(); + queryWrapper.lambda().eq(ReceiptinEntity::getId,id); + return this.getOne(queryWrapper); + } + + @Override + public void create(ReceiptinEntity entity){ + this.save(entity); + } + + @Override + public boolean update(String id, ReceiptinEntity entity){ + entity.setId(id); + return this.updateById(entity); + } + @Override + public void delete(ReceiptinEntity 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/receiptin/service/impl/Receiptin_item0ServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/impl/Receiptin_item0ServiceImpl.java new file mode 100644 index 00000000..497f1428 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptin/service/impl/Receiptin_item0ServiceImpl.java @@ -0,0 +1,21 @@ +package jnpf.receiptin.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import jnpf.receiptin.entity.Receiptin_item0Entity; +import jnpf.receiptin.mapper.Receiptin_item0Mapper; +import jnpf.receiptin.service.Receiptin_item0Service; +import org.springframework.stereotype.Service; + +/** + * + * jg_receiptin_item0 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-11 + */ +@Service +public class Receiptin_item0ServiceImpl extends ServiceImpl implements Receiptin_item0Service { + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/controller/ReceiptoutController.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/controller/ReceiptoutController.java new file mode 100644 index 00000000..6b1ec9f4 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/controller/ReceiptoutController.java @@ -0,0 +1,415 @@ + + +package jnpf.receiptout.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.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.receiptout.entity.ReceiptoutEntity; +import jnpf.receiptout.model.receiptout.*; +import jnpf.receiptout.service.ReceiptoutService; +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; + +/** + * + * receiptout + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Slf4j +@RestController +@Api(tags = "receiptout" , value = "example") +@RequestMapping("/api/example/Receiptout") +public class ReceiptoutController { + + @Autowired + private GeneraterSwapUtil generaterSwapUtil; + + @Autowired + private ConfigValueUtil configValueUtil; + + @Autowired + private UserProvider userProvider; + + @Autowired + private ReceiptoutService receiptoutService; + + + + + /** + * 列表 + * + * @param receiptoutPagination + * @return + */ + @PostMapping("/getList") + public ActionResult list(@RequestBody ReceiptoutPagination receiptoutPagination)throws IOException{ + List list= receiptoutService.getList(receiptoutPagination); + //处理id字段转名称,若无需转或者为空可删除 + for(ReceiptoutEntity entity:list){ + entity.setCreatorUserName(generaterSwapUtil.userSelectValue(entity.getCreatorUserName())); + entity.setCreatorUserId(generaterSwapUtil.userSelectValue(entity.getCreatorUserId())); + entity.setLastModifyUserName(generaterSwapUtil.userSelectValue(entity.getLastModifyUserName())); + entity.setLastModifyUserId(generaterSwapUtil.userSelectValue(entity.getLastModifyUserId())); + if (StringUtil.isNotBlank(entity.getOrgnizeId())){ + entity.setOrgnizeId(generaterSwapUtil.comSelectValue(entity.getOrgnizeId(), "all")); + } + + entity.setDepartmentId(generaterSwapUtil.posSelectValue(entity.getDepartmentId())); + } + List listVO=JsonUtil.getJsonToList(list,ReceiptoutListVO.class); + for(ReceiptoutListVO receiptoutVO:listVO){ + } + + + PageListVO vo=new PageListVO(); + vo.setList(listVO); + PaginationVO page=JsonUtil.getJsonToBean(receiptoutPagination,PaginationVO.class); + vo.setPagination(page); + return ActionResult.success(vo); + } + + + /** + * 创建 + * + * @param receiptoutCrForm + * @return + */ + @PostMapping + @Transactional + public ActionResult create(@RequestBody @Valid ReceiptoutCrForm receiptoutCrForm) throws DataException { + String mainId =RandomUtil.uuId(); + UserInfo userInfo=userProvider.get(); + receiptoutCrForm.setCreatorTime(DateUtil.getNow()); + receiptoutCrForm.setCreatorUserName(userInfo.getUserId()); + receiptoutCrForm.setCreatorUserId(userInfo.getUserId()); + receiptoutCrForm.setOrgnizeId(StringUtil.isEmpty(userInfo.getDepartmentId()) ? userInfo.getOrganizeId() : userInfo.getDepartmentId()); + if(userInfo.getPositionIds()!=null&&userInfo.getPositionIds().length>0){ + receiptoutCrForm.setDepartmentId(userInfo.getPositionIds()[0]); + } + ReceiptoutEntity entity = JsonUtil.getJsonToBean(receiptoutCrForm, ReceiptoutEntity.class); + entity.setId(mainId); + receiptoutService.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(ReceiptoutPaginationExportModel receiptoutPaginationExportModel) throws IOException { + if (StringUtil.isEmpty(receiptoutPaginationExportModel.getSelectKey())){ + return ActionResult.fail("请选择导出字段"); + } + ReceiptoutPagination receiptoutPagination=JsonUtil.getJsonToBean(receiptoutPaginationExportModel, ReceiptoutPagination.class); + List list= receiptoutService.getTypeList(receiptoutPagination,receiptoutPaginationExportModel.getDataType()); + //处理id字段转名称,若无需转或者为空可删除 + for(ReceiptoutEntity entity:list){ + entity.setCreatorUserName(generaterSwapUtil.userSelectValue(entity.getCreatorUserName())); + entity.setCreatorUserId(generaterSwapUtil.userSelectValue(entity.getCreatorUserId())); + entity.setLastModifyUserName(generaterSwapUtil.userSelectValue(entity.getLastModifyUserName())); + entity.setLastModifyUserId(generaterSwapUtil.userSelectValue(entity.getLastModifyUserId())); + entity.setOrgnizeId(generaterSwapUtil.comSelectValue(entity.getOrgnizeId(), "all")); + entity.setDepartmentId(generaterSwapUtil.posSelectValue(entity.getDepartmentId())); + } + List listVO=JsonUtil.getJsonToList(list,ReceiptoutListVO.class); + for(ReceiptoutListVO receiptoutVO:listVO){ + } + + //转换为map输出 + List>mapList=JsonUtil.getJsonToListMap(JsonUtil.getObjectToStringDateFormat(listVO,"yyyy-MM-dd HH:mm:ss")); + String[]keys=!StringUtil.isEmpty(receiptoutPaginationExportModel.getSelectKey())?receiptoutPaginationExportModel.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 "documentNo" : + entitys.add(new ExcelExportEntity("单据编号" ,"documentNo")); + break; + case "customerName" : + entitys.add(new ExcelExportEntity("客户名称" ,"customerName")); + break; + case "amount" : + entitys.add(new ExcelExportEntity("出库金额" ,"amount")); + break; + case "num" : + entitys.add(new ExcelExportEntity("出库数量" ,"num")); + break; + case "currency" : + entitys.add(new ExcelExportEntity("币别" ,"currency")); + break; + case "issueDate" : + entitys.add(new ExcelExportEntity("出库日期" ,"issueDate")); + break; + case "sourceNo" : + entitys.add(new ExcelExportEntity("来源单号" ,"sourceNo")); + break; + case "type" : + entitys.add(new ExcelExportEntity("业务类型" ,"type")); + break; + case "remark" : + entitys.add(new ExcelExportEntity("备注" ,"remark")); + break; + case "status" : + entitys.add(new ExcelExportEntity("单据状态" ,"status")); + break; + case "creatorTime" : + entitys.add(new ExcelExportEntity("创建时间" ,"creatorTime")); + break; + case "creatorUserName" : + entitys.add(new ExcelExportEntity("创建人" ,"creatorUserName")); + break; + case "creatorUserId" : + entitys.add(new ExcelExportEntity("创建人id" ,"creatorUserId")); + break; + case "lastModifyUserName" : + entitys.add(new ExcelExportEntity("修改人名称" ,"lastModifyUserName")); + break; + case "lastModifyUserId" : + entitys.add(new ExcelExportEntity("修改人id" ,"lastModifyUserId")); + break; + case "lastModifyTime" : + entitys.add(new ExcelExportEntity("修改时间" ,"lastModifyTime")); + break; + case "orgnizeId" : + entitys.add(new ExcelExportEntity("组织id" ,"orgnizeId")); + break; + case "departmentId" : + entitys.add(new ExcelExportEntity("部门id" ,"departmentId")); + 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){ + ReceiptoutEntity entity= receiptoutService.getInfo(id); + ReceiptoutInfoVO vo=JsonUtil.getJsonToBean(entity, ReceiptoutInfoVO.class); + if(vo.getCreatorTime()!=null){ + vo.setCreatorTime(vo.getCreatorTime()); + } + vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); + vo.setCreatorUserId(generaterSwapUtil.userSelectValue(vo.getCreatorUserId())); + vo.setLastModifyUserName(generaterSwapUtil.userSelectValue(vo.getLastModifyUserName())); + vo.setLastModifyUserId(generaterSwapUtil.userSelectValue(vo.getLastModifyUserId())); + if(vo.getLastModifyTime()!=null){ + vo.setLastModifyTime(vo.getLastModifyTime()); + } + if (StringUtil.isNotBlank(vo.getOrgnizeId())){ + vo.setOrgnizeId(generaterSwapUtil.comSelectValue(vo.getOrgnizeId(), "all")); + } + + vo.setDepartmentId(generaterSwapUtil.posSelectValue(vo.getDepartmentId())); + + //子表 + //副表 + return ActionResult.success(vo); + } + + /** + * 表单信息(详情页) + * + * @param id + * @return + */ + @GetMapping("/detail/{id}") + public ActionResult detailInfo(@PathVariable("id") String id){ + ReceiptoutEntity entity= receiptoutService.getInfo(id); + ReceiptoutInfoVO vo=JsonUtil.getJsonToBean(entity, ReceiptoutInfoVO.class); + + //子表数据转换 + + //附表数据转换 + +//添加到详情表单对象中 + vo.setCreatorUserName(generaterSwapUtil.userSelectValue(vo.getCreatorUserName())); + vo.setCreatorUserId(generaterSwapUtil.userSelectValue(vo.getCreatorUserId())); + vo.setLastModifyUserName(generaterSwapUtil.userSelectValue(vo.getLastModifyUserName())); + vo.setLastModifyUserId(generaterSwapUtil.userSelectValue(vo.getLastModifyUserId())); + if (StringUtil.isNotBlank(vo.getOrgnizeId())){ + vo.setOrgnizeId(generaterSwapUtil.comSelectValue(vo.getOrgnizeId(), "all")); + } + + vo.setDepartmentId(generaterSwapUtil.posSelectValue(vo.getDepartmentId())); + + return ActionResult.success(vo); + } + + + + + /** + * 更新 + * + * @param id + * @return + */ + @PutMapping("/{id}") + @Transactional + public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid ReceiptoutUpForm receiptoutUpForm) throws DataException { + UserInfo userInfo=userProvider.get(); + ReceiptoutEntity entity= receiptoutService.getInfo(id); + if(entity!=null){ + receiptoutUpForm.setLastModifyUserName(userInfo.getUserId()); + receiptoutUpForm.setLastModifyUserId(userInfo.getUserId()); + receiptoutUpForm.setLastModifyTime(DateUtil.getNow()); + receiptoutUpForm.setOrgnizeId(entity.getOrgnizeId()); + receiptoutUpForm.setDepartmentId(entity.getDepartmentId()); + ReceiptoutEntity subentity=JsonUtil.getJsonToBean(receiptoutUpForm, ReceiptoutEntity.class); + subentity.setCreatorTime(entity.getCreatorTime()); + subentity.setCreatorUserName(entity.getCreatorUserName()); + subentity.setCreatorUserId(entity.getCreatorUserId()); + receiptoutService.update(id, subentity); + return ActionResult.success("更新成功"); + }else{ + return ActionResult.fail("更新失败,数据不存在"); + } + } + + + + /** + * 删除 + * + * @param id + * @return + */ + @DeleteMapping("/{id}") + @Transactional + public ActionResult delete(@PathVariable("id") String id){ + ReceiptoutEntity entity= receiptoutService.getInfo(id); + if(entity!=null){ + receiptoutService.delete(entity); + + } + return ActionResult.success("删除成功"); + } + + + + + + + + + + + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/entity/ReceiptoutEntity.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/entity/ReceiptoutEntity.java new file mode 100644 index 00000000..d58188ae --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/entity/ReceiptoutEntity.java @@ -0,0 +1,99 @@ +package jnpf.receiptout.entity; + +import com.alibaba.fastjson.annotation.JSONField; +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; +import java.math.BigDecimal; +import java.math.BigDecimal; +import com.fasterxml.jackson.annotation.JsonProperty; + + +/** + * + * 出库单 + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +@TableName("jg_receiptout") +public class ReceiptoutEntity { + + @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("DOCUMENT_NO") + private String documentNo; + + @TableField("CUSTOMER_CODE") + private String customerCode; + + @TableField("CUSTOMER_NAME") + private String customerName; + + @TableField("AMOUNT") + private BigDecimal amount; + + @TableField("NUM") + private BigDecimal num; + + @TableField("CURRENCY") + private String currency; + + @TableField("ISSUE_DATE") + private Date issueDate; + + @TableField("TYPE") + private String type; + + @TableField("STATUS") + private String status; + + @TableField("SOURCE_NO") + private String sourceNo; + + @TableField("REMARK") + private String remark; + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/entity/Receiptout_item0Entity.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/entity/Receiptout_item0Entity.java new file mode 100644 index 00000000..be3531fe --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/entity/Receiptout_item0Entity.java @@ -0,0 +1,113 @@ +package jnpf.receiptout.entity; + +import com.alibaba.fastjson.annotation.JSONField; +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; +import java.math.BigDecimal; +import java.math.BigDecimal; +import java.math.BigDecimal; +import java.math.BigDecimal; +import com.fasterxml.jackson.annotation.JsonProperty; + + +/** + * + * 出库明细 + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +@TableName("jg_receiptout_item0") +public class Receiptout_item0Entity { + + @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("RECEIPTIN_ID") + private String receiptinId; + + @TableField("POUNDLIST_ID") + private String poundlistId; + + @TableField("LICENSE_NO") + private String licenseNo; + + @TableField("MATERIAL_CODE") + private String materialCode; + + @TableField("MATERIAL_NAME") + private String materialName; + + @TableField("AREA_CODE") + private String areaCode; + + @TableField("AREA_NAME") + private String areaName; + + @TableField("UNIT") + private String unit; + + @TableField("DELIVERY_NUM") + private BigDecimal deliveryNum; + + @TableField("BATCH_NO") + private String batchNo; + + @TableField("PRICE") + private BigDecimal price; + + @TableField("RATE") + private String rate; + + @TableField("AMOUNT") + private BigDecimal amount; + + @TableField("RATE_AMOUNT") + private BigDecimal rateAmount; + + @TableField("REMARK") + private String remark; + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/mapper/ReceiptoutMapper.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/mapper/ReceiptoutMapper.java new file mode 100644 index 00000000..cb1424e9 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/mapper/ReceiptoutMapper.java @@ -0,0 +1,17 @@ +package jnpf.receiptout.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import jnpf.receiptout.entity.ReceiptoutEntity; + +/** + * + * receiptout + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-12 + */ +public interface ReceiptoutMapper extends BaseMapper { + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/mapper/Receiptout_item0Mapper.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/mapper/Receiptout_item0Mapper.java new file mode 100644 index 00000000..d0f16de1 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/mapper/Receiptout_item0Mapper.java @@ -0,0 +1,17 @@ +package jnpf.receiptout.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import jnpf.receiptout.entity.Receiptout_item0Entity; + +/** + * + * jg_receiptout_item0 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-12 + */ +public interface Receiptout_item0Mapper extends BaseMapper { + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutCrForm.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutCrForm.java new file mode 100644 index 00000000..1b576ead --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutCrForm.java @@ -0,0 +1,96 @@ + + +package jnpf.receiptout.model.receiptout; + +import lombok.Data; +import java.util.List; +import java.math.BigDecimal; +import com.fasterxml.jackson.annotation.JsonProperty; + + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +public class ReceiptoutCrForm { + + /** 单据编号 **/ + @JsonProperty("documentNo") + private String documentNo; + + /** 客户名称 **/ + @JsonProperty("customerName") + private String customerName; + + /** 出库金额 **/ + @JsonProperty("amount") + private String amount; + + /** 出库数量 **/ + @JsonProperty("num") + private String num; + + /** 币别 **/ + @JsonProperty("currency") + private String currency; + + /** 出库日期 **/ + @JsonProperty("issueDate") + private Long issueDate; + + /** 来源单号 **/ + @JsonProperty("sourceNo") + private String sourceNo; + + /** 业务类型 **/ + @JsonProperty("type") + private String type; + + /** 备注 **/ + @JsonProperty("remark") + private String remark; + + /** 单据状态 **/ + @JsonProperty("status") + private String status; + + /** 创建时间 **/ + @JsonProperty("creatorTime") + private String creatorTime; + + /** 创建人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + /** 创建人id **/ + @JsonProperty("creatorUserId") + private String creatorUserId; + + /** 修改人名称 **/ + @JsonProperty("lastModifyUserName") + private String lastModifyUserName; + + /** 修改人id **/ + @JsonProperty("lastModifyUserId") + private String lastModifyUserId; + + /** 修改时间 **/ + @JsonProperty("lastModifyTime") + private String lastModifyTime; + + /** 组织id **/ + @JsonProperty("orgnizeId") + private String orgnizeId; + + /** 部门id **/ + @JsonProperty("departmentId") + private String departmentId; + + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutInfoVO.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutInfoVO.java new file mode 100644 index 00000000..851f9d83 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutInfoVO.java @@ -0,0 +1,100 @@ + + + +package jnpf.receiptout.model.receiptout; + +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.List; +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +public class ReceiptoutInfoVO{ + /** 主键 **/ + @JsonProperty("id") + private String id; + + /** 单据编号 **/ + @JsonProperty("documentNo") + private String documentNo; + + /** 客户名称 **/ + @JsonProperty("customerName") + private String customerName; + + /** 出库金额 **/ + @JsonProperty("amount") + private String amount; + + /** 出库数量 **/ + @JsonProperty("num") + private String num; + + /** 币别 **/ + @JsonProperty("currency") + private String currency; + + /** 出库日期 **/ + @JsonProperty("issueDate") + private Long issueDate; + + /** 来源单号 **/ + @JsonProperty("sourceNo") + private String sourceNo; + + /** 业务类型 **/ + @JsonProperty("type") + private String type; + + /** 备注 **/ + @JsonProperty("remark") + private String remark; + + /** 单据状态 **/ + @JsonProperty("status") + private String status; + + /** 创建时间 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("creatorTime") + private Date creatorTime; + + /** 创建人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + /** 创建人id **/ + @JsonProperty("creatorUserId") + private String creatorUserId; + + /** 修改人名称 **/ + @JsonProperty("lastModifyUserName") + private String lastModifyUserName; + + /** 修改人id **/ + @JsonProperty("lastModifyUserId") + private String lastModifyUserId; + + /** 修改时间 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("lastModifyTime") + private Date lastModifyTime; + + /** 组织id **/ + @JsonProperty("orgnizeId") + private String orgnizeId; + + /** 部门id **/ + @JsonProperty("departmentId") + private String departmentId; + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutListQuery.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutListQuery.java new file mode 100644 index 00000000..365a13df --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutListQuery.java @@ -0,0 +1,27 @@ +package jnpf.receiptout.model.receiptout; + +import lombok.Data; +import java.util.Date; +import jnpf.base.Pagination; +import java.util.List; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +public class ReceiptoutListQuery extends Pagination { + + /** 单据编号 */ + private String documentNo; + + /** 客户名称 */ + private String customerName; + /** + * 菜单id + */ + private String menuId; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutListVO.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutListVO.java new file mode 100644 index 00000000..905cc4aa --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutListVO.java @@ -0,0 +1,120 @@ + + +package jnpf.receiptout.model.receiptout; + + +import lombok.Data; +import java.sql.Time; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.math.BigDecimal; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +public class ReceiptoutListVO{ + + /** 主键 */ + private String id; + + + /** 单据编号 **/ + @JsonProperty("documentNo") + private String documentNo; + + + /** 客户名称 **/ + @JsonProperty("customerName") + private String customerName; + + + /** 出库金额 **/ + @JsonProperty("amount") + private String amount; + + + /** 出库数量 **/ + @JsonProperty("num") + private String num; + + + /** 币别 **/ + @JsonProperty("currency") + private String currency; + + + /** 出库日期 **/ + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + @JsonProperty("issueDate") + private Date issueDate; + + + /** 来源单号 **/ + @JsonProperty("sourceNo") + private String sourceNo; + + + /** 业务类型 **/ + @JsonProperty("type") + private String type; + + + /** 备注 **/ + @JsonProperty("remark") + private String remark; + + + /** 单据状态 **/ + @JsonProperty("status") + private String status; + + + /** 创建时间 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("creatorTime") + private Date creatorTime; + + + /** 创建人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + + /** 创建人id **/ + @JsonProperty("creatorUserId") + private String creatorUserId; + + + /** 修改人名称 **/ + @JsonProperty("lastModifyUserName") + private String lastModifyUserName; + + + /** 修改人id **/ + @JsonProperty("lastModifyUserId") + private String lastModifyUserId; + + + /** 修改时间 **/ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @JsonProperty("lastModifyTime") + private Date lastModifyTime; + + + /** 组织id **/ + @JsonProperty("orgnizeId") + private String orgnizeId; + + + /** 部门id **/ + @JsonProperty("departmentId") + private String departmentId; + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutPagination.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutPagination.java new file mode 100644 index 00000000..80a875a0 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutPagination.java @@ -0,0 +1,28 @@ +package jnpf.receiptout.model.receiptout; + + +import lombok.Data; +import jnpf.base.Pagination; +import java.util.List; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +public class ReceiptoutPagination extends Pagination { + + /** 单据编号 */ + private String documentNo; + + /** 客户名称 */ + private String customerName; + /** + * 菜单id + */ + private String menuId; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutPaginationExportModel.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutPaginationExportModel.java new file mode 100644 index 00000000..cb3d7e73 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutPaginationExportModel.java @@ -0,0 +1,29 @@ +package jnpf.receiptout.model.receiptout; + +import lombok.Data; +import jnpf.base.Pagination; +import java.util.*; +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +public class ReceiptoutPaginationExportModel extends Pagination { + + private String selectKey; + + private String json; + + private String dataType; + + + /** 单据编号 */ + private String documentNo; + + /** 客户名称 */ + private String customerName; +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutUpForm.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutUpForm.java new file mode 100644 index 00000000..5c1def00 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/model/receiptout/ReceiptoutUpForm.java @@ -0,0 +1,116 @@ + + +package jnpf.receiptout.model.receiptout; + +import lombok.Data; +import java.util.List; +import java.math.BigDecimal; +import com.fasterxml.jackson.annotation.JsonProperty; + +import lombok.Data; + +/** + * + * + * @版本: V3.2.0 + * @版权: LINKAGE-BOOT + * @作者: LINKAGE-BOOT研发团队 + * @日期: 2023-01-12 + */ +@Data +public class ReceiptoutUpForm{ + /** 主键 */ + private String id; + + + /** 单据编号 **/ + @JsonProperty("documentNo") + private String documentNo; + + + /** 客户名称 **/ + @JsonProperty("customerName") + private String customerName; + + + /** 出库金额 **/ + @JsonProperty("amount") + private String amount; + + + /** 出库数量 **/ + @JsonProperty("num") + private String num; + + + /** 币别 **/ + @JsonProperty("currency") + private String currency; + + + /** 出库日期 **/ + @JsonProperty("issueDate") + private Long issueDate; + + + /** 来源单号 **/ + @JsonProperty("sourceNo") + private String sourceNo; + + + /** 业务类型 **/ + @JsonProperty("type") + private String type; + + + /** 备注 **/ + @JsonProperty("remark") + private String remark; + + + /** 单据状态 **/ + @JsonProperty("status") + private String status; + + + /** 创建时间 **/ + @JsonProperty("creatorTime") + private String creatorTime; + + + /** 创建人 **/ + @JsonProperty("creatorUserName") + private String creatorUserName; + + + /** 创建人id **/ + @JsonProperty("creatorUserId") + private String creatorUserId; + + + /** 修改人名称 **/ + @JsonProperty("lastModifyUserName") + private String lastModifyUserName; + + + /** 修改人id **/ + @JsonProperty("lastModifyUserId") + private String lastModifyUserId; + + + /** 修改时间 **/ + @JsonProperty("lastModifyTime") + private String lastModifyTime; + + + /** 组织id **/ + @JsonProperty("orgnizeId") + private String orgnizeId; + + + /** 部门id **/ + @JsonProperty("departmentId") + private String departmentId; + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/ReceiptoutService.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/ReceiptoutService.java new file mode 100644 index 00000000..9d0cf4bb --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/ReceiptoutService.java @@ -0,0 +1,35 @@ +package jnpf.receiptout.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import jnpf.receiptout.entity.ReceiptoutEntity; +import jnpf.receiptout.model.receiptout.ReceiptoutPagination; + +import java.util.List; +/** + * + * receiptout + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-12 + */ +public interface ReceiptoutService extends IService { + + List getList(ReceiptoutPagination receiptoutPagination); + + List getTypeList(ReceiptoutPagination receiptoutPagination,String dataType); + + + + ReceiptoutEntity getInfo(String id); + + void delete(ReceiptoutEntity entity); + + void create(ReceiptoutEntity entity); + + boolean update( String id, ReceiptoutEntity entity); + +// 子表方法 + + //列表子表数据方法 +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/Receiptout_item0Service.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/Receiptout_item0Service.java new file mode 100644 index 00000000..12580a38 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/Receiptout_item0Service.java @@ -0,0 +1,17 @@ +package jnpf.receiptout.service; + + +import com.baomidou.mybatisplus.extension.service.IService; +import jnpf.receiptout.entity.Receiptout_item0Entity; + +/** + * + * jg_receiptout_item0 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-12 + */ +public interface Receiptout_item0Service extends IService { + +} diff --git a/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/impl/ReceiptoutServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/impl/ReceiptoutServiceImpl.java new file mode 100644 index 00000000..090514a0 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/impl/ReceiptoutServiceImpl.java @@ -0,0 +1,259 @@ +package jnpf.receiptout.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.permission.model.authorize.AuthorizeConditionModel; +import jnpf.permission.service.AuthorizeService; +import jnpf.receiptout.entity.ReceiptoutEntity; +import jnpf.receiptout.entity.Receiptout_item0Entity; +import jnpf.receiptout.mapper.ReceiptoutMapper; +import jnpf.receiptout.model.receiptout.ReceiptoutPagination; +import jnpf.receiptout.service.ReceiptoutService; +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; + +/** + * + * receiptout + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-12 + */ +@Service +public class ReceiptoutServiceImpl extends ServiceImpl implements ReceiptoutService { + + + @Autowired + private UserProvider userProvider; + + @Autowired + private AuthorizeService authorizeService; + + + + + + @Override + public List getList(ReceiptoutPagination receiptoutPagination){ + String userId=userProvider.get().getUserId(); + List AllIdList =new ArrayList(); + int total=0; + int receiptoutNum =0; + QueryWrapper receiptoutQueryWrapper=new QueryWrapper<>(); + int receiptout_item0Num =0; + QueryWrapper receiptout_item0QueryWrapper=new QueryWrapper<>(); + boolean pcPermission = false; + boolean appPermission = false; + boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc"); + if(isPc && pcPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object receiptoutObj=authorizeService.getCondition(new AuthorizeConditionModel(receiptoutQueryWrapper,receiptoutPagination.getMenuId(),"receiptout")); + if (ObjectUtil.isEmpty(receiptoutObj)){ + return new ArrayList<>(); + } else { + receiptoutQueryWrapper = (QueryWrapper)receiptoutObj; + receiptoutNum++; + } + Object receiptout_item0Obj=authorizeService.getCondition(new AuthorizeConditionModel(receiptout_item0QueryWrapper,receiptoutPagination.getMenuId(),"receiptout_item0")); + if (ObjectUtil.isEmpty(receiptout_item0Obj)){ + return new ArrayList<>(); + } else { + receiptout_item0QueryWrapper = (QueryWrapper)receiptout_item0Obj; + receiptout_item0Num++; + } + } + } + if(!isPc && appPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object receiptoutObj=authorizeService.getCondition(new AuthorizeConditionModel(receiptoutQueryWrapper,receiptoutPagination.getMenuId(),"receiptout")); + if (ObjectUtil.isEmpty(receiptoutObj)){ + return new ArrayList<>(); + } else { + receiptoutQueryWrapper = (QueryWrapper)receiptoutObj; + receiptoutNum++; + } + + + Object receiptout_item0Obj=authorizeService.getCondition(new AuthorizeConditionModel(receiptout_item0QueryWrapper,receiptoutPagination.getMenuId(),"receiptout_item0")); + if (ObjectUtil.isEmpty(receiptout_item0Obj)){ + return new ArrayList<>(); + } else { + receiptout_item0QueryWrapper = (QueryWrapper)receiptout_item0Obj; + receiptout_item0Num++; + } + + + } + } + if(StringUtil.isNotEmpty(receiptoutPagination.getDocumentNo())){ + receiptoutNum++; + receiptoutQueryWrapper.lambda().like(ReceiptoutEntity::getDocumentNo,receiptoutPagination.getDocumentNo()); + } + + if(StringUtil.isNotEmpty(receiptoutPagination.getCustomerName())){ + receiptoutNum++; + receiptoutQueryWrapper.lambda().like(ReceiptoutEntity::getCustomerName,receiptoutPagination.getCustomerName()); + } + + if(AllIdList.size()>0){ + receiptoutQueryWrapper.lambda().in(ReceiptoutEntity::getId, AllIdList); + } + //排序 + if(StringUtil.isEmpty(receiptoutPagination.getSidx())){ + receiptoutQueryWrapper.lambda().orderByDesc(ReceiptoutEntity::getCreatorTime); + }else{ + try { + String sidx = receiptoutPagination.getSidx(); + ReceiptoutEntity receiptoutEntity = new ReceiptoutEntity(); + Field declaredField = receiptoutEntity.getClass().getDeclaredField(sidx); + declaredField.setAccessible(true); + String value = declaredField.getAnnotation(TableField.class).value(); + receiptoutQueryWrapper="asc".equals(receiptoutPagination.getSort().toLowerCase())?receiptoutQueryWrapper.orderByAsc(value):receiptoutQueryWrapper.orderByDesc(value); + } catch (NoSuchFieldException e) { + e.printStackTrace(); + } + } + if((total>0 && AllIdList.size()>0) || total==0){ + Page page=new Page<>(receiptoutPagination.getCurrentPage(), receiptoutPagination.getPageSize()); + IPage userIPage=this.page(page, receiptoutQueryWrapper); + return receiptoutPagination.setData(userIPage.getRecords(),userIPage.getTotal()); + }else{ + List list = new ArrayList(); + return receiptoutPagination.setData(list, list.size()); + } + } + @Override + public List getTypeList(ReceiptoutPagination receiptoutPagination,String dataType){ + String userId=userProvider.get().getUserId(); + List AllIdList =new ArrayList(); + int total=0; + int receiptoutNum =0; + QueryWrapper receiptoutQueryWrapper=new QueryWrapper<>(); + int receiptout_item0Num =0; + QueryWrapper receiptout_item0QueryWrapper=new QueryWrapper<>(); + boolean pcPermission = false; + boolean appPermission = false; + boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc"); + if(isPc && pcPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object receiptoutObj=authorizeService.getCondition(new AuthorizeConditionModel(receiptoutQueryWrapper,receiptoutPagination.getMenuId(),"receiptout")); + if (ObjectUtil.isEmpty(receiptoutObj)){ + return new ArrayList<>(); + } else { + receiptoutQueryWrapper = (QueryWrapper)receiptoutObj; + receiptoutNum++; + } + Object receiptout_item0Obj=authorizeService.getCondition(new AuthorizeConditionModel(receiptout_item0QueryWrapper,receiptoutPagination.getMenuId(),"receiptout_item0")); + if (ObjectUtil.isEmpty(receiptout_item0Obj)){ + return new ArrayList<>(); + } else { + receiptout_item0QueryWrapper = (QueryWrapper)receiptout_item0Obj; + receiptout_item0Num++; + } + } + } + if(!isPc && appPermission){ + if (!userProvider.get().getIsAdministrator()){ + Object receiptoutObj=authorizeService.getCondition(new AuthorizeConditionModel(receiptoutQueryWrapper,receiptoutPagination.getMenuId(),"receiptout")); + if (ObjectUtil.isEmpty(receiptoutObj)){ + return new ArrayList<>(); + } else { + receiptoutQueryWrapper = (QueryWrapper)receiptoutObj; + receiptoutNum++; + } + + + Object receiptout_item0Obj=authorizeService.getCondition(new AuthorizeConditionModel(receiptout_item0QueryWrapper,receiptoutPagination.getMenuId(),"receiptout_item0")); + if (ObjectUtil.isEmpty(receiptout_item0Obj)){ + return new ArrayList<>(); + } else { + receiptout_item0QueryWrapper = (QueryWrapper)receiptout_item0Obj; + receiptout_item0Num++; + } + + + } + } + if(StringUtil.isNotEmpty(receiptoutPagination.getDocumentNo())){ + receiptoutNum++; + receiptoutQueryWrapper.lambda().like(ReceiptoutEntity::getDocumentNo,receiptoutPagination.getDocumentNo()); + } + + if(StringUtil.isNotEmpty(receiptoutPagination.getCustomerName())){ + receiptoutNum++; + receiptoutQueryWrapper.lambda().like(ReceiptoutEntity::getCustomerName,receiptoutPagination.getCustomerName()); + } + + if(AllIdList.size()>0){ + receiptoutQueryWrapper.lambda().in(ReceiptoutEntity::getId, AllIdList); + } + //排序 + if(StringUtil.isEmpty(receiptoutPagination.getSidx())){ + receiptoutQueryWrapper.lambda().orderByDesc(ReceiptoutEntity::getCreatorTime); + }else{ + try { + String sidx = receiptoutPagination.getSidx(); + ReceiptoutEntity receiptoutEntity = new ReceiptoutEntity(); + Field declaredField = receiptoutEntity.getClass().getDeclaredField(sidx); + declaredField.setAccessible(true); + String value = declaredField.getAnnotation(TableField.class).value(); + receiptoutQueryWrapper="asc".equals(receiptoutPagination.getSort().toLowerCase())?receiptoutQueryWrapper.orderByAsc(value):receiptoutQueryWrapper.orderByDesc(value); + } catch (NoSuchFieldException e) { + e.printStackTrace(); + } + } + if("0".equals(dataType)){ + if((total>0 && AllIdList.size()>0) || total==0){ + Page page=new Page<>(receiptoutPagination.getCurrentPage(), receiptoutPagination.getPageSize()); + IPage userIPage=this.page(page, receiptoutQueryWrapper); + return receiptoutPagination.setData(userIPage.getRecords(),userIPage.getTotal()); + }else{ + List list = new ArrayList(); + return receiptoutPagination.setData(list, list.size()); + } + }else{ + return this.list(receiptoutQueryWrapper); + } + } + + @Override + public ReceiptoutEntity getInfo(String id){ + QueryWrapper queryWrapper=new QueryWrapper<>(); + queryWrapper.lambda().eq(ReceiptoutEntity::getId,id); + return this.getOne(queryWrapper); + } + + @Override + public void create(ReceiptoutEntity entity){ + this.save(entity); + } + + @Override + public boolean update(String id, ReceiptoutEntity entity){ + entity.setId(id); + return this.updateById(entity); + } + @Override + public void delete(ReceiptoutEntity 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/receiptout/service/impl/Receiptout_item0ServiceImpl.java b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/impl/Receiptout_item0ServiceImpl.java new file mode 100644 index 00000000..7cd926c3 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/java/jnpf/receiptout/service/impl/Receiptout_item0ServiceImpl.java @@ -0,0 +1,21 @@ +package jnpf.receiptout.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import jnpf.receiptout.entity.Receiptout_item0Entity; +import jnpf.receiptout.mapper.Receiptout_item0Mapper; +import jnpf.receiptout.service.Receiptout_item0Service; +import org.springframework.stereotype.Service; + +/** + * + * jg_receiptout_item0 + * 版本: V3.2.0 + * 版权: LINKAGE-BOOT + * 作者: LINKAGE-BOOT研发团队 + * 日期: 2023-01-12 + */ +@Service +public class Receiptout_item0ServiceImpl extends ServiceImpl implements Receiptout_item0Service { + + +} \ No newline at end of file diff --git a/SC-boot/linkage-scm/src/main/resources/PaymentMapper.xml b/SC-boot/linkage-scm/src/main/resources/PaymentMapper.xml new file mode 100644 index 00000000..d260b6e8 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/resources/PaymentMapper.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/SC-boot/linkage-scm/src/main/resources/Payment_item0Mapper.xml b/SC-boot/linkage-scm/src/main/resources/Payment_item0Mapper.xml new file mode 100644 index 00000000..92e6391a --- /dev/null +++ b/SC-boot/linkage-scm/src/main/resources/Payment_item0Mapper.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/SC-boot/linkage-scm/src/main/resources/ReceiptinMapper.xml b/SC-boot/linkage-scm/src/main/resources/ReceiptinMapper.xml new file mode 100644 index 00000000..f2bf5807 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/resources/ReceiptinMapper.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/SC-boot/linkage-scm/src/main/resources/Receiptin_item0Mapper.xml b/SC-boot/linkage-scm/src/main/resources/Receiptin_item0Mapper.xml new file mode 100644 index 00000000..ae158538 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/resources/Receiptin_item0Mapper.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/SC-boot/linkage-scm/src/main/resources/ReceiptoutMapper.xml b/SC-boot/linkage-scm/src/main/resources/ReceiptoutMapper.xml new file mode 100644 index 00000000..b9c271d2 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/resources/ReceiptoutMapper.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/SC-boot/linkage-scm/src/main/resources/Receiptout_item0Mapper.xml b/SC-boot/linkage-scm/src/main/resources/Receiptout_item0Mapper.xml new file mode 100644 index 00000000..0cf01586 --- /dev/null +++ b/SC-boot/linkage-scm/src/main/resources/Receiptout_item0Mapper.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/SC-web/src/views/scm/basicInformation/receiptin/Detail.vue b/SC-web/src/views/scm/basicInformation/receiptin/Detail.vue new file mode 100644 index 00000000..d2f2848a --- /dev/null +++ b/SC-web/src/views/scm/basicInformation/receiptin/Detail.vue @@ -0,0 +1,149 @@ + + diff --git a/SC-web/src/views/scm/basicInformation/receiptin/ExportBox.vue b/SC-web/src/views/scm/basicInformation/receiptin/ExportBox.vue new file mode 100644 index 00000000..e61a2182 --- /dev/null +++ b/SC-web/src/views/scm/basicInformation/receiptin/ExportBox.vue @@ -0,0 +1,68 @@ + + + + \ No newline at end of file diff --git a/SC-web/src/views/scm/basicInformation/receiptin/Form.vue b/SC-web/src/views/scm/basicInformation/receiptin/Form.vue new file mode 100644 index 00000000..b0a68a0c --- /dev/null +++ b/SC-web/src/views/scm/basicInformation/receiptin/Form.vue @@ -0,0 +1,249 @@ + + diff --git a/SC-web/src/views/scm/basicInformation/receiptin/index.vue b/SC-web/src/views/scm/basicInformation/receiptin/index.vue new file mode 100644 index 00000000..235bcada --- /dev/null +++ b/SC-web/src/views/scm/basicInformation/receiptin/index.vue @@ -0,0 +1,298 @@ + + +