diff --git a/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/suppliers/ISuppliersApi.java b/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/suppliers/ISuppliersApi.java index 1a17e2a..e88cd85 100644 --- a/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/suppliers/ISuppliersApi.java +++ b/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/suppliers/ISuppliersApi.java @@ -1,10 +1,12 @@ package com.nu.modules.suppliers; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.nu.dto.CgdInfoEntity; +import com.nu.dto.CgdMainEntity; import com.nu.dto.SuppliersMaterialInfoDto; import com.nu.entity.*; -import com.nu.modules.orgapplyinfo.entity.OrgAllInfoApiEntity; +import javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.Map; @@ -49,4 +51,12 @@ public interface ISuppliersApi { SuppliersMaterialInfoDto editSuppliersMaterialInfo(SuppliersMaterialInfoDto suppliersMaterialInfoDtos); List getGlptSuppliersMaterialInfo(String orgCode, String suppliersId); + + IPage queryCgdList(Integer pageNo, Integer pageSize, CgdMainEntity cgdMainEntityDto, HttpServletRequest req); + + CgdInfoEntity editArrivalPrice(CgdInfoEntity cgdMainEntityDto); + + CgdMainEntity cgdQueren(CgdMainEntity cgdMainEntity); + + IPage queryCgdInfoList(Integer pageNo, Integer pageSize, CgdInfoEntity cgdInfoEntity, HttpServletRequest req); } diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/bizSuppliers/service/INuBizSuppliersApplyService.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/bizSuppliers/service/INuBizSuppliersApplyService.java index 3682f82..cd70181 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/bizSuppliers/service/INuBizSuppliersApplyService.java +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/bizSuppliers/service/INuBizSuppliersApplyService.java @@ -3,6 +3,9 @@ package com.nu.modules.bizSuppliers.service; 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.nu.dto.CgdBeanDto; +import com.nu.dto.CgdInfoDto; +import com.nu.dto.CgdMainDto; import com.nu.modules.bizSuppliers.entity.NuBizSuppliersApply; import com.baomidou.mybatisplus.extension.service.IService; @@ -26,4 +29,12 @@ public interface INuBizSuppliersApplyService extends IService> getModifyInfo(NuBizSuppliersApply suppliersApply); String bgAudit(NuBizSuppliersApply nuConfigSuppliersApply); + + void addCgdMainList(CgdBeanDto addCgtdDto); + + void querenOrZuofei(CgdMainDto cgdMainDto); + + void editCgdInfoSl(CgdInfoDto cgdInfoDto); + + void cgdGuazhang(CgdMainDto cgdMainDto); } diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/bizSuppliers/service/impl/NuBizSuppliersApplyServiceImpl.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/bizSuppliers/service/impl/NuBizSuppliersApplyServiceImpl.java index ded9e2b..3596092 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/bizSuppliers/service/impl/NuBizSuppliersApplyServiceImpl.java +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/bizSuppliers/service/impl/NuBizSuppliersApplyServiceImpl.java @@ -9,9 +9,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Maps; -import com.nu.dto.SuppliersInfoMQDto; -import com.nu.dto.SuppliersMaterialInfoDto; +import com.nu.dto.*; import com.nu.entity.*; import com.nu.enums.WxClientType; import com.nu.modules.EmployeesInfo.api.IEmployeesAdvisioryInfoApi; @@ -25,6 +25,10 @@ import com.nu.modules.bizSuppliers.mapper.NuBizSuppliersMaterialInfoMapper; import com.nu.modules.bizSuppliers.mapper.NuBizSuppliersOrgMapper; import com.nu.modules.bizSuppliers.service.INuBizSuppliersApplyService; import com.nu.modules.bizSuppliers.service.INuBizSuppliersOrgService; +import com.nu.modules.cgd.entity.NuInvoicingCgdInfo; +import com.nu.modules.cgd.entity.NuInvoicingCgdMain; +import com.nu.modules.cgd.mapper.NuInvoicingCgdInfoMapper; +import com.nu.modules.cgd.mapper.NuInvoicingCgdMainMapper; import com.nu.modules.suppliers.ISuppliersApi; import com.nu.modules.wxnotice.IWxNoticeApi; import com.nu.utils.DictUtils; @@ -32,15 +36,17 @@ import com.nu.utils.RabbitMQUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.apache.shiro.SecurityUtils; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.system.query.QueryRuleEnum; import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.common.util.DateUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.util.CollectionUtils; +import javax.servlet.http.HttpServletRequest; import java.lang.reflect.Field; import java.text.SimpleDateFormat; import java.util.*; @@ -67,6 +73,11 @@ public class NuBizSuppliersApplyServiceImpl extends ServiceImpl queryCgdList(Integer pageNo, Integer pageSize, CgdMainEntity cgdMainEntityDto, HttpServletRequest req) { + NuInvoicingCgdMain nuInvoicingCgdMain = new NuInvoicingCgdMain(); + BeanUtils.copyProperties(cgdMainEntityDto,nuInvoicingCgdMain); + Map customeRuleMap = new HashMap<>(); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.apply(StringUtils.isNotBlank(cgdMainEntityDto.getCgdParamInfo()),"(cgd_no like '%"+cgdMainEntityDto.getCgdParamInfo()+"%' or gys_name like '%"+cgdMainEntityDto.getCgdParamInfo()+"%' or qg_by like '%"+cgdMainEntityDto.getCgdParamInfo()+"%' or gys_lxr like '%"+cgdMainEntityDto.getCgdParamInfo()+"%')"); + queryWrapper.in(StringUtils.isNotBlank(cgdMainEntityDto.getSuppliers()),"gys_id",cgdMainEntityDto.getSuppliers()); + queryWrapper.eq(StringUtils.isNotBlank(cgdMainEntityDto.getCgBy()),"qg_by",cgdMainEntityDto.getCgBy()); + if(cgdMainEntityDto.getQgDate() != null){ + queryWrapper.like("qg_date", DateUtils.formatDate(cgdMainEntityDto.getQgDate())); + } + queryWrapper.gt(StringUtils.isNotBlank(cgdMainEntityDto.getStartTime()),"qg_date",cgdMainEntityDto.getStartTime()); + queryWrapper.lt(StringUtils.isNotBlank(cgdMainEntityDto.getEndTime()),"qg_date",cgdMainEntityDto.getEndTime()); + queryWrapper.eq(StringUtils.isNotBlank(cgdMainEntityDto.getNuId()),"nu_id",cgdMainEntityDto.getNuId()); +// queryWrapper.in(StringUtils.isNotBlank(cgdMainEntityDto.getStatus()),"status",cgdMainEntityDto.getStatus()); + if(StringUtils.isNotBlank(cgdMainEntityDto.getCgdType())){ + if (cgdMainEntityDto.getCgdType().indexOf(",")>-1){ + queryWrapper.in("cgd_type",cgdMainEntityDto.getCgdType().split(",")); + }else if (cgdMainEntityDto.getCgdType().indexOf(",")==-1){ + queryWrapper.eq("cgd_type",cgdMainEntityDto.getCgdType()); + } + } + queryWrapper.orderByDesc("create_time"); + Page page = new Page<>(pageNo, pageSize); + List list = cgdMainMapper.selectList(page,queryWrapper); + IPage entityPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); + entityPage.setRecords(BeanUtil.copyToList(list, CgdMainEntity.class)); + return entityPage; + } + + @Override + public CgdInfoEntity editArrivalPrice(CgdInfoEntity cgdMainEntityDto) { + NuInvoicingCgdInfo cgdInfo = new NuInvoicingCgdInfo(); + cgdInfo.setId(cgdMainEntityDto.getId()); + cgdInfo.setArrivalPrice(cgdMainEntityDto.getArrivalPrice()); + cgdInfoMapper.updateById(cgdInfo); + return cgdMainEntityDto; + } + + + @Override + public CgdMainEntity cgdQueren(CgdMainEntity cgdMainEntity) { + NuInvoicingCgdMain cgdMain = new NuInvoicingCgdMain(); + cgdMain.setId(cgdMainEntity.getId()); + cgdMain.setIzGysConfirmed("Y"); + cgdMainMapper.updateById(cgdMain); + + NuInvoicingCgdMain cgdMainRes = cgdMainMapper.selectById(cgdMainEntity.getId()); + List cgdInfoList = cgdInfoMapper.selectList(new QueryWrapper().eq("cgd_id",cgdMainEntity.getId())); + List cgdInfoDtoList = BeanUtil.copyToList(cgdInfoList, CgdInfoDto.class); + CgdMainDto cgdMainDto = new CgdMainDto(); + BeanUtils.copyProperties(cgdMainRes, cgdMainDto); + cgdMainDto.setCgdInfoList(cgdInfoDtoList); + List cgdMainList = new ArrayList<>(); + cgdMainList.add(cgdMainDto); + CgdBeanDto cgdBeanDto = new CgdBeanDto(); + cgdBeanDto.setList(cgdMainList); + rabbitMQUtil.sendToExchange("nu.suppliers.cgdQueren", cgdMainDto.getSysOrgCode()+".suppliers.cgdQueren", cgdBeanDto); + return cgdMainEntity; + } + + @Override + public IPage queryCgdInfoList(Integer pageNo, Integer pageSize, CgdInfoEntity cgdInfoEntity, HttpServletRequest req) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + Page page = new Page<>(pageNo, pageSize); + queryWrapper.eq("cgd_id",cgdInfoEntity.getCgdId()); + + List list = cgdInfoMapper.selectList(page,queryWrapper); + IPage entityPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); + entityPage.setRecords(BeanUtil.copyToList(list, CgdInfoEntity.class)); + return entityPage; + } + + @Override public IPage listPage(Page page, QueryWrapper queryWrapper) { return baseMapper.listPage(page, queryWrapper); @@ -749,4 +835,43 @@ public class NuBizSuppliersApplyServiceImpl extends ServiceImpl list = addCgtdDto.getList(); + for (CgdMainDto addCgdDto : list){ + NuInvoicingCgdMain cgdMain = new NuInvoicingCgdMain(); + BeanUtils.copyProperties(addCgdDto,cgdMain);; + List cgdInfoList = new ArrayList<>(); + for (CgdInfoDto cgdInfoDto : addCgdDto.getCgdInfoList()){ + NuInvoicingCgdInfo cgdInfo = new NuInvoicingCgdInfo(); + BeanUtils.copyProperties(cgdInfoDto,cgdInfo); + cgdInfoList.add(cgdInfo); + cgdInfoMapper.insert(cgdInfo); + } + cgdMainMapper.insert(cgdMain); + + } + } + + @Override + public void querenOrZuofei(CgdMainDto cgdMainDto) { + NuInvoicingCgdMain cgdMain = new NuInvoicingCgdMain(); + BeanUtils.copyProperties(cgdMainDto,cgdMain); + cgdMainMapper.updateById(cgdMain); + } + + @Override + public void editCgdInfoSl(CgdInfoDto cgdInfoDto) { + NuInvoicingCgdInfo cgdInfo = new NuInvoicingCgdInfo(); + BeanUtils.copyProperties(cgdInfoDto,cgdInfo); + cgdInfoMapper.updateById(cgdInfo); + } + + @Override + public void cgdGuazhang(CgdMainDto cgdMainDto) { + NuInvoicingCgdMain cgdMain = new NuInvoicingCgdMain(); + BeanUtils.copyProperties(cgdMainDto,cgdMain); + cgdMainMapper.updateById(cgdMain); + } } diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdInfoController.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdInfoController.java new file mode 100644 index 0000000..a9f150f --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdInfoController.java @@ -0,0 +1,224 @@ +package com.nu.modules.cgd.controller; + +import java.math.BigDecimal; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.aliyun.core.utils.StringUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.system.query.QueryRuleEnum; +import org.jeecg.common.util.oConvertUtils; +import com.nu.modules.cgd.entity.NuInvoicingCgdInfo; +import com.nu.modules.cgd.service.INuInvoicingCgdInfoService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + +/** + * @Description: nu_invoicing_cgd_info + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Api(tags = "nu_invoicing_cgd_info") +@RestController +@RequestMapping("/cgd/nuInvoicingCgdInfo") +@Slf4j +public class NuInvoicingCgdInfoController extends JeecgController { + @Autowired + private INuInvoicingCgdInfoService nuInvoicingCgdInfoService; + + /** + * 分页列表查询 + * + * @param nuInvoicingCgdInfo + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "nu_invoicing_cgd_info-分页列表查询") + @ApiOperation(value = "nu_invoicing_cgd_info-分页列表查询", notes = "nu_invoicing_cgd_info-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(NuInvoicingCgdInfo nuInvoicingCgdInfo, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(nuInvoicingCgdInfo, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = nuInvoicingCgdInfoService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param nuInvoicingCgdInfo + * @return + */ + @AutoLog(value = "nu_invoicing_cgd_info-添加") + @ApiOperation(value = "nu_invoicing_cgd_info-添加", notes = "nu_invoicing_cgd_info-添加") + @PostMapping(value = "/add") + public Result add(@RequestBody NuInvoicingCgdInfo nuInvoicingCgdInfo) { + nuInvoicingCgdInfoService.save(nuInvoicingCgdInfo); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param nuInvoicingCgdInfo + * @return + */ + @AutoLog(value = "nu_invoicing_cgd_info-编辑") + @ApiOperation(value = "nu_invoicing_cgd_info-编辑", notes = "nu_invoicing_cgd_info-编辑") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result edit(@RequestBody NuInvoicingCgdInfo nuInvoicingCgdInfo) { + nuInvoicingCgdInfoService.updateById(nuInvoicingCgdInfo); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "nu_invoicing_cgd_info-通过id删除") + @ApiOperation(value = "nu_invoicing_cgd_info-通过id删除", notes = "nu_invoicing_cgd_info-通过id删除") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name = "id", required = true) String id) { + nuInvoicingCgdInfoService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "nu_invoicing_cgd_info-批量删除") + @ApiOperation(value = "nu_invoicing_cgd_info-批量删除", notes = "nu_invoicing_cgd_info-批量删除") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name = "ids", required = true) String ids) { + this.nuInvoicingCgdInfoService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "nu_invoicing_cgd_info-通过id查询") + @ApiOperation(value = "nu_invoicing_cgd_info-通过id查询", notes = "nu_invoicing_cgd_info-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name = "id", required = true) String id) { + NuInvoicingCgdInfo nuInvoicingCgdInfo = nuInvoicingCgdInfoService.getById(id); + if (nuInvoicingCgdInfo == null) { + return Result.error("未找到对应数据"); + } + return Result.OK(nuInvoicingCgdInfo); + } + + /** + * 导出excel + * + * @param request + * @param nuInvoicingCgdInfo + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, NuInvoicingCgdInfo nuInvoicingCgdInfo) { + return super.exportXls(request, nuInvoicingCgdInfo, NuInvoicingCgdInfo.class, "nu_invoicing_cgd_info"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, NuInvoicingCgdInfo.class); + } + + /** + * 分页列表查询-查询“拣货”的 + * + * @param nuInvoicingCgdInfo + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @ApiOperation(value = "nu_invoicing_cgd_info-分页列表查询“拣货”的", notes = "nu_invoicing_cgd_info-分页列表查询“拣货”的") + @GetMapping(value = "/listAndJh") + public Result> queryPageListAndJh(NuInvoicingCgdInfo nuInvoicingCgdInfo, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + if (StringUtils.isBlank(nuInvoicingCgdInfo.getCgdId())) { + return Result.ok(new Page<>()); + } + Page page = new Page(pageNo, pageSize); + IPage pageList = nuInvoicingCgdInfoService.pageList(page, nuInvoicingCgdInfo); + return Result.OK(pageList); + } + + /** + * 计算已完结采购单+拣货 总价 + * + * @param nuInvoicingCgdInfo + * @return + */ + @ApiOperation(value = "nu_invoicing_cgd_info-计算已完结采购单+拣货 总价", notes = "nu_invoicing_cgd_info-计算已完结采购单+拣货 总价") + @GetMapping(value = "/calcTotalPrice") + public Result calcTotalPrice(NuInvoicingCgdInfo nuInvoicingCgdInfo) { + return Result.OK(nuInvoicingCgdInfoService.calcTotalPrice(nuInvoicingCgdInfo)); + } + + + /** + * 获取付款单对应单据信息 + * @param nuInvoicingCgdInfo + * @return + */ + @GetMapping(value = "/getFkdList") + public Result> getFkdList(NuInvoicingCgdInfo nuInvoicingCgdInfo) { + List pageList = nuInvoicingCgdInfoService.getFkdList(nuInvoicingCgdInfo); + return Result.OK(pageList); + } + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdMainController.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdMainController.java new file mode 100644 index 0000000..bedcdf7 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdMainController.java @@ -0,0 +1,249 @@ +package com.nu.modules.cgd.controller; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.system.query.QueryRuleEnum; +import org.jeecg.common.util.oConvertUtils; +import com.nu.modules.cgd.entity.NuInvoicingCgdMain; +import com.nu.modules.cgd.service.INuInvoicingCgdMainService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + +/** + * @Description: nu_invoicing_cgd_main + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Api(tags = "nu_invoicing_cgd_main") +@RestController +@RequestMapping("/cgd/nuInvoicingCgdMain") +@Slf4j +public class NuInvoicingCgdMainController extends JeecgController { + @Autowired + private INuInvoicingCgdMainService nuInvoicingCgdMainService; + + /** + * 分页列表查询 + * + * @param nuInvoicingCgdMain + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "采购单-分页列表查询") + @ApiOperation(value = "采购单-分页列表查询", notes = "采购单-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(NuInvoicingCgdMain nuInvoicingCgdMain, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(nuInvoicingCgdMain, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + //付款单-生成采购单 + if ("fukuandan".equals(nuInvoicingCgdMain.getResourceFrontView())) { + //没选择供应商时不应返回结果 + if (StringUtils.isBlank(nuInvoicingCgdMain.getGysId())) { + Page emptyPage = new Page<>(pageNo, pageSize); + return Result.OK(emptyPage); + } else { + //生成付款单只查询“已完结”采购单 + queryWrapper.eq("cgd_type", "2"); + queryWrapper.eq("iz_fkd", "N"); + } + } + IPage pageList = nuInvoicingCgdMainService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 分页列表查询(计算已拣货总价) + * + * @param nuInvoicingCgdMain + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "采购单-分页列表查询") + @ApiOperation(value = "采购单-分页列表查询(计算已拣货总价)", notes = "采购单-分页列表查询(计算已拣货总价)") + @GetMapping(value = "/calcList") + public Result> calcList(NuInvoicingCgdMain nuInvoicingCgdMain, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(nuInvoicingCgdMain, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + //付款单-生成采购单 + if ("fukuandan".equals(nuInvoicingCgdMain.getResourceFrontView())) { + //没选择供应商时不应返回结果 + if (StringUtils.isBlank(nuInvoicingCgdMain.getGysId())) { + Page emptyPage = new Page<>(pageNo, pageSize); + return Result.OK(emptyPage); + } else { + //生成付款单只查询“已完结”采购单 + queryWrapper.eq("cgd_type", "2"); + queryWrapper.eq("iz_fkd", "N"); + queryWrapper.groupBy("main.id"); + } + } + + IPage pageList = nuInvoicingCgdMainService.calcList(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param nuInvoicingCgdMain + * @return + */ + @AutoLog(value = "采购单-添加") + @ApiOperation(value = "采购单-添加", notes = "采购单-添加") + @RequiresPermissions("cgd:nu_invoicing_cgd_main:add") + @PostMapping(value = "/add") + public Result add(@RequestBody NuInvoicingCgdMain nuInvoicingCgdMain) { + nuInvoicingCgdMainService.save(nuInvoicingCgdMain); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param nuInvoicingCgdMain + * @return + */ + @AutoLog(value = "采购单-编辑") + @ApiOperation(value = "采购单-编辑", notes = "采购单-编辑") + @RequiresPermissions("cgd:nu_invoicing_cgd_main:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result edit(@RequestBody NuInvoicingCgdMain nuInvoicingCgdMain) { + nuInvoicingCgdMainService.updateById(nuInvoicingCgdMain); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "采购单-通过id删除") + @ApiOperation(value = "采购单-通过id删除", notes = "采购单-通过id删除") + @RequiresPermissions("cgd:nu_invoicing_cgd_main:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name = "id", required = true) String id) { + nuInvoicingCgdMainService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "采购单-批量删除") + @ApiOperation(value = "采购单-批量删除", notes = "采购单-批量删除") + @RequiresPermissions("cgd:nu_invoicing_cgd_main:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name = "ids", required = true) String ids) { + this.nuInvoicingCgdMainService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "采购单-通过id查询") + @ApiOperation(value = "采购单-通过id查询", notes = "采购单-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name = "id", required = true) String id) { + NuInvoicingCgdMain nuInvoicingCgdMain = nuInvoicingCgdMainService.getById(id); + if (nuInvoicingCgdMain == null) { + return Result.error("未找到对应数据"); + } + return Result.OK(nuInvoicingCgdMain); + } + + /** + * 导出excel + * + * @param request + * @param nuInvoicingCgdMain + */ + @RequiresPermissions("cgd:nu_invoicing_cgd_main:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, NuInvoicingCgdMain nuInvoicingCgdMain) { + return super.exportXls(request, nuInvoicingCgdMain, NuInvoicingCgdMain.class, "nu_invoicing_cgd_main"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequiresPermissions("cgd:nu_invoicing_cgd_main:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, NuInvoicingCgdMain.class); + } + + + @AutoLog(value = "采购单-审核") + @ApiOperation(value = "采购单-审核", notes = "采购单-审核") + @RequiresPermissions("cgd:nu_invoicing_cgd_main:add") + @PostMapping(value = "/auditInfo") + public Result auditInfo(@RequestBody NuInvoicingCgdMain nuInvoicingCgdMain) { + nuInvoicingCgdMainService.auditInfo(nuInvoicingCgdMain); + return Result.OK("添加成功!"); + } + + @AutoLog(value = "采购单-入库操作") + @ApiOperation(value = "采购单-入库操作", notes = "采购单-入库操作") + @RequiresPermissions("cgd:nu_invoicing_cgd_main:add") + @PostMapping(value = "/rukuInfo") + public Result rukuInfo(@RequestBody NuInvoicingCgdMain nuInvoicingCgdMain) { + nuInvoicingCgdMainService.rukuInfo(nuInvoicingCgdMain); + return Result.OK("添加成功!"); + } + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdSxdController.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdSxdController.java new file mode 100644 index 0000000..57204a7 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuInvoicingCgdSxdController.java @@ -0,0 +1,180 @@ +package com.nu.modules.cgd.controller; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.system.query.QueryRuleEnum; +import org.jeecg.common.util.oConvertUtils; +import com.nu.modules.cgd.entity.NuInvoicingCgdSxd; +import com.nu.modules.cgd.service.INuInvoicingCgdSxdService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: 进销存-采购单-随行单 + * @Author: jeecg-boot + * @Date: 2025-11-14 + * @Version: V1.0 + */ +@Api(tags="进销存-采购单-随行单") +@RestController +@RequestMapping("/cgd/nuInvoicingCgdSxd") +@Slf4j +public class NuInvoicingCgdSxdController extends JeecgController { + @Autowired + private INuInvoicingCgdSxdService nuInvoicingCgdSxdService; + + /** + * 分页列表查询 + * + * @param nuInvoicingCgdSxd + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "进销存-采购单-随行单-分页列表查询") + @ApiOperation(value="进销存-采购单-随行单-分页列表查询", notes="进销存-采购单-随行单-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(NuInvoicingCgdSxd nuInvoicingCgdSxd, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(nuInvoicingCgdSxd, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = nuInvoicingCgdSxdService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param nuInvoicingCgdSxd + * @return + */ + @AutoLog(value = "进销存-采购单-随行单-添加") + @ApiOperation(value="进销存-采购单-随行单-添加", notes="进销存-采购单-随行单-添加") + @RequiresPermissions("cgd:nu_invoicing_cgd_sxd:add") + @PostMapping(value = "/add") + public Result add(@RequestBody NuInvoicingCgdSxd nuInvoicingCgdSxd) { + nuInvoicingCgdSxdService.save(nuInvoicingCgdSxd); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param nuInvoicingCgdSxd + * @return + */ + @AutoLog(value = "进销存-采购单-随行单-编辑") + @ApiOperation(value="进销存-采购单-随行单-编辑", notes="进销存-采购单-随行单-编辑") + @RequiresPermissions("cgd:nu_invoicing_cgd_sxd:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody NuInvoicingCgdSxd nuInvoicingCgdSxd) { + nuInvoicingCgdSxdService.updateById(nuInvoicingCgdSxd); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "进销存-采购单-随行单-通过id删除") + @ApiOperation(value="进销存-采购单-随行单-通过id删除", notes="进销存-采购单-随行单-通过id删除") + @RequiresPermissions("cgd:nu_invoicing_cgd_sxd:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + nuInvoicingCgdSxdService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "进销存-采购单-随行单-批量删除") + @ApiOperation(value="进销存-采购单-随行单-批量删除", notes="进销存-采购单-随行单-批量删除") + @RequiresPermissions("cgd:nu_invoicing_cgd_sxd:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.nuInvoicingCgdSxdService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "进销存-采购单-随行单-通过id查询") + @ApiOperation(value="进销存-采购单-随行单-通过id查询", notes="进销存-采购单-随行单-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + NuInvoicingCgdSxd nuInvoicingCgdSxd = nuInvoicingCgdSxdService.getById(id); + if(nuInvoicingCgdSxd==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(nuInvoicingCgdSxd); + } + + /** + * 导出excel + * + * @param request + * @param nuInvoicingCgdSxd + */ + @RequiresPermissions("cgd:nu_invoicing_cgd_sxd:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, NuInvoicingCgdSxd nuInvoicingCgdSxd) { + return super.exportXls(request, nuInvoicingCgdSxd, NuInvoicingCgdSxd.class, "进销存-采购单-随行单"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequiresPermissions("cgd:nu_invoicing_cgd_sxd:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, NuInvoicingCgdSxd.class); + } + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuWarehouseMaterialCrkInfoController.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuWarehouseMaterialCrkInfoController.java new file mode 100644 index 0000000..b8469fa --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/controller/NuWarehouseMaterialCrkInfoController.java @@ -0,0 +1,183 @@ +package com.nu.modules.cgd.controller; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang.StringUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.system.query.QueryRuleEnum; +import org.jeecg.common.util.oConvertUtils; +import com.nu.modules.cgd.entity.NuWarehouseMaterialCrkInfo; +import com.nu.modules.cgd.service.INuWarehouseMaterialCrkInfoService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecgframework.poi.excel.ExcelImportUtil; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.entity.ImportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; +import com.alibaba.fastjson.JSON; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + + /** + * @Description: 库房物料出入库信息 + * @Author: jeecg-boot + * @Date: 2025-10-14 + * @Version: V1.0 + */ +@Api(tags="库房物料出入库信息") +@RestController +@RequestMapping("/cgd/nuWarehouseMaterialCrkInfo") +@Slf4j +public class NuWarehouseMaterialCrkInfoController extends JeecgController { + @Autowired + private INuWarehouseMaterialCrkInfoService nuWarehouseMaterialCrkInfoService; + + /** + * 分页列表查询 + * + * @param nuWarehouseMaterialCrkInfo + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "库房物料出入库信息-分页列表查询") + @ApiOperation(value="库房物料出入库信息-分页列表查询", notes="库房物料出入库信息-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(NuWarehouseMaterialCrkInfo nuWarehouseMaterialCrkInfo, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(nuWarehouseMaterialCrkInfo, req.getParameterMap()); + queryWrapper.like(StringUtils.isNotBlank(nuWarehouseMaterialCrkInfo.getParamDate()),"create_time", nuWarehouseMaterialCrkInfo.getParamDate()); + Page page = new Page(pageNo, pageSize); + IPage pageList = nuWarehouseMaterialCrkInfoService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param nuWarehouseMaterialCrkInfo + * @return + */ + @AutoLog(value = "库房物料出入库信息-添加") + @ApiOperation(value="库房物料出入库信息-添加", notes="库房物料出入库信息-添加") + @RequiresPermissions("cgd:nu_warehouse_material_crk_info:add") + @PostMapping(value = "/add") + public Result add(@RequestBody NuWarehouseMaterialCrkInfo nuWarehouseMaterialCrkInfo) { + nuWarehouseMaterialCrkInfoService.save(nuWarehouseMaterialCrkInfo); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param nuWarehouseMaterialCrkInfo + * @return + */ + @AutoLog(value = "库房物料出入库信息-编辑") + @ApiOperation(value="库房物料出入库信息-编辑", notes="库房物料出入库信息-编辑") + @RequiresPermissions("cgd:nu_warehouse_material_crk_info:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST}) + public Result edit(@RequestBody NuWarehouseMaterialCrkInfo nuWarehouseMaterialCrkInfo) { + nuWarehouseMaterialCrkInfoService.updateById(nuWarehouseMaterialCrkInfo); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "库房物料出入库信息-通过id删除") + @ApiOperation(value="库房物料出入库信息-通过id删除", notes="库房物料出入库信息-通过id删除") + @RequiresPermissions("cgd:nu_warehouse_material_crk_info:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name="id",required=true) String id) { + nuWarehouseMaterialCrkInfoService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "库房物料出入库信息-批量删除") + @ApiOperation(value="库房物料出入库信息-批量删除", notes="库房物料出入库信息-批量删除") + @RequiresPermissions("cgd:nu_warehouse_material_crk_info:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name="ids",required=true) String ids) { + this.nuWarehouseMaterialCrkInfoService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "库房物料出入库信息-通过id查询") + @ApiOperation(value="库房物料出入库信息-通过id查询", notes="库房物料出入库信息-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name="id",required=true) String id) { + NuWarehouseMaterialCrkInfo nuWarehouseMaterialCrkInfo = nuWarehouseMaterialCrkInfoService.getById(id); + if(nuWarehouseMaterialCrkInfo==null) { + return Result.error("未找到对应数据"); + } + return Result.OK(nuWarehouseMaterialCrkInfo); + } + + /** + * 导出excel + * + * @param request + * @param nuWarehouseMaterialCrkInfo + */ + @RequiresPermissions("cgd:nu_warehouse_material_crk_info:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, NuWarehouseMaterialCrkInfo nuWarehouseMaterialCrkInfo) { + return super.exportXls(request, nuWarehouseMaterialCrkInfo, NuWarehouseMaterialCrkInfo.class, "库房物料出入库信息"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ + @RequiresPermissions("cgd:nu_warehouse_material_crk_info:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, NuWarehouseMaterialCrkInfo.class); + } + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdInfo.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdInfo.java new file mode 100644 index 0000000..4b4388d --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdInfo.java @@ -0,0 +1,244 @@ +package com.nu.modules.cgd.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.math.RoundingMode; +import java.util.Date; +import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.*; +import org.jeecg.common.constant.ProvinceCityArea; +import org.jeecg.common.util.SpringContextUtils; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: nu_invoicing_cgd_info + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Data +@TableName("nu_invoicing_cgd_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "nu_invoicing_cgd_info对象", description = "nu_invoicing_cgd_info") +public class NuInvoicingCgdInfo implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private String id; + /** + * createBy + */ + @ApiModelProperty(value = "createBy") + private String createBy; + /** + * createTime + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "createTime") + private Date createTime; + /** + * updateBy + */ + @ApiModelProperty(value = "updateBy") + private String updateBy; + /** + * updateTime + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "updateTime") + private Date updateTime; + /** + * sysOrgCode + */ + @ApiModelProperty(value = "sysOrgCode") + private String sysOrgCode; + /** + * 采购单id + */ + @Excel(name = "采购单id", width = 15) + @ApiModelProperty(value = "采购单id") + private String cgdId; + /** + * 物料id + */ + @Excel(name = "物料id", width = 15) + @ApiModelProperty(value = "物料id") + private String wlId; + /** + * 物料编码 + */ + @Excel(name = "物料编码", width = 15) + @ApiModelProperty(value = "物料编码") + private String wlMaterialNo; + /** + * 物料名称 + */ + @Excel(name = "物料名称", width = 15) + @ApiModelProperty(value = "物料名称") + private String wlName; + /** + * 采购单位 + */ + @Excel(name = "采购单位", width = 15) + @ApiModelProperty(value = "采购单位") + private String wlUnits; + /** + * 规格型号 + */ + @Excel(name = "规格型号", width = 15) + @ApiModelProperty(value = "规格型号") + private String wlSpecificationModel; + /** + * 上限 + */ + @Excel(name = "上限", width = 15) + @ApiModelProperty(value = "上限") + private String wlUpperLimit; + /** + * 下限 + */ + @Excel(name = "下限", width = 15) + @ApiModelProperty(value = "下限") + private String wlLowerLimit; + /** + * 供应商id + */ + @Excel(name = "供应商id", width = 15) + @ApiModelProperty(value = "供应商id") + private String suppliersId; + /** + * 供应商名称 + */ + @Excel(name = "供应商名称", width = 15) + @ApiModelProperty(value = "供应商名称") + private String suppliersName; + /** + * 请购数量 + */ + @Excel(name = "请购数量", width = 15) + @ApiModelProperty(value = "请购数量") + private Double purchaseQuantity; + /** + * 银行 + */ + @Excel(name = "银行", width = 15) + @ApiModelProperty(value = "银行") + private String brand; + /** + * 库房 + */ + @Excel(name = "库房", width = 15) + @ApiModelProperty(value = "库房") + private String nuId; + /** + * 入库数量 + */ + @Excel(name = "入库数量", width = 15) + @ApiModelProperty(value = "入库数量") + private Double rksl; + /** + * 未入库数量 + */ + @Excel(name = "未入库数量", width = 15) + @ApiModelProperty(value = "未入库数量") + private Double wrksl; + /** + * 销账数量 + */ + @Excel(name = "销账数量", width = 15) + @ApiModelProperty(value = "销账数量") + private Double xzsl; + /** + * 采购单价 + */ + @Excel(name = "采购单价", width = 15) + @ApiModelProperty(value = "采购单价") + private BigDecimal procurementPrice; + /** + * 到货单价 + */ + @Excel(name = "到货单价", width = 15) + @ApiModelProperty(value = "到货单价") + private BigDecimal arrivalPrice; + /** + * 物料类别 + */ + private String categoryId; + /** + * 物料类型 + */ + private String typeId; + /** + * 用药类型 + */ + private String medicationId; + /** + * 单据状态 0待入库 1挂账中 2已入库 3已销账 + */ + @Dict(dicCode = "cgd_wl_status") + private String status; + private String dhbl; + private String brandType; + private String manufacturer; + private String materialImg; + + + @TableField(exist = false) + private Double kcsl; + @TableField(exist = false) + private String tagType; + @TableField(exist = false) + private String tagName; + @TableField(exist = false) + private BigDecimal totalPrice; + + @TableField(exist = false) + private java.lang.String categoryName; + @TableField(exist = false) + private java.lang.String typeName; + @TableField(exist = false) + private java.lang.String medicationName; + @TableField(exist = false) + private java.lang.String materialUnits; + + + @TableField(exist = false) + private BigDecimal crkje; + @TableField(exist = false) + private String crksl; + @TableField(exist = false) + private BigDecimal xiaoJi; + @TableField(exist = false) + private BigDecimal zongJinE; + @TableField(exist = false) + private String pkId; + @TableField(exist = false) + private String cgdNo; + +// // 格式化getter方法 +// public BigDecimal getProcurementPrice() { +// BigDecimal result = procurementPrice != null ? procurementPrice.setScale(2, RoundingMode.DOWN) : null; +// return result; +// } +// +// public BigDecimal getArrivalPrice() { +// BigDecimal result = arrivalPrice != null ? arrivalPrice.setScale(2, RoundingMode.DOWN) : null; +// return result; +// } +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdMain.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdMain.java new file mode 100644 index 0000000..e4e0e7e --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdMain.java @@ -0,0 +1,272 @@ +package com.nu.modules.cgd.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import java.util.List; + +import com.baomidou.mybatisplus.annotation.*; +import org.jeecg.common.constant.ProvinceCityArea; +import org.jeecg.common.util.SpringContextUtils; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: nu_invoicing_cgd_main + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Data +@TableName("nu_invoicing_cgd_main") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "nu_invoicing_cgd_main对象", description = "nu_invoicing_cgd_main") +public class NuInvoicingCgdMain implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private String id; + /** + * createBy + */ + @ApiModelProperty(value = "createBy") + private String createBy; + /** + * createTime + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "createTime") + private Date createTime; + /** + * updateBy + */ + @ApiModelProperty(value = "updateBy") + private String updateBy; + /** + * updateTime + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "updateTime") + private Date updateTime; + /** + * 采购单单号 + */ + @Excel(name = "采购单单号", width = 15) + @ApiModelProperty(value = "采购单单号") + private String cgdNo; + /** + * 供应商id + */ + @Excel(name = "供应商id", width = 15) + @ApiModelProperty(value = "供应商id") + @Dict(dicCode = "id", dictTable = "nu_config_suppliers_info", dicText = "suppliers_name") + private String gysId; + /** + * 请购时间 + */ + @Excel(name = "请购时间", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @ApiModelProperty(value = "请购时间") + private Date qgDate; + /** + * 请购人 + */ + @Excel(name = "请购人", width = 15) + @ApiModelProperty(value = "请购人") + private String qgBy; + + private String qgTel; + /** + * 供应商联系人 + */ + @Excel(name = "供应商联系人", width = 15) + @ApiModelProperty(value = "供应商联系人") + private String gysLxr; + /** + * 供应商联系电话 + */ + @Excel(name = "供应商联系电话", width = 15) + @ApiModelProperty(value = "供应商联系电话") + private String gysLxrdh; + /** + * 供应商openId + */ + @Excel(name = "供应商openId", width = 15) + @ApiModelProperty(value = "供应商openId") + private String gysOpenId; + /** + * 付款方式 + */ + @Excel(name = "付款方式", width = 15) + @ApiModelProperty(value = "付款方式") + @Dict(dicCode = "gys_fkfs") + private String gysFkfs; + /** + * 状态 0:待采购 1:采购中 2采购完成 3作废 + */ + @Excel(name = "状态", width = 15) + @ApiModelProperty(value = "状态") + @Dict(dicCode = "cgd_status") + private String status; + /** + * 采购单类型 0采购单 1挂帐单 2结账单 9作废 + */ + @Excel(name = "采购单类型", width = 15) + @ApiModelProperty(value = "采购单类型") + @Dict(dicCode = "cgd_type") + private String cgdType; + /** + * 随行单 + */ + @Excel(name = "随行单", width = 15) + @ApiModelProperty(value = "随行单") + private String sxdPath; + /** + * 销账单 + */ + @Excel(name = "销账单", width = 15) + @ApiModelProperty(value = "销账单") + private String xzdPath; + /** + * 结账单 + */ + @Excel(name = "结账单", width = 15) + @ApiModelProperty(value = "结账单") + private String jzdPath; + /** + * 审核人 + */ + @Excel(name = "审核人", width = 15) + @ApiModelProperty(value = "审核人") + private String reviewedBy; + /** + * 审核时间 + */ + @Excel(name = "审核时间", width = 20, format = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date reviewedTime; + /** + * 审核备注 + */ + @Excel(name = "审核备注", width = 15) + @ApiModelProperty(value = "审核备注") + private String content; + /** + * 供应商名称 + */ + private String gysName; + + /** + * 拣货人 + */ + private String jhBy; + + private String izGuazhang; + /** + * 拣货时间 + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date jhTime; + /** + * 完结人 + */ + private String wjBy; + + /** + * 完结时间 + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date wjTime; + + + // 总价 + private BigDecimal totalPrice; + + /** + * 是否是新的单子 Y是 N不是 + */ + private String izNew; + private String shareBy; + private String shareTel; + private String nuId; + private String sysOrgCode; + + /** + * 是否已生成有效付款单 Y是 N否 + */ + private String izFkd; + + /** + * 作废人 + */ + private String zfBy; + + /** + * 作废时间 + */ + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date zfTime; + + + /** + * 供应商是否确认 N未确认 Y已确认 + */ + private String izGysConfirmed; + /** + * 机构是否确认 N未确认 Y已确认 + */ + private String izOrgConfirmed; + + + + @TableField(exist = false) + private String qgdId;//临时变量,用于清空购物车id + + /** + * 采购的物料信息 + */ + @TableField(exist = false) + private List cgdInfoList; + + /** + * 来源于哪个前端界面 + */ + @TableField(exist = false) + private String resourceFrontView; + + @TableField(exist = false) + private BigDecimal crkje; + @TableField(exist = false) + private String crksl; + @TableField(exist = false) + private BigDecimal xiaoJi; + @TableField(exist = false) + private String departName; + @TableField(exist = false) + private String comRegisterAddress; + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdSxd.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdSxd.java new file mode 100644 index 0000000..fea0286 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuInvoicingCgdSxd.java @@ -0,0 +1,66 @@ +package com.nu.modules.cgd.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableLogic; +import org.jeecg.common.constant.ProvinceCityArea; +import org.jeecg.common.util.SpringContextUtils; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 进销存-采购单-随行单 + * @Author: jeecg-boot + * @Date: 2025-11-14 + * @Version: V1.0 + */ +@Data +@TableName("nu_invoicing_cgd_sxd") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="nu_invoicing_cgd_sxd对象", description="进销存-采购单-随行单") +public class NuInvoicingCgdSxd implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private java.lang.String id; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private java.lang.String createBy; + /**创建时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建时间") + private java.util.Date createTime; + /**修改人*/ + @ApiModelProperty(value = "修改人") + private java.lang.String updateBy; + /**修改时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "修改时间") + private java.util.Date updateTime; + /**采购单*/ + @Excel(name = "采购单", width = 15, dictTable = "nu_invoicing_cgd_main", dicText = "cgd_no", dicCode = "id") + @Dict(dictTable = "nu_invoicing_cgd_main", dicText = "cgd_no", dicCode = "id") + @ApiModelProperty(value = "采购单") + private java.lang.String cgdId; + /**随行单*/ + @Excel(name = "随行单", width = 15) + @ApiModelProperty(value = "随行单") + private java.lang.String sxdPic; +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuWarehouseMaterialCrkInfo.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuWarehouseMaterialCrkInfo.java new file mode 100644 index 0000000..a486450 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/entity/NuWarehouseMaterialCrkInfo.java @@ -0,0 +1,138 @@ +package com.nu.modules.cgd.entity; + +import java.io.Serializable; +import java.io.UnsupportedEncodingException; +import java.util.Date; +import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.*; +import org.jeecg.common.constant.ProvinceCityArea; +import org.jeecg.common.util.SpringContextUtils; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.jeecg.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * @Description: 库房物料出入库信息 + * @Author: jeecg-boot + * @Date: 2025-10-14 + * @Version: V1.0 + */ +@Data +@TableName("nu_warehouse_material_crk_info") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="nu_warehouse_material_crk_info对象", description="库房物料出入库信息") +public class NuWarehouseMaterialCrkInfo implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private java.lang.String id; + /**createBy*/ + @ApiModelProperty(value = "createBy") + private java.lang.String createBy; + /**createTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "createTime") + private java.util.Date createTime; + /**updateBy*/ + @ApiModelProperty(value = "updateBy") + private java.lang.String updateBy; + /**updateTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "updateTime") + private java.util.Date updateTime; + /**采购单*/ + @Excel(name = "采购单", width = 15, dictTable = "nu_invoicing_cgd_main", dicText = "cgd_no", dicCode = "id") + @Dict(dictTable = "nu_invoicing_cgd_main", dicText = "cgd_no", dicCode = "id") + @ApiModelProperty(value = "采购单") + private java.lang.String cgdId; + /**库房*/ + @Excel(name = "库房", width = 15, dictTable = "nu_base_info", dicText = "nu_name", dicCode = "nu_id") + @Dict(dictTable = "nu_base_info", dicText = "nu_name", dicCode = "nu_id") + @ApiModelProperty(value = "库房") + private java.lang.String nuId; + /**物料*/ + @Excel(name = "物料", width = 15, dictTable = "nu_config_material_info", dicText = "material_name", dicCode = "id") + @Dict(dictTable = "nu_config_material_info", dicText = "material_name", dicCode = "id") + @ApiModelProperty(value = "物料") + private java.lang.String wlId; + /**出入库数量*/ + @Excel(name = "出入库数量", width = 15) + @ApiModelProperty(value = "出入库数量") + private Double crkNum; + /**出入库类型 1入库*/ + @Excel(name = "出入库类型 1入库", width = 15, dicCode = "crk_type") + @Dict(dicCode = "crk_type") + @ApiModelProperty(value = "出入库类型 1入库") + private java.lang.String crkType; + /**备注*/ + @Excel(name = "当前库存量", width = 15) + @ApiModelProperty(value = "当前库存量") + private java.lang.Double dqkcl; + /**操作前库存量*/ + @Excel(name = "操作前库存量", width = 15) + @ApiModelProperty(value = "操作前库存量") + private java.lang.Double czqkcl; + /**备注*/ + @Excel(name = "备注", width = 15) + @ApiModelProperty(value = "备注") + private java.lang.String content; + private String jhPic; + private BigDecimal oldPrice; + private BigDecimal newPrice; + @Dict(dicCode = "crk_status") + private String crkStatus; + + private Double ddwNum;//多单位时的数量 + + /**物料类别名称*/ + @Excel(name = "物料类别名称", width = 15) + @ApiModelProperty(value = "物料类别名称") + private java.lang.String materialCategoryName; + /**物料类型名称*/ + @Excel(name = "物料类型名称", width = 15) + @ApiModelProperty(value = "物料类型名称") + private java.lang.String materialTypeName; + /**用药类型名称*/ + @Excel(name = "用药类型名称", width = 15) + @ApiModelProperty(value = "用药类型名称") + private java.lang.String materialMedicationName; + /**物料名称*/ + @Excel(name = "物料名称", width = 15) + @ApiModelProperty(value = "物料名称") + private java.lang.String materialName; + /**物料单位*/ + @Excel(name = "物料单位", width = 15) + @ApiModelProperty(value = "物料单位") + private java.lang.String materialUnits; + /**物料编码*/ + @Excel(name = "物料编码", width = 15) + @ApiModelProperty(value = "物料编码") + private java.lang.String materialNo; + /**规格型号*/ + @Excel(name = "规格型号", width = 15) + @ApiModelProperty(value = "规格型号") + private java.lang.String specificationModel; + /**物料图片*/ + @Excel(name = "物料图片", width = 15) + @ApiModelProperty(value = "物料图片") + private java.lang.String materialImg; + /**物料销售单价*/ + @Excel(name = "物料销售单价", width = 15) + @ApiModelProperty(value = "物料销售单价") + private java.math.BigDecimal salesUnitPrice; + + @TableField(exist = false) + private String paramDate; +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdInfoMapper.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdInfoMapper.java new file mode 100644 index 0000000..810d670 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdInfoMapper.java @@ -0,0 +1,31 @@ +package com.nu.modules.cgd.mapper; + +import java.util.List; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.nu.modules.cgd.entity.NuInvoicingCgdMain; +import org.apache.ibatis.annotations.Param; +import com.nu.modules.cgd.entity.NuInvoicingCgdInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: nu_invoicing_cgd_info + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +public interface NuInvoicingCgdInfoMapper extends BaseMapper { + + List queryCgdInfoList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + List selectWlNumList(@Param("params") NuInvoicingCgdInfo nuInvoicingCgdInfo); + + List totalPrice(@Param("dto") NuInvoicingCgdInfo nuInvoicingCgdInfo); + + IPage pageList(IPage page, @Param("dto") NuInvoicingCgdInfo nuInvoicingCgdInfo); + + List getFkdList(@Param("params") NuInvoicingCgdInfo nuInvoicingCgdInfo); +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdMainMapper.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdMainMapper.java new file mode 100644 index 0000000..6545f02 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdMainMapper.java @@ -0,0 +1,29 @@ +package com.nu.modules.cgd.mapper; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.nu.dto.CgdMainEntity; +import com.nu.modules.cgd.entity.NuInvoicingCgdMain; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @Description: nu_invoicing_cgd_main + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +public interface NuInvoicingCgdMainMapper extends BaseMapper { + + List getCgrList(@Param("params") CgdMainEntity cgdMainEntityDto); + + IPage calcList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + List selecCgdWlsfzytList(@Param("wlId") String wlId); + + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdSxdMapper.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdSxdMapper.java new file mode 100644 index 0000000..59c1a84 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuInvoicingCgdSxdMapper.java @@ -0,0 +1,17 @@ +package com.nu.modules.cgd.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import com.nu.modules.cgd.entity.NuInvoicingCgdSxd; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 进销存-采购单-随行单 + * @Author: jeecg-boot + * @Date: 2025-11-14 + * @Version: V1.0 + */ +public interface NuInvoicingCgdSxdMapper extends BaseMapper { + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuWarehouseMaterialCrkInfoMapper.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuWarehouseMaterialCrkInfoMapper.java new file mode 100644 index 0000000..ec088c7 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/NuWarehouseMaterialCrkInfoMapper.java @@ -0,0 +1,17 @@ +package com.nu.modules.cgd.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Param; +import com.nu.modules.cgd.entity.NuWarehouseMaterialCrkInfo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 库房物料出入库信息 + * @Author: jeecg-boot + * @Date: 2025-10-14 + * @Version: V1.0 + */ +public interface NuWarehouseMaterialCrkInfoMapper extends BaseMapper { + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdInfoMapper.xml b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdInfoMapper.xml new file mode 100644 index 0000000..8a4f77d --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdInfoMapper.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdMainMapper.xml b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdMainMapper.xml new file mode 100644 index 0000000..0a4ffe3 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdMainMapper.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdSxdMapper.xml b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdSxdMapper.xml new file mode 100644 index 0000000..58c1c40 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuInvoicingCgdSxdMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuWarehouseMaterialCrkInfoMapper.xml b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuWarehouseMaterialCrkInfoMapper.xml new file mode 100644 index 0000000..a963082 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/mapper/xml/NuWarehouseMaterialCrkInfoMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdInfoService.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdInfoService.java new file mode 100644 index 0000000..f90895f --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdInfoService.java @@ -0,0 +1,27 @@ +package com.nu.modules.cgd.service; + +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.nu.modules.cgd.entity.NuInvoicingCgdInfo; +import com.baomidou.mybatisplus.extension.service.IService; +import com.nu.modules.cgd.entity.NuInvoicingCgdMain; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @Description: nu_invoicing_cgd_info + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +public interface INuInvoicingCgdInfoService extends IService { + + + IPage pageList(Page page, NuInvoicingCgdInfo nuInvoicingCgdInfo); + + BigDecimal calcTotalPrice(NuInvoicingCgdInfo nuInvoicingCgdInfo); + + List getFkdList(NuInvoicingCgdInfo nuInvoicingCgdInfo); +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdMainService.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdMainService.java new file mode 100644 index 0000000..d3af394 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdMainService.java @@ -0,0 +1,35 @@ +package com.nu.modules.cgd.service; + +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.IService; +import com.nu.dto.CgdInfoEntity; +import com.nu.dto.CgdMainEntity; +import com.nu.modules.cgd.entity.NuInvoicingCgdMain; + +import javax.servlet.http.HttpServletRequest; +import java.util.Map; + +/** + * @Description: nu_invoicing_cgd_main + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +public interface INuInvoicingCgdMainService extends IService { + + void rukuInfo(NuInvoicingCgdMain nuInvoicingCgdMain); + + void auditInfo(NuInvoicingCgdMain nuInvoicingCgdMain); + + IPage calcList(Page page, QueryWrapper queryWrapper); + + IPage queryCgdList(Integer pageNo, Integer pageSize, CgdMainEntity cgdMainEntityDto, HttpServletRequest req); + + IPage queryCgdInfoList(Integer pageNo, Integer pageSize, CgdInfoEntity cgdInfoEntityDto, HttpServletRequest req); + + Map editPrice(CgdInfoEntity cgdInfoEntityDto); + + Map getCgdInfoByCgdId(CgdMainEntity cgdMainEntityDto); +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdSxdService.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdSxdService.java new file mode 100644 index 0000000..c21ac5c --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuInvoicingCgdSxdService.java @@ -0,0 +1,14 @@ +package com.nu.modules.cgd.service; + +import com.nu.modules.cgd.entity.NuInvoicingCgdSxd; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 进销存-采购单-随行单 + * @Author: jeecg-boot + * @Date: 2025-11-14 + * @Version: V1.0 + */ +public interface INuInvoicingCgdSxdService extends IService { + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuWarehouseMaterialCrkInfoService.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuWarehouseMaterialCrkInfoService.java new file mode 100644 index 0000000..22210cc --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/INuWarehouseMaterialCrkInfoService.java @@ -0,0 +1,14 @@ +package com.nu.modules.cgd.service; + +import com.nu.modules.cgd.entity.NuWarehouseMaterialCrkInfo; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * @Description: 库房物料出入库信息 + * @Author: jeecg-boot + * @Date: 2025-10-14 + * @Version: V1.0 + */ +public interface INuWarehouseMaterialCrkInfoService extends IService { + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdInfoServiceImpl.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdInfoServiceImpl.java new file mode 100644 index 0000000..45e079f --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdInfoServiceImpl.java @@ -0,0 +1,79 @@ +package com.nu.modules.cgd.service.impl; + +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 com.nu.modules.cgd.entity.NuInvoicingCgdInfo; +import com.nu.modules.cgd.entity.NuInvoicingCgdMain; +import com.nu.modules.cgd.mapper.NuInvoicingCgdInfoMapper; +import com.nu.modules.cgd.service.INuInvoicingCgdInfoService; +import org.apache.commons.lang.StringUtils; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.util.List; + +/** + * @Description: nu_invoicing_cgd_info + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Service +public class NuInvoicingCgdInfoServiceImpl extends ServiceImpl implements INuInvoicingCgdInfoService { + + @Override + public IPage pageList(Page page, NuInvoicingCgdInfo dto) { + //计算总金额 + BigDecimal totalSum = BigDecimal.ZERO; // 用来存储总和 + { + //采购单下所有已入库物料的价格、数量 + List totalPriceList = baseMapper.totalPrice(dto); + for (NuInvoicingCgdInfo item : totalPriceList) { + if (item.getCrkje() != null && StringUtils.isNotBlank(item.getCrksl())) { + // 计算每条记录的 crkje * crksl + BigDecimal totalPrice = item.getCrkje().multiply(new BigDecimal(item.getCrksl())); + totalSum = totalSum.add(totalPrice); // 将每条记录的结果累加到 totalSum + } + } + } + + //分页数据 + IPage result = baseMapper.pageList(page, dto); + List records = result.getRecords(); + for (int i = 0; i < records.size(); i++) { + NuInvoicingCgdInfo item = records.get(i); + if (item.getCrkje() != null && StringUtils.isNotBlank(item.getCrksl())) { + // 计算每条记录的 crkje * crksl + item.setXiaoJi(item.getCrkje().multiply(new BigDecimal(item.getCrksl()))); + //总金额 + item.setZongJinE(totalSum); + } + } + + return result; + } + + @Override + public BigDecimal calcTotalPrice(NuInvoicingCgdInfo dto) { + BigDecimal totalSum = BigDecimal.ZERO; + { + //采购单下所有已入库物料的价格、数量 + List totalPriceList = baseMapper.totalPrice(dto); + for (NuInvoicingCgdInfo item : totalPriceList) { + if (item.getCrkje() != null && StringUtils.isNotBlank(item.getCrksl())) { + // 计算每条记录的 crkje * crksl + BigDecimal totalPrice = item.getCrkje().multiply(new BigDecimal(item.getCrksl())); + totalSum = totalSum.add(totalPrice); // 将每条记录的结果累加到 totalSum + } + } + } + return totalSum; + } + + @Override + public List getFkdList(NuInvoicingCgdInfo nuInvoicingCgdInfo) { + return baseMapper.getFkdList(nuInvoicingCgdInfo); + } +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdMainServiceImpl.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdMainServiceImpl.java new file mode 100644 index 0000000..a5136b9 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdMainServiceImpl.java @@ -0,0 +1,261 @@ +package com.nu.modules.cgd.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSONObject; +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 com.nu.dto.CgdInfoEntity; +import com.nu.dto.CgdMainEntity; +import com.nu.modules.cgd.entity.NuInvoicingCgdInfo; +import com.nu.modules.cgd.entity.NuInvoicingCgdMain; +import com.nu.modules.cgd.mapper.NuInvoicingCgdInfoMapper; +import com.nu.modules.cgd.mapper.NuInvoicingCgdMainMapper; +import com.nu.modules.cgd.mapper.NuInvoicingCgdSxdMapper; +import com.nu.modules.cgd.mapper.NuWarehouseMaterialCrkInfoMapper; +import com.nu.modules.cgd.service.INuInvoicingCgdMainService; +import com.nu.modules.suppliers.ISuppliersApi; +import com.nu.modules.sysconfig.ISysConfigApi; +import com.nu.utils.DictUtils; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.jeecg.common.system.api.ISysBaseAPI; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.system.query.QueryRuleEnum; +import org.jeecg.common.util.RedisUtil; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @Description: nu_invoicing_cgd_main + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Service +@Slf4j +public class NuInvoicingCgdMainServiceImpl extends ServiceImpl implements INuInvoicingCgdMainService { + + @Autowired + private NuInvoicingCgdInfoMapper cgdInfoMapper; + + @Autowired + private NuInvoicingCgdMainMapper cgdMainMapper; + + @Autowired + private NuWarehouseMaterialCrkInfoMapper crkInfoMapper; + @Autowired + private RedisUtil redisUtil; + + @Autowired + private NuInvoicingCgdSxdMapper sxdMapper; + + + @Autowired + private ISysConfigApi sysConfigApi; + + private String serverNetUrl; + @Autowired + private DictUtils dictUtils; + + + @Autowired + private ISysBaseAPI sysBaseAPI; + + @Override + public void rukuInfo(NuInvoicingCgdMain nuInvoicingCgdMain) { + } + + @Override + public void auditInfo(NuInvoicingCgdMain nuInvoicingCgdMain) { + cgdInfoMapper.delete(new QueryWrapper().eq("cgd_id",nuInvoicingCgdMain.getId())); + for(NuInvoicingCgdInfo nuInvoicingCgdInfo : nuInvoicingCgdMain.getCgdInfoList()){ + cgdInfoMapper.insert(nuInvoicingCgdInfo); + } + baseMapper.updateById(nuInvoicingCgdMain); + } + + @Override + public IPage calcList(Page page, QueryWrapper queryWrapper) { + //分页数据 + IPage result = baseMapper.calcList(page, queryWrapper); + List records = result.getRecords(); + for (int i = 0; i < records.size(); i++) { + NuInvoicingCgdMain item = records.get(i); + if (item.getCrkje() != null && StringUtils.isNotBlank(item.getCrksl())) { + // 计算每条记录的 crkje * crksl + item.setXiaoJi(item.getCrkje().multiply(new BigDecimal(item.getCrksl()))); + } + } + + return result; + } + + + + public IPage queryCgdList(Integer pageNo, Integer pageSize, CgdMainEntity cgdMainEntityDto, HttpServletRequest req) { + NuInvoicingCgdMain nuInvoicingCgdMain = new NuInvoicingCgdMain(); + BeanUtils.copyProperties(cgdMainEntityDto,nuInvoicingCgdMain); + Map customeRuleMap = new HashMap<>(); + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(nuInvoicingCgdMain, req.getParameterMap(), customeRuleMap); + queryWrapper.apply(StringUtils.isNotBlank(cgdMainEntityDto.getCgdParamInfo()),"(cgd_no like '%"+cgdMainEntityDto.getCgdParamInfo()+"%' or gys_name like '%"+cgdMainEntityDto.getCgdParamInfo()+"%' or qg_by like '%"+cgdMainEntityDto.getCgdParamInfo()+"%' or gys_lxr like '%"+cgdMainEntityDto.getCgdParamInfo()+"%')"); + queryWrapper.in(StringUtils.isNotBlank(cgdMainEntityDto.getSuppliers()),"gys_id",cgdMainEntityDto.getSuppliers()); + queryWrapper.eq(StringUtils.isNotBlank(cgdMainEntityDto.getCgBy()),"qg_by",cgdMainEntityDto.getCgBy()); + queryWrapper.gt(StringUtils.isNotBlank(cgdMainEntityDto.getStartTime()),"qg_date",cgdMainEntityDto.getStartTime()); + queryWrapper.lt(StringUtils.isNotBlank(cgdMainEntityDto.getEndTime()),"qg_date",cgdMainEntityDto.getEndTime()); + queryWrapper.eq(StringUtils.isNotBlank(cgdMainEntityDto.getNuId()),"nu_id",cgdMainEntityDto.getNuId()); +// queryWrapper.in(StringUtils.isNotBlank(cgdMainEntityDto.getStatus()),"status",cgdMainEntityDto.getStatus()); + if(StringUtils.isNotBlank(cgdMainEntityDto.getCgdType())){ + if (cgdMainEntityDto.getCgdType().indexOf(",")>-1){ + queryWrapper.in("cgd_type",cgdMainEntityDto.getCgdType().split(",")); + }else if (cgdMainEntityDto.getCgdType().indexOf(",")==-1){ + queryWrapper.eq("cgd_type",cgdMainEntityDto.getCgdType()); + } + } + queryWrapper.orderByDesc("create_time"); + Page page = new Page<>(pageNo, pageSize); + List list = cgdMainMapper.selectList(page,queryWrapper); + IPage entityPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); + entityPage.setRecords(BeanUtil.copyToList(list, CgdMainEntity.class)); + return entityPage; + } + + public IPage queryCgdInfoList(Integer pageNo, Integer pageSize, CgdInfoEntity cgdInfoEntityDto, HttpServletRequest req) { + NuInvoicingCgdInfo nuInvoicingCgdInfo = new NuInvoicingCgdInfo(); + String categoryId = cgdInfoEntityDto.getCategoryId(); + String typeId = cgdInfoEntityDto.getTypeId(); + String medicationId = cgdInfoEntityDto.getMedicationId(); + BeanUtils.copyProperties(cgdInfoEntityDto,nuInvoicingCgdInfo); +// nuInvoicingCgdInfo.setCategoryId(null); +// nuInvoicingCgdInfo.setTypeId(null); +// nuInvoicingCgdInfo.setMedicationId(null); +// QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper("a",nuInvoicingCgdInfo, req.getParameterMap()); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("a.cgd_id",cgdInfoEntityDto.getCgdId()); +// queryWrapper.eq("d.nu_id",cgdInfoEntityDto.getNuId()); + Page page = new Page<>(pageNo, pageSize); + queryWrapper.apply(StringUtils.isNotBlank(cgdInfoEntityDto.getWlParamInfo()),"( b.material_name like concat('%', '"+cgdInfoEntityDto.getWlParamInfo()+"' , '%') or\n" + + " b.pinyin like concat('%', '"+cgdInfoEntityDto.getWlParamInfo()+"' , '%') or\n" + + " b.material_no like concat('%', '"+cgdInfoEntityDto.getWlParamInfo()+"' , '%') or\n" + + " b.specification_model like concat('%', '"+cgdInfoEntityDto.getWlParamInfo()+"' , '%') )"); + queryWrapper.eq(StringUtils.isNotBlank(categoryId),"b.category_id",categoryId); + queryWrapper.eq(StringUtils.isNotBlank(typeId),"b.type_id",typeId); + queryWrapper.eq(StringUtils.isNotBlank(medicationId),"b.medication_id",medicationId); + List list = cgdInfoMapper.queryCgdInfoList(page,queryWrapper); +// getOpeMediaAddress(); + for (NuInvoicingCgdInfo cgdInfo : list){ + BigDecimal arrivalPrice = cgdInfo.getArrivalPrice(); + BigDecimal procurementPrice = cgdInfo.getProcurementPrice(); + BigDecimal totalPrice = new BigDecimal("0"); + if(arrivalPrice != null){ + totalPrice = arrivalPrice.multiply(new BigDecimal(cgdInfo.getPurchaseQuantity())); + }else{ + totalPrice = procurementPrice.multiply(new BigDecimal(cgdInfo.getPurchaseQuantity())); + } + cgdInfo.setTotalPrice(totalPrice); + +// if (cgdInfo.getMaterialImg() != null){ +// cgdInfo.setMaterialImg(getImageNetUrl(cgdInfo.getMaterialImg())); +// } + } + IPage entityPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); + entityPage.setRecords(BeanUtil.copyToList(list, CgdInfoEntity.class)); + return entityPage; + } + + /** + * 获取管理平台静态资源路径 + * + * @return + */ + private void getOpeMediaAddress() { + if (serverNetUrl == null || serverNetUrl.equals("")) { + JSONObject json = sysConfigApi.getByKey("ope_media_address"); + if (json != null) { + String configValue = json.getString("configValue"); + if (!configValue.endsWith("/")) { + configValue += "/"; + } + serverNetUrl = configValue; + } + } + } + + private String getImageNetUrl(String imageUrl) { + + return serverNetUrl + imageUrl; + } + + + + + + + + public Map editPrice(CgdInfoEntity cgdInfoEntityDto) { + Map map = new HashMap<>(); + NuInvoicingCgdInfo cgdInfo = new NuInvoicingCgdInfo(); + cgdInfo.setId(cgdInfoEntityDto.getId()); + cgdInfo.setArrivalPrice(cgdInfoEntityDto.getArrivalPrice()); +// BeanUtils.copyProperties(cgdInfoEntityDto,cgdInfo); + cgdInfoMapper.updateById(cgdInfo); + + //查询采购单id + String cgdId = cgdInfoMapper.selectById(cgdInfo.getId()).getCgdId(); + //查询采购单下的采购信息 + List cgdInfoList = cgdInfoMapper.selectList(new QueryWrapper().eq("cgd_id",cgdId)); + //汇总采购单的总价 + BigDecimal totalPrice = new BigDecimal("0"); + for (NuInvoicingCgdInfo info : cgdInfoList) { + BigDecimal price = new BigDecimal(info.getPurchaseQuantity()+""); + totalPrice = totalPrice.add(price.multiply(info.getArrivalPrice())); + } + //修改采购单总价 + NuInvoicingCgdMain cgdMain = new NuInvoicingCgdMain(); + cgdMain.setId(cgdId); + cgdMain.setTotalPrice(totalPrice); + cgdMainMapper.updateById(cgdMain); + + map.put("totalPrice",totalPrice.toString()); + +// NuInvoicingCgdMain cgdMainNo = cgdMainMapper.selectById(cgdId); +// DirectiveOrderBizLogEntity qgdInfoEntityDto = new DirectiveOrderBizLogEntity(); +// qgdInfoEntityDto.setBizTypeCode("CGD");// 业务类型编码(如:ql) +// qgdInfoEntityDto.setBizType("采购单");// 业务类型名称(如:请领) +// qgdInfoEntityDto.setBizNo(cgdMainNo.getCgdNo());//业务主表单号(如:Q10120260109001) +// qgdInfoEntityDto.setOptType("改价");//操作类型(如:提交) +// directiveOrderApi.addBizLog(qgdInfoEntityDto); + + return map; + } + + + + public Map getCgdInfoByCgdId(CgdMainEntity cgdMainEntityDto) { + JSONObject deptInfo = sysBaseAPI.getDeptInfo(); + String departName = deptInfo.getString("name"); + NuInvoicingCgdMain cgdMain = baseMapper.selectById(cgdMainEntityDto.getId()); + List list = cgdInfoMapper.selectList(new QueryWrapper().eq("cgd_id",cgdMain.getId())); + Map map = new HashMap<>(); + map.put("cgdNo",cgdMain.getCgdNo()); + map.put("qgDate",cgdMain.getQgDate()); + map.put("cgdType",cgdMain.getCgdType()); + map.put("cgdType_dictText",dictUtils.translateDictValue("cgd_type",cgdMain.getCgdType())); + map.put("departName",departName); + map.put("qgBy",cgdMain.getQgBy()); + map.put("createBy",cgdMain.getCreateBy()); + map.put("gysName",cgdMain.getGysName()); + map.put("list", list); + return map; + } + + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdSxdServiceImpl.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdSxdServiceImpl.java new file mode 100644 index 0000000..9ab2e95 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuInvoicingCgdSxdServiceImpl.java @@ -0,0 +1,19 @@ +package com.nu.modules.cgd.service.impl; + +import com.nu.modules.cgd.entity.NuInvoicingCgdSxd; +import com.nu.modules.cgd.mapper.NuInvoicingCgdSxdMapper; +import com.nu.modules.cgd.service.INuInvoicingCgdSxdService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 进销存-采购单-随行单 + * @Author: jeecg-boot + * @Date: 2025-11-14 + * @Version: V1.0 + */ +@Service +public class NuInvoicingCgdSxdServiceImpl extends ServiceImpl implements INuInvoicingCgdSxdService { + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuWarehouseMaterialCrkInfoServiceImpl.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuWarehouseMaterialCrkInfoServiceImpl.java new file mode 100644 index 0000000..770cbf2 --- /dev/null +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/cgd/service/impl/NuWarehouseMaterialCrkInfoServiceImpl.java @@ -0,0 +1,19 @@ +package com.nu.modules.cgd.service.impl; + +import com.nu.modules.cgd.entity.NuWarehouseMaterialCrkInfo; +import com.nu.modules.cgd.mapper.NuWarehouseMaterialCrkInfoMapper; +import com.nu.modules.cgd.service.INuWarehouseMaterialCrkInfoService; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Description: 库房物料出入库信息 + * @Author: jeecg-boot + * @Date: 2025-10-14 + * @Version: V1.0 + */ +@Service +public class NuWarehouseMaterialCrkInfoServiceImpl extends ServiceImpl implements INuWarehouseMaterialCrkInfoService { + +} diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/mq/suppliers/listener/SuppliersMQListener.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/mq/suppliers/listener/SuppliersMQListener.java index 265ed03..c1492dc 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/mq/suppliers/listener/SuppliersMQListener.java +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/mq/suppliers/listener/SuppliersMQListener.java @@ -5,9 +5,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.google.common.collect.Maps; -import com.nu.dto.SuppliersInfoMQDto; -import com.nu.dto.SuppliersMaterialInfoDto; -import com.nu.dto.WorkOrderMQDto; +import com.nu.dto.*; import com.nu.entity.NuWxNoticeEntity; import com.nu.entity.WxNoticeEntity; import com.nu.enums.WxClientType; @@ -277,4 +275,60 @@ public class SuppliersMQListener { List addInfoList = BeanUtil.copyToList(addList, NuBizSuppliersMaterialInfo.class); suppliersMaterialInfoService.saveBatch(addInfoList); } + + + + + + @AutoLog(value = "供应商-添加采购单信息") + @RabbitListener( + bindings = @QueueBinding( + value = @Queue(name = "nu.suppliers.addCgdMainList"), + exchange = @Exchange(name = "nu.suppliers.addCgdMainList", type = ExchangeTypes.DIRECT), + key = "nu.suppliers.addCgdMainList" + ), + errorHandler = "suppliersMQExceptionHandler" + ) + public void addCgdMainList(CgdBeanDto addCgtdDto) { + applyService.addCgdMainList(addCgtdDto); + } + + + @AutoLog(value = "供应商-添加采购单信息") + @RabbitListener( + bindings = @QueueBinding( + value = @Queue(name = "nu.suppliers.querenOrZuofei"), + exchange = @Exchange(name = "nu.suppliers.querenOrZuofei", type = ExchangeTypes.DIRECT), + key = "nu.suppliers.querenOrZuofei" + ), + errorHandler = "suppliersMQExceptionHandler" + ) + public void querenOrZuofei(CgdMainDto cgdMainDto) { + applyService.querenOrZuofei(cgdMainDto); + } + @AutoLog(value = "供应商-添加采购单信息") + @RabbitListener( + bindings = @QueueBinding( + value = @Queue(name = "nu.suppliers.editCgdInfoSl"), + exchange = @Exchange(name = "nu.suppliers.editCgdInfoSl", type = ExchangeTypes.DIRECT), + key = "nu.suppliers.editCgdInfoSl" + ), + errorHandler = "suppliersMQExceptionHandler" + ) + public void editCgdInfoSl(CgdInfoDto cgdInfoDto) { + applyService.editCgdInfoSl(cgdInfoDto); + } + + @AutoLog(value = "供应商-添加采购单信息") + @RabbitListener( + bindings = @QueueBinding( + value = @Queue(name = "nu.suppliers.cgdGuazhang"), + exchange = @Exchange(name = "nu.suppliers.cgdGuazhang", type = ExchangeTypes.DIRECT), + key = "nu.suppliers.cgdGuazhang" + ), + errorHandler = "suppliersMQExceptionHandler" + ) + public void cgdGuazhang(CgdMainDto cgdMainDto) { + applyService.cgdGuazhang(cgdMainDto); + } } diff --git a/nursing-unit-api/src/main/java/com/nu/modules/wechat/suppliers/SuppliersApi.java b/nursing-unit-api/src/main/java/com/nu/modules/wechat/suppliers/SuppliersApi.java index 450816f..1cd11aa 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/wechat/suppliers/SuppliersApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/wechat/suppliers/SuppliersApi.java @@ -1,18 +1,18 @@ package com.nu.modules.wechat.suppliers; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.google.common.collect.Maps; +import com.nu.dto.CgdInfoEntity; +import com.nu.dto.CgdMainEntity; import com.nu.dto.SuppliersMaterialInfoDto; import com.nu.entity.*; -import com.nu.modules.orgapplyinfo.entity.EmployeesApiEntity; -import com.nu.modules.orgapplyinfo.entity.OrgAllInfoApiEntity; import com.nu.modules.suppliers.ISuppliersApi; +import io.swagger.annotations.ApiOperation; import org.apache.commons.lang.StringUtils; import org.jeecg.common.api.vo.Result; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.ArrayList; +import javax.servlet.http.HttpServletRequest; import java.util.Date; import java.util.List; import java.util.Map; @@ -251,5 +251,41 @@ public class SuppliersApi { } + @ApiOperation(value = "采购单-查询采购单列表信息", notes = "采购单-查询采购单列表信息") + @GetMapping(value = "/queryCgdList") + public Result> queryCgdList(CgdMainEntity cgdMainEntityDto, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + IPage pageList = suppliersApi.queryCgdList(pageNo, pageSize, cgdMainEntityDto,req); + return Result.OK(pageList); + } + + + @ApiOperation(value = "采购单-查询采购单列表信息", notes = "采购单-查询采购单列表信息") + @GetMapping(value = "/queryCgdInfoList") + public Result> queryCgdInfoList(CgdInfoEntity cgdInfoEntity, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + IPage pageList = suppliersApi.queryCgdInfoList(pageNo, pageSize, cgdInfoEntity,req); + return Result.OK(pageList); + } + + + @ApiOperation(value = "采购单-修改供应商采购价格", notes = "采购单-修改供应商采购价格") + @PostMapping(value = "/editArrivalPrice") + public Result editArrivalPrice(@RequestBody CgdInfoEntity cgdMainEntityDto) { + CgdInfoEntity pageList = suppliersApi.editArrivalPrice(cgdMainEntityDto); + return Result.OK(pageList); + } + + @ApiOperation(value = "采购单-确认单据", notes = "采购单-确认单据") + @PostMapping(value = "/cgdQueren") + public Result cgdQueren(@RequestBody CgdMainEntity cgdMainEntity) { + CgdMainEntity pageList = suppliersApi.cgdQueren(cgdMainEntity); + return Result.OK(pageList); + } + } diff --git a/nursing-unit-common/src/main/java/com/nu/dto/CgdBeanDto.java b/nursing-unit-common/src/main/java/com/nu/dto/CgdBeanDto.java new file mode 100644 index 0000000..262be5c --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/dto/CgdBeanDto.java @@ -0,0 +1,19 @@ +package com.nu.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description: nu_invoicing_cgd_main + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Data +public class CgdBeanDto implements Serializable { + private static final long serialVersionUID = 1L; + + List list; +} diff --git a/nursing-unit-common/src/main/java/com/nu/dto/CgdInfoDto.java b/nursing-unit-common/src/main/java/com/nu/dto/CgdInfoDto.java new file mode 100644 index 0000000..2ddfdfa --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/dto/CgdInfoDto.java @@ -0,0 +1,125 @@ +package com.nu.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.jeecg.common.aspect.annotation.Dict; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +/** + * @Description: nu_invoicing_cgd_info + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Data +public class CgdInfoDto implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + private String id; + /**createBy*/ + /**createTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + /**updateBy*/ + private String updateBy; + /**updateTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + /**sysOrgCode*/ + private String sysOrgCode; + /**请购单id*/ + private String mainId; + /**采购单id*/ + private String cgdId; + /**物料id*/ + private String wlId; + /**物料编码*/ + private String wlMaterialNo; + /**物料名称*/ + private String wlName; + /**采购单位*/ + private String wlUnits; + /**规格型号*/ + private String wlSpecificationModel; + /**上限*/ + private String wlUpperLimit; + /**下限*/ + private String wlLowerLimit; + /**供应商id*/ + private String suppliersId; + /**供应商名称*/ + private String suppliersName; + /**请购数量*/ + private Double purchaseQuantity; + /**银行*/ + private String brand; + /**品牌型号*/ + private String brandType; + /**生产厂家*/ + private String manufacturer; + /**库房*/ + private String nuId; + /**入库数量*/ + private Double rksl; + /**未入库数量*/ + private Double wrksl; + /**销账数量*/ + private Double xzsl; + /**采购单价*/ + private BigDecimal procurementPrice; + /**到货单间*/ + private BigDecimal arrivalPrice; + /**物料类别*/ + + private String categoryId; + /**物料类型*/ + private String typeId; + /**用药类型*/ + private String medicationId; + /**物料图片*/ + private String materialImg; + /**单据状态 0待入库 1挂账中 2已入库 3已销账*/ + private String status; + private String tagType; + private String tagName; + private String wlParamInfo; + private String kcsl; + private String dhbl; + + private String jhPic; + private Double jhNum; + private String jhId; + private String jhType;//0拣货 1销账 + + + private BigDecimal totalPrice; + + private String categoryName; + private String typeName; + private String medicationName; + private String materialUnits; + + + // 格式化getter方法 +// public String getProcurementPrice() { +// return procurementPrice != null ? +// procurementPrice.setScale(2, BigDecimal.ROUND_HALF_UP).toString() : null; +// } +// +// public String getArrivalPrice() { +// return arrivalPrice != null ? +// arrivalPrice.setScale(2, BigDecimal.ROUND_HALF_UP).toString() : null; +// } + + public String getTotalPrice() { + return totalPrice != null ? + totalPrice.setScale(2, BigDecimal.ROUND_HALF_UP).toString() : null; + } +} diff --git a/nursing-unit-common/src/main/java/com/nu/dto/CgdInfoEntity.java b/nursing-unit-common/src/main/java/com/nu/dto/CgdInfoEntity.java new file mode 100644 index 0000000..2ea6fcd --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/dto/CgdInfoEntity.java @@ -0,0 +1,138 @@ +package com.nu.dto; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecg.common.aspect.annotation.Dict; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +/** + * @Description: nu_invoicing_cgd_info + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Data +public class CgdInfoEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + private String id; + /**createBy*/ + /**createTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + /**updateBy*/ + private String updateBy; + /**updateTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + /**sysOrgCode*/ + private String sysOrgCode; + /**请购单id*/ + private String mainId; + /**采购单id*/ + private String cgdId; + /**物料id*/ + private String wlId; + /**物料编码*/ + private String wlMaterialNo; + /**物料名称*/ + private String wlName; + /**采购单位*/ + private String wlUnits; + /**规格型号*/ + private String wlSpecificationModel; + /**上限*/ + private String wlUpperLimit; + /**下限*/ + private String wlLowerLimit; + /**供应商id*/ + private String suppliersId; + /**供应商名称*/ + private String suppliersName; + /**请购数量*/ + private Double purchaseQuantity; + /**银行*/ + private String brand; + /**品牌型号*/ + private String brandType; + /**生产厂家*/ + private String manufacturer; + /**库房*/ + private String nuId; + /**入库数量*/ + private Double rksl; + /**未入库数量*/ + private Double wrksl; + /**销账数量*/ + private Double xzsl; + /**采购单价*/ + private BigDecimal procurementPrice; + /**到货单间*/ + private BigDecimal arrivalPrice; + /**物料类别*/ + + @Dict(dictTable = "nu_config_material_category", dicText = "category_name", dicCode = "id") + private String categoryId; + /**物料类型*/ + @Dict(dictTable = "nu_config_material_type", dicText = "type_name", dicCode = "id") + private String typeId; + /**用药类型*/ + @Dict(dictTable = "nu_config_material_medication", dicText = "medication_name", dicCode = "id") + private String medicationId; + /**物料图片*/ + private String materialImg; + /**单据状态 0待入库 1挂账中 2已入库 3已销账*/ + @Dict(dicCode = "cgd_wl_status") + private String status; + private String tagType; + private String tagName; + private String wlParamInfo; + private String kcsl; + private String dhbl; + + private String jhPic; + private Double jhNum; + private String jhId; + private String jhType;//0拣货 1销账 + + + private BigDecimal totalPrice; + + private java.lang.String categoryName; + private java.lang.String typeName; + private java.lang.String medicationName; + private java.lang.String materialUnits; + + + // 格式化getter方法 +// public String getProcurementPrice() { +// return procurementPrice != null ? +// procurementPrice.setScale(2, BigDecimal.ROUND_HALF_UP).toString() : null; +// } +// +// public String getArrivalPrice() { +// return arrivalPrice != null ? +// arrivalPrice.setScale(2, BigDecimal.ROUND_HALF_UP).toString() : null; +// } + + public String getTotalPrice() { + return totalPrice != null ? + totalPrice.setScale(2, BigDecimal.ROUND_HALF_UP).toString() : null; + } +} diff --git a/nursing-unit-common/src/main/java/com/nu/dto/CgdMainDto.java b/nursing-unit-common/src/main/java/com/nu/dto/CgdMainDto.java new file mode 100644 index 0000000..e9c6b00 --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/dto/CgdMainDto.java @@ -0,0 +1,124 @@ +package com.nu.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecg.common.aspect.annotation.Dict; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * @Description: nu_invoicing_cgd_main + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Data +public class CgdMainDto implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + private String id; + /**createBy*/ + private String createBy; + /**createTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + /**updateBy*/ + private String updateBy; + /**updateTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + /**请购单id*/ + private String qgdId; + /**采购单单号*/ + private String cgdNo; + /**供应商id*/ + private String gysId; + /**请购时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + private Date qgDate; + /**请购人*/ + private String qgBy; + /**供应商联系人*/ + private String gysLxr; + /**供应商联系电话*/ + private String gysLxrdh; + /**供应商openId*/ + private String gysOpenId; + /**付款方式*/ + private String gysFkfs; + /**状态 0:待采购 1:采购中 2采购完成 3作废*/ + @Dict(dicCode = "cgd_status") + private String status; + /**采购单类型 0采购单 1挂帐单 2结账单 9作废*/ + private String cgdType; + /**随行单*/ + private String sxdPath; + /**销账单*/ + private String xzdPath; + /**结账单*/ + private String jzdPath; + /**审核人*/ + private String reviewedBy; + /**审核人*/ + private String gysName; + // 总价 + private BigDecimal totalPrice; + /**审核时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date reviewedTime; + /**审核备注*/ + private String content; + private String cgdParamInfo; + + private List cgdInfoList; + private String suppliers; + private String startTime; + private String endTime; + private String cgBy; + + /**拣货人*/ + private String jhBy; + + /**拣货时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date jhTime; + /**完结人*/ + private String wjBy; + + /**完结时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date wjTime; + + /**作废人*/ + private String zfBy; + + /**作废时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date zfTime; + + private String nuId; + private String sysOrgCode; + private String izNew; + private String departName; + private String izGysConfirmed; + private String comRegisterAddress; + private String qgTel; + private String[] qgdIds; + private String izGuazhang; +} diff --git a/nursing-unit-common/src/main/java/com/nu/dto/CgdMainEntity.java b/nursing-unit-common/src/main/java/com/nu/dto/CgdMainEntity.java new file mode 100644 index 0000000..dea2f1f --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/dto/CgdMainEntity.java @@ -0,0 +1,126 @@ +package com.nu.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecg.common.aspect.annotation.Dict; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * @Description: nu_invoicing_cgd_main + * @Author: jeecg-boot + * @Date: 2025-09-26 + * @Version: V1.0 + */ +@Data +public class CgdMainEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + private String id; + /**createBy*/ + @Dict(dicCode = "username", dictTable = "sys_user",dicText = "realname") + private String createBy; + /**createTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + /**updateBy*/ + private String updateBy; + /**updateTime*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + /**请购单id*/ + private String qgdId; + /**采购单单号*/ + private String cgdNo; + /**供应商id*/ + private String gysId; + /**请购时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + private Date qgDate; + /**请购人*/ + private String qgBy; + /**供应商联系人*/ + private String gysLxr; + /**供应商联系电话*/ + private String gysLxrdh; + /**供应商openId*/ + private String gysOpenId; + /**付款方式*/ + private String gysFkfs; + /**状态 0:待采购 1:采购中 2采购完成 3作废*/ + @Dict(dicCode = "cgd_status") + private String status; + /**采购单类型 0采购单 1挂帐单 2结账单 9作废*/ + @Dict(dicCode = "cgd_type") + private String cgdType; + /**随行单*/ + private String sxdPath; + /**销账单*/ + private String xzdPath; + /**结账单*/ + private String jzdPath; + /**审核人*/ + private String reviewedBy; + /**审核人*/ + private String gysName; + // 总价 + private BigDecimal totalPrice; + /**审核时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date reviewedTime; + /**审核备注*/ + private String content; + private String cgdParamInfo; + + private List cgdInfoList; + private String suppliers; + private String startTime; + private String endTime; + private String cgBy; + + /**拣货人*/ + private String jhBy; + + /**拣货时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date jhTime; + /**完结人*/ + private String wjBy; + + /**完结时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date wjTime; + + /**作废人*/ + private String zfBy; + + /**作废时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "审核时间") + private Date zfTime; + + private String nuId; + private String sysOrgCode; + private String izNew; + private String departName; + private String izGysConfirmed; + private String comRegisterAddress; + private String qgTel; + private String[] qgdIds; + private String izGuazhang; +}