顺德人医用户接收,webservice

3.2.4.44
wyb 2 years ago committed by 宇宙皮皮娃
parent d32750ed77
commit 2e846b93a2

@ -157,7 +157,11 @@
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

@ -4,6 +4,7 @@ import com.docus.server.collection.webservice.IUserServer;
import com.docus.server.collection.webservice.TBasicService;
import org.apache.cxf.jaxws.EndpointImpl;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@ -35,9 +36,10 @@ public class CxfConfig {
}
@Bean
public Endpoint endpoint1() {
@Qualifier("userEndPoint")
public Endpoint userEndPoint() {
EndpointImpl endpoint = new EndpointImpl(springBus(), userServer);
endpoint.publish("/api");
endpoint.publish("/api/user");
return endpoint;
}

@ -0,0 +1,16 @@
package com.docus.server.collection.config;
import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
/**
*
* @author wyb
*/
@Data
@Component
public class UserSyncConfig {
@Value("${docus.user.defpwd:}")
private String password;
}

@ -8,10 +8,68 @@ import lombok.Data;
* @date 2022-11-14 19:02
*/
@Data
@Builder
public class UserDto {
private Long id;
/**
* id-
*/
private String messageId;
/**
*
*/
private String receiver;
/**
* operateTypeC U D
*/
private String operateType;
/**
*
*/
private String name;
private Integer age;
private String address;
/**
*
*/
private String userName;
/**
*
*/
private String deptId;
/**
* id(roleId),roleId=0
*/
private String position;
/**
* Id 0
*/
private Long roleId;
/**
*
*/
private String authorName;
/**
* ID
*/
private String authorId;
/**
*
*
* @return
*/
public UserModifyParam transUserAddParam() {
UserModifyParam userModifyParam = new UserModifyParam();
userModifyParam.setUserName(this.userName);
userModifyParam.setName(this.name);
userModifyParam.setPosition(this.position);
userModifyParam.setRoleId(this.roleId);
userModifyParam.setDeptId(this.deptId);
userModifyParam.setAuthorName(this.authorName);
userModifyParam.setAuthorId(this.authorId);
return userModifyParam;
}
}

@ -0,0 +1,53 @@
package com.docus.server.collection.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author Fang Ruichuan
* @date 2022-11-14 19:02
*/
@Data
public class UserModifyParam {
/**
* id
*/
private Long userId;
/**
*
*/
private String name;
/**
*
*/
private String userName;
/**
*
*/
private String deptId;
/**
* id(roleId),roleId=0
*/
private String position;
/**
* Id 0
*/
private Long roleId;
/**
*
*/
private String userPwd;
/**
*
*/
private String authorName;
/**
* ID
*/
private String authorId;
}

@ -0,0 +1,85 @@
package com.docus.server.collection.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.Date;
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="PowerUser对象", description="用户表")
public class PowerUser implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "用户id")
private Long userId;
@ApiModelProperty(value = "登陆名")
private String userName;
@ApiModelProperty(value = "用户密码")
private String userPwd;
@ApiModelProperty(value = "性别 0 男 1 女")
private Integer userSex;
@ApiModelProperty(value = "年龄")
private Integer userAge;
@ApiModelProperty(value = "电话")
private String userTel;
@ApiModelProperty(value = "邮箱")
private String userEmail;
@ApiModelProperty(value = "微信信息")
private String wxBank;
@ApiModelProperty(value = "职位")
private String userPosition;
@ApiModelProperty(value = "角色")
private Long roleId;
@ApiModelProperty(value = "部门id")
private String deptId;
@ApiModelProperty(value = "是否有效")
private Integer effective;
@ApiModelProperty(value = "创建时间")
private Date createDate;
@ApiModelProperty(value = "创建人")
private String creater;
@ApiModelProperty(value = "更新时间")
private Date updateDate;
@ApiModelProperty(value = "更新人")
private String updater;
@ApiModelProperty(value = "备注")
private String remark;
@ApiModelProperty(value = "登录标志 默认为0为未登录 1登录")
private Integer loginFlag;
@ApiModelProperty(value = "用户名称")
private String name;
@ApiModelProperty(value = "所属科室代码 多个以,分隔")
private String deptCode;
@ApiModelProperty(value = "权限科室 拥有对科室查阅权限")
private String powerDept;
@ApiModelProperty(value = "权限 拥有对主管医生查阅权限")
private String powerAttending;
}

