Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
A
Aidea
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
sa_aidea
Aidea
Commits
26af6e73
Commit
26af6e73
authored
Nov 02, 2020
by
黎聪聪
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
2020年11月2日 10:05:24
parent
b6de9ca9
Show whitespace changes
Inline
Side-by-side
Showing
36 changed files
with
1417 additions
and
295 deletions
+1417
-295
ConsultSheetMapper.java
.../java/com/cftech/consultsheet/dao/ConsultSheetMapper.java
+2
-0
ConsultSheetMapper.xml
...n/java/com/cftech/consultsheet/dao/ConsultSheetMapper.xml
+28
-0
ConsultSheetService.java
.../com/cftech/consultsheet/service/ConsultSheetService.java
+8
-1
ConsultSheetServiceImpl.java
...ch/consultsheet/service/impl/ConsultSheetServiceImpl.java
+20
-0
MobileConsultSheetController.java
...cftech/consultsheet/web/MobileConsultSheetController.java
+13
-0
orderDetailslist.html
...n/webapp/WEB-INF/views/orderDetails/orderDetailslist.html
+6
-5
pom.xml
aidea-modules/order-detail-module/pom.xml
+1
-0
OrderDetailsMapper.xml
...in/java/com/cftech/orderdetail/dao/OrderDetailsMapper.xml
+1
-0
OrderDetailsService.java
...a/com/cftech/orderdetail/service/OrderDetailsService.java
+1
-1
OrderDetailsServiceImpl.java
...ech/orderdetail/service/impl/OrderDetailsServiceImpl.java
+2
-1
DoubleJSONFilter.java
...n/java/com/cftech/orderdetail/utils/DoubleJSONFilter.java
+18
-0
OrderDetailsController.java
...va/com/cftech/orderdetail/web/OrderDetailsController.java
+17
-8
orderform.html
...le-web/src/main/webapp/WEB-INF/views/order/orderform.html
+25
-11
orderlist.html
...le-web/src/main/webapp/WEB-INF/views/order/orderlist.html
+1
-1
OrderMapper.java
...odule/src/main/java/com/cftech/order/dao/OrderMapper.java
+20
-2
OrderMapper.xml
...module/src/main/java/com/cftech/order/dao/OrderMapper.xml
+53
-58
OrderDetailDto.java
.../src/main/java/com/cftech/order/model/OrderDetailDto.java
+1
-0
OrderMobile.java
...ule/src/main/java/com/cftech/order/model/OrderMobile.java
+49
-0
ProductMobile.java
...e/src/main/java/com/cftech/order/model/ProductMobile.java
+24
-0
OrderService.java
.../src/main/java/com/cftech/order/service/OrderService.java
+12
-0
OrderServiceImpl.java
.../java/com/cftech/order/service/impl/OrderServiceImpl.java
+67
-25
MobileOrderController.java
...main/java/com/cftech/order/web/MobileOrderController.java
+36
-0
OrderController.java
...e/src/main/java/com/cftech/order/web/OrderController.java
+17
-1
MobileProductController.java
.../java/com/cftech/product/web/MobileProductController.java
+1
-0
cfarticleform.html
...rc/main/webapp/WEB-INF/views/cfarticle/cfarticleform.html
+19
-1
cfarticlelist.html
...rc/main/webapp/WEB-INF/views/cfarticle/cfarticlelist.html
+348
-119
CfarticleMapper.java
...in/java/com/cftech/cms/cfarticle/dao/CfarticleMapper.java
+59
-0
CfarticleMapper.xml
...ain/java/com/cftech/cms/cfarticle/dao/CfarticleMapper.xml
+152
-2
Cfarticle.java
...c/main/java/com/cftech/cms/cfarticle/model/Cfarticle.java
+9
-2
CfarticleColumnDto.java
...va/com/cftech/cms/cfarticle/model/CfarticleColumnDto.java
+1
-0
CfarticleVO.java
...main/java/com/cftech/cms/cfarticle/model/CfarticleVO.java
+43
-0
columnVO.java
...rc/main/java/com/cftech/cms/cfarticle/model/columnVO.java
+29
-0
CfarticleService.java
...va/com/cftech/cms/cfarticle/service/CfarticleService.java
+46
-1
CfarticleServiceImpl.java
...tech/cms/cfarticle/service/impl/CfarticleServiceImpl.java
+164
-7
CfarticleController.java
...ava/com/cftech/cms/cfarticle/web/CfarticleController.java
+17
-0
MobileCfArticleController.java
...m/cftech/cms/cfarticle/web/MobileCfArticleController.java
+107
-49
No files found.
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/dao/ConsultSheetMapper.java
View file @
26af6e73
...
...
@@ -21,4 +21,6 @@ public interface ConsultSheetMapper extends GenericDao<ConsultSheet> {
Integer
updateStatus
(
@Param
(
"consultId"
)
String
consultId
,
@Param
(
"status"
)
String
status
);
List
<
ConsultSheet
>
fetchSearchByPage
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Long
id
);
List
<
ConsultSheet
>
consultSheetList
(
@Param
(
"name"
)
String
name
,
@Param
(
"id"
)
Long
id
);
}
\ No newline at end of file
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/dao/ConsultSheetMapper.xml
View file @
26af6e73
...
...
@@ -88,7 +88,23 @@
b.`name` pharmaName,
c.`name` customerName
</sql>
<sql
id=
"sqlCol"
>
id,
CONVERT(AES_DECRYPT(user_name,'aideakey') USING UTF8) userName,
sex,
CONVERT(AES_DECRYPT(phone,'aideakey') USING UTF8) phone,
past_records,
prescription,
illness,
accounts_id,
STATUS,
create_time,
description,
allergy,
symptom,
open_id
</sql>
<insert
id=
"save"
parameterType=
"com.cftech.consultsheet.model.ConsultSheet"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
...
...
@@ -181,6 +197,18 @@
<if
test=
"sort!=null"
>
ORDER BY ${sort.param} ${sort.type}
</if>
<if
test=
"limit>0"
>
limit #{offset},#{limit}
</if>
</select>
<select
id=
"consultSheetList"
resultType=
"com.cftech.consultsheet.model.ConsultSheet"
>
SELECT
<include
refid=
"sqlCol"
/>
from t_aidea_consult_sheet
where del_flag = 0
<if
test=
"name!=null"
>
and user_name like concat('%',#{name},'%')
</if>
<if
test=
"id!=null"
>
and id = #{id}
</if>
</select>
<update
id=
"update"
parameterType=
"com.cftech.consultsheet.model.ConsultSheet"
>
update t_aidea_consult_sheet
...
...
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/service/ConsultSheetService.java
View file @
26af6e73
...
...
@@ -26,5 +26,12 @@ public interface ConsultSheetService extends GenericService<ConsultSheet> {
* @param consultSheet
*/
JSONObject
pollingConsultSheet
(
ConsultSheet
consultSheet
);
/**
* @Author Licc
* @Description 咨询单列表
* @Date 13:04 2020/11/1
* @Param
* @return
**/
JSONObject
consultSheetList
(
String
name
,
Long
id
);
}
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/service/impl/ConsultSheetServiceImpl.java
View file @
26af6e73
...
...
@@ -103,6 +103,26 @@ public class ConsultSheetServiceImpl extends GenericServiceImpl<ConsultSheet> im
return
retObj
;
}
@Override
public
JSONObject
consultSheetList
(
String
name
,
Long
id
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
List
<
ConsultSheet
>
consultSheets
=
consultSheetMapper
.
consultSheetList
(
name
,
id
);
if
(
consultSheets
!=
null
){
rtnJson
.
put
(
"errerNo"
,
0
);
rtnJson
.
put
(
"data"
,
consultSheets
);
}
else
{
rtnJson
.
put
(
"errerNo"
,
1
);
rtnJson
.
put
(
"errorMsg"
,
"搜索失败"
);
}
}
catch
(
Exception
e
){
e
.
printStackTrace
();
rtnJson
.
put
(
"errrNo"
,
1
);
rtnJson
.
put
(
"errrMsg"
,
"咨询单列表"
+
e
.
getMessage
());
}
return
rtnJson
;
}
/**
* 咨询单分配流程
* 复购/首次分配
...
...
aidea-modules/consult-module/src/main/java/com/cftech/consultsheet/web/MobileConsultSheetController.java
View file @
26af6e73
...
...
@@ -27,4 +27,17 @@ public class MobileConsultSheetController {
public
JSONObject
submitConsultSheet
(
@RequestBody
ConsultSheet
consultSheet
)
{
return
consultSheetService
.
pollingConsultSheet
(
consultSheet
);
}
/**
* @Author Licc
* @Description 咨询单列表
* @Date 13:01 2020/11/1
* @Param
* @return
**/
@RequestMapping
(
value
=
"/consultSheetList"
,
method
=
{
RequestMethod
.
GET
,
RequestMethod
.
POST
},
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
JSONObject
consultSheetList
(
String
name
,
Long
id
)
{
return
consultSheetService
.
consultSheetList
(
name
,
id
);
}
}
aidea-modules/order-detail-module-web/src/main/webapp/WEB-INF/views/orderDetails/orderDetailslist.html
View file @
26af6e73
...
...
@@ -77,7 +77,7 @@
<div
class=
"box"
>
<div
class=
"box-header"
>
<form
id=
"seachTableForm"
action=
"#springUrl('/a/orderDetails/list')"
method=
"get"
>
<input
type=
"hidden"
id=
"id"
name=
"id"
value=
"${id}"
/>
<div
class=
"col-xs-2"
>
<input
type=
"text"
class=
"form-control "
id=
"orderCode"
name=
"orderCode"
placeholder=
"订单编码"
>
...
...
@@ -86,9 +86,10 @@
<input
type=
"text"
class=
"form-control "
id=
"drugsCode"
name=
"drugsCode"
placeholder=
"商品编码"
>
</div>
#if($shiro.hasPermission("qy:orderDetails:view"))
-->
#if($shiro.hasPermission("qy:orderDetails:view"))
<button
type=
"button"
class=
"search btn btn-primary"
>
搜索
</button>
#end-->
#end
<!-- #if($shiro.hasPermission("qy:orderDetails:edit"))-->
<!-- <a href="#springUrl('/a/orderDetails/form')" class="btn btn-primary">新增</a>-->
<!-- <a href="#springUrl('/a/orderDetails/exportExcel')" class="btn btn-primary">导出</a>-->
...
...
@@ -172,7 +173,7 @@
var
sSource
=
"#springUrl('/a/orderDetails/listData')"
;
var
aoData
=
{
iDisplayStart
:
1
,
iD
osplayLength
:
10
iD
isplayLength
:
10
,
}
var
retrieveData
=
function
(
sSource
,
aoData
,
fnCallback
)
{
...
...
aidea-modules/order-detail-module/pom.xml
View file @
26af6e73
...
...
@@ -12,4 +12,5 @@
<artifactId>
order-detail-module
</artifactId>
</project>
\ No newline at end of file
aidea-modules/order-detail-module/src/main/java/com/cftech/orderdetail/dao/OrderDetailsMapper.xml
View file @
26af6e73
...
...
@@ -130,6 +130,7 @@
<if
test=
"userId!=null"
>
AND (o.service_id = ${userId} OR o.clerk_id = ${userId} OR o.doctor_id = ${userId})
</if>
<if
test=
"sort!=null"
>
ORDER BY ${sort.param} ${sort.type}
</if>
<if
test=
"limit>0"
>
limit #{offset},#{limit}
</if>
</select>
<update
id=
"update"
parameterType=
"com.cftech.orderdetail.model.OrderDetails"
>
...
...
aidea-modules/order-detail-module/src/main/java/com/cftech/orderdetail/service/OrderDetailsService.java
View file @
26af6e73
...
...
@@ -24,5 +24,5 @@ public interface OrderDetailsService extends GenericService<OrderDetails> {
* @param iDisplayStart
* @param iDisplayLength
*/
List
<
OrderDetails
>
fetchSearchByPageByUser
(
String
userId
,
Conds
conds
,
Sort
sort
,
int
iDisplayStart
,
int
iDisplayLength
);
List
<
OrderDetails
>
fetchSearchByPageByUser
(
String
userId
,
Conds
conds
,
Sort
sort
,
int
iDisplayStart
,
int
iDisplayLength
,
Long
id
);
}
aidea-modules/order-detail-module/src/main/java/com/cftech/orderdetail/service/impl/OrderDetailsServiceImpl.java
View file @
26af6e73
...
...
@@ -35,11 +35,12 @@ return orderDetailsMapper;
}
@Override
public
List
<
OrderDetails
>
fetchSearchByPageByUser
(
String
userId
,
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
)
{
public
List
<
OrderDetails
>
fetchSearchByPageByUser
(
String
userId
,
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Long
id
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
if
(!
StringUtils
.
equals
(
userId
,
"1"
))
{
params
.
put
(
"userId"
,
userId
);
}
params
.
put
(
"id"
,
id
);
params
.
put
(
"conds"
,
conds
);
params
.
put
(
"offset"
,
page
>
0
?
page
:
0
);
params
.
put
(
"limit"
,
pageSize
>
0
?
pageSize
:
0
);
...
...
aidea-modules/order-detail-module/src/main/java/com/cftech/orderdetail/utils/DoubleJSONFilter.java
0 → 100644
View file @
26af6e73
package
com
.
cftech
.
orderdetail
.
utils
;
import
com.alibaba.fastjson.serializer.ValueFilter
;
import
java.math.BigDecimal
;
public
class
DoubleJSONFilter
implements
ValueFilter
{
@Override
public
Object
process
(
Object
value
,
String
s
,
Object
o1
)
{
if
(
o1
instanceof
Double
){
BigDecimal
bg
=
new
BigDecimal
((
Double
)
o1
);
BigDecimal
f1
=
bg
.
setScale
(
2
,
BigDecimal
.
ROUND_HALF_UP
);
return
f1
;
}
return
o1
;
}
}
aidea-modules/order-detail-module/src/main/java/com/cftech/orderdetail/web/OrderDetailsController.java
View file @
26af6e73
package
com
.
cftech
.
orderdetail
.
web
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.serializer.SerializerFeature
;
import
com.cftech.orderdetail.model.OrderDetails
;
import
com.cftech.orderdetail.service.OrderDetailsService
;
import
com.cftech.core.poi.ExcelKit
;
...
...
@@ -8,6 +11,7 @@ import com.cftech.core.scope.OrderType;
import
com.cftech.core.sql.Conds
;
import
com.cftech.core.sql.Sort
;
import
com.cftech.core.util.Constants
;
import
com.cftech.orderdetail.utils.DoubleJSONFilter
;
import
com.cftech.sys.security.PermissionSign
;
import
com.cftech.sys.security.UserUtils
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -44,6 +48,7 @@ public class OrderDetailsController {
public
static
final
String
ORDERDETAILS_VIEW
=
"qy:orderDetails:view"
;
public
static
final
String
ORDERDETAILS_EDIT
=
"qy:orderDetails:edit"
;
public
static
final
DoubleJSONFilter
DOUBLE_JSON_FILTER
=
new
DoubleJSONFilter
();
@Autowired
private
OrderDetailsService
orderDetailsService
;
...
...
@@ -52,9 +57,10 @@ public class OrderDetailsController {
//列表页面
@RequiresPermissions
(
value
=
ORDERDETAILS_VIEW
)
@RequestMapping
(
"/list"
)
public
String
list
(
HttpServletRequest
request
,
Model
model
)
{
public
String
list
(
HttpServletRequest
request
,
Model
model
,
Long
id
)
{
Long
accountId
=
UserUtils
.
getmpaccounts
(
request
);
model
.
addAttribute
(
"accountId"
,
accountId
);
model
.
addAttribute
(
"id"
,
id
);
return
"orderDetails/orderDetailslist"
;
}
...
...
@@ -101,7 +107,7 @@ public class OrderDetailsController {
@RequiresPermissions
(
value
=
ORDERDETAILS_VIEW
)
@RequestMapping
(
value
=
"/listData"
)
@ResponseBody
public
JSONObject
listData
(
int
iDisplayStart
,
int
iDisplayLength
,
OrderDetails
orderDetails
,
HttpServletRequest
request
)
{
public
JSONObject
listData
(
int
iDisplayStart
,
int
iDisplayLength
,
OrderDetails
orderDetails
,
Long
id
,
HttpServletRequest
request
)
{
Long
accountsId
=
UserUtils
.
getmpaccounts
(
request
);
String
userId
=
String
.
valueOf
(
UserUtils
.
getUser
().
getId
());
...
...
@@ -113,16 +119,19 @@ public class OrderDetailsController {
conds
.
like
(
"d.drugs_code"
,
orderDetails
.
getDrugsCode
());
if
(
StringUtils
.
isNoneBlank
(
orderDetails
.
getOrderCode
()))
conds
.
like
(
"d.order_code"
,
orderDetails
.
getOrderCode
());
if
(
id
!=
null
){
conds
.
equal
(
"d.order_id"
,
id
);
}
Sort
sort
=
new
Sort
(
"d.create_time"
,
OrderType
.
DESC
);
List
<
OrderDetails
>
list
=
orderDetailsService
.
fetchSearchByPageByUser
(
userId
,
conds
,
sort
,
iDisplayStart
,
iDisplayLength
);
List
<
OrderDetails
>
list
=
orderDetailsService
.
fetchSearchByPageByUser
(
userId
,
conds
,
sort
,
iDisplayStart
,
iDisplayLength
,
id
);
String
string
=
JSON
.
toJSONString
(
list
,
DOUBLE_JSON_FILTER
,
SerializerFeature
.
WriteMapNullValue
);
Integer
counts
=
orderDetailsService
.
count
(
conds
);
JSONObject
rtnJson
=
new
JSONObject
();
rtnJson
.
put
(
"iTotalRecords"
,
counts
);
rtnJson
.
put
(
"iTotalDisplayRecords"
,
counts
);
rtnJson
.
put
(
"aaData"
,
list
);
rtnJson
.
put
(
"aaData"
,
string
);
return
rtnJson
;
}
...
...
@@ -161,10 +170,10 @@ public class OrderDetailsController {
@RequestMapping
(
"/importExcel"
)
@RequiresPermissions
(
value
=
ORDERDETAILS_EDIT
)
public
String
importExcel
(
HttpServletRequest
request
,
MultipartFile
file
,
Model
model
)
{
public
String
importExcel
(
HttpServletRequest
request
,
MultipartFile
file
,
Model
model
,
Long
id
)
{
Long
accountId
=
UserUtils
.
getmpaccounts
(
request
);
if
(
file
==
null
)
{
return
list
(
request
,
model
);
return
list
(
request
,
model
,
id
);
}
// 构造临时路径来存储上传的文件
String
uploadPath
=
System
.
getProperty
(
"java.io.tmpdir"
);
...
...
@@ -188,7 +197,7 @@ public class OrderDetailsController {
log
.
error
(
e
.
getMessage
());
}
return
list
(
request
,
model
);
return
list
(
request
,
model
,
id
);
}
}
aidea-modules/order-module-web/src/main/webapp/WEB-INF/views/order/orderform.html
View file @
26af6e73
...
...
@@ -324,7 +324,7 @@
var
idHtml
=
""
;
if
(
id
&&
id
!=
null
){
idHtml
+=
`<input type="hidden" name="idDetail" value="
${
id
}
">`
idHtml
+=
`<input type="hidden"
id="idDetail"
name="idDetail" value="
${
id
}
">`
}
else
{
idHtml
+=
`<input type="hidden" name="idDetail" value="">`
}
...
...
@@ -359,7 +359,7 @@
}
let
html
=
`<li id="form-translate" class="list-group-item
"
style="display:flex ;">
let
html
=
`<li id="form-translate" class="list-group-item
translate"
style="display:flex ;">
${
idHtml
}
<select class="form-control select2 releas" name="releas" style="width: 180px;" onchange="getPrice(this)">
${
options
}
...
...
@@ -414,16 +414,30 @@
}
function
deleteSelect
(
event
)
{
var
url
=
"#springUrl('/a/order/deleteAll')"
const
id
=
$
(
event
.
target
).
siblings
(
"#idDetail"
).
val
();
$
.
ajax
({
url
:
url
,
type
:
"GET"
,
data
:
{
id
:
id
},
success
:
function
(
rsp
)
{
if
(
rsp
.
errorNo
==
0
){
var
dom
=
event
.
target
;
var
ret
=
$
(
dom
);
ret
.
parent
().
remove
();
toTal
()
}
}
});
}
function
toTal
()
{
var
count
=
0
$
(
'.
group
[name="htmlAmount"]'
).
each
(
function
(
index
,
item
){
$
(
'.
translate
[name="htmlAmount"]'
).
each
(
function
(
index
,
item
){
count
+=
+
item
.
value
})
$
(
"#orderAmount"
).
val
(
count
.
toFixed
(
2
));
...
...
@@ -438,7 +452,7 @@
var
arr
=
[]
var
obj
=
{}
$
(
'.translate'
).
each
((
index
,
item
)
=>
{
$
(
".translate"
).
each
((
index
,
item
)
=>
{
var
txt
=
$
(
item
).
find
(
'[name="releas"]'
).
val
()
if
(
obj
[
txt
])
{
...
...
@@ -460,7 +474,7 @@
var
id
=
$
(
"#id"
).
val
()
var
orderAmount
=
$
(
"#orderAmount"
).
val
()
var
datas
=
[];
$
(
'.translate'
).
each
(
function
(
index
,
item
){
$
(
".translate"
).
each
(
function
(
index
,
item
){
const
idDetail
=
$
(
item
).
find
(
'[name="idDetail"]'
).
val
()
const
productId
=
$
(
item
).
find
(
'[name="releas"]'
).
val
()
const
drugsNum
=
$
(
item
).
find
(
'[name="listHtml"]'
).
val
()
...
...
aidea-modules/order-module-web/src/main/webapp/WEB-INF/views/order/orderlist.html
View file @
26af6e73
...
...
@@ -233,7 +233,6 @@
{
"mData"
:
"payStatus"
}
,
{
"mData"
:
"tradeNo"
...
...
@@ -357,6 +356,7 @@
'</button>
\
n'
+
'<ul class="dropdown-menu" role="menu">
\
n'
;
html
+=
'<li><a href="#springUrl("/a/order/form?id='
+
a
+
'")">查看</a></li>'
;
html
+=
'<li><a href="#springUrl("/a/order/findorderDetail?id='
+
a
+
'")">查看需求清单明细</a></li>'
;
html
+=
'<li><a href="#springUrl("/a/order/sendOut?id='
+
a
+
'")">订单出库</a></li>'
;
html
+=
'</ul>'
;
html
+=
'#end'
;
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/dao/OrderMapper.java
View file @
26af6e73
package
com
.
cftech
.
order
.
dao
;
import
com.alibaba.fastjson.JSONObject
;
import
com.cftech.core.sql.Conds
;
import
com.cftech.core.sql.Sort
;
import
com.cftech.order.model.*
;
import
com.cftech.core.generic.GenericDao
;
import
org.apache.ibatis.annotations.Param
;
import
java.io.Serializable
;
import
java.util.List
;
...
...
@@ -16,7 +18,8 @@ import java.util.Map;
* @date: 2020-10-10 14:20
*/
public
interface
OrderMapper
extends
GenericDao
<
Order
>
{
List
<
Order
>
fetchSearchBy
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Long
id
);
Integer
deleteAll
(
@Param
(
"id"
)
Long
id
);
List
<
ProductOrder
>
listProduct
();
OrderFromVO
fetchId
(
Serializable
id
);
List
<
OrderFromVO
>
fetchProductId
(
Serializable
id
);
...
...
@@ -27,5 +30,20 @@ public interface OrderMapper extends GenericDao<Order> {
Order
fetchOrder
(
Long
id
);
Integer
updateOrder
(
Map
<
String
,
Object
>
params
);
/**
* @Author Licc
* @Description 查询所有订单信息
* @Date 15:45 2020/10/30
* @Param
* @return
**/
List
<
OrderMobile
>
orderFall
(
@Param
(
"openid"
)
String
openid
,
@Param
(
"status"
)
Long
status
,
@Param
(
"id"
)
Long
id
);
/**
* @Author Licc
* @Description 根据订单ID查询订单详情
* @Date 10:46 2020/11/1
* @Param
* @return
**/
List
<
ProductMobile
>
orderDetill
(
@Param
(
"orderId"
)
Long
orderId
);
}
\ No newline at end of file
aidea-modules/order-module/src/main/java/com/cftech/order/dao/OrderMapper.xml
View file @
26af6e73
...
...
@@ -65,6 +65,7 @@
<result
column=
"product_name"
property=
"productName"
/>
<result
column=
"address_id"
property=
"addressId"
/>
<result
column=
"courier_number"
property=
"courierNumber"
/>
<result
column=
"address"
property=
"address"
/>
<collection
property=
"list"
ofType=
"com.cftech.order.model.ProductVO"
>
<result
column=
"product_name"
property=
"productName"
/>
</collection>
...
...
@@ -166,33 +167,33 @@
keyProperty=
"id"
>
insert into t_order
(
id
,
number
,
openid
,
pay_status
,
pay_amount
,
order_amount
,
total_amount
,
pay_time
,
trade_no
,
courier_number
,
confirm
,
order_cancel
,
remarks
,
accounts_id
,
del_flag
,
status
,
create_time
,
update_time
,
description
,
create_by
,
update_by
,
consult_id
,
address_id
,
member_id
,
service_id
,
doctor_id
,
clerk_id
`id`
,
`number`
,
`openid`
,
`pay_status`
,
`pay_amount`
,
`order_amount`
,
`total_amount`
,
`pay_time`
,
`trade_no`
,
`courier_number`
,
`confirm`
,
`order_cancel`
,
`remarks`
,
`accounts_id`
,
`del_flag`
,
`status`
,
`create_time`
,
`update_time`
,
`description`
,
`create_by`
,
`update_by`
,
`consult_id`
,
`address_id`
,
`member_id`
,
`service_id`
,
`doctor_id`
,
`clerk_id`
)
values
(
...
...
@@ -385,19 +386,15 @@
<update
id=
"delete"
parameterType=
"java.lang.Long"
>
update t_order set del_flag=1 where id=#{id,jdbcType=BIGINT}
</update>
<select
id=
"fetchProduct"
resultType=
"com.cftech.order.model.ProductDto"
parameterType=
"java.util.Map"
>
SELECT * FROM t_aidea_product WHERE id = #{productId} AND accounts_id=#{accountsId}
</select>
<update
id=
"updateDetill"
parameterType=
"java.util.Map"
>
update t_order_details set del_flag=1 where id=#{id,jdbcType=BIGINT}
</update>
<delete
id=
"updateDetill"
parameterType=
"java.util.Map"
>
delete from t_order_details where order_id = #{id}
</delete>
<select
id=
"fetcheDeta"
parameterType=
"java.util.Map"
resultType=
"java.lang.Integer"
>
select * from t_order_details where order_id =#{id} and accounts_id=#{accountsId} and drugs_id =#{productId}
</select>
<insert
id=
"saveDetill"
parameterType=
"com.cftech.order.model.OrderDetailDto"
>
insert into t_order_details
(
...
...
@@ -416,11 +413,9 @@
#{accountsId}
)
</insert>
<select
id=
"fetchOrder"
resultType=
"com.cftech.order.model.Order"
parameterType=
"java.lang.Long"
>
select * from t_order where id= #{id}
</select>
<update
id=
"updateOrder"
parameterType=
"java.util.Map"
>
update t_order
<set>
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/model/OrderDetailDto.java
View file @
26af6e73
...
...
@@ -11,6 +11,7 @@ import lombok.Data;
public
class
OrderDetailDto
{
/* 订单id */
private
Long
orderId
;
private
String
orderCode
;
/* 商品id */
private
Long
drugsId
;
private
Long
drugsNum
;
...
...
aidea-modules/order-module/src/main/java/com/cftech/order/model/OrderMobile.java
0 → 100644
View file @
26af6e73
package
com
.
cftech
.
order
.
model
;
import
lombok.Data
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author :licc
* @date :Created in 2020/10/30 16:12
* @description:
*/
@Data
public
class
OrderMobile
{
/*订单id*/
private
Long
id
;
/*订单编码*/
private
String
number
;
/*付款状态*/
private
Long
payStatus
;
/*订单id*/
private
Double
totalAmount
;
/*付款时间*/
private
Date
payTime
;
/*交易号*/
private
Long
tradeNo
;
/*快递单号*/
private
String
courierNumber
;
/*订单取消原因*/
private
String
orderCancel
;
/*状态*/
private
Long
status
;
/*订单创建时间*/
private
Date
createTime
;
/*收货人姓名*/
private
String
addressName
;
/*详细收货地址*/
private
String
address
;
/*手机号*/
private
String
phone
;
/*省份*/
private
String
province
;
/*城市*/
private
String
city
;
/*区县*/
private
String
area
;
private
List
<
ProductMobile
>
ProductMobile
;
}
aidea-modules/order-module/src/main/java/com/cftech/order/model/ProductMobile.java
0 → 100644
View file @
26af6e73
package
com
.
cftech
.
order
.
model
;
import
lombok.Data
;
/**
* @author :licc
* @date :Created in 2020/10/30 16:42
* @description:
*/
@Data
public
class
ProductMobile
{
/*商品名称*/
private
String
productName
;
/*商品价格*/
private
String
amount
;
/*是否是处方药*/
private
String
isrs
;
/*商品图片*/
private
String
productImg
;
/*商品规格*/
private
String
format
;
}
aidea-modules/order-module/src/main/java/com/cftech/order/service/OrderService.java
View file @
26af6e73
...
...
@@ -6,8 +6,10 @@ import com.cftech.core.sql.Sort;
import
com.cftech.order.model.Order
;
import
com.cftech.core.generic.GenericService
;
import
com.cftech.order.model.OrderFromVO
;
import
com.cftech.order.model.ProductMobile
;
import
com.cftech.order.model.ProductOrder
;
import
com.qiniu.util.Json
;
import
org.apache.ibatis.annotations.Param
;
import
java.io.Serializable
;
import
java.util.List
;
...
...
@@ -28,4 +30,14 @@ public interface OrderService extends GenericService<Order> {
List
<
OrderFromVO
>
fetchProductId
(
Serializable
id
);
JSONObject
newlyAdded
(
String
datas
,
Long
accountsId
);
JSONObject
deleteAll
(
Long
id
);
/**
* @Author Licc
* @Description 根据订单状态查询订单
* @Date 15:45 2020/10/30
* @Param
* @return
**/
JSONObject
confirm
(
String
openid
,
Long
status
,
Long
id
);
}
aidea-modules/order-module/src/main/java/com/cftech/order/service/impl/OrderServiceImpl.java
View file @
26af6e73
package
com
.
cftech
.
order
.
service
.
impl
;
import
com.alibaba.fastjson.JSON
;
import
com.cftech.core.sql.Sort
;
import
com.cftech.core.util.StringUtils
;
import
com.cftech.order.model.*
;
...
...
@@ -16,6 +17,7 @@ import org.springframework.beans.factory.annotation.Qualifier;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.ws.rs.PUT
;
import
java.io.Serializable
;
import
java.util.HashMap
;
import
java.util.List
;
...
...
@@ -74,10 +76,9 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
com
.
alibaba
.
fastjson
.
JSONObject
rtnJson
=
new
com
.
alibaba
.
fastjson
.
JSONObject
();
OrderDetailDto
orderDetailDto
=
null
;
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
;
datas
=
datas
.
replaceAll
(
"""
,
"\""
);
JSONArray
jsonArray
=
JSONArray
.
fromObject
(
datas
);
boolean
isAnim
=
false
;
try
{
if
(
jsonArray
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
jsonArray
.
size
();
i
++)
{
...
...
@@ -97,14 +98,14 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
params
.
put
(
"amount"
,
amount
);
params
.
put
(
"orderAmount"
,
orderAmount
);
params
.
put
(
"idDetail"
,
idDetail
);
if
(!
isAnim
)
{
if
(!
""
.
equals
(
idDetail
)){
orderMapper
.
updateDetill
(
params
);
isAnim
=
true
;
}
rtnJson
.
put
(
"errorNo"
,
"0"
)
;
}
else
{
ProductDto
productDtos
=
orderMapper
.
fetchProduct
(
params
);
orderDetailDto
=
new
OrderDetailDto
();
Order
orders
=
orderMapper
.
fetchOrder
(
id
);
orderDetailDto
.
setOrderCode
(
orders
.
getNumber
());
orderDetailDto
.
setOrderId
(
id
);
orderDetailDto
.
setDrugsId
(
productDtos
.
getId
());
orderDetailDto
.
setOpenid
(
orders
.
getOpenid
());
...
...
@@ -115,13 +116,19 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
orderDetailDto
.
setDrugsSku
(
productDtos
.
getFormat
());
orderDetailDto
.
setAccountsId
(
accountsId
);
Integer
detill
=
orderMapper
.
saveDetill
(
orderDetailDto
);
if
(
detill
<
0
){
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorNo"
,
"修改失败"
);
}
else
{
if
(
detill
>
0
)
{
Integer
integer
=
orderMapper
.
updateOrder
(
params
);
if
(
integer
>
0
)
{
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"errorMsg"
,
"修改成功"
);
}
}
}
}
}
}
}
catch
(
Exception
e
)
{
...
...
@@ -132,4 +139,39 @@ public class OrderServiceImpl extends GenericServiceImpl<Order> implements Order
}
@Override
public
com
.
alibaba
.
fastjson
.
JSONObject
deleteAll
(
Long
id
)
{
com
.
alibaba
.
fastjson
.
JSONObject
jsonObject
=
new
com
.
alibaba
.
fastjson
.
JSONObject
();
Integer
integer
=
orderMapper
.
deleteAll
(
id
);
if
(
integer
<
0
){
jsonObject
.
put
(
"errorNo"
,
"1"
);
}
jsonObject
.
put
(
"errorNo"
,
"0"
);
return
jsonObject
;
}
@Override
public
com
.
alibaba
.
fastjson
.
JSONObject
confirm
(
String
openid
,
Long
status
,
Long
id
)
{
com
.
alibaba
.
fastjson
.
JSONObject
rtnJson
=
new
com
.
alibaba
.
fastjson
.
JSONObject
();
com
.
alibaba
.
fastjson
.
JSONObject
object
=
new
com
.
alibaba
.
fastjson
.
JSONObject
();
try
{
List
<
OrderMobile
>
orderMobiles
=
orderMapper
.
orderFall
(
openid
,
status
,
id
);
for
(
OrderMobile
orderMobile
:
orderMobiles
)
{
Long
mobileId
=
orderMobile
.
getId
();
if
(
mobileId
!=
null
){
List
<
ProductMobile
>
mobiles
=
orderMapper
.
orderDetill
(
mobileId
);
orderMobile
.
setProductMobile
(
mobiles
);
}
}
object
.
put
(
"orderMobiles"
,
orderMobiles
);
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"data"
,
object
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
rtnJson
.
put
(
"errorNo"
,
"1"
);
}
return
rtnJson
;
}
}
\ No newline at end of file
aidea-modules/order-module/src/main/java/com/cftech/order/web/MobileOrderController.java
0 → 100644
View file @
26af6e73
package
com
.
cftech
.
order
.
web
;
import
com.alibaba.fastjson.JSONObject
;
import
com.cftech.order.service.OrderService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.MediaType
;
import
org.springframework.web.bind.annotation.CrossOrigin
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* @author :licc
* @date :Created in 2020/10/30 15:40
* @description:
*/
@Slf4j
@RestController
@CrossOrigin
@RequestMapping
(
"mobile/a/order"
)
public
class
MobileOrderController
{
@Autowired
private
OrderService
orderService
;
/**
* @Author Licc
* @Description 待确认订单
* @Date 15:43 2020/10/30
* @Param
* @return
**/
@RequestMapping
(
value
=
"/confirm"
,
method
=
{
RequestMethod
.
POST
},
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
JSONObject
confirm
(
String
openid
,
Long
status
,
Long
id
){
return
orderService
.
confirm
(
openid
,
status
,
id
);
}
}
aidea-modules/order-module/src/main/java/com/cftech/order/web/OrderController.java
View file @
26af6e73
...
...
@@ -14,6 +14,8 @@ import com.cftech.core.sql.Conds;
import
com.cftech.core.sql.Sort
;
import
com.cftech.core.util.Constants
;
import
com.cftech.order.utils.DoubleJSONFilter
;
import
com.cftech.orderdetail.model.OrderDetails
;
import
com.cftech.orderdetail.web.OrderDetailsController
;
import
com.cftech.sys.security.UserUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
...
...
@@ -22,6 +24,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
@@ -55,7 +58,8 @@ public class OrderController {
public
static
final
DoubleJSONFilter
DOUBLE_JSON_FILTER
=
new
DoubleJSONFilter
();
@Autowired
private
OrderService
orderService
;
@Autowired
private
OrderDetailsController
orderDetailsController
;
//列表页面
@RequiresPermissions
(
value
=
ORDER_VIEW
)
...
...
@@ -126,6 +130,7 @@ public class OrderController {
Long
accountsId
=
UserUtils
.
getmpaccounts
(
request
);
Conds
conds
=
new
Conds
();
conds
.
equal
(
"o.del_flag"
,
Constants
.
DEL_FLAG_0
);
conds
.
equal
(
"d.del_flag"
,
Constants
.
DEL_FLAG_0
);
conds
.
equal
(
"o.accounts_id"
,
accountsId
);
Sort
sort
=
new
Sort
(
"o.create_time"
,
OrderType
.
DESC
);
if
(!
StringUtils
.
isEmpty
(
order
.
getNumber
()))
{
...
...
@@ -223,4 +228,15 @@ public class OrderController {
return
list
(
request
,
model
);
}
@RequestMapping
(
"/findorderDetail"
)
public
String
findorderDetail
(
HttpServletRequest
request
,
Model
model
,
Long
id
)
{
return
orderDetailsController
.
list
(
request
,
model
,
id
);
}
@RequestMapping
(
"/deleteAll"
)
@ResponseBody
public
JSONObject
deleteAll
(
Long
id
)
{
return
orderService
.
deleteAll
(
id
);
}
}
aidea-modules/product-module/src/main/java/com/cftech/product/web/MobileProductController.java
View file @
26af6e73
...
...
@@ -34,4 +34,5 @@ public class MobileProductController {
public
JSONObject
productMenu
(
Long
ID
){
return
productService
.
productId
(
ID
);
}
}
cms-modules/cms-core-module-web/src/main/webapp/WEB-INF/views/cfarticle/cfarticleform.html
View file @
26af6e73
...
...
@@ -80,7 +80,7 @@
</ol>
</section>
<input
type=
"hidden"
id=
"sizetmp"
name=
"sizetmp"
value=
"$!{data.size}"
/>
<!-- Main content -->
<section
class=
"content"
>
<div
class=
"row"
>
...
...
@@ -110,6 +110,8 @@
value=
"$!{data.author}"
>
</div>
<!-- -->
<!-- <div class="form-group form-md-line-input">
<label>文章大图封面(建议360*200)</label>
<div class="input-group">
...
...
@@ -171,6 +173,14 @@
required=
"required"
>
</div>
<div
class=
"form-group form-md-line-input col-md-12"
>
<label>
是否展示大图文章
</label>
<select
class=
"form-control select2 releas"
name=
"size"
id=
"size"
>
<option
id=
"options"
name=
"options"
value=
"1"
>
是
</option>
<option
id=
"optiona"
name=
"optiona"
value=
"0"
>
否
</option>
</select>
</div>
<div
class=
"form-group form-md-line-input col-md-12"
id=
"relationCfArticleDiv"
>
<label>
关联文章
</label>
...
...
@@ -326,6 +336,14 @@
};
$
().
ready
(
function
()
{
let
val
=
$
(
"#sizetmp"
).
val
();
let
options
=
$
(
"#options"
).
val
();
if
(
val
==
options
){
$
(
"#options"
).
attr
(
"selected"
,
"selected"
)
}
else
{
$
(
"#optiona"
).
attr
(
"selected"
,
"selected"
)
}
Cfapp
.
init
();
recdTypeAdd
.
init
();
ue
=
UE
.
getEditor
(
'ueditor'
,
{
...
...
cms-modules/cms-core-module-web/src/main/webapp/WEB-INF/views/cfarticle/cfarticlelist.html
View file @
26af6e73
...
...
@@ -57,7 +57,8 @@
#QySendMassMyModal
label
{
font-weight
:
400
;
}
div
[
id
^=
"whereSearch"
]
{
div
[
id
^=
"whereSearch"
]
{
display
:
none
;
}
</style>
...
...
@@ -172,7 +173,7 @@
<option
value=
"2"
>
女
</option>
</select>
</div>
<div
class=
"form-group form-md-line-input"
id
=
"whereSearchOrg"
>
<div
class=
"form-group form-md-line-input"
id
=
"whereSearchOrg"
>
<div
class=
"input-group"
>
<input
type=
"text"
id=
"orgId"
name=
"orgId"
value=
""
class=
"form-control"
style=
"display: none"
>
...
...
@@ -183,9 +184,9 @@
</div>
</div>
<p
id=
"orgName"
name=
"orgName"
value=
""
style=
"width:100%;"
>
<p
id=
"orgName"
name=
"orgName"
value=
""
style=
"width:100%;"
>
</p>
<div
class=
"form-group form-md-line-input"
id
=
"whereSearchTag"
>
<div
class=
"form-group form-md-line-input"
id
=
"whereSearchTag"
>
<label>
企业标签
</label>
<select
class=
"form-control select2"
multiple=
"multiple"
data-placeholder=
"选择企业标签"
style=
"width: 100%;"
id=
"taglist"
>
...
...
@@ -204,7 +205,7 @@
</span>
</div>
</div>
<p
id=
"searchName"
name=
"searchName"
value=
""
style=
"width:100%;"
>
<p
id=
"searchName"
name=
"searchName"
value=
""
style=
"width:100%;"
>
</p>
<div
class=
"box-footer"
style=
"clear:both;"
>
<a
class=
"btn btn-primary"
id=
"qyMassSend"
>
发送
</a>
...
...
@@ -257,24 +258,29 @@
#end
#if($shiro.hasPermission("mp:article:mass"))
<a
href=
"javascript:void(0)"
id=
"sendMessageMass"
class=
"btn bg-olive"
>
生成微信图文素材
</a>
#end
#if($shiro.hasPermission("qy:article:sendMass"))
<a
href=
"javascript:void(0)"
id=
"qysendMessageMass"
class=
"btn bg-olive"
>
企业号发送
</a>
#end
</form>
</div>
<!-- /.box-header -->
<div
class=
"box-body"
>
<table
id=
"table"
class=
"table table-bordered table-striped"
>
<thead>
<tr>
<th>
选择
</th>
<th>
文章标题
</th>
<th>
所属栏目
</th>
<th>
创建时间
</th>
<th>
是否推荐文章
</th>
<th>
是否推荐banner图
</th>
<th>
操作
</th>
</tr>
</thead>
<tbody
id=
"tablebody"
>
<tbody
id=
"tablebody"
class=
"tablebody"
>
</tbody>
</table>
...
...
@@ -284,7 +290,24 @@
</div>
<!-- /.row -->
</section>
<!-- /.content -->
</div>
<!-- /.content-wrapper -->
<div
class=
"modal fade"
tabindex=
"-1"
role=
"dialog"
id=
"myModal"
>
<div
class=
"modal-dialog"
role=
"document"
>
<div
class=
"modal-content"
>
<div
class=
"modal-header"
>
<button
type=
"button"
class=
"close"
data-dismiss=
"modal"
aria-label=
"Close"
><span
aria-hidden=
"true"
>
×
</span></button>
<h4
class=
"modal-title"
>
操作提示
</h4>
</div>
<div
class=
"modal-body"
>
<p>
是否确认
</p>
</div>
<div
class=
"modal-footer"
>
<button
type=
"button"
class=
"btn btn-default"
data-dismiss=
"modal"
onclick=
"show()"
>
取消
</button>
<button
type=
"button"
class=
"btn btn-primary"
onclick=
"save()"
>
确认
</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->
<!-- Add the sidebar's background. This div must be placed
immediately after the control sidebar -->
...
...
@@ -318,8 +341,8 @@
<script
src=
"plugins/ztree/js/jquery.ztree.all.min.js"
type=
"text/javascript"
></script>
<script>
var
csrfheader
=
{
name
:
'_csrf_header'
,
value
:
'${_csrf.headerName}'
};
var
csrftoken
=
{
name
:
'_csrf'
,
value
:
'${_csrf.token}'
};
var
csrfheader
=
{
name
:
'_csrf_header'
,
value
:
'${_csrf.headerName}'
};
var
csrftoken
=
{
name
:
'_csrf'
,
value
:
'${_csrf.token}'
};
</script>
<script
src=
"common/js/cfapp.js"
></script>
...
...
@@ -348,9 +371,9 @@
var
qySendMassMessageUrl
=
"#springUrl('/a/qyMessage/sendMessage')"
;
//企业号发送文章
var
qyagentListUrl
=
"#springUrl('/a/qyagent/listData')"
;
var
protocol
=
window
.
location
.
protocol
;
var
host
=
window
.
location
.
host
;
var
domain
=
protocol
+
'//'
+
host
;
var
protocol
=
window
.
location
.
protocol
;
var
host
=
window
.
location
.
host
;
var
domain
=
protocol
+
'//'
+
host
;
/**
...
...
@@ -416,10 +439,10 @@
title
:
"绑定微信人员"
,
btnoktext
:
"确定"
,
btncanceltext
:
"取消"
,
columns
:
[
'选择'
,
'头像'
,
'姓名'
,
'手机号码'
,
'职位'
,
'所属组织'
],
isSearch
:
'0'
,
//0搜索 1:不搜索
searchColumns
:[
"name"
,
"mobile"
],
//搜索的字段名称
searchColumnsRemarks
:[
"人员姓名"
,
"手机号"
],
//搜索的字段备注
columns
:
[
'选择'
,
'头像'
,
'姓名'
,
'手机号码'
,
'职位'
,
'所属组织'
],
isSearch
:
'0'
,
//0搜索 1:不搜索
searchColumns
:
[
"name"
,
"mobile"
],
//搜索的字段名称
searchColumnsRemarks
:
[
"人员姓名"
,
"手机号"
],
//搜索的字段备注
aoColumns
:
[{
"mData"
:
"id"
},
{
...
...
@@ -451,7 +474,7 @@
}
}],
success
:
function
()
{
if
(
$
(
"#wxUserName"
).
val
())
{
if
(
$
(
"#wxUserName"
).
val
())
{
$
(
"#searchName"
).
html
(
$
(
"#wxUserName"
).
val
());
}
},
//确定处理
...
...
@@ -500,7 +523,7 @@
});
$
(
"#qyMassSend"
).
click
(
function
()
{
//企业号发送
$
(
"#qyMassSend"
).
click
(
function
()
{
//企业号发送
var
qyMassSendData
=
{};
...
...
@@ -530,7 +553,7 @@
$
.
ajax
({
"type"
:
"POST"
,
"url"
:
articleTreeUri
,
"data"
:
{
_csrf_header
:
csrfheader
.
value
,
_csrf
:
csrftoken
.
value
},
"data"
:
{
_csrf_header
:
csrfheader
.
value
,
_csrf
:
csrftoken
.
value
},
"dataType"
:
"json"
,
"success"
:
buildOrgTree
});
...
...
@@ -587,7 +610,7 @@
dateformatId
=
function
(
a
,
b
,
c
,
d
)
{
if
(
a
.
id
)
{
if
(
mpselectedArticles
.
indexOf
(
a
.
id
+
''
)
>=
0
)
{
if
(
mpselectedArticles
.
indexOf
(
a
.
id
+
''
)
>=
0
)
{
return
'<input type="checkbox" onchange="recordingOne(this)" class="checkchild" checked="true" value="'
+
a
.
id
+
'" />'
;
}
else
{
return
'<input type="checkbox" onchange="recordingOne(this)" class="checkchild" value="'
+
a
.
id
+
'" />'
;
...
...
@@ -625,7 +648,12 @@
$
.
ajax
({
type
:
"POST"
,
url
:
"#springUrl('/a/cfarticle/mergeArticles')"
,
data
:
{
articles
:
mpselectedArticles
.
toString
(),
domain
:
domain
,
_csrfheader
:
csrfheader
.
value
,
_csrf
:
csrftoken
.
value
},
data
:
{
articles
:
mpselectedArticles
.
toString
(),
domain
:
domain
,
_csrfheader
:
csrfheader
.
value
,
_csrf
:
csrftoken
.
value
},
dataType
:
"json"
,
success
:
function
(
data
)
{
warningMsg
.
destory
();
...
...
@@ -734,13 +762,14 @@
"searching"
:
false
,
"ordering"
:
false
,
"bFiltered"
:
false
,
"bStateSave"
:
true
,
// save datatable state(pagination, sort, etc) in cookie.
"bStateSave"
:
true
,
// save datatable state(pagination, sort, etc) in cookie.
"bProcessing"
:
true
,
"bServerSide"
:
true
,
"sAjaxSource"
:
sSource
,
"fnServerData"
:
retrieveData
,
"pagingType"
:
"full_numbers"
,
"aoColumns"
:
[
{
"mData"
:
dateformatId
},
...
...
@@ -752,46 +781,81 @@
},
{
"mData"
:
"createTime"
}
,
{
"mData"
:
"recommended"
}
,
{
"mData"
:
"whetherBanner"
},
{
"mData"
:
"id"
}],
"aoColumnDefs"
:
[
{
"aTargets"
:
[
1
],
"mData"
:
"title"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
if
(
c
.
type
==
0
)
{
if
(
c
.
type
==
0
)
{
return
'<a href="#springUrl("/a/cfarticle/form?id='
+
c
.
id
+
'")" data-id="'
+
c
.
id
+
'" data-action="view">'
+
a
+
'</a>'
;
}
else
{
}
else
{
return
'<a href="#springUrl("/a/cfarticle/picform?id='
+
c
.
id
+
'")" data-id="'
+
c
.
id
+
'" data-action="view">'
+
a
+
'</a>'
;
}
}
},{
},
{
"aTargets"
:
[
3
],
"mData"
:
"createTime"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
//a表示createtime对应的值,c表示当前记录行对象
return
formatDates
(
a
,
"yyyy-MM-dd HH:mm:ss"
);
}
},
{
"aTargets"
:
[
4
],
"mData"
:
"recommended"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
//a表示createtime对应的值,c表示当前记录行对象
var
html
=
''
if
(
a
==
1
)
{
html
+=
'<input type="checkbox" id="recommended" name="recommended" value="'
+
a
+
'" checked="true" onchange="onreco(event)">'
;
}
else
{
html
+=
'<input type="checkbox" id="recommended" name="recommended" value="'
+
a
+
'" onchange="onreco(event)">'
;
}
return
html
;
}
},
{
"aTargets"
:
[
5
],
"mData"
:
"whetherBanner"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
//a表示createtime对应的值,c表示当前记录行对象
var
html
=
''
if
(
a
==
1
)
{
html
+=
'<input type="checkbox" id="whetherBanner" name="whetherBanner" value="'
+
a
+
'" checked="true" onchange="onBanner(event)">'
;
}
else
{
html
+=
'<input type="checkbox" id="whetherBanner" name="whetherBanner" value="'
+
a
+
'" onchange="onBanner(event)">'
;
}
return
html
;
}
},
{
"aTargets"
:
[
4
],
"aTargets"
:
[
6
],
"mData"
:
"id"
,
"mRender"
:
function
(
a
,
b
,
c
,
d
)
{
//a表示id对应的值,c表示当前记录行对象
var
html
=
'#if($shiro.hasPermission("qy:cfarticle:edit"))'
;
//
if
(
c
.
type
==
0
)
{
if
(
c
.
type
==
0
)
{
html
+=
'<a href="#springUrl("/a/cfarticle/form?id='
+
a
+
'")" data-id="'
+
a
+
'" data-action="view" class="btn green">修改</a>'
;
}
else
{
}
else
{
html
+=
'<a href="#springUrl("/a/cfarticle/picform?id='
+
a
+
'")" data-id="'
+
a
+
'" data-action="view" class="btn green">修改</a>'
;
}
html
+=
'<a href="javascript:void(0);" data-id="'
+
a
+
'" data-action="remove" onclick="removeData('
+
a
+
')" class="btn red">删除</a>'
;
html
+=
'<input type="checkbox" id="id" name="id" value="'
+
a
+
'" style="display: none" >'
;
html
+=
'#end'
;
html
+=
'#if($shiro.hasPermission("qy:review:view"))'
;
html
+=
'#if($shiro.hasPermission("qy:review:view"))'
;
//html+= '
<
a
href
=
"#springUrl("
/
a
/
review
/
list
?
entityId
=
' + a + '
")"
data
-
id
=
"' + a + '"
data
-
action
=
"view"
class
=
"btn green"
>
评论
<
/a>'
;
html
+=
'#end'
;
html
+=
'#end'
;
return
html
;
}
}
...
...
@@ -800,7 +864,171 @@
});
}
var
or
=
0
;
function
onreco
(
e
)
{
if
(
e
.
target
.
value
==
1
){
Cfapp
.
alert
({
message
:
"是否确认取消推荐"
,
btntext
:
"确定"
,
success
:
function
()
{
select
(
e
)
}
});
}
else
{
f
(
e
)
}
}
function
onBanner
(
e
)
{
if
(
e
.
target
.
value
==
1
){
Cfapp
.
alert
({
message
:
"是否确认取消推荐"
,
btntext
:
"确定"
,
success
:
function
()
{
select
(
e
)
}
});
}
else
{
b
(
e
)
}
}
function
select
(
e
)
{
if
(
e
.
target
.
value
==
'0'
)
{
e
.
target
.
value
=
'1'
}
else
if
(
e
.
target
.
value
==
'1'
)
{
e
.
target
.
value
=
'0'
}
save
()
}
function
show
()
{
$
(
'#myModal'
).
modal
(
'hide'
)
}
function
f
(
e
)
{
var
url
=
"#springUrl('/a/cfarticle/selectYes')"
$
.
ajax
({
url
:
url
,
type
:
"GET"
,
data
:
{},
success
:
function
(
rsp
)
{
if
(
rsp
.
errorNo
==
"0"
)
{
if
(
rsp
.
data
>=
4
)
{
Cfapp
.
alert
({
message
:
"所选推荐不能超过四个"
,
btntext
:
"确定"
,
success
:
function
()
{
location
.
href
=
"#springUrl('/a/cfarticle/list')"
;
}
});
}
else
{
Cfapp
.
alert
({
message
:
"是否确认推荐"
,
btntext
:
"确定"
,
success
:
function
()
{
select
(
e
)
$
(
'#myModal'
).
modal
(
'show'
)
}
});
}
}
}
});
}
function
b
()
{
var
url
=
"#springUrl('/a/cfarticle/selectBanner')"
$
.
ajax
({
url
:
url
,
type
:
"GET"
,
data
:
{},
success
:
function
(
rsp
)
{
if
(
rsp
.
errorNo
==
"0"
)
{
if
(
rsp
.
data
>=
4
)
{
Cfapp
.
alert
({
message
:
"所选推荐不能超过四个"
,
btntext
:
"确定"
,
success
:
function
()
{
location
.
href
=
"#springUrl('/a/cfarticle/list')"
;
}
});
}
else
{
Cfapp
.
alert
({
message
:
"是否确认推荐"
,
btntext
:
"确定"
,
success
:
function
()
{
select
(
e
)
$
(
'#myModal'
).
modal
(
'show'
)
}
});
}
}
}
});
}
function
save
()
{
var
datas
=
[];
var
counta
=
0
;
var
countb
=
0
;
$
(
'.tablebody'
).
children
().
each
(
function
(
index
,
item
)
{
const
id
=
$
(
item
).
find
(
'[name="id"]'
).
val
()
const
recommended
=
$
(
item
).
find
(
'[name="recommended"]'
).
val
()
const
whetherBanner
=
$
(
item
).
find
(
'[name="whetherBanner"]'
).
val
()
datas
.
push
({
id
:
id
,
recommended
:
recommended
,
whetherBanner
:
whetherBanner
})
})
var
url
=
"#springUrl('/a/cfarticle/updatecom')"
$
.
ajax
({
url
:
url
,
type
:
"GET"
,
dateType
:
'json'
,
data
:
{
datas
:
JSON
.
stringify
(
datas
)},
success
:
function
(
rsp
)
{
console
.
log
(
rsp
);
if
(
rsp
.
errorNo
==
"0"
)
{
Cfapp
.
alert
({
message
:
"修改成功"
,
btntext
:
"确定"
,
success
:
function
()
{
location
.
href
=
"#springUrl('/a/cfarticle/list')"
;
}
});
}
else
{
Cfapp
.
alert
({
message
:
"修改失败"
,
btntext
:
"确定"
,
success
:
function
()
{
location
.
href
=
"#springUrl('/a/cfarticle/list')"
;
}
});
}
}
});
}
jQuery
(
document
).
ready
(
function
()
{
$
(
".select2"
).
select2
();
seachTable
();
initMenuTree
();
...
...
@@ -818,12 +1046,12 @@
$
(
"#table"
).
dataTable
().
fnClearTable
();
});
$
(
"#QySendMassMyModal input[name='sendType']"
).
change
(
function
()
{
if
(
$
(
this
).
val
()
==
"1"
)
{
$
(
"#QySendMassMyModal input[name='sendType']"
).
change
(
function
()
{
if
(
$
(
this
).
val
()
==
"1"
)
{
$
(
"div[id^='whereSearch']"
).
show
();
$
(
"#searchName"
).
show
();
$
(
"#orgName"
).
show
();
}
else
{
}
else
{
$
(
"div[id^='whereSearch']"
).
hide
();
$
(
"#searchName"
).
hide
();
$
(
"#orgName"
).
hide
();
...
...
@@ -835,13 +1063,13 @@
"type"
:
"GET"
,
"url"
:
qyagentListUrl
,
"dataType"
:
"json"
,
"data"
:
{
iDisplayStart
:
0
,
iDisplayLength
:
0
},
//以json格式传递
"data"
:
{
iDisplayStart
:
0
,
iDisplayLength
:
0
},
//以json格式传递
"success"
:
function
(
data
)
{
if
(
data
&&
data
.
aaData
)
{
if
(
data
&&
data
.
aaData
)
{
var
list
=
data
.
aaData
;
var
agentHTML
=
""
;
for
(
var
i
=
0
;
i
<
list
.
length
;
i
++
)
{
agentHTML
+=
"<option value='"
+
list
[
i
].
agentId
+
"'>"
+
list
[
i
].
name
+
"</option>"
;
for
(
var
i
=
0
;
i
<
list
.
length
;
i
++
)
{
agentHTML
+=
"<option value='"
+
list
[
i
].
agentId
+
"'>"
+
list
[
i
].
name
+
"</option>"
;
}
$
(
"select[name='agent']"
).
append
(
agentHTML
);
}
...
...
@@ -850,6 +1078,7 @@
});
Cfapp
.
init
();
function
removeData
(
data
)
{
Cfapp
.
confirm
({
message
:
"确定要删除吗"
,
...
...
@@ -859,7 +1088,7 @@
$
.
ajax
({
type
:
"POST"
,
url
:
"#springUrl('/a/cfarticle/delete')"
,
data
:
{
id
:
data
,
_csrf_header
:
csrfheader
.
value
,
_csrf
:
csrftoken
.
value
},
data
:
{
id
:
data
,
_csrf_header
:
csrfheader
.
value
,
_csrf
:
csrftoken
.
value
},
dataType
:
"json"
,
success
:
function
(
data
)
{
if
(
data
.
errorNo
==
0
)
{
...
...
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/dao/CfarticleMapper.java
View file @
26af6e73
package
com
.
cftech
.
cms
.
cfarticle
.
dao
;
import
com.alibaba.fastjson.JSONObject
;
import
com.cftech.cms.cfarticle.model.Cfarticle
;
import
com.cftech.cms.cfarticle.model.CfarticleColumnDto
;
import
com.cftech.cms.cfarticle.model.CfarticleVO
;
import
com.cftech.cms.cfarticle.model.columnVO
;
import
com.cftech.core.generic.GenericDao
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -36,4 +40,59 @@ public interface CfarticleMapper extends GenericDao<Cfarticle> {
List
<
Cfarticle
>
fetchSearchByPageInOrder
(
Map
<
String
,
Object
>
params
);
int
countReview
(
Map
<
String
,
Object
>
params
);
Integer
updatecom
(
@Param
(
"id"
)
Long
id
,
@Param
(
"recommended"
)
Long
recommended
,
@Param
(
"whetherBanner"
)
Long
whetherBanner
);
/**
* @Author Licc
* @Description 药品库推荐数据回填
* @Date 17:24 2020/10/28
* @Param
* @return
**/
List
<
CfarticleVO
>
recommended
(
Long
id
);
/**
* @Author Licc
* @Description 阅读量
* @Date 18:33 2020/10/28
* @Param
* @return
**/
Integer
reading
(
@Param
(
"id"
)
Long
id
,
@Param
(
"count"
)
int
count
);
/**
* @Author Licc
* @Description 阅读量查询
* @Date 18:33 2020/10/28
* @Param
* @return
**/
CfarticleVO
saveReading
(
@Param
(
"id"
)
Long
id
);
Integer
selectcom
();
Integer
selectBanner
();
/**
* @Author Licc
* @Description 门户列表数据回填
* @Date 10:50 2020/10/30
* @Param
* @return
**/
List
<
Cfarticle
>
gateway
(
@Param
(
"title"
)
String
title
);
/**
* @Author Licc
* @Description 栏目列表数据回填
* @Date 10:50 2020/10/30
* @Param
* @return
**/
List
<
columnVO
>
column
();
/**
* @Author Licc
* @Description 栏目文章详情
* @Date 10:34 2020/10/30
* @Param
* @return
**/
List
<
CfarticleVO
>
columnDetails
(
@Param
(
"id"
)
Long
id
);
}
\ No newline at end of file
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/dao/CfarticleMapper.xml
View file @
26af6e73
...
...
@@ -23,6 +23,9 @@
<result
column=
"content_source_url"
property=
"contentSourceUrl"
/>
<result
column=
"is_url"
property=
"isUrl"
/>
<result
column=
"type"
property=
"type"
/>
<result
column=
"recommended"
property=
"recommended"
/>
<result
column=
"whether_banner"
property=
"whetherBanner"
/>
<result
column=
"size"
property=
"size"
/>
</resultMap>
<sql
id=
"sqlWhere"
>
...
...
@@ -72,7 +75,11 @@
content_source_url,
author,
is_url,
type
type,
recommended,
whether_banner,
reading,
size
</sql>
...
...
@@ -103,7 +110,10 @@
#{contentSourceUrl, jdbcType=VARCHAR},
#{author, jdbcType=VARCHAR},
#{isUrl, jdbcType=TINYINT},
#{type, jdbcType=VARCHAR}
#{recommended, jdbcType=BIGINT},
#{whether_banner, jdbcType=BIGINT},
#{reading, jdbcType=BIGINT},
#{size, jdbcType=BIGINT}
)
</insert>
...
...
@@ -191,6 +201,10 @@
t.is_url,
t.content_source_url,
t.type,
t.recommended,
t.whether_banner,
t.size,
co.remarks,
co.name columnName
FROM wx_cms_cfarticle t
left join wx_cms_column co on co.id = t.`column`
...
...
@@ -232,6 +246,7 @@
</select>
<update
id=
"update"
parameterType=
"com.cftech.cms.cfarticle.model.Cfarticle"
>
update wx_cms_cfarticle
<set>
...
...
@@ -292,6 +307,18 @@
<if
test=
"type != null"
>
type = #{type, jdbcType=VARCHAR},
</if>
<if
test=
"recommended != null"
>
recommended = #{recommended, jdbcType=BIGINT},
</if>
<if
test=
"whetherBanner != null"
>
whether_banner = #{whetherBanner, jdbcType=BIGINT},
</if>
<if
test=
"reading != null"
>
reading = #{reading, jdbcType=BIGINT},
</if>
<if
test=
"size != null"
>
size = #{size, jdbcType=BIGINT}
</if>
</set>
where id=#{id,jdbcType=BIGINT}
...
...
@@ -300,4 +327,127 @@
<update
id=
"delete"
parameterType=
"java.lang.Long"
>
update wx_cms_cfarticle set del_flag=1 where id=#{id,jdbcType=BIGINT}
</update>
<update
id=
"updatecom"
>
update wx_cms_cfarticle
<set>
<if
test=
"recommended!=null"
>
recommended = #{recommended},
</if>
<if
test=
"whetherBanner!=null"
>
whether_banner = #{whetherBanner}
</if>
</set>
where id = #{id}
</update>
<select
id=
"recommended"
resultType=
"com.cftech.cms.cfarticle.model.CfarticleVO"
parameterType=
"java.lang.Long"
>
select
a.id,
a.title,
a.author,
a.bigimg,
a.smallimg,
a.content,
a.desc,
a.create_time AS createTime,
a.reading,
b.remarks,
a.recommended,
a.whether_banner AS whetherBanner,
a.size
FROM wx_cms_cfarticle a
LEFT JOIN wx_cms_column b
ON b.id = a.`column`
WHERE a.del_flag = 0
<if
test=
"id!=null"
>
and a.id = #{id}
</if>
</select>
<update
id=
"reading"
parameterType=
"java.lang.Integer"
>
update wx_cms_cfarticle
<set>
<if
test=
"count!=null"
>
reading = #{count}
</if>
</set>
where id =#{id}
</update>
<select
id=
"saveReading"
resultType=
"com.cftech.cms.cfarticle.model.CfarticleVO"
>
SELECT * FROM wx_cms_cfarticle WHERE id =#{id}
</select>
<select
id=
"selectcom"
resultType=
"java.lang.Integer"
>
SELECT count(*) FROM wx_cms_cfarticle WHERE recommended= 1
</select>
<select
id=
"selectBanner"
resultType=
"java.lang.Integer"
>
SELECT count(*) FROM wx_cms_cfarticle WHERE whether_banner= 1
</select>
<select
id=
"gateway"
resultType=
"com.cftech.cms.cfarticle.model.Cfarticle"
>
SELECT
t.id,
t.title,
t.bigimg,
t.smallimg,
t.content,
t.`desc`,
t.relation_article,
t.`column`,
t.accounts_id,
t.del_flag,
t.status,
t.create_time,
t.update_time,
t.description,
t.create_by,
t.update_by,
t.author,
t.is_url,
t.content_source_url,
t.type,
t.recommended,
t.whether_banner,
t.size,
t.reading,
co.remarks
FROM wx_cms_cfarticle t
left join wx_cms_column co on co.id = t.`column`
where t.del_flag = 0
<if
test=
"title!=null"
>
and t.title like '%${title}%'
</if>
</select>
<select
id=
"column"
resultType=
"com.cftech.cms.cfarticle.model.columnVO"
>
SELECT
id,
number,
name,
img,
remarks,
status,
create_time AS createTime,
description
FROM wx_cms_column
WHERE del_flag = 0
</select>
<select
id=
"columnDetails"
resultType=
"com.cftech.cms.cfarticle.model.CfarticleVO"
>
select
id,
title,
author,
bigimg,
smallimg,
content,
create_time AS createTime,
reading,
recommended,
whether_banner AS whetherBanner,
size
FROM wx_cms_cfarticle
WHERE del_flag=0
<if
test=
"id!=null"
>
AND `column`= #{id}
</if>
</select>
</mapper>
\ No newline at end of file
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/model/Cfarticle.java
View file @
26af6e73
...
...
@@ -53,7 +53,7 @@ public class Cfarticle implements Serializable {
/* 关联的文章 */
@ExportConfig
(
value
=
"关联的文章"
,
width
=
100
)
private
String
relation_article
;
/*
所属栏目
*/
/*
分类名称
*/
@ExportConfig
(
value
=
"所属栏目"
,
width
=
100
)
private
Long
column
;
/* 所属的账号 */
...
...
@@ -72,11 +72,18 @@ public class Cfarticle implements Serializable {
private
Long
createBy
;
/* 更新人 */
private
Long
updateBy
;
/*是否置顶文章*/
private
Long
recommended
;
/*是否置顶*/
private
Long
whetherBanner
;
/* 封面微信ID */
private
String
thumbMediaId
;
private
Long
reading
;
private
Long
size
;
public
Cfarticle
()
{
this
.
delFlag
=
false
;
this
.
status
=
"0"
;
...
...
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/model/CfarticleColumnDto.java
View file @
26af6e73
...
...
@@ -13,5 +13,6 @@ public class CfarticleColumnDto extends Cfarticle {
private
String
relationCfArticleName
;
//关联文章
private
String
remarks
;
}
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/model/CfarticleVO.java
0 → 100644
View file @
26af6e73
package
com
.
cftech
.
cms
.
cfarticle
.
model
;
import
com.cftech.core.poi.ExportConfig
;
import
lombok.Data
;
import
java.util.Date
;
/**
* @author :licc
* @date :Created in 2020/10/28 17:55
* @description:
*/
@Data
public
class
CfarticleVO
{
/* 主键id */
private
Long
id
;
/* 文章标题 */
private
String
title
;
/*文章作者*/
private
String
author
;
/* 文章大图封面 */
private
String
bigimg
;
/* 文章小图封面 */
private
String
smallimg
;
/* 文章内容 */
private
String
content
;
/* 文章描述 */
private
String
desc
;
/* 分类名称 */
private
String
remarks
;
/* 创建时间 */
private
Date
createTime
;
/*阅读量*/
private
Long
reading
;
/*是否置顶文章*/
private
Long
recommended
;
/*是否置顶banner*/
private
Long
whetherBanner
;
private
Long
size
;
}
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/model/columnVO.java
0 → 100644
View file @
26af6e73
package
com
.
cftech
.
cms
.
cfarticle
.
model
;
import
lombok.Data
;
/**
* @author :licc
* @date :Created in 2020/10/30 11:50
* @description:
*/
@Data
public
class
columnVO
{
private
Long
id
;
/*栏目编码*/
private
String
number
;
/*栏目名称*/
private
String
name
;
/*栏目图片*/
private
String
img
;
/*分类名称*/
private
String
remarks
;
/*状态*/
private
String
status
;
/*栏目编码*/
private
String
createTime
;
/*备注*/
private
String
description
;
}
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/service/CfarticleService.java
View file @
26af6e73
package
com
.
cftech
.
cms
.
cfarticle
.
service
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.cftech.cms.cfarticle.model.Cfarticle
;
import
com.cftech.cms.cfarticle.model.CfarticleColumnDto
;
import
com.cftech.core.generic.GenericService
;
...
...
@@ -36,8 +39,50 @@ public interface CfarticleService extends GenericService<Cfarticle> {
* @return 条数
*/
int
countTemp
(
Conds
conds
);
JSONObject
selectYes
();
JSONObject
selectBanner
();
List
<
Cfarticle
>
fetchSearchByPageInOrder
(
Conds
conds
,
String
articles
);
int
countReview
(
Conds
conds
);
JSONObject
updatecom
(
String
datas
);
/**
* @Author Licc
* @Description 药品库推荐数据回填
* @Date 17:24 2020/10/28
* @Param
* @return
**/
JSONObject
recommended
(
Long
id
);
/**
* @Author Licc
* @Description 阅读量
* @Date 18:33 2020/10/28
* @Param
* @return
**/
JSONObject
reading
(
Long
id
);
/**
* @Author Licc
* @Description 门户列表数据回填
* @Date 10:34 2020/10/30
* @Param
* @return
**/
JSONObject
geteway
(
String
title
);
/**
* @Author Licc
* @Description 栏目列表列表数据回填
* @Date 10:34 2020/10/30
* @Param
* @return
**/
JSONObject
column
();
/**
* @Author Licc
* @Description 栏目文章详情
* @Date 10:34 2020/10/30
* @Param
* @return
**/
JSONObject
columnDetails
(
Long
id
);
}
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/service/impl/CfarticleServiceImpl.java
View file @
26af6e73
package
com
.
cftech
.
cms
.
cfarticle
.
service
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.cftech.cms.cfarticle.dao.CfarticleMapper
;
import
com.cftech.cms.cfarticle.model.Cfarticle
;
import
com.cftech.cms.cfarticle.model.CfarticleColumnDto
;
import
com.cftech.cms.cfarticle.model.CfarticleVO
;
import
com.cftech.cms.cfarticle.model.columnVO
;
import
com.cftech.cms.cfarticle.service.CfarticleService
;
import
com.cftech.core.generic.GenericDao
;
import
com.cftech.core.generic.GenericServiceImpl
;
import
com.cftech.core.sql.Conds
;
import
com.cftech.core.sql.Sort
;
import
net.sf.json.JSONArray
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.HashMap
;
import
java.util.List
;
...
...
@@ -35,13 +40,13 @@ public class CfarticleServiceImpl extends GenericServiceImpl<Cfarticle> implemen
}
@Override
public
List
<
CfarticleColumnDto
>
fetchSearchByPageTemp
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Long
specialId
)
{
public
List
<
CfarticleColumnDto
>
fetchSearchByPageTemp
(
Conds
conds
,
Sort
sort
,
int
page
,
int
pageSize
,
Long
specialId
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
params
.
put
(
"conds"
,
conds
);
params
.
put
(
"offset"
,
page
>
0
?
page
:
0
);
params
.
put
(
"limit"
,
pageSize
>
0
?
pageSize
:
0
);
params
.
put
(
"sort"
,
sort
);
params
.
put
(
"specialId"
,
specialId
);
params
.
put
(
"specialId"
,
specialId
);
return
cfarticleMapper
.
fetchSearchByPageTemp
(
params
);
}
...
...
@@ -54,16 +59,168 @@ public class CfarticleServiceImpl extends GenericServiceImpl<Cfarticle> implemen
@Override
public
List
<
Cfarticle
>
fetchSearchByPageInOrder
(
Conds
conds
,
String
articles
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
params
.
put
(
"conds"
,
conds
);
params
.
put
(
"articles"
,
articles
);
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
params
.
put
(
"conds"
,
conds
);
params
.
put
(
"articles"
,
articles
);
return
cfarticleMapper
.
fetchSearchByPageInOrder
(
params
);
}
@Override
public
int
countReview
(
Conds
conds
)
{
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
params
.
put
(
"conds"
,
conds
);
Map
<
String
,
Object
>
params
=
new
HashMap
<
String
,
Object
>();
params
.
put
(
"conds"
,
conds
);
return
cfarticleMapper
.
countReview
(
params
);
}
@Override
public
JSONObject
updatecom
(
String
datas
)
{
JSONObject
rtnJson
=
new
JSONObject
();
datas
=
datas
.
replaceAll
(
"""
,
"\""
);
JSONArray
jsonArray
=
JSONArray
.
fromObject
(
datas
);
if
(
jsonArray
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
jsonArray
.
size
();
i
++)
{
net
.
sf
.
json
.
JSONObject
jsonObject
=
jsonArray
.
getJSONObject
(
i
);
long
id
=
jsonObject
.
getLong
(
"id"
);
long
recommended
=
jsonObject
.
getLong
(
"recommended"
);
long
whetherBanner
=
jsonObject
.
getLong
(
"whetherBanner"
);
Integer
integer
=
cfarticleMapper
.
updatecom
(
id
,
recommended
,
whetherBanner
);
if
(
integer
>
0
)
{
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"errorMsg"
,
"修改成功"
);
}
}
}
return
rtnJson
;
}
@Override
public
JSONObject
recommended
(
Long
id
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
List
<
CfarticleVO
>
recommended
=
cfarticleMapper
.
recommended
(
id
);
if
(
recommended
.
size
()>
0
)
{
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"data"
,
recommended
);
}
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"查询失败"
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"系统异常"
);
}
return
rtnJson
;
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
JSONObject
reading
(
Long
id
)
{
JSONObject
rtnJson
=
new
JSONObject
();
int
count
=
1
;
try
{
CfarticleVO
reading
=
cfarticleMapper
.
saveReading
(
id
);
Long
recommended
=
reading
.
getRecommended
();
Long
redings
=
reading
.
getReading
();
if
(
redings
==
null
){
count
+=
0
;
}
else
{
count
+=
redings
;
}
Integer
integer
=
cfarticleMapper
.
reading
(
id
,
count
);
if
(
integer
>
0
){
CfarticleVO
saveReading
=
cfarticleMapper
.
saveReading
(
id
);
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"data"
,
saveReading
.
getReading
());
}
}
catch
(
Exception
e
){
e
.
printStackTrace
();
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"系统异常"
);
}
return
rtnJson
;
}
@Override
public
JSONObject
geteway
(
String
title
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
List
<
Cfarticle
>
cfarticles
=
cfarticleMapper
.
gateway
(
title
);
if
(
cfarticles
==
null
){
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"查询失败"
);
}
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"errorMsg"
,
cfarticles
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"系统异常"
);
}
return
rtnJson
;
}
@Override
public
JSONObject
column
()
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
List
<
columnVO
>
column
=
cfarticleMapper
.
column
();
if
(
column
==
null
){
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"查询失败"
);
}
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"errorMsg"
,
column
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"系统异常"
);
}
return
rtnJson
;
}
@Override
public
JSONObject
columnDetails
(
Long
id
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
List
<
CfarticleVO
>
cfarticleVOS
=
cfarticleMapper
.
columnDetails
(
id
);
if
(
cfarticleVOS
==
null
){
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"查询失败"
);
}
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"errorMsg"
,
cfarticleVOS
);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"系统异常"
);
}
return
rtnJson
;
}
@Override
public
JSONObject
selectYes
()
{
JSONObject
rtnJson
=
new
JSONObject
();
Integer
integer
=
cfarticleMapper
.
selectcom
();
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"data"
,
integer
);
return
rtnJson
;
}
@Override
public
JSONObject
selectBanner
()
{
JSONObject
rtnJson
=
new
JSONObject
();
Integer
banner
=
cfarticleMapper
.
selectBanner
();
rtnJson
.
put
(
"errorNo"
,
"0"
);
rtnJson
.
put
(
"data"
,
banner
);
return
rtnJson
;
}
}
\ No newline at end of file
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/web/CfarticleController.java
View file @
26af6e73
...
...
@@ -33,6 +33,7 @@ import org.mp.api.wxsendmsg.JwSendMessageAPI;
import
org.mp.api.wxsendmsg.model.WxArticle
;
import
org.owasp.esapi.ESAPI
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.MediaType
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.Model
;
import
org.springframework.util.StringUtils
;
...
...
@@ -505,5 +506,21 @@ public class CfarticleController {
// }
return
content
;
}
@RequestMapping
(
value
=
"/updatecom"
)
@ResponseBody
public
JSONObject
updatecom
(
String
datas
){
JSONObject
updatecom
=
cfarticleService
.
updatecom
(
datas
);
return
updatecom
;
}
@RequestMapping
(
value
=
"/selectYes"
)
@ResponseBody
public
JSONObject
selectYes
()
{
return
cfarticleService
.
selectYes
();
}
@RequestMapping
(
value
=
"/selectBanner"
)
@ResponseBody
public
JSONObject
selectBanner
()
{
return
cfarticleService
.
selectBanner
();
}
}
cms-modules/cms-core-module/src/main/java/com/cftech/cms/cfarticle/web/MobileCfArticleController.java
View file @
26af6e73
...
...
@@ -36,88 +36,146 @@ public class MobileCfArticleController {
@Autowired
private
CfarticleService
cfarticleService
;
/**
*获取栏目列表
*
获取栏目列表
*/
@RequestMapping
(
value
=
"/getCategoryData"
,
method
=
RequestMethod
.
GET
,
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
String
getCategoryData
(
Long
accountsId
,
int
pageNo
,
int
pageSize
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
rtnJson
.
put
(
"errorNo"
,
0
);
public
String
getCategoryData
(
Long
accountsId
,
int
pageNo
,
int
pageSize
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
rtnJson
.
put
(
"errorNo"
,
0
);
Conds
conds
=
new
Conds
();
conds
.
equal
(
"del_flag"
,
Constants
.
DEL_FLAG_0
);
conds
.
equal
(
"accounts_id"
,
accountsId
);
Sort
sort
=
new
Sort
(
"sort"
,
OrderType
.
DESC
);
List
<
Column
>
list
=
columnService
.
fetchSearchByPage
(
conds
,
sort
,
pageNo
*
pageSize
,
pageSize
);
rtnJson
.
put
(
"data"
,
list
);
}
catch
(
Exception
e
)
{
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"服务器异常!"
);
log
.
error
(
"获取栏目列表"
+
e
.
getMessage
());
List
<
Column
>
list
=
columnService
.
fetchSearchByPage
(
conds
,
sort
,
pageNo
*
pageSize
,
pageSize
);
rtnJson
.
put
(
"data"
,
list
);
}
catch
(
Exception
e
)
{
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"服务器异常!"
);
log
.
error
(
"获取栏目列表"
+
e
.
getMessage
());
}
return
rtnJson
.
toString
();
}
/**
*获取文章列表
*
获取文章列表
*/
@RequestMapping
(
value
=
"/getArticleData"
,
method
=
RequestMethod
.
GET
,
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
String
getArticleData
(
Long
accountsId
,
int
pageNo
,
int
pageSize
,
Long
categoryId
,
String
name
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
rtnJson
.
put
(
"errorNo"
,
0
);
Conds
artConds
=
new
Conds
();
if
(
categoryId
==
0
)
{
public
String
getArticleData
(
Long
accountsId
,
int
pageNo
,
int
pageSize
,
Long
categoryId
,
String
name
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
rtnJson
.
put
(
"errorNo"
,
0
);
Conds
artConds
=
new
Conds
();
if
(
categoryId
==
0
)
{
Conds
conds
=
new
Conds
();
conds
.
equal
(
"del_flag"
,
Constants
.
DEL_FLAG_0
);
conds
.
equal
(
"accounts_id"
,
accountsId
);
Sort
sort
=
new
Sort
(
"sort"
,
OrderType
.
DESC
);
List
<
Column
>
categoryList
=
columnService
.
fetchSearchByPage
(
conds
,
sort
,
pageNo
*
pageSize
,
pageSize
);
rtnJson
.
put
(
"category"
,
categoryList
);
if
(
categoryList
!=
null
&&
categoryList
.
size
()>
0
)
{
categoryId
=
categoryList
.
get
(
0
).
getId
();
List
<
Column
>
categoryList
=
columnService
.
fetchSearchByPage
(
conds
,
sort
,
pageNo
*
pageSize
,
pageSize
);
rtnJson
.
put
(
"category"
,
categoryList
);
if
(
categoryList
!=
null
&&
categoryList
.
size
()
>
0
)
{
categoryId
=
categoryList
.
get
(
0
).
getId
();
}
}
artConds
.
equal
(
"t.column"
,
categoryId
);
artConds
.
equal
(
"t.column"
,
categoryId
);
artConds
.
equal
(
"t.del_flag"
,
Constants
.
DEL_FLAG_0
);
artConds
.
equal
(
"t.accounts_id"
,
accountsId
);
if
(!
org
.
springframework
.
util
.
StringUtils
.
isEmpty
(
name
))
{
artConds
.
like
(
"t.title"
,
name
);
}
Sort
artSort
=
new
Sort
(
"t.create_time"
,
OrderType
.
DESC
);
List
<
Cfarticle
>
list
=
cfarticleService
.
fetchSearchByPage
(
artConds
,
artSort
,
pageNo
*
pageSize
,
pageSize
);
rtnJson
.
put
(
"article"
,
list
);
}
catch
(
Exception
e
)
{
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"服务器异常!"
);
log
.
error
(
"获取栏目列表"
+
e
.
getMessage
());
List
<
Cfarticle
>
list
=
cfarticleService
.
fetchSearchByPage
(
artConds
,
artSort
,
pageNo
*
pageSize
,
pageSize
);
rtnJson
.
put
(
"article"
,
list
);
}
catch
(
Exception
e
)
{
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"服务器异常!"
);
log
.
error
(
"获取栏目列表"
+
e
.
getMessage
());
}
return
rtnJson
.
toString
();
}
/**
*获取文章详情
*
获取文章详情
*/
@RequestMapping
(
value
=
"/getArticleDetail"
,
method
=
RequestMethod
.
GET
,
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
String
getArticleDetail
(
Long
id
){
JSONObject
rtnJson
=
new
JSONObject
();
try
{
Cfarticle
cfarticle
=
cfarticleService
.
fetchById
(
id
);
rtnJson
.
put
(
"errorNo"
,
0
);
rtnJson
.
put
(
"data"
,
cfarticle
);
if
(
cfarticle
!=
null
)
{
Conds
reviewConds
=
new
Conds
();
reviewConds
.
equal
(
"r.accounts_id"
,
cfarticle
.
getAccountsId
());
reviewConds
.
equal
(
"r.module_type"
,
0
);
reviewConds
.
equal
(
"r.entity_id"
,
cfarticle
.
getId
());
int
reviewCount
=
cfarticleService
.
countReview
(
reviewConds
);
rtnJson
.
put
(
"reviewCount"
,
reviewCount
);
public
String
getArticleDetail
(
Long
id
)
{
JSONObject
rtnJson
=
new
JSONObject
();
try
{
Cfarticle
cfarticle
=
cfarticleService
.
fetchById
(
id
);
rtnJson
.
put
(
"errorNo"
,
0
);
rtnJson
.
put
(
"data"
,
cfarticle
);
if
(
cfarticle
!=
null
)
{
Conds
reviewConds
=
new
Conds
();
reviewConds
.
equal
(
"r.accounts_id"
,
cfarticle
.
getAccountsId
());
reviewConds
.
equal
(
"r.module_type"
,
0
);
reviewConds
.
equal
(
"r.entity_id"
,
cfarticle
.
getId
());
int
reviewCount
=
cfarticleService
.
countReview
(
reviewConds
);
rtnJson
.
put
(
"reviewCount"
,
reviewCount
);
}
}
catch
(
Exception
e
)
{
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"服务器异常!"
);
log
.
error
(
"获取栏目列表"
+
e
.
getMessage
());
}
catch
(
Exception
e
)
{
rtnJson
.
put
(
"errorNo"
,
"1"
);
rtnJson
.
put
(
"errorMsg"
,
"服务器异常!"
);
log
.
error
(
"获取栏目列表"
+
e
.
getMessage
());
}
return
rtnJson
.
toString
();
}
/**
* @return
* @Author Licc
* @Description 药品库推荐数据回填
* @Date 17:22 2020/10/28
* @Param
**/
@RequestMapping
(
value
=
"/recommended"
,
method
=
{
RequestMethod
.
GET
,
RequestMethod
.
POST
},
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
com
.
alibaba
.
fastjson
.
JSONObject
recommended
(
Long
id
)
{
return
cfarticleService
.
recommended
(
id
);
}
/**
* @return
* @Author Licc
* @Description 阅读量
* @Date 17:22 2020/10/28
* @Param
**/
@RequestMapping
(
value
=
"/reading"
,
method
=
{
RequestMethod
.
GET
,
RequestMethod
.
POST
},
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
com
.
alibaba
.
fastjson
.
JSONObject
reading
(
Long
id
)
{
return
cfarticleService
.
reading
(
id
);
}
/**
* @Author Licc
* @Description 门户列表数据回填
* @Date 10:34 2020/10/30
* @Param
* @return
**/
@RequestMapping
(
value
=
"/gateway"
,
method
=
{
RequestMethod
.
GET
,
RequestMethod
.
POST
},
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
com
.
alibaba
.
fastjson
.
JSONObject
gateway
(
String
title
){
return
cfarticleService
.
geteway
(
title
);
}
/**
* @Author Licc
* @Description 栏目列表列表数据回填
* @Date 10:34 2020/10/30
* @Param
* @return
**/
@RequestMapping
(
value
=
"/column"
,
method
=
{
RequestMethod
.
GET
,
RequestMethod
.
POST
},
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
com
.
alibaba
.
fastjson
.
JSONObject
column
(){
return
cfarticleService
.
column
();
}
/**
* @Author Licc
* @Description 栏目文章详情
* @Date 10:34 2020/10/30
* @Param
* @return
**/
@RequestMapping
(
value
=
"/columnDetails"
,
method
=
{
RequestMethod
.
GET
,
RequestMethod
.
POST
},
produces
=
MediaType
.
APPLICATION_JSON_UTF8_VALUE
)
public
com
.
alibaba
.
fastjson
.
JSONObject
columnDetails
(
Long
id
){
return
cfarticleService
.
columnDetails
(
id
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment