15810770710@163.com %!s(int64=4) %!d(string=hai) anos
pai
achega
2d423246d1

+ 174 - 0
pom.xml

@@ -0,0 +1,174 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+        <version>2.2.2.RELEASE</version>
+    </parent>
+    <groupId>info.aspirecn.iov.yysj</groupId>
+    <artifactId>cloud-yysj-servicenode-paramtransfer</artifactId>
+    <version>1.0.8</version>
+    <name>cloud-yysj-servicenode-paramtransfer</name>
+    <description>参数转换服务</description>
+
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <java.version>1.8</java.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>info.aspirecn.iov.yysj</groupId>
+            <artifactId>cloud-yysj-servicenode-paramtransfer-interface</artifactId>
+            <version>1.0.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-actuator</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.mybatis.spring.boot</groupId>
+            <artifactId>mybatis-spring-boot-starter</artifactId>
+            <version>1.3.2</version>
+        </dependency>
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>druid-spring-boot-starter</artifactId>
+            <version>1.1.10</version>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+        
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+            <version>20.0</version>
+        </dependency>
+            <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-data-redis</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-devtools</artifactId>
+        </dependency>
+     <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-kubernetes-config</artifactId>
+        </dependency>
+       <!-- <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
+        </dependency>-->
+    </dependencies>
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>org.springframework.cloud</groupId>
+                <artifactId>spring-cloud-dependencies</artifactId>
+                <version>Hoxton.RELEASE</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-jar-plugin</artifactId>
+                <configuration>
+                    <archive>
+                        <manifest>
+                            <addClasspath>true</addClasspath>
+                            <classpathPrefix>lib/</classpathPrefix>
+                        </manifest>
+                    </archive>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-resources-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>default-resources</id>
+                        <phase>validate</phase>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals>
+                        <configuration>
+                            <outputDirectory>target/classes</outputDirectory>
+                            <useDefaultDelimiters>false</useDefaultDelimiters>
+                            <delimiters>
+                                <delimiter>@</delimiter>
+                            </delimiters>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources/config</directory>
+                                    <targetPath>config</targetPath>
+                                    <filtering>true</filtering>
+                                    <includes>
+                                        <include>**</include>
+                                    </includes>
+                                </resource>
+                                <resource>
+                                    <directory>src/main/resources/mapping</directory>
+                                    <targetPath>mapping</targetPath>
+                                    <filtering>true</filtering>
+                                    <includes>
+                                        <include>**</include>
+                                    </includes>
+                                </resource>
+                            </resources>
+
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>copy-dependencies</id>
+                        <phase>prepare-package</phase>
+                        <goals>
+                            <goal>copy-dependencies</goal>
+                        </goals>
+                        <configuration>
+                            <outputDirectory>${project.build.directory}/lib</outputDirectory>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>

+ 33 - 0
src/main/java/info/aspirecn/iov/yysj/paramtransfer/App.java

@@ -0,0 +1,33 @@
+package info.aspirecn.iov.yysj.paramtransfer;
+
+import lombok.extern.slf4j.Slf4j;
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cache.annotation.EnableCaching;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.core.env.Environment;
+import org.springframework.util.StopWatch;
+
+@SpringBootApplication
+@Slf4j
+@MapperScan("info.aspirecn.iov.yysj.paramtransfer.dao")
+@ComponentScan("info.aspirecn.iov.yysj.paramtransfer")
+@EnableCaching
+public class App 
+{
+    public static void main( String[] args )
+    {
+        StopWatch watch = new StopWatch();
+        watch.start();
+        ApplicationContext context = SpringApplication.run(App.class, args);
+        Environment environment = context.getBean(Environment.class);
+        String applicationName = environment.getProperty("spring.application.name");
+        String infoName = environment.getProperty("info.name");
+        String infoVersion = environment.getProperty("info.version");
+        watch.stop();
+        log.info("{} Ver.{} ({}) 启动完毕, times={}s", infoName, infoVersion,
+                applicationName, watch.getTotalTimeSeconds());
+    }
+}

+ 36 - 0
src/main/java/info/aspirecn/iov/yysj/paramtransfer/Swagger2.java

