Compare commits

...

14 Commits

  1. 5
      application-tenant/tenant-admin/pom.xml
  2. 76
      application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/tenant/plugin/QuotationPlugin.java
  3. 25
      application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/tenant/plugin/StatusChangePlugin.java
  4. 2
      application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/upms/controller/LoginController.java
  5. 5
      application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/upms/model/constant/SysMenuType.java
  6. 2
      application-tenant/tenant-admin/src/main/resources/application-config.yml
  7. 32
      application-tenant/tenant-admin/src/main/resources/tenant-admin-dev.yml
  8. 32
      common/common-association/src/main/java/apelet/association/controller/ProjectListController.java
  9. 17
      common/common-association/src/main/java/apelet/association/controller/plugin/formPlugin/ClueManageFormPlugin.java
  10. 11
      common/common-association/src/main/java/apelet/association/utils/CreatNumberUtils.java
  11. 9
      pom.xml

5
application-tenant/tenant-admin/pom.xml

@ -147,6 +147,11 @@
<artifactId>common-ext</artifactId> <artifactId>common-ext</artifactId>
<version>1.0.0</version> <version>1.0.0</version>
</dependency> </dependency>
<dependency>
<groupId>apelet</groupId>
<artifactId>common-association</artifactId>
<version>1.0.0</version>
</dependency>

76
application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/tenant/plugin/QuotationPlugin.java

@ -0,0 +1,76 @@
package apelet.tenantadmin.tenant.plugin;
import apelet.common.core.object.ObjectCollection;
import apelet.common.core.object.ObjectValue;
import apelet.common.core.object.TokenData;
import apelet.common.core.util.ApplicationContextHolder;
import apelet.common.generator.utils.OrmGenDataSourceUtil;
import apelet.common.online.abstractplugin.ExecutePluginParent;
import apelet.common.online.model.constant.AttributeEnum;
import java.math.BigDecimal;
/*
报价单插件
*/
public class QuotationPlugin extends ExecutePluginParent {
private static final OrmGenDataSourceUtil ORM_GEN_DATA_SOURCE_UTIL = ApplicationContextHolder.getBean(OrmGenDataSourceUtil.class);
@Override
public void formCreated(String widgetVariableName, ObjectValue objectValue){
super.formCreated(widgetVariableName, objectValue);
//获取当前登录的用户ID
TokenData tokenData = TokenData.takeFromRequest();
Long userId = tokenData.getUserId();
//查询当前用户信息
ObjectValue sysUserInfo = ORM_GEN_DATA_SOURCE_UTIL.queryOne("xy_sys_user", userId);
//赋值
if (sysUserInfo != null){
this.setWidgetAttribute("managerperson", AttributeEnum.VALUE_CHANGE, sysUserInfo);
}
//隐藏拒绝理由
this.setWidgetAttribute("canaelreason",AttributeEnum.SHOW,false);
//设置报价单状态
this.setWidgetAttribute("status",AttributeEnum.VALUE_CHANGE,"1");
//设置总价初始值为0
this.setWidgetAttribute("qty",AttributeEnum.VALUE_CHANGE,0);
}
@Override
public void change(String widgetVariableName, ObjectValue objectValue){
super.change(widgetVariableName, objectValue);
//获取报价单状态
String status = objectValue.getString("status");
//若status为"4"
if(status.equals("4")){
this.setWidgetAttribute("canaelreason",AttributeEnum.SHOW,true);
}else {
this.setWidgetAttribute("canaelreason",AttributeEnum.SHOW,false);
}
//获取单据体
ObjectCollection quotationE = objectValue.getObjectCollection("quotation_e");
// 总金额
BigDecimal allTotalAmount = BigDecimal.ZERO;
//判断是否有数据
if (quotationE != null && !quotationE.isEmpty()){
for (int i = 0; i < quotationE.size(); i++ ){
// 获取行数据
ObjectValue row = quotationE.getObject(i);
//获取指导折扣价
BigDecimal discount = row.getBigDecimal("discount");
// 判空处理
if (discount == null) {
discount = BigDecimal.ZERO;
}
//获取数量
int num = row.getInt("num");
// 计算总价 = 折扣价 * 数量
BigDecimal totalAmount = discount.multiply(BigDecimal.valueOf(num));
allTotalAmount = allTotalAmount.add(totalAmount);
}
this.setWidgetAttribute("qty",AttributeEnum.VALUE_CHANGE,allTotalAmount);
}
}
}

25
application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/tenant/plugin/StatusChangePlugin.java

