订单录入添加成交时间选项

This commit is contained in:
huangdeliang 2020-10-24 12:00:10 +08:00
parent ca26281832
commit 378b6ef815
8 changed files with 56 additions and 44 deletions
doc
ruoyi-admin
ruoyi-custom/src/main/java/com/ruoyi/custom/service/impl
ruoyi-framework/src/main/java/com/ruoyi/framework/config
ruoyi-ui/src/views/custom/order

Binary file not shown.

@ -130,11 +130,6 @@
<artifactId>layout</artifactId>
<version>7.1.12</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.30</version>
</dependency>
</dependencies>

@ -102,7 +102,7 @@ public class SysCommisionController extends BaseController {
@GetMapping(value = "/{ruleId}")
public AjaxResult getInfo(@PathVariable("ruleId") Long ruleId, SysCommision sysCommision) {
sysCommision.setRuleId(ruleId);
System.out.println(sysCommision);
// System.out.println(sysCommision);
return AjaxResult.success(sysCommisionService.selectSysCommisionById(sysCommision));
}

@ -1,26 +1,19 @@
package com.ruoyi.web.controller.custom;
import java.util.List;
import com.ruoyi.common.core.domain.model.Contract;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.model.Contract;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.custom.domain.SysContract;
import com.ruoyi.custom.service.ISysContractService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 合同Controller
@ -96,6 +89,12 @@ public class SysContractController extends BaseController {
return toAjax(sysContractService.deleteSysContractByIds(ids));
}
@GetMapping("/file/{id}")
public String getContract(@PathVariable long id) {
return redirect("/swagger-ui.html");
}
/**
* 合同签单
*/

@ -56,6 +56,9 @@ public class SysOrderController extends OrderBaseController {
List<SysOrder> list = sysOrderService.selectSysOrderList(sysOrder);
List<SysUser> userList = userService.selectAllUser();
BigDecimal totalAmount = sysOrderService.selectAllOrderAmount(sysOrder);
if(totalAmount == null) {
totalAmount = new BigDecimal(0);
}
for (SysOrder order : list) {
for (SysUser user : userList) {

@ -54,7 +54,7 @@ public class SysOrderServiceImpl implements ISysOrderService {
public int insertSysOrder(SysOrder sysOrder) {
Date orderTime = DateUtils.getNowDate();
sysOrder.setCreateTime(orderTime);
sysOrder.setOrderTime(orderTime);
// sysOrder.setOrderTime(orderTime);
sysOrder.setOrderId(Long.parseLong(DateUtils.parseDateToStr(DateUtils.YYYYMMDDHHMMSS, orderTime)));
return sysOrderMapper.insertSysOrder(sysOrder);
}

@ -1,5 +1,8 @@
package com.ruoyi.framework.config;
import com.ruoyi.framework.security.filter.JwtAuthenticationTokenFilter;
import com.ruoyi.framework.security.handle.AuthenticationEntryPointImpl;
import com.ruoyi.framework.security.handle.LogoutSuccessHandlerImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.http.HttpMethod;
@ -14,24 +17,20 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
import org.springframework.security.web.authentication.logout.LogoutFilter;
import org.springframework.web.filter.CorsFilter;
import com.ruoyi.framework.security.filter.JwtAuthenticationTokenFilter;
import com.ruoyi.framework.security.handle.AuthenticationEntryPointImpl;
import com.ruoyi.framework.security.handle.LogoutSuccessHandlerImpl;
/**
* spring security配置
*
*
* @author ruoyi
*/
@EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true)
public class SecurityConfig extends WebSecurityConfigurerAdapter
{
public class SecurityConfig extends WebSecurityConfigurerAdapter {
/**
* 自定义用户认证逻辑
*/
@Autowired
private UserDetailsService userDetailsService;
/**
* 认证失败处理类
*/
@ -55,7 +54,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
*/
@Autowired
private CorsFilter corsFilter;
/**
* 解决 无法直接注入 AuthenticationManager
*
@ -64,8 +63,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
*/
@Bean
@Override
public AuthenticationManager authenticationManagerBean() throws Exception
{
public AuthenticationManager authenticationManagerBean() throws Exception {
return super.authenticationManagerBean();
}
@ -85,8 +83,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
* authenticated | 用户登录后可访问
*/
@Override
protected void configure(HttpSecurity httpSecurity) throws Exception
{
protected void configure(HttpSecurity httpSecurity) throws Exception {
httpSecurity
// CSRF禁用因为不使用session
.csrf().disable()
@ -99,9 +96,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
// 对于登录login 验证码captchaImage 允许匿名访问
.antMatchers(
"/login",
"/captchaImage",
"/common/contract"
).anonymous()
"/captchaImage"
).anonymous()
.antMatchers(
HttpMethod.GET,
"/*.html",
@ -117,6 +113,9 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
.antMatchers("/webjars/**").anonymous()
.antMatchers("/*/api-docs").anonymous()
.antMatchers("/druid/**").anonymous()
.antMatchers("/custom/contract/sign").anonymous()
.antMatchers("/custom/contract/file/**").anonymous()
// 除上面外的所有请求全部需要鉴权认证
.anyRequest().authenticated()
.and()
@ -129,13 +128,12 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
httpSecurity.addFilterBefore(corsFilter, LogoutFilter.class);
}
/**
* 强散列哈希加密实现
*/
@Bean
public BCryptPasswordEncoder bCryptPasswordEncoder()
{
public BCryptPasswordEncoder bCryptPasswordEncoder() {
return new BCryptPasswordEncoder();
}
@ -143,8 +141,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
* 身份认证接口
*/
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception
{
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(userDetailsService).passwordEncoder(bCryptPasswordEncoder());
}
}

@ -421,6 +421,19 @@
<el-input v-model="form.recommender" placeholder="请输入推荐人"/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="成交时间" prop="orderTime">
<el-date-picker
style="width: 182.5px"
v-model="form.orderTime"
type="datetime"
placeholder="选择成交时间"
format="yyyy-MM-dd HH:mm"
value-format="yyyy-MM-dd HH:mm:ss"
:picker-options="orderPickerOptions">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12" v-hasPermi="['custom:order:review']">
<el-form-item label="审核状态" prop="reviewStatus">
<el-select v-model="form.reviewStatus" placeholder="请选择审核状态">
@ -449,7 +462,7 @@
</template>
<script>
import {listOrder, getOrder, delOrder, addOrder, updateOrder, exportOrder, getOptions} from "@/api/custom/order";
import {addOrder, delOrder, exportOrder, getOptions, getOrder, listOrder, updateOrder} from "@/api/custom/order";
import dayjs from 'dayjs';
const beginTime = dayjs().startOf('month').format('YYYY-MM-DD');
@ -575,6 +588,11 @@
}
}]
},
orderPickerOptions: {
disabledDate(time) {
return time.getTime() > Date.now();
},
}
};
},
created() {
@ -698,7 +716,7 @@
operatorId: defaultOperator ? parseInt(defaultOperator.dictValue) : null,
operatorAssisId: defaultOperatorAssis ? parseInt(defaultOperatorAssis.dictValue) : null,
recommender: null,
orderTime: null,
orderTime: dayjs().format("YYYY-MM-DD HH:mm:ss"),
serveTimeId: defaultServeTime ? parseInt(defaultServeTime.dictValue) : null,
reviewStatus: 'no'
};