@@ -0,0 +1,36 @@
+package info.aspirecn.iov.yysj.paramtransfer;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Profile;
+import springfox.documentation.builders.ApiInfoBuilder;
+import springfox.documentation.builders.PathSelectors;
+import springfox.documentation.builders.RequestHandlerSelectors;
+import springfox.documentation.service.ApiInfo;
+import springfox.documentation.spi.DocumentationType;
+import springfox.documentation.spring.web.plugins.Docket;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+@EnableSwagger2
+@Configuration
+public class Swagger2 {
+
+    @Bean
+    public Docket createRestApi() {
+
+        return new Docket(DocumentationType.SWAGGER_2)
+                .apiInfo(apiInfo())
+                .select()
+                .apis(RequestHandlerSelectors.basePackage("info.aspirecn.iov.yysj.paramtransfer.action"))
+                .paths(PathSelectors.any())
+                .build();
+    }
+
+    private ApiInfo apiInfo() {
+        return new ApiInfoBuilder().title("用户操作Api")
+                .description("")
+                .termsOfServiceUrl("")
+                .version("1.0.0").build();
+    }
+
+}

+ 83 - 0
src/main/java/info/aspirecn/iov/yysj/paramtransfer/action/YysjUserAction.java

@@ -0,0 +1,83 @@
+package info.aspirecn.iov.yysj.paramtransfer.action;
+
+import info.aspirecn.iov.yysj.paramtransfer.entity.YyProduct;
+import info.aspirecn.iov.yysj.paramtransfer.inter.YysjUserActionInterface;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjUser;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct;
+import info.aspirecn.iov.yysj.paramtransfer.service.YysjUserService;
+import io.swagger.annotations.ApiOperation;
+import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.io.UnsupportedEncodingException;
+import java.util.List;
+@RestController
+@Data
+@Slf4j
+public class YysjUserAction implements YysjUserActionInterface {
+    @Autowired
+    private YysjUserService userService;
+
+
+
+
+    @Override
+    @ApiOperation(value="获取用户信息")
+    public YysjUser getUser(@RequestParam("userId") String userId) {
+        YysjUser yysjUser =  userService.getUser(userId);
+        return yysjUser;
+    }
+
+
+    @Override
+    @ApiOperation(value="getYysjProductIdByUserId")
+    public  List<YysjProduct> getYysjProductIdByUserId(@RequestParam(name="userId") String userId,@RequestParam(name="type") int type){
+        return userService.getYysjProductIdByUserId(userId,type);
+    }
+
+    @GetMapping(value = "testUtf8")
+    public  void testUtf8(@RequestParam(name="customBody") String customBody){
+        try {
+            String str = new String(customBody.getBytes(),"utf-8");
+            log.error("flag:{}",str.equals(customBody));
+        } catch (UnsupportedEncodingException e) {
+            log.error("UnsupportedEncodingException:{}",e);
+        }
+    }
+    @Override
+    @ApiOperation(value="getSjjhProduct")
+    public  List<String> getSjjhProduct(){
+        return userService.getSjjhProduct();
+    }
+    @Override
+    @ApiOperation(value="delelteYysjByUserId")
+    public int delelteYysjByUserId(@RequestParam(name = "userId") String userId, @RequestParam(name = "productId") String productId){
+        return userService.delelteYysjByUserId(userId,productId);
+    }
+    @PostMapping("/addYysjProduct.do")
+    @ApiOperation(value = "添加数据交互和云雁的产品关系")
+    public int addSjjhProduct(@RequestBody YyProduct yyProduct){
+
+        int result = userService.addYyproduct(yyProduct);
+       return result;
+    }
+    @GetMapping("/getYyproducts.do")
+    @ApiOperation(value = "获取云雁产品")
+    public  List<YysjProduct> getYyproducts(){
+        return userService.selectYyproducts();
+    }
+    @PostMapping("/updateYyproduct.do")
+    @ApiOperation(value = "修改云雁产品")
+    public int updateYyproduct(@RequestBody YysjProduct yysjProduct){
+        return userService.updateYyproduct(yysjProduct);
+    }
+
+
+    @GetMapping("/updateSjjhproduct.do")
+    @ApiOperation(value = "删除数据交互产品")
+    public  int updateSjjhproduct(@RequestParam(name="yysjId") String yysjId,@RequestParam(name="sjjhId") String sjjhId){
+        return userService.updateSjjhproduct(yysjId,sjjhId);
+    }
+}

+ 16 - 0
src/main/java/info/aspirecn/iov/yysj/paramtransfer/common/Property.java

@@ -0,0 +1,16 @@
+package info.aspirecn.iov.yysj.paramtransfer.common;
+
+import lombok.Data;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+@Component
+@ConfigurationProperties(prefix = "common")
+@Data
+public class Property {
+    private Map<String,Map<String,String>> requestParamTransfer;
+}
+
+

+ 28 - 0
src/main/java/info/aspirecn/iov/yysj/paramtransfer/dao/YysjUserMapper.java

