feat: 三方出入库明细功能

dev_20240306
chenhc 1 year ago
parent d4ac5e9fcf
commit 96dba85918

@ -309,4 +309,12 @@ public class Constant {
*
*/
public static final String THIRD_ORDER_SUBMIT = "thirdOrderSubmit";
/**
*
*/
public static final Integer THR_INV_SF_ORDER_TYPE = 1;
public static final Integer THR_INV_PH_ORDER_TYPE = 2;
public static final Integer THR_INV_GH_ORDER_TYPE = 3;
}

@ -108,4 +108,16 @@ public class ThrInvOrderController {
return ResultVOUtils.error(500, "生成失败!");
}
@AuthRuleAnnotation("")
@PostMapping("/udiwms/thrsys/refreshOrder")
public BaseResponse refreshOrder(@RequestBody @Valid RefreshOrderRequest refreshOrderRequest, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
if (thrInvOrderService.refreshOrder(refreshOrderRequest)){
return ResultVOUtils.success("刷新成功");
}
return ResultVOUtils.error(500, "刷新失败!");
}
}

@ -6,6 +6,7 @@ import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
import com.glxp.api.entity.thrsys.ThrInvOrderDetail;
import com.glxp.api.req.thrsys.FilterThrInvOrderDetailRequest;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -24,4 +25,6 @@ public interface ThrInvOrderDetailMapper extends BaseMapperPlus<ThrInvOrderDetai
int updateByPrimaryKey(ThrInvOrderDetail record);
List<ThrInvOrderDetail> filterThrOrderDetailDetail(FilterThrInvOrderDetailRequest filterThrInvOrderDetailRequest);
int deleteBatchByThrCodeIds(@Param("list") List<String> delThrCodes);
}

@ -103,6 +103,21 @@ public class ThrInvOrder implements Serializable {
*/
private String remark;
/**
* 123
*/
private Integer sourceType;
/**
*
*/
private String exMsg;
/**
*
*/
private Integer skProject;
private static final long serialVersionUID = 1L;
}

