Leon 4 years ago
commit 318b246882

@ -269,4 +269,21 @@ public class AbnormalBillController {
return R.ok(abnormalBillService.findAllByAbnormalNo(abnormalBill));
}
@GetMapping("/resProcessing")
public R resProcessing(AbnormalBill abnormalBill){
abnormalBillService.resProcessing(abnormalBill);
return R.ok();
}
@GetMapping("programConfirm")
public R programConfirm(AbnormalBill abnormalBill,AbnormalBillDispose abnormalBillDispose){
abnormalBillService.programConfirm(abnormalBill,abnormalBillDispose);
return R.ok();
}
@GetMapping("dutyConfirm")
public R dutyConfirm(AbnormalBill abnormalBill,AbnormalBillDispose abnormalBillDispose){
abnormalBillService.dutyConfirm(abnormalBill,abnormalBillDispose);
return R.ok();
}
}

@ -2,8 +2,6 @@ package com.foreverwin.mesnac.anomaly.dto;
import com.foreverwin.mesnac.anomaly.model.AbnormalBillDispose;
import java.util.List;
/**
* @Description
* @Author zhaojiawei
@ -84,7 +82,7 @@ public class AbnormalBillDisposeDto extends AbnormalBillDispose {
/**
*
*/
private List<String> ncCode;
private String ncCode;
/**
*
@ -141,6 +139,11 @@ public class AbnormalBillDisposeDto extends AbnormalBillDispose {
*/
private String pbPhotoShop;
/**
* 线
*/
private String router;
public String getAbnormalNo() {
return abnormalNo;
}
@ -253,11 +256,11 @@ public class AbnormalBillDisposeDto extends AbnormalBillDispose {
this.map = map;
}
public List<String> getNcCode() {
public String getNcCode() {
return ncCode;
}
public void setNcCode(List<String> ncCode) {
public void setNcCode(String ncCode) {
this.ncCode = ncCode;
}
@ -349,5 +352,13 @@ public class AbnormalBillDisposeDto extends AbnormalBillDispose {
this.pbPhotoShop = pbPhotoShop;
}
public String getRouter() {
return router;
}
public void setRouter(String router) {
this.router = router;
}
}

@ -63,4 +63,22 @@ public interface AbnormalBillService extends IService<AbnormalBill> {
*/
AbnormalBillDisposeDto findAllByAbnormalNo(AbnormalBill abnormalBill);
/**
*
* @param abnormalBill
*/
void resProcessing(AbnormalBill abnormalBill);
/**
*
* @param abnormalBill
*/
void programConfirm(AbnormalBill abnormalBill,AbnormalBillDispose abnormalBillDispose);
/**
*
* @param abnormalBill
*/
void dutyConfirm(AbnormalBill abnormalBill,AbnormalBillDispose abnormalBillDispose);
}

@ -12,11 +12,8 @@ import com.foreverwin.mesnac.anomaly.service.*;
import com.foreverwin.mesnac.common.enums.HandleEnum;
import com.foreverwin.mesnac.common.helper.NextNumberHelper;
import com.foreverwin.mesnac.common.util.StringUtil;
import com.foreverwin.mesnac.meapi.mapper.NcGroupMapper;
import com.foreverwin.mesnac.meapi.mapper.ResrceMapper;
import com.foreverwin.mesnac.meapi.model.NcCode;
import com.foreverwin.mesnac.meapi.model.NcGroup;
import com.foreverwin.mesnac.meapi.model.Resrce;
import com.foreverwin.mesnac.meapi.mapper.*;
import com.foreverwin.mesnac.meapi.model.*;
import com.foreverwin.mesnac.meapi.service.NcCodeService;
import com.foreverwin.mesnac.meapi.service.NwaUserService;
import com.foreverwin.modular.core.exception.BusinessException;
@ -29,6 +26,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
@ -79,6 +77,15 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
@Autowired
private AbnormalBillDisposeMapper abnormalBillDisposeMapper;
@Autowired
private RouterMapper routerMapper;
@Autowired
private ShopOrderMapper shopOrderMapper;
@Autowired
private NwaUserMapper nwaUserMapper;
@Override
public IPage<AbnormalBill> selectPage(FrontPage<AbnormalBill> frontPage, AbnormalBill abnormalBill) {
QueryWrapper<AbnormalBill> queryWrapper = new QueryWrapper<>();
@ -191,6 +198,68 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
}
@Override
public void resProcessing(AbnormalBill abnormalBill) {
String site = CommonMethods.getSite();
String user = CommonMethods.getUser();
LocalDateTime now = LocalDateTime.now();
abnormalBill.setSite(site);
abnormalBill.setResponseUser(user);
abnormalBill.setResponseDateTime(now);
abnormalBill.setStatus("X");
this.saveOrUpdate(abnormalBill);
}
@Override
public void programConfirm(AbnormalBill abnormalBill,AbnormalBillDispose abnormalBillDispose) {
String site = CommonMethods.getSite();
String user = CommonMethods.getUser();
LocalDateTime now = LocalDateTime.now();
abnormalBillDispose.setHandle(HandleEnum.Z_ABNORMAL_BILL_DISPOSE.getHandle(site,abnormalBill.getAbnormalNo()));
//判断该返修工艺是否正确
Router routerBo = routerMapper.selectById(abnormalBillDispose.getRouterBo());
if(routerBo == null){
throw BusinessException.build("该返修工艺不存在");
}
//判断返修工单是否正确
ShopOrder shopOrder = shopOrderMapper.selectById(HandleEnum.SHOP_ORDER.getHandle(site, abnormalBillDispose.getResolveShopOrder()));
if(shopOrder == null){
throw BusinessException.build("该返修工单不存在");
}
//发送用户
String[] split = abnormalBillDispose.getResolveSendUser().split(",");
List<String> strings = Arrays.asList(split);
int length = nwaUserMapper.checkUser(site, strings);
if(length != strings.size()){
throw BusinessException.build("发送用户填报错误");
}
//设置解决方案的处理时间和处理人
abnormalBillDispose.setResolveDateTime(now);
abnormalBillDispose.setResolveUser(user);
abnormalBill.setStatus("F");
abnormalBillDisposeService.saveOrUpdate(abnormalBillDispose);
this.saveOrUpdate(abnormalBill);
}
@Override
public void dutyConfirm(AbnormalBill abnormalBill, AbnormalBillDispose abnormalBillDispose) {
String site = CommonMethods.getSite();
String user = CommonMethods.getUser();
LocalDateTime now = LocalDateTime.now();
abnormalBillDispose.setHandle(HandleEnum.Z_ABNORMAL_BILL_DISPOSE.getHandle(site,abnormalBill.getAbnormalNo()));
abnormalBillDispose.setDutyDateTime(now);
abnormalBillDispose.setDutyUser(user);
nwaUserService.checkUserGroup(abnormalBillDispose.getDutySendUserGroup());
this.saveOrUpdate(abnormalBill);
abnormalBillDisposeService.saveOrUpdate(abnormalBillDispose);
}
@Override
public void generateAbnormalBill(AbnormalBill abnormalBill, AbnormalBillDispose abnormalBillDispose,List<String> dutyCauseType,List<String> dutyType) {
String site = CommonMethods.getSite();
@ -208,18 +277,24 @@ public class AbnormalBillServiceImpl extends ServiceImpl<AbnormalBillMapper, Abn
}
abnormalBill.setAbnormalNo(abnormalNo);
}
abnormalBill.setHandle(HandleEnum.Z_ABNORMAL_BILL.getHandle(site,abnormalBill.getAbnormalNo()));
abnormalBillDispose.setAbnormalBillBo(abnormalBill.getHandle());
abnormalBillDispose.setHandle(HandleEnum.Z_ABNORMAL_BILL_DISPOSE.getHandle(site,abnormalBill.getAbnormalNo()));
abnormalBill.setHandle(HandleEnum.Z_ABNORMAL_BILL.getHandle(site,abnormalBill.getAbnormalNo()));
//更新的时候,判断该异常当的状态是否为新建
AbnormalBill abnormalBill1 = abnormalBillMapper.selectById(abnormalBill.getHandle());
// if(abnormalBill1 != null){
// if(!"N".equals(abnormalBill1.getStatus())){
// throw BusinessException.build("该异常单已经被人处理,不能进行更新");
// }
// }
abnormalBillDispose.setAbnormalBillBo(abnormalBill.getHandle());
abnormalBillDispose.setHandle(HandleEnum.Z_ABNORMAL_BILL_DISPOSE.getHandle(site,abnormalBill.getAbnormalNo()));
//设置责任划分填报人和填报时间
abnormalBillDispose.setDutyUser(user);
abnormalBillDispose.setDutyDateTime(currentTime);
ArrayList<AbnormalCause> causeTypes = new ArrayList<>();
//判断原因分类是否为空
if(dutyCauseType != null && dutyCauseType.size() >= 1){

@ -46,6 +46,7 @@
<result column="RESRCE" property="resrce"/>
<result column="WORK_ORDER" property="workOrder"/>
<result column="ITEM_NUMBER" property="itemNumber"/>
<result column="NC_CODE" property="ncCode"/>
<result column="PRODUCT_CATEGORY" property="productCategory"/>
<result column="MAP" property="map"/>
<result column="PB_DESCRIPTION" property="pbDescription"/>
@ -59,6 +60,7 @@
<result column="REPORT_FROM" property="reportFrom"/>
<result column="OBJECT_BO" property="objectBo"/>
<result column="PB_PHOTOSHOP" property="pbPhotoShop"/>
<result column="ROUTER" property="router"/>
</resultMap>
<!-- 通用查询结果列 -->
@ -609,5 +611,51 @@
</delete>
<!-- BaseMapper标准查询/修改/删除 -->
<select id="findAllByAbnormalNo" resultMap="AbnormalBillDisposeDto">
SELECT ZAB.ABNORMAL_NO ABNORMAL_NO ,ZAB.STATUS STATUS,I.ITEM ITEM,IT.DESCRIPTION ITEM_DESCRIPTION,
ZAB."TYPE" "TYPE" ,ZAB.SFC SFC,ZAB.MESSAGE_TYPE MESSAGE_TYPE,ZAB.SHOP_ORDER SHOP_ORDER,
ZAB.WORK_CENTER WORK_CENTER,ZAB.RESRCE RESRCE, WORKORDER.VALUE WORK_ORDER,ITEMNUMBER.VALUE ITEM_NUMBER,
PRODUCTCATEGORY.VALUE PRODUCT_CATEGORY,listagg(NCT2.DESCRIPTION || '/'||NCT.DESCRIPTION || ',') within GROUP(ORDER BY zab.ABNORMAL_NO) NC_CODE , ZAB.PB_DESCRIPTION PB_DESCRIPTION ,ZAB.NC_QTY NC_QTY,
ZAB.PB_GRADE PB_GRADE ,ZAB.PB_USER PB_USER ,ZAB.PB_QTY PB_QTY ,ZAB.DISCOVER DISCOVER ,
ZAB.INSPECTOR INSPECTOR ,ZAB.ENTITY_LOCATION ENTITY_LOCATION ,ZAB.REPORT_FROM REPORT_FROM ,ZAB.OBJECT_BO OBJECT_BO ,
ZAB.PB_PHOTOSHOP PB_PHOTOSHOP,ZABD.DUTY_CAUSE_DESCRIPTION DUTY_CAUSE_DESCRIPTION,ZABD.DUTY_CAUSE_TYPE DUTY_CAUSE_TYPE,ZABD.DUTY_DEPART DUTY_DEPART,
ZABD.DUTY_SEND_USER_GROUP DUTY_SEND_USER_GROUP,ZABD.DUTY_TYPE DUTY_TYPE,ZABD.PRINCIPAL_USER PRINCIPAL_USER,ZABD.ABNORMAL_METHOD ABNORMAL_METHOD,
R.ROUTER ROUTER,ZABD.RESOLVE_SHOP_ORDER RESOLVE_SHOP_ORDER,ZABD.RESOLVE_REMARK RESOLVE_REMARK,ZABD.RESOLVE_SEND_USER RESOLVE_SEND_USER,
ZABD.ABNORMAL_REASON ABNORMAL_REASON,ZABD.BEFORE_MEASURE BEFORE_MEASURE,"MAP".VALUE "MAP",
R.HANDLE ROUTER_BO
FROM Z_ABNORMAL_BILL ZAB
LEFT JOIN Z_ABNORMAL_BILL_DISPOSE ZABD ON ZAB.HANDLE = ZABD.ABNORMAL_BILL_BO
INNER JOIN ITEM I ON I.HANDLE = ZAB.ITEM_BO
LEFT JOIN ITEM_T IT ON IT.ITEM_BO = I.HANDLE AND IT.LOCALE = #{language}
INNER JOIN SHOP_ORDER SO ON SO.SHOP_ORDER = ZAB.SHOP_ORDER AND SO.SITE = ZAB.SITE
LEFT JOIN CUSTOM_FIELDS WORKORDER ON WORKORDER.HANDLE = SO.HANDLE AND WORKORDER."ATTRIBUTE" = 'WORK_ORDER'
LEFT JOIN CUSTOM_FIELDS ITEMNUMBER ON ITEMNUMBER.HANDLE = SO.HANDLE AND ITEMNUMBER."ATTRIBUTE" = 'ITEM_NUMBER'
LEFT JOIN CUSTOM_FIELDS PRODUCTCATEGORY ON PRODUCTCATEGORY.HANDLE = SO.HANDLE AND PRODUCTCATEGORY."ATTRIBUTE" = 'PRODUCT_CATEGORY'
LEFT JOIN CUSTOM_FIELDS "MAP" ON "MAP".HANDLE = SO.HANDLE AND "MAP"."ATTRIBUTE" = 'MAP'
LEFT JOIN Z_ABNORMAL_NC_CODE ZANC ON ZAB.HANDLE = ZANC.ABNORMAL_BILL_BO
LEFT JOIN NC_CODE_T NCT ON ('NCCodeBO:' || ZAB.SITE || ',' || ZANC.NC_CODE) = NCT.NC_CODE_BO AND NCT.LOCALE = #{language}
LEFT JOIN NC_CODE_T NCT2 ON ('NCCodeBO:' || ZAB.SITE || ',' || ZANC.NC_CODE_GROUP) = NCT2.NC_CODE_BO AND NCT2.LOCALE = #{language}
LEFT JOIN ROUTER R ON R.HANDLE = ZABD.ROUTER_BO
<where>
<if test="abnormalBill != null">
<if test="abnormalBill.site != null and abnormalBill.site != ''">
ZAB.SITE = #{abnormalBill.site}
</if>
<if test="abnormalBill.abnormalNo != null and abnormalBill.abnormalNo != ''">
AND ZAB.ABNORMAL_NO = #{abnormalBill.abnormalNo}
</if>
</if>
</where>
GROUP BY
ZAB.ABNORMAL_NO ,ZAB.STATUS ,I.ITEM ,IT.DESCRIPTION ,
ZAB."TYPE" ,ZAB.SFC ,ZAB.MESSAGE_TYPE ,ZAB.SHOP_ORDER ,
ZAB.WORK_CENTER ,ZAB.RESRCE , WORKORDER.VALUE ,ITEMNUMBER.VALUE ,
PRODUCTCATEGORY.VALUE, ZAB.PB_DESCRIPTION ,ZAB.NC_QTY ,
ZAB.PB_GRADE ,ZAB.PB_USER ,ZAB.PB_QTY ,ZAB.DISCOVER ,
ZAB.INSPECTOR ,ZAB.ENTITY_LOCATION ,ZAB.REPORT_FROM ,ZAB.OBJECT_BO ,
ZAB.PB_PHOTOSHOP ,ZABD.DUTY_CAUSE_DESCRIPTION ,ZABD.DUTY_CAUSE_TYPE ,ZABD.DUTY_DEPART ,
ZABD.DUTY_SEND_USER_GROUP ,ZABD.DUTY_TYPE ,ZABD.PRINCIPAL_USER ,ZABD.ABNORMAL_METHOD ,
R.ROUTER ,ZABD.RESOLVE_SHOP_ORDER ,ZABD.RESOLVE_REMARK ,ZABD.RESOLVE_SEND_USER ,
ZABD.ABNORMAL_REASON ,ZABD.BEFORE_MEASURE ,"MAP".VALUE,R.HANDLE
</select>
</mapper>

@ -46,6 +46,8 @@ public class RouterController {
@GetMapping("")
public R getRouterList(Router router){
List<Router> result;
String site = CommonMethods.getSite();
router.setSite(site);
QueryWrapper<Router> queryWrapper = new QueryWrapper<>();
queryWrapper.setEntity(router);
result = routerService.list(queryWrapper);

@ -22,4 +22,6 @@ public interface NwaUserMapper extends BaseMapper<NwaUser> {
List<NwaUser> findAllUser(@Param("site")String site);;
List<NwaUser> selectAllByUserGroups(@Param("site")String site,@Param("list")List<String> list);
int checkUser(@Param("site")String site,@Param("list")List<String> list);
}

@ -586,4 +586,14 @@
)
</if>
</select>
<select id="checkUser" resultType="integer">
SELECT COUNT(*)
FROM Z_NWA_USER
WHERE SITE = #{site}
<if test="list != null and !list.isEmpty">
AND USER_NAME IN (
<foreach item="item" index="index" collection="list" separator=",">UPPER(#{item})
</foreach>)
</if>
</select>
</mapper>

@ -183,12 +183,12 @@
<if test="ew.entity.origin!=null"> AND ORIGIN=#{ew.entity.origin}</if>
</if>
<if test="ew!=null and ew.sqlSegment!=null and ew.nonEmptyOfWhere">
${ew.sqlSegment}
AND ${ew.sqlSegment}
</if>
</if>
</where>
<if test="ew!=null and ew.sqlSegment!=null and ew.emptyOfWhere">
${ew.sqlSegment}
AND ${ew.sqlSegment}
</if>
</select>

Loading…
Cancel
Save