Merge remote-tracking branch 'origin/master'

master
郑明梁 2 years ago
commit 0c1da21b58

@ -0,0 +1,31 @@
package com.glxp.api.common.req;
import lombok.Data;
/**
*
*/
@Data
public class UpdateRequest {
/**
* ID
*/
private String id;
/**
*
*/
private String orderId;
/**
*
*/
private Integer status;
/**
*
*/
private String auditOpinion;
}

@ -12,6 +12,7 @@ import com.glxp.api.constant.Constant;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.auth.InvBusUserEntity;
import com.glxp.api.entity.auth.InvWarehouseEntity;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.basic.EntrustReceEntity;
import com.glxp.api.entity.inout.*;
@ -24,6 +25,7 @@ import com.glxp.api.res.inout.IoOrderDetailBizResponse;
import com.glxp.api.res.inout.IoOrderResponse;
import com.glxp.api.res.inout.PdaBusOrderResponse;
import com.glxp.api.service.auth.InvBusUserService;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.EntrustReceService;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.*;
@ -472,23 +474,36 @@ public class IoOrderController extends BaseController {
@Resource
GennerOrderUtils gennerOrderUtils;
@Resource
InvWarehouseService invWarehouseService;
@AuthRuleAnnotation("")
@PostMapping("/udiwms/stock/order/change")
public BaseResponse stockOrderChange(@RequestBody AddOrderChangeRequest addOrderChangeRequest) {
IoOrderEntity originOrder = orderService.findByBillNo(addOrderChangeRequest.getOrderId());
IoOrderEntity newOrder = new IoOrderEntity();
List<IoCodeEntity> originCodes = codeService.findByOrderId(originOrder.getBillNo());
newOrder.setCreateTime(new Date());
newOrder.setFromCorp(addOrderChangeRequest.getFromCorp());
newOrder.setFromInvCode(addOrderChangeRequest.getFromInvCode());
newOrder.setFromDeptCode(addOrderChangeRequest.getFromDeptCode());
if (addOrderChangeRequest.getFromInvCode() != null) {
InvWarehouseEntity fromInv = invWarehouseService.findByInvSubByCode(addOrderChangeRequest.getFromInvCode());
newOrder.setFromDeptCode(fromInv.getParentId());
}
InvWarehouseEntity invWarehouseEntity = invWarehouseService.findByInvSubByCode(addOrderChangeRequest.getInvCode());
newOrder.setInvCode(addOrderChangeRequest.getInvCode());
newOrder.setDeptCode(addOrderChangeRequest.getDeptCode());
newOrder.setDeptCode(invWarehouseEntity.getParentId());
newOrder.setCorpOrderId(CustomUtil.getId() + "x");
newOrder.setMainAction(addOrderChangeRequest.getMainAction());
BasicBussinessTypeEntity basicBussinessTypeEntity = basicBussinessTypeService.findByAction(addOrderChangeRequest.getAction());
newOrder.setAction(addOrderChangeRequest.getAction());
newOrder.setMainAction(basicBussinessTypeEntity.getMainAction());
newOrder.setExportStatus(0); //设置导出状态为未导出
newOrder.setDealStatus(ConstantStatus.ORDER_DEAL_DRAFT);//设置单据未草稿状态
newOrder.setStatus(ConstantStatus.ORDER_STATUS_TEMP_SAVE); //设置验收状态为未验收

@ -9,7 +9,7 @@ import com.glxp.api.req.inv.AddDeptDeviceRequest;
import com.glxp.api.req.inv.FilterDeptDeviceRequest;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.res.inv.DeptDeviceDetailResponse;
import com.glxp.api.service.inv.impl.DeptDeviceDetailService;
import com.glxp.api.service.inv.DeptDeviceDetailService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;

@ -0,0 +1,116 @@
package com.glxp.api.controller.inv;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.common.req.UpdateRequest;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.inv.DeviceInspectOrderEntity;
import com.glxp.api.req.inv.AddDeviceInspectOrderRequest;
import com.glxp.api.req.inv.FilterDeviceInspectOrderRequest;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.res.inv.DeviceInspectOrderResponse;
import com.glxp.api.service.inv.DeviceInspectOrderService;
import lombok.extern.slf4j.Slf4j;
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;
/**
*
*/
@Slf4j
@RestController
public class DeviceInspectOrderController {
@Resource
private DeviceInspectOrderService deviceInspectOrderService;
/**
*
*
* @param deviceInspectOrderRequest
* @return
*/
@GetMapping("/udiwms/inv/device/inspect/order/filter")
public BaseResponse filterList(FilterDeviceInspectOrderRequest deviceInspectOrderRequest) {
List<DeviceInspectOrderResponse> list = deviceInspectOrderService.filterList(deviceInspectOrderRequest);
PageInfo<DeviceInspectOrderResponse> pageInfo = new PageInfo<>(list);
return ResultVOUtils.page(pageInfo);
}
/**
*
*
* @param addDeviceInspectOrderRequest
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/order/add")
public BaseResponse addDeviceInspectOrder(@RequestBody AddDeviceInspectOrderRequest addDeviceInspectOrderRequest) {
if (null == addDeviceInspectOrderRequest) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectOrderService.addDeviceInspectOrder(addDeviceInspectOrderRequest);
}
/**
*
*
* @param deviceInspectOrderEntity
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/order/update")
public BaseResponse updateDeviceInspectOrder(@RequestBody DeviceInspectOrderEntity deviceInspectOrderEntity) {
if (null == deviceInspectOrderEntity) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectOrderService.updateDeviceInspectOrder(deviceInspectOrderEntity);
}
/**
*
*
* @param updateRequest
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/order/submitAudit")
public BaseResponse submitAudit(@RequestBody UpdateRequest updateRequest) {
if (null == updateRequest || StrUtil.isBlank(updateRequest.getOrderId())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectOrderService.submitAudit(updateRequest.getOrderId());
}
/**
*
*
* @param updateRequest
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/order/updateStatus")
public BaseResponse updateStatus(@RequestBody UpdateRequest updateRequest) {
if (null == updateRequest || StrUtil.isBlank(updateRequest.getOrderId())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectOrderService.updateStatus(updateRequest.getOrderId(), updateRequest.getStatus());
}
/**
*
*
* @param deleteRequest
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/order/delete")
public BaseResponse deleteDeviceInspectOrder(@RequestBody DeleteRequest deleteRequest) {
if (null == deleteRequest || StrUtil.isBlank(deleteRequest.getId())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectOrderService.deleteOrder(deleteRequest.getId());
}
}

@ -0,0 +1,116 @@
package com.glxp.api.controller.inv;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.common.req.UpdateRequest;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.inv.DeviceInspectPlanEntity;
import com.glxp.api.req.inv.AddDeviceInspectOrderRequest;
import com.glxp.api.req.inv.FilterDeviceInspectPlanRequest;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.res.inv.DeviceInspectPlanResponse;
import com.glxp.api.service.inv.DeviceInspectPlanService;
import lombok.extern.slf4j.Slf4j;
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;
/**
*
*/
@Slf4j
@RestController
public class DeviceInspectPlanController {
@Resource
private DeviceInspectPlanService deviceInspectPlanService;
/**
*
*
* @param filterDeviceInspectPlanRequest
* @return
*/
@GetMapping("/udiwms/inv/device/inspect/plan/filter")
public BaseResponse filterList(FilterDeviceInspectPlanRequest filterDeviceInspectPlanRequest) {
List<DeviceInspectPlanResponse> list = deviceInspectPlanService.filterList(filterDeviceInspectPlanRequest);
PageInfo<DeviceInspectPlanResponse> pageInfo = new PageInfo<>(list);
return ResultVOUtils.page(pageInfo);
}
/**
*
*
* @param addDeviceInspectOrderRequest
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/plan/addInspectPlan")
public BaseResponse addInspectPlan(@RequestBody AddDeviceInspectOrderRequest addDeviceInspectOrderRequest) {
if (null == addDeviceInspectOrderRequest || StrUtil.isBlank(addDeviceInspectOrderRequest.getCode())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectPlanService.addDeviceInspectPlan(addDeviceInspectOrderRequest);
}
/**
*
*
* @param deviceInspectPlanEntity
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/plan/updateInspectPlan")
public BaseResponse updateInspectPlan(@RequestBody DeviceInspectPlanEntity deviceInspectPlanEntity) {
if (null == deviceInspectPlanEntity) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectPlanService.updateDeviceInspectPlan(deviceInspectPlanEntity);
}
/**
*
*
* @param orderId
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/plan/submitAudit")
public BaseResponse submitAudit(@RequestBody UpdateRequest updateRequest) {
if (null == updateRequest || StrUtil.isBlank(updateRequest.getOrderId())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectPlanService.submitAudit(updateRequest.getOrderId());
}
/**
*
*
* @param updateRequest
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/plan/updateStatus")
public BaseResponse updateStatus(@RequestBody UpdateRequest updateRequest) {
if (null == updateRequest || StrUtil.isBlank(updateRequest.getOrderId())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectPlanService.updateStatus(updateRequest.getOrderId(), updateRequest.getStatus());
}
/**
*
*
* @param deleteRequest
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/plan/deleteInspectPlan")
public BaseResponse deleteInspectPlan(@RequestBody DeleteRequest deleteRequest) {
if (null == deleteRequest || StrUtil.isBlank(deleteRequest.getId())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectPlanService.deletePlan(deleteRequest.getId());
}
}

@ -0,0 +1,68 @@
package com.glxp.api.controller.inv;
import cn.hutool.core.util.StrUtil;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.inv.DeviceInspectSetEntity;
import com.glxp.api.req.inv.AddDeviceInspectSetRequest;
import com.glxp.api.res.inv.DeviceInspectSetResponse;
import com.glxp.api.service.inv.DeviceInspectSetService;
import lombok.extern.slf4j.Slf4j;
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;
/**
*
*/
@Slf4j
@RestController
public class DeviceInspectSetController {
@Resource
private DeviceInspectSetService deviceInspectSetService;
/**
*
*
* @param code
* @return
*/
@GetMapping("/udiwms/inv/device/inspect/set/findInspectSet")
public BaseResponse findInspectSet(String code) {
DeviceInspectSetResponse inspectSet = deviceInspectSetService.findInspectSet(code);
return ResultVOUtils.success(inspectSet);
}
/**
*
*
* @param addDeviceInspectSetRequest
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/set/addDeviceInspect")
public BaseResponse addDeviceInspect(@RequestBody AddDeviceInspectSetRequest addDeviceInspectSetRequest) {
if (null == addDeviceInspectSetRequest || StrUtil.isBlank(addDeviceInspectSetRequest.getCode())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectSetService.addDeviceInspect(addDeviceInspectSetRequest);
}
/**
*
*
* @param deviceInspectSetEntity
* @return
*/
@PostMapping("/udiwms/inv/device/inspect/set/updateInspectSet")
public BaseResponse updateInspectSet(@RequestBody DeviceInspectSetEntity deviceInspectSetEntity) {
if (null == deviceInspectSetEntity) {
return ResultVOUtils.paramVerifyFail();
}
return deviceInspectSetService.updateInspectSet(deviceInspectSetEntity);
}
}

@ -0,0 +1,115 @@
package com.glxp.api.controller.inv;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.common.req.UpdateRequest;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.inv.DeviceRepairOrderEntity;
import com.glxp.api.req.inv.AddDeviceRepairOrderRequest;
import com.glxp.api.req.inv.FilterDeviceRepairOrderRequest;
import com.glxp.api.req.system.DeleteRequest;
import com.glxp.api.res.inv.DeviceRepairOrderResponse;
import com.glxp.api.service.inv.DeviceRepairOrderService;
import lombok.extern.slf4j.Slf4j;
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;
/**
*
*/
@Slf4j
@RestController
public class DeviceRepairOrderController {
@Resource
private DeviceRepairOrderService deviceRepairOrderService;
/**
*
*
* @param deviceRepairOrderRequest
* @return
*/
@GetMapping("/udiwms/inv/device/repair/order/filter")
public BaseResponse filterList(FilterDeviceRepairOrderRequest deviceRepairOrderRequest) {
List<DeviceRepairOrderResponse> list = deviceRepairOrderService.filterList(deviceRepairOrderRequest);
PageInfo<DeviceRepairOrderResponse> pageInfo = new PageInfo<>(list);
return ResultVOUtils.page(pageInfo);
}
/**
*
*
* @param addDeviceRepairOrderRequest
* @return
*/
@PostMapping("/udiwms/inv/device/repair/order/addDeviceRepairOrder")
public BaseResponse addDeviceRepairOrder(@RequestBody AddDeviceRepairOrderRequest addDeviceRepairOrderRequest) {
if (null == addDeviceRepairOrderRequest || StrUtil.isBlank(addDeviceRepairOrderRequest.getCode())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceRepairOrderService.addDeviceRepairOrder(addDeviceRepairOrderRequest);
}
/**
*
*
* @param deviceRepairOrderEntity
* @return
*/
@PostMapping("/udiwms/inv/device/repair/order/updateDeviceRepairOrder")
public BaseResponse updateDeviceRepairOrder(@RequestBody DeviceRepairOrderEntity deviceRepairOrderEntity) {
if (null == deviceRepairOrderEntity || StrUtil.isBlank(deviceRepairOrderEntity.getCode())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceRepairOrderService.updateDeviceRepairOrder(deviceRepairOrderEntity);
}
/**
*
*
* @param updateRequest
* @return
*/
@PostMapping("/udiwms/inv/device/repair/order/submitAudit")
public BaseResponse submitAudit(@RequestBody UpdateRequest updateRequest) {
if (null == updateRequest || StrUtil.isBlank(updateRequest.getOrderId())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceRepairOrderService.submitAudit(updateRequest.getOrderId());
}
/**
*
*
* @param updateRequest
* @return
*/
@PostMapping("/udiwms/inv/device/repair/order/updateStatus")
public BaseResponse updateStatus(@RequestBody UpdateRequest updateRequest) {
if (null == updateRequest) {
return ResultVOUtils.paramVerifyFail();
}
return deviceRepairOrderService.updateStatus(updateRequest.getOrderId(), updateRequest.getStatus());
}
/**
*
* @param deleteRequest
* @return
*/
@PostMapping("/udiwms/inv/device/repair/order/deleteRepairOrder")
public BaseResponse deleteRepairOrder(@RequestBody DeleteRequest deleteRequest) {
if (null == deleteRequest || StrUtil.isBlank(deleteRequest.getId())) {
return ResultVOUtils.paramVerifyFail();
}
return deviceRepairOrderService.deleteRepairOrder(deleteRequest.getId());
}
}

@ -8,82 +8,72 @@ import java.util.Map;
/*获取表相关信息*/
@Mapper
public interface DbDao {
@Insert("${sql}")
int save(@Param("sql") String sql);
@Update("${sql}")
int update(@Param("sql") String sql);
@Delete("${sql}")
int delete(@Param("sql") String sql);
Map<String, Object> get(@Param("sql") String sql);
List<Map<String, Object>> list(Map<String, Object> map);
int count(Map<String, Object> map);
@Select("select table_name tableName, engine, table_comment tableComment, create_time createTime from information_schema.tables"
+ " where table_schema = (select database())")
List<Map<String, Object>> listMysql();
@Select("select tname as \"tableName\",'oracle' as \"engine\",tname as \"tableComment\",sysdate as \"createTime\" from tab where instr('BIN,ACT',substr(tname,1,3))<1")
List<Map<String, Object>> listOracle();
@Select("select name tableName, 'sqlserver' engine, name tableComment, crdate createTime from SYSOBJECTS"
+ " WHERE XTYPE='U' ORDER BY NAME")
List<Map<String, Object>> listSqlserver();
@Select("select count(*) from information_schema.tables where table_schema = (select database())")
int countMysql(Map<String, Object> map);
@Select("select count(*) from tab where tabtype='TABLE' and instr('BIN,ACT',substr(tname,1,3))<1")
int countOracle(Map<String, Object> map);
@Select("select count(*) from SYSOBJECTS where XTYPE='U'")
int countSqlserver(Map<String, Object> map);
@Select("select table_name tableName, engine, table_comment tableComment, create_time createTime from information_schema.tables \r\n"
+ " where table_schema = (select database()) and lower(table_name) = lower(#{tableName})")
Map<String, String> getMysql(String tableName);
@Select("select tname as \"tableName\",'oracle' \"engine\",tname \"tableComment\",sysdate \"createTime\" from tab \r\n"
+ " where tname= upper(#{tableName})")
Map<String, String> getOracle(String tableName);
@Select("select name tableName, 'sqlserver' engine, name tableComment, crdate createTime from SYSOBJECTS"
+ " WHERE lower(name)=lower(#{tableName})")
Map<String, String> getSqlserver(String tableName);
@Select("select column_name columnName, data_type dataType, column_comment columnComment, column_key columnKey, extra as extra,table_name tableName, "
+ "concat('(',if(NUMERIC_PRECISION>0,CONVERT(NUMERIC_PRECISION,CHAR),''),if(NUMERIC_SCALE>0,concat(',',CONVERT(NUMERIC_SCALE,CHAR)),''),if(CHARACTER_MAXIMUM_LENGTH>0,CONVERT(CHARACTER_MAXIMUM_LENGTH,CHAR),''),')') as width "
+ " from information_schema.columns\r\n"
+ " where lower(table_name) = lower(#{tableName}) and table_schema = (select database()) order by ordinal_position")
List<Map<String, String>> listColumnsMysql(String tableName);
@Select("select column_name columnName, data_type dataType, column_comment columnComment, column_key columnKey, extra as extra,table_name tableName, "
+ "concat('(',if(NUMERIC_PRECISION>0,CONVERT(NUMERIC_PRECISION,CHAR),''),if(NUMERIC_SCALE>0,concat(',',CONVERT(NUMERIC_SCALE,CHAR)),''),if(CHARACTER_MAXIMUM_LENGTH>0,CONVERT(CHARACTER_MAXIMUM_LENGTH,CHAR),''),')') as width "
+ " from information_schema.columns\r\n"
+ " where lower(table_name) = lower(#{tableName}) column_key='PRI' and table_schema = (select database()) order by ordinal_position")
List<Map<String, String>> listKeyMysql(String tableName);
@Select("select cname as \"columnName\",coltype as \"dataType\",cname \"columnComment\",'' as \"columnKey\",'' as \"extra\",tname \"tableName\", "
+ " '('||decode(sign(PRECISION),1,to_char(PRECISION),'')||decode(sign(SCALE),1,','||to_char(SCALE),'')||decode(sign(PRECISION),1,'',decode(sign(SCALE),1,'',to_char(width)))||')' as width "
+ "from col \r\n"
+ " where tname = upper(#{tableName}) order by colno")
List<Map<String, String>> listColumnsOracle(String tableName);
@Select("select syscolumns.name columnName, systypes.name as dataType, syscolumns.name columnComment, \r\n"
+ "(select 'PRI' from sysindexkeys,sysobjects,sysindexes where sysindexkeys.id=syscolumns.id and sysindexkeys.colid=syscolumns.colid \r\n"
+ " and sysindexkeys.id=syscolumns.id and sysindexes.id=syscolumns.id and sysindexkeys.indid=sysindexes.indid and sysobjects.name=sysindexes.name and sysobjects.xtype='PK'"
+ ") columnKey,'' extra,#{tableName} tableName, "
+ "'('+case when syscolumns.xprec>0 then cast(syscolumns.xprec as varchar) else '' end + case when syscolumns.xscale>0 then ','+cast(syscolumns.xscale as varchar) else '' end +case when syscolumns.xscale>0 or syscolumns.xprec>0 then '' else cast(syscolumns.length as varchar) end +')' as width "
+ " from syscolumns,\r\n"
+ " systypes"
+ " where syscolumns.xtype=systypes.xtype and syscolumns.id = OBJECT_ID(#{tableName}) order by syscolumns.colid")
List<Map<String, String>> listColumnsSqlserver(String tableName);
@Select("select c.column_name as \"columnName\" from user_constraints con,user_cons_columns c where con.constraint_name=c.constraint_name and con.constraint_type='P' and c.table_name=upper(#{tableName})")
List<Map<String, String>> listKeyOracle(String tableName);
@Insert("${sql}")
int save(@Param("sql")String sql);
@Update("${sql}")
int update(@Param("sql")String sql);
@Delete("${sql}")
int delete(@Param("sql")String sql);
Map<String,Object> get(@Param("sql")String sql);
List<Map<String,Object>> list(Map<String,Object> map);
int count(Map<String,Object> map);
@Select("select table_name tableName, engine, table_comment tableComment, create_time createTime from information_schema.tables"
+ " where table_schema = (select database())")
List<Map<String, Object>> listMysql();
@Select("select tname as \"tableName\",'oracle' as \"engine\",tname as \"tableComment\",sysdate as \"createTime\" from tab where instr('BIN,ACT',substr(tname,1,3))<1")
List<Map<String, Object>> listOracle();
@Select("select name tableName, 'sqlserver' engine, name tableComment, crdate createTime from SYSOBJECTS"
+ " WHERE XTYPE='U' ORDER BY NAME")
List<Map<String, Object>> listSqlserver();
@Select("select count(*) from information_schema.tables where table_schema = (select database())")
int countMysql(Map<String, Object> map);
@Select("select count(*) from tab where tabtype='TABLE' and instr('BIN,ACT',substr(tname,1,3))<1")
int countOracle(Map<String, Object> map);
@Select("select count(*) from SYSOBJECTS where XTYPE='U'")
int countSqlserver(Map<String, Object> map);
@Select("select table_name tableName, engine, table_comment tableComment, create_time createTime from information_schema.tables \r\n"
+ " where table_schema = (select database()) and lower(table_name) = lower(#{tableName})")
Map<String, String> getMysql(String tableName);
@Select("select tname as \"tableName\",'oracle' \"engine\",tname \"tableComment\",sysdate \"createTime\" from tab \r\n"
+ " where tname= upper(#{tableName})")
Map<String, String> getOracle(String tableName);
@Select("select name tableName, 'sqlserver' engine, name tableComment, crdate createTime from SYSOBJECTS"
+ " WHERE lower(name)=lower(#{tableName})")
Map<String, String> getSqlserver(String tableName);
@Select("select column_name columnName, data_type dataType, column_comment columnComment, column_key columnKey, extra as extra,table_name tableName, "
+ "concat('(',if(NUMERIC_PRECISION>0,CONVERT(NUMERIC_PRECISION,CHAR),''),if(NUMERIC_SCALE>0,concat(',',CONVERT(NUMERIC_SCALE,CHAR)),''),if(CHARACTER_MAXIMUM_LENGTH>0,CONVERT(CHARACTER_MAXIMUM_LENGTH,CHAR),''),')') as width "
+ " from information_schema.columns\r\n"
+ " where lower(table_name) = lower(#{tableName}) and table_schema = (select database()) order by ordinal_position")
List<Map<String, String>> listColumnsMysql(String tableName);
@Select("select column_name columnName, data_type dataType, column_comment columnComment, column_key columnKey, extra as extra,table_name tableName, "
+ "concat('(',if(NUMERIC_PRECISION>0,CONVERT(NUMERIC_PRECISION,CHAR),''),if(NUMERIC_SCALE>0,concat(',',CONVERT(NUMERIC_SCALE,CHAR)),''),if(CHARACTER_MAXIMUM_LENGTH>0,CONVERT(CHARACTER_MAXIMUM_LENGTH,CHAR),''),')') as width "
+ " from information_schema.columns\r\n"
+ " where lower(table_name) = lower(#{tableName}) and column_key='PRI' and table_schema = (select database()) order by ordinal_position")
List<Map<String, String>> listKeyMysql(String tableName);
@Select("select cname as \"columnName\",coltype as \"dataType\",cname \"columnComment\",'' as \"columnKey\",'' as \"extra\",tname \"tableName\", "
+" '('||decode(sign(PRECISION),1,to_char(PRECISION),'')||decode(sign(SCALE),1,','||to_char(SCALE),'')||decode(sign(PRECISION),1,'',decode(sign(SCALE),1,'',to_char(width)))||')' as width "
+ "from col \r\n"
+" where tname = upper(#{tableName}) order by colno")
List<Map<String, String>> listColumnsOracle(String tableName);
@Select("select syscolumns.name columnName, systypes.name as dataType, syscolumns.name columnComment, \r\n"
+"(select 'PRI' from sysindexkeys,sysobjects,sysindexes where sysindexkeys.id=syscolumns.id and sysindexkeys.colid=syscolumns.colid \r\n"
+" and sysindexkeys.id=syscolumns.id and sysindexes.id=syscolumns.id and sysindexkeys.indid=sysindexes.indid and sysobjects.name=sysindexes.name and sysobjects.xtype='PK'"
+") columnKey,'' extra,#{tableName} tableName, "
+"'('+case when syscolumns.xprec>0 then cast(syscolumns.xprec as varchar) else '' end + case when syscolumns.xscale>0 then ','+cast(syscolumns.xscale as varchar) else '' end +case when syscolumns.xscale>0 or syscolumns.xprec>0 then '' else cast(syscolumns.length as varchar) end +')' as width "
+ " from syscolumns,\r\n"
+ " systypes"
+ " where syscolumns.xtype=systypes.xtype and syscolumns.id = OBJECT_ID(#{tableName}) order by syscolumns.colid")
List<Map<String, String>> listColumnsSqlserver(String tableName);
@Select("select c.column_name as \"columnName\" from user_constraints con,user_cons_columns c where con.constraint_name=c.constraint_name and con.constraint_type='P' and c.table_name=upper(#{tableName})")
List<Map<String, String>> listKeyOracle(String tableName);
}

@ -2,6 +2,30 @@ package com.glxp.api.dao.inv;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.inv.DeviceInspectOrderEntity;
import com.glxp.api.req.inv.FilterDeviceInspectOrderRequest;
import com.glxp.api.res.inv.DeviceInspectOrderResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Dao
*/
public interface DeviceInspectOrderDao extends BaseMapper<DeviceInspectOrderEntity> {
/**
*
*
* @param deviceInspectOrderRequest
* @return
*/
List<DeviceInspectOrderResponse> filterList(FilterDeviceInspectOrderRequest deviceInspectOrderRequest);
/**
*
*
* @param orderId
* @return
*/
DeviceInspectOrderEntity selectByOrderId(@Param("orderId") String orderId);
}

@ -2,8 +2,12 @@ package com.glxp.api.dao.inv;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.inv.DeviceInspectPlanEntity;
import com.glxp.api.req.inv.FilterDeviceInspectPlanRequest;
import com.glxp.api.res.inv.DeviceInspectPlanResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Dao
*/
@ -16,4 +20,12 @@ public interface DeviceInspectPlanDao extends BaseMapper<DeviceInspectPlanEntity
* @return
*/
DeviceInspectPlanEntity selectByOrderId(@Param("orderId") String orderId);
/**
*
*
* @param filterDeviceInspectPlanRequest
* @return
*/
List<DeviceInspectPlanResponse> filterList(FilterDeviceInspectPlanRequest filterDeviceInspectPlanRequest);
}

@ -2,6 +2,27 @@ package com.glxp.api.dao.inv;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.inv.DeviceRepairOrderEntity;
import com.glxp.api.req.inv.FilterDeviceRepairOrderRequest;
import com.glxp.api.res.inv.DeviceRepairOrderResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface DeviceRepairOrderDao extends BaseMapper<DeviceRepairOrderEntity> {
/**
*
*
* @param orderId
* @return
*/
DeviceRepairOrderEntity selectByOrderId(@Param("orderId") String orderId);
/**
*
*
* @param filterDeviceRepairOrderRequest
* @return
*/
List<DeviceRepairOrderResponse> filterList(FilterDeviceRepairOrderRequest filterDeviceRepairOrderRequest);
}

@ -16,55 +16,53 @@ import java.util.Map;
*/
@RestController
public class IdcController {
@Resource
IdcService idcService;
@Resource
DbDao dbDao;
@Resource
IdcService idcService;
@Resource
DbDao dbDao;
/*通用上传接口*/
//@Log("中继服务数据接收,下级往上级上传")
@RequestMapping(value = "/spssync/common/upload")
public BaseResponse upload(HttpServletRequest request,
@RequestParam("content") String content,
@RequestParam(value = "files", required = false) MultipartFile[] files) {
//
return idcService.receive("U",request, content, files);
}
/*通用下发接口*/
//@Log("中继服务数据接收,上级往下级下发")
@RequestMapping(value = "/spssync/common/issued")
public BaseResponse issued(HttpServletRequest request,
@RequestParam("content") String content,
@RequestParam(value = "files", required = false) MultipartFile[] files) {
//
return idcService.receive("I",request, content, files);
}
/*通用上传接口*/
// @Log("中继服务数据接收,下级往上级上传")
@RequestMapping(value = "/spssync/common/upload")
public BaseResponse upload(HttpServletRequest request,
@RequestParam("content") String content,
@RequestParam(value = "files", required = false) MultipartFile[] files) {
//
return idcService.receive("U", request, content, files);
}
//@Log("数据同步测试")
@RequestMapping(value = "/spssync/common/test")
public BaseResponse test(HttpServletRequest request,@RequestBody Map<String, Object> params) {
//
return idcService.send(params);
}
/*通用下发接口*/
// @Log("中继服务数据接收,上级往下级下发")
@RequestMapping(value = "/spssync/common/issued")
public BaseResponse issued(HttpServletRequest request,
@RequestParam("content") String content,
@RequestParam(value = "files", required = false) MultipartFile[] files) {
//
return idcService.receive("I", request, content, files);
}
//@Log("数据同步任务列表拉取")
@RequestMapping(value = "/spssync/common/list")
public BaseResponse list(HttpServletRequest request,@RequestBody(required = false) Map<String, Object> params) {
return idcService.taskList(request,params);
}
// @Log("数据同步测试")
@RequestMapping(value = "/spssync/common/test")
public BaseResponse test(HttpServletRequest request, @RequestBody Map<String, Object> params) {
//
return idcService.send(params);
}
//@Log("数据同步任务根据任务ID下载数据")
@RequestMapping(value = "/spssync/common/download")
@ResponseBody
public BaseResponse download(HttpServletRequest request,@RequestBody Map<String, Object> params) {
return idcService.download(request,params);
}
// @Log("数据同步任务列表拉取")
@RequestMapping(value = "/spssync/common/list")
public BaseResponse list(HttpServletRequest request, @RequestBody(required = false) Map<String, Object> params) {
return idcService.taskList(request, params);
}
// @Log("数据同步任务根据任务ID下载数据")
@RequestMapping(value = "/spssync/common/download")
@ResponseBody
public BaseResponse download(HttpServletRequest request, @RequestBody Map<String, Object> params) {
return idcService.download(request, params);
}
// @Log("数据同步任务根据任务ID,返回下载成功标记")
@RequestMapping(value = "/spssync/common/success")
@ResponseBody
public BaseResponse success(HttpServletRequest request, @RequestBody Map<String, Object> params) {
return idcService.downlaodSuccess(request, params);
}
//@Log("数据同步任务根据任务ID,返回下载成功标记")
@RequestMapping(value = "/spssync/common/success")
@ResponseBody
public BaseResponse success(HttpServletRequest request,@RequestBody Map<String, Object> params) {
return idcService.downlaodSuccess(request,params);
}
}

@ -22,9 +22,10 @@ public interface IdcService {
BaseResponse download(HttpServletRequest request, Map<String, Object> params);
void pull();
public void asyncFetchTask();
BaseResponse downlaodSuccess(HttpServletRequest request, Map<String, Object> params);
public void asyncIdcTask();
}

@ -53,8 +53,7 @@ public class IdcServiceImpl implements IdcService {
private String apiKey;
@Value("${API_SECRET}")
private String apiSecret;
// "sup_company/updateTime//配送供应商资质信息",
// "sup_company/updateTime//配送供应商资质信息",
/*自助平台->UDI*/
private final String[] SPMS_TO_UDI_TABLES = {
"basic_udirel/updateTime//耗材字典", "basic_products///耗材字典信息详情", "company_product_relevance/updateTime//供应商关联信息",
@ -63,25 +62,19 @@ public class IdcServiceImpl implements IdcService {
"thr_inv_products/updateTime//第三方库存", "thr_inv_warehouse///第三方仓库",
"thr_order/updateTime//第三方单据", "thr_order_detail/updateTime//第三方单据详情",
"thr_products/updateTime//第三方产品信息", "sup_cert/updateTime/filePath/资质证书信息",
"sup_cert_set/updateTime//供应商资质证书设置",
"sup_cert_set/updateTime//供应商资质证书设置", "sup_company/updateTime//配送供应商资质信息",
"sup_manufacturer/updateTime//生产企业资质信息", "sup_product/updateTime//产品资质信息"};
/*UDI->自助平台*/
private final String[] UDI_TO_SPMS_TABLES = {
"basic_udirel/updateTime//耗材字典", "basic_products///耗材字典信息详情", "company_product_relevance/updateTime//供应商关联信息",
};
/**
* "basic_udirel/updateTime//耗材字典", "basic_products///耗材字典信息详情", "company_product_relevance/updateTime//供应商关联信息",
* "basic_corp/updateTime//往来单位", "thr_bustype_origin/updateTime//第三方单据类型",
* "thr_corp/updateTime//第三方往来单位", "thr_dept/updateTime//第三方部门",
* "thr_inv_products/updateTime//第三方库存", "thr_inv_warehouse///第三方仓库",
* "thr_order/updateTime//第三方单据", "thr_order_detail/updateTime//第三方单据详情",
* "thr_products/updateTime//第三方产品信息", "sup_cert/updateTime/filePath/资质证书信息",
* "sup_cert_set/updateTime//供应商资质证书设置",
* "sup_manufacturer/updateTime//生产企业资质信息", "sup_product/updateTime//产品资质信息",
* "productinfo/updateTime//国家库UDI数据,udicompany/updateTime//国际库医疗器械注册人信息"};
*/
"basic_corp/updateTime//往来单位", "thr_bustype_origin/updateTime//第三方单据类型",
"thr_corp/updateTime//第三方往来单位", "thr_dept/updateTime//第三方部门",
"thr_inv_products/updateTime//第三方库存", "thr_inv_warehouse///第三方仓库",
"thr_order/updateTime//第三方单据", "thr_order_detail/updateTime//第三方单据详情",
"thr_products/updateTime//第三方产品信息", "sup_cert/updateTime/filePath/资质证书信息",
"sup_cert_set/updateTime//供应商资质证书设置", "sup_company/updateTime//配送供应商资质信息",
"sup_manufacturer/updateTime//生产企业资质信息", "sup_product/updateTime//产品资质信息",
"productinfo/updateTime//国家库UDI数据,udicompany/updateTime//国际库医疗器械注册人信息"};
private int orderNum = 0;
@ -116,18 +109,27 @@ public class IdcServiceImpl implements IdcService {
}
/*拉取前一级中继服务数据*/
@Async
@Override
public void pull() {
Map<String, Object> query = new HashMap<String, Object>();
String result = post(getNextHost("U") + "/spssync/common/list", query);
JSONObject json = JSON.parseObject(result);
if (json.getInteger("code") == 20000 && json.getString("data") != null) {
List<Map> list = JSON.parseArray(json.getString("data"), Map.class);
if (list != null) {
for (Map map : list) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("taskId", map.get("taskId"));
pullData(getNextHost("U") + "/spssync/common/list", params);
public void asyncFetchTask() {
String[] directions = {"I", "U"};
for (String dir : directions) {
Map<String, Object> query = new HashMap<String, Object>();
String host = getNextHost(dir);
if (!StringUtils.isEmpty(host)) {
String result = post(host + "/spssync/common/list", query);
if (IDCUtils.isJson(result)) {
JSONObject json = JSON.parseObject(result);
if (json != null && json.getInteger("code") == 20000 && json.getString("data") != null) {
List<Map> list = JSON.parseArray(json.getString("data"), Map.class);
if (list != null) {
for (Map map : list) {
Map<String, Object> params = new HashMap<String, Object>();
params.put("taskId", map.get("taskId"));
fetchData(host + "/spssync/common/list", params);
}
}
}
}
}
}
@ -142,14 +144,14 @@ public class IdcServiceImpl implements IdcService {
if (direction.equals("I")) {
tNames = SPMS_TO_UDI_TABLES;
} else {
} else if (direction.equals("U")) {
tNames = UDI_TO_SPMS_TABLES;
}
/*为顶级或末级,以及下游或上游连通,可执行*/
Boolean isLastLevel = isLastLevel(direction);
Boolean isRelay = isRelay(direction);
logger.info("-----数据传输任务开始----" + direction + "\n");
logger.info("-----是否顶级或末级服务:" + isLastLevel + ",是否转发数据:" + isRelay + "----\n");
logger.info("-----数据传输任务开始----" + direction + "\n");
logger.info("-----是否需要上传或下发数据:" + isLastLevel + ",是否已配置接收地址:" + isRelay + "----\n");
if (isLastLevel && isRelay) {
for (String t : tNames) {
uploadData(t);
@ -158,18 +160,22 @@ public class IdcServiceImpl implements IdcService {
}
private void uploadData(String t) {
String[] tn = t.split("/");
String lastUpdateTime = getUpdateTime(tn[0]);
Date nowUpdateTime = new Date();
List<Map<String, String>> keyList = dbDao.listKeyMysql(tn[0]);
String keyColumn = keyList != null && keyList.size() > 0 ? keyList.get(0).get("columnName").toString() : "id";
Map<String, Object> map = new HashMap<String, Object>();
String sqlWhere = "not exists (select fkId from idc_record where fkId=" + tn[0] + ".id)";
String sqlWhere = "not exists (select fkId from idc_record where type='" + tn[0] + "' and fkId=" + tn[0] + "." + keyColumn + ")";
if (!StringUtils.isEmpty(tn[1])) {
sqlWhere += " and " + tn[1] + ">=cast('" + lastUpdateTime + "' as datetime)";
// sqlWhere += " and ifnull(" + tn[1] + ",now())>=cast('" + lastUpdateTime + "' as datetime)";
} else {
map.put("isEnd", "1");
}
if (tn[0].equals("thr_order"))
logger.info("-------------------" + sqlWhere);
map.put("sqlWhere", sqlWhere);
map.put("tableName", tn[0]);
map.put("filePathColumn", tn[2]);
@ -185,15 +191,15 @@ public class IdcServiceImpl implements IdcService {
Date nextTimePoint = cronSequenceGenerator.next(DateUtil.parseDate(lastUpdateTime));
send = nextTimePoint.before(nowUpdateTime);
}
//if(send) {
BaseResponse result = send(map);
if (result.getCode() == 20000) {
setUpdateTime(tn[0], DateUtil.formatDate(nowUpdateTime));
if (send) {
BaseResponse result = send(map);
if (result.getCode() == 20000) {
setUpdateTime(tn[0], DateUtil.formatDate(nowUpdateTime, "yyyy-MM-dd HH:mm:ss"));
}
}
//}
}
private String pullData(String url, Map<String, Object> params) {
private String fetchData(String url, Map<String, Object> params) {
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
@ -300,13 +306,20 @@ public class IdcServiceImpl implements IdcService {
/*数据同步,从数据库获取数据下发或上传下级中继服务*/
@Override
public BaseResponse send(Map<String, Object> params) {
return send(params.get("messageType").toString(), params.get("tableName").toString(), params);
}
@Override
public BaseResponse send(String messageType, String tableName, Map<String, Object> params) {
if (sendOnPage(messageType, tableName, params))
return ResultVOUtils.success();
try {
if (sendOnPage(messageType, tableName, params))
return ResultVOUtils.success();
} catch (Exception ex) {
logger.error(ex.getMessage());
}
return ResultVOUtils.error(9999, "");
}
@ -356,7 +369,7 @@ public class IdcServiceImpl implements IdcService {
}
private boolean sendOnPage(String messageType, String tableName, Map<String, Object> params) {
boolean success = true;
boolean success = false;
Map<String, String> table = dbDao.getMysql(tableName);
if (!(table != null && table.get("tableName") != null))
return false;
@ -376,9 +389,14 @@ public class IdcServiceImpl implements IdcService {
String filePathColumn = params.get("filePathColumn") != null ? params.get("filePathColumn").toString() : "";
orderNum++;
saveIdcLog(messageType, "", tableName + ">" + where, 0, total);
if (tableName.equals("thr_order"))
logger.info("tableName-->" + tableName + "-->row-->" + total + "-->sqlWhere-->" + where);
if (total > 0) {
success = true;
params.put("page", 0);
params.put("limit", limit);
List<Map<String, String>> keyList = dbDao.listKeyMysql(tableName);
String keyColumn = keyList != null && keyList.size() > 0 ? keyList.get(0).get("columnName").toString() : "id";
for (int i = 0; i < Math.ceil(total / limit) + 1; i++) {
params.replace("page", i * limit);
params.replace("limit", limit);
@ -395,7 +413,7 @@ public class IdcServiceImpl implements IdcService {
files[m] = list.get(m).get(filePathColumn).toString();
}
recordSql += !StringUtils.isEmpty(recordSql) ? "," : "";
recordSql += "('" + UUID.randomUUID().toString().replaceAll("-", "") + "','" + tableName + "','" + list.get(m).get("id") + "','" + isEnd + "',now())";
recordSql += "('" + UUID.randomUUID().toString().replaceAll("-", "") + "','" + tableName + "','" + list.get(m).get(keyColumn) + "','" + isEnd + "',now())";
}
orderNum++;
@ -417,6 +435,7 @@ public class IdcServiceImpl implements IdcService {
}
}
}
}
return success;
}
@ -485,6 +504,7 @@ public class IdcServiceImpl implements IdcService {
String extra = columnList.get(k).get("extra") != null && columnList.get(k).get("extra").toLowerCase().contains("auto") ? "A" : "N";
String attrName = columnList.get(k).get("attrName");
String value = list.get(i).get(attrName) != null ? list.get(i).get(attrName).toString() : "";
value = DBAUtils.escape(value);
String dataType = columnList.get(k).get("dataType").toLowerCase().contains("char") || columnList.get(k).get("dataType").toLowerCase().contains("text") ?
"C" : columnList.get(k).get("dataType").toLowerCase().contains("date") ? "D" : "N";
if (extra.equals("N")) {
@ -583,44 +603,30 @@ public class IdcServiceImpl implements IdcService {
/*获取转发服务地址当前值允许单向只使用参数upper_server_ip*/
private String getNextHost(String direction) {
SystemParamConfigEntity systemParamConfigEntity = getSystemParamConfig("upper_server_ip", "中继上传服务地址", "", "");
//direction.equals("U") ? getSystemParamConfig("upper_server_ip","中继上传服务地址" , "",""):
//getSystemParamConfig("sync_idc_lower_host","下级(下发)中继服务地址" , "","") ;
return systemParamConfigEntity.getParamValue();
SystemParamConfigEntity systemParamConfigEntity =
direction.equals("U") ? getSystemParamConfig("upper_server_host", "自助平台数据接收服务地址", "", "接收由UDI系统上传的数据") :
direction.equals("I") ? getSystemParamConfig("lower_server_host", "UDI系统数据接收服务地址", "", "接收由自助平台下发的数据") : null;
String host = systemParamConfigEntity != null ? systemParamConfigEntity.getParamValue() : "";
host = !StringUtils.isEmpty(host) && host.substring(host.length() - 1).equals("/") ? host.substring(0, host.length() - 1) : host;
return host;
}
/*判断是否最后一级*/
/*判断是否上传或下发数据*/
private boolean isLastLevel(String direction) {
SystemParamConfigEntity systemParamConfigEntity =
direction.equals("I") ? getSystemParamConfig("sync_idc_top", "是否顶级中继服务(连接自助平台)", "0", "01是(是,接收下级上传数据后解析入库)") :
getSystemParamConfig("sync_idc_final", "是否末级中继服务(连接UDI管理系统)", "0", "01是(是,接收上级下发数据后解析入库)");
return systemParamConfigEntity.getParamValue().equals("0") ? false : true;
return direction.equals("I") || direction.equals("U") ? true : false;
}
/*检查当前系统为自助平台下发还是UDI系统(上传),返回传输方向,如果都未设置,默认返回下发*/
private String getDirection() {
SystemParamConfigEntity systemParamConfigEntity = getSystemParamConfig("sync_idc_top", "是否顶级中继服务(连接自助平台)", "0", "01是(是,接收下级上传数据后解析入库)");
System.out.print(">>>>>>>>>>" + JSON.toJSONString(systemParamConfigEntity) + "\n");
if (systemParamConfigEntity.getParamValue().equals("0")) {
systemParamConfigEntity = getSystemParamConfig("sync_idc_final", "是否末级中继服务(连接UDI管理系统)", "0", "01是(是,接收上级下发数据后解析入库)");
if (systemParamConfigEntity.getParamValue().equals("1"))
return "U";
}
return "I";
SystemParamConfigEntity systemParamConfigEntity = getSystemParamConfig("sync_system_type", "系统类型", "IDC", "UDI(UDI管理系统由UDI系统往自助平台上传数据),SPS(自助平台由自助平台往UDI系统下发数据),IDC(中继服务,只接收,转发或暂存数据供下一级服务拉取数据)");
return systemParamConfigEntity.getParamValue().equals("UDI") ? "U" : systemParamConfigEntity.getParamValue().equals("SPS") ? "I" : "N";
}
/*是否需要转发*/
private boolean isRelay(String direction) {
String relayStr = direction.equals("U") ? "sync_upstream_enable" : "sync_downstream_enable";
String relayHost = getNextHost(direction);
SystemParamConfigEntity systemParamConfigEntity = systemParamConfigService.selectByParamKey(relayStr);
if (systemParamConfigEntity != null && systemParamConfigEntity.getParamValue() != null &&
systemParamConfigEntity.getParamValue().equals("0")) {
return false;
}
return true;
return !StringUtils.isEmpty(relayHost);
}
@ -715,7 +721,7 @@ public class IdcServiceImpl implements IdcService {
String updateTime = "";
Map<String, Object> map = dbDao.get("select * from idc_status where id='" + id + "'");
if (map != null && map.get("id") != null) {
updateTime = DateUtil.formatDate(IDCUtils.parseDate(map.get("statusTime").toString()));
updateTime = DateUtil.formatDate(IDCUtils.parseDate(map.get("statusTime").toString()), "yyyy-MM-dd HH:mm:ss");
} else {
updateTime = "2000-01-01 00:00:00";
String sql = "insert into idc_status (id,statusTime) values ('" + id + "',cast('" + updateTime + "' as datetime))";

@ -0,0 +1,53 @@
package com.glxp.api.idc.thread;
import com.glxp.api.dao.schedule.ScheduledDao;
import com.glxp.api.entity.system.ScheduledEntity;
import com.glxp.api.idc.service.IdcService;
import com.glxp.api.req.system.ScheduledRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.SchedulingConfigurer;
import org.springframework.scheduling.config.ScheduledTaskRegistrar;
import org.springframework.scheduling.support.CronTrigger;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component
@EnableScheduling
public class AsyncFetchTask implements SchedulingConfigurer {
final Logger logger = LoggerFactory.getLogger(AsyncIdcTask.class);
@Resource
private ScheduledDao scheduledDao;
@Resource
private IdcService idcService;
@Override
public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
scheduledTaskRegistrar.addTriggerTask(() -> process(),
triggerContext -> {
ScheduledRequest scheduledRequest = new ScheduledRequest();
scheduledRequest.setCronName("syncFetch");
logger.info("syncFetch----------------");
ScheduledEntity scheduledEntity = scheduledDao.findScheduled(scheduledRequest);
String cron = scheduledEntity != null ? scheduledEntity.getCron() : "15 * * * * ?";
if (cron.isEmpty()) {
logger.error("cron is null");
}
logger.info("syncFetch----------------");
return new CronTrigger(cron).nextExecutionTime(triggerContext);
});
}
private void process() {
logger.info("syncFetch----process------------");
idcService.asyncFetchTask();
}
}

@ -34,7 +34,7 @@ public class AsyncIdcTask implements SchedulingConfigurer {
scheduledRequest.setCronName("syncIdc");
logger.info("syncIdc----------------");
ScheduledEntity scheduledEntity = scheduledDao.findScheduled(scheduledRequest);
String cron = scheduledEntity != null ? scheduledEntity.getCron() : "0 */5 * * * ?";
String cron = scheduledEntity != null ? scheduledEntity.getCron() : "0 */30 * * * ?";
if (cron.isEmpty()) {
logger.error("cron is null");

@ -390,8 +390,8 @@ public class DBAUtils {
public static String escape(String str) {
String value = str;
if (value != null && value.contains("'")) {
value = value.replaceAll("'", "AAA12345ZZZ");
value = value.replaceAll("AAA12345ZZZ", "''");
value = value.replaceAll("'", "CCCBBBAAA12345ZZZYYYXXX");
value = value.replaceAll("CCCBBBAAA12345ZZZYYYXXX", "''");
}
return value;
}

@ -49,6 +49,6 @@ public class FilterDeviceInspectOrderRequest extends ListPageRequest {
/**
* 02
*/
private String deviceStatus;
private Integer deviceStatus;
}

@ -1,6 +1,5 @@
package com.glxp.api.res.inv;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import java.util.Date;
@ -61,7 +60,6 @@ public class DeviceInspectPlanResponse {
/**
*
*/
@TableField(value = "auditTime")
private Date auditTime;
/**
@ -94,4 +92,14 @@ public class DeviceInspectPlanResponse {
*/
private String batchNo;
/**
*
*/
private String createUserName;
/**
*
*/
private String auditUserName;
}

@ -1,4 +1,4 @@
package com.glxp.api.service.inv.impl;
package com.glxp.api.service.inv;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.entity.inv.DeptDeviceDetailEntity;

@ -0,0 +1,65 @@
package com.glxp.api.service.inv;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.entity.inv.DeviceInspectOrderEntity;
import com.glxp.api.req.inv.AddDeviceInspectOrderRequest;
import com.glxp.api.req.inv.FilterDeviceInspectOrderRequest;
import com.glxp.api.res.inv.DeviceInspectOrderResponse;
import java.util.List;
/**
* Service
*/
public interface DeviceInspectOrderService {
/**
*
*
* @param deviceInspectOrderRequest
* @return
*/
List<DeviceInspectOrderResponse> filterList(FilterDeviceInspectOrderRequest deviceInspectOrderRequest);
/**
*
*
* @param addDeviceInspectOrderRequest
* @return
*/
BaseResponse addDeviceInspectOrder(AddDeviceInspectOrderRequest addDeviceInspectOrderRequest);
/**
*
*
* @param deviceInspectOrderEntity
* @return
*/
BaseResponse updateDeviceInspectOrder(DeviceInspectOrderEntity deviceInspectOrderEntity);
/**
*
*
* @param orderId
* @return
*/
BaseResponse submitAudit(String orderId);
/**
*
*
* @param orderId
* @param status
* @return
*/
BaseResponse updateStatus(String orderId, Integer status);
/**
*
*
* @param id
* @return
*/
BaseResponse deleteOrder(String id);
}

@ -0,0 +1,66 @@
package com.glxp.api.service.inv;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.entity.inv.DeviceRepairOrderEntity;
import com.glxp.api.req.inv.AddDeviceRepairOrderRequest;
import com.glxp.api.req.inv.FilterDeviceRepairOrderRequest;
import com.glxp.api.res.inv.DeviceRepairOrderResponse;
import java.util.List;
/**
* Service
*/
public interface DeviceRepairOrderService {
/**
*
*
* @param filterDeviceRepairOrderRequest
* @return
*/
List<DeviceRepairOrderResponse> filterList(FilterDeviceRepairOrderRequest filterDeviceRepairOrderRequest);
/**
*
*
* @param addDeviceRepairOrderRequest
* @return
*/
BaseResponse addDeviceRepairOrder(AddDeviceRepairOrderRequest addDeviceRepairOrderRequest);
/**
*
*
* @param deviceRepairOrderEntity
* @return
*/
BaseResponse updateDeviceRepairOrder(DeviceRepairOrderEntity deviceRepairOrderEntity);
/**
*
*
* @param orderId
* @return
*/
BaseResponse submitAudit(String orderId);
/**
*
*
* @param orderId
* @param status
* @return
*/
BaseResponse updateStatus(String orderId, Integer status);
/**
*
*
* @param id
* @return
*/
BaseResponse deleteRepairOrder(String id);
}

@ -18,6 +18,7 @@ import com.glxp.api.req.inv.FilterDeviceReceiveOrderDetailRequest;
import com.glxp.api.res.inv.DeptDeviceDetailResponse;
import com.glxp.api.res.inv.DeviceReceiveOrderDetailResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.inv.DeptDeviceDetailService;
import com.glxp.api.util.IdUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

@ -0,0 +1,104 @@
package com.glxp.api.service.inv.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.dao.inv.DeviceInspectOrderDao;
import com.glxp.api.entity.inv.DeviceInspectOrderEntity;
import com.glxp.api.req.inv.AddDeviceInspectOrderRequest;
import com.glxp.api.req.inv.FilterDeviceInspectOrderRequest;
import com.glxp.api.res.inv.DeviceInspectOrderResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.inv.DeviceInspectOrderService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@Slf4j
@Service
@Transactional(rollbackFor = Exception.class)
public class DeviceInspectOrderServiceImpl implements DeviceInspectOrderService {
@Resource
private DeviceInspectOrderDao deviceInspectOrderDao;
@Resource
private CustomerService customerService;
@Override
public List<DeviceInspectOrderResponse> filterList(FilterDeviceInspectOrderRequest deviceInspectOrderRequest) {
if (null == deviceInspectOrderRequest) {
return Collections.emptyList();
}
if (null != deviceInspectOrderRequest.getPage() && null != deviceInspectOrderRequest.getLimit()) {
PageHelper.offsetPage((deviceInspectOrderRequest.getPage() -1) * deviceInspectOrderRequest.getLimit(), deviceInspectOrderRequest.getLimit());
}
return deviceInspectOrderDao.filterList(deviceInspectOrderRequest);
}
@Override
public BaseResponse addDeviceInspectOrder(AddDeviceInspectOrderRequest addDeviceInspectOrderRequest) {
DeviceInspectOrderEntity deviceInspectOrderEntity = new DeviceInspectOrderEntity();
BeanUtil.copyProperties(addDeviceInspectOrderRequest, deviceInspectOrderEntity);
Date date = new Date();
deviceInspectOrderEntity.setCreateUser(customerService.getUserIdStr());
deviceInspectOrderEntity.setAuditUser(customerService.getUserIdStr());
deviceInspectOrderEntity.setCreateTime(date);
deviceInspectOrderEntity.setUpdateTime(date);
deviceInspectOrderDao.insert(deviceInspectOrderEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse updateDeviceInspectOrder(DeviceInspectOrderEntity deviceInspectOrderEntity) {
DeviceInspectOrderEntity inspectOrderEntity = deviceInspectOrderDao.selectByOrderId(deviceInspectOrderEntity.getOrderId());
BeanUtil.copyProperties(deviceInspectOrderEntity, inspectOrderEntity, "id", "createUser", "createTime");
inspectOrderEntity.setUpdateTime(new Date());
deviceInspectOrderDao.updateById(inspectOrderEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse submitAudit(String orderId) {
if (StrUtil.isBlank(orderId)) {
return ResultVOUtils.paramVerifyFail();
}
DeviceInspectOrderEntity deviceInspectOrderEntity = deviceInspectOrderDao.selectByOrderId(orderId);
deviceInspectOrderEntity.setStatus(1);
deviceInspectOrderEntity.setUpdateTime(new Date());
deviceInspectOrderDao.updateById(deviceInspectOrderEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse updateStatus(String orderId, Integer status) {
if (StrUtil.isBlank(orderId) || null == status) {
return ResultVOUtils.paramVerifyFail();
}
DeviceInspectOrderEntity deviceInspectOrderEntity = deviceInspectOrderDao.selectByOrderId(orderId);
deviceInspectOrderEntity.setStatus(status);
Date date = new Date();
if (status == 2) {
//审核通过
deviceInspectOrderEntity.setAuditTime(date);
deviceInspectOrderEntity.setAuditUser(customerService.getUserIdStr());
}
deviceInspectOrderDao.updateById(deviceInspectOrderEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse deleteOrder(String id) {
if (StrUtil.isBlank(id)) {
return ResultVOUtils.paramVerifyFail();
}
deviceInspectOrderDao.deleteById(id);
return ResultVOUtils.success();
}
}

@ -2,6 +2,7 @@ package com.glxp.api.service.inv.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.dao.inv.DeviceInspectPlanDao;
@ -16,6 +17,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@ -31,19 +33,31 @@ public class DeviceInspectPlanServiceImpl implements DeviceInspectPlanService {
@Override
public List<DeviceInspectPlanResponse> filterList(FilterDeviceInspectPlanRequest filterDeviceInspectPlanRequest) {
return null;
if (null == filterDeviceInspectPlanRequest) {
return Collections.emptyList();
}
if (null != filterDeviceInspectPlanRequest.getPage() && null != filterDeviceInspectPlanRequest.getLimit()) {
PageHelper.offsetPage((filterDeviceInspectPlanRequest.getPage() - 1) * filterDeviceInspectPlanRequest.getLimit(), filterDeviceInspectPlanRequest.getLimit());
}
return deviceInspectPlanDao.filterList(filterDeviceInspectPlanRequest);
}
@Override
public BaseResponse addDeviceInspectPlan(AddDeviceInspectOrderRequest addDeviceInspectOrderRequest) {
return null;
DeviceInspectPlanEntity deviceInspectPlanEntity = new DeviceInspectPlanEntity();
BeanUtil.copyProperties(addDeviceInspectOrderRequest, deviceInspectPlanEntity);
deviceInspectPlanEntity.setCreateUser(customerService.getUserIdStr());
Date date = new Date();
deviceInspectPlanEntity.setCreateTime(date);
deviceInspectPlanEntity.setUpdateTime(date);
deviceInspectPlanDao.insert(deviceInspectPlanEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse updateDeviceInspectPlan(DeviceInspectPlanEntity deviceInspectPlanEntity) {
DeviceInspectPlanEntity deviceInspectPlan = deviceInspectPlanDao.selectById(deviceInspectPlanEntity.getId());
BeanUtil.copyProperties(deviceInspectPlanEntity, deviceInspectPlan, "createTime", "createUser");
BeanUtil.copyProperties(deviceInspectPlanEntity, deviceInspectPlan, "id", "createTime", "createUser");
deviceInspectPlan.setUpdateTime(new Date());
deviceInspectPlanDao.updateById(deviceInspectPlan);
return ResultVOUtils.success();

@ -40,7 +40,7 @@ public class DeviceInspectSetServiceImpl implements DeviceInspectSetService {
@Override
public BaseResponse updateInspectSet(DeviceInspectSetEntity deviceInspectSetEntity) {
DeviceInspectSetEntity inspectSetEntity = deviceInspectSetDao.selectById(deviceInspectSetEntity.getId());
BeanUtil.copyProperties(deviceInspectSetEntity, inspectSetEntity, "createUser", "createTime");
BeanUtil.copyProperties(deviceInspectSetEntity, inspectSetEntity, "id","createUser", "createTime");
inspectSetEntity.setUpdateTime(new Date());
deviceInspectSetDao.updateById(inspectSetEntity);
return ResultVOUtils.success();

@ -15,6 +15,7 @@ import com.glxp.api.entity.inv.DeviceReceiveOrderEntity;
import com.glxp.api.req.inv.FilterDeviceReceiveOrderRequest;
import com.glxp.api.res.inv.DeviceReceiveOrderResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.inv.DeptDeviceDetailService;
import com.glxp.api.service.inv.DeviceReceiveOrderService;
import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.OrderNoTypeBean;

@ -0,0 +1,105 @@
package com.glxp.api.service.inv.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.dao.inv.DeviceRepairOrderDao;
import com.glxp.api.entity.inv.DeviceRepairOrderEntity;
import com.glxp.api.req.inv.AddDeviceRepairOrderRequest;
import com.glxp.api.req.inv.FilterDeviceRepairOrderRequest;
import com.glxp.api.res.inv.DeviceRepairOrderResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.inv.DeviceRepairOrderService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@Slf4j
@Service
@Transactional(rollbackFor = Exception.class)
public class DeviceRepairOrderServiceImpl implements DeviceRepairOrderService {
@Resource
private DeviceRepairOrderDao deviceRepairOrderDao;
@Resource
private CustomerService customerService;
@Override
public List<DeviceRepairOrderResponse> filterList(FilterDeviceRepairOrderRequest filterDeviceRepairOrderRequest) {
if (null == filterDeviceRepairOrderRequest) {
return Collections.emptyList();
}
if (null != filterDeviceRepairOrderRequest.getPage() && null != filterDeviceRepairOrderRequest.getLimit()) {
PageHelper.offsetPage((filterDeviceRepairOrderRequest.getPage() - 1) * filterDeviceRepairOrderRequest.getLimit(), filterDeviceRepairOrderRequest.getLimit());
}
return deviceRepairOrderDao.filterList(filterDeviceRepairOrderRequest);
}
@Override
public BaseResponse addDeviceRepairOrder(AddDeviceRepairOrderRequest addDeviceRepairOrderRequest) {
DeviceRepairOrderEntity deviceRepairOrderEntity = new DeviceRepairOrderEntity();
BeanUtil.copyProperties(addDeviceRepairOrderRequest, deviceRepairOrderEntity);
deviceRepairOrderEntity.setCreateUser(customerService.getUserIdStr());
Date date = new Date();
deviceRepairOrderEntity.setCreateTime(date);
deviceRepairOrderEntity.setUpdateTime(date);
deviceRepairOrderDao.insert(deviceRepairOrderEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse updateDeviceRepairOrder(DeviceRepairOrderEntity deviceRepairOrderEntity) {
DeviceRepairOrderEntity repairOrderEntity = deviceRepairOrderDao.selectByOrderId(deviceRepairOrderEntity.getOrderId());
BeanUtil.copyProperties(deviceRepairOrderEntity, repairOrderEntity, "id", "createTime", "createUser");
repairOrderEntity.setUpdateTime(new Date());
deviceRepairOrderDao.updateById(repairOrderEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse submitAudit(String orderId) {
if (StrUtil.isBlank(orderId)) {
return ResultVOUtils.paramVerifyFail();
}
DeviceRepairOrderEntity deviceRepairOrderEntity = deviceRepairOrderDao.selectByOrderId(orderId);
deviceRepairOrderEntity.setStatus(1);
deviceRepairOrderEntity.setUpdateTime(new Date());
deviceRepairOrderDao.updateById(deviceRepairOrderEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse updateStatus(String orderId, Integer status) {
if (StrUtil.isBlank(orderId) || null == status) {
return ResultVOUtils.paramVerifyFail();
}
DeviceRepairOrderEntity deviceRepairOrderEntity = deviceRepairOrderDao.selectByOrderId(orderId);
deviceRepairOrderEntity.setStatus(status);
Date date = new Date();
if (status == 2) {
//审核通过 TODO 保修单审核通过,生成维保单
deviceRepairOrderEntity.setAuditUser(customerService.getUserIdStr());
deviceRepairOrderEntity.setAuditTime(date);
}
deviceRepairOrderEntity.setUpdateTime(date);
deviceRepairOrderDao.updateById(deviceRepairOrderEntity);
return ResultVOUtils.success();
}
@Override
public BaseResponse deleteRepairOrder(String id) {
if (StrUtil.isBlank(id)) {
return ResultVOUtils.paramVerifyFail();
}
deviceRepairOrderDao.deleteById(id);
return ResultVOUtils.success();
}
}

@ -4,9 +4,9 @@ server:
spring:
datasource:
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
jdbc-url: jdbc:p6spy:mysql://miradio.51vip.biz:3364/udi_wms_wmd?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: Glxp@6066
password: 123456
hikari:
connection-timeout: 60000
maximum-pool-size: 20

@ -3,7 +3,7 @@ server:
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
jdbc-url: jdbc:mysql://192.168.0.66:3364/udi_wms_glxp?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
jdbc-url: jdbc:mysql://192.168.0.66:3364/udi_wms_wmd?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: Glxp@6066
hikari:
@ -48,3 +48,8 @@ UDI_KEY: 6b137c66-6286-46c6-8efa-c2f5dd9237df
UDI_SERVER_URL: https://www.udims.com/UDI_DL_Server_test
SPMS_KEY: lCOdWCBKS6Kw45wdnnqUTELXyuSKnXEs
back_file_path: D:/share/udisps/back/
API_KEY: 1101
API_SECRET: zBITspLNvuoEd4FaamlSoqxRHmNsmQ9L

@ -1,27 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inv.DeviceInspectOrderDao">
<resultMap id="BaseResultMap" type="com.glxp.api.entity.inv.DeviceInspectOrderEntity">
<!--@mbg.generated-->
<!--@Table device_inspect_order-->
<id column="id" jdbcType="INTEGER" property="id" />
<result column="deptCode" jdbcType="VARCHAR" property="deptCode" />
<result column="invCode" jdbcType="VARCHAR" property="invCode" />
<result column="code" jdbcType="VARCHAR" property="code" />
<result column="lastOrderId" jdbcType="VARCHAR" property="lastOrderId" />
<result column="type" jdbcType="TINYINT" property="type" />
<result column="status" jdbcType="TINYINT" property="status" />
<result column="deviceStatus" jdbcType="VARCHAR" property="deviceStatus" />
<result column="createUser" jdbcType="VARCHAR" property="createUser" />
<result column="auditUser" jdbcType="VARCHAR" property="auditUser" />
<result column="createTime" jdbcType="TIMESTAMP" property="createTime" />
<result column="auditTime" jdbcType="TIMESTAMP" property="auditTime" />
<result column="updateTime" jdbcType="TIMESTAMP" property="updateTime" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, deptCode, invCode, code, lastOrderId, `type`, `status`, deviceStatus, `createUser`,
auditUser, createTime, auditTime, updateTime, remark
</sql>
<select id="filterList" resultType="com.glxp.api.res.inv.DeviceInspectOrderResponse">
select t.id,
t.orderId,
t.deptCode,
t.invCode,
t.code,
t.status,
t.type,
t.deviceStatus,
t.createUser,
t.auditUser,
t.createTime,
t.auditUser,
t.auditTime,
t.remark,
(select employeeName from auth_user where id = t.createUser) createUserName,
(select employeeName from auth_user where id = t.auditUser) auditUserName,
(select `name` from auth_dept where code = t.deptCode) deptName,
(select `name` from auth_warehouse where code = t.invCode) invName,
t1.deviceName,
t1.ggxh,
t1.batchNo
from device_inspect_order t
left join dept_device_detail t1 on t.code = t1.code
<where>
<if test="orderId != null and orderId != ''">
AND t.orderId like concat('%', #{orderId}, '%')
</if>
<if test="deptCode != null and deptCode != ''">
AND t.deptCode = #{deptCode}
</if>
<if test="invCode != null and invCode != ''">
AND t.invCode = #{invCode}
</if>
<if test="code != null and code != ''">
AND t.code like concat('%', #{code}, '%')
</if>
<if test="status != null">
AND t.status = #{status}
</if>
<if test="type != null">
AND t.type = #{type}
</if>
<if test="deviceStatus != null">
AND t.deviceStatus = #{deviceStatus}
</if>
</where>
order by t.updateTime desc
</select>
<select id="selectByOrderId" resultType="com.glxp.api.entity.inv.DeviceInspectOrderEntity">
select * from device_inspect_order where orderId = #{orderId}
</select>
</mapper>

@ -7,4 +7,49 @@
where orderId = #{orderId}
</select>
<select id="filterList" resultType="com.glxp.api.res.inv.DeviceInspectPlanResponse">
select t.id,
t.orderId,
t.deptCode,
t.invCode,
t.code,
t.level,
t.status,
t.createUser,
t.auditUser,
t.createTime,
t.auditUser,
t.auditTime,
t.remark,
(select employeeName from auth_user where id = t.createUser) createUserName,
(select employeeName from auth_user where id = t.auditUser) auditUserName,
(select `name` from auth_dept where code = t.deptCode) deptName,
(select `name` from auth_warehouse where code = t.invCode) invName,
t1.deviceName,
t1.ggxh,
t1.batchNo
from device_inspect_plan t
left join dept_device_detail t1 on t.code = t1.code
<where>
<if test="orderId != null and orderId != ''">
AND t.orderId like concat('%', #{orderId}, '%')
</if>
<if test="deptCode != null and deptCode != ''">
AND t.deptCode = #{deptCode}
</if>
<if test="invCode != null and invCode != ''">
AND t.invCode = #{invCode}
</if>
<if test="code != null and code != ''">
AND t.code like concat('%', #{code}, '%')
</if>
<if test="level != null">
AND t.level = #{level}
</if>
<if test="status != null">
AND t.status = #{status}
</if>
</where>
order by t.updateTime desc
</select>
</mapper>

@ -1,25 +1,50 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.api.dao.inv.DeviceRepairOrderDao">
<resultMap id="BaseResultMap" type="com.glxp.api.entity.inv.DeviceRepairOrderEntity">
<!--@mbg.generated-->
<!--@Table device_repair_order-->
<id column="id" jdbcType="INTEGER" property="id" />
<result column="deptCode" jdbcType="VARCHAR" property="deptCode" />
<result column="invCode" jdbcType="VARCHAR" property="invCode" />
<result column="code" jdbcType="VARCHAR" property="code" />
<result column="status" jdbcType="VARCHAR" property="status" />
<result column="createUser" jdbcType="VARCHAR" property="createUser" />
<result column="auditUser" jdbcType="VARCHAR" property="auditUser" />
<result column="msg" jdbcType="VARCHAR" property="msg" />
<result column="createTime" jdbcType="TIMESTAMP" property="createTime" />
<result column="auditTime" jdbcType="TIMESTAMP" property="auditTime" />
<result column="updateTime" jdbcType="TIMESTAMP" property="updateTime" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, deptCode, invCode, code, `status`, `createUser`, auditUser, msg, createTime,
auditTime, updateTime, remark
</sql>
<select id="selectByOrderId" resultType="com.glxp.api.entity.inv.DeviceRepairOrderEntity">
select *
from device_repair_order
where orderId = #{orderId}
</select>
<select id="filterList" resultType="com.glxp.api.res.inv.DeviceRepairOrderResponse">
select t.id,
t.orderId,
t.deptCode,
t.invCode,
t.code,
t.status,
t.createUser,
t.auditUser,
t.msg,
t.createTime,
t.auditTime,
t.remark,
(select employeeName from auth_user where id = t.createUser) createUserName,
(select employeeName from auth_user where id = t.auditUser) auditUserName,
(select `name` from auth_dept where code = t.deptCode) deptName,
(select `name` from auth_warehouse where code = t.invCode) invCode,
t1.deviceName,
t1.ggxh,
t1.batchNo
from device_repair_order t
left join dept_device_detail t1 on t.code = t1.code
<where>
<if test="orderId != null and orderId != ''">
AND t.orderId like concat('%', #{orderId}, '%')
</if>
<if test="deptCode != null and deptCode != ''">
AND t.deptCode = #{deptCode}
</if>
<if test="invCode != null and invCode != ''">
AND t.invCode = #{invCode}
</if>
<if test="code != null and code != ''">
AND t.code like concat('%', #{code}, '%')
</if>
<if test="status != null">
AND t.status = #{status}
</if>
</where>
</select>
</mapper>
Loading…
Cancel
Save