Merge branch 'main' of ssh://192.168.1.205:9922/cf_devdept2/cf_imes_server

This commit is contained in:
lym
2024-06-22 09:15:13 +08:00
27 changed files with 181 additions and 98 deletions
@@ -24,11 +24,11 @@ public interface SecurityFrameworkService {
boolean hasAnyPermissions(String... permissions);
/**
* 清空本地缓存
* 清空本地权限缓存
*
* @param
*/
void invalidateAll();
void invalidateAllPermissionsCache();
/**
* 判断是否有角色
@@ -66,7 +66,7 @@ public class SecurityFrameworkServiceImpl implements SecurityFrameworkService {
}
@Override
public void invalidateAll() {
public void invalidateAllPermissionsCache() {
hasAnyPermissionsCache.invalidateAll();
}
@@ -17,6 +17,12 @@
</includes>
</fileSet>
<!-- 模板xlsx相关文件 -->
<fileSet>
<directory>${basedir}/src/main/resources/type</directory>
<outputDirectory>execFile</outputDirectory>
</fileSet>
<!-- 依赖库 -->
<fileSet>
<directory>${basedir}/target/lib</directory>
@@ -24,6 +24,7 @@ import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.io.File;
import java.util.*;
import com.cf.imes.framework.common.pojo.PageResult;
@@ -251,12 +252,12 @@ public class OrderController {
System.err.println(excelReadUtil.isErr());
// 判断是否读取有误
if (excelReadUtil.isErr() == -1) { // 文件为空
ExcelWriterUtil.writeErr(response, "生产单内容为空",orderService.getSavePath()+ "\\"+ "错误文件.xlsx");
ExcelWriterUtil.writeErr(response, "生产单内容为空", orderService.getSavePath() + File.separator + "错误文件.xlsx");
return;
}else if (excelReadUtil.isErr() > 0) {
// 返回文件
System.out.println("(Map<Object, Object>) " + (Map<Object, Object>) map.get("order")+ " , (List<OrderPlateImportExcelVO>)" +(List<OrderPlateImportExcelVO>) map.get("plate"));
ExcelWriterUtil.write(response, (Map<Object, Object>) map.get("order"), (List<OrderPlateImportExcelVO>) map.get("plate"),orderService.getSavePath()+ "\\"+ "生产单Excel导入错误导出模板.xlsx");
ExcelWriterUtil.write(response, (Map<Object, Object>) map.get("order"), (List<OrderPlateImportExcelVO>) map.get("plate"), orderService.getSavePath() + File.separator + "生产单Excel导入错误导出模板.xlsx");
return;
} else {
// 获取数据
@@ -568,7 +568,7 @@ public class OrderServiceImpl implements OrderService {
// 新增字典查询
dictDataApi.addDictData("upload_file_type", label, value);
// 保存文件
File saveFile = new File(getSavePath() + "\\" + fileName);
File saveFile = new File(getSavePath() + File.separator + fileName);
file.transferTo(saveFile);
return value;
} catch (IOException e) {
@@ -581,7 +581,7 @@ public class OrderServiceImpl implements OrderService {
// 根据type获取文件名称
try {
// path是指想要下载的文件的路径
File file = new File(getSavePath() + "\\" + value);
File file = new File(getSavePath() + File.separator + value);
// 获取文件名
String filename = file.getName();
// 获取文件后缀名
@@ -444,8 +444,8 @@ public class PlanServiceImpl implements PlanService {
.betweenIfPresent("a.width", new BigDecimal[]{vo.getWidthMinRang(), vo.getWidthMaxRang()})
.betweenIfPresent("a.height", new BigDecimal[]{vo.getLongMinRang(), vo.getLongMaxRang()})
.inIfPresent("a.filter_type", filterTypes)
.betweenIfPresent("f.delivery_date", new Date[]{vo.getBeginDate(), vo.getEndDate()});
.betweenIfPresent("f.delivery_date", new Date[]{vo.getBeginDate(), vo.getEndDate()})
.orderByDesc("a.name");
PageDTO<PlateResList> page = new PageDTO<>(vo.getPageNo(), vo.getPageSize());
IPage<PlateResList> pageResult = plateMapper.selectPlateByPlanId(page, queryWrapperX);
Set<Long> bodyIds = pageResult.getRecords().stream().map(PlateResList::getBodyId).collect(Collectors.toSet());
@@ -4,7 +4,6 @@ import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.support.ExcelTypeEnum;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.WriteTable;
import com.alibaba.excel.write.metadata.fill.FillConfig;
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
import com.cf.imes.module.executor.util.fileConversion.admin.files.excel.OrderPlateImportExcelVO;
@@ -13,10 +12,10 @@ import org.springframework.util.ResourceUtils;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URLEncoder;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.HashMap;
import java.util.List;
@@ -143,7 +142,7 @@ public class ExcelWriterUtil {
String filePathErr,
String type) throws IOException {
//输入流
InputStream inputStream = ResourceUtils.getURL(filePathErr+ "\\" + type).openStream();
InputStream inputStream = ResourceUtils.getURL(filePathErr+ File.separator + type).openStream();
ServletOutputStream outputStream = response.getOutputStream();
@@ -3,7 +3,7 @@
<mapper namespace="com.cf.imes.module.executor.dal.mysql.order.OrderMapper">
<select id="selectOrderPage" resultType="com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy">
select a.id as orderId, a.order_date, a.delivery_date, a.customer, a.address, a.custom_order_no as defineId,
select distinct a.id as orderId, a.order_date, a.delivery_date, a.customer, a.address, a.custom_order_no as defineId,
count(op.id) as num, sum(op.area) as area
from `orders` a
left join order_item oi on a.id = oi.order_id and a.organ_id = oi.organ_id
@@ -171,13 +171,13 @@
from order_item oi
left join order_package op on oi.order_id = op.order_id and oi.organ_id = op.organ_id
where oi.parts_id = '' and oi.organ_id = #{organId}
where oi.parts_id = 0 and oi.organ_id = #{organId}
and oi.order_id in
<foreach item="orderIds" collection="orderIds" open="(" separator="," close=")">
#{orderIds}
</foreach>
group by oi.order_id,oi.plate_id,op.id,op.package_no;
group by oi.order_id,oi.plate_id,op.id,op.package_no,op.status;
@@ -4,7 +4,7 @@
<select id="selectProductList"
resultType="com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsRespVO">
SELECT a.id, a.goods_id, a.name, a.material, a.type, a.model, a.spec, a.brand, a.factory,
SELECT distinct a.id, a.goods_id, a.name, a.material, a.type, a.model, a.spec, a.brand, a.factory,
a.unit, a.price, a.is_composite, a.remark, b.num
FROM order_parts a
LEFT JOIN order_item b ON a.id = b.parts_id and a.organ_id = b.organ_id
@@ -90,7 +90,7 @@
<select id="getOptimizePlanParam" resultMap="optimizeMap">
select op.id as plan_id, op.plan_no, op.type as op_type, op.status as op_status, op.machine_id, op.plan_time, op.produce_time, op.remark as op_remark, op.operator,
select distinct op.id as plan_id, op.plan_no, op.type as op_type, op.status as op_status, op.machine_id, op.plan_time, op.produce_time, op.remark as op_remark, op.operator,
oi.order_id, opl.id as plateId, opl.order_id opl_order_id, opl.name opl_name, opl.plate_no, opl.type as opl_type, opl.goods_id as opl_goods_id, opl.width opl_width,
opl.height opl_height, opl.thickness as opl_thickness, opl.split_width, opl.split_height, opl.split_thickness, opl.seal_left, opl.seal_right,
opl.seal_up, opl.seal_down, opl.area, opl.texture, opl.hole_face, opl.hole_arrange, opl.unregular_point_count, opl.front_hole_count,
@@ -111,7 +111,7 @@
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateOptimize"
parameterType="java.lang.Long">
select a.id, a.goods_name, a.material, a.color, a.width, a.height, a.thickness, count(b.id) as plateNum, d.*
select distinct a.id, a.goods_name, a.material, a.color, a.width, a.height, a.thickness, count(b.id) as plateNum, d.*
from order_goods a
left join order_plate b on a.id = b.goods_id and a.organ_id = b.organ_id
left join order_item c on c.order_id = b.order_id and c.organ_id = b.organ_id
@@ -5,7 +5,7 @@
<select id="selectPlatePage" resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlatePage">
select a.id as plateId, a.name, a.width, a.height, a.thickness, a.area,
select distinct a.id as plateId, a.name, a.width, a.height, a.thickness, a.area,
b.custom_order_no, b.customer, b.address, b.remark, b.id as orderId,
c.goods_name, c.material, c.color, a.goods_id,oi.num,a.is_special_shaped as specialShaped,a.is_sculpt as profiling
@@ -29,7 +29,7 @@
<select id="selectPlateByPlanId"
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateResList">
select a.order_id, a.plate_no , a.name as plateName,a.is_special_shaped,a.is_sculpt,a.area,a.seal_left,a.seal_right,a.seal_up,a.seal_down, e.material, e.color, a.width, a.height, a.thickness, b.room_id, b.body_id
select distinct a.order_id, a.plate_no , a.name as plateName,a.is_special_shaped,a.is_sculpt,a.area,a.seal_left,a.seal_right,a.seal_up,a.seal_down, e.material, e.color, a.width, a.height, a.thickness, b.room_id, b.body_id
from order_plate a
LEFT JOIN order_item b ON a.id = b.plate_id AND a.order_id = b.order_id and a.organ_id = b.organ_id
LEFT JOIN order_goods e ON e.id = a.goods_id AND e.order_id = a.order_id and e.organ_id = a.organ_id
@@ -40,7 +40,7 @@
</select>
<select id="selectPlateList"
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateParam">
select a.id, a.plate_no, a.height length, a.width, a.texture, a.hole_arrange, a.hole_face, if ( (count(a.unregular_point_count) = 0), 1, 0) as isRect
select distinct a.id, a.plate_no, a.height length, a.width, a.texture, a.hole_arrange, a.hole_face, if ( (count(a.unregular_point_count) = 0), 1, 0) as isRect
from order_plate a
left join order_item b on a.id = b.plate_id
where b.plan_id = #{planId}
@@ -63,7 +63,7 @@
</select>
<select id="selectBatchOrderIdsAndGoodsIds" resultType="java.lang.Long">
select oi.id from order_plate op
select distinct oi.id from order_plate op
join order_item oi on op.id = oi.plate_id and op.order_id = oi.order_id and op.organ_id = oi.organ_id
where op.organ_id = #{organId} and op.order_id in
<foreach collection="itemList" item="item" open="(" close=")" separator=",">
@@ -181,7 +181,8 @@
<select id="selectPlateGoodsList" resultType="com.cf.imes.module.executor.controller.admin.plate.vo.PlateGoodsRespVO">
select op.id,
select distinct
op.id,
op.name,
op.goods_id,
ogs.goods_name,
@@ -242,7 +243,7 @@
<select id="selectPlateGoodsListSummary" resultType="com.cf.imes.module.executor.controller.admin.plate.vo.PlateGoodsRespVO">
select
select distinct
op.name,
op.open_door_type,
op.height,
@@ -293,15 +294,15 @@
parameterType="java.lang.Long">
select a.order_id, a.plate_no , a.name as plateName,a.is_special_shaped,a.is_sculpt,a.area,a.seal_left,a.seal_right,a.seal_up,a.seal_down, e.material, e.color, a.width, a.height, a.thickness, b.room_id, b.body_id
select distinct a.order_id, a.plate_no , a.name as plateName,a.is_special_shaped,a.is_sculpt,a.area,a.seal_left,a.seal_right,a.seal_up,a.seal_down, e.material, e.color, a.width, a.height, a.thickness, b.room_id, b.body_id
from order_plan_item p
left join order_item b on p.item_id = b.id and b.organ_id = p.organ_id
left join order_plate a on b.plate_id = a.id and b.order_id = a.order_id and b.organ_id = a.organ_id
left join order_goods e on a.goods_id = e.id and a.order_id = e.order_id and a.organ_id = e.organ_id
where p.plan_id = #{planId} and p.organ_id = #{organId} ;
where p.plan_id = #{planId} and p.organ_id = #{organId}
order by a.order_id,plateName;
</select>
@@ -91,7 +91,7 @@ public class PackController {
@GetMapping("/queryPackageDetails")
@Operation(summary = "包裹对应的板材信息")
@Operation(summary = "包裹的详细信息")
@PreAuthorize("@ss.hasPermission('manage:query:query')")
public CommonResult<PageResult<PackageDetailsRespVO>> queryPackageDetails(@Valid PackDetailsReqVO reqVO){
@@ -11,8 +11,6 @@ import lombok.ToString;
public class DeleteOtherPartsReqVO {
@Schema(description = "生产单号", requiredMode = Schema.RequiredMode.REQUIRED)
private Long orderId;
@Schema(description = "包裹Id", requiredMode = Schema.RequiredMode.REQUIRED)
private Long packageId;
@@ -21,6 +19,10 @@ public class DeleteOtherPartsReqVO {
private Long partsId;
@Schema(description = "是否是其他类型的配件", requiredMode = Schema.RequiredMode.REQUIRED)
private Boolean isOtherParts;
}
@@ -61,4 +61,15 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
.eq(OrderPackageDO::getOrganId,organId)
.eqIfPresent(OrderPackageDO::getOrderId, orderId));
}
default List<OrderPackageDO> selectPackList(Long packageId,Long organId) {
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
.eq(OrderPackageDO::getOrganId,organId)
.eqIfPresent(OrderPackageDO::getId, packageId));
}
void updatePackStatus(Long packageId);
}
@@ -18,7 +18,9 @@ import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.stream.Collectors;
@Mapper
public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
@@ -41,14 +43,13 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
void deleteOrderPack(@Param("reqVO") PackReqVO reqVO);
void deleteOrderPack(@Param("packId") Long packId);
void deleteOtherParts(@Param("partsId") Long partsId);
void deleteParts(@Param("reqVO") PackReqVO reqVO);
void insertPackId(@Param("plateIdList") List<Long> plateIdList, @Param("packId") Long packId);
@@ -84,4 +85,10 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
.eq(OrderItemDO::getOrganId, organId)
.eqIfPresent(OrderItemDO::getPackageId, packId));
}
void deleteParts(@Param("packageId") Long packageId, @Param("partsIds") List<Long> partsIds);
void updateParts(@Param("partsId") Long partsId,@Param("packageId") Long packageId);
}
@@ -29,7 +29,7 @@ public interface OrderPartsMapper extends BaseMapperX<OrderPartsNDO> {
List<OrderPartsRespVO> selectOrderParts(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo);
void deleteOrderParts(@Param("packageId") Long packageId);
void deleteOrderParts(@Param("partsIds") List<Long> partsIds);
default OrderPartsNDO selectOneParts(String otherPartsName,Long organId) {
@@ -215,11 +215,13 @@ public class PackServiceImpl implements PackService {
// 生产明细表新增的配件ID
orderItemMapper.insertParts(reqVO.getAddPartsList(),reqVO.getPackId(),reqVO.getOrderNo());
if(!reqVO.getAddPartsList().isEmpty()) {
orderItemMapper.insertParts(reqVO.getAddPartsList(), reqVO.getPackId(), reqVO.getOrderNo());
}
// 生产明细表删除的配件ID
orderItemMapper.deletePartsList(reqVO.getDeletePartsList(),reqVO.getPackId(),reqVO.getOrderNo());
if(!reqVO.getDeletePartsList().isEmpty()) {
orderItemMapper.deletePartsList(reqVO.getDeletePartsList(), reqVO.getPackId(), reqVO.getOrderNo());
}
orderPackageDO.setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
orderPackageMapper.updateById(orderPackageDO);
@@ -329,8 +331,9 @@ public class PackServiceImpl implements PackService {
orderPackageDO.setRemark(packageVO.getRemark());
orderPackageMapper.insert(orderPackageDO);
// 生产单明细表新增包裹 ID
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), orderPackageDO.getId());
if(packageVO.getAddPlateIdList()!=null) {
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), orderPackageDO.getId());
}
return typeConversion(orderPackageDO);
}
@@ -363,11 +366,14 @@ public class PackServiceImpl implements PackService {
// 生产明细表新增包裹ID
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), packageVO.getPackId());
if(!packageVO.getAddPlateIdList().isEmpty()) {
orderItemMapper.insertPackId(packageVO.getAddPlateIdList(), packageVO.getPackId());
}
// 移除生产明细表中板件对应的包裹ID
orderItemMapper.deletePackId(packageVO.getDeletePlateIdList(), packageVO.getPackId());
if(!packageVO.getDeletePlateIdList().isEmpty()) {
orderItemMapper.deletePackId(packageVO.getDeletePlateIdList(), packageVO.getPackId());
}
orderPackageDO.setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
orderPackageMapper.updateById(orderPackageDO);
@@ -414,13 +420,23 @@ public class PackServiceImpl implements PackService {
// 判断包裹的类型是否为其他类型,如果是,则删除其包裹信息
if (reqVO.getIsOther() == true) {
orderPartsMapper.deleteOrderParts(reqVO.getPackageId());
List<Long> partsIds = orderItemMapper.selectPackList(reqVO.getPackageId(), getUserOrganId())
.stream().map(m -> m.getPartsId())
.distinct()
.collect(Collectors.toList());
orderPartsMapper.deleteOrderParts(partsIds);
orderPackageMapper.updateParts(reqVO.getPackageId(), reqVO.getPackageNo());
orderItemMapper.deleteParts(reqVO);
orderItemMapper.deleteParts(reqVO.getPackageId(),partsIds);
return;
}
orderItemMapper.deleteOrderPack(reqVO);
orderPackageMapper.updateParts(reqVO.getPackageId(),reqVO.getPackageNo());
orderItemMapper.deleteOrderPack(reqVO.getPackageId());
}
@@ -438,6 +454,8 @@ public class PackServiceImpl implements PackService {
// 配件表新增数据
OrderPartsNDO orderParts = BeanUtils.toBean(reqVO, OrderPartsNDO.class);
// 因为是外部配件,所以配件类型的名称固定为 “ 外部配件”
orderParts.setType("外部配件");
orderPartsMapper.insert(orderParts);
@@ -485,6 +503,8 @@ public class PackServiceImpl implements PackService {
// 配件表新增数据
OrderPartsNDO orderParts = BeanUtils.toBean(reqVO, OrderPartsNDO.class);
// 因为是外部配件,所以配件类型的名称固定为 “ 外部配件”
orderParts.setType("外部配件");
orderPartsMapper.insert(orderParts);
// 在生产单明细表中添加数据(生产单号,配件ID,包裹ID,部件数量(目前一直为1))
@@ -512,10 +532,14 @@ public class PackServiceImpl implements PackService {
@Transactional(rollbackFor = Exception.class)
public void deleteOtherParts(DeleteOtherPartsReqVO reqVO) {
// 更新配件表中配件为逻辑删除
orderPartsMapper.updateParts(reqVO.getPartsId());
orderItemMapper.deleteOtherParts(reqVO.getPartsId());
if(reqVO.getIsOtherParts()) {
// 更新配件表中配件为逻辑删除
orderPartsMapper.updateParts(reqVO.getPartsId());
orderItemMapper.deleteOtherParts(reqVO.getPartsId());
}
orderItemMapper.updateParts(reqVO.getPartsId(),reqVO.getPackageId());
}
@@ -14,7 +14,7 @@
resultMap="PackMap">
select
select DISTINCT
count(DISTINCT oi.package_id ) as numberOfPackages,
count(DISTINCT oi.plate_id) as packagedBoard
@@ -55,7 +55,7 @@
parameterType="java.lang.Long"
resultMap="PlateDetailsMap">
select
select DISTINCT
ob.room_name as roomName,
ob.name as bodyName,
op.id as palteId,
@@ -84,7 +84,7 @@
oi.organ_id = #{organId}
and
op.id not in (
select oi2.plate_id
select DISTINCT oi2.plate_id
from order_item oi2
where oi2.order_id = #{orderNo} and oi2.package_id &lt;&gt; '');
@@ -31,7 +31,7 @@
parameterType="com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlatePageReqVO">
select
select DISTINCT
o.id as orderId,
ob.name as cabinetName,
op.id as plateNo,
@@ -93,7 +93,7 @@
<select id="selectPlate"
resultMap="PlateDetailMap">
select
select DISTINCT
op.*,
oi.room_id as roomId,
oi.body_id as bodyId,
@@ -138,7 +138,8 @@
parameterType="java.lang.Long">
select op.*,
select DISTINCT
op.*,
oi.room_id as roomId,
oi.body_id as bodyId,
ob.room_name as roomName,
@@ -25,7 +25,7 @@
parameterType="com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlatePageReqVO">
select
DISTINCT
p.goods_id,
o.id as orderId,
o.custom_order_no as customOrderId,
@@ -83,7 +83,7 @@
resultMap="PlateMap"
parameterType="com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.PlatePageVO">
select
select DISTINCT
op.id as palteId,
op.name as plateName,
p.material as plateMaterial,
@@ -171,7 +171,7 @@
parameterType="java.lang.Long"
resultMap="PlateDetailsMap">
select
select DISTINCT
op.plate_no as plateId,
op.height as plateHeight,
op.width as plateWidth,
@@ -192,12 +192,13 @@
<update id="deleteOrderPack">
<update id="deleteOrderPack" parameterType="java.lang.Long">
UPDATE order_item oi
JOIN order_package opn ON oi.package_id = opn.id
SET oi.package_id = 0, opn.deleted = true
WHERE opn.id = #{reqVO.packageId} AND opn.package_no = #{reqVO.packageNo};
UPDATE order_item
SET package_id = 0
WHERE package_id = #{packId} ;
</update>
@@ -208,25 +209,22 @@
parameterType="java.lang.Long">
DELETE FROM order_item
WHERE id IN (
SELECT id FROM (
SELECT oi.id
FROM order_item oi
WHERE oi.parts_id = #{partsId}
) AS subquery
);
WHERE parts_id = #{partsId}
</update>
<delete id="deleteParts">
<delete id="deleteParts" parameterType="java.lang.Long">
delete from order_item
where package_id = #{reqVO.packageId}
and order_id in
(select order_id from order_package where id = #{reqVO.packageId} and package_no = #{reqVO.packageNo} );
where package_id = #{packageId}
and parts_id in
<foreach item="partsIds" collection="partsIds" open="(" separator="," close=")">
#{partsIds}
</foreach>
</delete>
@@ -309,13 +307,20 @@
<update id="updateParts">
update order_item set package_id = 0 where parts_id =#{partsId} and package_id = #{packageId};
</update>
<select id="selectBodyName" resultType="java.lang.String" parameterType="java.lang.Long">
select ob.room_name
from order_item oi
join order_body ob on oi.body_id = ob.id
where oi.plate_id = #{plateId};
-- select ob.room_name
-- from order_item oi
-- join order_body ob on oi.body_id = ob.id
-- where oi.plate_id = #{plateId};
</select>
@@ -331,17 +336,17 @@
<select id="selectOrderPlateDetails"
parameterType="java.lang.Long">
select
count(case
when oi.package_id !=0 and oi.parts_id = 0 then oi.plate_id end )as plateProcessedNum,
count(
case
when oi.plate_id !=0 then oi.plate_id end
)as plateNum
from order_item oi
where oi.order_id = #{orderId};
-- select
--
-- count(case
-- when oi.package_id !=0 and oi.parts_id = 0 then oi.plate_id end )as plateProcessedNum,
--
-- count(
-- case
-- when oi.plate_id !=0 then oi.plate_id end
-- )as plateNum
-- from order_item oi
-- where oi.order_id = #{orderId};
</select>
@@ -60,11 +60,15 @@
parameterType="java.lang.Long"
resultMap="PartsListMap">
select
id as partsId,name,model,spec,count(name) as num,unit,brand,factory,remark
from order_parts where order_id = #{orderId} and organ_id = #{organId}
group by partsId,name,model,spec,unit,brand,factory,remark;
select distinct
op.id as partsId,op.name,op.model,op.spec,count(op.name) as num,op.unit,op.brand,op.factory,op.remark
from order_parts op
join order_item oi on op.id = oi.parts_id and op.organ_id = oi.organ_id
where op.order_id = #{orderId} and oi.package_id = 0
group by partsId,op.name,op.model,op.spec,op.unit,op.brand,op.factory,op.remark;
</select>
@@ -77,7 +81,7 @@
resultMap="PartsListMap">
select
select distinct
op.id as partsId,
op.name as name,
op.model as model ,
@@ -103,8 +107,12 @@
<update id="deleteOrderParts"
parameterType="java.lang.Long">
update order_parts op set op.deleted = true where op.id in (
select oi.parts_id from order_item oi where package_id =#{packageId});
update order_parts op set op.deleted = true where op.id in
<foreach item="id" collection="partsIds" open="(" separator="," close=")">
#{id}
</foreach>
</update>
@@ -23,6 +23,12 @@ public class OrganRespVO {
@ExcelProperty("组织名")
private String name;
@Schema(description = "组织代码", requiredMode = Schema.RequiredMode.REQUIRED, example = "chenfeng")
private String code;
@Schema(description = "地址", requiredMode = Schema.RequiredMode.REQUIRED)
private String address;
@Schema(description = "联系人", requiredMode = Schema.RequiredMode.REQUIRED, example = "晨丰")
@ExcelProperty("联系人")
private String contactName;
@@ -25,6 +25,6 @@ public class SystemPermissionRefreshRedisListener extends AbstractRedisSimpleMes
@Override
public void onMessage(Message message, byte[] bytes) {
securityFrameworkService.invalidateAll();
securityFrameworkService.invalidateAllPermissionsCache();
}
}
@@ -52,6 +52,17 @@ public class OAuth2AccessTokenRedisDAO {
stringRedisTemplate.delete(redisKeys);
}
/**
* 设置过期时间
*
* @param accessToken 访问令牌
* @param timeout 过期时间
* @param unit 时间单位
*/
public void expire(String accessToken, long timeout, final TimeUnit unit) {
stringRedisTemplate.expire(formatKey(accessToken), timeout, unit);
}
private static String formatKey(String accessToken) {
return String.format(RedisKeyConstants.OAUTH2_ACCESS_TOKEN, accessToken);
}
@@ -21,6 +21,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
import java.util.concurrent.TimeUnit;
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception0;
import static com.cf.imes.framework.common.util.collection.CollectionUtils.convertSet;
@@ -111,7 +112,7 @@ public class OAuth2TokenServiceImpl implements OAuth2TokenService {
if(accessTokenDO != null){
// 有令牌的校验,代表有接口访问,延长令牌的过期时间(30分钟)
oauth2AccessTokenRedisDAO.set(accessTokenDO.setExpiresTime(LocalDateTime.now().plusSeconds(1800)));
oauth2AccessTokenRedisDAO.expire(accessToken, 1800, TimeUnit.SECONDS);
}
return accessTokenDO;
}
@@ -124,7 +125,7 @@ public class OAuth2TokenServiceImpl implements OAuth2TokenService {
}
// if (DateUtils.isExpired(accessTokenDO.getExpiresTime())) {
// throw exception0(GlobalErrorCodeConstants.UNAUTHORIZED.getCode(), "访问令牌已过期");
// }
return accessTokenDO;
}