diff --git a/common/pom.xml b/common/pom.xml index 4ce42ef7..6ccfa495 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -78,5 +78,9 @@ org.jsoup jsoup + + com.foreverwin.mesnac + meapi + \ No newline at end of file diff --git a/common/src/main/java/com/foreverwin/mesnac/common/service/CommonService.java b/common/src/main/java/com/foreverwin/mesnac/common/service/CommonService.java new file mode 100644 index 00000000..bb64da5a --- /dev/null +++ b/common/src/main/java/com/foreverwin/mesnac/common/service/CommonService.java @@ -0,0 +1,19 @@ +package com.foreverwin.mesnac.common.service; + +import com.foreverwin.mesnac.meapi.model.Operation; + +public interface CommonService { + /** + * 根据资源或工作中心查找车间 + * @param workCenterBo + * @return + */ + String getWorkShopBo(String workCenterBo); + + /** + * 根据sfc查所在工序 + * @param sfcBo + * @return + */ + Operation getOperationBySfcBo(String sfcBo); +} diff --git a/common/src/main/java/com/foreverwin/mesnac/common/service/impl/CommonServiceImpl.java b/common/src/main/java/com/foreverwin/mesnac/common/service/impl/CommonServiceImpl.java new file mode 100644 index 00000000..d910147d --- /dev/null +++ b/common/src/main/java/com/foreverwin/mesnac/common/service/impl/CommonServiceImpl.java @@ -0,0 +1,59 @@ +package com.foreverwin.mesnac.common.service.impl; + +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.foreverwin.mesnac.common.service.CommonService; +import com.foreverwin.mesnac.common.util.StringUtil; +import com.foreverwin.mesnac.meapi.mapper.OperationMapper; +import com.foreverwin.mesnac.meapi.model.Operation; +import com.foreverwin.mesnac.meapi.model.WorkCenter; +import com.foreverwin.mesnac.meapi.model.WorkCenterMember; +import com.foreverwin.mesnac.meapi.service.WorkCenterMemberService; +import com.foreverwin.mesnac.meapi.service.WorkCenterService; +import com.foreverwin.modular.core.exception.BusinessException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.i18n.LocaleContextHolder; + +import java.util.List; + +public class CommonServiceImpl implements CommonService { + @Autowired + private WorkCenterMemberService workCenterMemberService; + @Autowired + private WorkCenterService workCenterService; + @Autowired + private OperationMapper operationMapper; + + @Override + public String getWorkShopBo(String workCenterBo) { + if (StrUtil.isBlank(workCenterBo)) { + return null; + } + WorkCenterMember workCenterMember = new WorkCenterMember(); + workCenterMember.setWorkCenterOrResourceGbo(workCenterBo); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(workCenterMember); + List workCenterMembers = workCenterMemberService.list(queryWrapper); + if (workCenterMembers.size() == 0) { + return null; + } + if (workCenterMembers.size() > 1) { + throw BusinessException.build("资源或工作中心"+ StringUtil.trimHandle(workCenterBo) +"不能属于多个产线"); + } + workCenterMember = workCenterMembers.get(0); + if (workCenterMember != null) { + WorkCenter workCenter = workCenterService.getById(workCenterMember.getWorkCenterBo()); + if ("LEVEL4".equals(workCenter.getWcCategory())) { + return workCenter.getHandle(); + } else { + return getWorkShopBo(workCenter.getHandle()); + } + } + return null; + } + @Override + public Operation getOperationBySfcBo(String sfcBo) { + Operation operation = operationMapper.selectOperationBySfcBo(sfcBo, LocaleContextHolder.getLocale().getLanguage()); + return operation; + } +} diff --git a/common/src/main/java/com/foreverwin/mesnac/common/util/StringUtil.java b/common/src/main/java/com/foreverwin/mesnac/common/util/StringUtil.java index d4e2fa5c..4bcf1dfc 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/util/StringUtil.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/util/StringUtil.java @@ -49,6 +49,31 @@ public class StringUtil return str_builer.toString(); } + public static String trimHandle(String handle) { + if (handle == null || handle.trim().length() == 0) { + return null; + } + + String[] temp = handle.split(","); + if( temp.length < 2 ) { + return handle; + } + return temp[1]; + } + + public static String trimRevision(String handle) { + if (handle == null || handle.trim().length() == 0) { + return null; + } + + int index = handle.lastIndexOf(","); + if (index < 0) { + return null; + } + else { + return handle.substring(index + 1); + } + } public static String append(String str, String appender, int position) { diff --git a/meapi/pom.xml b/meapi/pom.xml index a3034421..26b3076f 100644 --- a/meapi/pom.xml +++ b/meapi/pom.xml @@ -28,10 +28,5 @@ com.foreverwin.modular modular-melib - - - com.foreverwin.mesnac - common - \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/WorkCenterController.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/WorkCenterController.java index cf773b6b..d4e21678 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/WorkCenterController.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/WorkCenterController.java @@ -24,7 +24,17 @@ public class WorkCenterController { @Autowired public WorkCenterService workCenterService; - + /** + * 查询车间 + * + * @return + */ + @ResponseBody + @GetMapping("/getWorkShopList") + public R getWorkShopList(){ + List result=workCenterService.getWorkShopList(); + return R.ok(result); + } /** * 查询所有数据 * diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/SfcDto.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/SfcDto.java new file mode 100644 index 00000000..407259e6 --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/SfcDto.java @@ -0,0 +1,25 @@ +package com.foreverwin.mesnac.meapi.dto; + +import com.foreverwin.mesnac.meapi.model.Sfc; + +public class SfcDto extends Sfc { + String resrce; + + String operation; + + public String getOperation() { + return operation; + } + + public void setOperation(String operation) { + this.operation = operation; + } + + public String getResrce() { + return resrce; + } + + public void setResrce(String resrce) { + this.resrce = resrce; + } +} diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/WorkCenterDto.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/WorkCenterDto.java new file mode 100644 index 00000000..e35e52e4 --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/WorkCenterDto.java @@ -0,0 +1,15 @@ +package com.foreverwin.mesnac.meapi.dto; + +import com.foreverwin.mesnac.meapi.model.WorkCenter; + +public class WorkCenterDto extends WorkCenter { + String resrce; + + public String getResrce() { + return resrce; + } + + public void setResrce(String resrce) { + this.resrce = resrce; + } +} diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/OperationMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/OperationMapper.java index 7311cf33..fd171b67 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/OperationMapper.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/OperationMapper.java @@ -20,4 +20,7 @@ import java.util.List; @Repository public interface OperationMapper extends BaseMapper { List selectPage(@Param("locale") String locale, IPage page, @Param("ew") Wrapper wrapper); + + Operation selectOperationBySfcBo(@Param("sfcBo") String sfcBo, @Param("locale") String locale); + } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/SfcMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/SfcMapper.java index 7bf17082..29d76ead 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/SfcMapper.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/SfcMapper.java @@ -4,6 +4,8 @@ import com.foreverwin.mesnac.meapi.model.Sfc; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springframework.stereotype.Repository; +import java.util.List; + /** *

* Mapper 接口 @@ -14,5 +16,8 @@ import org.springframework.stereotype.Repository; */ @Repository public interface SfcMapper extends BaseMapper { - + /** + * 获取资源上活动的sfc + */ + List getSfcListByResrceBO(String resrceBO); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/WorkCenterMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/WorkCenterMapper.java index 3458d210..da317365 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/WorkCenterMapper.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/WorkCenterMapper.java @@ -6,6 +6,8 @@ import com.foreverwin.mesnac.meapi.model.WorkCenter; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; +import java.util.List; + /** *

* Mapper 接口 @@ -17,4 +19,6 @@ import org.springframework.stereotype.Repository; @Repository public interface WorkCenterMapper extends BaseMapper { IPage workCenterlist(IPage page, @Param("site") String site, @Param("workCenter") String workCenter); + + List getWorkShopList(@Param("site")String site, @Param("locale")String locale); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/SfcService.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/SfcService.java index 9f741f78..7fec1cc5 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/SfcService.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/SfcService.java @@ -30,4 +30,9 @@ public interface SfcService extends IService { * 查询工单下生产批次 */ List getSfcListByShopOrderBo(String shopOrderBo); + + /** + * 获取资源上活动的sfc + */ + List getSfcListByResrceBO(String resrceBO); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/WorkCenterService.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/WorkCenterService.java index 9571219a..57c87ffc 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/WorkCenterService.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/WorkCenterService.java @@ -27,4 +27,6 @@ public interface WorkCenterService extends IService { List selectList(WorkCenter workCenter); IPage workCenterlist(IPage page,String workCenter); + + List getWorkShopList(); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/SfcServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/SfcServiceImpl.java index 5d1979d8..52e18561 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/SfcServiceImpl.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/SfcServiceImpl.java @@ -51,5 +51,11 @@ public class SfcServiceImpl extends ServiceImpl implements SfcSe return super.list(queryWrapper); } + @Override + public List getSfcListByResrceBO(String resrceBO) { + List sfc=sfcMapper.getSfcListByResrceBO(resrceBO); + return sfc; + } + } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/WorkCenterServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/WorkCenterServiceImpl.java index 107ef17a..43f65acb 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/WorkCenterServiceImpl.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/WorkCenterServiceImpl.java @@ -8,6 +8,7 @@ import com.foreverwin.mesnac.meapi.model.WorkCenter; import com.foreverwin.mesnac.meapi.mapper.WorkCenterMapper; import com.foreverwin.mesnac.meapi.service.WorkCenterService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.stereotype.Service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; @@ -48,4 +49,10 @@ public class WorkCenterServiceImpl extends ServiceImpl getWorkShopList() { + String site = CommonMethods.getSite(); + return workCenterMapper.getWorkShopList(site, LocaleContextHolder.getLocale().getLanguage()); + } } \ No newline at end of file diff --git a/meapi/src/main/resources/mapper/OperationMapper.xml b/meapi/src/main/resources/mapper/OperationMapper.xml index c618b267..5239aa4d 100644 --- a/meapi/src/main/resources/mapper/OperationMapper.xml +++ b/meapi/src/main/resources/mapper/OperationMapper.xml @@ -612,5 +612,12 @@ - + diff --git a/meapi/src/main/resources/mapper/SfcMapper.xml b/meapi/src/main/resources/mapper/SfcMapper.xml index 6549f53c..e765d0cf 100644 --- a/meapi/src/main/resources/mapper/SfcMapper.xml +++ b/meapi/src/main/resources/mapper/SfcMapper.xml @@ -622,5 +622,16 @@ - + diff --git a/meapi/src/main/resources/mapper/WorkCenterMapper.xml b/meapi/src/main/resources/mapper/WorkCenterMapper.xml index 91003317..3a7f9a50 100644 --- a/meapi/src/main/resources/mapper/WorkCenterMapper.xml +++ b/meapi/src/main/resources/mapper/WorkCenterMapper.xml @@ -480,5 +480,10 @@ - + diff --git a/production/pom.xml b/production/pom.xml index 63c6148c..348de5f4 100644 --- a/production/pom.xml +++ b/production/pom.xml @@ -18,6 +18,29 @@ - + + com.foreverwin.mesnac + common + + + com.foreverwin.mesnac + meapi + + + + mysql + mysql-connector-java + 8.0.15 + + + + org.apache.httpcomponents + httpclient + 4.5.13 + + + org.apache.httpcomponents + httpclient + \ No newline at end of file