@@ -0,0 +1,28 @@
+package info.aspirecn.iov.yysj.paramtransfer.dao;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjUser;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.beans.factory.annotation.Value;
+
+import java.util.List;
+
+@Mapper
+public interface YysjUserMapper {
+    //根据用户id获取用户信息
+    YysjUser getUser(String userId);
+
+    List<YysjProduct> getYysjProductIdByUserId(@Param("userId") String userId,@Param("type") int type);
+    List<String> getSjjhProduct();
+    int delelteYysjByUserId(@Param("userId") String userId,@Param("produceId") String produceId);
+    int addYyproduct(YysjProduct yysjProduct);
+
+    int addYyproductRelation(@Value("yysjId") String yysjId,@Value("sjjhId") String sjjhId);
+
+    List<YysjProduct>  selectYyproducts();
+
+    int updateYyproduct(YysjProduct yysjProduct);
+
+
+    int  updateSjjhproduct(@Param("yysjId") String yysjId,@Param("sjjhId") String sjjhId);
+}

+ 11 - 0
src/main/java/info/aspirecn/iov/yysj/paramtransfer/entity/YyProduct.java

@@ -0,0 +1,11 @@
+package info.aspirecn.iov.yysj.paramtransfer.entity;
+
+import lombok.Data;
+
+@Data
+public class YyProduct {
+    private String productName;
+    private String productCode;
+    private String sjjhProductId;
+    private int type;
+}

+ 21 - 0
src/main/java/info/aspirecn/iov/yysj/paramtransfer/service/YysjUserService.java

@@ -0,0 +1,21 @@
+package info.aspirecn.iov.yysj.paramtransfer.service;
+import info.aspirecn.iov.yysj.paramtransfer.entity.YyProduct;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjUser;
+
+import java.util.List;
+
+public interface YysjUserService {
+    public YysjUser getUser(String userId);
+    public   List<YysjProduct> getYysjProductIdByUserId(String userId,int type);
+    public List<String> getSjjhProduct();
+    public int delelteYysjByUserId(String userId,String productId);
+    public int addYyproduct(YyProduct yyProduct);
+
+    public int updateYyproduct(YysjProduct yyProduct);
+
+
+    public List<YysjProduct> selectYyproducts();
+
+    public int updateSjjhproduct(String yysjId,String sjjhId);
+}

+ 83 - 0
src/main/java/info/aspirecn/iov/yysj/paramtransfer/service/YysjUserServiceImpl.java

@@ -0,0 +1,83 @@
+package info.aspirecn.iov.yysj.paramtransfer.service;
+
+import info.aspirecn.iov.yysj.paramtransfer.dao.YysjUserMapper;
+import info.aspirecn.iov.yysj.paramtransfer.entity.YyProduct;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjUser;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Base64;
+import java.util.List;
+@Service
+@Slf4j
+public class YysjUserServiceImpl implements YysjUserService {
+    @Autowired
+    private YysjUserMapper yysjUserMapper;
+    @Override
+    public YysjUser getUser(String userId) {
+        YysjUser yysjUser =  yysjUserMapper.getUser(userId);
+        log.info("yysjUser:{}",yysjUser);
+        return yysjUser;
+    }
+
+
+    @Override
+    public List<YysjProduct> getYysjProductIdByUserId(String userId,int type) {
+        List<YysjProduct>  yysjProducts = yysjUserMapper.getYysjProductIdByUserId(userId, type);
+        log.info("yysjProductIds:{}",yysjProducts);
+        return yysjProducts;
+
+    }
+
+    @Override
+    public List<String> getSjjhProduct() {
+        List<String>  sjjhProductIds = yysjUserMapper.getSjjhProduct();
+
+        return sjjhProductIds;
+
+    }
+    @Override
+    public int delelteYysjByUserId(String userId,String productId) {
+        int result = yysjUserMapper.delelteYysjByUserId(userId,productId);
+
+        return result;
+
+    }
+
+    @Override
+    public int addYyproduct(YyProduct yyProduct){
+        YysjProduct yysjProduct = new YysjProduct();
+        yysjProduct.setYysjProductCode(yyProduct.getProductCode());
+        yysjProduct.setProduceName(yyProduct.getProductName());
+        yysjProduct.setType(yyProduct.getType());
+        int result = yysjUserMapper.addYyproduct(yysjProduct);
+         if(yysjProduct.getYysjProductId()!=null){
+             result= yysjUserMapper.addYyproductRelation(yysjProduct.getYysjProductId(),yyProduct.getSjjhProductId());
+             if(result!=1){
+                return 3;
+             }
+
+         }else{
+             return 2;
+         }
+         return 1;
+    }
+
+    @Override
+    public int updateYyproduct(YysjProduct yyProduct){
+       return yysjUserMapper.updateYyproduct(yyProduct);
+    }
+
+
+    @Override
+    public List<YysjProduct> selectYyproducts(){
+       return  yysjUserMapper.selectYyproducts();
+    }
+
+    @Override
+    public int updateSjjhproduct(String yysjId,String sjjhId) {
+        return yysjUserMapper.updateSjjhproduct(yysjId,sjjhId);
+    }
+}