@ -78,7 +78,39 @@ public class ErpInvClient {
return responseList;
}
public BaseResponse<PageSimpleResponse<ThrInvResultResponse>> getInvResult(FilterInvProductRequest invProductRequest) {
public BaseResponse<PageSimpleResponse<ThrInvResultResponse>> getInvResultSf(FilterInvProductRequest invProductRequest) {
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(invProductRequest.getThirdSys());
// String url = basicThirdSysEntity.getThridUrl() + invProductRequest.getThirdSysUrlValue();
String url = "http://192.168.0.166:9997/udiwms/erp/inv/getInvResult";
try {
String response = httpOkClient.uCloudPost(url, invProductRequest);
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> listBaseResponse =
JSONObject.parseObject(response, new TypeReference<BaseResponse<PageSimpleResponse<ThrInvResultResponse>>>() {
});
return listBaseResponse;
} catch (Exception e) {
log.error("获取第三方库存明细异常", e);
return ResultVOUtils.error(500, "连接第三方系统接口服务出错");
}
}
public BaseResponse<PageSimpleResponse<ThrInvResultResponse>> getInvResultPh(FilterInvProductRequest invProductRequest) {
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(invProductRequest.getThirdSys());
// String url = basicThirdSysEntity.getThridUrl() + invProductRequest.getThirdSysUrlValue();
String url = "http://192.168.0.166:9997/udiwms/erp/inv/getInvResult";
try {
String response = httpOkClient.uCloudPost(url, invProductRequest);
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> listBaseResponse =
JSONObject.parseObject(response, new TypeReference<BaseResponse<PageSimpleResponse<ThrInvResultResponse>>>() {
});
return listBaseResponse;
} catch (Exception e) {
log.error("获取第三方库存明细异常", e);
return ResultVOUtils.error(500, "连接第三方系统接口服务出错");
}
}
public BaseResponse<PageSimpleResponse<ThrInvResultResponse>> getInvResultGh(FilterInvProductRequest invProductRequest) {
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(invProductRequest.getThirdSys());
// String url = basicThirdSysEntity.getThridUrl() + invProductRequest.getThirdSysUrlValue();
String url = "http://192.168.0.166:9997/udiwms/erp/inv/getInvResult";

@ -29,4 +29,8 @@ public class FilterThrInvOrderRequest extends ListPageRequest {
*
*/
private String billType;
/**
* 123
*/
private Integer sourceType;
}

@ -0,0 +1,15 @@
package com.glxp.api.req.thrsys;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
@Data
public class RefreshOrderRequest {
/**
*
*/
@NotEmpty(message = "单据号不能为空!")
private String billNo;
}

@ -139,7 +139,7 @@ public class StockCompareServiceImpl extends CustomServiceImpl<StockCompareMappe
@Override
public void dlThrProduct(FilterInvProductRequest filterInvProductRequest) {
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> baseResponse = erpInvClient.getInvResult(filterInvProductRequest);
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> baseResponse = erpInvClient.getInvResultSf(filterInvProductRequest);
if (baseResponse.getCode() == 20000) {
List<ThrInvResultResponse> list = baseResponse.getData().getList();
list.forEach(item -> {

@ -5,6 +5,7 @@ import com.glxp.api.entity.thrsys.ThrSystemDetailEntity;
import com.glxp.api.req.inv.FilterInvProductRequest;
import com.glxp.api.req.thrsys.FilterThrInvOrderRequest;
import com.glxp.api.req.thrsys.GenerateOrderRequest;
import com.glxp.api.req.thrsys.RefreshOrderRequest;
import java.util.List;
@ -13,7 +14,12 @@ public interface ThrInvOrderService {
/**
*
*/
public void handleExternalThrInvOrder(FilterInvProductRequest filterInvProductRequest);
public void handleExternalThrInvOrderSf(FilterInvProductRequest filterInvProductRequest);
/**
*
*/
public void handleExternalThrInvOrderPh(FilterInvProductRequest filterInvProductRequest);
void downloadInvOrder(ThrSystemDetailEntity thrSystemDetailEntity);
@ -32,4 +38,11 @@ public interface ThrInvOrderService {
* @return
*/
boolean generateOrder(GenerateOrderRequest generateOrderRequest);
/**
*
* @param refreshOrderRequest
* @return
*/
boolean refreshOrder(RefreshOrderRequest refreshOrderRequest);
}

@ -27,6 +27,7 @@ import com.glxp.api.http.ErpInvClient;
import com.glxp.api.req.inv.FilterInvProductRequest;
import com.glxp.api.req.thrsys.FilterThrInvOrderRequest;
import com.glxp.api.req.thrsys.GenerateOrderRequest;
import com.glxp.api.req.thrsys.RefreshOrderRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.MainIdRelIdAndProductResponse;
import com.glxp.api.res.inv.ThrInvResultResponse;
@ -88,20 +89,45 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
@Override
public void handleExternalThrInvOrder(FilterInvProductRequest filterInvProductRequest) {
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> baseResponse = erpInvClient.getInvResult(filterInvProductRequest);
public void handleExternalThrInvOrderSf(FilterInvProductRequest filterInvProductRequest) {
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> baseResponse = erpInvClient.getInvResultSf(filterInvProductRequest);
if (baseResponse.getCode() == 20000) {
List<ThrInvResultResponse> list = baseResponse.getData().getList();
if (CollectionUtil.isNotEmpty(list)) {
String billNo = generateBillNo(filterInvProductRequest);//单据号
//处理 返回实体 转换成 单据 和 单据明细
ThrInvOrder thrInvOrder = new ThrInvOrder();
List<ThrInvOrderDetail> thrInvOrderDetails = new ArrayList<>();
String thirdSys = filterInvProductRequest.getThirdSys();
handleExternalConvertThrInvOrderDetail(list, thrInvOrderDetails, billNo, thirdSys);
handleExternalConvertThrInvOrderDetail(list, thrInvOrderDetails, billNo, thirdSys,thrInvOrder);
if (CollectionUtil.isNotEmpty(thrInvOrderDetails)) {
handleExternalConvertThrInvOrder(billNo, filterInvProductRequest, thrInvOrder, list.get(0),Constant.THR_INV_SF_ORDER_TYPE);
//保存数据
thrInvOrderMapper.insert(thrInvOrder);
thrInvOrderDetailMapper.insertBatch(thrInvOrderDetails);
}
}
}
}
@Override
public void handleExternalThrInvOrderPh(FilterInvProductRequest filterInvProductRequest) {
BaseResponse<PageSimpleResponse<ThrInvResultResponse>> baseResponse = erpInvClient.getInvResultPh(filterInvProductRequest);
if (baseResponse.getCode() == 20000) {
List<ThrInvResultResponse> list = baseResponse.getData().getList();
if (CollectionUtil.isNotEmpty(list)) {
String billNo = generateBillNo(filterInvProductRequest);//单据号
//处理 返回实体 转换成 单据 和 单据明细
ThrInvOrder thrInvOrder = new ThrInvOrder();
handleExternalConvertThrInvOrder(billNo, filterInvProductRequest, thrInvOrder, list.get(0));
List<ThrInvOrderDetail> thrInvOrderDetails = new ArrayList<>();
String thirdSys = filterInvProductRequest.getThirdSys();
handleExternalConvertThrInvOrderDetail(list, thrInvOrderDetails, billNo, thirdSys,thrInvOrder);
if (CollectionUtil.isNotEmpty(thrInvOrderDetails)) {
handleExternalConvertThrInvOrder(billNo, filterInvProductRequest, thrInvOrder, list.get(0),Constant.THR_INV_PH_ORDER_TYPE);
//保存数据
thrInvOrderMapper.insert(thrInvOrder);
@ -113,7 +139,7 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
@Override
public void downloadInvOrder(ThrSystemDetailEntity thrSystemDetailEntity) {
log.info("自动抓取第三方出入库明细生成单据定时任务开始");
log.info("自动抓取第三方收费出入库明细生成单据定时任务开始");
FilterInvProductRequest filterInvProductRequest = new FilterInvProductRequest();
filterInvProductRequest.setThirdSys(thrSystemDetailEntity.getThirdSysFk());
filterInvProductRequest.setThirdSysUrlValue(thrSystemDetailEntity.getValue());
@ -121,8 +147,8 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
filterInvProductRequest.setStartDate(stringToDate(days + " 00:00:00"));
filterInvProductRequest.setEndDate(stringToDate(days + " 23:59:59"));
handleExternalThrInvOrder(filterInvProductRequest);
log.info("自动抓取第三方出入库明细生成单据定时任务结束");
handleExternalThrInvOrderSf(filterInvProductRequest);
log.info("自动抓取第三方收费出入库明细生成单据定时任务结束");
}
@ -205,6 +231,116 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
return true;
}
@Override
public boolean refreshOrder(RefreshOrderRequest refreshOrderRequest) {
String billNo = refreshOrderRequest.getBillNo();
//通过单号获取单据信息
QueryWrapper<ThrInvOrder> qw = new QueryWrapper<>();
qw.eq("billNo", billNo);
ThrInvOrder thrInvOrder = thrInvOrderMapper.selectOne(qw);
if (Objects.isNull(thrInvOrder)) return false;
//通过单号获取单据明细信息
QueryWrapper<ThrInvOrderDetail> qwd = new QueryWrapper<>();
qwd.eq("orderIdFk", billNo);
List<ThrInvOrderDetail> thrInvOrderDetails = thrInvOrderDetailMapper.selectList(qwd);
if (CollectionUtil.isEmpty(thrInvOrderDetails)) return false;
List<ThrInvOrderDetail> addThrInvOrderDetails = new ArrayList<>();
List<ThrInvOrderDetail> updateThrInvOrderDetails = new ArrayList<>();
List<Long> delThrInvOrderDetailIds = new ArrayList<>();
List<String> delThrCodes = new ArrayList<>();
StringBuilder exmsg = new StringBuilder("");
Integer skProject = thrInvOrder.getSkProject();
if (skProject == 1){//走组套
thrInvOrderDetails.forEach(item -> {
Long relId = item.getRelId();
if (ObjectUtil.isNull(relId)){
//通过thrCode获取到项目组套
String thrCode = item.getThrCode();
Integer count = Integer.valueOf(item.getReCount());
List<BasicSkProjectDetailEntity> skProjectDetailEntityList = basicDestinyRelService.filterDestinyRelListByPId(thrCode);
if (CollectionUtil.isNotEmpty(skProjectDetailEntityList) && count > 0) {
delThrInvOrderDetailIds.add(item.getId());
skProjectDetailEntityList.forEach(sk -> {
ThrInvOrderDetail thrInvOrderDetail = new ThrInvOrderDetail();
BeanUtils.copyProperties(item, thrInvOrderDetail);
thrInvOrderDetail.setOrderIdFk(billNo);
thrInvOrderDetail.setRelId(sk.getRelId());
Integer skCount = sk.getCount();
if (skCount != null && skCount > 0) {
thrInvOrderDetail.setReCount(String.valueOf(skCount * count));
}
addThrInvOrderDetails.add(thrInvOrderDetail);
delThrCodes.add(thrCode);
});
}else {
exmsg.append(thrCode+",");
}
}
});
if (exmsg.length() > 0){
exmsg.deleteCharAt(exmsg.length()-1);
exmsg.insert(0,"以下第三方项目编码未匹配成功:");
thrInvOrder.setExMsg(String.valueOf(exmsg));
}else {
thrInvOrder.setExMsg("");
}
}else {//不走组套
String thirdSysFk = thrInvOrder.getThirdSysFk();
List<String> thrCodes = thrInvOrderDetails.stream().filter(x->ObjectUtil.isNull(x.getRelId()))
.map(ThrInvOrderDetail::getThrCode).collect(Collectors.toList());
MainIdRelIdAndProductResponse map = udiRelevanceService.selectMainIdRelIdAndProductMap(thrCodes, thirdSysFk);
Map<String, Long> mainIdRelIdMap = map.getMainIdRelIdMap();
thrInvOrderDetails.forEach(item -> {
if (ObjectUtil.isNull(item.getRelId())){
String thrCode = item.getThrCode();
Long relId = mainIdRelIdMap.get(thrCode);
if (ObjectUtil.isNotNull(relId)){
item.setRelId(relId);
updateThrInvOrderDetails.add(item);
}else {
exmsg.append(thrCode+",");
}
}
});
if (exmsg.length() > 0){
exmsg.deleteCharAt(exmsg.length()-1);
exmsg.insert(0,"以下第三方耗材字典未匹配成功:");
thrInvOrder.setExMsg(String.valueOf(exmsg));
}else {
thrInvOrder.setExMsg("");
}
}
//更新单据信息
thrInvOrderMapper.updateById(thrInvOrder);
//删除原来的明细
if (CollectionUtil.isNotEmpty(delThrInvOrderDetailIds)){
thrInvOrderDetailMapper.deleteBatchIds(delThrInvOrderDetailIds);
}
//删除原来的明细
if (CollectionUtil.isNotEmpty(delThrCodes)){
thrInvOrderDetailMapper.deleteBatchByThrCodeIds(delThrCodes);
}
//新增明细
if (CollectionUtil.isNotEmpty(addThrInvOrderDetails)){
thrInvOrderDetailMapper.insertBatch(addThrInvOrderDetails);
}
//更新明细
if (CollectionUtil.isNotEmpty(updateThrInvOrderDetails)){
thrInvOrderDetailMapper.updateBatchById(updateThrInvOrderDetails);
}
return true;
}
/**
* relIdfalse
*
@ -290,7 +426,7 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
* @param thrInvOrder
* @param thrInvResultResponse
*/
private void handleExternalConvertThrInvOrder(String billNo, FilterInvProductRequest filterInvProductRequest, ThrInvOrder thrInvOrder, ThrInvResultResponse thrInvResultResponse) {
private void handleExternalConvertThrInvOrder(String billNo, FilterInvProductRequest filterInvProductRequest, ThrInvOrder thrInvOrder, ThrInvResultResponse thrInvResultResponse,Integer SourceType) {
Date newDate = new Date();
thrInvOrder.setBillNo(billNo);//单据号
@ -304,6 +440,7 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
thrInvOrder.setInvCode(thrInvResultResponse.getInvCode());//仓库代码
thrInvOrder.setSpaceCode(thrInvResultResponse.getSpaceCode());//货位编码
thrInvOrder.setStatus(ConstantStatus.SFIO_DRAFT);//单据状态 草稿
thrInvOrder.setSourceType(SourceType);//来源类型
thrInvOrder.setCreateTime(newDate);
thrInvOrder.setCreateUser("外部系统下载");
@ -316,13 +453,14 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
* @param thrInvOrderDetails
* @param billNo
*/
private void handleExternalConvertThrInvOrderDetail(List<ThrInvResultResponse> list, List<ThrInvOrderDetail> thrInvOrderDetails, String billNo, String thirdSys) {
private void handleExternalConvertThrInvOrderDetail(List<ThrInvResultResponse> list, List<ThrInvOrderDetail> thrInvOrderDetails, String billNo, String thirdSys,ThrInvOrder thrInvOrder) {
Integer inv_set_enable = Integer.valueOf(systemParamConfigService.selectValueByParamKey("inv_set_enable"));
if (inv_set_enable == null || inv_set_enable == 0) {//直接明细 不走项目组套
thrInvOrder.setSkProject(0);
List<String> thrCodes = list.stream().map(ThrInvResultResponse::getThrCode).collect(Collectors.toList());
MainIdRelIdAndProductResponse map = udiRelevanceService.selectMainIdRelIdAndProductMap(thrCodes, thirdSys);
Map<String, Long> mainIdRelIdMap = map.getMainIdRelIdMap();
StringBuilder exmsg = new StringBuilder("");
list.forEach(item -> {
String mainAction = item.getMainAction();
@ -341,8 +479,19 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
thrInvOrderDetail.setThrCode(thrCode);
thrInvOrderDetail.setReCount(String.valueOf(count));
thrInvOrderDetails.add(thrInvOrderDetail);
if (ObjectUtil.isNull(relId)){
exmsg.append(thrCode+",");
}
});
if (exmsg.length() > 0){
exmsg.deleteCharAt(exmsg.length()-1);
exmsg.insert(0,"以下第三方耗材字典未匹配成功:");
thrInvOrder.setExMsg(String.valueOf(exmsg));
}
} else {//走项目组套
thrInvOrder.setSkProject(1);
StringBuilder exmsg = new StringBuilder("");
list.forEach(item -> {
String thrCode = item.getThrCode();
String mainAction = item.getMainAction();
@ -367,8 +516,21 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService {
}
thrInvOrderDetails.add(thrInvOrderDetail);
});
}else {
exmsg.append(thrCode+",");
ThrInvOrderDetail thrInvOrderDetail = new ThrInvOrderDetail();
BeanUtils.copyProperties(item, thrInvOrderDetail);
thrInvOrderDetail.setOrderIdFk(billNo);
thrInvOrderDetail.setReCount(String.valueOf(count));
thrInvOrderDetails.add(thrInvOrderDetail);
}
});
if (exmsg.length() > 0){
exmsg.deleteCharAt(exmsg.length()-1);
exmsg.insert(0,"以下第三方项目编码未匹配成功:");
thrInvOrder.setExMsg(String.valueOf(exmsg));
}
}
}

@ -288,7 +288,7 @@
<select id="filterDestinyRelListByPId" resultType="com.glxp.api.entity.basic.BasicSkProjectDetailEntity">
select pd.*
from basic_sk_project p
LEFT join basic_sk_project_detail pd ON pd.pId = p.id
RIGHT join basic_sk_project_detail pd ON pd.pId = p.id
where p.code = #{thrCode}
</select>

@ -364,4 +364,16 @@
</if>
</where>
</select>
<delete id="deleteBatchByThrCodeIds">
delete from thr_inv_order_detail
where thrCode in
<if test="list != null and list.size() != 0">
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
</delete>
</mapper>

@ -21,11 +21,14 @@
<result column="updateTime" jdbcType="TIMESTAMP" property="updateTime" />
<result column="updateUser" jdbcType="VARCHAR" property="updateUser" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="sourceType" jdbcType="INTEGER" property="sourceType" />
<result column="exMsg" jdbcType="VARCHAR" property="exMsg" />
<result column="skProject" jdbcType="INTEGER" property="skProject" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, billNo, billDate, startDate, endDate, mainAction, billType,thirdSysFk, deptCode, invCode,
spaceCode, `status`, createTime, `createUser`, updateTime, updateUser, remark
spaceCode, `status`, createTime, `createUser`, updateTime, updateUser, remark,sourceType,exMsg,skProject
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
<!--@mbg.generated-->
@ -45,13 +48,14 @@
endDate, mainAction, billType,thirdSysFk,
deptCode, invCode, spaceCode,
`status`, createTime, `createUser`,
updateTime, updateUser, remark
updateTime, updateUser, remark,sourceType,exMsg,skProject
)
values (#{billNo,jdbcType=VARCHAR}, #{billDate,jdbcType=TIMESTAMP}, #{startDate,jdbcType=TIMESTAMP},
#{endDate,jdbcType=TIMESTAMP}, #{mainAction,jdbcType=VARCHAR}, #{billType,jdbcType=VARCHAR},#{thirdSysFk,jdbcType=VARCHAR},
#{deptCode,jdbcType=VARCHAR}, #{invCode,jdbcType=VARCHAR}, #{spaceCode,jdbcType=VARCHAR},
#{status,jdbcType=TINYINT}, #{createTime,jdbcType=TIMESTAMP}, #{createUser,jdbcType=VARCHAR},
#{updateTime,jdbcType=TIMESTAMP}, #{updateUser,jdbcType=VARCHAR}, #{remark,jdbcType=VARCHAR}
#{updateTime,jdbcType=TIMESTAMP}, #{updateUser,jdbcType=VARCHAR}, #{remark,jdbcType=VARCHAR}, #{sourceType,jdbcType=INTEGER}
, #{exMsg,jdbcType=VARCHAR}, #{skProject,jdbcType=INTEGER}
)
</insert>
<insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.glxp.api.entity.thrsys.ThrInvOrder" useGeneratedKeys="true">
@ -106,6 +110,15 @@
<if test="remark != null">
remark,
</if>
<if test="sourceType != null">
sourceType,
</if>
<if test="exMsg != null">
exMsg,
</if>
<if test="skProject != null">
skProject,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="billNo != null">
@ -156,6 +169,15 @@
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
<if test="sourceType != null">
#{sourceType,jdbcType=INTEGER},
</if>
<if test="exMsg != null">
#{exMsg,jdbcType=VARCHAR},
</if>
<if test="skProject != null">
#{skProject,jdbcType=INTEGER},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.glxp.api.entity.thrsys.ThrInvOrder">
@ -210,6 +232,15 @@
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
<if test="sourceType != null">
sourceType = #{sourceType,jdbcType=INTEGER},
</if>
<if test="exMsg != null">
exMsg = #{exMsg,jdbcType=VARCHAR},
</if>
<if test="skProject != null">
skProject = #{skProject,jdbcType=INTEGER},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
@ -231,7 +262,10 @@
`createUser` = #{createUser,jdbcType=VARCHAR},
updateTime = #{updateTime,jdbcType=TIMESTAMP},
updateUser = #{updateUser,jdbcType=VARCHAR},
remark = #{remark,jdbcType=VARCHAR}
remark = #{remark,jdbcType=VARCHAR},
sourceType = #{sourceType,jdbcType=INTEGER},
exMsg = #{exMsg,jdbcType=VARCHAR},
skProject = #{skProject,jdbcType=INTEGER}
where id = #{id,jdbcType=INTEGER}
</update>
@ -259,6 +293,9 @@
and DATE_FORMAT(billdate, '%Y-%m-%d') <= DATE_FORMAT(#{endDate}, '%Y-%m-%d')
]]>
</if>
<if test="sourceType != '' and sourceType != null">
AND sourceType = #{sourceType}
</if>
</where>
ORDER BY thr_inv_order.billdate DESC
</select>

@ -576,3 +576,19 @@ INSERT ignore INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `
VALUES (2086, '出入库明细', 1608, 8, 'thrInvOrder', NULL, NULL, 1, 0, 'M', '0', '0', NULL, '', '超级用户', '2024-02-28 11:47:10', NULL, NULL, NULL);
INSERT ignore INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
VALUES (2087, '出入库查询', 2086, 1, 'thirdSys/invOrder/thrInvOrder', 'thirdSys/invOrder/thrInvOrder', NULL, 1, 0, 'C', '0', '0', 'thirdSys:invOrder:thrInvOrder', NULL, '超级用户', '2024-02-28 11:51:21', NULL, NULL, NULL);
UPDATE auth_menu SET `menu_name` = '收费出入库明细', `parent_id` = 2086, `order_num` = 1,
`path` = 'thirdSys/invOrder/thrInvOrder', `component` = 'thirdSys/invOrder/thrInvOrder',
`query_param` = NULL, `is_frame` = 1, `is_cache` = 0, `menu_type` = 'C', `visible` = '0',
`status` = '0', `perms` = 'thirdSys:invOrder:thrInvOrder', `icon` = NULL, `create_by` = '超级用户', `create_time` = '2024-02-28 11:51:21',
`update_by` = NULL, `update_time` = NULL, `remark` = NULL WHERE `menu_id` = 2087;
INSERT ignore INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
VALUES (2088, '普耗出入库明细', 2086, 1, 'thirdSys/invOrder/thrInvPhOrder', 'thirdSys/invOrder/thrInvPhOrder', NULL, 1, 0, 'C', '0', '0', 'thirdSys:invOrder:thrInvPhOrder', NULL, '超级用户', '2024-02-28 11:51:21', NULL, NULL, NULL);
INSERT ignore INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
VALUES (2089, '高耗出入库明细', 2086, 1, 'thirdSys/invOrder/thrInvGhOrder', 'thirdSys/invOrder/thrInvGhOrder', NULL, 1, 0, 'C', '0', '0', 'thirdSys:invOrder:thrInvGhOrder', NULL, '超级用户', '2024-02-28 11:51:21', NULL, NULL, NULL);
CALL Pro_Temp_ColumnWork('thr_inv_order', 'sourceType', ' int(0) NULL DEFAULT NULL COMMENT ''来源类型1收费2普耗3高耗'' AFTER `remark`', 1);
CALL Pro_Temp_ColumnWork('thr_inv_order', 'exMsg', ' varchar(510) NULL DEFAULT NULL COMMENT ''单据异常信息'' AFTER `remark`', 1);
CALL Pro_Temp_ColumnWork('thr_inv_order', 'skProject',' int(0) NULL DEFAULT NULL COMMENT ''是否组套'' AFTER `remark`', 1);

Loading…
Cancel
Save