forked from I3-YF/i3plus-mes-pcn-yfai
Finish Task#6617 智慧内饰&出风口条码规则需求
parent
1f2bf0a276
commit
afe4a0e2c1
@ -0,0 +1,180 @@
|
|||||||
|
package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.numberrule;
|
||||||
|
|
||||||
|
import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException;
|
||||||
|
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService;
|
||||||
|
import cn.estsh.i3plus.platform.common.tool.TimeTool;
|
||||||
|
import cn.estsh.i3plus.pojo.mes.model.GenSerialNoModel;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.text.DecimalFormat;
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description : 出风口条码
|
||||||
|
* @Reference :
|
||||||
|
* @Author : puxiao
|
||||||
|
* @CreateDate : 2025/6/30 18:57
|
||||||
|
* @Modify:
|
||||||
|
**/
|
||||||
|
@Component
|
||||||
|
public class AirOutletCustSnNumberRuleStrategyService implements INumberRulePackAttributeStrategyService {
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) {
|
||||||
|
if (null == genSerialNoModel) {
|
||||||
|
MesPcnException.throwBusiException("入参缺少[GenSerialNoModel]!");
|
||||||
|
}
|
||||||
|
Date date = new Date();
|
||||||
|
genSerialNoModel.setYear(getYearShort(date));
|
||||||
|
genSerialNoModel.setMonth(getMonthShort(date));
|
||||||
|
genSerialNoModel.setDay(getDayShort(date));
|
||||||
|
genSerialNoModel.setVersionNo(getDayOfYear(date));
|
||||||
|
return genSerialNoModel;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private String getYearShort(Date date) {
|
||||||
|
String yearShort = "";
|
||||||
|
int year = Integer.parseInt(TimeTool.getYear(date));
|
||||||
|
switch (year){
|
||||||
|
case 2010:
|
||||||
|
yearShort = "A";
|
||||||
|
break;
|
||||||
|
case 2011:
|
||||||
|
yearShort = "B";
|
||||||
|
break;
|
||||||
|
case 2012:
|
||||||
|
yearShort = "C";
|
||||||
|
break;
|
||||||
|
case 2013:
|
||||||
|
yearShort = "D";
|
||||||
|
break;
|
||||||
|
case 2014:
|
||||||
|
yearShort = "E";
|
||||||
|
break;
|
||||||
|
case 2015:
|
||||||
|
yearShort = "F";
|
||||||
|
break;
|
||||||
|
case 2016:
|
||||||
|
yearShort = "G";
|
||||||
|
break;
|
||||||
|
case 2017:
|
||||||
|
yearShort = "H";
|
||||||
|
break;
|
||||||
|
case 2018:
|
||||||
|
yearShort = "J";
|
||||||
|
break;
|
||||||
|
case 2019:
|
||||||
|
yearShort = "K";
|
||||||
|
break;
|
||||||
|
case 2020:
|
||||||
|
yearShort = "L";
|
||||||
|
break;
|
||||||
|
case 2021:
|
||||||
|
yearShort = "M";
|
||||||
|
break;
|
||||||
|
case 2022:
|
||||||
|
yearShort = "N";
|
||||||
|
break;
|
||||||
|
case 2023:
|
||||||
|
yearShort = "P";
|
||||||
|
break;
|
||||||
|
case 2024:
|
||||||
|
yearShort = "R";
|
||||||
|
break;
|
||||||
|
case 2025:
|
||||||
|
yearShort = "S";
|
||||||
|
break;
|
||||||
|
case 2026:
|
||||||
|
yearShort = "T";
|
||||||
|
break;
|
||||||
|
case 2027:
|
||||||
|
yearShort = "V";
|
||||||
|
break;
|
||||||
|
case 2028:
|
||||||
|
yearShort = "W";
|
||||||
|
break;
|
||||||
|
case 2029:
|
||||||
|
yearShort = "X";
|
||||||
|
break;
|
||||||
|
case 2030:
|
||||||
|
yearShort = "Y";
|
||||||
|
break;
|
||||||
|
case 2031:
|
||||||
|
yearShort = "1";
|
||||||
|
break;
|
||||||
|
case 2032:
|
||||||
|
yearShort = "2";
|
||||||
|
break;
|
||||||
|
case 2033:
|
||||||
|
yearShort = "3";
|
||||||
|
break;
|
||||||
|
case 2034:
|
||||||
|
yearShort = "4";
|
||||||
|
break;
|
||||||
|
case 2035:
|
||||||
|
yearShort = "5";
|
||||||
|
break;
|
||||||
|
case 2036:
|
||||||
|
yearShort = "6";
|
||||||
|
break;
|
||||||
|
case 2037:
|
||||||
|
yearShort = "7";
|
||||||
|
break;
|
||||||
|
case 2038:
|
||||||
|
yearShort = "8";
|
||||||
|
break;
|
||||||
|
case 2039:
|
||||||
|
yearShort = "9";
|
||||||
|
break;
|
||||||
|
case 2040:
|
||||||
|
yearShort = "A";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
}
|
||||||
|
return yearShort;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String getMonthShort(Date date) {
|
||||||
|
String monthShort = "";
|
||||||
|
int monthValue = Integer.parseInt(TimeTool.getMonth(date));
|
||||||
|
switch (monthValue){
|
||||||
|
case 1:
|
||||||
|
case 2:
|
||||||
|
case 3:
|
||||||
|
case 4:
|
||||||
|
case 5:
|
||||||
|
case 6:
|
||||||
|
case 7:
|
||||||
|
case 8:
|
||||||
|
case 9:
|
||||||
|
monthShort = String.valueOf(monthValue);
|
||||||
|
break;
|
||||||
|
case 10:
|
||||||
|
monthShort = "0";
|
||||||
|
break;
|
||||||
|
case 11:
|
||||||
|
monthShort = "A";
|
||||||
|
break;
|
||||||
|
case 12:
|
||||||
|
monthShort = "B";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
}
|
||||||
|
return monthShort;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String getDayShort(Date date) {
|
||||||
|
return TimeTool.pareDateToString("dd",date);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private String getDayOfYear(Date date) {
|
||||||
|
Calendar calendar = Calendar.getInstance();
|
||||||
|
calendar.setTime(date);
|
||||||
|
int dayOfYear = calendar.get(Calendar.DAY_OF_YEAR);
|
||||||
|
DecimalFormat df = new DecimalFormat("000");
|
||||||
|
return df.format(dayOfYear);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue