feat: 0523开发询价模块

dev_kcyj
chenhc 1 year ago
parent e4faa404e0
commit 0d9fc95ce0

@ -150,7 +150,7 @@ public class PurInquiryController {
String billNo = purInquiryEntity.getBillNo();
if (StringUtil.isEmpty(billNo)) {
billNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean("XJ", "yyyyMMdd"));
billNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean("XJJH", "yyyyMMdd"));
purInquiryEntity.setBillNo(billNo);
}
@ -198,4 +198,13 @@ public class PurInquiryController {
return ResultVOUtils.success("删除成功");
}
/**
*
*/
@PostMapping("/purchase/purInquiry/submitOffer")
public BaseResponse submitOffer(@RequestBody PurInquiryEntity purInquiryEntity) {
purInquiryService.submitOffer(purInquiryEntity);
return ResultVOUtils.success("发起成功");
}
}

@ -201,4 +201,29 @@ public class PurInquiryOfferController {
return ResultVOUtils.success("删除成功");
}
/**
*
*/
@PostMapping("/purchase/purInquiryOffer/submitApproval")
public BaseResponse submitApproval(@RequestBody PurInquiryOfferEntity purInquiryOfferEntity) {
Long userId = customerService.getUserId();
Date date = new Date();
purInquiryOfferEntity.setUpdateTime(date);
purInquiryOfferEntity.setUpdateUser(userId + "");
purInquiryOfferEntity.setStatus(2); //状态
Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow"));
if (sys_approval_flow){//提交审核
String approvalFlowId = sysApprovalFlowService.getApprovalFlowId();
purInquiryOfferEntity.setApprovalFlowId(approvalFlowId);
sysApprovalFlowService.generateFlow(approvalFlowId,purInquiryOfferEntity.getBillNo(),type_xjbj);
}
purInquiryOfferService.updateById(purInquiryOfferEntity);
return ResultVOUtils.success("提交成功!");
}
}

@ -4,20 +4,45 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.purchase.PurInquiryMapper;
import com.glxp.api.dao.purchase.PurInquiryOfferMapper;
import com.glxp.api.entity.purchase.PurInquiryEntity;
import com.glxp.api.entity.purchase.PurInquiryOfferEntity;
import com.glxp.api.entity.BaseEntity;
import com.glxp.api.entity.purchase.*;
import com.glxp.api.req.purchase.PurInquiryOfferRequest;
import com.glxp.api.req.purchase.PurInquiryRequest;
import com.glxp.api.res.purchase.PurInquiryEntityResponse;
import com.glxp.api.res.purchase.PurInquiryOfferEntityResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.basic.SysApprovalFlowService;
import com.glxp.api.service.system.SystemParamConfigService;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;
import jodd.util.StringUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@Service
@Transactional(rollbackFor = Exception.class)
public class PurInquiryOfferService extends ServiceImpl<PurInquiryOfferMapper, PurInquiryOfferEntity> {
@Resource
CustomerService customerService;
@Resource
GennerOrderUtils gennerOrderUtils;
@Resource
SystemParamConfigService systemParamConfigService;
@Resource
SysApprovalFlowService sysApprovalFlowService;
final String type_xjbj = "xjbj";
@Resource
PurInquiryOfferItemService purInquiryOfferItemService;
@Resource
PurInquiryOfferItemDetailService purInquiryOfferItemDetailService;
public List<PurInquiryOfferEntityResponse> queryPageList(PurInquiryOfferRequest purInquiryOfferRequest) {
@ -35,4 +60,53 @@ public class PurInquiryOfferService extends ServiceImpl<PurInquiryOfferMapper, P
public int insert(PurInquiryOfferEntity purInquiryOfferEntity) {
return super.baseMapper.insert(purInquiryOfferEntity);
}
public void submitOffer(PurInquiryEntity purInquiryEntity, List<PurInquiryItemEntity> itemEntities, List<PurInquiryItemDetailEntity> itemDetailEntities) {
PurInquiryOfferEntity purInquiryOfferEntity = new PurInquiryOfferEntity();
BeanUtils.copyProperties(purInquiryEntity,purInquiryOfferEntity);
purInquiryOfferEntity.setId(null);
Long userId = customerService.getUserId();
Date date = new Date();
purInquiryOfferEntity.setUpdateTime(date);
purInquiryOfferEntity.setUpdateUser(userId + "");
purInquiryOfferEntity.setStatus(1); //状态 待报价
String billNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean("XJBJ", "yyyyMMdd"));
purInquiryOfferEntity.setBillNo(billNo);
purInquiryOfferEntity.setApprovalFlowId(null);
// Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow"));
// if (sys_approval_flow){//提交审核
// String approvalFlowId = sysApprovalFlowService.getApprovalFlowId();
// purInquiryOfferEntity.setApprovalFlowId(approvalFlowId);
// sysApprovalFlowService.generateFlow(approvalFlowId,purInquiryOfferEntity.getBillNo(),type_xjbj);
// }
purInquiryOfferEntity.setCreateTime(date);
purInquiryOfferEntity.setCreateUser(userId + "");
purInquiryOfferEntity.setPlanBillNo(purInquiryEntity.getBillNo());
save(purInquiryOfferEntity);
Long id = purInquiryOfferEntity.getId();
//处理明细
ArrayList<PurInquiryOfferItemEntity> purInquiryOfferItemEntities = new ArrayList<>();
itemEntities.forEach( item -> {
PurInquiryOfferItemEntity purInquiryOfferItemEntity = new PurInquiryOfferItemEntity();
BeanUtils.copyProperties(item,purInquiryOfferItemEntity);
purInquiryOfferItemEntity.setOrderIdFk(String.valueOf(id));
purInquiryOfferItemEntities.add(purInquiryOfferItemEntity);
});
purInquiryOfferItemService.saveBatch(purInquiryOfferItemEntities);
//处理明细详情
ArrayList<PurInquiryOfferItemDetailEntity> purInquiryOfferItemDetailEntities = new ArrayList<>();
itemDetailEntities.forEach( itemDetail -> {
PurInquiryOfferItemDetailEntity purInquiryOfferItemDetailEntity = new PurInquiryOfferItemDetailEntity();
BeanUtils.copyProperties(itemDetail,purInquiryOfferItemDetailEntity);
purInquiryOfferItemDetailEntity.setOrderIdFk(String.valueOf(id));
purInquiryOfferItemDetailEntities.add(purInquiryOfferItemDetailEntity);
});
purInquiryOfferItemDetailService.saveBatch(purInquiryOfferItemDetailEntities);
}
}

