12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397 |
- package com.ruoyi.approvalFlow.service.impl;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
- import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
- import com.ruoyi.approvalFlow.domain.*;
- import com.ruoyi.approvalFlow.domain.dto.AppAuditItemDTO;
- import com.ruoyi.approvalFlow.domain.enums.AuditStateEnum;
- import com.ruoyi.approvalFlow.domain.vo.AppAuditItemVO;
- import com.ruoyi.approvalFlow.mapper.*;
- import com.ruoyi.approvalFlow.service.IAuditPathsService;
- import com.ruoyi.basicData.domain.TFees;
- import com.ruoyi.basicData.mapper.TCorpsMapper;
- import com.ruoyi.basicData.mapper.TFeesMapper;
- import com.ruoyi.basicData.mapper.TWarehouseMapper;
- import com.ruoyi.common.core.domain.AjaxResult;
- import com.ruoyi.common.core.domain.model.LoginUser;
- import com.ruoyi.common.exception.WarehouseException;
- import com.ruoyi.common.utils.DictUtils;
- import com.ruoyi.common.utils.StringUtils;
- import com.ruoyi.finance.domain.TFee;
- import com.ruoyi.finance.mapper.TFeeMapper;
- import com.ruoyi.finance.service.impl.TFeeServiceImpl;
- import com.ruoyi.reportManagement.domain.TWhgenleg;
- import com.ruoyi.reportManagement.mapper.TWhgenlegMapper;
- import com.ruoyi.warehouseBusiness.component.CalculationWarehouseService;
- import com.ruoyi.warehouseBusiness.domain.*;
- import com.ruoyi.warehouseBusiness.domain.dto.TWarehouseBillsR;
- import com.ruoyi.warehouseBusiness.domain.enums.WarehouseActIdEnum;
- import com.ruoyi.warehouseBusiness.domain.enums.WarehouseTypeEnum;
- import com.ruoyi.warehouseBusiness.mapper.*;
- import com.ruoyi.warehouseBusiness.service.impl.TWarehouseAgreementServiceImpl;
- import com.ruoyi.warehouseBusiness.service.impl.TWarehouseBillsServiceImpl;
- import com.ruoyi.warehouseBusiness.service.impl.TWarehousebillsModifyServiceImpl;
- import io.netty.util.internal.ObjectUtil;
- import org.apache.commons.compress.utils.Lists;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import org.springframework.transaction.interceptor.TransactionAspectSupport;
- import java.math.BigDecimal;
- import java.util.*;
- import static java.util.stream.Collectors.toList;
- /**
- * 审批流配置主Service业务层处理
- *
- * @author ruoyi
- * @date 2021-01-21
- */
- @Service
- public class AuditPathsServiceImpl implements IAuditPathsService {
- @Autowired
- private AuditPathsMapper auditPathsMapper;
- @Autowired
- private AuditItemsMapper auditItemsMapper;
- @Autowired
- private TWhgenlegMapper tWhgenlegMapper;
- @Autowired
- private AuditItemsUsersMapper auditItemsUsersMapper;
- @Autowired
- private AuditPathsActsMapper auditPathsActsMapper;
- @Autowired
- private AuditPathsLevelsMapper auditPathsLevelsMapper;
- @Autowired
- private TWarehouseBillsMapper tWarehouseBillsMapper;
- @Autowired
- private TWarehouseBillsServiceImpl tWarehouseBillsService;
- @Autowired
- private TWarehousebillsfeesMapper tWarehousebillsfeesMapper;
- @Autowired
- private TWarehousebillsitemsMapper tWarehousebillsitemsMapper;
- @Autowired
- private TFeeServiceImpl tFeeServiceImpl;
- @Autowired
- private TWarehouseAgreementServiceImpl tWarehouseAgreementService;
- @Autowired
- private TWarehousebillsModifyServiceImpl warehousebillsModifyService;
- @Autowired
- private TFeeMapper tFeeMapper;
- @Autowired
- private TFeesMapper feesMapper;
- @Autowired
- private TWarehouseAgreementMapper tWarehouseAgreementMapper;
- @Autowired
- private AuditItemsDoMapper auditItemsDoMapper;
- @Autowired
- private CalculationWarehouseService calculationWarehouseService;
- @Autowired
- private TWarehouseMapper tWarehouseMapper;
- @Autowired
- private TCorpsMapper tCorpsMapper;
- @Autowired
- private TEnclosureMapper tEnclosureMapper;
- /**
- * 查询审批流配置主
- *
- * @param id 审批流配置主ID
- * @return 审批流配置主
- */
- @Override
- public AjaxResult selectAuditPathsById(Long id) {
- Map<String, Object> map = new HashMap<>();
- AuditPaths auditPaths = auditPathsMapper.selectAuditPathsById(id);
- if (StringUtils.isNull(auditPaths)) {
- return AjaxResult.error("该审批流不存在,请确认");
- }
- map.put("auditPaths", auditPaths);
- AuditPathsLevels auditPathsLevels = new AuditPathsLevels();
- auditPathsLevels.setPathId(id);
- List<AuditPathsLevels> pathsLevelsList = auditPathsLevelsMapper.selectAuditPathsLevelsList(auditPathsLevels);
- if (StringUtils.isNotNull(pathsLevelsList)) {
- List<List<Long>> longs = new ArrayList<>();
- for (AuditPathsLevels ap : pathsLevelsList) {
- List<Long> longList = new ArrayList<>();
- if (ap.getAuditUserId() != null) {
- JSONArray jsonArray = JSONArray.parseArray(ap.getAuditUserId());
- longList = JSONObject.parseArray(jsonArray.toJSONString(), Long.class);
- }
- longs.add(longList);
- }
- map.put("auditUserIds", longs);
- map.put("auditPathsLevels", pathsLevelsList);
- }
- return AjaxResult.success(map);
- }
- /**
- * 查询审批流配置主列表
- *
- * @param auditPaths 审批流配置主
- * @return 审批流配置主
- */
- @Override
- public List<AuditPaths> selectAuditPathsList(AuditPaths auditPaths) {
- return auditPathsMapper.selectAuditPathsList(auditPaths);
- }
- /**
- * 新增审批流配置主
- *
- * @param auditPaths 审批流配置主
- * @return 结果
- */
- @Override
- @Transactional
- public AjaxResult insertAuditPaths(String auditPaths, String auditPathsLevels, LoginUser loginUser) {
- AuditPaths apath = JSONArray.parseObject(auditPaths, AuditPaths.class);
- if ("A".equals(apath.getStatus()) && (StringUtils.isNull(auditPathsLevels) || "[]".equals(auditPathsLevels))) {
- return AjaxResult.error("未找到级次信息无法提交,请确认");
- }
- long fPid = 0L;
- if (StringUtils.isNotNull(apath.getId())) {
- if ("S".equals(apath.getStatus())) {
- AuditPathsActs auditPathsActs = new AuditPathsActs();
- auditPathsActs.setPathId(apath.getId());
- int sum = auditPathsActsMapper.selectCountAuditPathsActs(auditPathsActs);
- if (sum > 0) {
- return AjaxResult.error("该审批配置已被使用,请取消使用后提交");
- }
- }
- auditPathsLevelsMapper.deleteAuditPathsLevelsBypathId(apath.getId());
- auditPathsMapper.updateAuditPaths(apath);
- fPid = apath.getId();
- } else {
- AuditPaths paths = new AuditPaths();
- paths.setPathName(apath.getPathName());
- List<AuditPaths> audiList = auditPathsMapper.selectAuditPathsList(paths);
- if (audiList.size() > 0) {
- return AjaxResult.error("审核路径名已存在,请确认");
- }
- apath.setOpUserId(loginUser.getUser().getUserId());
- apath.setOpDate(new Date());
- apath.setOpUserName(loginUser.getUsername());
- auditPathsMapper.insertAuditPaths(apath);
- fPid = apath.getId();
- }
- if (StringUtils.isNotNull(auditPathsLevels) && !"[]".equals(auditPathsLevels)) {
- JSONArray warehouseJSON = JSONArray.parseArray(auditPathsLevels);
- List<AuditPathsLevels> auditPathsLevelsList = JSONObject.parseArray(warehouseJSON.toJSONString(), AuditPathsLevels.class);
- if ("F".equals(auditPathsLevelsList.get(auditPathsLevelsList.size() - 1).getIffinalItem())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("操作失败:最后一级状态有误,请确认");
- }
- Long level = 0L;
- boolean last = false;
- for (AuditPathsLevels lev : auditPathsLevelsList) {
- if (StringUtils.isNull(lev.getAuditUserId())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("操作失败:请维护审核人");
- }
- if ("T".equals(lev.getIffinalItem()) && !last) {
- last = true;
- } else if ("T".equals(lev.getIffinalItem()) && last) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("操作失败:最后一级只能存在一个");
- }
- level++;
- lev.setPathId(fPid);
- lev.setLevelId(level);
- auditPathsLevelsMapper.insertAuditPathsLevels(lev);
- }
- }
- return AjaxResult.success();
- }
- /**
- * 修改审批流配置主
- *
- * @param auditPaths 审批流配置主
- * @return 结果
- */
- @Override
- public int updateAuditPaths(AuditPaths auditPaths) {
- return auditPathsMapper.updateAuditPaths(auditPaths);
- }
- /**
- * 批量删除审批流配置主
- *
- * @param ids 需要删除的审批流配置主ID
- * @return 结果
- */
- @Override
- @Transactional
- public AjaxResult deleteAuditPathsByIds(Long[] ids) {
- int line = 0;
- for (Long lo : ids) {
- line++;
- AuditPathsActs auditPathsActs = new AuditPathsActs();
- auditPathsActs.setPathId(lo);
- int sum = auditPathsActsMapper.selectCountAuditPathsActs(auditPathsActs);
- if (sum > 0) {
- return AjaxResult.error("第" + line + "行,审批已被使用无法删除");
- }
- }
- auditPathsMapper.deleteAuditPathsByIds(ids);
- return AjaxResult.success();
- }
- /**
- * 删除审批流配置主信息
- *
- * @param id 审批流配置主ID
- * @return 结果
- */
- @Override
- public int deleteAuditPathsById(Long id) {
- return auditPathsMapper.deleteAuditPathsById(id);
- }
- /**
- * 单据点击查看审批流
- *
- * @param auditItems 条件
- * @return 结果
- */
- @Override
- public AjaxResult projectEndQueryPendingVal(AuditItems auditItems) {
- List<Map<String, Object>> mapList = auditItemsMapper.selectWarehouseApprover(auditItems);
- return AjaxResult.success(mapList);
- }
- /**
- * 首页点击查看审批流 获取对应数据
- *
- * @param auditItems 查询条件
- * @return 结果
- */
- @Override
- public List<Map<String, Object>> selectAllAuditItems(AuditItems auditItems) {
- List<Map<String, Object>> list = auditItemsMapper.selectAuditItems(auditItems);
- for (Map<String, Object> map : list) {
- // 根据审批明细详情主表 id 获取审批明细从表数据
- List<Map<String, Object>> auditItemsDoList = auditItemsDoMapper.selectByFPid(Long.valueOf(map.get("id").toString()));
- StringBuilder stringBuilder = new StringBuilder();
- for (Map<String, Object> auditItemsDo : auditItemsDoList) {
- if (StringUtils.isNotNull(auditItemsDo)) { // 有数据
- stringBuilder.append(auditItemsDo.get("fBsno")).append(",");
- }
- }
- map.put("fBsno", StringUtils.removeTheLastComma(stringBuilder));
- }
- return list;
- }
- /**
- * 查询审批流配置主信息条数
- *
- * @return 结果
- */
- @Override
- public int selectCountAuditItems() {
- return auditItemsMapper.selectCountAuditItems();
- }
- /**
- * 审批通过
- *
- * @param auditItems 审核人、单据信息
- * @return 结果
- */
- @Override
- @Transactional
- public AjaxResult approved(AuditItems auditItems) {
- // 审核通过时间
- Date auditItemtem = auditItems.getAuditItem();
- long fettle = 0L;
- int number = 0;
- AuditItems item = new AuditItems();
- item.setBillId(auditItems.getId());
- item.setActId(auditItems.getActId());
- item.setFidStatus(auditItems.getFidStatus());
- List<AuditItems> auditItemsList = auditItemsMapper.selectAuditItemsList(item);
- if (CollectionUtils.isEmpty(auditItemsList)) {
- return AjaxResult.error("未找到审批信息,请确认");
- }
- for (AuditItems at : auditItemsList) {
- if (!"S".equals(at.getAuditStatus())) {
- continue;
- }
- AuditItemsUsers itemsUsers = new AuditItemsUsers();
- itemsUsers.setPid(at.getId());
- List<AuditItemsUsers> auditItemsUsers = auditItemsUsersMapper.selectAuditItemsUsersList(itemsUsers);
- for (AuditItemsUsers au : auditItemsUsers) {
- if (au.getUserId().equals(auditItems.getSendUserId()) && "S".equals(au.getAuditStatus())) {
- number++;
- if (StringUtils.isEmpty(auditItems.getAuditMsg())) {
- at.setAuditMsg("同意");
- } else {
- at.setAuditMsg(auditItems.getAuditMsg());
- }
- at.setAuditStatus("A");
- //at.setAuditItem(new Date());
- at.setAuditOpTime(new Date());
- at.setAuditUserId(au.getUserId());
- at.setAuditItem(auditItemtem);
- int updateAuditItems = auditItemsMapper.updateAuditItems(at);
- if (updateAuditItems <= 0) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批通过失败: 更新审批状态失败");
- }
- au.setAuditStatus("A");
- int updateAuditItemsUsers = auditItemsUsersMapper.updateAuditItemsUsers(au);
- if (updateAuditItemsUsers <= 0) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批通过失败: 更新审批状态失败");
- }
- if (auditItems.getActId() >= 110 && auditItems.getActId() <= 160) {
- if ("T".equals(at.getIffinalItem())) {
- if (auditItems.getFidStatus() != null && !"warehouse_status".equals(auditItems.getFidStatus())){
- fettle = 6L;
- }else {
- fettle = 4L;
- }
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- // 仓库模块
- if ("warehouse_status".equals(auditItems.getFidStatus())) {
- tWarehouseBillsMapper.warehouseApprovalUpdate(auditItems, fettle);
- } else {
- tWarehouseBillsMapper.warehouseFollowUpdate(auditItems.getBillId(), fettle, at.getAuditItem());
- }
- getfBillStatus(auditItems, at, fettle);
- if (Objects.equals(fettle, 6L)) {
- if (Objects.equals(auditItems.getActId(), 120L)) {
- List<TWarehousebillsfees> feesList = tWarehousebillsfeesMapper.selectWarehousebillsfeesByPId(auditItems.getBillId());
- // 过滤出明细信息查询是否存在已计算仓储费
- List<Long> ids = feesList.stream().filter(li -> !li.getfBilltype().equals(WarehouseTypeEnum.KCZZ.getType()))
- .map(TWarehousebillsfees::getSrcId).distinct().collect(toList());
- if (CollectionUtils.isNotEmpty(ids) && tWarehousebillsitemsMapper.selectIsCalculateStorageFeesByIds(ids) > 0) {
- throw new WarehouseException("计算费用中存在已计算仓储费信息");
- }
- // 获取仓储费,并判断费用中是否存在仓储费
- TFees ccf = feesMapper.seletFeesByCCF();
- if (Objects.isNull(ccf)) {
- throw new WarehouseException("未找到仓储费费用信息");
- }
- // 过滤出费用类型等于仓储费并且有商机id,并取出来进行更新仓储费计费日期
- long count = feesList.stream().filter(li -> Objects.equals(li.getfFeeid(), ccf.getfId()) && Objects.nonNull(li.getSrcId()))
- .count();
- if (count > 0) {
- TWarehousebillsfees warehousebillsfees = feesList.stream().findFirst().orElseThrow(() -> new WarehouseException("未找到费用明细"));
- // 更新子表仓储费截止日期
- tWarehousebillsitemsMapper.updateItemStorageFeeDeadlineByPId(warehousebillsfees.getfPid(), warehousebillsfees.getfBillingDeadline());
- }
- } else if (Objects.equals(auditItems.getActId(), 150L)) {
- tWarehouseBillsService.approvedStorageFee(auditItems.getBillId(), fettle, at.getAuditItem());
- }
- }
- } else if (auditItems.getActId() >= 210 && auditItems.getActId() <= 230) {
- // 财务模块
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- // 更新费用明细
- /*AjaxResult ajaxResult = tFeeServiceImpl.billsfeesFollow(auditItems.getBillId());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }*/
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- // 变更财务状态
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() >= 310 && auditItems.getActId() <= 320) {
- // 协议模块
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- // 变更财务状态
- AjaxResult ajaxResult = tWarehouseAgreementService.agreementFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() == 410) {
- if (StringUtils.isEmpty(auditItems.getRefno3())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("提单号不能为空");
- }
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- //变更凯和订单状态
- AjaxResult ajaxResult = tWarehouseBillsService.updateKaHeOrder(auditItems.getBillId(), fettle, at.getAuditItem());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfMblno(auditItems.getRefno3());
- AjaxResult orderMessage = tWarehouseBillsService.updateOrderMessage(tWarehouseBills);
- String orderMessageCode = orderMessage.get("code").toString();
- if ("500".equals(orderMessageCode)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return orderMessage;
- }
- } else if (auditItems.getActId() == 420) {
- if ("T".equals(at.getIffinalItem())) {
- fettle = 11L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 10L;
- }
- //变更凯和订单状态
- AjaxResult ajaxResult = tWarehouseBillsService.updateKaHeOrder(auditItems.getBillId(), fettle, at.getAuditItem());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() >= 430 && auditItems.getActId() <= 450) {
- // 财务模块
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- // 更新费用明细
- /*AjaxResult ajaxResult = tFeeServiceImpl.billsfeesFollow(auditItems.getBillId());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }*/
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- // 查询财务状态
- TFee tFee = tFeeMapper.selectTFeeById(auditItems.getBillId());
- if (!"4".equals(tFee.getfBillstatus()) && !"5".equals(tFee.getfBillstatus())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批通过失败: 数据已操作");
- }
- //修改主订单费用信息
- if (auditItems.getActId() >= 440 && auditItems.getActId() <= 450) {
- tWarehouseBillsService.updateMessage(auditItems.getBillId());
- }
- // 变更财务状态
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() == 470) {
- // 财务模块
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- // 更新费用明细
- AjaxResult ajaxResult = tFeeServiceImpl.billsfeesFollow(auditItems.getBillId());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- // 变更财务状态
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- //生成销项发票
- AjaxResult invoiceFp = tFeeServiceImpl.copyInvoiceFp(auditItems.getBillId(), "INV");
- String string = invoiceFp.get("code").toString();
- if ("500".equals(string)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return invoiceFp;
- }
- } else if (auditItems.getActId() == 460) {
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- //变更凯和订单状态
- Integer i = tWarehousebillsfeesMapper.warehouseFeesFollowUpdate(auditItems.getBillId(), fettle, at.getAuditItem());
- if (i != null && i > 0) {
- } else {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审核失败,更新费用状态失败");
- }
- } else if (auditItems.getActId() == 170) {
- //入库明细审核
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- //变更仓库入库明细审核状态
- Integer i = null;
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfItemstatus(fettle);
- i = tWarehouseBillsMapper.updateTWarehousebills(tWarehouseBills);
- i = tWarehousebillsitemsMapper.warehouseItemfItemstatus(auditItems.getBillId(), fettle);
- if (i != null && i > 0) {
- } else {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审核失败,更新费用状态失败");
- }
- } else if (auditItems.getActId() == 180) {
- //入库明细审核
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- //变更仓库入库明细审核状态
- Integer i = null;
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfItemstatus(fettle);
- i = tWarehouseBillsMapper.updateTWarehousebills(tWarehouseBills);
- i = tWarehousebillsitemsMapper.warehouseItemfItemstatus(auditItems.getBillId(), fettle);
- if (i != null && i > 0) {
- } else {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审核失败,更新费用状态失败");
- }
- } else if (auditItems.getActId() == 471) {
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- AjaxResult orderMessage = tWarehouseBillsService.copyKhOrderMessage(auditItems.getBillId());
- String string = orderMessage.get("code").toString();
- if ("500".equals(string)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return orderMessage;
- }
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfUpdeteStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 472) {
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfSubmitUpdate(fettle);
- if (fettle == 6L) {
- tWarehouseBills.setfUpdeteStatus(2L);
- tWarehouseBills.setfSubmitUpdate(2L);
- }
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 473) {
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- // 删除申请审核通过修改订单的状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setDelFlag("1");
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfDeleteStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 474) {
- if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- } else if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- //修改原订单信息
- AjaxResult ajaxResult = tWarehouseBillsService.approveDismount(auditItems.getBillId());
- String string = ajaxResult.get("code").toString();
- if ("500".equals(string)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- }
- //变更凯和订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfDismountStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 181) {
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- //业务处理
- } else if (auditItems.getActId() == 190) {
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- }
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfBillstatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- getfBillStatus(auditItems, at, fettle);
- } else if (Objects.equals(auditItems.getActId(), WarehouseActIdEnum.FEE_CHANGES.getActId().longValue())) {
- // 费用变更审核通过处理
- if ("T".equals(at.getIffinalItem())) {
- fettle = 6L;
- warehousebillsModifyService.additionalFeeInformation(auditItems.getBillId(), WarehouseTypeEnum.APPROVE);
- } else if ("F".equals(at.getIffinalItem())) {
- fettle = 5L;
- warehousebillsModifyService.additionalFeeInformation(auditItems.getBillId(), WarehouseTypeEnum.UNDER_REVIEW);
- }
- }
- if ("F".equals(at.getIffinalItem())) {
- at.setLevelId(at.getLevelId() + 1);
- int updateNum = auditItemsMapper.updateAuditStatus(at);
- if (updateNum <= 0) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批通过失败: 更新审批状态失败");
- }
- }
- break;
- }
- }
- }
- TWarehouseBills warehouseBills = new TWarehouseBills();
- warehouseBills.setfId(auditItems.getBillId());
- calculationWarehouseService.calculationFeeStatus(warehouseBills);
- tWarehouseBillsMapper.updateTWarehousebills(warehouseBills);
- if (number <= 0) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("该审批已被操作");
- }
- return AjaxResult.success();
- }
- /**
- * 获取费用明细数据,并保持费用明细请核状态不改动
- *
- * @param auditItems 审批流
- * @param at 审批流
- */
- public void getfBillStatus(AuditItems auditItems, AuditItems at, Long fettle) {
- List<TWarehousebillsfees> tWarehousebillsfees = tWarehousebillsfeesMapper.selectWarehousebillsfeesByPId(auditItems.getBillId());
- for (TWarehousebillsfees result : tWarehousebillsfees) {
- if (result.getfBillstatus() != 6L) { // 判断状态
- if (StringUtils.isNotNull(fettle)) {
- if (StringUtils.isNotNull(at.getAuditItem())) {
- result.setfReviewDate(at.getAuditItem());
- }
- result.setfBillstatus(fettle);
- } else {
- if (result.getfBillstatus() == 5L) { // 如果存在审批驳回并且是 次级审批驳回的情况
- result.setfReviewDate(null);// 重置审批时间
- result.setfBillstatus(2L); // 重置一下状态
- }
- }
- tWarehousebillsfeesMapper.updateTWarehousebillsfees(result);
- }
- }
- }
- /**
- * 审批驳回
- *
- * @param auditItems 审核人、单据信息
- * @return 结果
- */
- @Override
- @Transactional
- public AjaxResult approvalRejected(AuditItems auditItems) {
- long fettle = 0L;
- if (auditItems.getActId() >= 110 && auditItems.getActId() <= 160) {
- fettle = 3L;
- if ("f_billstatus".equals(auditItems.getFidStatus())) {
- tWarehouseBillsMapper.warehouseFollowUpdate(auditItems.getBillId(), fettle, auditItems.getAuditItem());
- } else {
- tWarehouseBillsMapper.warehouseApprovalUpdate(auditItems, fettle);
- }
- getfBillStatus(auditItems, auditItems, null);
- if (Objects.equals(auditItems.getActId(), 150L)) {
- List<TWarehousebillsfees> feesList = tWarehousebillsfeesMapper.selectWarehousebillsfeesByPId(auditItems.getBillId());
- for (TWarehousebillsfees wareItem : feesList) {
- if (StringUtils.isNull(wareItem.getSrcId())) {
- continue;
- }
- if ("KCZZ".equals(wareItem.getfBilltype())) {
- TWhgenleg whgenleg = new TWhgenleg();
- whgenleg.setfId(wareItem.getSrcId());
- whgenleg.setfChargedate(wareItem.getfChargedate());
- tWhgenlegMapper.updateTWhgenleg(whgenleg);
- } else {
- TWarehousebillsitems billsItem = new TWarehousebillsitems();
- billsItem.setfId(wareItem.getSrcId());
- billsItem.setfBilltype(wareItem.getfBilltype());
- if (!"SJCK".equals(wareItem.getfBilltype())) {
- billsItem.setfChargedate(wareItem.getfBillingDeadline());
- tWarehousebillsitemsMapper.updateTWarehousebillsitems(billsItem);
- } else {
- billsItem.setIsCalculateStorageFees(WarehouseTypeEnum.NOT_CALCULATE.getType());
- billsItem.setfChargedate(wareItem.getfChargedate());
- }
- tWarehousebillsitemsMapper.agreementApprovalRejected(billsItem);
- }
- }
- }
- } else if (auditItems.getActId() >= 210 && auditItems.getActId() <= 230) {
- fettle = 3L;
- String fBillType = null;
- if (auditItems.getActId() == 210) { // 对账
- fBillType = "DZRevoke";
- } else if (auditItems.getActId() == 220 || auditItems.getActId() == 230) {
- fBillType = "DCRevoke";
- }
- // 财务模块
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- // 更新费用明细
- AjaxResult result = tFeeServiceImpl.updateDSFMoney(auditItems.getBillId(), fBillType);
- String message = result.get("code").toString();
- if ("500".equals(message)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return result;
- }
- } else if (auditItems.getActId() >= 310 && auditItems.getActId() <= 320) {
- fettle = 3L;
- // 协议模块
- AjaxResult ajaxResult = tWarehouseAgreementService.agreementFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() == 410) {
- fettle = 3L;
- AjaxResult ajaxResult = tWarehouseBillsService.updateKaHeOrder(auditItems.getBillId(), fettle, auditItems.getAuditItem());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() == 420) {
- fettle = 8L;
- AjaxResult ajaxResult = tWarehouseBillsService.updateKaHeOrder(auditItems.getBillId(), fettle, auditItems.getAuditItem());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() >= 430 && auditItems.getActId() <= 450) {
- fettle = 3L;
- String fBillType = null;
- if (auditItems.getActId() == 450 || auditItems.getActId() == 440) {
- fBillType = "DCRevoke";
- } else if (auditItems.getActId() == 430) {
- fBillType = "KHDZRevoke";
- }
- // 查询财务状态
- TFee tFee = tFeeMapper.selectTFeeById(auditItems.getBillId());
- if (!"4".equals(tFee.getfBillstatus()) && !"5".equals(tFee.getfBillstatus())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批驳回失败: 数据已操作");
- }
- // 财务模块
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- // 更新费用明细
- AjaxResult result = tFeeServiceImpl.updateMoney(auditItems.getBillId(), fBillType);
- String message = result.get("code").toString();
- if ("500".equals(message)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return result;
- }
- } else if (auditItems.getActId() == 460) {
- fettle = 3L;
- Integer i = tWarehousebillsfeesMapper.warehouseFeesFollowUpdate(auditItems.getBillId(), fettle, auditItems.getAuditItem());
- if (i != null && i > 0) {
- } else {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批驳回失败,更新费用状态失败");
- }
- } else if (auditItems.getActId() == 470) {
- fettle = 3L;
- // 财务模块
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() == 170) {
- //入库明细审核
- fettle = 3L;
- //变更仓库入库明细审核状态
- Integer i = null;
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfItemstatus(fettle);
- i = tWarehouseBillsMapper.updateTWarehousebills(tWarehouseBills);
- i = tWarehousebillsitemsMapper.warehouseItemfItemstatus(auditItems.getBillId(), fettle);
- if (i != null && i > 0) {
- } else {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审核失败,更新费用状态失败");
- }
- } else if (auditItems.getActId() == 180) {
- //入库明细审核
- fettle = 3L;
- //变更仓库入库明细审核状态
- Integer i = null;
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfItemstatus(fettle);
- i = tWarehouseBillsMapper.updateTWarehousebills(tWarehouseBills);
- i = tWarehousebillsitemsMapper.warehouseItemfItemstatus(auditItems.getBillId(), fettle);
- if (i != null && i > 0) {
- } else {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审核失败,更新费用状态失败");
- }
- } else if (auditItems.getActId() == 471) {
- fettle = 3L;
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfUpdeteStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 472) {
- fettle = 3L;
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfSubmitUpdate(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 473) {
- fettle = 3L;
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfDeleteStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 474) {
- fettle = 3L;
- //变更凯和拆单单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfDismountStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 181) {
- fettle = 3L;
- //业务处理
- } else if (auditItems.getActId() == 190) {
- fettle = 3L;
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfBillstatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- getfBillStatus(auditItems, auditItems, null);
- } else if (Objects.equals(auditItems.getActId(), WarehouseActIdEnum.FEE_CHANGES.getActId().longValue())) {
- warehousebillsModifyService.additionalFeeInformation(auditItems.getBillId(), WarehouseTypeEnum.DISMISS);
- }
- AuditItems item = new AuditItems();
- item.setBillId(auditItems.getId());
- item.setActId(auditItems.getActId());
- item.setFidStatus(auditItems.getFidStatus());
- List<AuditItems> auditItem = auditItemsMapper.selectAuditItemsList(item);
- int number = 0;
- for (AuditItems at : auditItem) {
- if (!"S".equals(at.getAuditStatus())) {
- continue;
- }
- AuditItemsUsers itemsUsers = new AuditItemsUsers();
- itemsUsers.setPid(at.getId());
- List<AuditItemsUsers> auditItemsUsersList = auditItemsUsersMapper.selectAuditItemsUsersList(itemsUsers);
- for (AuditItemsUsers au : auditItemsUsersList) {
- if (Objects.equals(au.getUserId(), auditItems.getSendUserId())) {
- number++;
- at.setAuditStatus("B");
- if (auditItems.getAuditMsg() == null || "".equals(auditItems.getAuditMsg())) {
- at.setAuditMsg("不同意");
- } else {
- at.setAuditMsg(auditItems.getAuditMsg());
- }
- //at.setAuditItem(new Date());
- at.setAuditOpTime(new Date());
- at.setAuditUserId(au.getUserId());
- int updateAuditItems = auditItemsMapper.updateAuditItems(at);
- if (updateAuditItems <= 0) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批驳回失败: 更新审批状态失败");
- }
- au.setAuditStatus("B");
- int updateAuditItemUser = auditItemsUsersMapper.updateAuditItemsUsers(au);
- if (updateAuditItemUser <= 0) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批驳回失败: 更新审批状态失败");
- }
- if ("F".equals(at.getIffinalItem())) {
- int deleteNum = auditItemsMapper.deleteUpLevelId(at);
- if (deleteNum <= 0) {
- return AjaxResult.error("未找到后续除审批信息");
- }
- }
- }
- }
- }
- TWarehouseBills warehouseBills = new TWarehouseBills();
- warehouseBills.setfId(auditItems.getBillId());
- calculationWarehouseService.calculationFeeStatus(warehouseBills);
- tWarehouseBillsMapper.updateTWarehousebills(warehouseBills);
- if (number <= 0) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("该审批已被操作");
- }
- return AjaxResult.success();
- }
- /**
- * 审批撤销(我提交的 没人审核)
- *
- * @param auditItems 审核人、单据信息
- * @return
- */
- @Override
- @Transactional
- public AjaxResult revoke(AuditItems auditItems) {
- long fettle = 0L;
- if (auditItems.getActId() >= 110 && auditItems.getActId() <= 160) {
- fettle = 2L;
- // 查询仓库状态
- TWarehouseBills tWarehouseBills = tWarehouseBillsMapper.selectTWarehousebillsById(auditItems.getBillId());
- if ("f_billstatus".equals(auditItems.getFidStatus())) {
- if (!tWarehouseBills.getfBillstatus().equals(4L)) {
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- } else {
- if (!tWarehouseBills.getWarehouseStatus().equals(4L)) {
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- }
- tWarehouseBillsMapper.warehouseApprovalUpdate(auditItems, fettle);
- getfBillStatus(auditItems, auditItems, null);
- // 撤销审批时删除审批流任务明细从表对应数据
- AuditItemsAbout.revokeDeleteAID(auditItems.getActId(), auditItems.getBillId());
- } else if (auditItems.getActId() >= 210 && auditItems.getActId() <= 230) {
- fettle = 2L;
- String fBillType = null;
- if (auditItems.getActId() == 210) {
- fBillType = "DZRevoke";
- } else if (auditItems.getActId() == 220 || auditItems.getActId() == 230) {
- fBillType = "DCRevoke";
- }
- // 查询财务状态
- TFee tFee = tFeeMapper.selectTFeeById(auditItems.getBillId());
- if (!"4".equals(tFee.getfBillstatus())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- // 财务模块
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 更新审批状态失败");
- }
- // 更新费用明细
- AjaxResult result = tFeeServiceImpl.updateDSFMoney(auditItems.getBillId(), fBillType);
- String message = result.get("code").toString();
- if ("500".equals(message)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return result;
- }
- // 撤销审批时删除审批流任务明细从表对应数据
- AuditItemsAbout.revokeDeleteAID(auditItems.getActId(), auditItems.getBillId());
- } else if (auditItems.getActId() >= 310 && auditItems.getActId() <= 320) {
- fettle = 2L;
- // 查询协议状态
- TWarehouseAgreement tWarehouseAgreement = tWarehouseAgreementMapper.selectTWarehouseAgreementById(auditItems.getBillId());
- if (!"4".equals(tWarehouseAgreement.getfBillstatus())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- // 协议模块
- AjaxResult ajaxResult = tWarehouseAgreementService.agreementFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 更新审批状态失败");
- }
- if (auditItems.getActId() == 310) { // 如果是仓储费审批流
- // 删去审批流业务编号
- AuditItemsAbout.revokeDeleteAID(auditItems.getActId(), auditItems.getBillId());
- }
- } else if (auditItems.getActId() == 410) {
- fettle = 2L;
- TWarehouseBills tWarehouseBills = tWarehouseBillsService.selectKaHeById(auditItems.getBillId());
- if (tWarehouseBills.getfBillstatus() != 4L) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- AjaxResult ajaxResult = tWarehouseBillsService.updateKaHeOrder(auditItems.getBillId(), fettle, auditItems.getAuditItem());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() == 420) {
- fettle = 7L;
- TWarehouseBills tWarehouseBills = tWarehouseBillsService.selectKaHeById(auditItems.getBillId());
- if (tWarehouseBills.getfBillstatus() != 9L) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- AjaxResult ajaxResult = tWarehouseBillsService.updateKaHeOrder(auditItems.getBillId(), fettle, auditItems.getAuditItem());
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return ajaxResult;
- }
- } else if (auditItems.getActId() >= 430 && auditItems.getActId() <= 450) {
- fettle = 2L;
- String fBillType = null;
- if (auditItems.getActId() == 450 || auditItems.getActId() == 440) {
- fBillType = "DCRevoke";
- } else if (auditItems.getActId() == 430) {
- fBillType = "KHDZRevoke";
- }
- // 查询财务状态
- TFee tFee = tFeeMapper.selectTFeeById(auditItems.getBillId());
- if (!"4".equals(tFee.getfBillstatus())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- // 财务模块
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 更新审批状态失败");
- }
- // 更新费用明细
- AjaxResult result = tFeeServiceImpl.updateMoney(auditItems.getBillId(), fBillType);
- String message = result.get("code").toString();
- if ("500".equals(message)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return result;
- }
- /*//修改主订单费用信息
- if (auditItems.getActId() >= 440 && auditItems.getActId() <= 450) {
- tWarehouseBillsService.updateMessage(auditItems.getBillId());
- }*/
- } else if (auditItems.getActId() == 460) {
- fettle = 2L;
- TWarehousebillsfees warehousebillsfees = new TWarehousebillsfees();
- warehousebillsfees.setfPid(auditItems.getBillId());
- List<TWarehousebillsfees> tWarehousebillsfees = tWarehousebillsfeesMapper.selectTWarehousebillsfeesList(warehousebillsfees);
- if (CollectionUtils.isNotEmpty(tWarehousebillsfees) && tWarehousebillsfees.get(0).getfBillstatus() != 4L) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- Integer i = tWarehousebillsfeesMapper.warehouseFeesFollowUpdate(auditItems.getBillId(), fettle, auditItems.getAuditItem());
- if (i != null && i > 0) {
- } else {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审核失败,更新费用状态失败");
- }
- } else if (auditItems.getActId() == 470) {
- fettle = 2L;
- // 查询财务状态
- TFee tFee = tFeeMapper.selectTFeeById(auditItems.getBillId());
- if (!"4".equals(tFee.getfBillstatus())) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 已经过审批");
- }
- // 财务模块
- AjaxResult ajaxResult = tFeeServiceImpl.tfeeFollow(auditItems.getBillId(), fettle);
- String code = ajaxResult.get("code").toString();
- if ("500".equals(code)) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审批撤销失败: 更新审批状态失败");
- }
- } else if (auditItems.getActId() == 170) {
- //入库明细审核
- fettle = 2L;
- //变更仓库入库明细审核状态
- Integer i = null;
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfItemstatus(fettle);
- i = tWarehouseBillsMapper.updateTWarehousebills(tWarehouseBills);
- i = tWarehousebillsitemsMapper.warehouseItemfItemstatus(auditItems.getBillId(), fettle);
- if (i != null && i > 0) {
- } else {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审核失败,更新费用状态失败");
- }
- AuditItemsAbout.revokeDeleteAID(auditItems.getActId(), auditItems.getBillId());
- } else if (auditItems.getActId() == 180) { // 出库明细撤销
- //入库明细审核
- fettle = 2L;
- //变更仓库入库明细审核状态
- Integer i = null;
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfItemstatus(fettle);
- i = tWarehouseBillsMapper.updateTWarehousebills(tWarehouseBills);
- int size = tWarehousebillsitemsMapper.selectWarehouseItemsByfPid(auditItems.getBillId()).size();
- if (size != 0) {
- i = tWarehousebillsitemsMapper.warehouseItemfItemstatus(auditItems.getBillId(), fettle);
- }
- if (i <= 0) {
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- return AjaxResult.error("审核失败,更新费用状态失败");
- }
- AuditItemsAbout.revokeDeleteAID(auditItems.getActId(), auditItems.getBillId());
- } else if (auditItems.getActId() == 471) {
- fettle = 2L;
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfUpdeteStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 472) {
- fettle = 2L;
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfSubmitUpdate(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 473) {
- fettle = 2L;
- // 变更凯和申请修改订单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfDeleteStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 474) {
- fettle = 2L;
- //变更凯和拆单单状态
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfDismountStatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- } else if (auditItems.getActId() == 181) {
- fettle = 2L;
- //业务处理
- } else if (auditItems.getActId() == 190) {
- fettle = 2L;
- TWarehouseBills tWarehouseBills = new TWarehouseBills();
- tWarehouseBills.setfId(auditItems.getBillId());
- tWarehouseBills.setfBillstatus(fettle);
- tWarehouseBillsMapper.updateKaHeOrder(tWarehouseBills);
- getfBillStatus(auditItems, auditItems, null);
- // 撤销审批时删除审批流任务明细从表对应数据
- AuditItemsAbout.revokeDeleteAID(auditItems.getActId(), auditItems.getBillId());
- } else if (Objects.equals(auditItems.getActId(), WarehouseActIdEnum.FEE_CHANGES.getActId().longValue())) {
- warehousebillsModifyService.withdrawalApprovalById(auditItems.getBillId());
- }
- auditItemsMapper.deletePurchaseApproval(auditItems);
- TWarehouseBills warehouseBills = new TWarehouseBills();
- warehouseBills.setfId(auditItems.getBillId());
- calculationWarehouseService.calculationFeeStatus(warehouseBills);
- tWarehouseBillsMapper.updateTWarehousebills(warehouseBills);
- return AjaxResult.success();
- }
- /**
- * 仓库APP查看订单审批流
- *
- * @param auditItems 条件
- * @return 结果
- */
- @Override
- public List<AppAuditItemVO> selectOrderAuditItems(AppAuditItemDTO auditItems) {
- // 如果没有指定类型信息,则默认 赋值仓库类型
- if (StringUtils.isEmpty(auditItems.getBillType())) {
- auditItems.setBillTypeList(WarehouseTypeEnum.getWarehousingType());
- } else {
- List<String> strings = new ArrayList<>();
- strings.add(auditItems.getBillType());
- auditItems.setBillTypeList(strings);
- }
- if (StringUtils.isNotEmpty(auditItems.getSendTimeInterval())) {
- String[] split = auditItems.getSendTimeInterval().split(",");
- List<String> list = Lists.newArrayList();
- list.add(split[0] + " 00:00:00");
- list.add(split[1] + " 23:59:59");
- auditItems.setSendList(list);
- }
- auditItems.setActIdList(WarehouseActIdEnum.isWarehousingActList());
- // 查询
- List<AppAuditItemVO> appAuditItemVOList = auditItemsMapper.selectOrderAuditItems(auditItems);
- // 贸易方式
- String type = "data_trademodes";
- if (CollectionUtils.isNotEmpty(appAuditItemVOList)) {
- appAuditItemVOList.forEach(vo -> {
- if (StringUtils.isNotNull(vo.getFTrademodeid())) {
- // 转换贸易方式
- String dictLabel = DictUtils.getDictLabel(type, vo.getFTrademodeid().toString());
- if (StringUtils.isNotEmpty(dictLabel)) {
- vo.setFTrademodeName(dictLabel);
- }
- }
- // 转换状态
- vo.setAudit(AuditStateEnum.fromType(vo.getAuditState()).getName());
- // 转换活动号
- vo.setActName(WarehouseActIdEnum.fromActId(vo.getActId().intValue()).getName());
- });
- }
- return appAuditItemVOList;
- }
- /**
- * 放货申请
- *
- * @param fId 仓库主表id
- * @return 结果
- */
- @Override
- public TWarehouseBillsR generatePDF(Long fId) {
- // 查询仓库主表数据
- TWarehouseBills tWarehousebills = tWarehouseBillsMapper.selectTWarehousebillsById(fId);
- TWarehouseBillsR tWarehouseBillsR = new TWarehouseBillsR();
- tWarehouseBillsR.setfBillno(tWarehousebills.getfBillno());
- tWarehouseBillsR.setfMblno(tWarehousebills.getfMblno());
- tWarehouseBillsR.setfCustomno(tWarehousebills.getfCustomno());
- tWarehouseBillsR.setfWarehouseName(tWarehouseMapper.selectTWarehouseById(tWarehousebills.getfWarehouseid()) == null ? "无" : tWarehouseMapper.selectTWarehouseById(tWarehousebills.getfWarehouseid()).getfName());
- tWarehouseBillsR.setfBsdate(tWarehousebills.getfBsdate());
- tWarehouseBillsR.setCreateTime(tWarehousebills.getCreateTime());
- tWarehouseBillsR.setfCorpName(tCorpsMapper.selectTCorpsById(tWarehousebills.getfCorpid()) == null ? "" : tCorpsMapper.selectTCorpsById(tWarehousebills.getfCorpid()).getfName());
- // 查询仓库明细从表数据
- TWarehousebillsitems tWarehousebillsitems = new TWarehousebillsitems();
- tWarehousebillsitems.setfPid(fId);
- List<Map<String, Object>> mapList = tWarehousebillsitemsMapper.selectGoodsTransferitemsList(tWarehousebillsitems);
- //总件数
- Long fQty = 0l;
- //总毛重
- BigDecimal fGrossweight = new BigDecimal(0);
- //总净重
- BigDecimal fNetweight = new BigDecimal(0);
- //客户出库集合
- List<Map<String, Object>> customerList = new ArrayList<>();
- //客户结余集合
- List<Map<String, Object>> balanceList = new ArrayList<>();
- for (Map<String, Object> map : mapList) {
- if (ObjectUtils.isNotNull(map.get("fPlanqty"))){
- //计算出库总件数
- fQty = Long.parseLong(map.get("fPlanqty").toString()) + fQty;
- }
- //计算出库总毛重
- fGrossweight = fGrossweight.add((BigDecimal) map.get("fPlangrossweight"));
- //计算出库总净重
- fNetweight = fNetweight.add((BigDecimal) map.get("fPlannetweight"));
- //出库数据
- Map<String, Object> customer = new HashMap<>();
- customer.put("fGoodsids", map.get("fGoodsids"));
- customer.put("fBoxno", map.get("fBoxno"));
- customer.put("fPlanqty", map.get("fPlanqty"));
- customer.put("fPlangrossweight", map.get("fPlangrossweight"));
- customer.put("fPlannetweight", map.get("fPlannetweight"));
- customerList.add(customer);
- //结余数据
- Map<String, Object> balance = new HashMap<>();
- balance.put("fGoodsids", map.get("fGoodsids"));
- balance.put("fQty", map.get("fQty"));
- balance.put("fGrossweight", map.get("fGrossweight"));
- balance.put("fNetweight", map.get("fNetweight"));
- balanceList.add(balance);
- }
- tWarehouseBillsR.setfQty(fQty);
- tWarehouseBillsR.setfGrossweight(fGrossweight);
- tWarehouseBillsR.setfNetweight(fNetweight);
- tWarehouseBillsR.setBalanceList(balanceList);
- tWarehouseBillsR.setCustomerList(customerList);
- // 查询订单附件
- List<TEnclosure> tEnclosureList = tEnclosureMapper.selectTEnclosureByPId(tWarehousebills.getfId());
- if (CollectionUtils.isNotEmpty(tEnclosureList)) {
- tWarehouseBillsR.setEnclosureList(tEnclosureList);
- }
- //查询客户资料附件
- List<TEnclosure> customerInformationList = tEnclosureMapper.selectTEnclosureByPId(tWarehousebills.getfCorpid());
- if (CollectionUtils.isNotEmpty(customerInformationList)) {
- tWarehouseBillsR.setCustomerInformationList(customerInformationList);
- }
- return tWarehouseBillsR;
- }
- }
|