+ 3 - 0
src/main/resources/config/banner.txt

@@ -0,0 +1,3 @@
+*******************************************************************************
+	 @project.artifactId@  (version:@project.version@)
+*******************************************************************************

+ 46 - 0
src/main/resources/config/bootstrap.yml

@@ -0,0 +1,46 @@
+spring:
+  application:
+    name:  cloud-yysj-servicenode-paramtransfer
+  jackson:
+    time-zone: GMT+8
+  banner:
+    location: classpath:config/banner.txt
+  sleuth:
+    sampler:
+      probability: 0.1
+    web:
+      additional-skip-pattern: /api/v2/spans
+  zipkin:
+    base-url: http://127.0.0.1:${server.port}
+  output:
+    ansi:
+      enabled: DETECT
+  cloud:
+    kubernetes:
+      config:
+        sources:
+          - name: ${spring.application.name}
+            namespace: cloud-yysj
+
+mybatis:
+  mapper-locations: classpath:mapping/*Mapper.xml
+server:
+  port: 8080
+management:
+  server:
+    port: 8081
+  endpoint:
+    restart:
+      enabled: true
+    health:
+      show-details: always
+  endpoints:
+    enabled-by-default: true
+    web:
+      exposure:
+        include: "*"
+
+
+info:
+  name: 获取云验产品
+  version: '@project.version@'

+ 68 - 0
src/main/resources/config/cloud-yysj-service-paramtransfer.yaml

@@ -0,0 +1,68 @@
+
+
+server:
+  tomcat:
+    accesslog:
+      buffered: false
+      enabled: true
+      prefix: access_${spring.cloud.client.hostname}_${spring.application.name}_${server.port}
+      directory: ${logging.path}
+      pattern: '{"DateTime":"%{yyyy-MM-dd''T''HH:mm:ss.SSSZZ}t","ClientIP":"%a","Method":"%m","URI":"%U","RequestProtocol":"%H","ResponseCode":%s
+                               ,"ResponseTime":%D,"UserAgent":"%{user-agent}i","X-Forwarded-For":"%{x-forwarded-for}r","X-User-IP":"","traceId":"%{x-b3-traceid}i","id":"%{x-b3-spanid}r",
+                               "parentId":"%{x-b3-parentspanid}i","ApplicationName":"${spring.application.name}"}'
+  servlet:
+    context-path: /
+    session:
+      cookie:
+        path: /
+paramtransfer:
+  url: http://cloud-yysj-servicenode-paramtransfer.cloud-yysj:8080
+spring:
+  redis:
+    #数据库索引
+    database: 0
+    host: iov-yysj-redis.cloud-yysj
+    port: 6379
+    jedis:
+      pool:
+        #最大连接数
+        max-active: 8
+        #最大阻塞等待时间(负数表示没限制)
+        max-wait: -1
+        #最大空闲
+        max-idle: 8
+        #最小空闲
+        min-idle: 0
+  #datasource
+  datasource:
+    url: jdbc:mysql://192.168.16.12:3306/cloud_yysj?characterEncoding=UTF-8&allowMultiQueries=true
+    username: cloud_yysj
+    password: BV0jy0PRibVT3jnKjd
+    type: com.alibaba.druid.pool.DruidDataSource
+    driver-class-name: com.mysql.jdbc.Driver
+    druid:
+      max-active: 20
+      initial-size: 2
+      max-wait: 20000
+      min-idle: 2
+  cache:
+    type: redis
+
+
+#logging
+logging:
+  config: classpath:config/logback-spring.xml
+  file: ${logging.path}/catalina_${spring.cloud.client.hostname}_${spring.application.name}_${server.port}.out
+  level:
+    info:
+      aspirecn:
+        iov: INFO
+    root: WARN
+  path: /apps/var/jakarta/logs
+ribbon:
+  ReadTimeout: 5000
+  ConnectTimeout: 3000
+  OkToRetryOnAllOperations : true
+  MaxAutoRetries: 2
+  MaxAutoRetriesNextServer: 2
+

+ 32 - 0
src/main/resources/config/logback-spring.xml

@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+	<include resource="org/springframework/boot/logging/logback/defaults.xml" />
+	<include
+		resource="org/springframework/boot/logging/logback/console-appender.xml" />
+
+	<property name="LOG_FILE"
+		value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/spring.log}" />		
+	<springProperty scope="context" name="LOG_PATH" source="logging.path" defaultValue="/apps/var/jakarta/logs" />
+	<springProperty scope="context" name="application_name" source="spring.application.name" defaultValue="iov-sjjh-servicenode-channel" />
+
+	<appender name="TIME_FILE"
+		class="ch.qos.logback.core.rolling.RollingFileAppender">
+		<encoder>
+			<pattern>${FILE_LOG_PATTERN}</pattern>
+		</encoder>
+		<file>${LOG_FILE}</file>
+		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+			<fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.%i</fileNamePattern>
+			<maxHistory>10</maxHistory>
+			<timeBasedFileNamingAndTriggeringPolicy
+				class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+				<maxFileSize>100MB</maxFileSize>
+			</timeBasedFileNamingAndTriggeringPolicy>
+		</rollingPolicy>
+	</appender>
+	
+	<root level="debug">
+		<appender-ref ref="CONSOLE" />
+		<appender-ref ref="TIME_FILE" />
+	</root>
+</configuration>

+ 50 - 0
src/main/resources/mapping/yysjUserProduceMapper.xml

@@ -0,0 +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="info.aspirecn.iov.yysj.paramtransfer.dao.YysjUserMapper">
+    <resultMap id="BaseResultMap" type="info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjUser">
+        <result column="userId" property="userId" jdbcType="VARCHAR"/>
+        <result column="appId" property="appId" jdbcType="VARCHAR"/>
+        <result column="secret" property="secret" jdbcType="VARCHAR"/>
+        <result column="sjjhUserId" property="sjjhUserId" jdbcType="VARCHAR"/>
+    </resultMap>
+    <resultMap id="yysjProduct" type="info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct">
+        <result column="yysjProductId" property="yysjProductId" jdbcType="VARCHAR"/>
+        <result column="produceName" property="produceName" jdbcType="VARCHAR"/>
+        <result column="productCode" property="yysjProductCode" jdbcType="VARCHAR"/>
+        <collection property="sjjhProductId" ofType="java.lang.String">
+            <result column="productId"/>
+        </collection>
+    </resultMap>
+
+    <select id="getUser" resultMap="BaseResultMap">
+        SELECT
+            userId,appId,secret,sjjhUserId
+        FROM yysj_user
+        where userId=#{userId}
+    </select>
+<select id="getYysjProductIdByUserId" resultMap="yysjProduct">
+    SELECT up.produceId as yysjProductId,produceName,productCode,pr.sjjhId as productId FROM yysj_user_produce up,yysj_produce pc,yysj_sjjh_produce_relevance pr
+     WHERE up.produceId=pc.id AND pc.id = pr.yysjId AND userId=#{userId} and pc.type=#{type}
+</select>
+ <select id="getSjjhProduct" resultType="java.lang.String">
+   SELECT sjjhId FROM yysj_sjjh_produce_relevance
+</select>
+    <delete id="delelteYysjByUserId">
+        delete from yysj_user_produce where userId=#{userId}  and produceId=#{produceId}
+    </delete>
+    <insert id="addYyproduct"  useGeneratedKeys="true" keyProperty="yysjProductId" parameterType="info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct">
+        INSERT INTO yysj_produce (produceName,TYPE,createTime,updateTime,productCode)  VALUES(#{produceName},#{type},now(),now(),#{yysjProductCode});
+    </insert>
+    <update id="updateYyproduct" parameterType="info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct">
+        update yysj_produce set produceName=#{produceName},productCode=#{yysjProductCode},type=#{type} where id=#{yysjProductId}
+    </update>
+    <select id="selectYyproducts" resultType="info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct">
+        select id as yysjProductId,produceName,productCode as yysjProductCode,type  from yysj_produce
+    </select>
+    <insert id="addYyproductRelation">
+        INSERT INTO yysj_sjjh_produce_relevance (yysjId,sjjhId,createTime,updateTime)  VALUES(#{yysjId},#{sjjhId},now(),now());
+    </insert>
+    <delete id="updateSjjhproduct">
+        update yysj_sjjh_produce_relevance set sjjhId=#{sjjhId} where yysjId=#{yysjId}
+    </delete>
+</mapper>