|
|
@ -339,16 +339,31 @@ public class PgdSljhController {
|
|
|
|
@PostMapping("kcAdnSlBd1")
|
|
|
|
@PostMapping("kcAdnSlBd1")
|
|
|
|
@ResponseBody
|
|
|
|
@ResponseBody
|
|
|
|
public ResultBean kcAdnSlBd1(HttpServletRequest req, @RequestBody List<SlKc> slKcs) throws Exception, CustomException {
|
|
|
|
public ResultBean kcAdnSlBd1(HttpServletRequest req, @RequestBody List<SlKc> slKcs) throws Exception, CustomException {
|
|
|
|
|
|
|
|
// 核对 没问题 有 yd id 说明核对 成功进行反写
|
|
|
|
|
|
|
|
List<DmYdjh> ups = new ArrayList<>();
|
|
|
|
|
|
|
|
List<ImCkwpkwp> ups1 = new ArrayList<>();
|
|
|
|
|
|
|
|
List<DmCbxxp> czList = dmCbxxpService.list();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<DmCbxxp> czList = dmCbxxpService.list();
|
|
|
|
|
|
|
|
List<DmYdjh>ydupList=new ArrayList<>();
|
|
|
|
|
|
|
|
List<DmYdjh>ydadList=new ArrayList<>();
|
|
|
|
|
|
|
|
List<SlKc>ckupList=new ArrayList<>();
|
|
|
|
|
|
|
|
// 进行比对
|
|
|
|
|
|
|
|
for(SlKc slKc :slKcs){
|
|
|
|
for(SlKc slKc :slKcs){
|
|
|
|
// 获取船级社
|
|
|
|
ImCkwpkwp imCkwpkwp =new ImCkwpkwp();
|
|
|
|
|
|
|
|
imCkwpkwp.setCkh(slKc.getCKH());
|
|
|
|
|
|
|
|
imCkwpkwp.setWph(slKc.getWPH());
|
|
|
|
|
|
|
|
imCkwpkwp.setKwh(slKc.getKWH());
|
|
|
|
|
|
|
|
imCkwpkwp.setNbsbm(slKc.getNBSBM());
|
|
|
|
|
|
|
|
imCkwpkwp.setYdid(slKc.getYdid());
|
|
|
|
|
|
|
|
imCkwpkwp.setZych(slKc.getZYCH());
|
|
|
|
|
|
|
|
imCkwpkwp.setZypl(slKc.getZYPL());
|
|
|
|
|
|
|
|
imCkwpkwp.setZylx(slKc.getZYLX());
|
|
|
|
|
|
|
|
imCkwpkwp.setSldw(slKc.getSLDW());
|
|
|
|
|
|
|
|
imCkwpkwp.setPwwz(slKc.getPwwz());
|
|
|
|
|
|
|
|
imCkwpkwp.setBz(slKc.getBZ());
|
|
|
|
|
|
|
|
imCkwpkwp.setDhh(slKc.getDHH());
|
|
|
|
|
|
|
|
imCkwpkwp.setDcTh(slKc.getDCTH());
|
|
|
|
|
|
|
|
imCkwpkwp.setYdid(slKc.getYdid());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(StringUtils.isBlank(slKc.getYdid())){
|
|
|
|
|
|
|
|
// 手工进行 批量了
|
|
|
|
String cjs="";
|
|
|
|
String cjs="";
|
|
|
|
DmCbxxp dmCzjbb = czList.stream().filter(fst -> fst.getCbbm().equalsIgnoreCase(slKc.getDCCH())).findFirst().orElse(null);
|
|
|
|
DmCbxxp dmCzjbb = czList.stream().filter(fst -> fst.getCbbm().equalsIgnoreCase(slKc.getDCCH())).findFirst().orElse(null);
|
|
|
|
|
|
|
|
|
|
|
@ -371,100 +386,166 @@ public class PgdSljhController {
|
|
|
|
)
|
|
|
|
)
|
|
|
|
.findFirst()
|
|
|
|
.findFirst()
|
|
|
|
.orElse(null);
|
|
|
|
.orElse(null);
|
|
|
|
|
|
|
|
|
|
|
|
if(null!=dmYdjh){
|
|
|
|
if(null!=dmYdjh){
|
|
|
|
System.out.println("slKc = " + slKc);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
System.out.println(slKc.getCFCS1()+dmYdjh.getId());
|
|
|
|
|
|
|
|
dmYdjh.setSlkcdw(slKc.getKWH());
|
|
|
|
dmYdjh.setSlkcdw(slKc.getKWH());
|
|
|
|
dmYdjh.setSlcs(slKc.getCFCS1());
|
|
|
|
dmYdjh.setSlcs(slKc.getCFCS1());
|
|
|
|
dmYdjh.setSlxhth(slKc.getGCDDH());
|
|
|
|
dmYdjh.setSlxhth(slKc.getGCDDH());
|
|
|
|
dmYdjh.setSlhth(slKc.getDcFd());
|
|
|
|
dmYdjh.setSlhth(slKc.getDcFd());
|
|
|
|
dmYdjh.setSlwlh(slKc.getWPH());
|
|
|
|
dmYdjh.setSlwlh(slKc.getWPH());
|
|
|
|
dmYdjh.setKcch(slKc.getDCCH());
|
|
|
|
dmYdjh.setKcch(slKc.getDCCH());
|
|
|
|
ydupList.add(dmYdjh);
|
|
|
|
imCkwpkwp.setZylx(getLx(dmYdjh.getLqlb(), dmYdjh.getZl()));
|
|
|
|
|
|
|
|
imCkwpkwp.setSldw(dmYdjh.getKw());
|
|
|
|
|
|
|
|
imCkwpkwp.setDhh(dmYdjh.getSljhrq());
|
|
|
|
slKc.setZYLX(getLx(dmYdjh.getLqlb(), dmYdjh.getZl()));
|
|
|
|
|
|
|
|
slKc.setSLDW(dmYdjh.getKw());
|
|
|
|
|
|
|
|
slKc.setDHH(dmYdjh.getSljhrq());
|
|
|
|
|
|
|
|
//slKc.setPwwz(dmYdjh.getKw());
|
|
|
|
//slKc.setPwwz(dmYdjh.getKw());
|
|
|
|
slKc.setYdid(dmYdjh.getId());
|
|
|
|
imCkwpkwp.setYdid(dmYdjh.getId());
|
|
|
|
slKc.setDCTH(dmYdjh.getTzbh());
|
|
|
|
imCkwpkwp.setDcTh(dmYdjh.getTzbh());
|
|
|
|
ydjhs.remove(dmYdjh); // 从列表中移除找到的元素
|
|
|
|
ydjhs.remove(dmYdjh); // 从列表中移除找到的元素
|
|
|
|
ckupList.add(slKc);
|
|
|
|
ups.add(dmYdjh);
|
|
|
|
}else{
|
|
|
|
}
|
|
|
|
// 等于nul应该就是没有
|
|
|
|
|
|
|
|
// 新增月度计划
|
|
|
|
|
|
|
|
// 根据 月度计划新增一条信息。
|
|
|
|
|
|
|
|
// 获取
|
|
|
|
|
|
|
|
DmYdjh ydjhMin = dmYdjhMapper.getYdjhMin(slKc.getZYCH(), slKc.getZYPL());
|
|
|
|
|
|
|
|
if(null!=ydjhMin){
|
|
|
|
|
|
|
|
DmYdjh ydjh =new DmYdjh();
|
|
|
|
|
|
|
|
ydjh.setId(IdWorker.get32UUID());
|
|
|
|
|
|
|
|
ydjh.setDcCh(slKc.getZYCH());
|
|
|
|
|
|
|
|
ydjh.setDcPl(slKc.getZYPL());
|
|
|
|
|
|
|
|
ydjh.setWpgg(slKc.getWPGG());
|
|
|
|
|
|
|
|
ydjh.setWpxh(slKc.getWPXH());
|
|
|
|
|
|
|
|
ydjh.setSlrq(ydjhMin.getSlrq());
|
|
|
|
|
|
|
|
ydjh.setPwrq(ydjhMin.getPwrq());
|
|
|
|
|
|
|
|
ydjh.setHxrq(ydjhMin.getHxrq());
|
|
|
|
|
|
|
|
ydjh.setQgrq(ydjhMin.getQgrq());
|
|
|
|
|
|
|
|
ydjh.setDmrq(ydjhMin.getDmrq());
|
|
|
|
|
|
|
|
ydjh.setQjgrq(ydjhMin.getQgjhrq());
|
|
|
|
|
|
|
|
ydjh.setJssj(ydjhMin.getJssj());
|
|
|
|
|
|
|
|
ydjh.setSljhrq(ydjhMin.getSljhrq());
|
|
|
|
|
|
|
|
ydjh.setPwjhrq(ydjhMin.getPwjhrq());
|
|
|
|
|
|
|
|
ydjh.setLljhrq(ydjhMin.getLljhrq());
|
|
|
|
|
|
|
|
ydjh.setHxjhrq(ydjhMin.getHxjhrq());
|
|
|
|
|
|
|
|
ydjh.setQgjhrq(ydjhMin.getQgjhrq());
|
|
|
|
|
|
|
|
ydjh.setKw(extractNumber(slKc.getDcFd()));
|
|
|
|
|
|
|
|
ydjh.setCkbzrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm"));
|
|
|
|
|
|
|
|
ydjh.setCkbzry((String) req.getAttribute("yhms"));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//------
|
|
|
|
|
|
|
|
ydjh.setSlkcdw(slKc.getKWH());
|
|
|
|
|
|
|
|
ydjh.setSlcs(slKc.getCFCS1());
|
|
|
|
|
|
|
|
ydjh.setSlxhth(slKc.getGCDDH());
|
|
|
|
|
|
|
|
ydjh.setSlhth(slKc.getDcFd());
|
|
|
|
|
|
|
|
ydjh.setSlwlh(slKc.getWPH());
|
|
|
|
|
|
|
|
ydjh.setKcch(slKc.getDCCH());
|
|
|
|
|
|
|
|
slKc.setYdid(ydjh.getId());
|
|
|
|
|
|
|
|
//ydjhs.remove(dmYdjh); // 从列表中移除找到的元素
|
|
|
|
|
|
|
|
ckupList.add(slKc);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ydadList.add(ydjh);
|
|
|
|
|
|
|
|
//-----
|
|
|
|
|
|
|
|
}else{
|
|
|
|
}else{
|
|
|
|
throw new ServiceException(10001,slKc.getZYCH()+"船只"+slKc.getZYPL()+"未进行排产");
|
|
|
|
DmYdjh dmYdjh =new DmYdjh();
|
|
|
|
|
|
|
|
dmYdjh.setSlkcdw(slKc.getKWH());
|
|
|
|
|
|
|
|
dmYdjh.setSlcs(slKc.getCFCS1());
|
|
|
|
|
|
|
|
dmYdjh.setSlxhth(slKc.getGCDDH());
|
|
|
|
|
|
|
|
dmYdjh.setSlhth(slKc.getDcFd());
|
|
|
|
|
|
|
|
dmYdjh.setSlwlh(slKc.getWPH());
|
|
|
|
|
|
|
|
dmYdjh.setKcch(slKc.getDCCH());
|
|
|
|
|
|
|
|
dmYdjh.setId(slKc.getYdid());
|
|
|
|
|
|
|
|
ups.add(dmYdjh);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
ups1.add(imCkwpkwp);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dmYdjhService.updateBatchById(ups);
|
|
|
|
|
|
|
|
imCkwpkwpService.updateBatchByMultiId(ups1);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
// List<DmCbxxp> czList = dmCbxxpService.list();
|
|
|
|
dmYdjhService.updateBatchById(ydupList);
|
|
|
|
// List<DmYdjh>ydupList=new ArrayList<>();
|
|
|
|
dmYdjhService.saveBatch(ydadList);
|
|
|
|
// List<DmYdjh>ydadList=new ArrayList<>();
|
|
|
|
for(SlKc slKc :slKcs){
|
|
|
|
// List<SlKc>ckupList=new ArrayList<>();
|
|
|
|
ImCkwpkwp imCkwpkwp =new ImCkwpkwp();
|
|
|
|
// // 进行比对
|
|
|
|
imCkwpkwp.setCkh(slKc.getCKH());
|
|
|
|
// for(SlKc slKc :slKcs){
|
|
|
|
imCkwpkwp.setWph(slKc.getWPH());
|
|
|
|
// // 获取船级社
|
|
|
|
imCkwpkwp.setKwh(slKc.getKWH());
|
|
|
|
// String cjs="";
|
|
|
|
imCkwpkwp.setNbsbm(slKc.getNBSBM());
|
|
|
|
// DmCbxxp dmCzjbb = czList.stream().filter(fst -> fst.getCbbm().equalsIgnoreCase(slKc.getDCCH())).findFirst().orElse(null);
|
|
|
|
imCkwpkwp.setYdid(slKc.getYdid());
|
|
|
|
//
|
|
|
|
imCkwpkwp.setZych(slKc.getZYCH());
|
|
|
|
// if(null!=dmCzjbb){
|
|
|
|
imCkwpkwp.setZypl(slKc.getZYPL());
|
|
|
|
// cjs=dmCzjbb.getCjs();
|
|
|
|
imCkwpkwp.setZylx(slKc.getZYLX());
|
|
|
|
// }
|
|
|
|
imCkwpkwp.setSldw(slKc.getSLDW());
|
|
|
|
// String cjs1=cjs;
|
|
|
|
imCkwpkwp.setPwwz(slKc.getPwwz());
|
|
|
|
// // 根据需求批量 船号 去 查询
|
|
|
|
imCkwpkwp.setBz(slKc.getBZ());
|
|
|
|
// List<DmYdjh> ydjhs = dmYdjhService.list(new QueryWrapper<DmYdjh>().eq("dc_ch", slKc.getZYCH() ).eq("isnull(ZT,'')","2")
|
|
|
|
imCkwpkwp.setDhh(slKc.getDHH());
|
|
|
|
// .eq("dc_pl",slKc.getZYPL())
|
|
|
|
imCkwpkwp.setDcTh(slKc.getDCTH());
|
|
|
|
// );
|
|
|
|
imCkwpkwp.setYdid(slKc.getYdid());
|
|
|
|
// DmYdjh dmYdjh = ydjhs.stream()
|
|
|
|
imCkwpkwpService.updateByMultiId(imCkwpkwp);
|
|
|
|
// .filter(fst -> fst.getDcCh().equalsIgnoreCase(slKc.getZYCH())
|
|
|
|
}
|
|
|
|
// &&StringUtils.isNotBlank(fst.getWpgg())
|
|
|
|
|
|
|
|
// && StringUtils.isNotBlank(fst.getWpxh())
|
|
|
|
|
|
|
|
// && fst.getWpgg().equalsIgnoreCase(slKc.getWPGG())
|
|
|
|
|
|
|
|
// && (fst.getWpxh().equalsIgnoreCase(slKc.getWPXH())
|
|
|
|
|
|
|
|
// || (cjs1 + fst.getWpxh()).equalsIgnoreCase(slKc.getWPXH()))
|
|
|
|
|
|
|
|
// && fst.getDcPl().equalsIgnoreCase(slKc.getZYPL())
|
|
|
|
|
|
|
|
// )
|
|
|
|
|
|
|
|
// .findFirst()
|
|
|
|
|
|
|
|
// .orElse(null);
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
// if(null!=dmYdjh){
|
|
|
|
|
|
|
|
// System.out.println("slKc = " + slKc);
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
// System.out.println(slKc.getCFCS1()+dmYdjh.getId());
|
|
|
|
|
|
|
|
// dmYdjh.setSlkcdw(slKc.getKWH());
|
|
|
|
|
|
|
|
// dmYdjh.setSlcs(slKc.getCFCS1());
|
|
|
|
|
|
|
|
// dmYdjh.setSlxhth(slKc.getGCDDH());
|
|
|
|
|
|
|
|
// dmYdjh.setSlhth(slKc.getDcFd());
|
|
|
|
|
|
|
|
// dmYdjh.setSlwlh(slKc.getWPH());
|
|
|
|
|
|
|
|
// dmYdjh.setKcch(slKc.getDCCH());
|
|
|
|
|
|
|
|
// ydupList.add(dmYdjh);
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
// slKc.setZYLX(getLx(dmYdjh.getLqlb(), dmYdjh.getZl()));
|
|
|
|
|
|
|
|
// slKc.setSLDW(dmYdjh.getKw());
|
|
|
|
|
|
|
|
// slKc.setDHH(dmYdjh.getSljhrq());
|
|
|
|
|
|
|
|
// //slKc.setPwwz(dmYdjh.getKw());
|
|
|
|
|
|
|
|
// slKc.setYdid(dmYdjh.getId());
|
|
|
|
|
|
|
|
// slKc.setDCTH(dmYdjh.getTzbh());
|
|
|
|
|
|
|
|
// ydjhs.remove(dmYdjh); // 从列表中移除找到的元素
|
|
|
|
|
|
|
|
// ckupList.add(slKc);
|
|
|
|
|
|
|
|
// }else{
|
|
|
|
|
|
|
|
// // 等于nul应该就是没有
|
|
|
|
|
|
|
|
// // 新增月度计划
|
|
|
|
|
|
|
|
// // 根据 月度计划新增一条信息。
|
|
|
|
|
|
|
|
// // 获取
|
|
|
|
|
|
|
|
// DmYdjh ydjhMin = dmYdjhMapper.getYdjhMin(slKc.getZYCH(), slKc.getZYPL());
|
|
|
|
|
|
|
|
// if(null!=ydjhMin){
|
|
|
|
|
|
|
|
// DmYdjh ydjh =new DmYdjh();
|
|
|
|
|
|
|
|
// ydjh.setId(IdWorker.get32UUID());
|
|
|
|
|
|
|
|
// ydjh.setDcCh(slKc.getZYCH());
|
|
|
|
|
|
|
|
// ydjh.setDcPl(slKc.getZYPL());
|
|
|
|
|
|
|
|
// ydjh.setLx("B");
|
|
|
|
|
|
|
|
// ydjh.setWpgg(slKc.getWPGG());
|
|
|
|
|
|
|
|
// ydjh.setWpxh(slKc.getWPXH());
|
|
|
|
|
|
|
|
// ydjh.setSlrq(ydjhMin.getSlrq());
|
|
|
|
|
|
|
|
// ydjh.setPwrq(ydjhMin.getPwrq());
|
|
|
|
|
|
|
|
// ydjh.setHxrq(ydjhMin.getHxrq());
|
|
|
|
|
|
|
|
// ydjh.setQgrq(ydjhMin.getQgrq());
|
|
|
|
|
|
|
|
// ydjh.setDmrq(ydjhMin.getDmrq());
|
|
|
|
|
|
|
|
// ydjh.setQjgrq(ydjhMin.getQgjhrq());
|
|
|
|
|
|
|
|
// ydjh.setJssj(ydjhMin.getJssj());
|
|
|
|
|
|
|
|
// ydjh.setSljhrq(ydjhMin.getSljhrq());
|
|
|
|
|
|
|
|
// ydjh.setPwjhrq(ydjhMin.getPwjhrq());
|
|
|
|
|
|
|
|
// ydjh.setLljhrq(ydjhMin.getLljhrq());
|
|
|
|
|
|
|
|
// ydjh.setHxjhrq(ydjhMin.getHxjhrq());
|
|
|
|
|
|
|
|
// ydjh.setQgjhrq(ydjhMin.getQgjhrq());
|
|
|
|
|
|
|
|
// ydjh.setKw(extractNumber(slKc.getDcFd()));
|
|
|
|
|
|
|
|
// ydjh.setCkbzrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm"));
|
|
|
|
|
|
|
|
// ydjh.setCkbzry((String) req.getAttribute("yhms"));
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
// //------
|
|
|
|
|
|
|
|
// ydjh.setSlkcdw(slKc.getKWH());
|
|
|
|
|
|
|
|
// ydjh.setSlcs(slKc.getCFCS1());
|
|
|
|
|
|
|
|
// ydjh.setSlxhth(slKc.getGCDDH());
|
|
|
|
|
|
|
|
// ydjh.setSlhth(slKc.getDcFd());
|
|
|
|
|
|
|
|
// ydjh.setSlwlh(slKc.getWPH());
|
|
|
|
|
|
|
|
// ydjh.setKcch(slKc.getDCCH());
|
|
|
|
|
|
|
|
// slKc.setYdid(ydjh.getId());
|
|
|
|
|
|
|
|
// //ydjhs.remove(dmYdjh); // 从列表中移除找到的元素
|
|
|
|
|
|
|
|
// ckupList.add(slKc);
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
// ydadList.add(ydjh);
|
|
|
|
|
|
|
|
// //-----
|
|
|
|
|
|
|
|
// }else{
|
|
|
|
|
|
|
|
// throw new ServiceException(10001,slKc.getZYCH()+"船只"+slKc.getZYPL()+"未进行排产");
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
//
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// dmYdjhService.updateBatchById(ydupList);
|
|
|
|
|
|
|
|
// dmYdjhService.saveBatch(ydadList);
|
|
|
|
|
|
|
|
// for(SlKc slKc :slKcs){
|
|
|
|
|
|
|
|
// ImCkwpkwp imCkwpkwp =new ImCkwpkwp();
|
|
|
|
|
|
|
|
// imCkwpkwp.setCkh(slKc.getCKH());
|
|
|
|
|
|
|
|
// imCkwpkwp.setWph(slKc.getWPH());
|
|
|
|
|
|
|
|
// imCkwpkwp.setKwh(slKc.getKWH());
|
|
|
|
|
|
|
|
// imCkwpkwp.setNbsbm(slKc.getNBSBM());
|
|
|
|
|
|
|
|
// imCkwpkwp.setYdid(slKc.getYdid());
|
|
|
|
|
|
|
|
// imCkwpkwp.setZych(slKc.getZYCH());
|
|
|
|
|
|
|
|
// imCkwpkwp.setZypl(slKc.getZYPL());
|
|
|
|
|
|
|
|
// imCkwpkwp.setZylx(slKc.getZYLX());
|
|
|
|
|
|
|
|
// imCkwpkwp.setSldw(slKc.getSLDW());
|
|
|
|
|
|
|
|
// imCkwpkwp.setPwwz(slKc.getPwwz());
|
|
|
|
|
|
|
|
// imCkwpkwp.setBz(slKc.getBZ());
|
|
|
|
|
|
|
|
// imCkwpkwp.setDhh(slKc.getDHH());
|
|
|
|
|
|
|
|
// imCkwpkwp.setDcTh(slKc.getDCTH());
|
|
|
|
|
|
|
|
// imCkwpkwp.setYdid(slKc.getYdid());
|
|
|
|
|
|
|
|
// imCkwpkwpService.updateByMultiId(imCkwpkwp);
|
|
|
|
|
|
|
|
// }
|
|
|
|
return new ResultBean();
|
|
|
|
return new ResultBean();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public String extractNumber(String str) {
|
|
|
|
public String extractNumber(String str) {
|
|
|
|
Pattern pattern = Pattern.compile("-(\\d+)");
|
|
|
|
Pattern pattern = Pattern.compile("-(\\d+)");
|
|
|
|
Matcher matcher = pattern.matcher(str);
|
|
|
|
Matcher matcher = pattern.matcher(str);
|
|
|
|