From f24df4b4219cc3c8e61851bc1c63167917eded72 Mon Sep 17 00:00:00 2001 From: wangpengfei <1928057482@qq.com> Date: Mon, 12 Jun 2023 10:51:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ApprovalRecordAppMapper.java | 29 ++ .../ApprovalRecordAppMapper.xml | 30 ++ .../approvalrecord/ApprovalRecordAppRest.java | 42 +++ .../ApprovalRecordAppService.java | 82 ++++++ .../ProcurementDetailsAppMapper.java | 69 +++++ .../ProcurementDetailsAppMapper.xml | 34 +++ .../ProcurementDetailsAppRest.java | 90 ++++++ .../ProcurementDetailsAppService.java | 257 ++++++++++++++++++ 8 files changed, 633 insertions(+) create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppMapper.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppMapper.xml create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppRest.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppService.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.xml create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppRest.java create mode 100644 yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppService.java diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppMapper.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppMapper.java new file mode 100644 index 00000000..415301b6 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppMapper.java @@ -0,0 +1,29 @@ +package com.yxt.supervise.cyf.app.approvalrecord; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecord; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; +import java.util.Map; + +/** + * @author wangpengfei + * @date 2023/5/4 14:37 + */ +@Mapper +public interface ApprovalRecordAppMapper extends BaseMapper { + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + @Select("select *,t.number as tankNumber from crude_oil_inventory_record left join tank_information t on t.sid =c.tankSid where sid=#{sid}") + ApprovalRecord getCrudeBySid(@Param("sid")String sid); + void insertCrudeOilFiles(List> maps); + + List selectRecordBySid(@Param("sid") String sid); +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppMapper.xml b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppMapper.xml new file mode 100644 index 00000000..b89dc703 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppMapper.xml @@ -0,0 +1,30 @@ + + + + + + + + + + \ No newline at end of file diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppRest.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppRest.java new file mode 100644 index 00000000..c442bbd0 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppRest.java @@ -0,0 +1,42 @@ +package com.yxt.supervise.cyf.app.approvalrecord; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordDto; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordQuery; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * @author wangpengfei + * @date 2023/5/4 14:38 + */ +@Api(tags = "审批记录信息") +@RestController +@RequestMapping("cyf/app/approval") +public class ApprovalRecordAppRest { + @Autowired + ApprovalRecordAppService ApprovalRecordService; + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = ApprovalRecordService.listPageVo(pq); + return rb.success().setData(pv); + } + @ApiOperation("新增") + @PostMapping("/save") + public ResultBean save (@RequestBody ApprovalRecordDto dto){ + return ApprovalRecordService.save(dto); + } + + @ApiOperation("查询订单审批详细信息") + @GetMapping("/getRecordBySid/{sid}") + public ResultBean selectRecordBySid(@PathVariable String sid){ + return ApprovalRecordService.selectRecordBySid(sid); + } +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppService.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppService.java new file mode 100644 index 00000000..90f000e2 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/approvalrecord/ApprovalRecordAppService.java @@ -0,0 +1,82 @@ +package com.yxt.supervise.cyf.app.approvalrecord; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecord; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordDto; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordQuery; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordVo; +import com.yxt.supervise.cyf.biz.tankinformation.TankInformationMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; + +/** + * @author wangpengfei + * @date 2023/5/4 14:37 + */ +@Service +public class ApprovalRecordAppService extends MybatisBaseService { + @Autowired + TankInformationMapper tankInformationMapper; + + public PagerVo listPageVo(PagerQuery pq) { + ApprovalRecordQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); +// if (StringUtils.isNotBlank(query.getDate())) { +// qw.eq("STR_TO_DATE(c.recordDate,'%Y-%m-%d')", query.getDate()); +// } +// if (StringUtils.isNotBlank(query.getNumber())) { +// qw.like("t.number", query.getNumber()); +// } + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + @Transactional + public ResultBean save(ApprovalRecordDto dto){ + ResultBean rb=new ResultBean(); + ApprovalRecord entity=new ApprovalRecord(); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + Date curDate = new Date(); + String dfmt = DateUtil.format(curDate, "yyyy-MM-dd"); + baseMapper.insert(entity); + //油罐每日填写信息修改 + return rb.success().setMsg("新增成功"); + } + public ResultBean update (ApprovalRecordDto dto){ + ResultBean rb=new ResultBean(); + String dtoSid = dto.getSid(); + ApprovalRecord entity=fetchBySid(dtoSid); + BeanUtil.copyProperties(dto, entity, "id", "sid"); + baseMapper.updateById(entity); + return rb.success().setMsg("修改成功"); + } + public ResultBean getCrudeBySid(String sid){ + ResultBean rb=new ResultBean(); + ApprovalRecord ApprovalRecord=baseMapper.getCrudeBySid(sid); + return rb.success().setData(ApprovalRecord); + } + public ResultBean del(String sid){ + ResultBean rb=new ResultBean(); + baseMapper.delete(new QueryWrapper().eq("sid",sid)); + return rb.success().setMsg("删除成功"); + } + + public ResultBean selectRecordBySid(String sid){ + ResultBean rb = ResultBean.fireFail(); + List ApprovalRecord = baseMapper.selectRecordBySid(sid); + return rb.success().setData(ApprovalRecord); + } +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.java new file mode 100644 index 00000000..5580c044 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.java @@ -0,0 +1,69 @@ +package com.yxt.supervise.cyf.app.procurementdetails; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.yxt.supervise.cyf.api.crudeoiltypeinformation.CrudeOilTypeInformationVo; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetails; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetailsVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + * @author wangpengfei + * @date 2023/5/4 14:37 + */ +@Mapper +public interface ProcurementDetailsAppMapper extends BaseMapper { + IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw,@Param("type") String type); + @Select("select * from procurement_details where state =#{state}") + List listByState(String state); + @Select(" SELECT" + + " *,t.name as typeName,i.inventory as inventory" + + " FROM" + + " material_outbound o" + + " left join material_inventory i on i.sid=o.inventorySid" + + " left join material_type t on t.sid=i.typeSid") + List outboundList(); + @Select("select * from procurement_details where sid=#{sid}") + List getProcurementBySid(@Param("sid")String sid); + @Select("SELECT\n" + + "\td.*,\n" + + "\ts.supplierNumber AS supplierNumber,\n" + + "\ts.supplierName AS supplierName,\n" + + "CASE\n" + + "\t\td.state \n" + + "\t\tWHEN 1 THEN\n" + + "\t\t'待提交' \n" + + "\t\tWHEN 2 THEN\n" + + "\t\t'经理审批' \n" + + "\t\tWHEN 3 THEN\n" + + "\t\t'监管审批' \n" + + "\t\tWHEN 4 THEN\n" + + "\t\t'银行审批' \n" + + "\t\tWHEN 5 THEN\n" + + "\t\t'财务审批' \n" + + "\t\tWHEN 6 THEN\n" + + "\t\t'在途' \n" + + "\t\tWHEN 7 THEN\n" + + "\t\t'已入库' \n" + + "\tEND AS stateValue ,count(1) as amount,\n" + + "\tsum(d.price * d.weight) as totalValue\n" + + "FROM\n" + + "\tprocurement_details d\n" + + "\tLEFT JOIN supplier_information s ON d.supplierSid = s.sid\n" + + "\tLEFT JOIN crude_oil_type_information c ON c.sid = d.typeSid \n" + + "WHERE\n" + + "\td.sid=#{sid} \n" + + "GROUP BY\n" + + "\td.sid ") + ProcurementDetailsVo getProBySid(@Param("sid")String sid); + @Select("select * from crude_oil_type_information where sid=#{sid}") + CrudeOilTypeInformationVo getCrudeBySid(@Param("sid")String sid); + @Select("select * from procurement_details where state=#{state} group by sid") + List getProByState(@Param("state")String state); +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.xml b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.xml new file mode 100644 index 00000000..bdb9cfa6 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppMapper.xml @@ -0,0 +1,34 @@ + + + + + + + + \ No newline at end of file diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppRest.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppRest.java new file mode 100644 index 00000000..26363381 --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppRest.java @@ -0,0 +1,90 @@ +package com.yxt.supervise.cyf.app.procurementdetails; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetailsDto; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetailsQuery; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetailsVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @author wangpengfei + * @date 2023/5/4 14:38 + */ +@Api(tags = "采购信息") +@RestController +@RequestMapping("cyf/app/procurement") +public class ProcurementDetailsAppRest { + @Autowired + ProcurementDetailsAppService RawProcurementDetailsService; + + @ApiOperation("根据条件分页查询数据的列表") + @PostMapping("/listPage") + public ResultBean> listPage(@RequestBody PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = RawProcurementDetailsService.listPageVo(pq); + return rb.success().setData(pv); + } + @ApiOperation("数据的列表") + @PostMapping("/list") + public ResultBean> list() { + ResultBean rb = ResultBean.fireFail(); + List pv = RawProcurementDetailsService.lists(); + return rb.success().setData(pv); + } + @ApiOperation("根据订单状态查询数据的列表") + @PostMapping("/listByState") + public ResultBean> listBystate(String state) { + ResultBean rb = ResultBean.fireFail(); + List pv = RawProcurementDetailsService.listByState(state); + return rb.success().setData(pv); + } + @ApiOperation("新增") + @PostMapping("/save") + public ResultBean save (@RequestBody ProcurementDetailsDto dto){ + return RawProcurementDetailsService.save(dto); + } + @ApiOperation("提交") + @PostMapping("/submit") + public ResultBean submit (@RequestBody ProcurementDetailsDto dto){ + return RawProcurementDetailsService.submit(dto); + } + @ApiOperation("修改") + @PostMapping("/update") + public ResultBean update (@RequestBody ProcurementDetailsDto dto){ + return RawProcurementDetailsService.update(dto); + } + @ApiOperation("修改") + @PostMapping("/updateByState") + public ResultBean updateByState (@RequestBody ProcurementDetailsDto dto){ + return RawProcurementDetailsService.updateByState(dto); + } + + @ApiOperation("根据sid查询") + @GetMapping("/getProcurementBySid/{sid}") + public ResultBean getOutboundBySid(@PathVariable String sid){ + return RawProcurementDetailsService.getProcurementBySid(sid); + } + @ApiOperation("删除") + @DeleteMapping("/delete/{sid}") + public ResultBean delete(@PathVariable String sid ){ + return RawProcurementDetailsService.del(sid); + } + + /** + * 查询在途订单 + * @param state + * @return + */ + @ApiOperation("查询在途订单") + @GetMapping("/getProcByState/{sid}") + public ResultBean getProcByState(@PathVariable String state){ + return RawProcurementDetailsService.getProcByState(state); + } +} diff --git a/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppService.java b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppService.java new file mode 100644 index 00000000..d4882b7a --- /dev/null +++ b/yxt-supervise-cyf/yxt-supervise-cyf-biz/src/main/java/com/yxt/supervise/cyf/app/procurementdetails/ProcurementDetailsAppService.java @@ -0,0 +1,257 @@ +package com.yxt.supervise.cyf.app.procurementdetails; + +import cn.dev33.satoken.stp.StpUtil; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.PagerUtil; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import com.yxt.supervise.cyf.api.approvalrecord.ApprovalRecordDto; +import com.yxt.supervise.cyf.api.crudeoiltypeinformation.CrudeOilTypeInformationDto; +import com.yxt.supervise.cyf.api.crudeoiltypeinformation.CrudeOilTypeInformationVo; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetails; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetailsDto; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetailsQuery; +import com.yxt.supervise.cyf.api.procurementdetails.ProcurementDetailsVo; +import com.yxt.supervise.cyf.api.sysuser.SysUser; +import com.yxt.supervise.cyf.biz.approvalrecord.ApprovalRecordService; +import com.yxt.supervise.cyf.biz.crudeoilstorage.CrudeOilStorageMapper; +import com.yxt.supervise.cyf.biz.sysuser.CyfSysUserMapper; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @author wangpengfei + * @date 2023/5/4 14:37 + */ +@Service +public class ProcurementDetailsAppService extends MybatisBaseService { + + @Autowired + CrudeOilStorageMapper crudeOilStorageMapper; + @Autowired + ApprovalRecordService approvalRecordService; + @Autowired + CyfSysUserMapper sysUserMapper; + public PagerVo listPageVo(PagerQuery pq) { + ProcurementDetailsQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); +// if (StringUtils.isNotBlank(query.getDate())) { +// qw.eq("STR_TO_DATE(o.deliveryDate,'%Y-%m-%d')", query.getDate()); +// } + if (StringUtils.isNotBlank(query.getSupplierName())) { + qw.eq("s.supplierNumber", query.getSupplierName()); + } + if (StringUtils.isNotBlank(query.getState())) { + qw.eq("d.state", query.getState()); + } + String type =query.getType(); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw,type); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + public List lists() { + String state="6"; + List pagging = baseMapper.listByState(state); + return pagging; + } + + public List listByState(String state) { + List pagging = baseMapper.listByState(state); + return pagging; + } + + public ResultBean save(ProcurementDetailsDto dto){ + ResultBean rb=new ResultBean(); + Date curDate = new Date(); + String dfmt = DateUtil.format(curDate, "yyyy-MM-dd"); + ProcurementDetails entity=new ProcurementDetails(); + SysUser sysUser=sysUserMapper.selectOne(new QueryWrapper().eq("id",StpUtil.getLoginIdAsString())); + if(null==dto.getSid() || ""==dto.getSid()){ + BeanUtil.copyProperties(dto, entity, "id","sid"); + ApprovalRecordDto recordDto=new ApprovalRecordDto(); + recordDto.setProSid(entity.getSid()); + recordDto.setApprover(sysUser.getSid()); + recordDto.setApprovalOpinions(dto.getApprovalOpinions()==null?"订单创建":dto.getApprovalOpinions()); + recordDto.setOperate("1"); + recordDto.setApprovalDate(dfmt); + approvalRecordService.save(recordDto); + }else{ + BeanUtil.copyProperties(dto, entity, "id"); + } + //多个商品 + if(dto.getCommodityList().size()>1){ + for(CrudeOilTypeInformationDto pro:dto.getCommodityList()){ + entity.setTypeSid(pro.getSid()); + entity.setState(1); + entity.setType("1"); + entity.setWeight(pro.getWeight()); + entity.setPrice(pro.getPrice()); + baseMapper.insert(entity); + } + return rb.success().setMsg("新增成功"); + } + for(CrudeOilTypeInformationDto pro:dto.getCommodityList()){ + entity.setTypeSid(pro.getSid()); + entity.setState(1); + entity.setType("1"); + entity.setWeight(pro.getWeight()); + entity.setPrice(pro.getPrice()); + baseMapper.insert(entity); + } + return rb.success().setMsg("新增成功"); + } + public ResultBean submit(ProcurementDetailsDto dto){ + ResultBean rb=new ResultBean(); + Date curDate = new Date(); + String dfmt = DateUtil.format(curDate, "yyyy-MM-dd"); + String sid =dto.getSid(); + List procurementDetails=baseMapper.selectList(new QueryWrapper().eq("sid",sid)); + SysUser sysUser=sysUserMapper.selectOne(new QueryWrapper().eq("id",StpUtil.getLoginIdAsString())); + //不存在保存加提交 + if(sid.equals("")||sid.equals(null)){ + ProcurementDetails entity=new ProcurementDetails(); + BeanUtil.copyProperties(dto, entity, "sid"); + //提交记录 + ApprovalRecordDto recordDto=new ApprovalRecordDto(); + recordDto.setProSid(entity.getSid()); + recordDto.setApprover(sysUser.getSid()); + recordDto.setApprovalOpinions(dto.getApprovalOpinions()==null?"订单创建":dto.getOperate()); + recordDto.setOperate("1"); + recordDto.setApprovalDate(dfmt); + approvalRecordService.save(recordDto); + //发起采购申请记录 + recordDto.setOperate("2"); + recordDto.setApprovalOpinions(dto.getApprovalOpinions()==null?"订单发起":dto.getOperate()); + approvalRecordService.save(recordDto); + if(dto.getCommodityList().size()>1){ + for(CrudeOilTypeInformationDto pro:dto.getCommodityList()){ + entity.setTypeSid(pro.getSid()); + entity.setState(2); + entity.setType("1"); + entity.setWeight(pro.getWeight()); + entity.setPrice(pro.getPrice()); + baseMapper.insert(entity); + } + return rb.success().setMsg("新增成功"); + } + for(CrudeOilTypeInformationDto pro:dto.getCommodityList()){ + entity.setTypeSid(pro.getSid()); + entity.setState(2); + entity.setType("1"); + entity.setWeight(pro.getWeight()); + entity.setPrice(pro.getPrice()); + baseMapper.insert(entity); + } + }else{ + //存在该状态 + List list =baseMapper.selectList(new QueryWrapper().eq("sid",sid)); + for(ProcurementDetails pro:list){ + pro.setState(procurementDetails.get(0).getState()+1); + baseMapper.updateById(pro); + } + ApprovalRecordDto recordDto=new ApprovalRecordDto(); + recordDto.setProSid(list.get(0).getSid()); + recordDto.setApprover(sysUser.getSid()); + recordDto.setApprovalOpinions(dto.getApprovalOpinions()==null?"订单发起":dto.getApprovalOpinions()); + recordDto.setOperate(dto.getOperate()==null?"2":dto.getOperate()); + recordDto.setApprovalDate(dfmt); + approvalRecordService.save(recordDto); + } + return rb.success().setMsg("提交成功"); + } + + public ResultBean update (ProcurementDetailsDto dto){ + ResultBean rb=new ResultBean(); + String dtoSid = dto.getSid(); + baseMapper.delete(new QueryWrapper().eq("sid",dtoSid)); + dto.setSid(dtoSid); + save(dto); + return rb.success().setMsg("修改成功"); + } + public ResultBean updateByState (ProcurementDetailsDto dto){ + ResultBean rb=new ResultBean(); + SysUser sysUser=sysUserMapper.selectOne(new QueryWrapper().eq("id",StpUtil.getLoginIdAsString())); + String dtoSid = dto.getSid(); + ApprovalRecordDto recordDto=new ApprovalRecordDto(); + List list=baseMapper.selectList(new QueryWrapper().eq("sid",dtoSid)); + Date curDate = new Date(); + String dfmt = DateUtil.format(curDate, "yyyy-MM-dd"); + if(dto.getOperate().equals("3")){ + //审核通过 + for(ProcurementDetails procurementDetails:list){ + procurementDetails.setPaymentDate(dfmt); + procurementDetails.setPayment(dto.getPayment()==0?0:dto.getPayment()); + procurementDetails.setPayer(dto.getPayer()==null?"":dto.getPayer()); + procurementDetails.setPayerBank(dto.getPayerBank()==null?"":dto.getPayerBank()); + procurementDetails.setPayee(dto.getPayee()==null?"":dto.getPayee()); + procurementDetails.setPayeeBank(dto.getPayeeBank()==null?"":dto.getPayeeBank()); + procurementDetails.setPaymentSummary(dto.getPaymentSummary()==null?"":dto.getPaymentSummary()); + procurementDetails.setState(procurementDetails.getState()+1); + baseMapper.updateById(procurementDetails); + } + recordDto.setOperate(dto.getOperate()); + }else if(dto.getOperate().equals("4")){ + //审核不通过 + for(ProcurementDetails procurementDetails:list){ + procurementDetails.setState(8); + baseMapper.updateById(procurementDetails); + } + recordDto.setOperate(dto.getOperate()); + } + recordDto.setProSid(dtoSid); + recordDto.setApprover(sysUser.getSid()); + recordDto.setApprovalOpinions(dto.getApprovalOpinions()); + recordDto.setApprovalDate(dfmt); + approvalRecordService.save(recordDto); + return rb.success().setMsg("修改成功"); + } + public ResultBean getProcurementBySid(String sid){ + ResultBean rb=new ResultBean(); + List RawProcurementDetails=baseMapper.getProcurementBySid(sid); + ProcurementDetailsVo procurementDetailsVo=baseMapper.getProBySid(sid); + List list =new ArrayList<>(); + for (ProcurementDetailsVo pro:RawProcurementDetails){ + CrudeOilTypeInformationVo crudeOilTypeInformationVo=baseMapper.getCrudeBySid(pro.getTypeSid()); + crudeOilTypeInformationVo.setWeight(pro.getWeight()); + crudeOilTypeInformationVo.setPrice(pro.getPrice()); + list.add(crudeOilTypeInformationVo); + } + procurementDetailsVo.setCommodityList(list); + return rb.success().setData(procurementDetailsVo); + } + public ResultBean del(String sid){ + ResultBean rb=new ResultBean(); + baseMapper.delete(new QueryWrapper().eq("sid",sid)); + return rb.success().setMsg("删除成功"); + } + public ResultBean getProcByState(String state){ + ResultBean rb=new ResultBean(); + Listlist=baseMapper.getProByState(state); + for(ProcurementDetailsVo procurementDetailsVo:list){ + Listdetails=baseMapper.selectList(new QueryWrapper().eq("sid",procurementDetailsVo.getSid())); + double i=0; + for(ProcurementDetails procurementDetails:details){ + i=i+(procurementDetails.getWeight()*procurementDetails.getPrice()); + } + procurementDetailsVo.setTotalValue(i); + list.add(procurementDetailsVo); + //入库数量 + + } + + + return rb.success().setData(list); + } + +}