@ -1,7 +1,12 @@
package com.glxp.api.service.purchase.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.pagehelper.PageHelper;
import com.glxp.api.entity.purchase.PurInquiryItemDetailEntity;
import com.glxp.api.entity.purchase.PurInquiryItemEntity;
import com.glxp.api.req.purchase.PurInquiryRequest;
import com.glxp.api.res.purchase.PurContractEntityResponse;
import com.glxp.api.res.purchase.PurInquiryEntityResponse;
@ -9,13 +14,23 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.entity.purchase.PurInquiryEntity;
import com.glxp.api.dao.purchase.PurInquiryMapper;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
@Service
@Transactional(rollbackFor = Exception.class)
public class PurInquiryService extends ServiceImpl<PurInquiryMapper, PurInquiryEntity> {
@Resource
PurInquiryItemService purInquiryItemService;
@Resource
PurInquiryItemDetailService purInquiryItemDetailService;
@Resource
PurInquiryOfferService purInquiryOfferService;
public List<PurInquiryEntityResponse> queryPageList(PurInquiryRequest purInquiryRequest) {
@ -33,4 +48,27 @@ public class PurInquiryService extends ServiceImpl<PurInquiryMapper, PurInquiryE
public int insert(PurInquiryEntity purInquiryEntity) {
return super.baseMapper.insert(purInquiryEntity);
}
public void submitOffer(PurInquiryEntity purInquiryEntity) {
Long id = purInquiryEntity.getId();
purInquiryEntity = super.baseMapper.selectById(id);
QueryWrapper<PurInquiryItemEntity> purInquiryItemEntityQueryWrapper = new QueryWrapper<>();
purInquiryItemEntityQueryWrapper.eq("orderIdFk",id);
List<PurInquiryItemEntity> itemEntities = purInquiryItemService.list(purInquiryItemEntityQueryWrapper);
QueryWrapper<PurInquiryItemDetailEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("orderIdFk",id);
List<PurInquiryItemDetailEntity> itemDetailEntities = purInquiryItemDetailService.list(queryWrapper);
//生成询价报价单
if (CollectionUtil.isNotEmpty(itemEntities) && CollectionUtil.isNotEmpty(itemDetailEntities) && ObjectUtil.isNotNull(purInquiryEntity)){
purInquiryOfferService.submitOffer(purInquiryEntity,itemEntities,itemDetailEntities);
}
purInquiryEntity.setGeneratePlan(1);
super.baseMapper.updateById(purInquiryEntity);
}
}

@ -3430,13 +3430,18 @@ INSERT IGNORE INTO auth_menu (`menu_id`, `menu_name`, `parent_id`, `order_num`,
INSERT IGNORE INTO auth_menu (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`,
`visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
VALUES (3715, '待审核询价报价单', 3711, 4, 'purchase/purInquiryOffer/purInquiryOfferReviewed', 'purchase/purInquiryOffer/purInquiryOfferReviewed', '{\"pageType\":1}', 1, 0, 'C',
VALUES (3715, '待审核询价报价单', 3711, 5, 'purchase/purInquiryOffer/purInquiryOfferReviewed', 'purchase/purInquiryOffer/purInquiryOfferReviewed', '{\"pageType\":1}', 1, 0, 'C',
'0', '0', 'purchase:purInquiryOffer:purInquiryOfferReviewed', NULL, '超级用户', '2023-02-08 17:02:19', NULL, NULL, NULL);
INSERT IGNORE INTO auth_menu (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`,
`visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
VALUES (3716, '已审核询价报价单', 3711, 5, 'purchase/purInquiryOffer/purInquiryOfferFinish', 'purchase/purInquiryOffer/purInquiryOfferFinish', '{\"pageType\":1}', 1, 0, 'C',
VALUES (3716, '已审核询价报价单', 3711, 6, 'purchase/purInquiryOffer/purInquiryOfferFinish', 'purchase/purInquiryOffer/purInquiryOfferFinish', '{\"pageType\":1}', 1, 0, 'C',
'0', '0', 'purchase:purInquiryOffer:purInquiryOfferFinish', NULL, '超级用户', '2023-02-08 17:02:19', NULL, NULL, NULL);
INSERT IGNORE INTO auth_menu (`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`,
`visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
VALUES (3717, '待报价询价报价单', 3711, 4, 'purchase/purInquiryOffer/purInquiryOffer', 'purchase/purInquiryOffer/purInquiryOffer', '{\"pageType\":1}', 1, 0, 'C',
'0', '0', 'purchase:purInquiryOffer:purInquiryOffer', NULL, '超级用户', '2023-02-08 17:02:19', NULL, NULL, NULL);
INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`)
VALUES ('7', 'xjjh', '询价计划单据', 7, NULL, NULL, NULL, NULL);

Loading…
Cancel
Save