Merge remote-tracking branch 'origin/master'

master
wj 2 years ago
commit d9026565f5

@ -6,6 +6,8 @@ public class Constant {
public static final String INV_PRE_IN_CODE = "1000001";//默认预验收仓库号
public static final String INV_PRE_CODE = "1000002";//默认寄售仓库号
public static String MUTI = "MUTI";
public static final String SERIAL_CACHE_PREFIX = "serial_";
@ -227,13 +229,15 @@ public class Constant {
*/
public static final String ORDER_STATUS_CHECK_SUCCESS = "checkSuccess";
public static final String ORDER_STATUS_WAIT_AUDITED = "waitAudited";
/**
* -
*/
public static final String ORDER_STATUS_AUDITED = "audited";
/**
*
*/
public static final String ORDER_STATUS_WAIT_AUDITED = "waitAudited";
/**
* -
@ -258,14 +262,17 @@ public class Constant {
* supInvoice
* norDetail
* preDetail
* preInDetail
*/
public static final String ORDER_ACTION_NOR_DETAIL = "norDetail";
public static final String ORDER_ACTION_PRE_DETAIL = "preDetail";
public static final String ORDER_ACTION_PREIN_DETAIL = "preInDetail";
public static final String ORDER_ACTION_SUP_DELIVERY = "supDelivery";
public static final String ORDER_ACTION_SUP_INVOICE = "supInvoice";
public static final String ORDER_ACTION_SUP_DELAUDIT = "supDelAudit";
public static final String ORDER_ACTION_SUP_INOUT = "supInout";
public static final String ORDER_ACTION_SUP_PREIN = "preInOrder";
}

@ -0,0 +1,48 @@
package com.glxp.api.controller.basic;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.annotation.Log;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.BusinessType;
import com.glxp.api.entity.basic.BasicProductSetEntity;
import com.glxp.api.req.basic.FilterBasicProductSetrequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.service.basic.BasicProductSetService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@RestController
public class BasicProductSetController {
@Resource
BasicProductSetService basicProductSetService;
@AuthRuleAnnotation("")
@GetMapping("/spms/basicProduct/setup/filter")
public BaseResponse filterSetUps(FilterBasicProductSetrequest filterBasicProductSetrequest) {
List<BasicProductSetEntity> basicProductSetEntities = basicProductSetService.filterSetup(filterBasicProductSetrequest);
PageInfo<BasicProductSetEntity> pageInfo;
pageInfo = new PageInfo<>(basicProductSetEntities);
PageSimpleResponse<BasicProductSetEntity> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(basicProductSetEntities);
return ResultVOUtils.success(pageSimpleResponse);
}
@AuthRuleAnnotation("")
@PostMapping("/spms/basicProduct/setup/modify")
@Log(title = "单据管理", businessType = BusinessType.UPDATE)
public BaseResponse modifySetup(@RequestBody BasicProductSetEntity basicProductSetEntity) {
basicProductSetService.updateSetup(basicProductSetEntity);
return ResultVOUtils.success("修改成功");
}
}

@ -30,6 +30,7 @@ import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.res.inout.IoOrderResponse;
import com.glxp.api.res.sync.SpsSyncOrderResponse;
import com.glxp.api.service.auth.AuthAdminService;
import com.glxp.api.service.auth.InvBusUserService;
import com.glxp.api.service.basic.EntrustReceService;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.*;
@ -48,6 +49,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.awt.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ -435,6 +437,11 @@ public class IoOrderReviewController extends BaseController {
if (StrUtil.isEmpty(reviewSpmsRequest.getBillNo())) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL);
}
Long userId = getUserId();
String errMsg = checkReviewAuth(billNo, userId + "");
if (StrUtil.isNotEmpty(errMsg)) {
return ResultVOUtils.error(500, errMsg);
}
AcceptOrderResponse acceptOrderEntity = new AcceptOrderResponse();
acceptOrderEntity.setBillNo(billNo);
List<IoOrderDetailResultResponse> datas = (List<IoOrderDetailResultResponse>) redisUtil.get(ConstantStatus.REDIS_BILLNO + billNo);
@ -456,7 +463,7 @@ public class IoOrderReviewController extends BaseController {
acceptOrderEntity.setExitAccept(false);
} else {
//获取自助平台待审核单据,并插入到数据库
BaseResponse<SpsSyncOrderResponse> baseResponse = spGetHttp.getReviewOrder(reviewSpmsRequest);
BaseResponse<SpsSyncOrderResponse> baseResponse = spGetHttp.getReviewOrder(reviewSpmsRequest, userId + "");
if (baseResponse.getCode() == 20000) {
SpsSyncOrderResponse spsSyncOrderResponse = baseResponse.getData();
List<IoOrderEntity> orderEntities = spsSyncOrderResponse.getOrderEntities();
@ -490,5 +497,26 @@ public class IoOrderReviewController extends BaseController {
return ResultVOUtils.success(acceptOrderEntity);
}
@Resource
InvBusUserService invBusUserService;
//校验用户是否验收权限
private String checkReviewAuth(String orderId, String userId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
if (orderEntity.getStatus() != ConstantStatus.ORDER_STATUS_CHECK_REW || orderEntity.getStatus() != ConstantStatus.ORDER_STATUS_CHECK_SUCCESS) {
return "单据非未验收状态,无法审核!";
}
if (!invBusUserService.exitBus(userId, orderEntity.getAction())) {
EntrustReceEntity entrustReceEntity = entrustReceService.findByUnique(orderEntity.getAction(), Long.parseLong(userId));
if (entrustReceEntity == null) {
return "无验收权限!";
}
} else {
return "无验收权限!";
}
return null;
}
}

@ -17,7 +17,6 @@ public interface BasicBussinessTypeDao extends BaseMapperPlus<BasicBussinessType
/**
*
*
* @param filterBussinessTypeRequest
* @return
*/
List<BasicBussinessTypeResponse> filterList(FilterBussinessTypeRequest filterBussinessTypeRequest);

@ -1,5 +1,8 @@
package com.glxp.api.http.sync;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
@ -10,6 +13,7 @@ import com.glxp.api.entity.basic.ProductInfoEntity;
import com.glxp.api.entity.sync.BasicExportStatusEntity;
import com.glxp.api.entity.sync.IOOrderStatusEntity;
import com.glxp.api.entity.system.SyncDataSetEntity;
import com.glxp.api.idc.service.FileService;
import com.glxp.api.req.basic.ProductInfoFilterRequest;
import com.glxp.api.req.inout.ReviewFinishRequest;
import com.glxp.api.req.inout.ReviewSpmsRequest;
@ -106,9 +110,12 @@ public class SpGetHttpClient {
//获取自助平台验收单据---直连接口
public BaseResponse<SpsSyncOrderResponse> getReviewOrder(ReviewSpmsRequest reviewSpmsRequest) {
public BaseResponse<SpsSyncOrderResponse> getReviewOrder(ReviewSpmsRequest reviewSpmsRequest, String userId) {
String json = JSONUtil.toJsonStr(reviewSpmsRequest);
String result = okHttpCli.doPostJson(getIpUrl() + "/directToSpms" + "/udiwms/order/getReviews", json, buildHeader());
List<String> header = (List<String>) Convert.toList(buildHeader());
header.add("ADMIN_ID");
header.add(userId);
String result = okHttpCli.doPostJson(getIpUrl() + "/directToSpms" + "/udiwms/order/getReviews", json, Convert.toStrArray(header));
BaseResponse<SpsSyncOrderResponse> response =
JSONObject.parseObject(result, new TypeReference<BaseResponse<SpsSyncOrderResponse>>() {
});
@ -372,12 +379,17 @@ public class SpGetHttpClient {
* @param fileNameList
* @return
*/
public BaseResponse<String> postTemplateFile(List<Map<String, String>> fileNameList) {
String json = JSONUtil.toJsonStr(fileNameList);
String result = okHttpCli.doPostJson(getIpUrl() + "/spssync/file/download", json, buildHeader());
BaseResponse<String> response =
JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
});
return response;
@Resource
FileService fileService;
public BaseResponse<String> postTemplateFile(List<String> fileNameList) {
return fileService.upload(fileNameList);
// String json = JSONUtil.toJsonStr(fileNameList);
// String result = okHttpCli.doPostJson(getIpUrl() + "/spssync/file/download", json, buildHeader());
// BaseResponse<String> response =
// JSONObject.parseObject(result, new TypeReference<BaseResponse<String>>() {
// });
// return response;
}
}

@ -301,7 +301,6 @@ public class BussinessTypeSaveRequest {
private String preInBackAction;
private Integer backPreinType;
private Integer sortNum;
private String checkPreInOrders;
private Boolean advancePreIn;

@ -149,7 +149,6 @@ public class BasicBussinessTypeResponse {
private Integer checkCertExpire;
private String preInBackAction;
private Integer backPreinType;
private String checkPreInOrders;
private Boolean advancePreIn;
private Integer sortNum;
}

@ -5,6 +5,7 @@ import com.glxp.api.entity.auth.InvBusUserEntity;
import com.glxp.api.entity.auth.WarehouseBussinessTypeEntity;
import com.glxp.api.req.auth.FilterInvBusUserRequest;
import com.glxp.api.res.auth.InvBusUserResponse;
import java.util.List;
public interface InvBusUserService {
@ -24,6 +25,9 @@ public interface InvBusUserService {
boolean deleteById(String id);
boolean deleteByUnion(String userId, String subInvCode);
boolean deleteByscAction(String subInvCode, List<String> selectedCodes);
boolean exitBus(String userId, String action);
}

@ -1,6 +1,7 @@
package com.glxp.api.service.auth.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.auth.InvBusUserDao;
import com.glxp.api.entity.auth.InvBusUserEntity;
@ -104,4 +105,9 @@ public class InvBusUserServiceImpl implements InvBusUserService {
}
return invBusUserDao.deleteByscAction(subInvCode, selectedCodes);
}
@Override
public boolean exitBus(String userId, String action) {
return invBusUserDao.exists(new QueryWrapper<InvBusUserEntity>().eq("userId", userId).eq("action", action));
}
}

@ -210,13 +210,17 @@ public class BasicBussinessTypeServiceImpl extends ServiceImpl<BasicBussinessTyp
switch (vueType) {
case Constant.ORDER_ACTION_NOR_DETAIL:
bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>()
.eq("actionType", 1).eq("inStock", true));
.eq("actionType", 1).eq("inStock", true).eq("enable", true));
break;
case Constant.ORDER_ACTION_PRE_DETAIL:
bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>()
.eq("actionType", 3).eq("inStock", true).eq("enable", true));
break;
case Constant.ORDER_ACTION_PREIN_DETAIL:
bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>()
.eq("actionType", 2).eq("inStock", true).eq("enable", true));
break;
case Constant.ORDER_ACTION_SUP_DELIVERY:
//允许送货单直接入库变更库存,则不判断送货单是否入库
String deliveryInstock = systemParamConfigService.selectValueByParamKey("deliveryInstock");
@ -248,10 +252,10 @@ public class BasicBussinessTypeServiceImpl extends ServiceImpl<BasicBussinessTyp
bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>()
.gt("spUse", 0).eq("enable", true));
break;
case Constant.ORDER_ACTION_SUP_PREIN:
bussinessTypeEntities = basicBussinessTypeDao.selectList(new QueryWrapper<BasicBussinessTypeEntity>()
.gt("spUse", 0).eq("enable", true).eq("corpType", ConstantStatus.CORP_TYPE_OUT).eq("actionType", 2));
default:
break;
}