@ -0,0 +1,44 @@
package com.docus.server.collection.mapper;
import com.docus.server.collection.dto.UserModifyParam;
import com.docus.server.collection.entity.PowerUser;
import org.apache.ibatis.annotations.Param;
/**
* <p>
* mapper
* </p>
*
* @author wen yongbin
* @since 202322522:28:58
*/
public interface PowerUserMapper {
/**
*
* @param userName
* @return
*/
PowerUser getUserByUserName(@Param("userName") String userName);
/**
*
* @param userModifyParam
* @return
*/
int updateUser(@Param("user") UserModifyParam userModifyParam);
/**
*
* @param userModifyParam
* @return
*/
int addUser(@Param("user") UserModifyParam userModifyParam);
/**
*
* @param userName
* @return
*/
int delUserByUserName(@Param("userName") String userName);
}

@ -0,0 +1,24 @@
package com.docus.server.collection.service;
import com.docus.server.collection.dto.UserDto;
/**
*
*/
public interface IPowerUserService {
/**
*
*
* @param userDto
* @return
*/
boolean register(UserDto userDto);
/**
*
*
* @param userName
* @return
*/
boolean delUserByUserName(String userName);
}

@ -0,0 +1,54 @@
package com.docus.server.collection.service.impl;
import com.docus.core.util.Func;
import com.docus.infrastructure.redis.service.IdService;
import com.docus.server.collection.config.UserSyncConfig;
import com.docus.server.collection.dto.UserDto;
import com.docus.server.collection.dto.UserModifyParam;
import com.docus.server.collection.entity.PowerUser;
import com.docus.server.collection.mapper.PowerUserMapper;
import com.docus.server.collection.service.IPowerUserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
*
*
* @author wyb
*/
@Service
public class PowerUserServiceImpl implements IPowerUserService {
@Resource
private PowerUserMapper powerUserMapper;
@Resource
private IdService idService;
@Resource
private UserSyncConfig syncConfig;
@Override
public boolean register(UserDto userDto) {
PowerUser powerUser = powerUserMapper.getUserByUserName(userDto.getUserName());
UserModifyParam userModifyParam = userDto.transUserAddParam();
if (Func.isEmpty(powerUser)) {
long userId = idService.getDateSeq();
userModifyParam.setUserId(userId);
userModifyParam.setUserPwd(syncConfig.getPassword());
powerUserMapper.addUser(userModifyParam);
return true;
}
userModifyParam.setUserId(powerUser.getUserId());
powerUserMapper.updateUser(userModifyParam);
return true;
}
@Override
public boolean delUserByUserName(String userName) {
PowerUser powerUser = powerUserMapper.getUserByUserName(userName);
if (Func.isEmpty(powerUser)) {
return true;
}
powerUserMapper.delUserByUserName(userName);
return true;
}
}

@ -0,0 +1,22 @@
package com.docus.server.collection.util;
import com.docus.infrastructure.redis.service.IdService;
import lombok.Data;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.UUID;
import java.util.concurrent.ThreadLocalRandom;
@Data
public class IdUtil {
/**
* 8-4-4-4-12 UUID
* @return 8-4-4-4-12 UUID
*/
public static String standardUUID(){
ThreadLocalRandom random = ThreadLocalRandom.current();
return (new UUID(random.nextLong(), random.nextLong())).toString();
}
}

@ -7,7 +7,10 @@ import com.docus.server.collection.dto.UserDto;
* @date 2022-11-14 19:03
*/
public interface IUserServer {
default UserDto getUser(Long str) {
throw new RuntimeException("程序员正在马不停蹄地开发新功能");
}
/**
*
* @param receiveUser
* @return
*/
String userModify(String receiveUser);
}