@ -0,0 +1,25 @@
package apelet.tenantadmin.tenant.plugin;
import apelet.common.core.object.ObjectCollection;
import apelet.common.core.object.ObjectValue;
import apelet.common.online.plugin.BeforeExecuteOperationArgs;
import apelet.common.online.plugin.OperationServicePlugIn;
//提交后修改状态
public class StatusChangePlugin extends OperationServicePlugIn {
@Override
public void beforeExecuteOperationTransaction(BeforeExecuteOperationArgs e){
super.beforeExecuteOperationTransaction(e);
ObjectCollection modelCollcetion = e.getModelCollcetion();
if(modelCollcetion != null && !modelCollcetion.isEmpty()){
for (int i = 0; i < modelCollcetion.size(); i++) {
// 获取单据对象
ObjectValue bill = modelCollcetion.getObject(i);
bill.setString("status","2");
//保存入库
}
}
}
}

2
application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/upms/controller/LoginController.java

@ -1472,7 +1472,7 @@ public class LoginController {
List<SysMenuPerm> onlineMenuPermList = allMenuPermList.stream() List<SysMenuPerm> onlineMenuPermList = allMenuPermList.stream()
.filter(m -> m.getOnlineFormId() != null .filter(m -> m.getOnlineFormId() != null
// && m.getOnlineFlowEntryId() == null // && m.getOnlineFlowEntryId() == null
&& m.getMenuType().equals(SysMenuType.TYPE_MENU)) && (m.getMenuType().equals(SysMenuType.TYPE_MENU) || m.getMenuType().equals(SysMenuType.TYPE_PERM_MENU)))
.collect(Collectors.toList()); .collect(Collectors.toList());
Map<Long, List<SysMenuPerm>> onlineMenuPermMap = Map<Long, List<SysMenuPerm>> onlineMenuPermMap =
onlineMenuPermList.stream().collect(Collectors.groupingBy(SysMenuPerm::getOnlineFormId)); onlineMenuPermList.stream().collect(Collectors.groupingBy(SysMenuPerm::getOnlineFormId));

5
application-tenant/tenant-admin/src/main/java/apelet/tenantadmin/upms/model/constant/SysMenuType.java

@ -27,6 +27,10 @@ public final class SysMenuType {
* 按钮类型 * 按钮类型
*/ */
public static final int TYPE_BUTTON = 3; public static final int TYPE_BUTTON = 3;
/**
* 权限表单
*/
public static final int TYPE_PERM_MENU = 4;
private static final Map<Object, String> DICT_MAP = new HashMap<>(4); private static final Map<Object, String> DICT_MAP = new HashMap<>(4);
static { static {
@ -34,6 +38,7 @@ public final class SysMenuType {
DICT_MAP.put(TYPE_MENU, "普通菜单"); DICT_MAP.put(TYPE_MENU, "普通菜单");
DICT_MAP.put(TYPE_UI_FRAGMENT, "表单片段类型"); DICT_MAP.put(TYPE_UI_FRAGMENT, "表单片段类型");
DICT_MAP.put(TYPE_BUTTON, "按钮类型"); DICT_MAP.put(TYPE_BUTTON, "按钮类型");
DICT_MAP.put(TYPE_PERM_MENU, "权限菜单");
} }
/** /**

2
application-tenant/tenant-admin/src/main/resources/application-config.yml

@ -145,7 +145,7 @@ common-redis:
# master-slave: # master-slave:
# 每个节点逗号分隔,第一个为主节点,其余为从节点。同时每个节点前必须以redis://开头。 # 每个节点逗号分隔,第一个为主节点,其余为从节点。同时每个节点前必须以redis://开头。
# address: redis://localhost:6379,redis://localhost:6378,... # address: redis://localhost:6379,redis://localhost:6378,...
address: redis://192.168.100.25:6379 address: redis://localhost:6379
# 链接超时,单位毫秒。 # 链接超时,单位毫秒。
timeout: 6000 timeout: 6000
# 单位毫秒。分布式锁的超时检测时长。 # 单位毫秒。分布式锁的超时检测时长。

32
application-tenant/tenant-admin/src/main/resources/tenant-admin-dev.yml

@ -5,7 +5,7 @@ logging:
config: classpath:logback-spring.xml config: classpath:logback-spring.xml
server: server:
port: 8075 port: 8077
application: application:
# Jwt令牌加密的签名值。该值的长度要超过10个字符(过短会报错)。 # Jwt令牌加密的签名值。该值的长度要超过10个字符(过短会报错)。
@ -201,21 +201,21 @@ spring:
datasource: datasource:
type: com.alibaba.druid.pool.DruidDataSource type: com.alibaba.druid.pool.DruidDataSource
druid: druid:
# 租户管理数据源。 # 租户管理数据源。
tenant-admin: tenant-admin:
url: jdbc:mysql://192.168.100.18:3306/apelet_admin_xk?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai url: jdbc:mysql://frp-use.com:51850/apelet_xhgl?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root username: root
password: X7&9p8L2@6z4K7!8 password: X7&9p8L2@6z4K7!8
# 租户业务平台的通用业务数据,如字典、在线表单、流程、报表的定义等数据。 # 租户业务平台的通用业务数据,如字典、在线表单、流程、报表的定义等数据。
tenant-common: tenant-common:
url: jdbc:mysql://192.168.100.18:3306/apelet_admin_xk?characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai url: jdbc:mysql://frp-use.com:51850/apelet_xhgl?characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai
username: root username: root
password: X7&9p8L2@6z4K7!8 password: X7&9p8L2@6z4K7!8
# 默认生成的操作日志数据源配置。 # 默认生成的操作日志数据源配置。
operation-log: operation-log:
url: jdbc:mysql://192.168.100.18:3306/apelet_admin_xk?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai url: jdbc:mysql://frp-use.com:51850/apelet_xhgl?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: root username: root
password: X7&9p8L2@6z4K7!8 password: X7&9p8L2@6z4K7!8
driverClassName: com.mysql.cj.jdbc.Driver driverClassName: com.mysql.cj.jdbc.Driver
name: tenant-admin name: tenant-admin
initialSize: 10 initialSize: 10
@ -305,3 +305,9 @@ cqurl:
username: username:
accountId: accountId:
flowable:
# 关闭自动创建/更新表,只检查
database-schema-update: false
# 关闭事件注册引擎(你 99% 不需要)
event-registry:
enabled: false

32
common/common-association/src/main/java/apelet/association/controller/ProjectListController.java

@ -0,0 +1,32 @@
package apelet.association.controller;
import apelet.common.core.annotation.MyRequestBody;
import apelet.common.core.object.MyPageParam;
import apelet.common.core.object.ResponseResult;
import apelet.common.core.object.TokenData;
import com.github.pagehelper.page.PageMethod;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.Map;
@RestController
@RequestMapping("/tenantadmin/project")
public class ProjectListController {
@GetMapping(value = "/list")
public ResponseResult<?> list() {
Map<String, Object> pammap= new HashMap<>();
return ResponseResult.success(pammap);
}
@PostMapping("/update")
public ResponseResult<Void> update(
@MyRequestBody String entryId){
return ResponseResult.success(null);
}
}

17
common/common-association/src/main/java/apelet/association/controller/plugin/formPlugin/ClueManageFormPlugin.java

@ -0,0 +1,17 @@
package apelet.association.controller.plugin.formPlugin;
import apelet.association.utils.CreatNumberUtils;
import apelet.common.core.object.ObjectValue;
import apelet.common.online.abstractplugin.ExecutePluginParent;
import apelet.common.online.model.constant.AttributeEnum;
public class ClueManageFormPlugin extends ExecutePluginParent {
@Override
public void formCreated(String widgetVariableName, ObjectValue objectValue) {
super.formCreated(widgetVariableName, objectValue);
// this.setAttribute("seekInfo","11");
// this.setWidgetAttribute("number", AttributeEnum.VALUE_CHANGE, "123");
CreatNumberUtils creatNumberUtils = new CreatNumberUtils();
this.setWidgetAttribute("billstatus", AttributeEnum.VALUE_CHANGE,"1");
}
}

11
common/common-association/src/main/java/apelet/association/utils/CreatNumberUtils.java

@ -0,0 +1,11 @@
package apelet.association.utils;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class CreatNumberUtils {
public String creatNumber() {
return LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"));
}
}

9
pom.xml

@ -70,9 +70,9 @@
<properties> <properties>
<profile.name>dev</profile.name> <profile.name>dev</profile.name>
<!-- 注册中心地址 --> <!-- 注册中心地址 -->
<discovery.server-addr>192.168.100.25:8848</discovery.server-addr> <discovery.server-addr>localhost:8848</discovery.server-addr>
<!-- 配置中心地址 --> <!-- 配置中心地址 -->
<config.server-addr>192.168.100.25:8848</config.server-addr> <config.server-addr>localhost:8848</config.server-addr>
<!-- 配置中心的分组和名字空间 --> <!-- 配置中心的分组和名字空间 -->
<config.group>DEFAULT_GROUP</config.group> <config.group>DEFAULT_GROUP</config.group>
<!-- 如果是public可以保持为空,否则一定要填写名字空间id,而非名称 --> <!-- 如果是public可以保持为空,否则一定要填写名字空间id,而非名称 -->
@ -286,6 +286,11 @@
<type>pom</type> <type>pom</type>
<scope>import</scope> <scope>import</scope>
</dependency> </dependency>
<dependency>
<groupId>apelet</groupId>
<artifactId>common-orm</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>

Loading…
Cancel
Save