@ -29,8 +29,11 @@ public class InnerOrderServiceImpl implements InnerOrderService {
InnerOrderRequest innerOrderRequest = new InnerOrderRequest();
innerOrderRequest.setRecordKey(recordKey);
List<InnerOrderEntity> data = innerOrderDao.queryPageList(innerOrderRequest);
if(data!=null && data.size()>0){
return data.get(0);
}
return new InnerOrderEntity();
}
@Override
public List<InnerOrderEntity> queryPageList(InnerOrderRequest innerOrderRequest) {

@ -1343,16 +1343,10 @@ public class HeartService {
//若模板记录不为空,则将模板文件同步过去
String uploadFileLog = "";
if (CollUtil.isNotEmpty(spsSyncSysSettingResponse.getSystemPDFTemplateEntities())) {
List<Map<String, String>> list = new ArrayList<>(spsSyncSysSettingResponse.getSystemPDFTemplateEntities().size() * 2);
// List<Map<String, String>> list = new ArrayList<>(spsSyncSysSettingResponse.getSystemPDFTemplateEntities().size() * 2);
List<String> list = new ArrayList<>();
spsSyncSysSettingResponse.getSystemPDFTemplateEntities().forEach(systemPDFTemplateEntity -> {
//分切文件并封装参数
Map<String, String> pathFileMap = new HashMap<>(1);
pathFileMap.put("fileName", StrUtil.split(systemPDFTemplateEntity.getPath(), "template/").get(1));
list.add(pathFileMap);
Map<String, String> jrxmlPathFileMap = new HashMap<>(1);
jrxmlPathFileMap.put("fileName", StrUtil.split(systemPDFTemplateEntity.getJrxmlPath(), "template/").get(1));
list.add(jrxmlPathFileMap);
list.add(systemPDFTemplateEntity.getPath());
});
BaseResponse<String> response = spGetHttp.postTemplateFile(list);

@ -12,7 +12,6 @@
<if test="action != null and action != ''">
AND bu.action like concat('%', #{action}, '%')
</if>
<if test="inStock != null">
AND bu.inStock = #{inStock}
</if>
@ -34,6 +33,9 @@
<if test="secCheckEnable != null">
AND bu.secCheckEnable = #{secCheckEnable}
</if>
<if test="actionType != null">
AND bu.actionType = #{actionType}
</if>
<if test="busType != null">
AND bu.busType = #{busType}
</if>
@ -70,7 +72,8 @@
vailGroupBuy, busType, inStock, actionType, thrCheckEnable, thrCheckWebNew,
thrCheckPdaUn, thrCheckPdaEd, thrCheckUdims, thrCheckPc, thrCheckSp,
thrCheckChange, thrCheckBalance, thrCheckCopy, fillCodeRel, checkVailDate,
checkExpire, checkCertExpire, preInBackAction, backPreinType, sortNum)
checkExpire, checkCertExpire, preInBackAction, backPreinType,
sortNum)
values (#{mainAction}, #{action}, #{name}, #{enable}, #{remark}, #{thirdSysFk}, #{genUnit}, #{innerOrder},
#{secCheckEnable}, #{checkEnable}, #{checkUdims}, #{checkPdaEd}, #{checkPdaUn}, #{checkPc},
#{checkWebNew}, #{checkSp}, #{checkChange}, #{secCheckUdims}, #{secCheckPdaEd}, #{secCheckPdaUn},
@ -82,7 +85,8 @@
#{vailGroupBuy}, #{busType}, #{inStock}, #{actionType}, #{thrCheckEnable}, #{thrCheckWebNew},
#{thrCheckPdaUn}, #{thrCheckPdaEd}, #{thrCheckUdims}, #{thrCheckPc}, #{thrCheckSp},
#{thrCheckChange}, #{thrCheckBalance}, #{thrCheckCopy}, #{fillCodeRel}, #{checkVailDate},
#{checkExpire}, #{checkCertExpire}, #{preInBackAction}, #{backPreinType}, #{sortNum})
#{checkExpire}, #{checkCertExpire}, #{preInBackAction}, #{backPreinType},
#{sortNum})
</insert>
<select id="selectBusList" resultType="com.glxp.api.entity.basic.BasicBussinessTypeEntity">

Loading…
Cancel
Save