|
@@ -22,6 +22,7 @@ import java.util.List;
|
|
|
|
|
|
import static com.dayou.common.Constants.*;
|
|
import static com.dayou.common.Constants.*;
|
|
import static com.dayou.enums.MainBusinessEnum.ALL_BUSINESS;
|
|
import static com.dayou.enums.MainBusinessEnum.ALL_BUSINESS;
|
|
|
|
+import static com.dayou.enums.MainBusinessEnum.ASSET_BUSINESS;
|
|
import static com.dayou.enums.TakeNumberEnum.ORDER_NUMBER;
|
|
import static com.dayou.enums.TakeNumberEnum.ORDER_NUMBER;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -156,6 +157,38 @@ public class BusinessNumberServiceImpl extends ServiceImpl<BusinessNumberMapper,
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
|
|
+ * 取项目编号
|
|
|
|
+ * 资产项目订单号取号:年份4位 + 月份2位 + 序号3位(当月下单量)
|
|
|
|
+ * 如: 2025010001
|
|
|
|
+ * @return String
|
|
|
|
+ */
|
|
|
|
+ @Override
|
|
|
|
+ public synchronized String takeAssetsOrderNumber() {
|
|
|
|
+ Date now = new Date();
|
|
|
|
+ int year = DateUtils.getYear(now);
|
|
|
|
+ int month = DateUtils.getMonth(now);
|
|
|
|
+ BusinessNumber exist = null;
|
|
|
|
+ int number;
|
|
|
|
+ //
|
|
|
|
+ exist = this.getOne(new LambdaQueryWrapper<BusinessNumber>().eq(BusinessNumber::getTakeType, ORDER_NUMBER).eq(BusinessNumber::getBusinessType, ASSET_BUSINESS)
|
|
|
|
+ .eq(BusinessNumber::getYear, year).eq(BusinessNumber::getMonth, month).eq(BaseEntity::getDeleted, Boolean.FALSE));
|
|
|
|
+ if (exist==null){
|
|
|
|
+ exist = new BusinessNumber();
|
|
|
|
+ exist.setTakeType(ORDER_NUMBER.name());
|
|
|
|
+ exist.setBusinessType(ASSET_BUSINESS.name());
|
|
|
|
+ exist.setYear(year);
|
|
|
|
+ exist.setNextNo(1);
|
|
|
|
+ exist.setMonth(month);
|
|
|
|
+ this.save(exist);
|
|
|
|
+ number = exist.getNextNo();
|
|
|
|
+ }
|
|
|
|
+ number = exist.getNextNo();
|
|
|
|
+ this.update(new LambdaUpdateWrapper<BusinessNumber>().set(BusinessNumber::getNextNo,(number+1)).eq(BaseEntity::getId,exist.getId()));
|
|
|
|
+ // 格式化
|
|
|
|
+ return new StringBuffer().append(year).append(zero2.format(month)).append(zero3.format(number)).toString();
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
* 根据主号生成字号
|
|
* 根据主号生成字号
|
|
* @param mainNumber
|
|
* @param mainNumber
|
|
* @param targets
|
|
* @param targets
|