rename table to attached_file, attached_image
This commit is contained in:
parent
0ab913e0a9
commit
3f00923543
@ -111,7 +111,7 @@ public class ApplicationController
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/add-image", method = RequestMethod.POST)
|
||||
public ViewModel<ApplicationImage> addImage(
|
||||
public ViewModel<AttachedImage> addImage(
|
||||
@Valid ApplicationImageFormForCreate form) {
|
||||
Assert.state(!form.getImage().isEmpty(), "Image content is empty");
|
||||
form.setAdmin(getAuthUser().getUser().getData().isAdmin());
|
||||
@ -131,7 +131,7 @@ public class ApplicationController
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/add-attachment", method = RequestMethod.POST)
|
||||
public ViewModel<ApplicationAttachment> addAttachment(
|
||||
public ViewModel<AttachedFile> addAttachment(
|
||||
@Valid ApplicationAttachmentFormForCreate form) {
|
||||
Assert.state(!form.getAttachment().isEmpty(), "Image content is empty");
|
||||
form.setAdmin(getAuthUser().getUser().getData().isAdmin());
|
||||
|
@ -6,7 +6,7 @@ import me.chyxion.tigon.model.ViewModel;
|
||||
import com.pudonghot.ambition.crm.model.User;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import me.chyxion.tigon.shiro.service.AuthService;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.service.UserService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
@ -6,7 +6,7 @@ import me.chyxion.tigon.model.BaseModel;
|
||||
import me.chyxion.tigon.model.ViewModel;
|
||||
import me.chyxion.tigon.model.ListResult;
|
||||
import me.chyxion.tigon.service.BaseQueryService;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
@ -10,7 +10,7 @@ import org.apache.ibatis.annotations.Param;
|
||||
import com.pudonghot.ambition.crm.model.User;
|
||||
import com.pudonghot.ambition.crm.model.HomePage;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.apache.shiro.authz.annotation.RequiresRoles;
|
||||
import com.pudonghot.ambition.crm.service.HomePageService;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
@ -14,7 +14,7 @@ import org.apache.ibatis.annotations.Param;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import com.pudonghot.ambition.crm.model.User;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.service.UserService;
|
||||
import org.apache.shiro.authz.annotation.RequiresRoles;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
@ -5,9 +5,9 @@ import java.util.List;
|
||||
import javax.validation.Valid;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.model.Application;
|
||||
import com.pudonghot.ambition.crm.model.AttachedImage;
|
||||
import me.chyxion.tigon.service.BaseCrudByFormService;
|
||||
import com.pudonghot.ambition.crm.model.ApplicationImage;
|
||||
import com.pudonghot.ambition.crm.model.ApplicationAttachment;
|
||||
import com.pudonghot.ambition.crm.model.AttachedFile;
|
||||
import com.pudonghot.ambition.crm.form.update.ApplicationFormForUpdate;
|
||||
import com.pudonghot.ambition.crm.form.create.ApplicationFormForCreate;
|
||||
import com.pudonghot.ambition.crm.form.create.ApplicationImageFormForCreate;
|
||||
@ -27,7 +27,7 @@ public interface ApplicationService
|
||||
* add image
|
||||
* @param form form
|
||||
*/
|
||||
ApplicationImage addImage(@Valid ApplicationImageFormForCreate form);
|
||||
AttachedImage addImage(@Valid ApplicationImageFormForCreate form);
|
||||
|
||||
/**
|
||||
* remove image
|
||||
@ -48,7 +48,7 @@ public interface ApplicationService
|
||||
* add attachment
|
||||
* @param form form
|
||||
*/
|
||||
ApplicationAttachment addAttachment(@Valid ApplicationAttachmentFormForCreate form);
|
||||
AttachedFile addAttachment(@Valid ApplicationAttachmentFormForCreate form);
|
||||
|
||||
/**
|
||||
* remove attachment
|
||||
|
@ -3,7 +3,7 @@ package com.pudonghot.ambition.crm.service;
|
||||
import java.util.List;
|
||||
import me.chyxion.tigon.model.ViewModel;
|
||||
import javax.validation.constraints.Min;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.model.CustomerIssue;
|
||||
import me.chyxion.tigon.service.BaseCrudByFormService;
|
||||
import com.pudonghot.ambition.crm.form.create.CustomerIssueFormForCreate;
|
||||
|
@ -1,7 +1,7 @@
|
||||
package com.pudonghot.ambition.crm.service;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.hibernate.validator.constraints.NotEmpty;
|
||||
import me.chyxion.tigon.service.BaseCrudByFormService;
|
||||
import com.pudonghot.ambition.crm.model.CustomerProperty;
|
||||
|
@ -4,7 +4,7 @@ import java.io.File;
|
||||
import java.io.InputStream;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import com.pudonghot.ambition.crm.model.Customer;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import me.chyxion.tigon.service.BaseCrudByFormService;
|
||||
import com.pudonghot.ambition.crm.form.create.CustomerFormForCreate;
|
||||
import com.pudonghot.ambition.crm.form.update.CustomerFormForUpdate;
|
||||
|
@ -2,7 +2,7 @@ package com.pudonghot.ambition.crm.service;
|
||||
|
||||
import java.io.InputStream;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import me.chyxion.tigon.service.BaseCrudByFormService;
|
||||
import com.pudonghot.ambition.crm.model.CustomerYearToDateSale;
|
||||
import com.pudonghot.ambition.crm.form.create.CustomerYearToDateSaleFormForCreate;
|
||||
|
@ -2,7 +2,7 @@ package com.pudonghot.ambition.crm.service;
|
||||
|
||||
import me.chyxion.tigon.model.ViewModel;
|
||||
import com.pudonghot.ambition.crm.model.HomePage;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import me.chyxion.tigon.service.BaseCrudByFormService;
|
||||
import com.pudonghot.ambition.crm.form.create.HomePageFormForCreate;
|
||||
import com.pudonghot.ambition.crm.form.update.HomePageFormForUpdate;
|
||||
|
@ -5,7 +5,7 @@ import javax.validation.Valid;
|
||||
import me.chyxion.tigon.model.ViewModel;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import com.pudonghot.ambition.crm.model.User;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import me.chyxion.tigon.service.BaseCrudByFormService;
|
||||
import com.pudonghot.ambition.crm.form.create.UserFormForCreate;
|
||||
import com.pudonghot.ambition.crm.form.update.UserFormForUpdate;
|
||||
|
@ -11,7 +11,7 @@ import javax.validation.constraints.Min;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import me.chyxion.tigon.service.BaseCrudService;
|
||||
import com.pudonghot.ambition.crm.model.WeekGoal;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.form.update.WeekGoalFormForUpdate;
|
||||
|
||||
/**
|
||||
|
@ -46,9 +46,9 @@ public class ApplicationServiceSupport
|
||||
implements ApplicationService {
|
||||
|
||||
@Autowired
|
||||
private ApplicationImageMapper imageMapper;
|
||||
private AttachedImageMapper imageMapper;
|
||||
@Autowired
|
||||
private ApplicationAttachmentMapper attachmentMapper;
|
||||
private AttachedFileMapper attachmentMapper;
|
||||
@Autowired
|
||||
private DiskFileApi fileApi;
|
||||
@Autowired
|
||||
@ -72,8 +72,8 @@ public class ApplicationServiceSupport
|
||||
final Date now = new Date();
|
||||
application.setDateUpdated(now);
|
||||
|
||||
uploadFiles(id, 1, form.getImages(), form.getImageTitles(), form.getCreatedBy(), ApplicationImage::new, imageMapper::insert);
|
||||
uploadFiles(id, 1, form.getAttachments(), form.getAttachmentTitles(), form.getCreatedBy(), ApplicationAttachment::new, attachmentMapper::insert);
|
||||
uploadFiles(id, 1, form.getImages(), form.getImageTitles(), form.getCreatedBy(), AttachedImage::new, imageMapper::insert);
|
||||
uploadFiles(id, 1, form.getAttachments(), form.getAttachmentTitles(), form.getCreatedBy(), AttachedFile::new, attachmentMapper::insert);
|
||||
mapper.insert(application);
|
||||
return toViewModel(application);
|
||||
}
|
||||
@ -130,8 +130,8 @@ public class ApplicationServiceSupport
|
||||
@Override
|
||||
public ViewModel<Application> findViewModel(final String id) {
|
||||
final Search search =
|
||||
new Search(ApplicationImage.APPLICATION_ID, id)
|
||||
.asc(ApplicationImage.SORT);
|
||||
new Search(AttachedImage.OWNER_ID, id)
|
||||
.asc(AttachedImage.SORT);
|
||||
|
||||
return super.findViewModel(id)
|
||||
.setAttr("images", imageMapper.list(search))
|
||||
@ -142,7 +142,7 @@ public class ApplicationServiceSupport
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@Override
|
||||
public ApplicationImage addImage(final ApplicationImageFormForCreate form) {
|
||||
public AttachedImage addImage(final ApplicationImageFormForCreate form) {
|
||||
final String applicationId = form.getApplicationId();
|
||||
final String createdBy = form.getCreatedBy();
|
||||
validatePerm(applicationId, createdBy, form.isAdmin());
|
||||
@ -151,7 +151,7 @@ public class ApplicationServiceSupport
|
||||
new MultipartFile[] {form.getImage()},
|
||||
new String[] {form.getNote()},
|
||||
createdBy,
|
||||
ApplicationImage::new,
|
||||
AttachedImage::new,
|
||||
imageMapper::insert).iterator().next();
|
||||
}
|
||||
|
||||
@ -176,7 +176,7 @@ public class ApplicationServiceSupport
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@Override
|
||||
public ApplicationAttachment addAttachment(final ApplicationAttachmentFormForCreate form) {
|
||||
public AttachedFile addAttachment(final ApplicationAttachmentFormForCreate form) {
|
||||
final String applicationId = form.getApplicationId();
|
||||
final String createdBy = form.getCreatedBy();
|
||||
validatePerm(applicationId, createdBy, form.isAdmin());
|
||||
@ -185,7 +185,7 @@ public class ApplicationServiceSupport
|
||||
new MultipartFile[] {form.getAttachment()},
|
||||
new String[] {form.getNote()},
|
||||
createdBy,
|
||||
ApplicationAttachment::new,
|
||||
AttachedFile::new,
|
||||
attachmentMapper::insert).iterator().next();
|
||||
}
|
||||
|
||||
@ -227,7 +227,7 @@ public class ApplicationServiceSupport
|
||||
Assert.state(customerApplicationMapper.count(
|
||||
new Search(CustomerApplication.APPLICATION_ID, id)) == 0,
|
||||
"Application [" + id + "] is in using");
|
||||
final Search appFileSearch = new Search(ApplicationImage.APPLICATION_ID, id);
|
||||
final Search appFileSearch = new Search(AttachedImage.OWNER_ID, id);
|
||||
imageMapper.list(appFileSearch).forEach(
|
||||
image -> fileApi.deleteById(image.getFileId()));
|
||||
imageMapper.delete(appFileSearch);
|
||||
@ -239,7 +239,7 @@ public class ApplicationServiceSupport
|
||||
return app;
|
||||
}
|
||||
|
||||
private <T extends ApplicationFile> List<T> uploadFiles(
|
||||
private <T extends Attachment> List<T> uploadFiles(
|
||||
final String applicationId,
|
||||
int sort,
|
||||
final MultipartFile[] files,
|
||||
@ -266,7 +266,7 @@ public class ApplicationServiceSupport
|
||||
FilenameUtils.getExtension(originalFilename),
|
||||
originalFilename);
|
||||
appFile.setId(fileId);
|
||||
appFile.setApplicationId(applicationId);
|
||||
appFile.setOwnerId(applicationId);
|
||||
appFile.setFileId(fileInfo.getId());
|
||||
appFile.setUrl(fileInfo.getUrl());
|
||||
appFile.setSort(sort++);
|
||||
@ -291,7 +291,7 @@ public class ApplicationServiceSupport
|
||||
return appFiles;
|
||||
}
|
||||
|
||||
private <T extends ApplicationFile> void updateFile(
|
||||
private <T extends Attachment> void updateFile(
|
||||
final ApplicationFileFormForUpdate form,
|
||||
final Function<String, T> finder,
|
||||
final Function<String, List<T>> listSort,
|
||||
@ -300,7 +300,7 @@ public class ApplicationServiceSupport
|
||||
final String id = form.getId();
|
||||
final T appImage = finder.apply(id);
|
||||
Assert.state(appImage != null, "No application file [" + id + "] found");
|
||||
final String applicationId = appImage.getApplicationId();
|
||||
final String applicationId = appImage.getOwnerId();
|
||||
final String updatedBy = form.getUpdatedBy();
|
||||
validatePerm(applicationId, updatedBy, form.isAdmin());
|
||||
|
||||
@ -326,7 +326,7 @@ public class ApplicationServiceSupport
|
||||
}
|
||||
}
|
||||
|
||||
private <T extends ApplicationFile> void removeFile(
|
||||
private <T extends Attachment> void removeFile(
|
||||
final String id,
|
||||
final String userId,
|
||||
final boolean admin,
|
||||
@ -335,7 +335,7 @@ public class ApplicationServiceSupport
|
||||
final Function<String, Integer> sortUpdater) {
|
||||
final T appFile = finder.apply(id);
|
||||
Assert.state(appFile != null, "No application file [" + id + "] found");
|
||||
final String applicationId = appFile.getApplicationId();
|
||||
final String applicationId = appFile.getOwnerId();
|
||||
validatePerm(applicationId, userId, admin);
|
||||
fileApi.delete(fileFolder(applicationId) + "/" + id);
|
||||
deleter.apply(id);
|
||||
|
@ -7,7 +7,7 @@ import javax.validation.constraints.Min;
|
||||
import me.chyxion.tigon.model.ViewModel;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.model.CustomerIssue;
|
||||
import com.pudonghot.ambition.crm.service.UserService;
|
||||
import com.pudonghot.ambition.crm.mapper.CustomerIssueMapper;
|
||||
|
@ -8,7 +8,7 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import com.pudonghot.ambition.crm.model.User;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.pudonghot.ambition.crm.util.Sha512Utils;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.mapper.UserMapper;
|
||||
import com.pudonghot.ambition.crm.service.UserService;
|
||||
import com.pudonghot.ambition.crm.form.create.UserFormForCreate;
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.pudonghot.ambition.crm;
|
||||
|
||||
import com.pudonghot.ambition.crm.model.AttachedImage;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.joda.time.DateTime;
|
||||
import org.joda.time.Interval;
|
||||
@ -10,7 +11,6 @@ import java.text.ParseException;
|
||||
import org.joda.time.DateTimeConstants;
|
||||
import org.apache.commons.lang3.time.DateUtils;
|
||||
import com.pudonghot.ambition.crm.util.AmDateUtil;
|
||||
import com.pudonghot.ambition.crm.model.ApplicationImage;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
@ -96,7 +96,7 @@ public class TestDriver {
|
||||
|
||||
@Test
|
||||
public void testFloat() {
|
||||
ApplicationImage image = new ApplicationImage();
|
||||
AttachedImage image = new AttachedImage();
|
||||
image.setUrl("http://www.image.com");
|
||||
int sortOld = 2;
|
||||
image.setSort(sortOld - 1.5f);
|
||||
|
@ -12,10 +12,17 @@ get_real_path() {
|
||||
f=`dirname "$f"`/"$link"
|
||||
fi
|
||||
done
|
||||
eval "$2"="'$f'"
|
||||
echo "$f"
|
||||
}
|
||||
|
||||
get_real_path "$0" prg_path
|
||||
if [ "$1" = "prod" ]; then
|
||||
SERVER=lemo@116.62.189.211
|
||||
else
|
||||
echo "Profile required."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
prg_path=$(get_real_path "$0")
|
||||
echo "Script Path [$prg_path]"
|
||||
PROJECT_HOME=$(dirname $prg_path)
|
||||
echo "Project Home [$PROJECT_HOME]"
|
||||
@ -23,18 +30,7 @@ cd "$PROJECT_HOME"
|
||||
mvn clean package -o -pl crm -am -DskipTests -Ptest
|
||||
|
||||
SERVICE_HOME=/data/program/lemo-crm
|
||||
echo "Service Home [$SERVICE_HOME]"
|
||||
# SERVER=ambition@101.236.35.13
|
||||
# SERVER=root@116.62.189.211
|
||||
|
||||
if [ "$1" = "prod" ]; then
|
||||
SERVER=lemo@116.62.189.211
|
||||
else
|
||||
SERVER=ambition@101.236.35.13
|
||||
fi
|
||||
|
||||
echo "$SERVER $SERVICE_HOME/bin/stop.sh"
|
||||
ssh "$SERVER" "$SERVICE_HOME/bin/stop.sh"
|
||||
echo "Service Home [$SERVICE_HOME], Server [$SERVER]"
|
||||
|
||||
echo "$SERVER [ -f $SERVICE_HOME/lib/main.jar ] && mv $SERVICE_HOME/lib/main.jar $SERVICE_HOME/main_prev.jar"
|
||||
ssh "$SERVER" "[ -f $SERVICE_HOME/lib/main.jar ] && mv $SERVICE_HOME/lib/main.jar $SERVICE_HOME/main_prev.jar"
|
||||
@ -42,6 +38,9 @@ ssh "$SERVER" "[ -f $SERVICE_HOME/lib/main.jar ] && mv $SERVICE_HOME/lib/main.ja
|
||||
echo "$PROJECT_HOME/crm/target/ambition-crm.jar $SERVER:$SERVICE_HOME/lib/main.jar"
|
||||
scp "$PROJECT_HOME/crm/target/ambition-crm.jar" "$SERVER:$SERVICE_HOME/lib/main.jar"
|
||||
|
||||
echo "$SERVER $SERVICE_HOME/bin/stop.sh"
|
||||
ssh "$SERVER" "$SERVICE_HOME/bin/stop.sh"
|
||||
|
||||
echo "$SERVER $SERVICE_HOME/bin/start.sh"
|
||||
ssh "$SERVER" "$SERVICE_HOME/bin/start.sh"
|
||||
|
||||
|
@ -5,7 +5,7 @@ import java.util.List;
|
||||
import java.io.InputStream;
|
||||
import javax.validation.constraints.Min;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
/**
|
||||
|
@ -6,7 +6,7 @@ import java.io.InputStream;
|
||||
import java.util.Collection;
|
||||
import java.awt.image.BufferedImage;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
/**
|
||||
|
@ -1,7 +1,7 @@
|
||||
package com.pudonghot.ambition.file;
|
||||
|
||||
import com.pudonghot.ambition.crm.model.FileInfo;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
|
@ -6,11 +6,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>crm-mapper</artifactId>
|
||||
<name>Ambition Mapper</name>
|
||||
<packaging>${packaging}</packaging>
|
||||
|
||||
<properties>
|
||||
<packaging>jar</packaging>
|
||||
</properties>
|
||||
|
||||
<parent>
|
||||
<groupId>com.pudonghot.ambition</groupId>
|
||||
@ -20,11 +16,6 @@
|
||||
</parent>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>javax.servlet-api</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.pudonghot.ambition</groupId>
|
||||
<artifactId>crm-model</artifactId>
|
||||
@ -54,11 +45,6 @@
|
||||
</dependency>
|
||||
|
||||
<!-- Test And Optional Dependencies -->
|
||||
<dependency>
|
||||
<groupId>javax.el</groupId>
|
||||
<artifactId>javax.el-api</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework</groupId>
|
||||
<artifactId>spring-test</artifactId>
|
||||
@ -69,35 +55,19 @@
|
||||
<artifactId>junit</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-log4j2</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.aspectj</groupId>
|
||||
<artifactId>aspectjrt</artifactId>
|
||||
<version>1.8.0</version>
|
||||
<optional>true</optional>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.aspectj</groupId>
|
||||
<artifactId>aspectjweaver</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>cglib</groupId>
|
||||
<artifactId>cglib</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.logging.log4j</groupId>
|
||||
<artifactId>log4j-slf4j-impl</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.logging.log4j</groupId>
|
||||
<artifactId>log4j-core</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>jcl-over-slf4j</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
@ -123,49 +93,6 @@
|
||||
<value>true</value>
|
||||
</property>
|
||||
</activation>
|
||||
<properties>
|
||||
<packaging>war</packaging>
|
||||
<maven.tomcat.port>8088</maven.tomcat.port>
|
||||
<log.dir>${project.basedir}/.log</log.dir>
|
||||
<log.level>DEBUG</log.level>
|
||||
<log.appender>
|
||||
<![CDATA[
|
||||
<AppenderRef ref="File" level="${log.level}" />
|
||||
<AppenderRef ref="Console" level="${log.level}" />
|
||||
]]>
|
||||
</log.appender>
|
||||
</properties>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>me.chyxion.tigon</groupId>
|
||||
<artifactId>tigon-codegen</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>me.chyxion.tigon</groupId>
|
||||
<artifactId>tigon-props-config</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>me.chyxion.tigon</groupId>
|
||||
<artifactId>tigon-web</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.logging.log4j</groupId>
|
||||
<artifactId>log4j-slf4j-impl</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.logging.log4j</groupId>
|
||||
<artifactId>log4j-core</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.tomcat.maven</groupId>
|
||||
<artifactId>tomcat7-maven-plugin</artifactId>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
<profile>
|
||||
<id>dep</id>
|
||||
|
@ -1,14 +0,0 @@
|
||||
package com.pudonghot.ambition.crm.mapper;
|
||||
|
||||
import me.chyxion.tigon.mybatis.BaseMapper;
|
||||
import com.pudonghot.ambition.crm.model.ApplicationAttachment;
|
||||
|
||||
/**
|
||||
* @author Shaun Chyxion <br>
|
||||
* chyxion@163.com <br>
|
||||
* Mar 11, 2018 11:39:49
|
||||
*/
|
||||
public interface ApplicationAttachmentMapper
|
||||
extends ApplicationFileMapper<ApplicationAttachment>,
|
||||
BaseMapper<String, ApplicationAttachment> {
|
||||
}
|
@ -1,38 +0,0 @@
|
||||
package com.pudonghot.ambition.crm.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.model.ApplicationFile;
|
||||
|
||||
/**
|
||||
* @author Shaun Chyxion <br>
|
||||
* chyxion@163.com <br>
|
||||
* Mar 11, 2018 11:39:49
|
||||
*/
|
||||
interface ApplicationFileMapper<T extends ApplicationFile> {
|
||||
|
||||
/**
|
||||
* find next sort
|
||||
* @param applicationId application id
|
||||
* @return next sort
|
||||
*/
|
||||
int nextSort(@NotBlank @Param("applicationId") String applicationId);
|
||||
|
||||
/**
|
||||
* update sort
|
||||
* @param applicationId application id
|
||||
* @return effected rows
|
||||
*/
|
||||
int updateSort(@NotBlank @Param("applicationId") String applicationId);
|
||||
|
||||
/**
|
||||
* list application files
|
||||
* @param applicationId
|
||||
* @return images
|
||||
*/
|
||||
List<T> listSort(
|
||||
@NotBlank
|
||||
@Param("applicationId")
|
||||
String applicationId);
|
||||
}
|
@ -1,14 +0,0 @@
|
||||
package com.pudonghot.ambition.crm.mapper;
|
||||
|
||||
import me.chyxion.tigon.mybatis.BaseMapper;
|
||||
import com.pudonghot.ambition.crm.model.ApplicationImage;
|
||||
|
||||
/**
|
||||
* @author Shaun Chyxion <br>
|
||||
* chyxion@163.com <br>
|
||||
* Mar 11, 2018 11:39:49
|
||||
*/
|
||||
public interface ApplicationImageMapper
|
||||
extends ApplicationFileMapper<ApplicationImage>,
|
||||
BaseMapper<String, ApplicationImage> {
|
||||
}
|
@ -15,24 +15,24 @@
|
||||
select
|
||||
<include refid="cols" />,
|
||||
(select group_concat(url order by sort separator 0x1d) from
|
||||
crm_application_image
|
||||
where application_id = a.id
|
||||
group by application_id) images,
|
||||
crm_attached_image
|
||||
where owner_id = a.id
|
||||
group by owner_id) images,
|
||||
|
||||
(select group_concat(note order by sort separator 0x1d) from
|
||||
crm_application_image
|
||||
where application_id = a.id
|
||||
group by application_id) image_titles,
|
||||
crm_attached_image
|
||||
where owner_id = a.id
|
||||
group by owner_id) image_titles,
|
||||
|
||||
(select group_concat(url order by sort separator 0x1d) from
|
||||
crm_application_attachment
|
||||
where application_id = a.id
|
||||
group by application_id) attachments,
|
||||
crm_attached_file
|
||||
where owner_id = a.id
|
||||
group by owner_id) attachments,
|
||||
|
||||
(select group_concat(note order by sort separator 0x1d) from
|
||||
crm_application_attachment
|
||||
where application_id = a.id
|
||||
group by application_id) attachment_titles
|
||||
crm_attached_file
|
||||
where owner_id = a.id
|
||||
group by owner_id) attachment_titles
|
||||
|
||||
from
|
||||
<include refid="table" /> a
|
||||
|
@ -0,0 +1,14 @@
|
||||
package com.pudonghot.ambition.crm.mapper;
|
||||
|
||||
import me.chyxion.tigon.mybatis.BaseMapper;
|
||||
import com.pudonghot.ambition.crm.model.AttachedFile;
|
||||
|
||||
/**
|
||||
* @author Shaun Chyxion <br>
|
||||
* chyxion@163.com <br>
|
||||
* Mar 11, 2018 11:39:49
|
||||
*/
|
||||
public interface AttachedFileMapper
|
||||
extends AttachmentMapper<AttachedFile>,
|
||||
BaseMapper<String, AttachedFile> {
|
||||
}
|
@ -9,17 +9,18 @@
|
||||
<!DOCTYPE mapper PUBLIC
|
||||
"-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.pudonghot.ambition.crm.mapper.ApplicationAttachmentMapper">
|
||||
<mapper namespace="com.pudonghot.ambition.crm.mapper.AttachedFileMapper">
|
||||
|
||||
<select id="nextSort" resultType="int">
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.ApplicationFileMapper.nextSort" />
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.AttachmentMapper.nextSort" />
|
||||
</select>
|
||||
|
||||
<update id="updateSort">
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.ApplicationFileMapper.updateSort" />
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.AttachmentMapper.updateSort" />
|
||||
</update>
|
||||
|
||||
<select id="listSort" resultType="com.pudonghot.ambition.crm.model.ApplicationAttachment">
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.ApplicationFileMapper.listSort" />
|
||||
<select id="listSort" resultType="com.pudonghot.ambition.crm.model.AttachedImage">
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.AttachmentMapper.listSort" />
|
||||
</select>
|
||||
|
||||
</mapper>
|
@ -0,0 +1,14 @@
|
||||
package com.pudonghot.ambition.crm.mapper;
|
||||
|
||||
import me.chyxion.tigon.mybatis.BaseMapper;
|
||||
import com.pudonghot.ambition.crm.model.AttachedImage;
|
||||
|
||||
/**
|
||||
* @author Shaun Chyxion <br>
|
||||
* chyxion@163.com <br>
|
||||
* Mar 11, 2018 11:39:49
|
||||
*/
|
||||
public interface AttachedImageMapper
|
||||
extends AttachmentMapper<AttachedImage>,
|
||||
BaseMapper<String, AttachedImage> {
|
||||
}
|
@ -9,17 +9,18 @@
|
||||
<!DOCTYPE mapper PUBLIC
|
||||
"-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.pudonghot.ambition.crm.mapper.ApplicationImageMapper">
|
||||
<mapper namespace="com.pudonghot.ambition.crm.mapper.AttachedImageMapper">
|
||||
|
||||
<select id="nextSort" resultType="int">
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.ApplicationFileMapper.nextSort" />
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.AttachmentMapper.nextSort" />
|
||||
</select>
|
||||
|
||||
<update id="updateSort">
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.ApplicationFileMapper.updateSort" />
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.AttachmentMapper.updateSort" />
|
||||
</update>
|
||||
|
||||
<select id="listSort" resultType="com.pudonghot.ambition.crm.model.ApplicationImage">
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.ApplicationFileMapper.listSort" />
|
||||
<select id="listSort" resultType="com.pudonghot.ambition.crm.model.AttachedImage">
|
||||
<include refid="com.pudonghot.ambition.crm.mapper.AttachmentMapper.listSort" />
|
||||
</select>
|
||||
|
||||
</mapper>
|
@ -0,0 +1,38 @@
|
||||
package com.pudonghot.ambition.crm.mapper;
|
||||
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.model.Attachment;
|
||||
|
||||
/**
|
||||
* @author Shaun Chyxion <br>
|
||||
* chyxion@163.com <br>
|
||||
* Mar 11, 2018 11:39:49
|
||||
*/
|
||||
interface AttachmentMapper<T extends Attachment> {
|
||||
|
||||
/**
|
||||
* find next sort
|
||||
* @param ownerId owner id
|
||||
* @return next sort
|
||||
*/
|
||||
int nextSort(@NotBlank @Param("ownerId") String ownerId);
|
||||
|
||||
/**
|
||||
* update sort
|
||||
* @param ownerId owner id
|
||||
* @return effected rows
|
||||
*/
|
||||
int updateSort(@NotBlank @Param("ownerId") String ownerId);
|
||||
|
||||
/**
|
||||
* list owner attachments
|
||||
* @param ownerId owner id
|
||||
* @return attachments
|
||||
*/
|
||||
List<T> listSort(
|
||||
@NotBlank
|
||||
@Param("ownerId")
|
||||
String ownerId);
|
||||
}
|
@ -9,12 +9,12 @@
|
||||
<!DOCTYPE mapper PUBLIC
|
||||
"-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.pudonghot.ambition.crm.mapper.ApplicationFileMapper">
|
||||
<mapper namespace="com.pudonghot.ambition.crm.mapper.AttachmentMapper">
|
||||
|
||||
<sql id="nextSort">
|
||||
select if (application_id, max(sort) + 1, 1)
|
||||
select if (owner_id, max(sort) + 1, 1)
|
||||
from <include refid="table" />
|
||||
where application_id = #{applicationId}
|
||||
where owner_id = #{ownerId}
|
||||
</sql>
|
||||
|
||||
<sql id="updateSort">
|
||||
@ -23,7 +23,7 @@
|
||||
select id, @cur_row := @cur_row + 1 sort
|
||||
from <include refid="table" />
|
||||
join (select @cur_row := 0) r
|
||||
where application_id = #{applicationId}
|
||||
where owner_id = #{ownerId}
|
||||
order by <include refid="table" />.sort) s
|
||||
on a.id = s.id
|
||||
set a.sort = s.sort
|
||||
@ -31,14 +31,14 @@
|
||||
|
||||
<sql id="listSort">
|
||||
select id, file_id,
|
||||
url, application_id,
|
||||
url, owner_id,
|
||||
created_by, date_created,
|
||||
updated_by, date_updated,
|
||||
enabled, note,
|
||||
@cur_row := @cur_row + 1 sort
|
||||
from <include refid="table" />
|
||||
join (select @cur_row := 0) r
|
||||
where application_id = #{applicationId}
|
||||
where owner_id = #{ownerId}
|
||||
order by <include refid="table" />.sort
|
||||
</sql>
|
||||
</mapper>
|
@ -4,7 +4,7 @@ import java.util.List;
|
||||
import javax.validation.constraints.Min;
|
||||
import me.chyxion.tigon.mybatis.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.model.CustomerIssue;
|
||||
|
||||
/**
|
||||
|
@ -9,7 +9,7 @@ import org.apache.ibatis.annotations.Param;
|
||||
import javax.validation.constraints.Min;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import com.pudonghot.ambition.crm.model.Customer;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -4,7 +4,7 @@ import java.util.List;
|
||||
import me.chyxion.tigon.mybatis.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import com.pudonghot.ambition.crm.model.User;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -1,6 +0,0 @@
|
||||
# CodeGen Config
|
||||
base.cols=enabled,note,date_created,date_updated,created_by,updated_by
|
||||
base.package=com.pudonghot.ambition.crm
|
||||
super.base.model.name=M3<String, String>
|
||||
super.base.model.full.name=me.chyxion.tigon.model.M3
|
||||
table.prefix=crm
|
@ -1,8 +0,0 @@
|
||||
# Config Dev
|
||||
|
||||
# Database
|
||||
datasource.host=127.0.0.1
|
||||
datasource.port=63306
|
||||
datasource.database-name=ambition_crm_test
|
||||
datasource.username=root
|
||||
datasource.password=696@2^~)oZ@^#*Q
|
@ -4,7 +4,7 @@ import org.junit.Test;
|
||||
import java.util.List;
|
||||
import org.junit.runner.RunWith;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import com.pudonghot.ambition.crm.model.ApplicationImage;
|
||||
import com.pudonghot.ambition.crm.model.AttachedImage;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
@ -19,14 +19,18 @@ import org.springframework.test.context.junit4.AbstractTransactionalJUnit4Spring
|
||||
@Slf4j
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
@ContextConfiguration("classpath*:spring/spring-*.xml")
|
||||
public class ApplicationImageMapperTest extends AbstractTransactionalJUnit4SpringContextTests {
|
||||
public class AttachedImageMapperTest extends AbstractTransactionalJUnit4SpringContextTests {
|
||||
@Autowired
|
||||
private ApplicationImageMapper mapper;
|
||||
private AttachedImageMapper mapper;
|
||||
@Autowired
|
||||
private AttachedFileMapper fileMapper;
|
||||
|
||||
@Test
|
||||
public void testListSort() {
|
||||
final List<ApplicationImage> images =
|
||||
final List<AttachedImage> images =
|
||||
mapper.listSort("5aadc3be13987ee957e00caf");
|
||||
log.info("Images: [{}].", images);
|
||||
log.info("Next attached file sort: [{}].", fileMapper.nextSort("5aadc3be13987ee957e00caf"));
|
||||
log.info("Next attached image sort: [{}].", mapper.nextSort("5aadc3be13987ee957e00caf"));
|
||||
}
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
package com.pudonghot.ambition.crm.mapper;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.junit.Test;
|
||||
|
||||
/**
|
||||
* @author Shaun Chyxion <br>
|
||||
* chyxion@163.com <br>
|
||||
* Nov 24, 2018 12:44:25
|
||||
*/
|
||||
@Slf4j
|
||||
public class TestDriver {
|
||||
|
||||
@Test
|
||||
public void run() {
|
||||
log.info("Run.");
|
||||
}
|
||||
}
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
/**
|
||||
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import me.chyxion.tigon.format.annotation.Trim;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import me.chyxion.tigon.format.annotation.EmptyToNull;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
/**
|
||||
|
@ -3,7 +3,7 @@ package com.pudonghot.ambition.crm.form.create;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.BaseForm;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -3,7 +3,7 @@ package com.pudonghot.ambition.crm.form.create;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import me.chyxion.tigon.format.annotation.EmptyToNull;
|
||||
|
||||
/**
|
||||
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import com.pudonghot.ambition.crm.model.CustomerProperty;
|
||||
|
||||
/**
|
||||
|
@ -5,7 +5,7 @@ import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FC2;
|
||||
import me.chyxion.tigon.format.annotation.Trim;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -7,7 +7,7 @@ import javax.validation.constraints.Pattern;
|
||||
import me.chyxion.tigon.format.annotation.Trim;
|
||||
import org.hibernate.validator.constraints.Email;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import static com.pudonghot.ambition.crm.common.Constants.GENDER_REGEXP;
|
||||
|
||||
/**
|
||||
|
@ -3,9 +3,9 @@ package com.pudonghot.ambition.crm.form.update;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FU2;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import me.chyxion.tigon.format.annotation.Trim;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import me.chyxion.tigon.format.annotation.EmptyToNull;
|
||||
|
||||
/**
|
||||
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FU2;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -4,7 +4,7 @@ import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FU2;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -5,7 +5,7 @@ import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FU2;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -3,7 +3,7 @@ package com.pudonghot.ambition.crm.form.update;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.form.FU2;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -8,7 +8,7 @@ import javax.validation.constraints.Pattern;
|
||||
import me.chyxion.tigon.format.annotation.Trim;
|
||||
import org.hibernate.validator.constraints.Email;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import me.chyxion.tigon.format.annotation.EmptyToNull;
|
||||
import static com.pudonghot.ambition.crm.common.Constants.GENDER_REGEXP;
|
||||
|
||||
|
@ -3,7 +3,7 @@ package com.pudonghot.ambition.crm.form.update;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
import org.hibernate.validator.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @version 0.0.1
|
||||
|
@ -11,7 +11,7 @@ import me.chyxion.tigon.mybatis.Table;
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Table("crm_application_attachment")
|
||||
public class ApplicationAttachment extends ApplicationFile {
|
||||
@Table("crm_attached_file")
|
||||
public class AttachedFile extends Attachment {
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
@ -11,7 +11,7 @@ import me.chyxion.tigon.mybatis.Table;
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Table("crm_application_image")
|
||||
public class ApplicationImage extends ApplicationFile {
|
||||
@Table("crm_attached_image")
|
||||
public class AttachedImage extends Attachment {
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
@ -3,6 +3,7 @@ package com.pudonghot.ambition.crm.model;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import me.chyxion.tigon.model.M3;
|
||||
import lombok.experimental.FieldNameConstants;
|
||||
|
||||
/**
|
||||
* @author Donghuang <br>
|
||||
@ -11,18 +12,13 @@ import me.chyxion.tigon.model.M3;
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
public class ApplicationFile extends M3<String, String> {
|
||||
@FieldNameConstants(prefix = "")
|
||||
public class Attachment extends M3<String, String> {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
// Column Names
|
||||
public static final String FILE_ID = "file_id";
|
||||
public static final String URL = "url";
|
||||
public static final String APPLICATION_ID = "application_id";
|
||||
public static final String SORT = "sort";
|
||||
|
||||
// Properties
|
||||
private String ownerId;
|
||||
private String fileId;
|
||||
private String url;
|
||||
private String applicationId;
|
||||
private float sort;
|
||||
}
|
@ -98,6 +98,12 @@
|
||||
<artifactId>commons-beanutils</artifactId>
|
||||
<!-- <version>1.9.2</version> -->
|
||||
<version>1.8.3</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>commons-logging</groupId>
|
||||
<artifactId>commons-logging</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jdom</groupId>
|
||||
|
Loading…
x
Reference in New Issue
Block a user