From 9ac70efe81c1909d63b89f9b18c4f367c0584ceb Mon Sep 17 00:00:00 2001 From: 野心家 <1051256694@qq.com> Date: 星期一, 28 四月 2025 16:04:00 +0800 Subject: [PATCH] 初始化 --- src/main/webapp/views/testMast/testMast.html | 10 +- src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 60 +++------------ src/main/java/com/zy/asrs/task/handler/StandingHandler.java | 2 src/main/java/com/zy/common/web/WcsController.java | 10 +- src/main/java/com/zy/asrs/task/MoveLocScheduler.java | 2 src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java | 77 ++++++++++++++++++- src/main/java/com/zy/asrs/entity/TestMast.java | 8 +- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 6 + src/main/java/com/zy/asrs/entity/LocMast.java | 2 src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java | 6 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 2 src/main/java/com/zy/common/service/CommonService.java | 42 ++++++++++ src/main/resources/application.yml | 6 13 files changed, 155 insertions(+), 78 deletions(-) diff --git a/src/main/java/com/zy/asrs/entity/LocMast.java b/src/main/java/com/zy/asrs/entity/LocMast.java index 07055cc..0716e43 100644 --- a/src/main/java/com/zy/asrs/entity/LocMast.java +++ b/src/main/java/com/zy/asrs/entity/LocMast.java @@ -186,7 +186,7 @@ @TableField("fire_status") private Integer fireStatus; -// 浜у搧鐘舵�亄0:鏃�,1:寰呮祴,2:娴嬭瘯涓�;3.娴嬭瘯瀹屾垚;4.娴嬭瘯澶辫触;5.闈欑疆涓�;6:闈欑疆瀹屾垚;7:鏆傚仠娴嬭瘯;8:绱ф�ュ嚭搴�;} +// 浜у搧鐘舵�亄0:绌洪棽,1:寰呮祴,2:娴嬭瘯涓�;3.娴嬭瘯瀹屾垚;4.娴嬭瘯澶辫触;} @ApiModelProperty(value= "") @TableField("pack_status") private Integer packStatus; diff --git a/src/main/java/com/zy/asrs/entity/TestMast.java b/src/main/java/com/zy/asrs/entity/TestMast.java index 664e348..5a38921 100644 --- a/src/main/java/com/zy/asrs/entity/TestMast.java +++ b/src/main/java/com/zy/asrs/entity/TestMast.java @@ -101,15 +101,15 @@ if (null == this.status){ return null; } switch (this.status){ case 0: - return "鏆傚仠"; + return "绌洪棽"; case 1: return "寰呮祴"; case 2: - return "澶嶆牳涓�"; - case 3: return "娴嬭瘯涓�"; - case 4: + case 3: return "瀹屾垚"; + case 4: + return "澶辫触"; case 5: return "宸茬Щ搴�"; default: diff --git a/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java index babb339..628d95b 100644 --- a/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java @@ -52,9 +52,9 @@ if(station.getAutoing()==null || !station.getAutoing().equals("Y")) { throw new CoolException(devpNo+"绔欑偣涓嶆槸鑷姩鐘舵��"); } - if(station.getLoading()==null || !station.getLoading().equals("Y")) { - throw new CoolException(devpNo+"绔欑偣鏃犵墿"); - } +// if(station.getLoading()==null || !station.getLoading().equals("Y")) { +// throw new CoolException(devpNo+"绔欑偣鏃犵墿"); +// } if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo() < 9990) { throw new CoolException(devpNo+"绔欑偣宸叉湁宸ヤ綔鍙�"); } diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java index aecb3c1..873b91f 100644 --- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java @@ -729,7 +729,7 @@ combParam.setLocNo(locMast.getLocNo()); combParam.setPackSts(7); combParam.setRequestTime(DateUtils.convert(new Date())); - new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); +// new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); if (!locMastService.updateById(locMast)) { throw new CoolException("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細"+locMast.getLocNo()); diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java index 56c67d2..fdd857e 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -524,10 +524,14 @@ throw new CoolException("浜у搧鍦ㄦ祴璇曚腑锛岀姝㈠簱浣嶇Щ鏍�"); // }else if (!sourceLoc.getCrnNo().equals(loc.getCrnNo())) { // throw new CoolException("绉昏浆搴撲綅灞炰簬涓嶅悓鍫嗗灈鏈�"); - }else if(sourceLoc.getPackStatus()!=3){ + }else if(sourceLoc.getPackStatus()==3||sourceLoc.getPackStatus()==4){ if(sourceLoc.getLocType1()==loc.getLocType1()){ throw new CoolException("婧愬簱涓轰笌鐩爣搴撲綅鐨勫簱浣嶇被鍨嬬浉鍚�"); } + }else if (sourceLoc.getPackStatus()==5){ + if(sourceLoc.getLocType1()!=loc.getLocType1()){ + throw new CoolException("婧愬簱涓洪潤缃揣鐗╀笌鐩爣搴撲綅鐨勫簱浣嶇被鍨嬩笉鐩稿悓"); + } } Date now = new Date(); // 鑾峰彇宸ヤ綔鍙� diff --git a/src/main/java/com/zy/asrs/task/MoveLocScheduler.java b/src/main/java/com/zy/asrs/task/MoveLocScheduler.java index f868667..80b5856 100644 --- a/src/main/java/com/zy/asrs/task/MoveLocScheduler.java +++ b/src/main/java/com/zy/asrs/task/MoveLocScheduler.java @@ -26,7 +26,7 @@ */ @Scheduled(cron = "0/3 * * * * ? ") private void execute() { - if (confirmDeep) return; +// if (confirmDeep) return; ReturnT<String> result = moveLocHandler.start(); if (!result.isSuccess()) { log.error("娴嬭瘯瀹屾垚绉诲簱澶辫触"); diff --git a/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java b/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java index 9bbc6a8..1c42497 100644 --- a/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java @@ -68,6 +68,7 @@ .eq("row1", equipmentRow) .eq("loc_type1", (short) 1) .eq("fire_status", 0) + .eq("ctn_kind",1) ); if (!Cools.isEmpty(locMasts2)) { for (LocMast locMast : locMasts2) { @@ -79,11 +80,11 @@ TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>() .eq("loc_no", locMast.getLocNo()) .eq("barcode", locDetl.getMatnr()) - .eq("status", 4) + .eq("status", 3) ); boolean sign = false; if (!Cools.isEmpty(testMast)) { - if (testMast.getStatus() == 4) { + if (testMast.getStatus() == 3) { //绉诲簱寮�濮嬶紝鏌ヨ鐩爣搴撲綅 LocMast targetLocNo = locMastService.queryFreeLocMast(3, (short) 2); if (Cools.isEmpty(targetLocNo)) { @@ -109,7 +110,7 @@ } else { log.error("娴嬭瘯搴撲綅锛�" + locMast.getLocNo() + "鎵�灞炴祴璇曟。涓虹┖鎴栬�呬笉鐘舵�佷负4"); } - if (sign) { + if (false) { //4.娴嬭瘯瀹屾垚涓婃姤 CombParam combParam = new CombParam(); combParam.setPackNo(locDetl.getMatnr()); @@ -117,7 +118,7 @@ combParam.setPackSts(1); combParam.setStepSts(4); combParam.setRequestTime(DateUtils.convert(new Date())); - new PostMesDataUtils().postMesData("MES绯荤粺", mesUrl, inpath, combParam); +// new PostMesDataUtils().postMesData("MES绯荤粺", mesUrl, inpath, combParam); return SUCCESS; } } @@ -125,6 +126,74 @@ } catch (Exception e) { log.error("" + e); } + + //娴嬭瘯澶辫触,绉诲簱 + try { + List<LocMast> locMasts2 = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("loc_sts", "F") + .eq("pack_status", 4)//娴嬭瘯澶辫触 + .eq("row1", equipmentRow) + .eq("loc_type1", (short) 1) + .eq("fire_status", 0) + .eq("ctn_kind",1) + ); + if (!Cools.isEmpty(locMasts2)) { + for (LocMast locMast : locMasts2) { + LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo())); + if (Cools.isEmpty(locDetl)) { + log.error("娴嬭瘯澶辫触 鍑哄簱銆佺Щ搴�==>搴撳瓨鏄庣粏鏌ヨ澶辫触锛佸簱浣嶅彿锛�" + locMast.getLocNo()); + continue; + } + TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>() + .eq("loc_no", locMast.getLocNo()) + .eq("barcode", locDetl.getMatnr()) + .eq("status", 4) + ); + boolean sign = false; + if (!Cools.isEmpty(testMast)) { + if (testMast.getStatus() == 4) { + //绉诲簱寮�濮嬶紝鏌ヨ鐩爣搴撲綅 + LocMast targetLocNo = locMastService.queryFreeLocMast(3, (short) 4); + if (Cools.isEmpty(targetLocNo)) { + targetLocNo = locMastService.queryFreeLocMast(2, (short) 4); + if (Cools.isEmpty(targetLocNo)) { + targetLocNo = locMastService.queryFreeLocMast(1, (short) 4); + if (Cools.isEmpty(targetLocNo)) { + return FAIL.setMsg("娌℃湁涓浆搴撲綅"); + } + } + } + if (targetLocNo != null) { + workService.locMove(locMast.getLocNo(), targetLocNo.getLocNo(), (long) 9935); + sign = true; + } else { + log.error("娴嬭瘯澶辫触鑷姩绉诲簱--->娌℃湁绌哄簱浣�!"); + } + + } else if (testMast.getStatus() != 4) { + log.error("娴嬭瘯鐘舵�佸紓甯�,搴撲綅鍙蜂负锛�" + testMast.getLocNo()); + } + + } else { + log.error("娴嬭瘯搴撲綅锛�" + locMast.getLocNo() + "鎵�灞炴祴璇曟。涓虹┖鎴栬�呬笉鐘舵�佷负4"); + } + if (false) { + //4.娴嬭瘯瀹屾垚涓婃姤 + CombParam combParam = new CombParam(); + combParam.setPackNo(locDetl.getMatnr()); + combParam.setLocNo(locMast.getLocNo()); + combParam.setPackSts(1); + combParam.setStepSts(4); + combParam.setRequestTime(DateUtils.convert(new Date())); +// new PostMesDataUtils().postMesData("MES绯荤粺", mesUrl, inpath, combParam); + return SUCCESS; + } + } + } + } catch (Exception e) { + log.error("" + e); + } + //娴嬭瘯鏈夌┖搴撲綅 绉诲簱 try { List<LocMast> locMasts3 = locMastService.selectList(new EntityWrapper<LocMast>() diff --git a/src/main/java/com/zy/asrs/task/handler/StandingHandler.java b/src/main/java/com/zy/asrs/task/handler/StandingHandler.java index 2d4a44e..441edaa 100644 --- a/src/main/java/com/zy/asrs/task/handler/StandingHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/StandingHandler.java @@ -132,7 +132,7 @@ combParam.setPackSts(1); combParam.setStepSts(6); combParam.setRequestTime(DateUtils.convert(new Date())); - new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); +// new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); if (!locMastService.updateById(locMast)) { throw new CoolException("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細"+locMast.getLocNo()); diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java index c941a80..425a04e 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java @@ -208,7 +208,7 @@ } combParam.setRequestTime(DateUtils.convert(now)); - new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); +// new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); if (!locMastService.updateById(locMast)) { // exceptionHandle("鍏ㄦ澘鍏ュ簱 ===>> 淇敼搴撲綅鐘舵�佸け璐ワ紱[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); @@ -369,8 +369,6 @@ locMast.setModiTime(now); LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo())); - - boolean sign =false; if (locMast.getLocType1().equals(sourceLoc.getLocType1())){ locMast.setPackStatus(packStatus); @@ -400,67 +398,33 @@ //娴嬭瘯搴撲綅杞潤缃簱浣嶅拰NG搴撲綅 if (locMast.getLocType1().equals((short)4)){ locMast.setPackStatus(4); //4:NG - //鍏ュ簱鏍囪 - packQualifiedService.insertPackQualified(true,new Date(),locDetl.getMatnr()); - //鍑哄簱鏍囪 - packQualifiedService.insertPackQualified(false,new Date(),locDetl.getMatnr()); +// //鍏ュ簱鏍囪 +// packQualifiedService.insertPackQualified(true,new Date(),locDetl.getMatnr()); +// //鍑哄簱鏍囪 +// packQualifiedService.insertPackQualified(false,new Date(),locDetl.getMatnr()); }else { locMast.setPackStatus(5); //5:闈欑疆涓� - //鍏ュ簱鏍囪 - packQualifiedService.insertPackQualified(true,new Date(),locDetl.getMatnr()); - //鍑哄簱鏍囪 - packQualifiedService.insertPackQualified(false,new Date(),locDetl.getMatnr()); +// //鍏ュ簱鏍囪 +// packQualifiedService.insertPackQualified(true,new Date(),locDetl.getMatnr()); +// //鍑哄簱鏍囪 +// packQualifiedService.insertPackQualified(false,new Date(),locDetl.getMatnr()); } - sign=true; TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>() .eq("loc_no",sourceLoc.getLocNo()) .eq("barcode",locDetl.getMatnr()) - .eq("status",4) + .in("status",3,4) ); testMast.setStatus(5); testMast.setLocNo(locMast.getLocNo()); testMast.setModiTime(new Date()); - if (!testMastService.update(testMast,new EntityWrapper<TestMast>() - .eq("loc_no",sourceLoc.getLocNo()) - .eq("barcode",locDetl.getMatnr()) - .eq("status",4))){ + if (!testMastService.updateById(testMast)){ throw new CoolException("鏇存敼娴嬭瘯鐘舵�佸け璐�"); } - } if (!locMastService.updateById(locMast)) { // exceptionHandle("搴撲綅绉昏浆 ===>> 淇敼鐩爣搴撲綅鐘舵�佸け璐ワ紱[workNo={0}],[locNo={1}]", wrkMast.getWrkNo(), wrkMast.getLocNo()); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return FAIL.setMsg("搴撲綅绉昏浆 ===>> 淇敼鐩爣搴撲綅鐘舵�佸け璐�; [workNo=" + wrkMast.getWrkNo() + "],[locNo=" + wrkMast.getLocNo() + "]"); - } - - if (locMast.getCrnNo()==1 && sign){ - //7.娴嬭瘯搴撲綅杞潤缃簱浣嶅嚭搴撳畬鎴愪笂鎶� - CombParam combParam = new CombParam(); - combParam.setPackNo(locDetl.getMatnr()); - combParam.setLocNo(wrkMast.getSourceLocNo()); - combParam.setStepSts(7); - if (locMast.getPackStatus()==4){ - combParam.setPackSts(2); - }else if (locMast.getPackStatus()==5){ - combParam.setPackSts(1); - } - combParam.setRequestTime(DateUtils.convert(now)); - new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); - //5.娴嬭瘯搴撲綅杞潤缃簱浣嶅叆搴撳畬鎴愪笂鎶� - combParam.setPackNo(locDetl.getMatnr()); - combParam.setLocNo(wrkMast.getLocNo()); - if (locMast.getPackStatus()==4){ - combParam.setPackSts(2); - combParam.setStepSts(5); - }else if (locMast.getPackStatus()==5){ - combParam.setPackSts(1); - combParam.setStepSts(8); - }else { - combParam.setPackSts(0); - } - combParam.setRequestTime(DateUtils.convert(now)); - new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); } break; default: @@ -570,7 +534,7 @@ combParam.setStepSts(6);//闈欑疆搴撳嚭搴撳畬鎴� } combParam.setRequestTime(DateUtils.convert(now)); - new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); +// new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); } } break; diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java index 4eab272..6437d04 100644 --- a/src/main/java/com/zy/common/service/CommonService.java +++ b/src/main/java/com/zy/common/service/CommonService.java @@ -7,6 +7,7 @@ import com.core.exception.CoolException; import com.zy.asrs.entity.*; import com.zy.asrs.service.*; +import com.zy.asrs.utils.Utils; import com.zy.common.entity.Parameter; import com.zy.common.model.LocTypeDto; import com.zy.common.model.StartupDto; @@ -161,6 +162,47 @@ } } } + // 闈犺繎鎽嗘斁瑙勫垯 --- 绌烘墭 + if (staDescId == 10) { + List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D").ge("row1", sRow).le("row1", eRow)); + if (locMasts.size() > 0) { + for (LocMast loc : locMasts) { + if (Utils.isShallowLoc(slaveProperties, loc.getLocNo())) { + continue; + } + String shallowLocNo = Utils.getShallowLoc(slaveProperties, loc.getLocNo()); + // 妫�娴嬬洰鏍囧簱浣嶆槸鍚︿负绌哄簱浣� + LocMast shallowLoc = locMastService.selectById(shallowLocNo); + if (shallowLoc != null && shallowLoc.getLocSts().equals("O")) { + if (shallowLoc.getLocType1()<locTypeDto.getLocType1()){ + continue; + } + if (basCrnpService.checkSiteError(shallowLoc.getCrnNo(), true)) { + locMast = shallowLoc; + crnNo = locMast.getCrnNo(); + break; + } + } + } + } + if (Cools.isEmpty(locMast)) { + List<LocMast> locMastList3 = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("loc_sts", "O") + .eq("row1",3) + .notIn("loc_type1",1)); + if (!Cools.isEmpty(locMastList3)) { + locMast = locMastList3.get(0); + }else { + List<LocMast> locMastList1 = locMastService.selectList(new EntityWrapper<LocMast>() + .eq("loc_sts", "O") + .eq("row1",1) + .notIn("loc_type1",1)); + if (!Cools.isEmpty(locMastList1)) { + locMast = locMastList1.get(0); + } + } + } + } if (Cools.isEmpty(locMast)){ locMast = locMastService.queryFreeLocMast(1, locTypeDto.getLocType1()); diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java index cb82577..3d85ce9 100644 --- a/src/main/java/com/zy/common/web/WcsController.java +++ b/src/main/java/com/zy/common/web/WcsController.java @@ -68,9 +68,7 @@ if (Cools.isEmpty(param.getSourceStaNo())) { return R.error("婧愮珯缂栧彿涓嶈兘涓虹┖"); } - if (Cools.isEmpty(param.getBarcode())) { - return R.error("鎵樼洏鐮佷笉鑳戒负绌�"); - } + Date now = new Date(); List<WaitPakin> waitPakins = null; if (param.getIoType() == 1) { @@ -102,7 +100,6 @@ // 婧愮珯鐐圭姸鎬佹娴� BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getSourceStaNo(), false); sourceStaNo.setLocType1(param.getLocType1()); -// sourceStaNo.setLocType1((short)1); LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); StartupDto dto = null; @@ -175,7 +172,8 @@ } TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>() - .eq("barcode", wrkDetl.getMatnr()));//pack鐮� + .eq("barcode", wrkDetl.getMatnr()) + .eq("user_id",wrkDetl.getZpallet()));//pack鐮� if (Cools.isEmpty(testMast)){ //鐢熸垚娴嬭瘯妗� testMast=new TestMast(); @@ -240,7 +238,7 @@ combParam.setPackSts(0); combParam.setStepSts(1); combParam.setRequestTime(DateUtils.convert(now)); - new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); +// new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); } } } else { diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index cf244ef..9486b42 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -56,10 +56,10 @@ wcs-slave: # 鍙屾繁 doubleDeep: true - # 鍙屾繁搴撲綅鎺掑彿 3,1,4 - doubleLocs: + # 鍙屾繁搴撲綅鎺掑彿 + doubleLocs: 3 # 涓�涓爢鍨涙満璐熻矗鐨勮揣鏋舵帓鏁� - groupCount: 2 + groupCount: 3 # MES绯荤粺 mes: diff --git a/src/main/webapp/views/testMast/testMast.html b/src/main/webapp/views/testMast/testMast.html index 23db033..ce36ade 100644 --- a/src/main/webapp/views/testMast/testMast.html +++ b/src/main/webapp/views/testMast/testMast.html @@ -101,11 +101,11 @@ <label class="layui-form-label">鐘舵��: </label> <div class="layui-input-block"> <select name="status"> - <option value="0">寰呯敵璇�</option> - <option value="1">鐢宠涓�</option> - <option value="2">宸插鏍�</option> - <option value="3">娴嬭瘯涓�</option> - <option value="4">瀹屾垚</option> + <option value="0">绌哄簱浣�</option> + <option value="1">寰呮祴</option> + <option value="2">娴嬭瘯涓�</option> + <option value="3">瀹屾垚</option> + <option value="4">澶辫触</option> <option value="5">宸茬Щ搴�</option> <option value="6">鐏</option> </select> -- Gitblit v1.9.1