@ -1,26 +1,193 @@
package com.docus.server.collection.webservice.impl;
import com.docus.core.util.DateUtil;
import com.docus.core.util.Func;
import com.docus.infrastructure.core.exception.BaseException;
import com.docus.server.collection.service.IPowerUserService;
import com.docus.server.collection.util.IdUtil;
import com.docus.server.collection.util.XmlUtil;
import com.docus.server.collection.webservice.IUserServer;
import com.docus.server.collection.dto.UserDto;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.w3c.dom.Node;
import javax.annotation.Resource;
import javax.jws.WebService;
import java.util.Date;
/**
* @author Fang Ruichuan
* @date 2022-11-14 19:08
* @author wen yongbin
* @date 202322521:56:33
*/
@Service
@WebService
@Slf4j
public class UserServerImpl implements IUserServer {
@Resource
IPowerUserService iPowerUserService;
@Override
public UserDto getUser(Long id) {
return UserDto.builder()
.id(id)
.address("上海市浦东新区")
.age(25)
.name("laJi").build();
public String userModify(String receiveUser) {
log.info("新增/修改用户数据:{}", receiveUser);
boolean registerResult = false;
UserDto userDto;
String msgId = "";
String receiver = "";
try {
userDto = strToUserDto(receiveUser);
msgId = userDto.getMessageId();
receiver = userDto.getReceiver();
} catch (BaseException e) {
e.printStackTrace();
log.error(e.getMessage(), e);
return failedMessage(e.getMessage(), msgId, receiver);
} catch (Exception e) {
e.printStackTrace();
log.error(e.getMessage(), e);
return failedMessage("消息解析失败!", msgId, receiver);
}
try {
String operateType = userDto.getOperateType();
String delType = "D";
// 判断操作类型
if (Func.isNotEmpty(operateType) && operateType.contains(delType)) {
registerResult = iPowerUserService.delUserByUserName(userDto.getUserName());
} else {
registerResult = iPowerUserService.register(userDto);
}
} catch (BaseException e) {
e.printStackTrace();
log.error(e.getMessage(), e);
return failedMessage(e.getMessage(), msgId, receiver);
} catch (Exception e) {
e.printStackTrace();
log.error(e.getMessage(), e);
}
if (registerResult) {
return successMessage("操作成功!", msgId, receiver);
}
return failedMessage("系统出错啦!", msgId, receiver);
}
/**
* UserDto
*
* @param receiveUser
* @return UserDto
*/
public UserDto strToUserDto(String receiveUser) {
UserDto userDto = new UserDto();
XmlUtil xmlParseUtil = XmlUtil.of(receiveUser);
Node msgIdNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/id/@extension");
userDto.setMessageId(msgIdNode.getNodeValue());
Node receiverNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/receiver/device/id/item/@extension");
userDto.setReceiver(receiverNode.getNodeValue());
Node operateTypeNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/controlActProcess/subject/registrationRequest/subject1/valueSet/valueSetItems/@operateType");
userDto.setOperateType(operateTypeNode.getNodeValue());
Node employeeCodeNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/controlActProcess/subject/registrationRequest/subject1/valueSet/valueSetItems/EMPL_CODE/@value");
userDto.setUserName(employeeCodeNode.getNodeValue());
Node employeeNameNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/controlActProcess/subject/registrationRequest/subject1/valueSet/valueSetItems/EMPL_NAME/@value");
userDto.setName(employeeNameNode.getNodeValue());
Node deptCodeNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/controlActProcess/subject/registrationRequest/subject1/valueSet/valueSetItems/DEPT_CODE/@value");
userDto.setDeptId(deptCodeNode.getNodeValue());
Node positionNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/controlActProcess/subject/registrationRequest/subject1/valueSet/valueSetItems/POSI_NAME/@value");
userDto.setPosition(positionNode.getNodeValue());
Node authorIdNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/controlActProcess/subject/registrationRequest/author/assignedEntity/id/item/@extension");
userDto.setAuthorId(authorIdNode.getNodeValue());
Node authorNameNode = xmlParseUtil.getNode("/PRVS_IN000002UV01/controlActProcess/subject/registrationRequest/author/assignedEntity/assignedPerson/name/item/part/@value");
userDto.setAuthorName(authorNameNode.getNodeValue());
userDto.setRoleId(0L);
return userDto;
}
/**
* @param message
* @param msgId id
* @param receiver
* @return
*/
private String successMessage(String message, String msgId, String receiver) {
String createTime = Func.format(new Date(), DateUtil.PATTERN_DATETIME_MINI);
return "<MCCI_IN000002UV01 ITSVersion=\"XML_1.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:hl7-org:v3\" xsi:schemaLocation=\"urn:hl7-org:v3\n" +
"file:///E:/hl7/HL7/v3ballot_fullsite_2011MAY/v3ballot/html/processable/multicacheschemas/MCCI\n" +
"_IN000002UV01.xsd\">\n" +
"\t<id extension=\"" + IdUtil.standardUUID() + "\"/>\n" +
"\t<creationTime value=\"" + createTime + "\"/>\n" +
"\t<interactionId root=\"2.16.840.1.113883.1.6\" extension=\"MCCI_IN000002UV01\"/>\n" +
"\t<processingCode code=\"P\"/>\n" +
"\t<processingModeCode/>\n" +
"\t<acceptAckCode code=\"AL\"/>\n" +
"\t<receiver typeCode=\"RCV\">\n" +
"\t\t<device classCode=\"DEV\" determinerCode=\"INSTANCE\">\n" +
"\t\t\t<id>\n" +
"\t\t\t\t<item extension=\"MDM\"/>\n" +
"\t\t\t</id>\n" +
"\t\t</device>\n" +
"\t</receiver>\n" +
"\t<sender typeCode=\"SND\">\n" +
"\t\t<device classCode=\"DEV\" determinerCode=\"INSTANCE\">\n" +
"\t\t\t<id>\n" +
"\t\t\t\t<item extension=\"" + receiver + "\"/>\n" +
"\t\t\t</id>\n" +
"\t\t</device>\n" +
"\t</sender>\n" +
"\t<acknowledgement typeCode=\"AA\">\n" +
"\t\t<targetMessage>\n" +
"\t\t\t<id extension=\"" + msgId + "\"/>\n" +
"\t\t</targetMessage>\n" +
"\t\t<acknowledgementDetail>\n" +
"\t\t\t<text value=\"" + message + "\"/>\n" +
"\t\t</acknowledgementDetail>\n" +
"\t</acknowledgement>\n" +
"</MCCI_IN000002UV01>";
}
/**
* @param message
* @param msgId id
* @param receiver
* @return
*/
private String failedMessage(String message, String msgId, String receiver) {
String createTime = Func.format(new Date(), DateUtil.PATTERN_DATETIME_MINI);
return "<RCMR_IN000030UV01 ITSVersion=\"XML_1.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"urn:hl7-org:v3\" xsi:schemaLocation=\"urn:hl7-org:v3\n" +
"file:///E:/hl7/HL7/v3ballot_fullsite_2011MAY/v3ballot/html/processable/multicacheschemas/RCMR\n" +
"_IN000030UV01.xsd\">\n" +
"\n" +
"\t<id extension=\"" + IdUtil.standardUUID() + "\"/>\n" +
"\t<creationTime value=\"" + createTime + "\"/>\n" +
"\t<interactionId root=\"2.16.840.1.113883.1.6\" extension=\"RCMR_IN000030UV01\"/>\n" +
"\t<processingCode code=\"P\"/>\n" +
"\t<processingModeCode/>\n" +
"\t<acceptAckCode code=\"AL\"/>\n" +
"\t<receiver typeCode=\"RCV\">\n" +
"\t\t<device classCode=\"DEV\" determinerCode=\"INSTANCE\">\n" +
"\t\t\t<id>\n" +
"\t\t\t\t<item extension=\"MDM\"/>\n" +
"\t\t\t</id>\n" +
"\t\t</device>\n" +
"\t</receiver>\n" +
"\t<sender typeCode=\"SND\">\n" +
"\t\t<device classCode=\"DEV\" determinerCode=\"INSTANCE\">\n" +
"\t\t\t<id>\n" +
"\t\t\t\t<item extension=\"" + receiver + "\"/>\n" +
"\t\t\t</id>\n" +
"\t\t</device>\n" +
"\t</sender>\n" +
"\t<acknowledgement typeCode=\"AE\">\n" +
"\t\t<targetMessage>\n" +
"\t\t\t<id extension=\"" + msgId + "\"/>\n" +
"\t\t</targetMessage>\n" +
"\t\t<acknowledgementDetail>\n" +
"\t\t\t<text value=\"" + message + "\"/>\n" +
"\t\t</acknowledgementDetail>\n" +
"\t</acknowledgement>\n" +
"</RCMR_IN000030UV01>\n";
}
}

@ -44,7 +44,9 @@ spring:
docus:
dbtype: mysql
user:
# 用户默认密码
defpwd: fd29cd53ec12616e5f36b77d4afffbff
mybatis-plus:
configuration:
map-underscore-to-camel-case: true

@ -0,0 +1,38 @@
<?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.docus.server.collection.mapper.PowerUserMapper">
<insert id="addUser">
INSERT INTO `docus_system`.`power_user`(`user_id`,
`user_name`,
`name`,
`user_pwd`,
`user_position`,
`role_id`,
`dept_id`,
`create_date`,
`creater`,
`update_date`,
`updater`)
VALUES (#{user.userId},#{user.userName},#{user.name},#{user.userPwd},#{user.position},#{user.roleId}
,#{user.deptId},now(),#{user.authorName},now(),#{user.authorName})
</insert>
<update id="updateUser">
update `docus_system`.`power_user` set
`updater`=#{user.authorName},
`dept_id`=#{user.deptId},
`user_position`=#{user.position},
`name`=#{user.name},
`update_date`=now()
where `user_id`=#{user.userId}
</update>
<delete id="delUserByUserName">
delete from `docus_system`.`power_user` where `user_name` = #{userName}
</delete>
<select id="getUserByUserName" resultType="com.docus.server.collection.entity.PowerUser">
SELECT `user_id`,`user_name`,`user_pwd` FROM `docus_system`.`power_user`
WHERE `user_name` = #{userName} LIMIT 1
</select>
</mapper>

@ -0,0 +1,141 @@
package com.docus.server.collection.webservice.impl;
import com.docus.server.collection.dto.UserDto;
import com.docus.server.collection.dto.UserModifyParam;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
import org.junit.Test;
import javax.xml.namespace.QName;
public class UserServerImplTest {
String xml = "<PRVS_IN000002UV01 xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" ITSVersion=\"XML_1.0\">\n" +
"\t<!--消息唯一ID-->\n" +
"\t<id extension=\"c460c892-24ad-490a-979c-853afc65a208\"/>\n" +
"\t<!--creationTime-消息创建时间-->\n" +
"\t<creationTime value=\"20221115170803\"/>\n" +
"\t<!--interactionId-消息的服务标识-->\n" +
"\t<interactionId root=\"2.16.840.1.113883.1.6\" extension=\"PRVS_IN000002UV01\"/>\n" +
"\t<!--processingCode-处理代码。标识此消息是否是产品、训练、调试系统的一部分。D调试P产\n" +
"品T训练-->\n" +
"\t<processingCode code=\"P\"/>\n" +
"\t<!--processingModeCode-处理模型代码。定义此消息是一个文档处理还是一个初始装载的一部分。A\n" +
"存档I初始装载R从存档中恢复T当前处理间隔传递。-->\n" +
"\t<processingModeCode/>\n" +
"\t<!--acceptAckCode-接收确认类型 AL总是确认NE从不确认ER仅在错误/或拒绝时确认SU\n" +
"仅在成功完成时确认。-->\n" +
"\t<acceptAckCode code=\"AL\"/>\n" +
"\t<receiver typeCode=\"RCV\">\n" +
"\t\t<device classCode=\"DEV\" determinerCode=\"INSTANCE\">\n" +
"\t\t\t<id>\n" +
"\t\t\t\t<!-- 指定接收方,用于 Orion 通讯点路由 -->\n" +
"\t\t\t\t<item root=\"2.16.156.10011.0.1.1\" extension=\"MDM\"/>\n" +
"\t\t\t</id>\n" +
"\t\t</device>\n" +
"\t</receiver>\n" +
"\t<sender typeCode=\"SND\">\n" +
"\t\t<device classCode=\"DEV\" determinerCode=\"INSTANCE\">\n" +
"\t\t\t<id>\n" +
"\t\t\t\t<!-- 指定发送方,用于 Orion 通讯点路由 -->\n" +
"\t\t\t\t<item root=\"2.16.156.10011.0.1.2\" extension=\"HIS-001\"/>\n" +
"\t\t\t</id>\n" +
"\t\t</device>\n" +
"\t</sender>\n" +
"\t<controlActProcess classCode=\"CACT\" moodCode=\"EVN\">\n" +
"\t\t<code code=\"ValueSetUpdate\">\n" +
"\t\t\t<displayName value=\"字典更新\"/>\n" +
"\t\t</code>\n" +
"\t\t<subject typeCode=\"SUBJ\">\n" +
"\t\t\t<registrationRequest classCode=\"REG\" moodCode=\"RQO\">\n" +
"\t\t\t\t<statusCode/>\n" +
"\t\t\t\t<!--值集注册subject1为1..1-->\n" +
"\t\t\t\t<subject1 typeCode=\"SBJ\">\n" +
"\t\t\t\t\t<valueSet>\n" +
"\t\t\t\t\t\t<!--值集标识符 STANDARD_CODE-->\n" +
"\t\t\t\t\t\t<id extension=\"HIP834\"/>\n" +
"\t\t\t\t\t\t<!--值集描述 COLLECTION_NAME + COLLECTION_VERSION-->\n" +
"\t\t\t\t\t\t<desc value=\"HIS人员字典\"/>\n" +
"\t\t\t\t\t\t<!--值集状态代码-->\n" +
"\t\t\t\t\t\t<statusCode code=\"1\"/>\n" +
"\t\t\t\t\t\t<!--字典的副本号 RELEASE_TAG-->\n" +
"\t\t\t\t\t\t<version code=\"1.0\">\n" +
"\t\t\t\t\t\t\t<originalText value=\"\"/>\n" +
"\t\t\t\t\t\t</version>\n" +
"\t\t\t\t\t\t<!-- 字典具体的某一行数据operateType有三种值C 代表新增、U 代表修改、D 代表删除-->\n" +
"\t\t\t\t\t\t<valueSetItems operateType=\"CU\">\n" +
"\t\t\t\t\t\t\t<!--员工编码-->\n" +
"\t\t\t\t\t\t\t<HIS_CODE value=\"05231\"/>\n" +
"\t\t\t\t\t\t\t<!--员工工号-->\n" +
"\t\t\t\t\t\t\t<EMPL_CODE value=\"W-011\"/>\n" +
"\t\t\t\t\t\t\t<!--员工姓名-->\n" +
"\t\t\t\t\t\t\t<EMPL_NAME value=\"郑大海\"/>\n" +
"\t\t\t\t\t\t\t<!--员工所在科室编号-->\n" +
"\t\t\t\t\t\t\t<DEPT_CODE value=\"0402\"/>\n" +
"\t\t\t\t\t\t\t<!--员工所在科室名称-->\n" +
"\t\t\t\t\t\t\t<DEPT_NAME value=\"神经外科\"/>\n" +
"\t\t\t\t\t\t\t<!--职务名称-->\n" +
"\t\t\t\t\t\t\t<POSI_NAME value=\"主任医师\"/>\n" +
"\t\t\t\t\t\t\t<!--身份证号-->\n" +
"\t\t\t\t\t\t\t<IDENNO value=\"\"/>\n" +
"\t\t\t\t\t\t\t<!--创建人科室编号-->\n" +
"\t\t\t\t\t\t\t<CDEPT_CODE value=\"\"/>\n" +
"\t\t\t\t\t\t\t<!--创建人科室名称-->\n" +
"\t\t\t\t\t\t\t<CDEPT_NAME value=\"\"/>\n" +
"\t\t\t\t\t\t\t<!--科室角色状态代码-->\n" +
"\t\t\t\t\t\t\t<STATUS_CODE value=\"0\"/>\n" +
"\t\t\t\t\t\t\t<!--拼音码-->\n" +
"\t\t\t\t\t\t\t<SPELL_CODE value=\"ZDH\"/>\n" +
"\t\t\t\t\t\t\t<!--五笔码-->\n" +
"\t\t\t\t\t\t\t<WB_CODE value=\"UDI\"/>\n" +
"\t\t\t\t\t\t\t<!--电话号码-->\n" +
"\t\t\t\t\t\t\t<EMPL_TEL value=\"\"/>\n" +
"\t\t\t\t\t\t\t<!--机构代码-->\n" +
"\t\t\t\t\t\t\t<ORG_CODE value=\"4560886379\"/>\n" +
"\t\t\t\t\t\t\t<!--机构名称-->\n" +
"\t\t\t\t\t\t\t<ORG_NAME value=\"南方医科大学顺德医院\"/>\n" +
"\t\t\t\t\t\t</valueSetItems>\n" +
"\t\t\t\t\t</valueSet>\n" +
"\t\t\t\t</subject1>\n" +
"\t\t\t\t<!-- 谁做了本次操作-->\n" +
"\t\t\t\t<author typeCode=\"AUT\">\n" +
"\t\t\t\t\t<assignedEntity classCode=\"ASSIGNED\">\n" +
"\t\t\t\t\t\t<id>\n" +
"\t\t\t\t\t\t\t<item root=\"2.16.156.10011.1.4\" extension=\"操作人ID\"/>\n" +
"\t\t\t\t\t\t</id>\n" +
"\t\t\t\t\t\t<assignedPerson classCode=\"PSN\" determinerCode=\"INSTANCE\">\n" +
"\t\t\t\t\t\t\t<name xsi:type=\"DSET_EN\">\n" +
"\t\t\t\t\t\t\t\t<item>\n" +
"\t\t\t\t\t\t\t\t\t<part value=\"操作人名称\"/>\n" +
"\t\t\t\t\t\t\t\t</item>\n" +
"\t\t\t\t\t\t\t</name>\n" +
"\t\t\t\t\t\t</assignedPerson>\n" +
"\t\t\t\t\t</assignedEntity>\n" +
"\t\t\t\t</author>\n" +
"\t\t\t</registrationRequest>\n" +
"\t\t</subject>\n" +
"\t</controlActProcess>\n" +
"</PRVS_IN000002UV01>\n";
@Test
public void parseUserDtoTest() {
UserServerImpl userServer = new UserServerImpl();
UserDto userDto = userServer.strToUserDto(xml);
UserModifyParam addParam = userDto.transUserAddParam();
System.out.println(userServer);
System.out.println(addParam);
assert userDto.getUserName().equals(addParam.getUserName());
assert userDto.getName().equals(addParam.getName());
assert userDto.getAuthorId().equals(addParam.getAuthorId());
assert userDto.getAuthorName().equals(addParam.getAuthorName());
assert userDto.getDeptId().equals(addParam.getDeptId());
assert userDto.getPosition().equals(addParam.getPosition());
assert userDto.getRoleId().equals(addParam.getRoleId());
}
@Test
public void modifyWebserviceTest() throws Exception{
JaxWsDynamicClientFactory jaxWsDynamicClientFactory = JaxWsDynamicClientFactory.newInstance();
Client client = jaxWsDynamicClientFactory.createClient("http://localhost:9111/webservice/api/user?wsdl");
Object[] invoke = client.invoke("userModify", xml);
System.out.println(invoke[0].toString());
}
}
Loading…
Cancel
Save