供应链-采购管理
This commit is contained in:
parent
b775a79f19
commit
68d40d110e
|
|
@ -72,7 +72,7 @@ public class DrpInquiryServiceImpl extends ServiceImpl<DrpPurchaseInquiryMapper,
|
||||||
|
|
||||||
|
|
||||||
public void cancelInquiry(DrpInquiryAddVO content) {
|
public void cancelInquiry(DrpInquiryAddVO content) {
|
||||||
((DrpPurchaseInquiryMapper)this.baseMapper).cancelInquiry(content.getInquiryId(), DrpInquiryStatusEnum.LOSE_THE_BID.key());
|
this.baseMapper.cancelInquiry(content.getInquiryId(), DrpInquiryStatusEnum.LOSE_THE_BID.key());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional(
|
@Transactional(
|
||||||
|
|
@ -83,9 +83,9 @@ public class DrpInquiryServiceImpl extends ServiceImpl<DrpPurchaseInquiryMapper,
|
||||||
DrpInquiry drpInquiry = new DrpInquiry();
|
DrpInquiry drpInquiry = new DrpInquiry();
|
||||||
BeanUtil.copyProperties(content, drpInquiry);
|
BeanUtil.copyProperties(content, drpInquiry);
|
||||||
drpInquiry.setStatus(DrpInquiryStatusEnum.NO_COMMIT.key());
|
drpInquiry.setStatus(DrpInquiryStatusEnum.NO_COMMIT.key());
|
||||||
if (CharSequenceUtil.isNotEmpty(drpInquiry.getPhone())) {
|
// if (CharSequenceUtil.isNotEmpty(drpInquiry.getPhone())) {
|
||||||
drpInquiry.setPhone(AesEncryptUtil.aesDecode(drpInquiry.getPhone()));
|
// drpInquiry.setPhone(AesEncryptUtil.aesDecode(drpInquiry.getPhone()));
|
||||||
}
|
// }
|
||||||
|
|
||||||
String inquiryId = content.getInquiryId();
|
String inquiryId = content.getInquiryId();
|
||||||
if (CharSequenceUtil.isNotBlank(inquiryId)) {
|
if (CharSequenceUtil.isNotBlank(inquiryId)) {
|
||||||
|
|
@ -203,7 +203,7 @@ public class DrpInquiryServiceImpl extends ServiceImpl<DrpPurchaseInquiryMapper,
|
||||||
String inquiryId = content.getInquiryId();
|
String inquiryId = content.getInquiryId();
|
||||||
HashMap<String, Object> deleteMap = new HashMap();
|
HashMap<String, Object> deleteMap = new HashMap();
|
||||||
deleteMap.put("inquiry_id", inquiryId);
|
deleteMap.put("inquiry_id", inquiryId);
|
||||||
((DrpPurchaseInquiryMapper)this.baseMapper).deleteByInquiryId(inquiryId, DelFlagEnum.DEL_TRUE.key());
|
this.baseMapper.deleteByInquiryId(inquiryId, DelFlagEnum.DEL_TRUE.key());
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<DrpSupplierQuoteVO> listSupplierQuote(String inquiryId) {
|
public List<DrpSupplierQuoteVO> listSupplierQuote(String inquiryId) {
|
||||||
|
|
@ -285,7 +285,7 @@ public class DrpInquiryServiceImpl extends ServiceImpl<DrpPurchaseInquiryMapper,
|
||||||
while(var6.hasNext()) {
|
while(var6.hasNext()) {
|
||||||
DrpInquiryDetailPageVO drpInquiryDetailPageVO = (DrpInquiryDetailPageVO)var6.next();
|
DrpInquiryDetailPageVO drpInquiryDetailPageVO = (DrpInquiryDetailPageVO)var6.next();
|
||||||
DrpOrderGoodsDetail drpOrderGoodsDetail = new DrpOrderGoodsDetail();
|
DrpOrderGoodsDetail drpOrderGoodsDetail = new DrpOrderGoodsDetail();
|
||||||
BeanUtil.copyProperties(drpInquiryDetailPageVO, drpOrderGoodsDetail, new String[0]);
|
BeanUtil.copyProperties(drpInquiryDetailPageVO, drpOrderGoodsDetail);
|
||||||
drpOrderGoodsDetail.setOrderGoodsDetailId(Id.next());
|
drpOrderGoodsDetail.setOrderGoodsDetailId(Id.next());
|
||||||
drpOrderGoodsDetail.setOrderGoodsId(orderGoodsId);
|
drpOrderGoodsDetail.setOrderGoodsId(orderGoodsId);
|
||||||
drpOrderGoodsDetail.setOrderNum(drpInquiryDetailPageVO.getQuoteNum());
|
drpOrderGoodsDetail.setOrderNum(drpInquiryDetailPageVO.getQuoteNum());
|
||||||
|
|
@ -296,7 +296,7 @@ public class DrpInquiryServiceImpl extends ServiceImpl<DrpPurchaseInquiryMapper,
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void updateInquiryStatus(DrpCommitFinalBidsDTO content, LocalDateTime bidTime) {
|
protected void updateInquiryStatus(DrpCommitFinalBidsDTO content, LocalDateTime bidTime) {
|
||||||
((DrpPurchaseInquiryMapper)this.baseMapper).update(null, ((((Wrappers.lambdaUpdate(DrpInquiry.class).eq(DrpInquiry::getInquiryId, content.getInquiryId())).set(DrpInquiry::getStatus, DrpInquiryStatusEnum.ALREADY_QUOTE.key())).set(DrpInquiry::getBidTotalPrice, content.getBidTotalPrice())).set(DrpInquiry::getSupplierId, content.getSupplierId())).set(DrpInquiry::getBidTime, bidTime));
|
this.baseMapper.update(null, ((((Wrappers.lambdaUpdate(DrpInquiry.class).eq(DrpInquiry::getInquiryId, content.getInquiryId())).set(DrpInquiry::getStatus, DrpInquiryStatusEnum.ALREADY_QUOTE.key())).set(DrpInquiry::getBidTotalPrice, content.getBidTotalPrice())).set(DrpInquiry::getSupplierId, content.getSupplierId())).set(DrpInquiry::getBidTime, bidTime));
|
||||||
this.drpPurchaseInquirySupplierMapper.update(null, (Wrappers.lambdaUpdate(DrpInquirySupplier.class).eq(DrpInquirySupplier::getInquiryId, content.getInquiryId())).set(DrpInquirySupplier::getBidStatus, DrpQuoteStatusEnum.LOSE_THE_BID.key()));
|
this.drpPurchaseInquirySupplierMapper.update(null, (Wrappers.lambdaUpdate(DrpInquirySupplier.class).eq(DrpInquirySupplier::getInquiryId, content.getInquiryId())).set(DrpInquirySupplier::getBidStatus, DrpQuoteStatusEnum.LOSE_THE_BID.key()));
|
||||||
this.drpPurchaseInquirySupplierMapper.update(null, ((Wrappers.lambdaUpdate(DrpInquirySupplier.class).eq(DrpInquirySupplier::getInquiryId, content.getInquiryId())).eq(DrpInquirySupplier::getSupplierId, content.getSupplierId())).set(DrpInquirySupplier::getBidStatus, DrpQuoteStatusEnum.WON_THE_BID.key()));
|
this.drpPurchaseInquirySupplierMapper.update(null, ((Wrappers.lambdaUpdate(DrpInquirySupplier.class).eq(DrpInquirySupplier::getInquiryId, content.getInquiryId())).eq(DrpInquirySupplier::getSupplierId, content.getSupplierId())).set(DrpInquirySupplier::getBidStatus, DrpQuoteStatusEnum.WON_THE_BID.key()));
|
||||||
}
|
}
|
||||||
|
|
@ -351,7 +351,7 @@ public class DrpInquiryServiceImpl extends ServiceImpl<DrpPurchaseInquiryMapper,
|
||||||
content.setPhone(AesEncryptUtil.aesDecode(content.getPhone()));
|
content.setPhone(AesEncryptUtil.aesDecode(content.getPhone()));
|
||||||
String inquiryId = content.getInquiryId();
|
String inquiryId = content.getInquiryId();
|
||||||
DrpInquiry drpInquiry = new DrpInquiry();
|
DrpInquiry drpInquiry = new DrpInquiry();
|
||||||
BeanUtil.copyProperties(content, drpInquiry, new String[0]);
|
BeanUtil.copyProperties(content, drpInquiry);
|
||||||
if (CharSequenceUtil.isNotEmpty(drpInquiry.getPhone())) {
|
if (CharSequenceUtil.isNotEmpty(drpInquiry.getPhone())) {
|
||||||
drpInquiry.setPhone(AesEncryptUtil.aesDecode(drpInquiry.getPhone()));
|
drpInquiry.setPhone(AesEncryptUtil.aesDecode(drpInquiry.getPhone()));
|
||||||
}
|
}
|
||||||
|
|
@ -363,11 +363,11 @@ public class DrpInquiryServiceImpl extends ServiceImpl<DrpPurchaseInquiryMapper,
|
||||||
drpInquiry.setStatus(DrpInquiryStatusEnum.DOING_QUOTE.key());
|
drpInquiry.setStatus(DrpInquiryStatusEnum.DOING_QUOTE.key());
|
||||||
if (CharSequenceUtil.isNotBlank(inquiryId)) {
|
if (CharSequenceUtil.isNotBlank(inquiryId)) {
|
||||||
drpInquiry.setInquiryId(inquiryId);
|
drpInquiry.setInquiryId(inquiryId);
|
||||||
((DrpPurchaseInquiryMapper)this.baseMapper).update(drpInquiry, Wrappers.lambdaUpdate(DrpInquiry.class).eq(DrpInquiry::getInquiryId, inquiryId));
|
this.baseMapper.update(drpInquiry, Wrappers.lambdaUpdate(DrpInquiry.class).eq(DrpInquiry::getInquiryId, inquiryId));
|
||||||
} else {
|
} else {
|
||||||
inquiryId = CustomIdGenerateUtil.generateInquiryId();
|
inquiryId = CustomIdGenerateUtil.generateInquiryId();
|
||||||
drpInquiry.setInquiryId(inquiryId);
|
drpInquiry.setInquiryId(inquiryId);
|
||||||
((DrpPurchaseInquiryMapper)this.baseMapper).insert(drpInquiry);
|
this.baseMapper.insert(drpInquiry);
|
||||||
}
|
}
|
||||||
|
|
||||||
List<DrpInquiryDetailAddDTO> detailList = content.getDetailList();
|
List<DrpInquiryDetailAddDTO> detailList = content.getDetailList();
|
||||||
|
|
@ -400,7 +400,7 @@ public class DrpInquiryServiceImpl extends ServiceImpl<DrpPurchaseInquiryMapper,
|
||||||
while(var12.hasNext()) {
|
while(var12.hasNext()) {
|
||||||
DrpInquiryDetail detail = (DrpInquiryDetail)var12.next();
|
DrpInquiryDetail detail = (DrpInquiryDetail)var12.next();
|
||||||
DrpQuote quote = new DrpQuote();
|
DrpQuote quote = new DrpQuote();
|
||||||
BeanUtil.copyProperties(detail, quote, new String[0]);
|
BeanUtil.copyProperties(detail, quote);
|
||||||
quote.setId((Long)null);
|
quote.setId((Long)null);
|
||||||
quote.setQuoteId(Id.next());
|
quote.setQuoteId(Id.next());
|
||||||
quote.setInquirySupplierId(inquirySupplierId);
|
quote.setInquirySupplierId(inquirySupplierId);
|
||||||
|
|
|
||||||
|
|
@ -164,7 +164,7 @@ public class DrpPurchasePlanServiceImpl extends ServiceImpl<DrpPurchasePlanMappe
|
||||||
)
|
)
|
||||||
public DrpPurchasePlanAddVO addSaveDrpPurchasePlan(DrpPurchasePlanSaveDTO content) {
|
public DrpPurchasePlanAddVO addSaveDrpPurchasePlan(DrpPurchasePlanSaveDTO content) {
|
||||||
DrpPurchasePlan purchasePlan = new DrpPurchasePlan();
|
DrpPurchasePlan purchasePlan = new DrpPurchasePlan();
|
||||||
BeanUtil.copyProperties(content, purchasePlan, new String[0]);
|
BeanUtil.copyProperties(content, purchasePlan);
|
||||||
String planId = content.getPlanId();
|
String planId = content.getPlanId();
|
||||||
purchasePlan.setStatus(DrpPurchasePlanStatusEnum.SAVE.key());
|
purchasePlan.setStatus(DrpPurchasePlanStatusEnum.SAVE.key());
|
||||||
if (CharSequenceUtil.isBlank(planId)) {
|
if (CharSequenceUtil.isBlank(planId)) {
|
||||||
|
|
|
||||||
|
|
@ -7,47 +7,50 @@ import com.bonus.common.houqin.constant.GlobalConstants;
|
||||||
import org.springframework.data.redis.core.RedisTemplate;
|
import org.springframework.data.redis.core.RedisTemplate;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.security.SecureRandom;
|
||||||
|
|
||||||
public class CustomIdGenerateUtil {
|
public class CustomIdGenerateUtil {
|
||||||
public static String generateInspectGoodsId() {
|
|
||||||
return generateFixedRuleId("inspectGoodsId:", "YHD", 3, 3);
|
|
||||||
}
|
|
||||||
public static String generateProductionId() {
|
|
||||||
return generateFixedRuleId("productionId:", "SCJH", 3, 3);
|
|
||||||
}
|
|
||||||
public static String generatePurchaseOrdId() {
|
|
||||||
return generateFixedRuleId("purchaseOrderId:", "CGJH", 3, 3);
|
|
||||||
}
|
|
||||||
public static String generateContractId() {
|
|
||||||
return generateFixedRuleId("drpContractId:", "CGHT", 3, 3);
|
|
||||||
}
|
|
||||||
public static String generateMarketPriceId() {
|
|
||||||
return generateFixedRuleId("drpAdjustmentOrderId:", "SCJ", 3, 3);
|
|
||||||
}
|
|
||||||
public static String generateOrderGoodsId() {
|
|
||||||
return generateFixedRuleId("orderGoodsId:", "CGDD", 3, 3);
|
|
||||||
}
|
|
||||||
public static String generateInquiryId() {
|
|
||||||
return generateFixedRuleId("inquiryId:", "XJD", 3, 3);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String generateFixedRuleId(String redisKey, String idPrefix, Integer randomLength, Integer length) {
|
|
||||||
Long var10000 = GlobalConstants.TENANT_ID;
|
|
||||||
redisKey = "ystKey:" + var10000 + ":" + redisKey;
|
|
||||||
Long incr = RedisUtil.getIncr(redisTemplate(), redisKey);
|
|
||||||
return idPrefix + DateUtil.format(LocalDateTime.now(), "yyyyMMdd") + getRandomDigit(randomLength) + (length <= 0 ? "" : String.format("%0" + length + "d", incr));
|
|
||||||
}
|
|
||||||
|
|
||||||
private static RedisTemplate<Object, Object> redisTemplate() {
|
private static RedisTemplate<Object, Object> redisTemplate() {
|
||||||
return SpringContextHolder.getBean("redisTemplate");
|
return SpringContextHolder.getBean("redisTemplate");
|
||||||
}
|
}
|
||||||
|
public static String generateInspectGoodsId() {
|
||||||
|
return generateCustomId("supplyChain:purchase:inspectGoodsId:", "CGYH", 3, 3);
|
||||||
|
}
|
||||||
|
public static String generateProductionId() {
|
||||||
|
return generateCustomId("supplyChain:purchase:productionId:", "CGSC", 3, 3);
|
||||||
|
}
|
||||||
|
public static String generatePurchaseOrdId() {
|
||||||
|
return generateCustomId("supplyChain:purchase:purchaseOrderId:", "CGJH", 3, 3);
|
||||||
|
}
|
||||||
|
public static String generateContractId() {
|
||||||
|
return generateCustomId("supplyChain:purchase:contractId:", "CGHT", 3, 3);
|
||||||
|
}
|
||||||
|
public static String generateMarketPriceId() {
|
||||||
|
return generateCustomId("supplyChain:purchase:marketPriceId:", "CGSJ", 3, 3);
|
||||||
|
}
|
||||||
|
public static String generateOrderGoodsId() {
|
||||||
|
return generateCustomId("supplyChain:purchase:orderGoodsId:", "CGDD", 3, 3);
|
||||||
|
}
|
||||||
|
public static String generateInquiryId() {
|
||||||
|
return generateCustomId("supplyChain:purchase:inquiryId:", "CGXJ", 3, 3);
|
||||||
|
}
|
||||||
|
|
||||||
public static String getRandomDigit(int length) {
|
public static String generateCustomId(String redisKey, String idPrefix, Integer randomLength, Integer length) {
|
||||||
|
Long tenantId = GlobalConstants.TENANT_ID;
|
||||||
|
redisKey = "sc:" + tenantId + ":" + redisKey;
|
||||||
|
Long incr = RedisUtil.getIncr(redisTemplate(), redisKey);
|
||||||
|
return idPrefix + DateUtil.format(LocalDateTime.now(), "yyyyMMdd") + generateRandomNumber(randomLength) + (length <= 0 ? "" : String.format("%0" + length + "d", incr));
|
||||||
|
}
|
||||||
|
public static String generateRandomNumber(int length) {
|
||||||
if (length <= 0) {
|
if (length <= 0) {
|
||||||
return "";
|
return "";
|
||||||
} else {
|
}
|
||||||
int num = (int)(Math.random() * Math.pow(10.0, (double)length));
|
|
||||||
|
SecureRandom random = new SecureRandom();
|
||||||
|
int min = (int) Math.pow(10, length - 1);
|
||||||
|
int max = (int) Math.pow(10, length);
|
||||||
|
|
||||||
|
int num = random.nextInt(max - min) + min;
|
||||||
return String.format("%0" + length + "d", num);
|
return String.format("%0" + length + "d", num);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -83,7 +83,7 @@
|
||||||
left join drp_market_price b on a.harvest_id = b.harvest_id
|
left join drp_market_price b on a.harvest_id = b.harvest_id
|
||||||
|
|
||||||
WHERE
|
WHERE
|
||||||
b.commit_status = 2 and b.del_flag = 2
|
b.commit_status = 2 and b.del_flag = 0
|
||||||
AND a.material_id IN
|
AND a.material_id IN
|
||||||
<foreach collection="materialIdList" item="materialId" separator="," open="(" close=")">
|
<foreach collection="materialIdList" item="materialId" separator="," open="(" close=")">
|
||||||
#{materialId}
|
#{materialId}
|
||||||
|
|
|
||||||
|
|
@ -73,7 +73,7 @@
|
||||||
select dpc.*
|
select dpc.*
|
||||||
from drp_procurement_contract dpc
|
from drp_procurement_contract dpc
|
||||||
where dpc.supplier_id = #{supplierId}
|
where dpc.supplier_id = #{supplierId}
|
||||||
and dpc.del_flag = 2
|
and dpc.del_flag = 0
|
||||||
and dpc.commit_status = 2
|
and dpc.commit_status = 2
|
||||||
and dpc.contract_status = 2
|
and dpc.contract_status = 2
|
||||||
and dpc.approve_status = 3
|
and dpc.approve_status = 3
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@
|
||||||
left join drp_supplier c on c.supplier_id = a.supplier_id
|
left join drp_supplier c on c.supplier_id = a.supplier_id
|
||||||
left join alloc_area b on a.area_id = b.area_id
|
left join alloc_area b on a.area_id = b.area_id
|
||||||
where
|
where
|
||||||
a.del_flag = 2
|
a.del_flag = 0
|
||||||
<if test="content.areaIdList != null and content.areaIdList.size() > 0">
|
<if test="content.areaIdList != null and content.areaIdList.size() > 0">
|
||||||
and a.area in
|
and a.area in
|
||||||
<foreach collection="content.areaIdList" item="areaId" separator="," open="(" close=")">
|
<foreach collection="content.areaIdList" item="areaId" separator="," open="(" close=")">
|
||||||
|
|
@ -127,7 +127,7 @@
|
||||||
drp_inquiry a
|
drp_inquiry a
|
||||||
LEFT JOIN drp_inquiry_supplier b ON a.inquiry_id = b.inquiry_id
|
LEFT JOIN drp_inquiry_supplier b ON a.inquiry_id = b.inquiry_id
|
||||||
WHERE
|
WHERE
|
||||||
a.del_flag = 2
|
a.del_flag = 0
|
||||||
and a.status not in
|
and a.status not in
|
||||||
<foreach collection="notCommitStatus" item="status" open="(" close=")" separator=",">
|
<foreach collection="notCommitStatus" item="status" open="(" close=")" separator=",">
|
||||||
#{status}
|
#{status}
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
left join drp_order_goods b on a.order_goods_id = b.order_goods_id
|
left join drp_order_goods b on a.order_goods_id = b.order_goods_id
|
||||||
|
|
||||||
WHERE
|
WHERE
|
||||||
b.order_status = 2 and b.approve_status = 3 and b.supplier_confirm_status = 2 and b.del_flag = 2
|
b.order_status = 2 and b.approve_status = 3 and b.supplier_confirm_status = 2 and b.del_flag = 0
|
||||||
AND a.material_id IN
|
AND a.material_id IN
|
||||||
<foreach collection="materialIdList" item="materialId" separator="," open="(" close=")">
|
<foreach collection="materialIdList" item="materialId" separator="," open="(" close=")">
|
||||||
#{materialId}
|
#{materialId}
|
||||||
|
|
|
||||||
|
|
@ -259,7 +259,7 @@
|
||||||
<if test="content.canteenId != null">
|
<if test="content.canteenId != null">
|
||||||
LEFT JOIN drp_menu_material_supplier dmms ON dmms.material_id = a.material_id
|
LEFT JOIN drp_menu_material_supplier dmms ON dmms.material_id = a.material_id
|
||||||
AND dmms.canteen_id = #{content.canteenId}
|
AND dmms.canteen_id = #{content.canteenId}
|
||||||
AND dmms.del_flag = 2
|
AND dmms.del_flag = 0
|
||||||
AND dmms.if_supply = 1
|
AND dmms.if_supply = 1
|
||||||
</if>
|
</if>
|
||||||
<where>
|
<where>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue